@vjdesigns/vjdesigns-ui 2.3.0 → 2.5.0
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/LICENSE +15 -0
- package/README.md +45 -1
- package/dist/ai/llms-full.txt +199 -107
- package/dist/ai/registry.json +217 -77
- package/dist/components/data-display/Accordion/Accordion.cjs.js +1 -1
- package/dist/components/data-display/Accordion/Accordion.mjs +22 -22
- package/dist/components/data-display/Accordion/Accordion.module.css.mjs +1 -2
- package/dist/components/data-display/Avatar/Avatar.cjs.js +1 -1
- package/dist/components/data-display/Avatar/Avatar.mjs +92 -92
- package/dist/components/data-display/Avatar/Avatar.module.css.mjs +1 -2
- package/dist/components/data-display/Badge/Badge.cjs.js +1 -1
- package/dist/components/data-display/Badge/Badge.d.ts +7 -2
- package/dist/components/data-display/Badge/Badge.mjs +4 -3
- package/dist/components/data-display/Badge/Badge.module.css.cjs.js +1 -1
- package/dist/components/data-display/Badge/Badge.module.css.mjs +34 -34
- package/dist/components/data-display/Card/Card.cjs.js +1 -1
- package/dist/components/data-display/Card/Card.mjs +2 -2
- package/dist/components/data-display/Card/Card.module.css.mjs +1 -2
- package/dist/components/data-display/Carousel/Carousel.cjs.js +1 -1
- package/dist/components/data-display/Carousel/Carousel.mjs +42 -42
- package/dist/components/data-display/Carousel/Carousel.module.css.mjs +1 -2
- package/dist/components/data-display/Chat/Chat.cjs.js +1 -1
- package/dist/components/data-display/Chat/Chat.mjs +114 -118
- package/dist/components/data-display/Chat/Chat.module.css.mjs +1 -2
- package/dist/components/data-display/Chat/streams.mjs +1 -2
- package/dist/components/data-display/Chip/Chip.cjs.js +1 -1
- package/dist/components/data-display/Chip/Chip.mjs +50 -54
- package/dist/components/data-display/Chip/Chip.module.css.mjs +1 -2
- package/dist/components/data-display/CodeBlock/CodeBlock.cjs.js +4 -4
- package/dist/components/data-display/CodeBlock/CodeBlock.mjs +113 -113
- package/dist/components/data-display/CodeBlock/CodeBlock.module.css.mjs +1 -2
- package/dist/components/data-display/CodeBlock/tokenize.mjs +1 -2
- package/dist/components/data-display/DataGrid/DataGrid.cjs.js +1 -1
- package/dist/components/data-display/DataGrid/DataGrid.d.ts +14 -3
- package/dist/components/data-display/DataGrid/DataGrid.mjs +352 -267
- package/dist/components/data-display/DataGrid/DataGrid.module.css.cjs.js +1 -1
- package/dist/components/data-display/DataGrid/DataGrid.module.css.mjs +6 -5
- package/dist/components/data-display/DataGrid/dataGridUtils.cjs.js +1 -1
- package/dist/components/data-display/DataGrid/dataGridUtils.d.ts +18 -0
- package/dist/components/data-display/DataGrid/dataGridUtils.mjs +100 -32
- package/dist/components/data-display/EmptyState/EmptyState.cjs.js +1 -1
- package/dist/components/data-display/EmptyState/EmptyState.mjs +53 -53
- package/dist/components/data-display/EmptyState/EmptyState.module.css.mjs +1 -2
- package/dist/components/data-display/Image/Image.cjs.js +1 -1
- package/dist/components/data-display/Image/Image.mjs +6 -6
- package/dist/components/data-display/Image/Image.module.css.mjs +1 -2
- package/dist/components/data-display/List/List.cjs.js +1 -1
- package/dist/components/data-display/List/List.mjs +68 -68
- package/dist/components/data-display/List/List.module.css.mjs +1 -2
- package/dist/components/data-display/Stat/Stat.cjs.js +1 -1
- package/dist/components/data-display/Stat/Stat.mjs +112 -112
- package/dist/components/data-display/Stat/Stat.module.css.mjs +1 -2
- package/dist/components/data-display/Table/Table.cjs.js +1 -1
- package/dist/components/data-display/Table/Table.mjs +187 -183
- package/dist/components/data-display/Table/Table.module.css.mjs +1 -2
- package/dist/components/data-display/Table/useTable.cjs.js +1 -1
- package/dist/components/data-display/Table/useTable.mjs +2 -2
- package/dist/components/data-display/Timeline/Timeline.cjs.js +1 -1
- package/dist/components/data-display/Timeline/Timeline.mjs +64 -64
- package/dist/components/data-display/Timeline/Timeline.module.css.mjs +1 -2
- package/dist/components/data-display/TreeView/TreeView.cjs.js +1 -1
- package/dist/components/data-display/TreeView/TreeView.mjs +107 -119
- package/dist/components/data-display/TreeView/TreeView.module.css.mjs +1 -2
- package/dist/components/data-display/TreeView/treeUtils.mjs +1 -2
- package/dist/components/data-display/VirtualList/VirtualList.cjs.js +1 -1
- package/dist/components/data-display/VirtualList/VirtualList.mjs +2 -2
- package/dist/components/data-display/VirtualList/VirtualList.module.css.mjs +1 -2
- package/dist/components/feedback/Alert/Alert.cjs.js +1 -1
- package/dist/components/feedback/Alert/Alert.mjs +56 -56
- package/dist/components/feedback/Alert/Alert.module.css.mjs +1 -2
- package/dist/components/feedback/Banner/Banner.cjs.js +1 -1
- package/dist/components/feedback/Banner/Banner.mjs +48 -48
- package/dist/components/feedback/Banner/Banner.module.css.mjs +1 -2
- package/dist/components/feedback/ErrorSummary/ErrorSummary.cjs.js +1 -1
- package/dist/components/feedback/ErrorSummary/ErrorSummary.mjs +10 -10
- package/dist/components/feedback/ErrorSummary/ErrorSummary.module.css.mjs +1 -2
- package/dist/components/feedback/Progress/Progress.cjs.js +1 -1
- package/dist/components/feedback/Progress/Progress.mjs +2 -2
- package/dist/components/feedback/Progress/Progress.module.css.mjs +1 -2
- package/dist/components/feedback/Skeleton/Skeleton.cjs.js +1 -1
- package/dist/components/feedback/Skeleton/Skeleton.mjs +73 -73
- package/dist/components/feedback/Skeleton/Skeleton.module.css.mjs +1 -2
- package/dist/components/feedback/Spinner/Spinner.cjs.js +1 -1
- package/dist/components/feedback/Spinner/Spinner.mjs +29 -29
- package/dist/components/feedback/Spinner/Spinner.module.css.mjs +1 -2
- package/dist/components/feedback/Toast/Toast.cjs.js +1 -1
- package/dist/components/feedback/Toast/Toast.mjs +42 -42
- package/dist/components/feedback/Toast/Toast.module.css.mjs +1 -2
- package/dist/components/feedback/Toast/ToastItem.cjs.js +1 -1
- package/dist/components/feedback/Toast/ToastItem.mjs +10 -10
- package/dist/components/feedback/Toast/ToastProvider.cjs.js +1 -1
- package/dist/components/feedback/Toast/ToastProvider.mjs +11 -11
- package/dist/components/feedback/Toast/ToastViewport.cjs.js +1 -1
- package/dist/components/feedback/Toast/ToastViewport.mjs +30 -30
- package/dist/components/feedback/Toast/toastStore.mjs +1 -2
- package/dist/components/feedback/Toast/toastTiming.cjs.js +1 -1
- package/dist/components/feedback/Toast/toastTiming.mjs +2 -2
- package/dist/components/feedback/Toast/useToast.cjs.js +1 -1
- package/dist/components/feedback/Toast/useToast.mjs +2 -2
- package/dist/components/feedback/Toast/useToastAnnouncer.cjs.js +1 -1
- package/dist/components/feedback/Toast/useToastAnnouncer.mjs +2 -2
- package/dist/components/forms/CheckBox/CheckBox.cjs.js +1 -1
- package/dist/components/forms/CheckBox/CheckBox.mjs +2 -2
- package/dist/components/forms/CheckBox/CheckBox.module.css.mjs +1 -2
- package/dist/components/forms/ColorPicker/ColorInput.cjs.js +1 -1
- package/dist/components/forms/ColorPicker/ColorInput.mjs +43 -43
- package/dist/components/forms/ColorPicker/ColorPicker.cjs.js +1 -1
- package/dist/components/forms/ColorPicker/ColorPicker.mjs +153 -153
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.mjs +1 -2
- package/dist/components/forms/ColorPicker/colorUtils.mjs +1 -2
- package/dist/components/forms/Combobox/Combobox.cjs.js +1 -1
- package/dist/components/forms/Combobox/Combobox.mjs +200 -213
- package/dist/components/forms/Combobox/Combobox.module.css.mjs +1 -2
- package/dist/components/forms/Combobox/ComboboxPopup.cjs.js +1 -1
- package/dist/components/forms/Combobox/ComboboxPopup.mjs +164 -121
- package/dist/components/forms/Combobox/comboboxUtils.cjs.js +1 -1
- package/dist/components/forms/Combobox/comboboxUtils.d.ts +4 -1
- package/dist/components/forms/Combobox/comboboxUtils.mjs +21 -20
- package/dist/components/forms/DatePicker/Calendar.cjs.js +1 -1
- package/dist/components/forms/DatePicker/Calendar.mjs +60 -66
- package/dist/components/forms/DatePicker/Calendar.module.css.mjs +1 -2
- package/dist/components/forms/DatePicker/DatePicker.cjs.js +1 -1
- package/dist/components/forms/DatePicker/DatePicker.mjs +72 -74
- package/dist/components/forms/DatePicker/DatePicker.module.css.mjs +1 -2
- package/dist/components/forms/DatePicker/DateRangePicker.cjs.js +1 -1
- package/dist/components/forms/DatePicker/DateRangePicker.mjs +117 -117
- package/dist/components/forms/DatePicker/DateRangePicker.module.css.mjs +1 -2
- package/dist/components/forms/DatePicker/dateUtils.mjs +1 -2
- package/dist/components/forms/DateTimePicker/DateTimePicker.cjs.js +1 -1
- package/dist/components/forms/DateTimePicker/DateTimePicker.mjs +19 -19
- package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.mjs +1 -2
- package/dist/components/forms/Field/Field.cjs.js +1 -1
- package/dist/components/forms/Field/Field.mjs +14 -14
- package/dist/components/forms/Field/Field.module.css.mjs +1 -2
- package/dist/components/forms/Field/FieldContext.cjs.js +1 -1
- package/dist/components/forms/Field/FieldContext.mjs +2 -2
- package/dist/components/forms/FileUpload/FileUpload.cjs.js +1 -1
- package/dist/components/forms/FileUpload/FileUpload.mjs +250 -255
- package/dist/components/forms/FileUpload/FileUpload.module.css.mjs +1 -2
- package/dist/components/forms/Input/Input.cjs.js +1 -1
- package/dist/components/forms/Input/Input.mjs +35 -35
- package/dist/components/forms/Input/Input.module.css.mjs +1 -2
- package/dist/components/forms/NumberInput/NumberInput.cjs.js +1 -1
- package/dist/components/forms/NumberInput/NumberInput.mjs +137 -142
- package/dist/components/forms/NumberInput/NumberInput.module.css.mjs +1 -2
- package/dist/components/forms/PasswordInput/PasswordInput.cjs.js +1 -1
- package/dist/components/forms/PasswordInput/PasswordInput.mjs +142 -142
- package/dist/components/forms/PasswordInput/PasswordInput.module.css.mjs +1 -2
- package/dist/components/forms/PinInput/PinInput.cjs.js +1 -1
- package/dist/components/forms/PinInput/PinInput.mjs +12 -12
- package/dist/components/forms/PinInput/PinInput.module.css.mjs +1 -2
- package/dist/components/forms/Radio/Radio.cjs.js +1 -1
- package/dist/components/forms/Radio/Radio.mjs +2 -2
- package/dist/components/forms/Radio/Radio.module.css.mjs +1 -2
- package/dist/components/forms/Rating/Rating.cjs.js +1 -1
- package/dist/components/forms/Rating/Rating.mjs +110 -109
- package/dist/components/forms/Rating/Rating.module.css.mjs +1 -2
- package/dist/components/forms/SearchInput/SearchInput.cjs.js +1 -1
- package/dist/components/forms/SearchInput/SearchInput.mjs +118 -126
- package/dist/components/forms/SearchInput/SearchInput.module.css.mjs +1 -2
- package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.js +1 -1
- package/dist/components/forms/SegmentedControl/SegmentedControl.mjs +46 -43
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.mjs +1 -2
- package/dist/components/forms/Select/Select.cjs.js +1 -1
- package/dist/components/forms/Select/Select.mjs +2 -2
- package/dist/components/forms/Select/Select.module.css.mjs +1 -2
- package/dist/components/forms/Slider/Slider.cjs.js +1 -1
- package/dist/components/forms/Slider/Slider.mjs +2 -2
- package/dist/components/forms/Slider/Slider.module.css.mjs +1 -2
- package/dist/components/forms/Switch/Switch.cjs.js +1 -1
- package/dist/components/forms/Switch/Switch.mjs +39 -39
- package/dist/components/forms/Switch/Switch.module.css.mjs +1 -2
- package/dist/components/forms/TagInput/TagInput.cjs.js +1 -1
- package/dist/components/forms/TagInput/TagInput.mjs +197 -203
- package/dist/components/forms/TagInput/TagInput.module.css.mjs +1 -2
- package/dist/components/forms/Textarea/Textarea.cjs.js +1 -1
- package/dist/components/forms/Textarea/Textarea.mjs +59 -59
- package/dist/components/forms/Textarea/Textarea.module.css.mjs +1 -2
- package/dist/components/forms/TimePicker/TimePicker.cjs.js +1 -1
- package/dist/components/forms/TimePicker/TimePicker.mjs +14 -16
- package/dist/components/forms/TimePicker/TimePicker.module.css.mjs +1 -2
- package/dist/components/forms/TimePicker/timeUtils.cjs.js +1 -1
- package/dist/components/forms/TimePicker/timeUtils.d.ts +4 -1
- package/dist/components/forms/TimePicker/timeUtils.mjs +43 -38
- package/dist/components/forms/ToggleGroup/ToggleGroup.cjs.js +1 -1
- package/dist/components/forms/ToggleGroup/ToggleGroup.mjs +10 -10
- package/dist/components/forms/ToggleGroup/ToggleGroup.module.css.mjs +1 -2
- package/dist/components/layout/Box/Box.mjs +1 -2
- package/dist/components/layout/Box/Box.module.css.mjs +1 -2
- package/dist/components/layout/Container/Container.mjs +1 -2
- package/dist/components/layout/Container/Container.module.css.mjs +1 -2
- package/dist/components/layout/Divider/Divider.mjs +1 -2
- package/dist/components/layout/Divider/Divider.module.css.mjs +1 -2
- package/dist/components/layout/Flex/Flex.cjs.js +1 -1
- package/dist/components/layout/Flex/Flex.mjs +12 -13
- package/dist/components/layout/Flex/Flex.module.css.mjs +1 -2
- package/dist/components/layout/Grid/Grid.cjs.js +1 -1
- package/dist/components/layout/Grid/Grid.mjs +20 -21
- package/dist/components/layout/Grid/Grid.module.css.mjs +1 -2
- package/dist/components/layout/ResizablePanels/ResizablePanels.cjs.js +1 -1
- package/dist/components/layout/ResizablePanels/ResizablePanels.mjs +17 -17
- package/dist/components/layout/ResizablePanels/ResizablePanels.module.css.mjs +1 -2
- package/dist/components/layout/ScrollArea/ScrollArea.cjs.js +1 -1
- package/dist/components/layout/ScrollArea/ScrollArea.mjs +2 -2
- package/dist/components/layout/ScrollArea/ScrollArea.module.css.mjs +1 -2
- package/dist/components/layout/Stack/Stack.cjs.js +1 -1
- package/dist/components/layout/Stack/Stack.mjs +8 -9
- package/dist/components/layout/Stack/Stack.module.css.mjs +1 -2
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.cjs.js +1 -1
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.mjs +41 -41
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.module.css.mjs +1 -2
- package/dist/components/navigation/ContextMenu/ContextMenu.cjs.js +1 -1
- package/dist/components/navigation/ContextMenu/ContextMenu.mjs +48 -48
- package/dist/components/navigation/ContextMenu/ContextMenu.module.css.mjs +1 -2
- package/dist/components/navigation/Link/Link.cjs.js +1 -1
- package/dist/components/navigation/Link/Link.mjs +6 -7
- package/dist/components/navigation/Link/Link.module.css.mjs +1 -2
- package/dist/components/navigation/Menu/Menu.cjs.js +1 -1
- package/dist/components/navigation/Menu/Menu.mjs +11 -11
- package/dist/components/navigation/Menu/Menu.module.css.mjs +1 -2
- package/dist/components/navigation/Menu/MenuContent.cjs.js +1 -1
- package/dist/components/navigation/Menu/MenuContent.mjs +46 -46
- package/dist/components/navigation/Menu/MenuContext.cjs.js +1 -1
- package/dist/components/navigation/Menu/MenuContext.mjs +2 -2
- package/dist/components/navigation/Menu/MenuItem.cjs.js +1 -1
- package/dist/components/navigation/Menu/MenuItem.mjs +35 -39
- package/dist/components/navigation/Menu/MenuSub.cjs.js +1 -1
- package/dist/components/navigation/Menu/MenuSub.mjs +16 -20
- package/dist/components/navigation/Menu/useMenuRoot.cjs.js +1 -1
- package/dist/components/navigation/Menu/useMenuRoot.mjs +2 -2
- package/dist/components/navigation/Navbar/Navbar.cjs.js +1 -1
- package/dist/components/navigation/Navbar/Navbar.d.ts +65 -2
- package/dist/components/navigation/Navbar/Navbar.mjs +315 -175
- package/dist/components/navigation/Navbar/Navbar.module.css.cjs.js +1 -1
- package/dist/components/navigation/Navbar/Navbar.module.css.mjs +21 -13
- package/dist/components/navigation/Pagination/Pagination.cjs.js +1 -1
- package/dist/components/navigation/Pagination/Pagination.mjs +31 -35
- package/dist/components/navigation/Pagination/Pagination.module.css.mjs +1 -2
- package/dist/components/navigation/Sidebar/Sidebar.cjs.js +1 -1
- package/dist/components/navigation/Sidebar/Sidebar.mjs +52 -52
- package/dist/components/navigation/Sidebar/Sidebar.module.css.mjs +1 -2
- package/dist/components/navigation/Sidebar/SidebarContext.cjs.js +1 -1
- package/dist/components/navigation/Sidebar/SidebarContext.mjs +2 -2
- package/dist/components/navigation/Sidebar/SidebarParts.cjs.js +1 -1
- package/dist/components/navigation/Sidebar/SidebarParts.mjs +76 -80
- package/dist/components/navigation/SkipLink/SkipLink.cjs.js +1 -1
- package/dist/components/navigation/SkipLink/SkipLink.mjs +12 -12
- package/dist/components/navigation/SkipLink/SkipLink.module.css.mjs +1 -2
- package/dist/components/navigation/Stepper/Stepper.cjs.js +1 -1
- package/dist/components/navigation/Stepper/Stepper.mjs +46 -46
- package/dist/components/navigation/Stepper/Stepper.module.css.mjs +1 -2
- package/dist/components/navigation/Tabs/Tabs.cjs.js +1 -1
- package/dist/components/navigation/Tabs/Tabs.mjs +2 -2
- package/dist/components/navigation/Tabs/Tabs.module.css.mjs +1 -2
- package/dist/components/overlays/CommandPalette/CommandPalette.cjs.js +1 -1
- package/dist/components/overlays/CommandPalette/CommandPalette.mjs +206 -206
- package/dist/components/overlays/CommandPalette/CommandPalette.module.css.mjs +1 -2
- package/dist/components/overlays/CommandPalette/CommandPaletteContext.cjs.js +1 -1
- package/dist/components/overlays/CommandPalette/CommandPaletteContext.mjs +2 -2
- package/dist/components/overlays/CommandPalette/CommandPaletteParts.cjs.js +1 -1
- package/dist/components/overlays/CommandPalette/CommandPaletteParts.mjs +104 -104
- package/dist/components/overlays/CommandPalette/commandPaletteUtils.cjs.js +1 -1
- package/dist/components/overlays/CommandPalette/commandPaletteUtils.mjs +62 -60
- package/dist/components/overlays/Drawer/Drawer.cjs.js +1 -1
- package/dist/components/overlays/Drawer/Drawer.mjs +31 -31
- package/dist/components/overlays/Drawer/Drawer.module.css.mjs +1 -2
- package/dist/components/overlays/Drawer/DrawerContent.cjs.js +1 -1
- package/dist/components/overlays/Drawer/DrawerContent.mjs +99 -99
- package/dist/components/overlays/Drawer/DrawerContext.cjs.js +1 -1
- package/dist/components/overlays/Drawer/DrawerContext.mjs +2 -2
- package/dist/components/overlays/Drawer/DrawerParts.cjs.js +1 -1
- package/dist/components/overlays/Drawer/DrawerParts.mjs +18 -18
- package/dist/components/overlays/Drawer/internal.mjs +1 -2
- package/dist/components/overlays/Drawer/useDragToClose.cjs.js +1 -1
- package/dist/components/overlays/Drawer/useDragToClose.mjs +2 -2
- package/dist/components/overlays/HoverCard/HoverCard.cjs.js +1 -1
- package/dist/components/overlays/HoverCard/HoverCard.mjs +31 -31
- package/dist/components/overlays/HoverCard/HoverCard.module.css.mjs +1 -2
- package/dist/components/overlays/Modal/ConfirmModal.cjs.js +1 -1
- package/dist/components/overlays/Modal/ConfirmModal.mjs +21 -23
- package/dist/components/overlays/Modal/Modal.cjs.js +1 -1
- package/dist/components/overlays/Modal/Modal.mjs +47 -47
- package/dist/components/overlays/Modal/Modal.module.css.mjs +1 -2
- package/dist/components/overlays/Modal/ModalContent.cjs.js +1 -1
- package/dist/components/overlays/Modal/ModalContent.mjs +24 -24
- package/dist/components/overlays/Modal/ModalContext.cjs.js +1 -1
- package/dist/components/overlays/Modal/ModalContext.mjs +2 -2
- package/dist/components/overlays/Modal/useScrollRegion.cjs.js +1 -1
- package/dist/components/overlays/Modal/useScrollRegion.mjs +2 -2
- package/dist/components/overlays/Popover/Popover.cjs.js +1 -1
- package/dist/components/overlays/Popover/Popover.mjs +40 -40
- package/dist/components/overlays/Popover/Popover.module.css.mjs +1 -2
- package/dist/components/overlays/Popover/PopoverContent.cjs.js +1 -1
- package/dist/components/overlays/Popover/PopoverContent.mjs +39 -39
- package/dist/components/overlays/Popover/PopoverContext.cjs.js +1 -1
- package/dist/components/overlays/Popover/PopoverContext.mjs +2 -2
- package/dist/components/overlays/Tooltip/Tooltip.cjs.js +1 -1
- package/dist/components/overlays/Tooltip/Tooltip.mjs +100 -95
- package/dist/components/overlays/Tooltip/Tooltip.module.css.mjs +1 -2
- package/dist/components/primitives/Button/Button.cjs.js +1 -1
- package/dist/components/primitives/Button/Button.mjs +59 -63
- package/dist/components/primitives/Button/Button.module.css.mjs +1 -2
- package/dist/components/primitives/Icon/Icon.cjs.js +1 -1
- package/dist/components/primitives/Icon/Icon.mjs +5 -6
- package/dist/components/primitives/Icon/Icon.module.css.mjs +1 -2
- package/dist/components/primitives/Icon/IconSvg.mjs +1 -2
- package/dist/components/primitives/Icon/icons.mjs +1 -2
- package/dist/components/primitives/Kbd/Kbd.cjs.js +1 -1
- package/dist/components/primitives/Kbd/Kbd.mjs +30 -30
- package/dist/components/primitives/Kbd/Kbd.module.css.mjs +1 -2
- package/dist/components/primitives/Typography/Typography.mjs +1 -2
- package/dist/components/primitives/Typography/Typography.module.css.mjs +1 -2
- package/dist/components/utilities/LocaleProvider/LocaleProvider.cjs.js +1 -1
- package/dist/components/utilities/LocaleProvider/LocaleProvider.mjs +11 -11
- package/dist/components/utilities/LocaleProvider/LocaleProvider.module.css.mjs +1 -2
- package/dist/components/utilities/Portal/Portal.cjs.js +1 -1
- package/dist/components/utilities/Portal/Portal.mjs +2 -2
- package/dist/components/utilities/Theme/Theme.cjs.js +1 -1
- package/dist/components/utilities/Theme/Theme.mjs +13 -13
- package/dist/components/utilities/Theme/Theme.module.css.mjs +1 -2
- package/dist/components/utilities/VisuallyHidden/VisuallyHidden.mjs +1 -2
- package/dist/components/utilities/VisuallyHidden/VisuallyHidden.module.css.mjs +1 -2
- package/dist/hooks/elementSource.cjs.js +1 -1
- package/dist/hooks/elementSource.mjs +4 -3
- package/dist/hooks/useClipboard.cjs.js +1 -1
- package/dist/hooks/useClipboard.mjs +2 -2
- package/dist/hooks/useControllableState.cjs.js +1 -1
- package/dist/hooks/useControllableState.mjs +2 -2
- package/dist/hooks/useDisclosure.cjs.js +1 -1
- package/dist/hooks/useDisclosure.mjs +2 -2
- package/dist/hooks/useDismiss.cjs.js +1 -1
- package/dist/hooks/useDismiss.mjs +2 -2
- package/dist/hooks/useElementObservers.cjs.js +1 -1
- package/dist/hooks/useElementObservers.mjs +2 -2
- package/dist/hooks/useEnvironment.cjs.js +1 -1
- package/dist/hooks/useEnvironment.mjs +2 -2
- package/dist/hooks/useFloatingPosition.cjs.js +1 -1
- package/dist/hooks/useFloatingPosition.mjs +2 -2
- package/dist/hooks/useFocusTrap.cjs.js +1 -1
- package/dist/hooks/useFocusTrap.mjs +4 -15
- package/dist/hooks/useFormReset.cjs.js +1 -1
- package/dist/hooks/useFormReset.mjs +2 -2
- package/dist/hooks/useFormValidation.cjs.js +1 -1
- package/dist/hooks/useFormValidation.mjs +2 -2
- package/dist/hooks/useHotkeys.cjs.js +1 -1
- package/dist/hooks/useHotkeys.mjs +2 -2
- package/dist/hooks/useInertOutside.cjs.js +1 -1
- package/dist/hooks/useInertOutside.mjs +5 -9
- package/dist/hooks/useMediaQuery.cjs.js +1 -1
- package/dist/hooks/useMediaQuery.mjs +2 -2
- package/dist/hooks/useMergedRef.cjs.js +1 -1
- package/dist/hooks/useMergedRef.mjs +2 -2
- package/dist/hooks/useOverlayLayer.cjs.js +1 -1
- package/dist/hooks/useOverlayLayer.mjs +3 -3
- package/dist/hooks/useResponsiveValue.cjs.js +1 -1
- package/dist/hooks/useResponsiveValue.mjs +2 -2
- package/dist/hooks/useScrollLock.cjs.js +1 -1
- package/dist/hooks/useScrollLock.mjs +2 -2
- package/dist/hooks/useStorage.cjs.js +1 -1
- package/dist/hooks/useStorage.mjs +2 -2
- package/dist/hooks/useTiming.cjs.js +1 -1
- package/dist/hooks/useTiming.mjs +10 -15
- package/dist/hooks/useVirtualizer.cjs.js +1 -1
- package/dist/hooks/useVirtualizer.d.ts +13 -0
- package/dist/hooks/useVirtualizer.mjs +93 -54
- package/dist/i18n/en.cjs.js +1 -1
- package/dist/i18n/en.mjs +2 -2
- package/dist/i18n/merge.mjs +1 -2
- package/dist/i18n/plural.mjs +1 -2
- package/dist/i18n/types.d.ts +5 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.mjs +114 -114
- package/dist/locales/ar.cjs.js +1 -1
- package/dist/locales/ar.mjs +2 -2
- package/dist/locales/bn.cjs.js +1 -1
- package/dist/locales/bn.mjs +2 -2
- package/dist/locales/cs.cjs.js +1 -1
- package/dist/locales/cs.mjs +2 -2
- package/dist/locales/da.cjs.js +1 -1
- package/dist/locales/da.mjs +2 -2
- package/dist/locales/de.cjs.js +1 -1
- package/dist/locales/de.mjs +2 -2
- package/dist/locales/el.cjs.js +1 -1
- package/dist/locales/el.mjs +2 -2
- package/dist/locales/es.cjs.js +1 -1
- package/dist/locales/es.mjs +2 -2
- package/dist/locales/fa.cjs.js +1 -1
- package/dist/locales/fa.mjs +2 -2
- package/dist/locales/fi.cjs.js +1 -1
- package/dist/locales/fi.mjs +2 -2
- package/dist/locales/fr.cjs.js +1 -1
- package/dist/locales/fr.mjs +2 -2
- package/dist/locales/he.cjs.js +1 -1
- package/dist/locales/he.mjs +2 -2
- package/dist/locales/hi.cjs.js +1 -1
- package/dist/locales/hi.mjs +2 -2
- package/dist/locales/hu.cjs.js +1 -1
- package/dist/locales/hu.mjs +2 -2
- package/dist/locales/id.cjs.js +1 -1
- package/dist/locales/id.mjs +2 -2
- package/dist/locales/it.cjs.js +1 -1
- package/dist/locales/it.mjs +2 -2
- package/dist/locales/ja.cjs.js +1 -1
- package/dist/locales/ja.mjs +2 -2
- package/dist/locales/ko.cjs.js +1 -1
- package/dist/locales/ko.mjs +2 -2
- package/dist/locales/nb.cjs.js +1 -1
- package/dist/locales/nb.mjs +2 -2
- package/dist/locales/nl.cjs.js +1 -1
- package/dist/locales/nl.mjs +2 -2
- package/dist/locales/pl.cjs.js +1 -1
- package/dist/locales/pl.mjs +2 -2
- package/dist/locales/pt-BR.cjs.js +1 -1
- package/dist/locales/pt-BR.mjs +2 -2
- package/dist/locales/ro.cjs.js +1 -1
- package/dist/locales/ro.mjs +2 -2
- package/dist/locales/ru.cjs.js +1 -1
- package/dist/locales/ru.mjs +2 -2
- package/dist/locales/sv.cjs.js +1 -1
- package/dist/locales/sv.mjs +2 -2
- package/dist/locales/th.cjs.js +1 -1
- package/dist/locales/th.mjs +2 -2
- package/dist/locales/tr.cjs.js +1 -1
- package/dist/locales/tr.mjs +2 -2
- package/dist/locales/uk.cjs.js +1 -1
- package/dist/locales/uk.mjs +2 -2
- package/dist/locales/ur.cjs.js +1 -1
- package/dist/locales/ur.mjs +2 -2
- package/dist/locales/vi.cjs.js +1 -1
- package/dist/locales/vi.mjs +2 -2
- package/dist/locales/zh-Hans.cjs.js +1 -1
- package/dist/locales/zh-Hans.mjs +2 -2
- package/dist/locales/zh-Hant.cjs.js +1 -1
- package/dist/locales/zh-Hant.mjs +2 -2
- package/dist/types/common.mjs +1 -2
- package/dist/utils/announce.cjs.js +1 -1
- package/dist/utils/announce.mjs +3 -4
- package/dist/utils/brandPalette.mjs +1 -2
- package/dist/utils/clipboard.mjs +1 -2
- package/dist/utils/cx.mjs +1 -2
- package/dist/utils/fillSlot.cjs.js +1 -1
- package/dist/utils/fillSlot.mjs +2 -2
- package/dist/utils/flattenChildren.mjs +1 -2
- package/dist/utils/hotkeys.mjs +1 -2
- package/dist/utils/intl.cjs.js +1 -0
- package/dist/utils/intl.d.ts +10 -0
- package/dist/utils/intl.mjs +15 -0
- package/dist/utils/refs.mjs +1 -2
- package/dist/utils/responsive.mjs +1 -2
- package/dist/utils/slot.mjs +1 -2
- package/dist/utils/validators.mjs +1 -2
- package/dist/vjdesigns-ui.css +1 -1
- package/dist/vjdesigns-ui.css.d.ts +2 -0
- package/package.json +24 -14
|
@@ -1,14 +1,15 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { useControllableState as e } from "../../../hooks/useControllableState.mjs";
|
|
2
|
-
import {
|
|
3
|
+
import { cx as t } from "../../../utils/cx.mjs";
|
|
3
4
|
import { assignRef as n } from "../../../utils/refs.mjs";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { addDays as s, addMonths as c, addMonthsToMonth as l, clampDate as u, endOfWeek as ee, firstOfMonth as d, formatFullDate as te, formatMonthYear as f, getFormatter as p, getLocaleWeekStart as ne, lastOfMonth as re, makeDate as ie, monthGrid as ae, parseISODate as oe, startOfWeek as se, toISOMonth as m, todayISO as ce } from "./dateUtils.mjs";
|
|
5
|
+
import { IconButton as r } from "../../primitives/Button/Button.mjs";
|
|
6
|
+
import { ChevronLeftIcon as i, ChevronRightIcon as a } from "../../primitives/Icon/icons.mjs";
|
|
7
|
+
import { addDays as o, addMonths as s, addMonthsToMonth as c, clampDate as l, endOfWeek as u, firstOfMonth as d, formatFullDate as ee, formatMonthYear as f, getFormatter as p, getLocaleWeekStart as te, lastOfMonth as ne, makeDate as re, monthGrid as ie, parseISODate as ae, startOfWeek as oe, toISOMonth as m, todayISO as se } from "./dateUtils.mjs";
|
|
8
8
|
import h from "./Calendar.module.css.mjs";
|
|
9
|
+
import { useLocale as ce } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
|
|
9
10
|
import { useCallback as g, useEffect as le, useId as ue, useMemo as _, useRef as de, useState as v } from "react";
|
|
10
11
|
import { jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
11
|
-
|
|
12
|
+
// src/components/forms/DatePicker/Calendar.tsx
|
|
12
13
|
var fe = {
|
|
13
14
|
sm: h.sm,
|
|
14
15
|
md: h.md,
|
|
@@ -25,7 +26,7 @@ function he(e) {
|
|
|
25
26
|
return e?.start ? e.end ? e.start <= e.end ? [e.start, e.end] : [e.end, e.start] : [e.start, null] : [null, null];
|
|
26
27
|
}
|
|
27
28
|
var ge = (ge) => {
|
|
28
|
-
let { messages: _e, locale: ve } =
|
|
29
|
+
let { messages: _e, locale: ve } = ce(), { mode: ye = "single", value: be, defaultValue: xe, onValueChange: Se, min: x, max: S, isDateDisabled: C, locale: w = ve, weekStartsOn: Ce, month: we, defaultMonth: Te, onMonthChange: Ee, numberOfMonths: T = 1, showOutsideDays: De = T === 1, size: E = "md", today: Oe, headingLevel: ke = 2, previousMonthLabel: Ae = _e.datePicker.previousMonth, nextMonthLabel: je = _e.datePicker.nextMonth, className: Me, ref: D, ...Ne } = ge, O = ye === "range", k = Oe ?? se(), Pe = _(() => te(w), [w]), A = Ce ?? Pe, [Fe, j] = e({
|
|
29
30
|
value: be,
|
|
30
31
|
defaultValue: xe ?? null,
|
|
31
32
|
onChange: Se
|
|
@@ -33,7 +34,7 @@ var ge = (ge) => {
|
|
|
33
34
|
value: we,
|
|
34
35
|
defaultValue: Te ?? m(M ?? P ?? k),
|
|
35
36
|
onChange: Ee
|
|
36
|
-
}), L = Ie.slice(0, 7), R = _(() => Array.from({ length: T }, (e, t) =>
|
|
37
|
+
}), L = Ie.slice(0, 7), R = _(() => Array.from({ length: T }, (e, t) => c(L, t)), [L, T]), z = d(R[0]), B = ne(R[R.length - 1]), V = (e) => !!e && e >= z && e <= B, H = g((e) => x && e < x || S && e > S ? !0 : C ? C(e, ae(e)) : !1, [
|
|
37
38
|
x,
|
|
38
39
|
S,
|
|
39
40
|
C
|
|
@@ -47,7 +48,7 @@ var ge = (ge) => {
|
|
|
47
48
|
].filter(V), t = e.find((e) => !H(e));
|
|
48
49
|
if (t) return t;
|
|
49
50
|
if (e[0]) return e[0];
|
|
50
|
-
for (let e = z; e <= B; e =
|
|
51
|
+
for (let e = z; e <= B; e = o(e, 1)) if (!H(e)) return e;
|
|
51
52
|
return z;
|
|
52
53
|
}, [
|
|
53
54
|
U,
|
|
@@ -67,53 +68,47 @@ var ge = (ge) => {
|
|
|
67
68
|
e && (J.current = !1, e.focus({ preventScroll: !1 }));
|
|
68
69
|
});
|
|
69
70
|
let Ve = (e) => {
|
|
70
|
-
let t =
|
|
71
|
-
W(t), t < z ? I(m(t)) : t > B && I(
|
|
71
|
+
let t = l(e, x, S);
|
|
72
|
+
W(t), t < z ? I(m(t)) : t > B && I(c(m(t), -(T - 1))), t !== K && (J.current = !0);
|
|
72
73
|
}, Y = (e) => {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
end: N.start
|
|
84
|
-
}) : j({
|
|
85
|
-
start: N.start,
|
|
86
|
-
end: e
|
|
87
|
-
}), G(null);
|
|
88
|
-
}
|
|
74
|
+
H(e) || (V(e) ? W(e) : Ve(e), O ? (!N.start || N.end ? j({
|
|
75
|
+
start: e,
|
|
76
|
+
end: null
|
|
77
|
+
}) : e < N.start ? j({
|
|
78
|
+
start: e,
|
|
79
|
+
end: N.start
|
|
80
|
+
}) : j({
|
|
81
|
+
start: N.start,
|
|
82
|
+
end: e
|
|
83
|
+
}), G(null)) : j(e));
|
|
89
84
|
}, He = (e) => {
|
|
90
85
|
if (!e.target.dataset.date) return;
|
|
91
86
|
Le !== null && G(null);
|
|
92
87
|
let t = q.current ? getComputedStyle(q.current).direction === "rtl" : !1, n = K, r = null;
|
|
93
88
|
switch (e.key) {
|
|
94
89
|
case "ArrowLeft":
|
|
95
|
-
r =
|
|
90
|
+
r = o(n, t ? 1 : -1);
|
|
96
91
|
break;
|
|
97
92
|
case "ArrowRight":
|
|
98
|
-
r =
|
|
93
|
+
r = o(n, t ? -1 : 1);
|
|
99
94
|
break;
|
|
100
95
|
case "ArrowUp":
|
|
101
|
-
r =
|
|
96
|
+
r = o(n, -7);
|
|
102
97
|
break;
|
|
103
98
|
case "ArrowDown":
|
|
104
|
-
r =
|
|
99
|
+
r = o(n, 7);
|
|
105
100
|
break;
|
|
106
101
|
case "Home":
|
|
107
|
-
r =
|
|
102
|
+
r = oe(n, A);
|
|
108
103
|
break;
|
|
109
104
|
case "End":
|
|
110
|
-
r =
|
|
105
|
+
r = u(n, A);
|
|
111
106
|
break;
|
|
112
107
|
case "PageUp":
|
|
113
|
-
r =
|
|
108
|
+
r = s(n, e.shiftKey ? -12 : -1);
|
|
114
109
|
break;
|
|
115
110
|
case "PageDown":
|
|
116
|
-
r =
|
|
111
|
+
r = s(n, e.shiftKey ? 12 : 1);
|
|
117
112
|
break;
|
|
118
113
|
case "Enter":
|
|
119
114
|
case " ":
|
|
@@ -130,51 +125,51 @@ var ge = (ge) => {
|
|
|
130
125
|
}, Ge = ue(), Ke = _(() => {
|
|
131
126
|
let e = p(w, { weekday: "short" }), t = p(w, { weekday: "long" });
|
|
132
127
|
return Array.from({ length: 7 }, (n, r) => {
|
|
133
|
-
let i = (A + r) % 7, a =
|
|
128
|
+
let i = (A + r) % 7, a = re(2023, 0, 1 + i);
|
|
134
129
|
return {
|
|
135
130
|
key: i,
|
|
136
131
|
short: e.format(a),
|
|
137
132
|
long: t.format(a)
|
|
138
133
|
};
|
|
139
134
|
});
|
|
140
|
-
}, [w, A]), qe = p(w, { day: "numeric" }), Je = !!x &&
|
|
135
|
+
}, [w, A]), qe = p(w, { day: "numeric" }), Je = !!x && ne(c(L, -1)) < x, Ye = !!S && d(c(R[R.length - 1], 1)) > S, Xe = `h${ke}`, Ze = pe[E], $ = (e) => /* @__PURE__ */ y(r, {
|
|
141
136
|
variant: "ghost",
|
|
142
137
|
tone: "neutral",
|
|
143
138
|
size: Ze,
|
|
144
139
|
"aria-label": e === "previous" ? Ae : je,
|
|
145
140
|
disabled: e === "previous" ? Je : Ye,
|
|
146
141
|
className: h.navButton,
|
|
147
|
-
onClick: () => I(
|
|
148
|
-
children: y(e === "previous" ?
|
|
142
|
+
onClick: () => I(c(L, e === "previous" ? -1 : 1)),
|
|
143
|
+
children: y(e === "previous" ? i : a, { className: h.flipInRtl })
|
|
149
144
|
});
|
|
150
145
|
return /* @__PURE__ */ y("div", {
|
|
151
146
|
role: "group",
|
|
152
147
|
...Ne,
|
|
153
148
|
ref: Be,
|
|
154
|
-
className:
|
|
149
|
+
className: t(h.root, fe[E], Me),
|
|
155
150
|
"data-size": E,
|
|
156
151
|
"data-mode": ye,
|
|
157
152
|
children: /* @__PURE__ */ y("div", {
|
|
158
153
|
className: h.months,
|
|
159
|
-
children: R.map((e,
|
|
160
|
-
let
|
|
154
|
+
children: R.map((e, n) => {
|
|
155
|
+
let r = `${Ge}-heading-${n}`;
|
|
161
156
|
return /* @__PURE__ */ b("div", {
|
|
162
157
|
className: h.month,
|
|
163
158
|
children: [/* @__PURE__ */ b("div", {
|
|
164
159
|
className: h.header,
|
|
165
160
|
children: [
|
|
166
|
-
|
|
161
|
+
n === 0 ? $("previous") : /* @__PURE__ */ y("span", { className: h.navSpacer }),
|
|
167
162
|
/* @__PURE__ */ y(Xe, {
|
|
168
|
-
id:
|
|
163
|
+
id: r,
|
|
169
164
|
className: h.heading,
|
|
170
165
|
"aria-live": "polite",
|
|
171
166
|
children: f(e, w)
|
|
172
167
|
}),
|
|
173
|
-
|
|
168
|
+
n === R.length - 1 ? $("next") : /* @__PURE__ */ y("span", { className: h.navSpacer })
|
|
174
169
|
]
|
|
175
170
|
}), /* @__PURE__ */ b("table", {
|
|
176
171
|
role: "grid",
|
|
177
|
-
"aria-labelledby":
|
|
172
|
+
"aria-labelledby": r,
|
|
178
173
|
"aria-multiselectable": O ? !0 : void 0,
|
|
179
174
|
className: h.grid,
|
|
180
175
|
onKeyDown: He,
|
|
@@ -186,43 +181,42 @@ var ge = (ge) => {
|
|
|
186
181
|
abbr: e.long,
|
|
187
182
|
className: h.weekday,
|
|
188
183
|
children: e.short
|
|
189
|
-
}, e.key)) }) }), /* @__PURE__ */ y("tbody", { children:
|
|
190
|
-
let
|
|
191
|
-
if (
|
|
184
|
+
}, e.key)) }) }), /* @__PURE__ */ y("tbody", { children: ie(e, A).map((n) => /* @__PURE__ */ y("tr", { children: n.map((n) => {
|
|
185
|
+
let r = m(n) !== e;
|
|
186
|
+
if (r && !De) return /* @__PURE__ */ y("td", {
|
|
192
187
|
role: "gridcell",
|
|
193
188
|
className: h.cell
|
|
194
|
-
},
|
|
195
|
-
let i = H(
|
|
189
|
+
}, n);
|
|
190
|
+
let i = H(n), a = !r && n === K, o = n === k, s = !O && n === M, c = O && n === P, l = O && n === F, u = O && !!P && !!F && n > P && n < F, d = s || c || l || u, f = r ? null : We(n), p = f?.kind === "preview" && n === X;
|
|
196
191
|
return /* @__PURE__ */ y("td", {
|
|
197
192
|
role: "gridcell",
|
|
198
|
-
"data-date":
|
|
193
|
+
"data-date": n,
|
|
199
194
|
"data-active": a ? "" : void 0,
|
|
200
|
-
"data-outside":
|
|
201
|
-
"data-band":
|
|
202
|
-
"data-band-kind":
|
|
195
|
+
"data-outside": r ? "" : void 0,
|
|
196
|
+
"data-band": f?.shape,
|
|
197
|
+
"data-band-kind": f?.kind,
|
|
203
198
|
tabIndex: a ? 0 : -1,
|
|
204
|
-
"aria-label":
|
|
205
|
-
"aria-selected":
|
|
199
|
+
"aria-label": ee(n, w),
|
|
200
|
+
"aria-selected": r ? void 0 : d,
|
|
206
201
|
"aria-current": o ? "date" : void 0,
|
|
207
202
|
"aria-disabled": i ? !0 : void 0,
|
|
208
|
-
className:
|
|
209
|
-
onClick: () => Y(
|
|
203
|
+
className: t(h.cell, r && h.outside, o && h.today, i && h.unavailable, (s || c || l) && h.selected, u && h.inRange, p && h.previewEnd),
|
|
204
|
+
onClick: () => Y(n),
|
|
210
205
|
onFocus: () => {
|
|
211
|
-
|
|
206
|
+
r || W(n);
|
|
212
207
|
},
|
|
213
|
-
onPointerEnter: () => G(
|
|
208
|
+
onPointerEnter: () => G(n),
|
|
214
209
|
children: /* @__PURE__ */ y("span", {
|
|
215
210
|
className: h.day,
|
|
216
211
|
"aria-hidden": "true",
|
|
217
|
-
children: qe.format(
|
|
212
|
+
children: qe.format(ae(n))
|
|
218
213
|
})
|
|
219
|
-
},
|
|
220
|
-
}) },
|
|
214
|
+
}, n);
|
|
215
|
+
}) }, n[0])) })]
|
|
221
216
|
})]
|
|
222
|
-
},
|
|
217
|
+
}, n);
|
|
223
218
|
})
|
|
224
219
|
})
|
|
225
220
|
});
|
|
226
221
|
};
|
|
227
|
-
//#endregion
|
|
228
222
|
export { ge as Calendar };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/components/forms/DatePicker/Calendar.module.css
|
|
2
2
|
var e = "_root_19q09_15", t = "_sm_19q09_41", n = "_md_19q09_59", r = "_lg_19q09_71", i = "_months_19q09_85", a = "_month_19q09_85", o = "_header_19q09_109", s = "_heading_19q09_123", c = "_navSpacer_19q09_153", l = "_flipInRtl_19q09_163", u = "_grid_19q09_173", d = "_weekday_19q09_185", f = "_cell_19q09_209", p = "_day_19q09_237", m = "_unavailable_19q09_285", h = "_selected_19q09_285", g = "_outside_19q09_313", _ = "_today_19q09_325", v = "_inRange_19q09_469", y = "_previewEnd_19q09_497", b = {
|
|
3
3
|
root: e,
|
|
4
4
|
sm: t,
|
|
@@ -21,5 +21,4 @@ var e = "_root_19q09_15", t = "_sm_19q09_41", n = "_md_19q09_59", r = "_lg_19q09
|
|
|
21
21
|
inRange: v,
|
|
22
22
|
previewEnd: y
|
|
23
23
|
};
|
|
24
|
-
//#endregion
|
|
25
24
|
export { f as cell, p as day, b as default, l as flipInRtl, u as grid, o as header, s as heading, v as inRange, r as lg, n as md, a as month, i as months, c as navSpacer, g as outside, y as previewEnd, e as root, h as selected, t as sm, _ as today, m as unavailable, d as weekday };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../../../hooks/useControllableState.cjs.js"),t=require("
|
|
1
|
+
"use client";const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../utils/cx.cjs.js"),n=require("../../overlays/Popover/Popover.cjs.js"),r=require("../../primitives/Button/Button.cjs.js"),i=require("../../primitives/Icon/icons.cjs.js"),ee=require("../../utilities/VisuallyHidden/VisuallyHidden.cjs.js"),te=require("../Field/FieldContext.cjs.js"),a=require("../Input/Input.cjs.js"),ne=require("./Calendar.cjs.js"),o=require("./dateUtils.cjs.js"),s=require("./DatePicker.module.css.cjs.js"),re=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let c=require("react"),l=require("react/jsx-runtime");function ie(e,t,n,r,i){switch(t.reason){case`unparseable`:return e.unparseable(t.pattern);case`out-of-range`:return r&&i?e.between(n(r),n(i)):r?e.onOrAfter(n(r)):e.onOrBefore(n(i));case`unavailable`:return e.unavailable(t.date?n(t.date):t.text)}}var u=({value:u,defaultValue:ae,onValueChange:oe,min:d,max:f,isDateDisabled:p,locale:se,weekStartsOn:ce,placement:le=`bottom-start`,size:m,name:h,clearable:ue=!1,open:de,defaultOpen:fe=!1,onOpenChange:pe,onInvalidInput:me,invalidMessage:g,chooseDateLabel:he,changeDateLabel:ge,dialogLabel:_e,formatDescription:ve,today:ye,numberOfMonths:be=1,fieldClassName:xe,className:Se,style:Ce,invalid:_,required:v,disabled:y,readOnly:b,placeholder:we,fullWidth:x=!0,endElement:Te,onChange:S,onBlur:C,onFocus:w,onKeyDown:T,"aria-describedby":E,...D})=>{let{messages:O,locale:Ee}=re.useLocale(),k=se??Ee,De=he??O.datePicker.chooseDate,Oe=ge??O.datePicker.changeDate,ke=_e??O.datePicker.dialog,A=ve??O.datePicker.format,j=te.useFieldControl({disabled:y,readOnly:b,size:m,invalid:_,required:v}),M=j.size??`md`,N=!j.disabled&&!j.readOnly,P=(0,c.useMemo)(()=>o.getDateFormatInfo(k),[k]),{format:F}=P,I=o.localizeDatePattern(P.pattern,O.datePicker.pattern),[L,Ae]=e.useControllableState({value:u,defaultValue:ae??null,onChange:oe}),[R,z]=(0,c.useState)(()=>L?F(L):``),[B,V]=(0,c.useState)(null),H=(0,c.useRef)(L);(0,c.useEffect)(()=>{H.current!==L&&(H.current=L,z(L?F(L):``),V(null))},[L,F]);let U=(0,c.useRef)(F);(0,c.useEffect)(()=>{if(U.current===F)return;let e=U.current;U.current=F,z(t=>L&&t===e(L)?F(L):t)},[F,L]);let W=(e,t)=>{H.current=e,z(t),Ae(e)},je=e=>d&&e<d||f&&e>f?`out-of-range`:p?.(e,o.parseISODate(e))?`unavailable`:null,G=()=>{let e=R.trim();if(!e){V(null),W(null,``);return}let t=o.parseDateText(e,k),n=t?je(t):`unparseable`;if(n){let r={text:e,reason:n,date:t??void 0,pattern:I};V(r),W(null,R),me?.(r)}else V(null),W(t,F(t))},[Me,K]=e.useControllableState({value:de,defaultValue:fe,onChange:pe}),q=Me&&N,J=(0,c.useRef)(null),Ne=()=>J.current?.querySelector(`[data-active]`)??null,Y=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(q||!Y.current)return;let e=Y.current;Y.current=null;let t=document.activeElement,n=e.closest(`.${s.default.anchor}`);e.isConnected&&(!t||t===document.body||n?.contains(t))&&e.focus()},[q]);let Pe=e=>{e&&(V(null),W(e,F(e)),K(!1))},Fe=e=>{z(e.target.value),S?.(e)},Ie=e=>{C?.(e),!j.readOnly&&!j.disabled&&G()},Le=e=>{w?.(e)},Re=e=>{T?.(e),!e.defaultPrevented&&N&&(e.key===`Enter`?G():e.key===`ArrowDown`&&e.altKey&&(e.preventDefault(),G(),Y.current=e.currentTarget,K(!0)))},X=(0,c.useId)(),Z=`${X}-format`,Q=`${X}-error`,$=B&&g!==null?typeof g==`function`?g(B):g??ie(O.datePicker.invalid,B,F,d,f):null,ze=[E,Z,$==null?void 0:Q].filter(Boolean).join(` `)||void 0,Be=L?Oe(o.formatFullDate(L,k)):De;return(0,l.jsxs)(`div`,{className:t.cx(s.default.root,x&&s.default.fullWidth,Se),style:Ce,"data-size":M,children:[(0,l.jsxs)(n.Popover,{open:q,onOpenChange:K,placement:le,modal:!0,closeOnAnchorFocus:!0,children:[(0,l.jsx)(n.Popover.Anchor,{asChild:!1,className:s.default.anchor,children:(0,l.jsx)(a.Input,{...D,type:`text`,autoComplete:`off`,size:m,invalid:_??(B?!0:void 0),required:v,disabled:y,readOnly:b,fullWidth:x,placeholder:we??I,className:xe,"aria-describedby":ze,value:R,onChange:Fe,onBlur:Ie,onFocus:Le,onKeyDown:Re,clearable:ue,onClear:()=>{V(null),W(null,``)},endElement:(0,l.jsxs)(l.Fragment,{children:[Te,!j.readOnly&&(0,l.jsx)(n.Popover.Trigger,{asChild:!0,children:(0,l.jsx)(r.IconButton,{size:M===`sm`?`xs`:`sm`,variant:`ghost`,tone:`neutral`,"aria-label":Be,disabled:j.disabled,children:(0,l.jsx)(i.CalendarIcon,{})})})]})})}),(0,l.jsx)(n.Popover.Content,{"aria-label":ke,size:`sm`,maxWidth:`none`,initialFocus:Ne,className:s.default.popup,children:(0,l.jsx)(ne.Calendar,{ref:J,value:L,onValueChange:Pe,min:d,max:f,isDateDisabled:p,locale:k,weekStartsOn:ce,size:M,today:ye,numberOfMonths:be})})]}),(0,l.jsx)(ee.VisuallyHidden,{id:Z,children:A(I)}),h!==void 0&&(0,l.jsx)(`input`,{type:`hidden`,name:h,value:L??``,disabled:j.disabled}),(0,l.jsx)(`div`,{"aria-live":`polite`,className:s.default.errorRegion,children:$!=null&&(0,l.jsxs)(`p`,{id:Q,className:s.default.error,children:[(0,l.jsx)(i.ErrorIcon,{size:`sm`,className:s.default.errorIcon}),(0,l.jsx)(`span`,{children:$})]})})]})};exports.DatePicker=u;
|
|
@@ -1,55 +1,56 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { useControllableState as e } from "../../../hooks/useControllableState.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { useFieldControl as
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import { formatFullDate as
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import { useEffect as
|
|
14
|
-
import { Fragment as
|
|
15
|
-
|
|
16
|
-
function
|
|
3
|
+
import { cx as t } from "../../../utils/cx.mjs";
|
|
4
|
+
import { Popover as n } from "../../overlays/Popover/Popover.mjs";
|
|
5
|
+
import { IconButton as r } from "../../primitives/Button/Button.mjs";
|
|
6
|
+
import { CalendarIcon as i, ErrorIcon as ee } from "../../primitives/Icon/icons.mjs";
|
|
7
|
+
import { VisuallyHidden as te } from "../../utilities/VisuallyHidden/VisuallyHidden.mjs";
|
|
8
|
+
import { useFieldControl as a } from "../Field/FieldContext.mjs";
|
|
9
|
+
import { Input as ne } from "../Input/Input.mjs";
|
|
10
|
+
import { Calendar as re } from "./Calendar.mjs";
|
|
11
|
+
import { formatFullDate as ie, getDateFormatInfo as ae, localizeDatePattern as oe, parseDateText as se, parseISODate as ce } from "./dateUtils.mjs";
|
|
12
|
+
import o from "./DatePicker.module.css.mjs";
|
|
13
|
+
import { useLocale as le } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
|
|
14
|
+
import { useEffect as s, useId as c, useMemo as l, useRef as u, useState as d } from "react";
|
|
15
|
+
import { Fragment as ue, jsx as f, jsxs as p } from "react/jsx-runtime";
|
|
16
|
+
// src/components/forms/DatePicker/DatePicker.tsx
|
|
17
|
+
function de(e, t, n, r, i) {
|
|
17
18
|
switch (t.reason) {
|
|
18
19
|
case "unparseable": return e.unparseable(t.pattern);
|
|
19
20
|
case "out-of-range": return r && i ? e.between(n(r), n(i)) : r ? e.onOrAfter(n(r)) : e.onOrBefore(n(i));
|
|
20
21
|
case "unavailable": return e.unavailable(t.date ? n(t.date) : t.text);
|
|
21
22
|
}
|
|
22
23
|
}
|
|
23
|
-
var
|
|
24
|
-
let { messages: O, locale: Le } =
|
|
24
|
+
var m = ({ value: m, defaultValue: fe, onValueChange: pe, min: h, max: g, isDateDisabled: _, locale: me, weekStartsOn: he, placement: ge = "bottom-start", size: v, name: y, clearable: _e = !1, open: ve, defaultOpen: ye = !1, onOpenChange: be, onInvalidInput: xe, invalidMessage: b, chooseDateLabel: Se, changeDateLabel: Ce, dialogLabel: we, formatDescription: Te, today: Ee, numberOfMonths: De = 1, fieldClassName: Oe, className: x, style: S, invalid: C, required: w, disabled: T, readOnly: E, placeholder: ke, fullWidth: D = !0, endElement: Ae, onChange: je, onBlur: Me, onFocus: Ne, onKeyDown: Pe, "aria-describedby": Fe, ...Ie }) => {
|
|
25
|
+
let { messages: O, locale: Le } = le(), k = me ?? Le, Re = Se ?? O.datePicker.chooseDate, ze = Ce ?? O.datePicker.changeDate, Be = we ?? O.datePicker.dialog, Ve = Te ?? O.datePicker.format, A = a({
|
|
25
26
|
disabled: T,
|
|
26
27
|
readOnly: E,
|
|
27
|
-
size:
|
|
28
|
+
size: v,
|
|
28
29
|
invalid: C,
|
|
29
30
|
required: w
|
|
30
|
-
}), j = A.size ?? "md", M = !A.disabled && !A.readOnly, N =
|
|
31
|
-
value:
|
|
32
|
-
defaultValue:
|
|
33
|
-
onChange:
|
|
34
|
-
}), [L, R] =
|
|
35
|
-
|
|
31
|
+
}), j = A.size ?? "md", M = !A.disabled && !A.readOnly, N = l(() => ae(k), [k]), { format: P } = N, F = oe(N.pattern, O.datePicker.pattern), [I, He] = e({
|
|
32
|
+
value: m,
|
|
33
|
+
defaultValue: fe ?? null,
|
|
34
|
+
onChange: pe
|
|
35
|
+
}), [L, R] = d(() => I ? P(I) : ""), [z, B] = d(null), V = u(I);
|
|
36
|
+
s(() => {
|
|
36
37
|
V.current !== I && (V.current = I, R(I ? P(I) : ""), B(null));
|
|
37
38
|
}, [I, P]);
|
|
38
|
-
let H =
|
|
39
|
-
|
|
39
|
+
let H = u(P);
|
|
40
|
+
s(() => {
|
|
40
41
|
if (H.current === P) return;
|
|
41
42
|
let e = H.current;
|
|
42
43
|
H.current = P, R((t) => I && t === e(I) ? P(I) : t);
|
|
43
44
|
}, [P, I]);
|
|
44
45
|
let U = (e, t) => {
|
|
45
46
|
V.current = e, R(t), He(e);
|
|
46
|
-
}, Ue = (e) =>
|
|
47
|
+
}, Ue = (e) => h && e < h || g && e > g ? "out-of-range" : _?.(e, ce(e)) ? "unavailable" : null, W = () => {
|
|
47
48
|
let e = L.trim();
|
|
48
49
|
if (!e) {
|
|
49
50
|
B(null), U(null, "");
|
|
50
51
|
return;
|
|
51
52
|
}
|
|
52
|
-
let t =
|
|
53
|
+
let t = se(e, k), n = t ? Ue(t) : "unparseable";
|
|
53
54
|
if (n) {
|
|
54
55
|
let r = {
|
|
55
56
|
text: e,
|
|
@@ -57,20 +58,18 @@ var h = ({ value: h, defaultValue: de, onValueChange: fe, min: g, max: _, isDate
|
|
|
57
58
|
date: t ?? void 0,
|
|
58
59
|
pattern: F
|
|
59
60
|
};
|
|
60
|
-
B(r), U(null, L),
|
|
61
|
-
|
|
62
|
-
}
|
|
63
|
-
B(null), U(t, P(t));
|
|
61
|
+
B(r), U(null, L), xe?.(r);
|
|
62
|
+
} else B(null), U(t, P(t));
|
|
64
63
|
}, [We, G] = e({
|
|
65
|
-
value:
|
|
66
|
-
defaultValue:
|
|
67
|
-
onChange:
|
|
68
|
-
}), K = We && M, q =
|
|
69
|
-
|
|
64
|
+
value: ve,
|
|
65
|
+
defaultValue: ye,
|
|
66
|
+
onChange: be
|
|
67
|
+
}), K = We && M, q = u(null), Ge = () => q.current?.querySelector("[data-active]") ?? null, J = u(null);
|
|
68
|
+
s(() => {
|
|
70
69
|
if (K || !J.current) return;
|
|
71
70
|
let e = J.current;
|
|
72
71
|
J.current = null;
|
|
73
|
-
let t = document.activeElement, n = e.closest(`.${
|
|
72
|
+
let t = document.activeElement, n = e.closest(`.${o.anchor}`);
|
|
74
73
|
e.isConnected && (!t || t === document.body || n?.contains(t)) && e.focus();
|
|
75
74
|
}, [K]);
|
|
76
75
|
let Ke = (e) => {
|
|
@@ -83,104 +82,103 @@ var h = ({ value: h, defaultValue: de, onValueChange: fe, min: g, max: _, isDate
|
|
|
83
82
|
Ne?.(e);
|
|
84
83
|
}, Ye = (e) => {
|
|
85
84
|
Pe?.(e), !e.defaultPrevented && M && (e.key === "Enter" ? W() : e.key === "ArrowDown" && e.altKey && (e.preventDefault(), W(), J.current = e.currentTarget, G(!0)));
|
|
86
|
-
}, X =
|
|
85
|
+
}, X = c(), Z = `${X}-format`, Q = `${X}-error`, $ = z && b !== null ? typeof b == "function" ? b(z) : b ?? de(O.datePicker.invalid, z, P, h, g) : null, Xe = [
|
|
87
86
|
Fe,
|
|
88
87
|
Z,
|
|
89
88
|
$ == null ? void 0 : Q
|
|
90
|
-
].filter(Boolean).join(" ") || void 0, Ze = I ? ze(
|
|
91
|
-
return /* @__PURE__ */
|
|
92
|
-
className:
|
|
89
|
+
].filter(Boolean).join(" ") || void 0, Ze = I ? ze(ie(I, k)) : Re;
|
|
90
|
+
return /* @__PURE__ */ p("div", {
|
|
91
|
+
className: t(o.root, D && o.fullWidth, x),
|
|
93
92
|
style: S,
|
|
94
93
|
"data-size": j,
|
|
95
94
|
children: [
|
|
96
|
-
/* @__PURE__ */
|
|
95
|
+
/* @__PURE__ */ p(n, {
|
|
97
96
|
open: K,
|
|
98
97
|
onOpenChange: G,
|
|
99
|
-
placement:
|
|
98
|
+
placement: ge,
|
|
100
99
|
modal: !0,
|
|
101
100
|
closeOnAnchorFocus: !0,
|
|
102
|
-
children: [/* @__PURE__ */
|
|
101
|
+
children: [/* @__PURE__ */ f(n.Anchor, {
|
|
103
102
|
asChild: !1,
|
|
104
|
-
className:
|
|
105
|
-
children: /* @__PURE__ */
|
|
103
|
+
className: o.anchor,
|
|
104
|
+
children: /* @__PURE__ */ f(ne, {
|
|
106
105
|
...Ie,
|
|
107
106
|
type: "text",
|
|
108
107
|
autoComplete: "off",
|
|
109
|
-
size:
|
|
108
|
+
size: v,
|
|
110
109
|
invalid: C ?? (z ? !0 : void 0),
|
|
111
110
|
required: w,
|
|
112
111
|
disabled: T,
|
|
113
112
|
readOnly: E,
|
|
114
113
|
fullWidth: D,
|
|
115
114
|
placeholder: ke ?? F,
|
|
116
|
-
className:
|
|
115
|
+
className: Oe,
|
|
117
116
|
"aria-describedby": Xe,
|
|
118
117
|
value: L,
|
|
119
118
|
onChange: qe,
|
|
120
119
|
onBlur: Je,
|
|
121
120
|
onFocus: Y,
|
|
122
121
|
onKeyDown: Ye,
|
|
123
|
-
clearable:
|
|
122
|
+
clearable: _e,
|
|
124
123
|
onClear: () => {
|
|
125
124
|
B(null), U(null, "");
|
|
126
125
|
},
|
|
127
|
-
endElement: /* @__PURE__ */
|
|
126
|
+
endElement: /* @__PURE__ */ p(ue, { children: [Ae, !A.readOnly && /* @__PURE__ */ f(n.Trigger, {
|
|
128
127
|
asChild: !0,
|
|
129
|
-
children: /* @__PURE__ */
|
|
128
|
+
children: /* @__PURE__ */ f(r, {
|
|
130
129
|
size: j === "sm" ? "xs" : "sm",
|
|
131
130
|
variant: "ghost",
|
|
132
131
|
tone: "neutral",
|
|
133
132
|
"aria-label": Ze,
|
|
134
133
|
disabled: A.disabled,
|
|
135
|
-
children: /* @__PURE__ */
|
|
134
|
+
children: /* @__PURE__ */ f(i, {})
|
|
136
135
|
})
|
|
137
136
|
})] })
|
|
138
137
|
})
|
|
139
|
-
}), /* @__PURE__ */
|
|
138
|
+
}), /* @__PURE__ */ f(n.Content, {
|
|
140
139
|
"aria-label": Be,
|
|
141
140
|
size: "sm",
|
|
142
141
|
maxWidth: "none",
|
|
143
142
|
initialFocus: Ge,
|
|
144
|
-
className:
|
|
145
|
-
children: /* @__PURE__ */
|
|
143
|
+
className: o.popup,
|
|
144
|
+
children: /* @__PURE__ */ f(re, {
|
|
146
145
|
ref: q,
|
|
147
146
|
value: I,
|
|
148
147
|
onValueChange: Ke,
|
|
149
|
-
min:
|
|
150
|
-
max:
|
|
151
|
-
isDateDisabled:
|
|
148
|
+
min: h,
|
|
149
|
+
max: g,
|
|
150
|
+
isDateDisabled: _,
|
|
152
151
|
locale: k,
|
|
153
|
-
weekStartsOn:
|
|
152
|
+
weekStartsOn: he,
|
|
154
153
|
size: j,
|
|
155
|
-
today:
|
|
156
|
-
numberOfMonths:
|
|
154
|
+
today: Ee,
|
|
155
|
+
numberOfMonths: De
|
|
157
156
|
})
|
|
158
157
|
})]
|
|
159
158
|
}),
|
|
160
|
-
/* @__PURE__ */
|
|
159
|
+
/* @__PURE__ */ f(te, {
|
|
161
160
|
id: Z,
|
|
162
161
|
children: Ve(F)
|
|
163
162
|
}),
|
|
164
|
-
|
|
163
|
+
y !== void 0 && /* @__PURE__ */ f("input", {
|
|
165
164
|
type: "hidden",
|
|
166
|
-
name:
|
|
165
|
+
name: y,
|
|
167
166
|
value: I ?? "",
|
|
168
167
|
disabled: A.disabled
|
|
169
168
|
}),
|
|
170
|
-
/* @__PURE__ */
|
|
169
|
+
/* @__PURE__ */ f("div", {
|
|
171
170
|
"aria-live": "polite",
|
|
172
|
-
className:
|
|
173
|
-
children: $ != null && /* @__PURE__ */
|
|
171
|
+
className: o.errorRegion,
|
|
172
|
+
children: $ != null && /* @__PURE__ */ p("p", {
|
|
174
173
|
id: Q,
|
|
175
|
-
className:
|
|
176
|
-
children: [/* @__PURE__ */
|
|
174
|
+
className: o.error,
|
|
175
|
+
children: [/* @__PURE__ */ f(ee, {
|
|
177
176
|
size: "sm",
|
|
178
|
-
className:
|
|
179
|
-
}), /* @__PURE__ */
|
|
177
|
+
className: o.errorIcon
|
|
178
|
+
}), /* @__PURE__ */ f("span", { children: $ })]
|
|
180
179
|
})
|
|
181
180
|
})
|
|
182
181
|
]
|
|
183
182
|
});
|
|
184
183
|
};
|
|
185
|
-
|
|
186
|
-
export { h as DatePicker };
|
|
184
|
+
export { m as DatePicker };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/components/forms/DatePicker/DatePicker.module.css
|
|
2
2
|
var e = "_root_krzbu_13", t = "_fullWidth_krzbu_25", n = "_anchor_krzbu_35", r = "_popup_krzbu_47", i = "_error_krzbu_55", a = "_errorIcon_krzbu_81", o = {
|
|
3
3
|
root: e,
|
|
4
4
|
fullWidth: t,
|
|
@@ -7,5 +7,4 @@ var e = "_root_krzbu_13", t = "_fullWidth_krzbu_25", n = "_anchor_krzbu_35", r =
|
|
|
7
7
|
error: i,
|
|
8
8
|
errorIcon: a
|
|
9
9
|
};
|
|
10
|
-
//#endregion
|
|
11
10
|
export { n as anchor, o as default, i as error, a as errorIcon, t as fullWidth, r as popup, e as root };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useFormReset.cjs.js"),n=require("
|
|
1
|
+
"use client";const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useFormReset.cjs.js"),n=require("../../../utils/cx.cjs.js"),r=require("../../overlays/Popover/Popover.cjs.js"),i=require("../../primitives/Button/Button.cjs.js"),a=require("../../primitives/Icon/icons.cjs.js"),o=require("../../utilities/VisuallyHidden/VisuallyHidden.cjs.js"),s=require("../Field/FieldContext.cjs.js"),c=require("../Input/Input.cjs.js"),ee=require("./Calendar.cjs.js"),l=require("./dateUtils.cjs.js"),u=require("./DateRangePicker.module.css.cjs.js"),te=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let d=require("react"),f=require("react/jsx-runtime");var p={start:null,end:null};function ne(e,t,n,r,i){switch(t.reason){case`unparseable`:return e.unparseable(t.pattern);case`out-of-range`:return r&&i?e.rangeBetween(n(r),n(i)):r?e.rangeOnOrAfter(n(r)):e.rangeOnOrBefore(n(i));case`unavailable`:return e.unavailable(t.date?n(t.date):t.text);case`order`:return t.part===`end`?e.endBeforeStart:e.startAfterEnd}}var m=({value:m,defaultValue:h,onValueChange:re,min:g,max:_,isDateDisabled:v,locale:ie,weekStartsOn:ae,placement:oe=`bottom-start`,size:se,startName:y,endName:b,open:ce,defaultOpen:le=!1,onOpenChange:ue,onInvalidInput:de,invalidMessage:x,startLabel:fe,endLabel:pe,chooseRangeLabel:me,changeRangeLabel:he,dialogLabel:ge,formatDescription:_e,today:ve,numberOfMonths:ye=2,invalid:be,required:xe,disabled:Se,readOnly:Ce,fullWidth:we=!0,"aria-label":S,"aria-describedby":Te,className:Ee,style:De,id:Oe})=>{let{messages:C,locale:ke}=te.useLocale(),w=ie??ke,Ae=fe??C.datePicker.startDate,je=pe??C.datePicker.endDate,Me=me??C.datePicker.chooseDates,Ne=he??C.datePicker.changeDates,Pe=ge??C.datePicker.datesDialog,Fe=_e??C.datePicker.format,T=s.useFieldContext(),E=s.useFieldControl({id:Oe,disabled:Se,readOnly:Ce,size:se,invalid:be,required:xe}),D=E.size??`md`,O=!E.disabled&&!E.readOnly,k=(0,d.useMemo)(()=>l.getDateFormatInfo(w),[w]),{format:A}=k,j=l.localizeDatePattern(k.pattern,C.datePicker.pattern),[Ie,M]=e.useControllableState({value:m,defaultValue:h??null,onChange:re}),N=Ie??p,P=e=>e?A(e):``,[F,I]=(0,d.useState)(()=>P(N.start)),[L,R]=(0,d.useState)(()=>P(N.end)),[z,B]=(0,d.useState)(null),V=(0,d.useRef)(N);(0,d.useEffect)(()=>{let e=V.current;(e.start!==N.start||e.end!==N.end)&&(V.current=N,I(P(N.start)),R(P(N.end)),B(null))},[N.start,N.end,A]);let H=e=>{V.current=e,I(P(e.start)),R(P(e.end)),M(e)},Le=e=>g&&e<g||_&&e>_?`out-of-range`:v?.(e,l.parseISODate(e))?`unavailable`:null,U=e=>{let t=V.current,n=(e===`start`?F:L).trim();if(!n){B(t=>t?.part===e?null:t),t[e]!==null&&H({...t,[e]:null});return}let r=l.parseDateText(n,w),i=r?Le(r):`unparseable`;if(!i&&r){let n=e===`start`?t.end:t.start;n&&(e===`start`?r>n:r<n)&&(i=`order`)}if(i){let a={part:e,text:n,reason:i,date:r??void 0,pattern:j};B(a);let o={...t,[e]:null};V.current=o,M(o),de?.(a);return}B(null);let a={...t,[e]:r};V.current=a,e===`start`?I(A(r)):R(A(r)),t[e]!==r&&M(a)},W=(0,d.useRef)(null);t.useFormReset(()=>W.current,()=>{let e=h??p;V.current=e,I(P(e.start)),R(P(e.end)),B(null),M(h??null)},m===void 0);let[Re,G]=e.useControllableState({value:ce,defaultValue:le,onChange:ue}),K=Re&&O,[ze,q]=(0,d.useState)(N);(0,d.useEffect)(()=>{K&&q(V.current)},[K]);let J=(0,d.useRef)(null),Be=()=>J.current?.querySelector(`[data-active]`)??null,Ve=e=>{q(e),e.start&&e.end&&(B(null),H(e),G(!1))},Y=e=>t=>{O&&(t.key===`Enter`?U(e):t.key===`ArrowDown`&&t.altKey&&(t.preventDefault(),U(e),G(!0)))},X=(0,d.useId)(),He=`${X}-name`,Ue=`${X}-start`,Z=`${X}-end`,We=`${X}-format`,Ge=`${X}-error`,Ke=T?.labelId??(S?He:void 0),qe=e=>[Ke,e].filter(Boolean).join(` `),Q=z&&x!==null?typeof x==`function`?x(z):x??ne(C.datePicker.invalid,z,A,g,_):null,Je=[Te,We,Q==null?void 0:Ge].filter(Boolean).join(` `)||void 0,Ye=N.start&&N.end?`${l.formatFullDate(N.start,w)} to ${l.formatFullDate(N.end,w)}`:null,Xe=Ye?Ne(Ye):Me,$={type:`text`,autoComplete:`off`,size:D,disabled:E.disabled,readOnly:E.readOnly,required:E.required,fullWidth:!0,placeholder:j,"aria-describedby":Je,invalid:E.invalid||void 0};return(0,f.jsxs)(`div`,{className:n.cx(u.default.root,we&&u.default.fullWidth,Ee),style:De,"data-size":D,children:[(0,f.jsxs)(r.Popover,{open:K,onOpenChange:G,placement:oe,modal:!0,closeOnAnchorFocus:!0,children:[(0,f.jsx)(r.Popover.Anchor,{asChild:!1,className:u.default.anchor,children:(0,f.jsxs)(`div`,{role:`group`,"aria-labelledby":Ke,className:u.default.fields,children:[(0,f.jsxs)(`div`,{className:u.default.part,children:[(0,f.jsx)(`span`,{id:Ue,className:u.default.partLabel,children:Ae}),(0,f.jsx)(c.Input,{...$,ref:W,id:E.id,"aria-labelledby":qe(Ue),invalid:E.invalid||z?.part===`start`||void 0,value:F,onChange:e=>I(e.target.value),onBlur:()=>O&&U(`start`),onKeyDown:Y(`start`)})]}),(0,f.jsx)(`span`,{className:u.default.separator,"aria-hidden":`true`,children:`–`}),(0,f.jsxs)(`div`,{className:u.default.part,children:[(0,f.jsx)(`span`,{id:Z,className:u.default.partLabel,children:je}),(0,f.jsx)(c.Input,{...$,id:`${X}-end-input`,"aria-labelledby":qe(Z),invalid:E.invalid||z?.part===`end`||void 0,value:L,onChange:e=>R(e.target.value),onBlur:()=>O&&U(`end`),onKeyDown:Y(`end`),endElement:!E.readOnly&&(0,f.jsx)(r.Popover.Trigger,{asChild:!0,children:(0,f.jsx)(i.IconButton,{size:D===`sm`?`xs`:`sm`,variant:`ghost`,tone:`neutral`,"aria-label":Xe,disabled:E.disabled,children:(0,f.jsx)(a.CalendarIcon,{})})})})]})]})}),(0,f.jsx)(r.Popover.Content,{"aria-label":Pe,size:`sm`,maxWidth:`none`,initialFocus:Be,className:u.default.popup,children:(0,f.jsx)(ee.Calendar,{ref:J,mode:`range`,value:ze,onValueChange:Ve,min:g,max:_,isDateDisabled:v,locale:w,weekStartsOn:ae,size:D,today:ve,numberOfMonths:ye})})]}),S&&!T?.labelId&&(0,f.jsx)(o.VisuallyHidden,{id:He,children:S}),(0,f.jsx)(o.VisuallyHidden,{id:We,children:Fe(j)}),y!==void 0&&(0,f.jsx)(`input`,{type:`hidden`,name:y,value:N.start??``,disabled:E.disabled}),b!==void 0&&(0,f.jsx)(`input`,{type:`hidden`,name:b,value:N.end??``,disabled:E.disabled}),(0,f.jsx)(`div`,{"aria-live":`polite`,children:Q!=null&&(0,f.jsxs)(`p`,{id:Ge,className:u.default.error,children:[(0,f.jsx)(a.ErrorIcon,{size:`sm`,className:u.default.errorIcon}),(0,f.jsx)(`span`,{children:Q})]})})]})};exports.DateRangePicker=m;
|