@sectile/vue 0.18.1 → 0.18.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion.d.ts +1 -1
- package/dist/accordion.js +1 -1
- package/dist/carousel.d.ts +1 -1
- package/dist/carousel.js +1 -1
- package/dist/cascade-list.js +1 -1
- package/dist/cascade-list.js.map +1 -1
- package/dist/cascade-select.js +1 -1
- package/dist/cascade-select.js.map +1 -1
- package/dist/checkbox-group.js +1 -1
- package/dist/checkbox-group.js.map +1 -1
- package/dist/checkbox.d.ts +1 -1
- package/dist/checkbox.js +1 -1
- package/dist/checkbox.js.map +1 -1
- package/dist/color-picker.js +1 -1
- package/dist/color-picker.js.map +1 -1
- package/dist/combobox.d.ts +1 -1
- package/dist/combobox.js +1 -1
- package/dist/combobox.js.map +1 -1
- package/dist/disclosure.d.ts +1 -1
- package/dist/disclosure.js +1 -1
- package/dist/editable.js +1 -1
- package/dist/editable.js.map +1 -1
- package/dist/{internal/form-context.d.ts → form/context.d.ts} +3 -2
- package/dist/{internal/form-context.js → form/context.js} +2 -2
- package/dist/form/context.js.map +1 -0
- package/dist/form/contracts.d.ts +219 -0
- package/dist/form/contracts.js +2 -0
- package/dist/form/contracts.js.map +1 -0
- package/dist/{internal/form-control-inventory.js → form/control-inventory.js} +1 -1
- package/dist/form/control-inventory.js.map +1 -0
- package/dist/{internal/form-control.js → form/control.js} +1 -1
- package/dist/form/control.js.map +1 -0
- package/dist/form/field.d.ts +81 -0
- package/dist/form/field.js +2 -0
- package/dist/form/field.js.map +1 -0
- package/dist/form/native.d.ts +15 -0
- package/dist/form/native.js +2 -0
- package/dist/form/native.js.map +1 -0
- package/dist/form/part.d.ts +16 -0
- package/dist/form/part.js +2 -0
- package/dist/form/part.js.map +1 -0
- package/dist/form/parts.d.ts +93 -0
- package/dist/form/parts.js +2 -0
- package/dist/form/parts.js.map +1 -0
- package/dist/{internal/form-presence-parts.d.ts → form/presence-parts.d.ts} +1 -1
- package/dist/form/presence-parts.js +2 -0
- package/dist/form/presence-parts.js.map +1 -0
- package/dist/form/root.d.ts +2 -0
- package/dist/form/root.js +2 -0
- package/dist/form/root.js.map +1 -0
- package/dist/form/selectors.d.ts +7 -0
- package/dist/form/selectors.js +2 -0
- package/dist/form/selectors.js.map +1 -0
- package/dist/form.d.ts +8 -398
- package/dist/form.js +1 -1
- package/dist/form.js.map +1 -1
- package/dist/index.d.ts +10 -10
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/input/decimal-input.js.map +1 -0
- package/dist/input/native-field.js +2 -0
- package/dist/input/native-field.js.map +1 -0
- package/dist/input/native-input.js.map +1 -0
- package/dist/input/native-text-state.d.ts +2 -0
- package/dist/input/native-text-state.js +2 -0
- package/dist/input/native-text-state.js.map +1 -0
- package/dist/internal/cascade-choice.d.ts +1 -1
- package/dist/internal/cascade-choice.js +1 -1
- package/dist/internal/cascade-choice.js.map +1 -1
- package/dist/listbox.d.ts +1 -1
- package/dist/listbox.js +1 -1
- package/dist/listbox.js.map +1 -1
- package/dist/menu.js +1 -1
- package/dist/meter-group.js +1 -1
- package/dist/meter-group.js.map +1 -1
- package/dist/meter.js +1 -1
- package/dist/meter.js.map +1 -1
- package/dist/multi-thumb-slider.js +1 -1
- package/dist/multi-thumb-slider.js.map +1 -1
- package/dist/navigation-menu.d.ts +1 -1
- package/dist/navigation-menu.js +1 -1
- package/dist/number-field.d.ts +1 -1
- package/dist/number-field.js +1 -1
- package/dist/number-field.js.map +1 -1
- package/dist/{alert-dialog.d.ts → overlay/alert-dialog.d.ts} +1 -1
- package/dist/overlay/alert-dialog.js +2 -0
- package/dist/overlay/alert-dialog.js.map +1 -0
- package/dist/{dialog.d.ts → overlay/dialog.d.ts} +1 -1
- package/dist/overlay/dialog.js +2 -0
- package/dist/overlay/dialog.js.map +1 -0
- package/dist/{drawer.d.ts → overlay/drawer.d.ts} +1 -1
- package/dist/overlay/drawer.js +2 -0
- package/dist/overlay/drawer.js.map +1 -0
- package/dist/{popover.d.ts → overlay/popover.d.ts} +1 -1
- package/dist/overlay/popover.js +2 -0
- package/dist/overlay/popover.js.map +1 -0
- package/dist/overlay/popup.js +2 -0
- package/dist/overlay/popup.js.map +1 -0
- package/dist/{tooltip.d.ts → overlay/tooltip.d.ts} +1 -1
- package/dist/overlay/tooltip.js +2 -0
- package/dist/overlay/tooltip.js.map +1 -0
- package/dist/pin-input.js +1 -1
- package/dist/pin-input.js.map +1 -1
- package/dist/{internal → presence}/conditional-presence.js.map +1 -1
- package/dist/{internal → presence}/presence.js.map +1 -1
- package/dist/progress.js +1 -1
- package/dist/progress.js.map +1 -1
- package/dist/quantity-field.js +1 -1
- package/dist/quantity-field.js.map +1 -1
- package/dist/radio-group.d.ts +1 -1
- package/dist/radio-group.js +1 -1
- package/dist/radio-group.js.map +1 -1
- package/dist/select.d.ts +1 -1
- package/dist/select.js +1 -1
- package/dist/select.js.map +1 -1
- package/dist/slider.js +1 -1
- package/dist/slider.js.map +1 -1
- package/dist/spin-button.js +1 -1
- package/dist/spin-button.js.map +1 -1
- package/dist/switch.js +1 -1
- package/dist/switch.js.map +1 -1
- package/dist/tabs.d.ts +1 -1
- package/dist/tabs.js +1 -1
- package/dist/{internal/tabular-components.d.ts → tabular/components.d.ts} +1 -1
- package/dist/{internal/tabular-components.js → tabular/components.js} +1 -1
- package/dist/tabular/components.js.map +1 -0
- package/dist/tabular/context.d.ts +16 -0
- package/dist/tabular/context.js +2 -0
- package/dist/tabular/context.js.map +1 -0
- package/dist/{internal/tabular-profile.d.ts → tabular/controller.d.ts} +2 -32
- package/dist/tabular/controller.js +2 -0
- package/dist/tabular/controller.js.map +1 -0
- package/dist/{data-grid.d.ts → tabular/data-grid.d.ts} +7 -5
- package/dist/tabular/data-grid.js +2 -0
- package/dist/tabular/data-grid.js.map +1 -0
- package/dist/{data-table.d.ts → tabular/data-table.d.ts} +9 -36
- package/dist/tabular/data-table.js +2 -0
- package/dist/tabular/data-table.js.map +1 -0
- package/dist/{data-tree-grid.d.ts → tabular/data-tree-grid.d.ts} +7 -5
- package/dist/tabular/data-tree-grid.js +2 -0
- package/dist/tabular/data-tree-grid.js.map +1 -0
- package/dist/{internal/tabular-parts.d.ts → tabular/parts.d.ts} +2 -1
- package/dist/tabular/parts.js +2 -0
- package/dist/tabular/parts.js.map +1 -0
- package/dist/tabular/schema.d.ts +35 -0
- package/dist/tabular/schema.js +2 -0
- package/dist/tabular/schema.js.map +1 -0
- package/dist/tabular/source.d.ts +20 -0
- package/dist/tabular/source.js +2 -0
- package/dist/tabular/source.js.map +1 -0
- package/dist/tags-input.js +1 -1
- package/dist/tags-input.js.map +1 -1
- package/dist/{calendar.d.ts → temporal/calendar.d.ts} +21 -21
- package/dist/temporal/calendar.js +2 -0
- package/dist/temporal/calendar.js.map +1 -0
- package/dist/temporal/capabilities/calendar.d.ts +1 -0
- package/dist/temporal/capabilities/calendar.js +2 -0
- package/dist/temporal/capabilities/calendar.js.map +1 -0
- package/dist/temporal/capabilities/date-picker.d.ts +1 -0
- package/dist/temporal/capabilities/date-picker.js +2 -0
- package/dist/temporal/capabilities/date-picker.js.map +1 -0
- package/dist/temporal/capabilities/date-range-picker.d.ts +1 -0
- package/dist/temporal/capabilities/date-range-picker.js +2 -0
- package/dist/temporal/capabilities/date-range-picker.js.map +1 -0
- package/dist/temporal/capabilities/date-time-picker.d.ts +1 -0
- package/dist/temporal/capabilities/date-time-picker.js +2 -0
- package/dist/temporal/capabilities/date-time-picker.js.map +1 -0
- package/dist/temporal/capabilities/date-time-range-picker.d.ts +1 -0
- package/dist/temporal/capabilities/date-time-range-picker.js +2 -0
- package/dist/temporal/capabilities/date-time-range-picker.js.map +1 -0
- package/dist/temporal/capabilities/month-picker.d.ts +1 -0
- package/dist/temporal/capabilities/month-picker.js +2 -0
- package/dist/temporal/capabilities/month-picker.js.map +1 -0
- package/dist/temporal/capabilities/month-range-picker.d.ts +1 -0
- package/dist/temporal/capabilities/month-range-picker.js +2 -0
- package/dist/temporal/capabilities/month-range-picker.js.map +1 -0
- package/dist/temporal/capabilities/range-calendar.d.ts +1 -0
- package/dist/temporal/capabilities/range-calendar.js +2 -0
- package/dist/temporal/capabilities/range-calendar.js.map +1 -0
- package/dist/temporal/capabilities/year-picker.d.ts +1 -0
- package/dist/temporal/capabilities/year-picker.js +2 -0
- package/dist/temporal/capabilities/year-picker.js.map +1 -0
- package/dist/temporal/capabilities/year-range-picker.d.ts +1 -0
- package/dist/temporal/capabilities/year-range-picker.js +2 -0
- package/dist/temporal/capabilities/year-range-picker.js.map +1 -0
- package/dist/{internal/picker-capability.js → temporal/capability.js} +1 -1
- package/dist/temporal/capability.js.map +1 -0
- package/dist/{date-field.d.ts → temporal/date-field.d.ts} +1 -1
- package/dist/temporal/date-field.js +2 -0
- package/dist/temporal/date-field.js.map +1 -0
- package/dist/{date-picker.d.ts → temporal/date-picker.d.ts} +24 -24
- package/dist/temporal/date-picker.js +2 -0
- package/dist/temporal/date-picker.js.map +1 -0
- package/dist/{date-range-field.d.ts → temporal/date-range-field.d.ts} +1 -1
- package/dist/temporal/date-range-field.js +2 -0
- package/dist/temporal/date-range-field.js.map +1 -0
- package/dist/{date-range-picker.d.ts → temporal/date-range-picker.d.ts} +27 -27
- package/dist/temporal/date-range-picker.js +2 -0
- package/dist/temporal/date-range-picker.js.map +1 -0
- package/dist/{date-time-field.d.ts → temporal/date-time-field.d.ts} +1 -1
- package/dist/temporal/date-time-field.js +2 -0
- package/dist/temporal/date-time-field.js.map +1 -0
- package/dist/{date-time-picker.d.ts → temporal/date-time-picker.d.ts} +30 -30
- package/dist/temporal/date-time-picker.js +2 -0
- package/dist/temporal/date-time-picker.js.map +1 -0
- package/dist/{date-time-range-picker.d.ts → temporal/date-time-range-picker.d.ts} +39 -39
- package/dist/temporal/date-time-range-picker.js +2 -0
- package/dist/temporal/date-time-range-picker.js.map +1 -0
- package/dist/{month-picker.d.ts → temporal/month-picker.d.ts} +14 -14
- package/dist/temporal/month-picker.js +2 -0
- package/dist/temporal/month-picker.js.map +1 -0
- package/dist/{month-range-picker.d.ts → temporal/month-range-picker.d.ts} +17 -17
- package/dist/temporal/month-range-picker.js +2 -0
- package/dist/temporal/month-range-picker.js.map +1 -0
- package/dist/{internal/date-picker.d.ts → temporal/picker.d.ts} +1 -1
- package/dist/temporal/picker.js +2 -0
- package/dist/temporal/picker.js.map +1 -0
- package/dist/{range-calendar.d.ts → temporal/range-calendar.d.ts} +11 -11
- package/dist/temporal/range-calendar.js +2 -0
- package/dist/temporal/range-calendar.js.map +1 -0
- package/dist/temporal/temporal-provider.js.map +1 -0
- package/dist/{time-field.d.ts → temporal/time-field.d.ts} +1 -1
- package/dist/temporal/time-field.js +2 -0
- package/dist/temporal/time-field.js.map +1 -0
- package/dist/{time-range-field.d.ts → temporal/time-range-field.d.ts} +1 -1
- package/dist/temporal/time-range-field.js +2 -0
- package/dist/temporal/time-range-field.js.map +1 -0
- package/dist/{year-picker.d.ts → temporal/year-picker.d.ts} +16 -16
- package/dist/temporal/year-picker.js +2 -0
- package/dist/temporal/year-picker.js.map +1 -0
- package/dist/{year-range-picker.d.ts → temporal/year-range-picker.d.ts} +19 -19
- package/dist/temporal/year-range-picker.js +2 -0
- package/dist/temporal/year-range-picker.js.map +1 -0
- package/dist/text.js +1 -1
- package/dist/text.js.map +1 -1
- package/dist/toast.js +1 -1
- package/dist/toggle-group.js +1 -1
- package/dist/toggle-group.js.map +1 -1
- package/dist/tree-grid.d.ts +1 -1
- package/dist/tree-grid.js +1 -1
- package/dist/tree-grid.js.map +1 -1
- package/dist/tree-view.d.ts +1 -1
- package/dist/tree-view.js +1 -1
- package/dist/virtual/virtual-collection.js.map +1 -0
- package/dist/virtual/virtual-core.js.map +1 -0
- package/dist/{virtual-grid.d.ts → virtual/virtual-grid.d.ts} +1 -1
- package/dist/virtual/virtual-grid.js +2 -0
- package/dist/virtual/virtual-grid.js.map +1 -0
- package/dist/virtual/virtual-list.js.map +1 -0
- package/dist/{virtual-masonry.d.ts → virtual/virtual-masonry.d.ts} +1 -1
- package/dist/virtual/virtual-masonry.js +2 -0
- package/dist/virtual/virtual-masonry.js.map +1 -0
- package/dist/{virtual-spatial.d.ts → virtual/virtual-spatial.d.ts} +1 -1
- package/dist/virtual/virtual-spatial.js +2 -0
- package/dist/virtual/virtual-spatial.js.map +1 -0
- package/dist/virtual-core.d.ts +1 -1
- package/dist/virtual-core.js +1 -1
- package/dist/virtual-list.d.ts +2 -2
- package/dist/virtual-list.js +1 -1
- package/package.json +93 -93
- package/dist/alert-dialog.js +0 -2
- package/dist/alert-dialog.js.map +0 -1
- package/dist/calendar.js +0 -2
- package/dist/calendar.js.map +0 -1
- package/dist/data-grid.js +0 -2
- package/dist/data-grid.js.map +0 -1
- package/dist/data-table.js +0 -2
- package/dist/data-table.js.map +0 -1
- package/dist/data-tree-grid.js +0 -2
- package/dist/data-tree-grid.js.map +0 -1
- package/dist/date-field.js +0 -2
- package/dist/date-field.js.map +0 -1
- package/dist/date-picker.js +0 -2
- package/dist/date-picker.js.map +0 -1
- package/dist/date-range-field.js +0 -2
- package/dist/date-range-field.js.map +0 -1
- package/dist/date-range-picker.js +0 -2
- package/dist/date-range-picker.js.map +0 -1
- package/dist/date-time-field.js +0 -2
- package/dist/date-time-field.js.map +0 -1
- package/dist/date-time-picker.js +0 -2
- package/dist/date-time-picker.js.map +0 -1
- package/dist/date-time-range-picker.js +0 -2
- package/dist/date-time-range-picker.js.map +0 -1
- package/dist/dialog.js +0 -2
- package/dist/dialog.js.map +0 -1
- package/dist/drawer.js +0 -2
- package/dist/drawer.js.map +0 -1
- package/dist/internal/calendar-capability.d.ts +0 -1
- package/dist/internal/calendar-capability.js +0 -2
- package/dist/internal/calendar-capability.js.map +0 -1
- package/dist/internal/date-picker-capability.d.ts +0 -1
- package/dist/internal/date-picker-capability.js +0 -2
- package/dist/internal/date-picker-capability.js.map +0 -1
- package/dist/internal/date-picker.js +0 -2
- package/dist/internal/date-picker.js.map +0 -1
- package/dist/internal/date-range-picker-capability.d.ts +0 -1
- package/dist/internal/date-range-picker-capability.js +0 -2
- package/dist/internal/date-range-picker-capability.js.map +0 -1
- package/dist/internal/date-time-picker-capability.d.ts +0 -1
- package/dist/internal/date-time-picker-capability.js +0 -2
- package/dist/internal/date-time-picker-capability.js.map +0 -1
- package/dist/internal/date-time-range-picker-capability.d.ts +0 -1
- package/dist/internal/date-time-range-picker-capability.js +0 -2
- package/dist/internal/date-time-range-picker-capability.js.map +0 -1
- package/dist/internal/decimal-input.js.map +0 -1
- package/dist/internal/form-context.js.map +0 -1
- package/dist/internal/form-control-inventory.js.map +0 -1
- package/dist/internal/form-control.js.map +0 -1
- package/dist/internal/form-presence-parts.js +0 -2
- package/dist/internal/form-presence-parts.js.map +0 -1
- package/dist/internal/month-picker-capability.d.ts +0 -1
- package/dist/internal/month-picker-capability.js +0 -2
- package/dist/internal/month-picker-capability.js.map +0 -1
- package/dist/internal/month-range-picker-capability.d.ts +0 -1
- package/dist/internal/month-range-picker-capability.js +0 -2
- package/dist/internal/month-range-picker-capability.js.map +0 -1
- package/dist/internal/native-field.js +0 -2
- package/dist/internal/native-field.js.map +0 -1
- package/dist/internal/native-input.js.map +0 -1
- package/dist/internal/picker-capability.js.map +0 -1
- package/dist/internal/popup.js +0 -2
- package/dist/internal/popup.js.map +0 -1
- package/dist/internal/range-calendar-capability.d.ts +0 -1
- package/dist/internal/range-calendar-capability.js +0 -2
- package/dist/internal/range-calendar-capability.js.map +0 -1
- package/dist/internal/tabular-components.js.map +0 -1
- package/dist/internal/tabular-parts.js +0 -2
- package/dist/internal/tabular-parts.js.map +0 -1
- package/dist/internal/tabular-profile.js +0 -2
- package/dist/internal/tabular-profile.js.map +0 -1
- package/dist/internal/virtual-collection.js.map +0 -1
- package/dist/internal/virtual-core.js.map +0 -1
- package/dist/internal/virtual-list.js.map +0 -1
- package/dist/internal/year-picker-capability.d.ts +0 -1
- package/dist/internal/year-picker-capability.js +0 -2
- package/dist/internal/year-picker-capability.js.map +0 -1
- package/dist/internal/year-range-picker-capability.d.ts +0 -1
- package/dist/internal/year-range-picker-capability.js +0 -2
- package/dist/internal/year-range-picker-capability.js.map +0 -1
- package/dist/month-picker.js +0 -2
- package/dist/month-picker.js.map +0 -1
- package/dist/month-range-picker.js +0 -2
- package/dist/month-range-picker.js.map +0 -1
- package/dist/popover.js +0 -2
- package/dist/popover.js.map +0 -1
- package/dist/range-calendar.js +0 -2
- package/dist/range-calendar.js.map +0 -1
- package/dist/temporal-provider.js.map +0 -1
- package/dist/time-field.js +0 -2
- package/dist/time-field.js.map +0 -1
- package/dist/time-range-field.js +0 -2
- package/dist/time-range-field.js.map +0 -1
- package/dist/tooltip.js +0 -2
- package/dist/tooltip.js.map +0 -1
- package/dist/virtual-grid.js +0 -2
- package/dist/virtual-grid.js.map +0 -1
- package/dist/virtual-masonry.js +0 -2
- package/dist/virtual-masonry.js.map +0 -1
- package/dist/virtual-spatial.js +0 -2
- package/dist/virtual-spatial.js.map +0 -1
- package/dist/year-picker.js +0 -2
- package/dist/year-picker.js.map +0 -1
- package/dist/year-range-picker.js +0 -2
- package/dist/year-range-picker.js.map +0 -1
- /package/dist/{internal/form-control-inventory.d.ts → form/control-inventory.d.ts} +0 -0
- /package/dist/{internal/form-control.d.ts → form/control.d.ts} +0 -0
- /package/dist/{internal → input}/decimal-input.d.ts +0 -0
- /package/dist/{internal → input}/decimal-input.js +0 -0
- /package/dist/{internal → input}/native-field.d.ts +0 -0
- /package/dist/{internal → input}/native-input.d.ts +0 -0
- /package/dist/{internal → input}/native-input.js +0 -0
- /package/dist/{internal → overlay}/popup.d.ts +0 -0
- /package/dist/{internal → presence}/conditional-presence.d.ts +0 -0
- /package/dist/{internal → presence}/conditional-presence.js +0 -0
- /package/dist/{internal → presence}/presence.d.ts +0 -0
- /package/dist/{internal → presence}/presence.js +0 -0
- /package/dist/{internal/picker-capability.d.ts → temporal/capability.d.ts} +0 -0
- /package/dist/{temporal-provider.d.ts → temporal/temporal-provider.d.ts} +0 -0
- /package/dist/{temporal-provider.js → temporal/temporal-provider.js} +0 -0
- /package/dist/{internal → virtual}/virtual-collection.d.ts +0 -0
- /package/dist/{internal → virtual}/virtual-collection.js +0 -0
- /package/dist/{internal → virtual}/virtual-core.d.ts +0 -0
- /package/dist/{internal → virtual}/virtual-core.js +0 -0
- /package/dist/{internal → virtual}/virtual-list.d.ts +0 -0
- /package/dist/{internal → virtual}/virtual-list.js +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DateRangePickerOptions } from '@sectile/dom/temporal/date-range-picker';
|
|
2
2
|
import type { DateRange, DateValue } from '@sectile/dom/temporal/date-field';
|
|
3
|
-
import { type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './
|
|
3
|
+
import { type PickerMonthCellSlotProps, type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps } from './picker.js';
|
|
4
4
|
export interface MonthRangePickerRootProps extends PickerPartProps, PickerPositionProps {
|
|
5
5
|
readonly modelValue?: DateRange | null;
|
|
6
6
|
readonly defaultValue?: DateRange | null;
|
|
@@ -16,13 +16,13 @@ export interface MonthRangePickerRootProps extends PickerPartProps, PickerPositi
|
|
|
16
16
|
readonly label?: string;
|
|
17
17
|
readonly policies?: DateRangePickerOptions['policies'];
|
|
18
18
|
}
|
|
19
|
-
export declare const MonthRangePickerRoot: import("./
|
|
19
|
+
export declare const MonthRangePickerRoot: import("./picker.js").PickerRootComponent<"date-range">;
|
|
20
20
|
export type MonthRangePickerRootSlotProps = PickerRootSlotProps<DateRange | null>;
|
|
21
21
|
export type MonthRangePickerValueChangeHandler = NonNullable<InstanceType<typeof MonthRangePickerRoot>['$props']['onUpdate:modelValue']>;
|
|
22
22
|
export type MonthRangePickerOpenChangeHandler = NonNullable<InstanceType<typeof MonthRangePickerRoot>['$props']['onUpdate:open']>;
|
|
23
23
|
export type MonthRangePickerHighlightedValueChangeHandler = NonNullable<InstanceType<typeof MonthRangePickerRoot>['$props']['onUpdate:highlightedValue']>;
|
|
24
|
-
export declare const MonthRangePickerTrigger: import("./
|
|
25
|
-
export declare const MonthRangePickerAnchor: import("./
|
|
24
|
+
export declare const MonthRangePickerTrigger: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
25
|
+
export declare const MonthRangePickerAnchor: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
26
26
|
export declare const MonthRangePickerPortal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
27
27
|
to: {
|
|
28
28
|
type: import("vue").PropType<string | HTMLElement>;
|
|
@@ -54,15 +54,15 @@ export declare const MonthRangePickerPortal: import("vue").DefineComponent<impor
|
|
|
54
54
|
disabled: boolean;
|
|
55
55
|
defer: boolean;
|
|
56
56
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
57
|
-
export declare const MonthRangePickerContent: import("./
|
|
58
|
-
export declare const MonthRangePickerGrid: import("./
|
|
57
|
+
export declare const MonthRangePickerContent: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
58
|
+
export declare const MonthRangePickerGrid: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
59
59
|
export declare const MonthRangePickerCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
60
60
|
value: {
|
|
61
61
|
type: import("vue").PropType<import("@sectile/temporal/calendar").CalendarMonthValue>;
|
|
62
62
|
required: true;
|
|
63
63
|
};
|
|
64
64
|
as: {
|
|
65
|
-
type: import("vue").PropType<import("
|
|
65
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
66
66
|
default: string;
|
|
67
67
|
};
|
|
68
68
|
asChild: {
|
|
@@ -75,7 +75,7 @@ export declare const MonthRangePickerCell: import("vue").DefineComponent<import(
|
|
|
75
75
|
required: true;
|
|
76
76
|
};
|
|
77
77
|
as: {
|
|
78
|
-
type: import("vue").PropType<import("
|
|
78
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
79
79
|
default: string;
|
|
80
80
|
};
|
|
81
81
|
asChild: {
|
|
@@ -83,7 +83,7 @@ export declare const MonthRangePickerCell: import("vue").DefineComponent<import(
|
|
|
83
83
|
default: boolean;
|
|
84
84
|
};
|
|
85
85
|
}>> & Readonly<{}>, {
|
|
86
|
-
as: import("
|
|
86
|
+
as: import("../primitive.js").PrimitiveAs;
|
|
87
87
|
asChild: boolean;
|
|
88
88
|
}, import("vue").SlotsType<{
|
|
89
89
|
default: (props: PickerMonthCellSlotProps) => import("vue").VNodeChild;
|
|
@@ -98,7 +98,7 @@ export declare const MonthRangePickerStartInput: import("vue").DefineComponent<i
|
|
|
98
98
|
default: undefined;
|
|
99
99
|
};
|
|
100
100
|
as: {
|
|
101
|
-
type: import("vue").PropType<import("
|
|
101
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
102
102
|
default: string;
|
|
103
103
|
};
|
|
104
104
|
asChild: {
|
|
@@ -115,7 +115,7 @@ export declare const MonthRangePickerStartInput: import("vue").DefineComponent<i
|
|
|
115
115
|
default: undefined;
|
|
116
116
|
};
|
|
117
117
|
as: {
|
|
118
|
-
type: import("vue").PropType<import("
|
|
118
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
119
119
|
default: string;
|
|
120
120
|
};
|
|
121
121
|
asChild: {
|
|
@@ -125,7 +125,7 @@ export declare const MonthRangePickerStartInput: import("vue").DefineComponent<i
|
|
|
125
125
|
}>> & Readonly<{}>, {
|
|
126
126
|
name: string;
|
|
127
127
|
form: string;
|
|
128
|
-
as: import("
|
|
128
|
+
as: import("../primitive.js").PrimitiveAs;
|
|
129
129
|
asChild: boolean;
|
|
130
130
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
131
131
|
export declare const MonthRangePickerEndInput: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
@@ -138,7 +138,7 @@ export declare const MonthRangePickerEndInput: import("vue").DefineComponent<imp
|
|
|
138
138
|
default: undefined;
|
|
139
139
|
};
|
|
140
140
|
as: {
|
|
141
|
-
type: import("vue").PropType<import("
|
|
141
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
142
142
|
default: string;
|
|
143
143
|
};
|
|
144
144
|
asChild: {
|
|
@@ -155,7 +155,7 @@ export declare const MonthRangePickerEndInput: import("vue").DefineComponent<imp
|
|
|
155
155
|
default: undefined;
|
|
156
156
|
};
|
|
157
157
|
as: {
|
|
158
|
-
type: import("vue").PropType<import("
|
|
158
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
159
159
|
default: string;
|
|
160
160
|
};
|
|
161
161
|
asChild: {
|
|
@@ -165,11 +165,11 @@ export declare const MonthRangePickerEndInput: import("vue").DefineComponent<imp
|
|
|
165
165
|
}>> & Readonly<{}>, {
|
|
166
166
|
name: string;
|
|
167
167
|
form: string;
|
|
168
|
-
as: import("
|
|
168
|
+
as: import("../primitive.js").PrimitiveAs;
|
|
169
169
|
asChild: boolean;
|
|
170
170
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
171
|
-
export declare const MonthRangePickerPreviousYear: import("./
|
|
172
|
-
export declare const MonthRangePickerNextYear: import("./
|
|
171
|
+
export declare const MonthRangePickerPreviousYear: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
172
|
+
export declare const MonthRangePickerNextYear: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
173
173
|
export type { MonthRangePickerValue } from '@sectile/temporal/month-range-picker';
|
|
174
174
|
export type { MonthPickerValue } from '@sectile/temporal/month-picker';
|
|
175
175
|
export type { PickerMonthCellSlotProps as MonthRangePickerCellSlotProps, PickerPartProps as MonthRangePickerPartProps, PickerPortalProps as MonthRangePickerPortalProps, };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{PickerAnchor,PickerContent,PickerGrid,PickerPortal,PickerTrigger,createPickerInput,createPickerMonthCell,createPickerMove,specializePickerRootPart,createPickerRoot}from'./picker.js';import{monthRangePickerCapability}from'./capabilities/month-range-picker.js';export const MonthRangePickerRoot=createPickerRoot(monthRangePickerCapability,'SectileMonthRangePickerRoot',{scope:'month-range-picker',granularity:'month',defaultView:'year'});export const MonthRangePickerTrigger=specializePickerRootPart('date-range',PickerTrigger);export const MonthRangePickerAnchor=specializePickerRootPart('date-range',PickerAnchor);export const MonthRangePickerPortal=PickerPortal;export const MonthRangePickerContent=/* @__PURE__ */specializePickerRootPart('date-range',PickerContent);export const MonthRangePickerGrid=specializePickerRootPart('date-range',PickerGrid);export const MonthRangePickerCell=createPickerMonthCell('cell','SectileMonthRangePickerCell');export const MonthRangePickerStartInput=createPickerInput('start-input','SectileMonthRangePickerStartInput');export const MonthRangePickerEndInput=createPickerInput('end-input','SectileMonthRangePickerEndInput');export const MonthRangePickerPreviousYear=specializePickerRootPart('date-range',createPickerMove('year',-1,'SectileMonthRangePickerPreviousYear'));export const MonthRangePickerNextYear=specializePickerRootPart('date-range',createPickerMove('year',1,'SectileMonthRangePickerNextYear'));
|
|
2
|
+
//# sourceMappingURL=month-range-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"month-range-picker.js","names":["PickerAnchor","PickerContent","PickerGrid","PickerPortal","PickerTrigger","createPickerInput","createPickerMonthCell","createPickerMove","specializePickerRootPart","createPickerRoot","monthRangePickerCapability","MonthRangePickerRoot","scope","granularity","defaultView","MonthRangePickerTrigger","MonthRangePickerAnchor","MonthRangePickerPortal","MonthRangePickerContent","MonthRangePickerGrid","MonthRangePickerCell","MonthRangePickerStartInput","MonthRangePickerEndInput","MonthRangePickerPreviousYear","MonthRangePickerNextYear"],"sources":["../../src/temporal/month-range-picker.ts"],"mappings":"OAGEA,aAAcC,cAAeC,WAAYC,aAAcC,cAAeC,kBAAmBC,sBAAuBC,iBAAkBC,yBAClIC,qBACK,qBACEC,+BAAkC,8CAiBpC,MAAMC,qBAAuBF,iBAAiBC,2BAA4B,8BAA+B,CAAEE,MAAO,qBAAsBC,YAAa,QAASC,YAAa,gBAK3K,MAAMC,wBAA0BP,yBAAyB,aAAcJ,sBACvE,MAAMY,uBAAyBR,yBAAyB,aAAcR,qBACtE,MAAMiB,uBAAyBd,oBAC/B,MAAMe,uCAA0CV,yBAAyB,aAAcP,sBACvF,MAAMkB,qBAAuBX,yBAAyB,aAAcN,mBACpE,MAAMkB,qBAAuBd,sBAAsB,OAAQ,sCAC3D,MAAMe,2BAA6BhB,kBAAkB,cAAe,4CACpE,MAAMiB,yBAA2BjB,kBAAkB,YAAa,0CAChE,MAAMkB,6BAA+Bf,yBAAyB,aAAcD,iBAAiB,QAAS,EAAG,+CACzG,MAAMiB,yBAA2BhB,yBAAyB,aAAcD,iBAAiB,OAAQ,EAAG","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ import type { DateTimeRangePickerOptions } from '@sectile/dom/temporal/date-time
|
|
|
7
7
|
import { type DateRange, type DateValue } from '@sectile/dom/temporal/date-field';
|
|
8
8
|
import type { DateTimeRange, DateTimeValue } from '@sectile/dom/temporal/date-time-field';
|
|
9
9
|
import { type PrimitiveAs } from '../primitive.js';
|
|
10
|
-
import type { PickerFamilyCapability } from './
|
|
10
|
+
import type { PickerFamilyCapability } from './capability.js';
|
|
11
11
|
export type PickerKind = 'calendar' | 'date' | 'date-range' | 'date-time' | 'date-time-range';
|
|
12
12
|
export type PickerValue = DateValue | DateRange | DateTimeValue | DateTimeRange | null;
|
|
13
13
|
export type PickerValueFor<Kind extends PickerKind> = Kind extends 'calendar' | 'date' ? DateValue | null : Kind extends 'date-range' ? DateRange | null : Kind extends 'date-time' ? DateTimeValue | null : DateTimeRange | null;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Fragment,Teleport,computed,defineComponent,h,inject,mergeProps,onBeforeUnmount,onMounted,nextTick,provide,shallowRef,watch}from'vue';import{formatDateValue,parseDateValue}from'@sectile/dom/temporal/date-field';import{createCalendarMonth,createCalendarYear,isCalendarValueAvailable}from'@sectile/temporal/calendar';import{createDateValue,tryCreateDateValue}from'@sectile/temporal/date-field';import{hiddenInputSubmissionCapabilities,useCompositeFormControl}from'../form/control.js';import{Primitive}from'../primitive.js';import{useControlledStateInvariant}from'../internal/controlled-state.js';import{usePresence}from'../presence/presence.js';import{useHostPortalTarget}from'../host-provider.js';import{useTemporalReferenceDate}from'./temporal-provider.js';export function specializePickerRootPart(_kind,component){return component}const key=Symbol('SectileDatePickerRoot');const noPendingPickerValue=Symbol('no-pending-picker-value');const partProps={as:{type:[String,Object,Function],default:'div'},asChild:{type:Boolean,default:false}};export function createPickerRoot(capability,name,config={}){const kind=capability.kind;const scope=config.scope??kind;const granularity=config.granularity??'day';const defaultView=config.defaultView??(granularity==='day'?'month':'year');const defaultOpen=config.defaultOpen??false;const yearPageSize=config.yearPageSize??12;const inline=config.inline??false;const selectionEventType=kind==='calendar'||kind==='date'||kind==='date-range'?'select':'select-date';const component=defineComponent({name,inheritAttrs:false,props:{modelValue:{type:Object,default:undefined},defaultValue:{type:Object,default:null},open:{type:Boolean,default:undefined},defaultOpen:{type:Boolean,default:defaultOpen},highlightedValue:{type:Object,default:undefined},defaultHighlightedValue:{type:Object,default:undefined},referenceDate:{type:Object,default:undefined},defaultView:{type:String,default:defaultView},disabled:{type:Boolean,default:false},readonly:{type:Boolean,default:false},required:{type:Boolean,default:false},label:{type:String,default:undefined},policies:{type:Object,default:undefined},position:{type:Boolean,default:true},side:{type:String,default:'bottom'},align:{type:String,default:'center'},sideOffset:{type:Number,default:8},collisionPadding:{type:[Number,Object],default:8},collisionBoundary:{type:[String,Object],default:undefined},avoidCollisions:{type:Boolean,default:true},hideWhenDetached:{type:Boolean,default:false},strategy:{type:String,default:'absolute'},tracking:{type:String,default:'events'},as:{type:[String,Object,Function],default:'div'},asChild:{type:Boolean,default:false}},emits:{'update:modelValue':_value=>true,'update:open':_value=>true,'update:highlightedValue':_value=>true},slots:Object,setup(props,{emit,slots}){const runtimeProps=props;const elements=new Map;const connection=shallowRef();const hostReferenceDate=useTemporalReferenceDate();const referenceDate=computed(()=>runtimeProps.referenceDate??hostReferenceDate.value);const inlineTrigger=typeof document==='undefined'||!inline||kind==='calendar'?undefined:document.createElement('button');const localValue=shallowRef(runtimeProps.modelValue!==undefined?runtimeProps.modelValue:runtimeProps.defaultValue);const localOpen=shallowRef(runtimeProps.open??runtimeProps.defaultOpen);const localHighlight=shallowRef(runtimeProps.highlightedValue??runtimeProps.defaultHighlightedValue??dateOf(localValue.value)??referenceDate.value);const periodReferenceYear=localHighlight.value.year;const yearPageStart=shallowRef(localHighlight.value.year-Math.floor(yearPageSize/2));const dates=shallowRef(monthFor(localHighlight.value));const months=shallowRef(yearFor(localHighlight.value.year));const years=shallowRef(yearsFrom(yearPageStart.value,yearPageSize));const localView=shallowRef(Object.freeze({year:localHighlight.value.year,month:localHighlight.value.month}));const localViewMode=shallowRef(runtimeProps.defaultView);const controlled={value:useControlledStateInvariant(`${kind}PickerRoot`,'modelValue',()=>runtimeProps.modelValue),open:useControlledStateInvariant(`${kind}PickerRoot`,'open',()=>runtimeProps.open),highlighted:useControlledStateInvariant(`${kind}PickerRoot`,'highlightedValue',()=>runtimeProps.highlightedValue)};const pendingValue=shallowRef(noPendingPickerValue);const state=computed(()=>{const highlighted=runtimeProps.highlightedValue??localHighlight.value;const value=controlled.value&&pendingValue.value!==noPendingPickerValue?pendingValue.value:runtimeProps.modelValue!==undefined?runtimeProps.modelValue:localValue.value;return Object.freeze({value,highlightedValue:highlighted,open:runtimeProps.open??localOpen.value,dates:dates.value,months:months.value,years:years.value,view:localView.value,viewMode:localViewMode.value,disabled:runtimeProps.disabled,readonly:runtimeProps.readonly})});useCompositeFormControl({root:()=>elements.get('content')??elements.get('grid')??null,focusTarget:()=>elements.get('trigger')??(kind==='calendar'?null:firstPickerInput(elements,kind))??elements.get('grid')??null,submissions:()=>pickerFormSubmissions(elements,kind)});const periodAvailable=value=>{const policies=runtimeProps.policies;if(granularity!=='day'){const canonical='month'in value?tryCreateDateValue(value.year,value.month,1):tryCreateDateValue(value.year,1,1);return canonical.ok&&isCalendarValueAvailable(canonical.value,policies)}if('month'in value)return monthAvailable(value,policies);return Array.from({length:12},(_entry,index)=>index+1).some(month=>monthAvailable({year:value.year,month},policies))};const refreshCells=()=>{const grid=elements.get('grid');if(grid===undefined||connection.value===undefined)return;grid.querySelectorAll('[data-sectile-picker-date]').forEach(element=>{const parsed=parseDateValue(element.dataset['sectilePickerDate']??'');if(parsed.ok)connection.value?.setCellAttributes(element,parsed.value)})};const refresh=()=>{const raw=connection.value?.getSnapshot().state;if(raw===undefined)return;const picked=extractState(kind,raw);localValue.value=picked.value;localHighlight.value=picked.highlighted;localOpen.value=picked.open;localView.value=picked.view;localViewMode.value=picked.viewMode;if(connection.value!==undefined){dates.value=picked.viewMode==='week'?[connection.value.getWeek()]:picked.viewMode==='month'?connection.value.getMonth():[];months.value=picked.viewMode==='year'?connection.value.getYear():[];if(granularity==='year'){yearPageStart.value=pageStartContaining(picked.highlighted.year,yearPageStart.value,yearPageSize);years.value=yearsFrom(yearPageStart.value,yearPageSize)}}refreshCells();void nextTick(refreshCells)};const connect=()=>{connection.value?.disconnect();const content=elements.get('content');const grid=elements.get('grid');const trigger=elements.get('trigger')??inlineTrigger;if(content===undefined||grid===undefined||kind!=='calendar'&&trigger===undefined)return;const base={root:content,grid,disabled:runtimeProps.disabled,readOnly:runtimeProps.readonly,required:runtimeProps.required,referenceDate:referenceDate.value,...runtimeProps.label===undefined?{}:{label:runtimeProps.label},...runtimeProps.policies===undefined?{}:{policies:runtimeProps.policies},...controlled.value?{value:runtimeProps.modelValue}:{defaultValue:localValue.value},...controlled.highlighted?{highlightedValue:runtimeProps.highlightedValue}:{defaultHighlightedValue:localHighlight.value},onValueChange:value=>{localValue.value=value;if(controlled.value)pendingValue.value=value;emit('update:modelValue',value)},onHighlightedValueChange:value=>{localHighlight.value=value;emit('update:highlightedValue',value)},onUpdate:refresh};if(kind!=='calendar'){base['trigger']=trigger;const anchor=elements.get('anchor');if(anchor!==undefined)base['anchor']=anchor;Object.assign(base,{manageVisibility:false,position:runtimeProps.position,side:runtimeProps.side,align:runtimeProps.align,sideOffset:runtimeProps.sideOffset,collisionPadding:runtimeProps.collisionPadding,avoidCollisions:runtimeProps.avoidCollisions,hideWhenDetached:runtimeProps.hideWhenDetached,strategy:runtimeProps.strategy,tracking:runtimeProps.tracking});if(runtimeProps.collisionBoundary!==undefined)base['collisionBoundary']=runtimeProps.collisionBoundary;if(controlled.open)base['open']=runtimeProps.open;else base['defaultOpen']=localOpen.value;base['onOpenChange']=value=>{localOpen.value=value;emit('update:open',value)}}if(granularity==='day'){for(const part of inputParts(kind)){const element=elements.get(part);if(element!==undefined)base[toDOMInputKey(part)]=element}}connection.value=capability.connect(base);if(runtimeProps.defaultView!=='month')connection.value.handleEvent({type:'set-view-mode',value:runtimeProps.defaultView});refreshCells();refresh()};let mounted=false;let connectQueued=false;const focusedInputs=new Set;const composingInputs=new Set;let reconnectPending=false;let reconnectTimer=null;const hasActiveInput=()=>focusedInputs.size>0||composingInputs.size>0;const requestConnect=()=>{if(hasActiveInput()){reconnectPending=true;return}connect()};const schedulePendingConnect=()=>{if(hasActiveInput()||!reconnectPending||reconnectTimer!==null)return;reconnectTimer=setTimeout(()=>{reconnectTimer=null;if(!mounted||hasActiveInput())return;reconnectPending=false;connect()},0)};const setInputFocused=(part,focused)=>{if(focused)focusedInputs.add(part);else focusedInputs.delete(part);schedulePendingConnect()};const setInputComposing=(part,composing)=>{if(composing)composingInputs.add(part);else composingInputs.delete(part);schedulePendingConnect()};const scheduleConnect=()=>{if(!mounted||connectQueued)return;connectQueued=true;void nextTick(()=>{connectQueued=false;if(mounted)requestConnect()})};const moveBy=(unit,delta)=>{const direction=delta<0?-1:1;for(let index=0;index<Math.abs(delta);index+=1){connection.value?.handleEvent(`${direction<0?'previous':'next'}-${unit}`)}refresh()};const selectMonth=value=>{connection.value?.handleEvent(granularity==='month'?{type:selectionEventType,value:createDateValue(value.year,value.month,1)}:{type:'select-month',value});refresh()};const selectYear=value=>{connection.value?.handleEvent({type:selectionEventType,value:createDateValue(value.year,1,1)});refresh()};provide(key,{kind,scope,granularity,inline,state,dayAvailable:value=>isCalendarValueAvailable(value,kind==='date-time'||kind==='date-time-range'?runtimeProps.policies?.date:runtimeProps.policies),periodAvailable,formatInput:capability.formatInput,position:computed(()=>runtimeProps.position),strategy:computed(()=>runtimeProps.strategy),register:(part,element)=>{if(elements.get(part)===element||element===undefined&&!elements.has(part))return;if(element===undefined)elements.delete(part);else elements.set(part,element);scheduleConnect()},setInputFocused,setInputComposing,refresh:()=>connection.value?.refresh(),registerCell:(element,value)=>connection.value?.setCellAttributes(element,value),move:(unit,direction)=>{if(granularity!=='day'&&unit==='year'){connection.value?.handleEvent({type:'navigate-period',unit:granularity,direction:direction<0?'previous-page':'next-page',referenceYear:periodReferenceYear});refresh();return}moveBy(unit,direction)},handleGridKey:event=>{if(granularity==='day'&&state.value.viewMode!=='year'||event.altKey||event.ctrlKey||event.metaKey)return;const highlighted=state.value.highlightedValue;if(event.key==='Enter'||event.key===' '){event.preventDefault();event.stopImmediatePropagation();if(granularity==='year')selectYear({year:highlighted.year});else selectMonth({year:highlighted.year,month:highlighted.month});return}if(granularity!=='day'){const direction=event.key==='ArrowLeft'?'previous':event.key==='ArrowRight'?'next':event.key==='ArrowUp'?'above':event.key==='ArrowDown'?'below':event.key==='PageUp'?'previous-page':event.key==='PageDown'?'next-page':event.key==='Home'?'start':event.key==='End'?'end':null;if(direction===null)return;event.preventDefault();event.stopImmediatePropagation();connection.value?.handleEvent({type:'navigate-period',unit:granularity,direction,referenceYear:periodReferenceYear});refresh();return}let movement;if(event.key==='ArrowLeft')movement={unit:'month',delta:-1};else if(event.key==='ArrowRight')movement={unit:'month',delta:1};else if(event.key==='ArrowUp')movement={unit:'month',delta:-3};else if(event.key==='ArrowDown')movement={unit:'month',delta:3};else if(event.key==='PageUp')movement={unit:'year',delta:-1};else if(event.key==='PageDown')movement={unit:'year',delta:1};else if(event.key==='Home')movement={unit:'month',delta:1-highlighted.month};else if(event.key==='End')movement={unit:'month',delta:12-highlighted.month};else return;event.preventDefault();event.stopImmediatePropagation();if(movement.delta!==0)moveBy(movement.unit,movement.delta)},setViewMode:value=>{connection.value?.handleEvent({type:'set-view-mode',value});refresh()},selectDate:value=>{connection.value?.handleEvent({type:selectionEventType,value});refresh()},selectMonth,selectYear});onMounted(()=>{mounted=true;connect()});onBeforeUnmount(()=>{mounted=false;connectQueued=false;if(reconnectTimer!==null)clearTimeout(reconnectTimer);reconnectTimer=null;reconnectPending=false;focusedInputs.clear();composingInputs.clear();connection.value?.disconnect();connection.value=undefined});watch([()=>runtimeProps.disabled,()=>runtimeProps.readonly,()=>runtimeProps.required,()=>runtimeProps.label,()=>runtimeProps.policies,()=>runtimeProps.position,()=>runtimeProps.side,()=>runtimeProps.align,()=>runtimeProps.sideOffset,()=>runtimeProps.collisionPadding,()=>runtimeProps.collisionBoundary,()=>runtimeProps.avoidCollisions,()=>runtimeProps.hideWhenDetached,()=>runtimeProps.strategy,()=>runtimeProps.tracking],requestConnect);watch(referenceDate,value=>{if(runtimeProps.highlightedValue===undefined&&runtimeProps.defaultHighlightedValue===undefined&&dateOf(runtimeProps.modelValue??runtimeProps.defaultValue)===null)localHighlight.value=value;requestConnect()});watch([()=>runtimeProps.modelValue,()=>runtimeProps.open,()=>runtimeProps.highlightedValue],(values,previousValues)=>{if(connection.value===undefined)return;if(values[0]!==previousValues[0])pendingValue.value=noPendingPickerValue;const result=connection.value.syncControlledValues({...controlled.value?{value:runtimeProps.modelValue}:{},...kind!=='calendar'&&controlled.open?{open:runtimeProps.open}:{},...controlled.highlighted?{highlightedValue:runtimeProps.highlightedValue}:{}});if(!result.ok)throw new TypeError(result.error?.message??'Could not synchronize picker values.');refresh()});return()=>h(Fragment,null,slots['default']?.(state.value)??[])}});return component}export const PickerTrigger=/* @__PURE__ */defineComponent({name:'SectilePickerTrigger',inheritAttrs:false,props:{as:{type:[String,Object,Function],default:'button'},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot('PickerTrigger');return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>root.register('trigger',node instanceof HTMLElement?node:undefined),type:props.as==='button'?'button':undefined,disabled:root.state.value.disabled,'aria-haspopup':'dialog','aria-expanded':String(root.state.value.open),'data-scope':root.scope,'data-part':'trigger'}),{default:()=>slots['default']?.(root.state.value)})}});export const PickerAnchor=/* @__PURE__ */defineComponent({name:'SectilePickerAnchor',inheritAttrs:false,props:partProps,setup(props,{attrs,slots}){const root=useRoot('PickerAnchor');return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>root.register('anchor',node instanceof HTMLElement?node:undefined),'data-scope':root.scope,'data-part':'anchor'}),slots)}});export const PickerContent=/* @__PURE__ */defineComponent({name:'SectilePickerContent',inheritAttrs:false,props:partProps,slots:Object,setup(props,{attrs,slots}){const root=useRoot('PickerContent');const element=shallowRef();const open=computed(()=>root.inline||root.state.value.open);const present=usePresence(open,element);watch(present,async()=>{await nextTick();root.refresh()},{flush:'post'});return()=>{const exiting=!root.inline&&!open.value&&present.value;return h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>{const content=node instanceof HTMLElement?node:undefined;element.value=content;root.register('content',content)},role:root.inline?'group':'dialog','aria-modal':root.inline?undefined:'false',hidden:root.inline?false:!present.value,...exiting?{inert:true,'aria-hidden':'true'}:{},'data-scope':root.scope,'data-part':'content','data-state':root.state.value.open?'open':'closed',style:!root.inline&&root.position.value?{position:root.strategy.value}:undefined}),{default:()=>slots['default']?.(root.state.value)})}}});export const PickerPortal=/* @__PURE__ */defineComponent({name:'SectilePickerPortal',inheritAttrs:false,props:{to:{type:[String,Object],default:undefined},disabled:{type:Boolean,default:false},defer:{type:Boolean,default:false}},setup(props,{slots}){useRoot('PickerPortal');const portalTarget=useHostPortalTarget();return()=>h(Teleport,{to:props.to??portalTarget.value??'body',disabled:props.disabled,defer:props.defer},slots['default']?.())}});export const PickerGrid=/* @__PURE__ */defineComponent({name:'SectilePickerGrid',inheritAttrs:false,props:partProps,slots:Object,setup(props,{attrs,slots}){const root=useRoot('PickerGrid');return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>root.register('grid',node instanceof HTMLElement?node:undefined),role:'grid',onKeydown:root.handleGridKey,'data-scope':root.scope,'data-part':'grid'}),{default:()=>slots['default']?.(root.state.value)})}});export const PickerCell=/* @__PURE__ */defineComponent({name:'SectilePickerCell',inheritAttrs:false,props:{value:{type:Object,required:true},as:{type:[String,Object,Function],default:'button'},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot('PickerCell');const state=computed(()=>cellState(root.state.value,props.value,root.dayAvailable(props.value)));return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==='button'?'button':undefined,elementRef:node=>{if(node instanceof HTMLElement)root.registerCell(node,props.value)},disabled:state.value.disabled,onClick:event=>{event.stopPropagation();root.selectDate(props.value)},role:'gridcell','aria-selected':String(state.value.selected||state.value.inRange),'aria-disabled':String(state.value.disabled),'data-sectile-picker-date':formatDateValue(props.value),'data-scope':root.scope,'data-part':'cell','data-selected':state.value.selected?'':undefined,'data-in-range':state.value.inRange?'':undefined,'data-highlighted':state.value.highlighted?'':undefined,'data-outside-month':state.value.outsideMonth?'':undefined}),{default:()=>slots['default']?.(state.value)})}});export function createPickerMonthCell(part='month-cell',name='SectilePickerMonthCell'){return defineComponent({name,inheritAttrs:false,props:{value:{type:Object,required:true},as:{type:[String,Object,Function],default:'button'},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot(name);const state=computed(()=>({value:props.value,selected:monthContainsValue(root.state.value.value,props.value),inRange:periodInRange(root.state.value.value,{...props.value,day:1},{...props.value,day:31}),highlighted:root.state.value.highlightedValue.year===props.value.year&&root.state.value.highlightedValue.month===props.value.month,disabled:root.state.value.disabled||!root.periodAvailable(props.value)}));return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==='button'?'button':undefined,disabled:state.value.disabled,tabIndex:state.value.highlighted?0:-1,onClick:event=>{event.stopPropagation();if(!state.value.disabled)root.selectMonth(props.value)},role:'gridcell','aria-selected':String(state.value.selected||state.value.inRange),'aria-disabled':String(state.value.disabled),'data-sectile-picker-month':`${String(props.value.year).padStart(4,'0')}-${String(props.value.month).padStart(2,'0')}`,'data-scope':root.scope,'data-part':part,'data-selected':state.value.selected?'':undefined,'data-in-range':state.value.inRange?'':undefined,'data-highlighted':state.value.highlighted?'':undefined}),{default:()=>slots['default']?.(state.value)})}})}export function createPickerYearCell(part='year-cell',name='SectilePickerYearCell'){return defineComponent({name,inheritAttrs:false,props:{value:{type:Object,required:true},as:{type:[String,Object,Function],default:'button'},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot(name);const currentYear=(new Date).getFullYear();const state=computed(()=>({value:props.value,selected:yearContainsValue(root.state.value.value,props.value),inRange:periodInRange(root.state.value.value,{year:props.value.year,month:1,day:1},{year:props.value.year,month:12,day:31}),highlighted:root.state.value.highlightedValue.year===props.value.year,current:props.value.year===currentYear,disabled:root.state.value.disabled||!root.periodAvailable(props.value)}));return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==='button'?'button':undefined,disabled:state.value.disabled,tabIndex:state.value.highlighted?0:-1,onClick:event=>{event.stopPropagation();if(!state.value.disabled)root.selectYear(props.value)},role:'gridcell','aria-selected':String(state.value.selected||state.value.inRange),'aria-disabled':String(state.value.disabled),'aria-current':state.value.current?'date':undefined,'data-sectile-picker-year':String(props.value.year),'data-scope':root.scope,'data-part':part,'data-selected':state.value.selected?'':undefined,'data-in-range':state.value.inRange?'':undefined,'data-highlighted':state.value.highlighted?'':undefined,'data-current':state.value.current?'':undefined}),{default:()=>slots['default']?.(state.value)})}})}export const PickerMonthCell=/* @__PURE__ */createPickerMonthCell();export const PickerYearCell=/* @__PURE__ */createPickerYearCell();export function createPickerInput(part,name,type='text'){return defineComponent({name,inheritAttrs:false,props:{name:{type:String,default:undefined},form:{type:String,default:undefined},as:{type:[String,Object,Function],default:'input'},asChild:{type:Boolean,default:false}},setup(props,{attrs}){const root=useRoot(name);const renderServerValue=typeof window==='undefined';const browserOwned=type==='text'&&root.granularity==='day'&&!isPickerDisplayInput(part);return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,elementRef:node=>root.register(part,node instanceof HTMLInputElement?node:undefined),type,name:props.name,form:props.form,disabled:root.state.value.disabled,readOnly:root.granularity!=='day'||root.state.value.readonly||isPickerDisplayInput(part),required:false,...renderServerValue||!browserOwned?{value:root.state.value.value===null?'':root.formatInput(root.granularity,part,root.state.value.value)}:{},onFocus:browserOwned?()=>root.setInputFocused(part,true):undefined,onBlur:browserOwned?()=>root.setInputFocused(part,false):undefined,onCompositionstart:browserOwned?()=>root.setInputComposing(part,true):undefined,onCompositionend:browserOwned?()=>root.setInputComposing(part,false):undefined,'data-scope':root.scope,'data-part':part}))}})}function isPickerDisplayInput(part){return part==='start-input'||part==='end-input'||part==='start-date-time-input'||part==='end-date-time-input'}export function createPickerMove(unit,direction,name,part){return defineComponent({name,inheritAttrs:false,props:{as:{type:[String,Object,Function],default:'button'},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot(name);return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==='button'?'button':undefined,disabled:root.state.value.disabled,onClick:()=>root.move(unit,direction),'data-scope':root.scope,'data-part':part??`${direction<0?'previous':'next'}-${unit}`}),{default:()=>slots['default']?.(root.state.value)})}})}export function createPickerViewTrigger(view,name){return defineComponent({name,inheritAttrs:false,props:{as:{type:[String,Object,Function],default:'button'},asChild:{type:Boolean,default:false}},slots:Object,setup(props,{attrs,slots}){const root=useRoot(name);return()=>h(Primitive,mergeProps(attrs,{as:props.as,asChild:props.asChild,type:props.as==='button'?'button':undefined,disabled:root.state.value.disabled,onClick:()=>root.setViewMode(view),'aria-pressed':String(root.state.value.viewMode===view),'data-scope':root.scope,'data-part':`${view}-view-trigger`,'data-state':root.state.value.viewMode===view?'active':'inactive'}),{default:()=>slots['default']?.(root.state.value)})}})}function useRoot(part){const root=inject(key);if(root===undefined)throw new TypeError(`${part} must be used inside a date picker root.`);return root}function firstPickerInput(elements,kind){for(const part of inputParts(kind)){const element=elements.get(part);if(element instanceof HTMLInputElement)return element}return null}function pickerFormSubmissions(elements,kind){const submission=(part,relativeName)=>{const element=elements.get(part);if(!(element instanceof HTMLInputElement))return null;return{element:()=>element,...relativeName===undefined?{}:{relativeName},capabilities:hiddenInputSubmissionCapabilities}};if(kind==='calendar'||kind==='date')return compactSubmissions(submission('input'));if(kind==='date-range'){return compactSubmissions(submission('start-input','start'),submission('end-input','end'))}if(kind==='date-time'){const combined=submission('date-time-input');return combined===null?compactSubmissions(submission('date-input','date'),submission('time-input','time')):[combined]}const combinedStart=submission('start-date-time-input','start');const combinedEnd=submission('end-date-time-input','end');return compactSubmissions(combinedStart??submission('start-date-input','start.date'),combinedStart===null?submission('start-time-input','start.time'):null,combinedEnd??submission('end-date-input','end.date'),combinedEnd===null?submission('end-time-input','end.time'):null)}function compactSubmissions(...submissions){return submissions.filter(submission=>submission!==null)}function monthFor(value){return createCalendarMonth({year:value.year,month:value.month})}function yearFor(year){return createCalendarYear(year)}function yearsFrom(start,pageSize){const columns=4;return Array.from({length:Math.ceil(pageSize/columns)},(_row,rowIndex)=>Array.from({length:columns},(_column,columnIndex)=>Object.freeze({year:start+rowIndex*columns+columnIndex})))}function pageStartContaining(year,currentStart,pageSize){if(year<currentStart)return currentStart-Math.ceil((currentStart-year)/pageSize)*pageSize;if(year>=currentStart+pageSize)return currentStart+Math.floor((year-currentStart)/pageSize)*pageSize;return currentStart}function monthAvailable(value,policies){const days=daysInMonth(value.year,value.month);for(let day=1;day<=days;day+=1){if(isCalendarValueAvailable({year:value.year,month:value.month,day},policies))return true}return false}function daysInMonth(year,month){if(month===2)return year%4===0&&(year%100!==0||year%400===0)?29:28;return[4,6,9,11].includes(month)?30:31}function dateOf(value){if(value===null)return null;if('year'in value)return value;if('date'in value)return value.date;const start=value.start;return'date'in start?start.date:start}function extractState(kind,raw){const state=raw;if(kind==='calendar')return{value:state['value'],highlighted:state['highlighted'],open:true,view:state['view'],viewMode:state['viewMode']};if(kind==='date')return{value:state['value'],highlighted:state['highlighted'],open:state['open'],view:state['view'],viewMode:state['viewMode']};const calendar=state['calendar'];return{value:state['value'],highlighted:calendar['highlighted'],open:calendar['open'],view:calendar['view'],viewMode:calendar['viewMode']}}function compare(left,right){return left.year-right.year||left.month-right.month||left.day-right.day}function cellState(state,value,available){const selectedDate=dateOf(state.value);let selected=selectedDate!==null&&compare(selectedDate,value)===0;let inRange=false;if(state.value!==null&&!('year'in state.value)&&!('date'in state.value)){const start='date'in state.value.start?state.value.start.date:state.value.start;const end='date'in state.value.end?state.value.end.date:state.value.end;inRange=compare(start,value)<=0&&compare(value,end)<=0;selected=compare(start,value)===0||compare(end,value)===0}return{value,selected,inRange,highlighted:compare(state.highlightedValue,value)===0,disabled:state.disabled||!available,outsideMonth:value.month!==state.view.month||value.year!==state.view.year}}function monthContainsValue(value,month){const date=dateOf(value);return date!==null&&date.year===month.year&&date.month===month.month}function yearContainsValue(value,year){const date=dateOf(value);return date!==null&&date.year===year.year}function periodInRange(value,start,end){if(value===null||'year'in value||'date'in value)return false;const rangeStart='date'in value.start?value.start.date:value.start;const rangeEnd='date'in value.end?value.end.date:value.end;return compare(rangeStart,end)<=0&&compare(start,rangeEnd)<=0}function inputParts(kind){return kind==='calendar'||kind==='date'?['input']:kind==='date-range'?['start-input','end-input']:kind==='date-time'?['date-time-input','date-input','time-input']:['start-date-time-input','end-date-time-input','start-date-input','end-date-input','start-time-input','end-time-input']}function toDOMInputKey(part){if(part==='date-time-input')return'dateTimeInput';if(part==='start-date-time-input')return'startDateTimeInput';if(part==='end-date-time-input')return'endDateTimeInput';return part.replace(/-([a-z])/g,(_match,letter)=>letter.toUpperCase())}
|
|
2
|
+
//# sourceMappingURL=picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"picker.js","names":["Fragment","Teleport","computed","defineComponent","h","inject","mergeProps","onBeforeUnmount","onMounted","nextTick","provide","shallowRef","watch","formatDateValue","parseDateValue","createCalendarMonth","createCalendarYear","isCalendarValueAvailable","createDateValue","tryCreateDateValue","hiddenInputSubmissionCapabilities","useCompositeFormControl","Primitive","useControlledStateInvariant","usePresence","useHostPortalTarget","useTemporalReferenceDate","specializePickerRootPart","_kind","component","key","Symbol","noPendingPickerValue","partProps","as","type","String","Object","Function","default","asChild","Boolean","createPickerRoot","capability","name","config","kind","scope","granularity","defaultView","defaultOpen","yearPageSize","inline","selectionEventType","inheritAttrs","props","modelValue","undefined","defaultValue","open","highlightedValue","defaultHighlightedValue","referenceDate","disabled","readonly","required","label","policies","position","side","align","sideOffset","Number","collisionPadding","collisionBoundary","avoidCollisions","hideWhenDetached","strategy","tracking","emits","_value","slots","setup","emit","runtimeProps","elements","Map","connection","hostReferenceDate","value","inlineTrigger","document","createElement","localValue","localOpen","localHighlight","dateOf","periodReferenceYear","year","yearPageStart","Math","floor","dates","monthFor","months","yearFor","years","yearsFrom","localView","freeze","month","localViewMode","controlled","highlighted","pendingValue","state","view","viewMode","root","get","focusTarget","firstPickerInput","submissions","pickerFormSubmissions","periodAvailable","canonical","ok","monthAvailable","Array","from","length","_entry","index","some","refreshCells","grid","querySelectorAll","forEach","element","parsed","dataset","setCellAttributes","refresh","raw","getSnapshot","picked","extractState","getWeek","getMonth","getYear","pageStartContaining","connect","disconnect","content","trigger","base","readOnly","onValueChange","onHighlightedValueChange","onUpdate","anchor","assign","manageVisibility","part","inputParts","toDOMInputKey","handleEvent","mounted","connectQueued","focusedInputs","Set","composingInputs","reconnectPending","reconnectTimer","hasActiveInput","size","requestConnect","schedulePendingConnect","setTimeout","setInputFocused","focused","add","delete","setInputComposing","composing","scheduleConnect","moveBy","unit","delta","direction","abs","selectMonth","selectYear","dayAvailable","date","formatInput","register","has","set","registerCell","move","referenceYear","handleGridKey","event","altKey","ctrlKey","metaKey","preventDefault","stopImmediatePropagation","movement","setViewMode","selectDate","clearTimeout","clear","values","previousValues","result","syncControlledValues","TypeError","error","message","PickerTrigger","attrs","useRoot","elementRef","node","HTMLElement","PickerAnchor","PickerContent","present","async","flush","exiting","role","hidden","inert","style","PickerPortal","to","defer","portalTarget","PickerGrid","onKeydown","PickerCell","cellState","onClick","stopPropagation","selected","inRange","outsideMonth","createPickerMonthCell","monthContainsValue","periodInRange","day","tabIndex","padStart","createPickerYearCell","currentYear","Date","getFullYear","yearContainsValue","current","PickerMonthCell","PickerYearCell","createPickerInput","form","renderServerValue","window","browserOwned","isPickerDisplayInput","HTMLInputElement","onFocus","onBlur","onCompositionstart","onCompositionend","createPickerMove","createPickerViewTrigger","submission","relativeName","capabilities","compactSubmissions","combined","combinedStart","combinedEnd","filter","start","pageSize","columns","ceil","_row","rowIndex","_column","columnIndex","currentStart","days","daysInMonth","includes","calendar","compare","left","right","available","selectedDate","end","rangeStart","rangeEnd","replace","_match","letter","toUpperCase"],"sources":["../../src/temporal/picker.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DateRangePickerOptions } from '@sectile/dom/temporal/date-range-picker';
|
|
2
2
|
import type { DateRange, DateValue } from '@sectile/dom/temporal/date-field';
|
|
3
|
-
import { type PickerCellSlotProps, type PickerPartProps, type PickerRootSlotProps } from './
|
|
3
|
+
import { type PickerCellSlotProps, type PickerPartProps, type PickerRootSlotProps } from './picker.js';
|
|
4
4
|
export interface RangeCalendarRootProps extends PickerPartProps {
|
|
5
5
|
readonly modelValue?: DateRange | null;
|
|
6
6
|
readonly defaultValue?: DateRange | null;
|
|
@@ -16,20 +16,20 @@ export interface RangeCalendarRootProps extends PickerPartProps {
|
|
|
16
16
|
readonly label?: string;
|
|
17
17
|
readonly policies?: DateRangePickerOptions['policies'];
|
|
18
18
|
}
|
|
19
|
-
export declare const RangeCalendarRoot: import("./
|
|
19
|
+
export declare const RangeCalendarRoot: import("./picker.js").PickerRootComponent<"date-range">;
|
|
20
20
|
export type RangeCalendarRootSlotProps = PickerRootSlotProps<DateRange | null>;
|
|
21
21
|
export type RangeCalendarValueChangeHandler = NonNullable<InstanceType<typeof RangeCalendarRoot>['$props']['onUpdate:modelValue']>;
|
|
22
22
|
export type RangeCalendarOpenChangeHandler = NonNullable<InstanceType<typeof RangeCalendarRoot>['$props']['onUpdate:open']>;
|
|
23
23
|
export type RangeCalendarHighlightedValueChangeHandler = NonNullable<InstanceType<typeof RangeCalendarRoot>['$props']['onUpdate:highlightedValue']>;
|
|
24
|
-
export declare const RangeCalendarContent: import("./
|
|
25
|
-
export declare const RangeCalendarGrid: import("./
|
|
24
|
+
export declare const RangeCalendarContent: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
25
|
+
export declare const RangeCalendarGrid: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
26
26
|
export declare const RangeCalendarCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
27
27
|
value: {
|
|
28
28
|
type: import("vue").PropType<DateValue>;
|
|
29
29
|
required: true;
|
|
30
30
|
};
|
|
31
31
|
as: {
|
|
32
|
-
type: import("vue").PropType<import("
|
|
32
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
33
33
|
default: string;
|
|
34
34
|
};
|
|
35
35
|
asChild: {
|
|
@@ -42,7 +42,7 @@ export declare const RangeCalendarCell: import("vue").DefineComponent<import("vu
|
|
|
42
42
|
required: true;
|
|
43
43
|
};
|
|
44
44
|
as: {
|
|
45
|
-
type: import("vue").PropType<import("
|
|
45
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
46
46
|
default: string;
|
|
47
47
|
};
|
|
48
48
|
asChild: {
|
|
@@ -50,13 +50,13 @@ export declare const RangeCalendarCell: import("vue").DefineComponent<import("vu
|
|
|
50
50
|
default: boolean;
|
|
51
51
|
};
|
|
52
52
|
}>> & Readonly<{}>, {
|
|
53
|
-
as: import("
|
|
53
|
+
as: import("../primitive.js").PrimitiveAs;
|
|
54
54
|
asChild: boolean;
|
|
55
55
|
}, import("vue").SlotsType<{
|
|
56
56
|
default: (props: PickerCellSlotProps) => import("vue").VNodeChild;
|
|
57
57
|
}>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
58
|
-
export declare const RangeCalendarPreviousMonth: import("./
|
|
59
|
-
export declare const RangeCalendarNextMonth: import("./
|
|
60
|
-
export declare const RangeCalendarPreviousYear: import("./
|
|
61
|
-
export declare const RangeCalendarNextYear: import("./
|
|
58
|
+
export declare const RangeCalendarPreviousMonth: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
59
|
+
export declare const RangeCalendarNextMonth: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
60
|
+
export declare const RangeCalendarPreviousYear: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
61
|
+
export declare const RangeCalendarNextYear: import("./picker.js").PickerRootPartComponent<"date-range">;
|
|
62
62
|
export type { DateRange, DateValue, PickerCellSlotProps as RangeCalendarCellSlotProps, PickerPartProps as RangeCalendarPartProps, };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{PickerCell,PickerContent,PickerGrid,createPickerMove,createPickerRoot,specializePickerRootPart}from'./picker.js';import{rangeCalendarCapability}from'./capabilities/range-calendar.js';export const RangeCalendarRoot=createPickerRoot(rangeCalendarCapability,'SectileRangeCalendarRoot',{scope:'range-calendar',defaultOpen:true,defaultView:'month',inline:true});export const RangeCalendarContent=/* @__PURE__ */specializePickerRootPart('date-range',PickerContent);export const RangeCalendarGrid=/* @__PURE__ */specializePickerRootPart('date-range',PickerGrid);export const RangeCalendarCell=PickerCell;export const RangeCalendarPreviousMonth=/* @__PURE__ */specializePickerRootPart('date-range',createPickerMove('month',-1,'SectileRangeCalendarPreviousMonth'));export const RangeCalendarNextMonth=/* @__PURE__ */specializePickerRootPart('date-range',createPickerMove('month',1,'SectileRangeCalendarNextMonth'));export const RangeCalendarPreviousYear=/* @__PURE__ */specializePickerRootPart('date-range',createPickerMove('year',-1,'SectileRangeCalendarPreviousYear'));export const RangeCalendarNextYear=/* @__PURE__ */specializePickerRootPart('date-range',createPickerMove('year',1,'SectileRangeCalendarNextYear'));
|
|
2
|
+
//# sourceMappingURL=range-calendar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"range-calendar.js","names":["PickerCell","PickerContent","PickerGrid","createPickerMove","createPickerRoot","specializePickerRootPart","rangeCalendarCapability","RangeCalendarRoot","scope","defaultOpen","defaultView","inline","RangeCalendarContent","RangeCalendarGrid","RangeCalendarCell","RangeCalendarPreviousMonth","RangeCalendarNextMonth","RangeCalendarPreviousYear","RangeCalendarNextYear"],"sources":["../../src/temporal/range-calendar.ts"],"mappings":"OAGEA,WAAYC,cAAeC,WAAYC,iBAAkBC,iBAAkBC,6BAEtE,qBACEC,4BAA+B,0CAiBjC,MAAMC,kBAAoBH,iBAAiBE,wBAAyB,2BAA4B,CACrGE,MAAO,iBACPC,YAAa,KACbC,YAAa,QACbC,OAAQ,cAMH,MAAMC,oCAAuCP,yBAAyB,aAAcJ,sBACpF,MAAMY,iCAAoCR,yBAAyB,aAAcH,mBACjF,MAAMY,kBAAoBd,kBAC1B,MAAMe,0CAA6CV,yBAAyB,aAAcF,iBAAiB,SAAU,EAAG,6CACxH,MAAMa,sCAAyCX,yBAAyB,aAAcF,iBAAiB,QAAS,EAAG,yCACnH,MAAMc,yCAA4CZ,yBAAyB,aAAcF,iBAAiB,QAAS,EAAG,4CACtH,MAAMe,qCAAwCb,yBAAyB,aAAcF,iBAAiB,OAAQ,EAAG","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/temporal/temporal-provider.ts"],"mappings":"AAAA,OACE,SACA,SACA,gBACA,EACA,OACA,YAMK,MAWP,MAAM,mBAAqB,OAAO,iBAAiB,EAE5C,MAAM,iBAAmB,gBAAgB,CAC9C,KAAM,0BACN,aAAc,MACd,MAAO,CACL,cAAe,CAAE,KAAM,OAA+B,QAAS,MAAS,GAE1E,MAAO,OACP,MAAM,MAAO,CAAE,KAAK,EAAE,CACpB,MAAM,OAAS,OAAoC,mBAAoB,MAAS,EAChF,MAAM,sBAAwB,qBAAoB,EAClD,MAAM,cAAgB,SACpB,IAAM,MAAM,eAAiB,QAAQ,cAAc,OAAS,qBAAqB,EAEnF,QAAyB,mBAAoB,CAAE,aAAa,CAAE,EAC9D,MAAO,IAAkB,EAAE,SAAuB,KAAM,MAAM,SAAS,IAAG,GAAM,CAAA,CAAE,CACpF,EACD,EAEK,SAAU,0BAAwB,CACtC,MAAM,QAAU,OAAoC,mBAAoB,MAAS,EACjF,MAAM,SAAW,qBAAoB,EACrC,OAAO,SAAS,eAAiB,SAAS,IAAM,QAAQ,CAC1D,CAEA,SAAS,qBAAqB,IAAY,IAAI,KAAM,CAClD,OAAO,OAAO,OAAO,CACnB,KAAM,IAAI,YAAW,EACrB,MAAO,IAAI,SAAQ,EAAK,EACxB,IAAK,IAAI,QAAO,EACjB,CACH","names":[],"file":"temporal-provider.js"}
|
|
@@ -10,5 +10,5 @@ export interface TimeFieldProps {
|
|
|
10
10
|
readonly label?: string;
|
|
11
11
|
readonly native?: boolean;
|
|
12
12
|
}
|
|
13
|
-
export declare const TimeField: import("vue").DefineComponent<import("
|
|
13
|
+
export declare const TimeField: import("vue").DefineComponent<import("../input/native-field.js").NativeFieldPublicProps<import("@sectile/dom/temporal/time-field").TimeValue, import("@sectile/temporal").TimeFieldPolicies>>;
|
|
14
14
|
export type TimeFieldValueChangeHandler = (value: TimeValue | null) => void;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{}from"vue";import{createTimeField,formatTimeValue}from"@sectile/dom/temporal/time-field";import{createNativeFieldComponent}from"../input/native-field.js";const TimeField=createNativeFieldComponent({name:"SectileTimeField",scope:"time-field",inputMode:"numeric",nativeInputType:"time",placeholder:"HH:mm",formatValue:formatTimeValue,valueType:Object,create:options=>createTimeField({...options,...options.policies===void 0?{}:{policies:options.policies}})});export{TimeField};
|
|
2
|
+
//# sourceMappingURL=time-field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/temporal/time-field.ts"],"mappings":"AAAA,YAA8B,MAC9B,OACE,gBACA,oBAGK,mCACP,OAAS,+BAAkE,2BAgBpE,MAAM,UAAY,2BAAyD,CAChF,KAAM,mBACN,MAAO,aACP,UAAW,UACX,gBAAiB,OACjB,YAAa,QACb,YAAa,gBACb,UAAW,OACX,OAAS,SAA0F,gBAAgB,CACjH,GAAG,QACH,GAAI,QAAQ,WAAa,OACrB,CAAA,EACA,CAAE,SAAU,QAAQ,QAAQ,EACjC,EACF","names":[],"file":"time-field.js"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type PropType, type SlotsType, type VNodeChild } from 'vue';
|
|
2
2
|
import { type TimeRangeFieldPolicies } from '@sectile/dom/temporal/time-range-field';
|
|
3
3
|
import type { TimeRange } from '@sectile/temporal/time-range-field';
|
|
4
|
-
import { type PrimitiveAs } from '
|
|
4
|
+
import { type PrimitiveAs } from '../primitive.js';
|
|
5
5
|
export interface TimeRangeFieldRootProps {
|
|
6
6
|
readonly modelValue?: TimeRange | null;
|
|
7
7
|
readonly defaultValue?: TimeRange | null;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{computed,defineComponent,h,inject,mergeProps,onBeforeUnmount,onMounted,provide,shallowRef,watch}from"vue";import{createTimeRangeField,tryCreateTimeRangeFieldState}from"@sectile/dom/temporal/time-range-field";import{hiddenInputSubmissionCapabilities,useCompositeFormControl}from"../form/control.js";import{Primitive}from"../primitive.js";import{useControlledStateInvariant}from"../internal/controlled-state.js";import{useNextTickTask}from"../internal/scheduled-task.js";import{captureNativeTextState}from"../input/native-text-state.js";const contextKey=Symbol("SectileTimeRangeField");const TimeRangeFieldRoot=defineComponent({name:"SectileTimeRangeFieldRoot",inheritAttrs:false,props:{modelValue:{type:Object,default:void 0},defaultValue:{type:Object,default:null},policies:{type:Object,default:void 0},disabled:{type:Boolean,default:false},readonly:{type:Boolean,default:false},required:{type:Boolean,default:false},startLabel:{type:String,default:void 0},endLabel:{type:String,default:void 0},as:{type:[String,Object,Function],default:"div"},asChild:{type:Boolean,default:false}},emits:{"update:modelValue":_value=>true},slots:Object,setup(props,{attrs,emit,slots}){const controlled=useControlledStateInvariant("TimeRangeFieldRoot","modelValue",()=>props.modelValue);const initial=tryCreateTimeRangeFieldState({value:controlled?props.modelValue:props.defaultValue});if(!initial.ok)throw new TypeError(initial.error.message);const snapshot=shallowRef(initial.value);const startInput=shallowRef(null);const endInput=shallowRef(null);const root=shallowRef(null);let connection=null;const participation=useCompositeFormControl({root,focusTarget:startInput,submissions:()=>[{element:startInput,relativeName:"start",capabilities:hiddenInputSubmissionCapabilities},{element:endInput,relativeName:"end",capabilities:hiddenInputSubmissionCapabilities}]});const refresh=()=>{if(connection!==null)snapshot.value=connection.getSnapshot().state};const mount=(preserveNative=false)=>{if(startInput.value===null||endInput.value===null)return;const startState=preserveNative&&connection!==null?captureNativeTextState(startInput.value,snapshot.value.start.inputState.snapshot.text):void 0;const endState=preserveNative&&connection!==null?captureNativeTextState(endInput.value,snapshot.value.end.inputState.snapshot.text):void 0;connection?.disconnect();connection=createTimeRangeField({startInput:startInput.value,endInput:endInput.value,...controlled?{value:props.modelValue}:{defaultValue:snapshot.value.value},...startState===void 0?{}:{defaultStartInputState:startState},...endState===void 0?{}:{defaultEndInputState:endState},...props.policies===void 0?{}:{policies:props.policies},disabled:props.disabled,readOnly:props.readonly,required:props.required,...props.startLabel===void 0?{}:{startLabel:props.startLabel},...props.endLabel===void 0?{}:{endLabel:props.endLabel},onValueChange:value=>emit("update:modelValue",value),onUpdate:refresh});refresh()};const mountTask=useNextTickTask(()=>mount(true));const composingInputs=new Set;let mounted=false;let reconnectPending=false;let reconnectTimer=null;const requestMount=()=>{if(composingInputs.size>0){reconnectPending=true;return}mountTask.schedule()};const setInputComposing=(endpoint,composing)=>{if(composing)composingInputs.add(endpoint);else composingInputs.delete(endpoint);if(composingInputs.size>0||!reconnectPending||reconnectTimer!==null)return;reconnectTimer=setTimeout(()=>{reconnectTimer=null;if(!mounted||composingInputs.size>0)return;reconnectPending=false;mountTask.schedule()},0)};onMounted(()=>{mounted=true;mount()});onBeforeUnmount(()=>{mounted=false;if(reconnectTimer!==null)clearTimeout(reconnectTimer);reconnectTimer=null;reconnectPending=false;composingInputs.clear();mountTask.cancel();connection?.disconnect();connection=null});watch(()=>props.modelValue,value=>{if(!controlled||value===void 0||connection===null)return;const result=connection.syncControlledValues({value});if(!result.ok)throw new TypeError(result.error.message);snapshot.value=result.value.state});watch([()=>props.policies,()=>props.disabled,()=>props.readonly,()=>props.required,()=>props.startLabel,()=>props.endLabel],requestMount);const slotProps=computed(()=>Object.freeze({value:snapshot.value.value,startText:snapshot.value.start.inputState.snapshot.text,endText:snapshot.value.end.inputState.snapshot.text,active:snapshot.value.active,disabled:props.disabled,readonly:props.readonly}));provide(contextKey,{slotProps,startInput,endInput,setInputComposing});return()=>h(Primitive,mergeProps(participation.controlProps.value,attrs,{as:props.as,asChild:props.asChild,elementRef:element=>{root.value=element},role:"group","data-scope":"time-range-field","data-part":"root","data-disabled":props.disabled?"":void 0,"data-readonly":props.readonly?"":void 0}),{default:()=>slots["default"]?.(slotProps.value)})}});const TimeRangeFieldStartInput=createEndpointInput("start","SectileTimeRangeFieldStartInput");const TimeRangeFieldEndInput=createEndpointInput("end","SectileTimeRangeFieldEndInput");function createEndpointInput(endpoint,name){return defineComponent({name,inheritAttrs:false,setup(_props,{attrs}){const context=useContext(name);return()=>h("input",mergeProps(attrs,{ref:element=>{context[endpoint==="start"?"startInput":"endInput"].value=element},type:"text",inputmode:"numeric",placeholder:"HH:mm",value:endpoint==="start"?context.slotProps.value.startText:context.slotProps.value.endText,disabled:context.slotProps.value.disabled,readonly:context.slotProps.value.readonly,onCompositionstart:()=>context.setInputComposing(endpoint,true),onCompositionend:()=>context.setInputComposing(endpoint,false),"aria-disabled":String(context.slotProps.value.disabled),"aria-readonly":String(context.slotProps.value.readonly),"data-scope":"time-range-field","data-part":`${endpoint}-input`,"data-active":context.slotProps.value.active===endpoint?"":void 0}))}})}function useContext(part){const context=inject(contextKey);if(context===void 0)throw new TypeError(`${part} must be used inside TimeRangeFieldRoot.`);return context}export{TimeRangeFieldEndInput,TimeRangeFieldRoot,TimeRangeFieldStartInput};
|
|
2
|
+
//# sourceMappingURL=time-range-field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/temporal/time-range-field.ts"],"mappings":"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","names":[],"file":"time-range-field.js"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DatePickerOptions } from '@sectile/dom/temporal/date-picker';
|
|
2
2
|
import type { DateValue } from '@sectile/dom/temporal/date-field';
|
|
3
|
-
import { type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps, type PickerYearCellSlotProps } from './
|
|
3
|
+
import { type PickerPartProps, type PickerPortalProps, type PickerPositionProps, type PickerRootSlotProps, type PickerYearCellSlotProps } from './picker.js';
|
|
4
4
|
export interface YearPickerRootProps extends PickerPartProps, PickerPositionProps {
|
|
5
5
|
readonly modelValue?: DateValue | null;
|
|
6
6
|
readonly defaultValue?: DateValue | null;
|
|
@@ -16,13 +16,13 @@ export interface YearPickerRootProps extends PickerPartProps, PickerPositionProp
|
|
|
16
16
|
readonly label?: string;
|
|
17
17
|
readonly policies?: DatePickerOptions['policies'];
|
|
18
18
|
}
|
|
19
|
-
export declare const YearPickerRoot: import("./
|
|
19
|
+
export declare const YearPickerRoot: import("./picker.js").PickerRootComponent<"date">;
|
|
20
20
|
export type YearPickerRootSlotProps = PickerRootSlotProps<DateValue | null>;
|
|
21
21
|
export type YearPickerValueChangeHandler = NonNullable<InstanceType<typeof YearPickerRoot>['$props']['onUpdate:modelValue']>;
|
|
22
22
|
export type YearPickerOpenChangeHandler = NonNullable<InstanceType<typeof YearPickerRoot>['$props']['onUpdate:open']>;
|
|
23
23
|
export type YearPickerHighlightedValueChangeHandler = NonNullable<InstanceType<typeof YearPickerRoot>['$props']['onUpdate:highlightedValue']>;
|
|
24
|
-
export declare const YearPickerTrigger: import("./
|
|
25
|
-
export declare const YearPickerAnchor: import("./
|
|
24
|
+
export declare const YearPickerTrigger: import("./picker.js").PickerRootPartComponent<"date">;
|
|
25
|
+
export declare const YearPickerAnchor: import("./picker.js").PickerRootPartComponent<"date">;
|
|
26
26
|
export declare const YearPickerPortal: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
27
27
|
to: {
|
|
28
28
|
type: import("vue").PropType<string | HTMLElement>;
|
|
@@ -54,15 +54,15 @@ export declare const YearPickerPortal: import("vue").DefineComponent<import("vue
|
|
|
54
54
|
disabled: boolean;
|
|
55
55
|
defer: boolean;
|
|
56
56
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
57
|
-
export declare const YearPickerContent: import("./
|
|
58
|
-
export declare const YearPickerGrid: import("./
|
|
57
|
+
export declare const YearPickerContent: import("./picker.js").PickerRootPartComponent<"date">;
|
|
58
|
+
export declare const YearPickerGrid: import("./picker.js").PickerRootPartComponent<"date">;
|
|
59
59
|
export declare const YearPickerCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
60
60
|
value: {
|
|
61
|
-
type: import("vue").PropType<import("./
|
|
61
|
+
type: import("vue").PropType<import("./picker.js").PickerYearValue>;
|
|
62
62
|
required: true;
|
|
63
63
|
};
|
|
64
64
|
as: {
|
|
65
|
-
type: import("vue").PropType<import("
|
|
65
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
66
66
|
default: string;
|
|
67
67
|
};
|
|
68
68
|
asChild: {
|
|
@@ -71,11 +71,11 @@ export declare const YearPickerCell: import("vue").DefineComponent<import("vue")
|
|
|
71
71
|
};
|
|
72
72
|
}>, () => import("vue").VNodeChild, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
73
73
|
value: {
|
|
74
|
-
type: import("vue").PropType<import("./
|
|
74
|
+
type: import("vue").PropType<import("./picker.js").PickerYearValue>;
|
|
75
75
|
required: true;
|
|
76
76
|
};
|
|
77
77
|
as: {
|
|
78
|
-
type: import("vue").PropType<import("
|
|
78
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
79
79
|
default: string;
|
|
80
80
|
};
|
|
81
81
|
asChild: {
|
|
@@ -83,7 +83,7 @@ export declare const YearPickerCell: import("vue").DefineComponent<import("vue")
|
|
|
83
83
|
default: boolean;
|
|
84
84
|
};
|
|
85
85
|
}>> & Readonly<{}>, {
|
|
86
|
-
as: import("
|
|
86
|
+
as: import("../primitive.js").PrimitiveAs;
|
|
87
87
|
asChild: boolean;
|
|
88
88
|
}, import("vue").SlotsType<{
|
|
89
89
|
default: (props: PickerYearCellSlotProps) => import("vue").VNodeChild;
|
|
@@ -98,7 +98,7 @@ export declare const YearPickerInput: import("vue").DefineComponent<import("vue"
|
|
|
98
98
|
default: undefined;
|
|
99
99
|
};
|
|
100
100
|
as: {
|
|
101
|
-
type: import("vue").PropType<import("
|
|
101
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
102
102
|
default: string;
|
|
103
103
|
};
|
|
104
104
|
asChild: {
|
|
@@ -115,7 +115,7 @@ export declare const YearPickerInput: import("vue").DefineComponent<import("vue"
|
|
|
115
115
|
default: undefined;
|
|
116
116
|
};
|
|
117
117
|
as: {
|
|
118
|
-
type: import("vue").PropType<import("
|
|
118
|
+
type: import("vue").PropType<import("../primitive.js").PrimitiveAs>;
|
|
119
119
|
default: string;
|
|
120
120
|
};
|
|
121
121
|
asChild: {
|
|
@@ -125,10 +125,10 @@ export declare const YearPickerInput: import("vue").DefineComponent<import("vue"
|
|
|
125
125
|
}>> & Readonly<{}>, {
|
|
126
126
|
name: string;
|
|
127
127
|
form: string;
|
|
128
|
-
as: import("
|
|
128
|
+
as: import("../primitive.js").PrimitiveAs;
|
|
129
129
|
asChild: boolean;
|
|
130
130
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
131
|
-
export declare const YearPickerPreviousPage: import("./
|
|
132
|
-
export declare const YearPickerNextPage: import("./
|
|
131
|
+
export declare const YearPickerPreviousPage: import("./picker.js").PickerRootPartComponent<"date">;
|
|
132
|
+
export declare const YearPickerNextPage: import("./picker.js").PickerRootPartComponent<"date">;
|
|
133
133
|
export type { YearPickerValue } from '@sectile/temporal/year-picker';
|
|
134
134
|
export type { PickerPartProps as YearPickerPartProps, PickerPortalProps as YearPickerPortalProps, PickerYearCellSlotProps as YearPickerCellSlotProps, };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{PickerAnchor,PickerContent,PickerGrid,PickerPortal,PickerTrigger,createPickerInput,createPickerMove,createPickerYearCell,specializePickerRootPart,createPickerRoot}from'./picker.js';import{yearPickerCapability}from'./capabilities/year-picker.js';export const YearPickerRoot=createPickerRoot(yearPickerCapability,'SectileYearPickerRoot',{scope:'year-picker',granularity:'year',defaultView:'year'});export const YearPickerTrigger=specializePickerRootPart('date',PickerTrigger);export const YearPickerAnchor=specializePickerRootPart('date',PickerAnchor);export const YearPickerPortal=PickerPortal;export const YearPickerContent=/* @__PURE__ */specializePickerRootPart('date',PickerContent);export const YearPickerGrid=specializePickerRootPart('date',PickerGrid);export const YearPickerCell=createPickerYearCell('cell','SectileYearPickerCell');export const YearPickerInput=createPickerInput('input','SectileYearPickerInput');export const YearPickerPreviousPage=specializePickerRootPart('date',createPickerMove('year',-1,'SectileYearPickerPreviousPage','previous-page'));export const YearPickerNextPage=specializePickerRootPart('date',createPickerMove('year',1,'SectileYearPickerNextPage','next-page'));
|
|
2
|
+
//# sourceMappingURL=year-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"year-picker.js","names":["PickerAnchor","PickerContent","PickerGrid","PickerPortal","PickerTrigger","createPickerInput","createPickerMove","createPickerYearCell","specializePickerRootPart","createPickerRoot","yearPickerCapability","YearPickerRoot","scope","granularity","defaultView","YearPickerTrigger","YearPickerAnchor","YearPickerPortal","YearPickerContent","YearPickerGrid","YearPickerCell","YearPickerInput","YearPickerPreviousPage","YearPickerNextPage"],"sources":["../../src/temporal/year-picker.ts"],"mappings":"OAGEA,aAAcC,cAAeC,WAAYC,aAAcC,cAAeC,kBAAmBC,iBAAkBC,qBAAsBC,yBACjIC,qBACK,qBACEC,yBAA4B,uCAiB9B,MAAMC,eAAiBF,iBAAiBC,qBAAsB,wBAAyB,CAAEE,MAAO,cAAeC,YAAa,OAAQC,YAAa,gBAKjJ,MAAMC,kBAAoBP,yBAAyB,OAAQJ,sBAC3D,MAAMY,iBAAmBR,yBAAyB,OAAQR,qBAC1D,MAAMiB,iBAAmBd,oBACzB,MAAMe,iCAAoCV,yBAAyB,OAAQP,sBAC3E,MAAMkB,eAAiBX,yBAAyB,OAAQN,mBACxD,MAAMkB,eAAiBb,qBAAqB,OAAQ,gCACpD,MAAMc,gBAAkBhB,kBAAkB,QAAS,iCACnD,MAAMiB,uBAAyBd,yBAAyB,OAAQF,iBAAiB,QAAS,EAAG,gCAAiC,yBAC9H,MAAMiB,mBAAqBf,yBAAyB,OAAQF,iBAAiB,OAAQ,EAAG,4BAA6B","ignoreList":[]}
|