DmDatePicker
DmDatePicker documents the DmDatePicker export from duskmoon.
@duskmoon-dev/components/dm-date-picker Usage
When to use
- Use it in DuskMoon application screens that need a packaged, opinionated workflow component.
- Reach for the lower-level standard component when the screen needs custom composition.
Implementation notes
Features
Wraps lower-level primitives into a higher-level DuskMoon-prefixed workflow API.
Examples show the defaults and composition points expected by internal DuskMoon app screens.
DmDatePicker is most often configured through `RangePicker`, `WeekPicker`, `MonthPicker`, `QuarterPicker`.
Renders Dm wrapper class and default date picker
Feature Demos
Feature demos are authored for the component page, then supplemented with behavior scenarios from the component test coverage.
Basic usage
Import the component stylesheet and DmDatePicker from its package subpath, then render it with the core props.
import "@duskmoon-dev/components/styles.css";
import { DmDatePicker } from "@duskmoon-dev/components/dm-date-picker";
export function Example() {
return (<DmDatePicker>DuskMoon Dm Date Picker</DmDatePicker>);
} Renders Dm wrapper class and default date picker
test-backedDmDatePicker scenario from the component test coverage: renders dm wrapper class and default date picker.
import "@duskmoon-dev/components/styles.css";
import { DmDatePicker } from "@duskmoon-dev/components/dm-date-picker";
export function DmDatePickerRendersDmWrapperClassDemo() {
return (<DmDatePicker>DuskMoon Dm Date Picker</DmDatePicker>);
} Supports locale setter and picker shortcuts
test-backedDmDatePicker scenario from the component test coverage: supports locale setter and picker shortcuts.
import "@duskmoon-dev/components/styles.css";
import { DmDatePicker } from "@duskmoon-dev/components/dm-date-picker";
export function DmDatePickerSupportsLocaleSetterAndDemo() {
return (<DmDatePicker>DuskMoon Dm Date Picker</DmDatePicker>);
} Exposes range picker
test-backedDmDatePicker scenario from the component test coverage: exposes range picker.
import "@duskmoon-dev/components/styles.css";
import { DmDatePicker } from "@duskmoon-dev/components/dm-date-picker";
export function DmDatePickerExposesRangePickerDemo() {
return (<DmDatePicker>DuskMoon Dm Date Picker</DmDatePicker>);
} Theme aware
Docs previews inherit the DuskMoon data-theme value. Use the header switch to compare light and dark rendering.
<div data-theme="sunshine">
<DmDatePicker>DuskMoon Dm Date Picker</DmDatePicker>
</div>
<div data-theme="moonlight">
<DmDatePicker>DuskMoon Dm Date Picker</DmDatePicker>
</div> API
The API reference below lists every parsed exported type or interface for DmDatePicker. Start with `RangePicker`, `WeekPicker`, `MonthPicker`, `QuarterPicker` for common usage.
packages/components/src/components/dm-date-picker/DmDatePicker.types.ts
Scenarios: packages/components/src/components/dm-date-picker/DmDatePicker.test.tsx | Prop | Type | Required | Description |
|---|---|---|---|
RangePicker | ForwardRefExoticComponent< | Yes | RangePicker configures DmDatePicker. |
WeekPicker | ForwardRefExoticComponent< | Yes | WeekPicker configures DmDatePicker. |
MonthPicker | ForwardRefExoticComponent< | Yes | MonthPicker configures DmDatePicker. |
QuarterPicker | ForwardRefExoticComponent< | Yes | QuarterPicker configures DmDatePicker. |
YearPicker | ForwardRefExoticComponent< | Yes | YearPicker configures DmDatePicker. |
DatePickerProps RangePickerProps