@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,16 +1,17 @@
|
|
|
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 { ModalContent as
|
|
8
|
-
import {
|
|
3
|
+
import { cx as t } from "../../../utils/cx.mjs";
|
|
4
|
+
import { Button as n } from "../../primitives/Button/Button.mjs";
|
|
5
|
+
import { InfoIcon as r, WarningIcon as i } from "../../primitives/Icon/icons.mjs";
|
|
6
|
+
import { Modal as a, ModalBody as o, ModalDescription as s, ModalFooter as c, ModalHeader as l, ModalTitle as u, ModalTrigger as d } from "./Modal.mjs";
|
|
7
|
+
import f from "./Modal.module.css.mjs";
|
|
8
|
+
import { ModalContent as p } from "./ModalContent.mjs";
|
|
9
|
+
import { useMessages as m } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
|
|
9
10
|
import { useRef as h, useState as g } from "react";
|
|
10
11
|
import { jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
11
|
-
|
|
12
|
+
// src/components/overlays/Modal/ConfirmModal.tsx
|
|
12
13
|
function y({ open: y, defaultOpen: b = !1, onOpenChange: x, trigger: S, title: C, description: w, children: T, confirmLabel: E, cancelLabel: D, confirmLoadingText: O, tone: k = "primary", onConfirm: A, onCancel: j, size: M = "sm", finalFocusRef: N }) {
|
|
13
|
-
let P =
|
|
14
|
+
let P = m(), F = E ?? P.modal.confirm, I = D ?? P.modal.cancel, [L, R] = e({
|
|
14
15
|
value: y,
|
|
15
16
|
defaultValue: b,
|
|
16
17
|
onChange: x
|
|
@@ -30,11 +31,9 @@ function y({ open: y, defaultOpen: b = !1, onOpenChange: x, trigger: S, title: C
|
|
|
30
31
|
} catch {} finally {
|
|
31
32
|
B(!1);
|
|
32
33
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}, W = k === "danger" ? a : i;
|
|
37
|
-
return /* @__PURE__ */ v(c, {
|
|
34
|
+
} else R(!1);
|
|
35
|
+
}, W = k === "danger" ? i : r;
|
|
36
|
+
return /* @__PURE__ */ v(a, {
|
|
38
37
|
open: L,
|
|
39
38
|
onOpenChange: H,
|
|
40
39
|
role: "alertdialog",
|
|
@@ -43,25 +42,25 @@ function y({ open: y, defaultOpen: b = !1, onOpenChange: x, trigger: S, title: C
|
|
|
43
42
|
closeOnEscape: !z,
|
|
44
43
|
initialFocusRef: V,
|
|
45
44
|
finalFocusRef: N,
|
|
46
|
-
children: [S && /* @__PURE__ */ _(
|
|
47
|
-
/* @__PURE__ */ v(
|
|
45
|
+
children: [S && /* @__PURE__ */ _(d, { children: S }), /* @__PURE__ */ v(p, { children: [
|
|
46
|
+
/* @__PURE__ */ v(l, { children: [
|
|
48
47
|
/* @__PURE__ */ _("span", {
|
|
49
|
-
className:
|
|
48
|
+
className: t(f.confirmIcon, k === "danger" && f.confirmIconDanger),
|
|
50
49
|
"aria-hidden": "true",
|
|
51
50
|
children: /* @__PURE__ */ _(W, { size: "lg" })
|
|
52
51
|
}),
|
|
53
|
-
/* @__PURE__ */ _(
|
|
54
|
-
w != null && /* @__PURE__ */ _(
|
|
52
|
+
/* @__PURE__ */ _(u, { children: C }),
|
|
53
|
+
w != null && /* @__PURE__ */ _(s, { children: w })
|
|
55
54
|
] }),
|
|
56
|
-
T != null && /* @__PURE__ */ _(
|
|
57
|
-
/* @__PURE__ */ v(
|
|
55
|
+
T != null && /* @__PURE__ */ _(o, { children: T }),
|
|
56
|
+
/* @__PURE__ */ v(c, { children: [/* @__PURE__ */ _(n, {
|
|
58
57
|
ref: V,
|
|
59
58
|
variant: "outline",
|
|
60
59
|
tone: "neutral",
|
|
61
60
|
disabled: z,
|
|
62
61
|
onClick: () => H(!1),
|
|
63
62
|
children: I
|
|
64
|
-
}), /* @__PURE__ */ _(
|
|
63
|
+
}), /* @__PURE__ */ _(n, {
|
|
65
64
|
variant: "solid",
|
|
66
65
|
tone: k,
|
|
67
66
|
loading: z,
|
|
@@ -72,5 +71,4 @@ function y({ open: y, defaultOpen: b = !1, onOpenChange: x, trigger: S, title: C
|
|
|
72
71
|
] })]
|
|
73
72
|
});
|
|
74
73
|
}
|
|
75
|
-
//#endregion
|
|
76
74
|
export { y as ConfirmModal };
|
|
@@ -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("../../primitives/Typography/Typography.cjs.js"),r=require("../../../utils/refs.cjs.js"),i=require("./ModalContent.cjs.js"),a=require("./ModalContext.cjs.js"),o=require("./useScrollRegion.cjs.js"),s=require("./Modal.module.css.cjs.js"),c=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let l=require("react"),u=require("react/jsx-runtime");function d({open:t,defaultOpen:n=!1,onOpenChange:r,size:i=`md`,placement:o=`center`,mobileLayout:s=`sheet`,scrollBehavior:d=`inside`,role:f=`dialog`,closeOnOverlayPress:p,closeOnEscape:m=!0,initialFocusRef:h,finalFocusRef:g,showClose:_=!0,closeLabel:v,children:y}){let b=c.useMessages(),x=v??b.modal.close,[S,C]=e.useControllableState({value:t,defaultValue:n,onChange:r}),w=(0,l.useRef)(null),T=(0,l.useRef)(null),E=(0,l.useId)(),[D,O]=(0,l.useState)(null),[k,A]=(0,l.useState)(null);(0,l.useLayoutEffect)(()=>{if(!S)return;let e=document.activeElement;T.current=e instanceof HTMLElement&&e!==document.body?e:null},[S]);let j=(0,l.useCallback)(e=>(O(e),()=>O(t=>t===e?null:t)),[]),M=(0,l.useCallback)(e=>(A(e),()=>A(t=>t===e?null:t)),[]),N=(0,l.useMemo)(()=>({open:S,setOpen:e=>C(e),size:i,placement:o,mobileLayout:s,scrollBehavior:d,role:f,closeOnOverlayPress:p??f!==`alertdialog`,closeOnEscape:m,showClose:_,closeLabel:x,initialFocusRef:h,finalFocusRef:g,triggerRef:w,returnFocusRef:T,defaultTitleId:`${E}-title`,defaultDescriptionId:`${E}-description`,titleId:D,descriptionId:k,registerTitle:j,registerDescription:M}),[S,C,i,o,s,d,f,p,m,_,x,h,g,E,D,k,j,M]);return(0,u.jsx)(a.ModalContext.Provider,{value:N,children:y})}function f({children:e}){let t=a.useModalContext(`Modal.Trigger`),n=(0,l.isValidElement)(e)?e:null,i=n?.props.ref,o=(0,l.useMemo)(()=>r.mergeRefs(i,t.triggerRef),[i,t.triggerRef]);return n?(0,l.cloneElement)(n,{ref:o,"aria-haspopup":`dialog`,"aria-expanded":t.open,onClick:e=>{n.props.onClick?.(e),e.defaultPrevented||t.setOpen(!0)}}):e}function p({children:e}){let t=a.useModalContext(`Modal.Close`);if(!(0,l.isValidElement)(e))return e;let n=e;return(0,l.cloneElement)(n,{"data-modal-close":``,onClick:e=>{n.props.onClick?.(e),e.defaultPrevented||t.setOpen(!1)}})}function m({className:e,...n}){return(0,u.jsx)(`div`,{...n,className:t.cx(s.default.header,e)})}function h({level:e=2,size:r=`2xl`,id:i,className:o,...c}){let d=a.useModalContext(`Modal.Title`),f=i??d.defaultTitleId,{registerTitle:p}=d;return(0,l.useLayoutEffect)(()=>p(f),[p,f]),(0,u.jsx)(n.Heading,{...c,id:f,level:e,size:r,weight:`black`,className:t.cx(s.default.title,o)})}function g({id:e,className:r,...i}){let o=a.useModalContext(`Modal.Description`),c=e??o.defaultDescriptionId,{registerDescription:d}=o;return(0,l.useLayoutEffect)(()=>d(c),[d,c]),(0,u.jsx)(n.Text,{...i,id:c,tone:`muted`,size:`md`,className:t.cx(s.default.description,r)})}function _({className:e,ref:n,scrollRegionLabel:i,...c}){let d=a.useModalContext(`Modal.Body`),[f,p]=o.useScrollRegion(d.scrollBehavior===`inside`),m=(0,l.useMemo)(()=>r.mergeRefs(n,f),[n,f]),h=p?{tabIndex:0,role:`region`,"aria-label":i,"aria-labelledby":i?void 0:d.titleId??void 0}:{};return(0,u.jsx)(`div`,{...h,...c,ref:m,"data-modal-body":``,className:t.cx(s.default.body,e)})}function v({className:e,...n}){return(0,u.jsx)(`div`,{...n,"data-modal-footer":``,className:t.cx(s.default.footer,e)})}var y=Object.assign(d,{Trigger:f,Content:i.ModalContent,Header:m,Title:h,Description:g,Body:_,Footer:v,Close:p});exports.Modal=y,exports.ModalBody=_,exports.ModalClose=p,exports.ModalContent=i.ModalContent,exports.ModalDescription=g,exports.ModalFooter=v,exports.ModalHeader=m,exports.ModalTitle=h,exports.ModalTrigger=f;
|
|
@@ -1,20 +1,21 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { useControllableState as e } from "../../../hooks/useControllableState.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
3
|
+
import { cx as t } from "../../../utils/cx.mjs";
|
|
4
|
+
import { Heading as n, Text as r } from "../../primitives/Typography/Typography.mjs";
|
|
5
|
+
import { mergeRefs as i } from "../../../utils/refs.mjs";
|
|
6
|
+
import { ModalContent as a } from "./ModalContent.mjs";
|
|
6
7
|
import { ModalContext as o, useModalContext as s } from "./ModalContext.mjs";
|
|
7
|
-
import c from "./
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
8
|
+
import { useScrollRegion as c } from "./useScrollRegion.mjs";
|
|
9
|
+
import l from "./Modal.module.css.mjs";
|
|
10
|
+
import { useMessages as u } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
|
|
10
11
|
import { cloneElement as d, isValidElement as f, useCallback as p, useId as m, useLayoutEffect as h, useMemo as g, useRef as _, useState as v } from "react";
|
|
11
12
|
import { jsx as y } from "react/jsx-runtime";
|
|
12
|
-
|
|
13
|
-
function b({ open:
|
|
14
|
-
let T =
|
|
15
|
-
value:
|
|
16
|
-
defaultValue:
|
|
17
|
-
onChange:
|
|
13
|
+
// src/components/overlays/Modal/Modal.tsx
|
|
14
|
+
function b({ open: t, defaultOpen: n = !1, onOpenChange: r, size: i = "md", placement: a = "center", mobileLayout: s = "sheet", scrollBehavior: c = "inside", role: l = "dialog", closeOnOverlayPress: d, closeOnEscape: f = !0, initialFocusRef: b, finalFocusRef: x, showClose: S = !0, closeLabel: C, children: w }) {
|
|
15
|
+
let T = u(), E = C ?? T.modal.close, [D, O] = e({
|
|
16
|
+
value: t,
|
|
17
|
+
defaultValue: n,
|
|
18
|
+
onChange: r
|
|
18
19
|
}), k = _(null), A = _(null), j = m(), [M, N] = v(null), [P, F] = v(null);
|
|
19
20
|
h(() => {
|
|
20
21
|
if (!D) return;
|
|
@@ -24,12 +25,12 @@ function b({ open: n, defaultOpen: r = !1, onOpenChange: i, size: a = "md", plac
|
|
|
24
25
|
let I = p((e) => (N(e), () => N((t) => t === e ? null : t)), []), L = p((e) => (F(e), () => F((t) => t === e ? null : t)), []), R = g(() => ({
|
|
25
26
|
open: D,
|
|
26
27
|
setOpen: (e) => O(e),
|
|
27
|
-
size:
|
|
28
|
-
placement:
|
|
29
|
-
mobileLayout:
|
|
30
|
-
scrollBehavior:
|
|
31
|
-
role:
|
|
32
|
-
closeOnOverlayPress: d ??
|
|
28
|
+
size: i,
|
|
29
|
+
placement: a,
|
|
30
|
+
mobileLayout: s,
|
|
31
|
+
scrollBehavior: c,
|
|
32
|
+
role: l,
|
|
33
|
+
closeOnOverlayPress: d ?? l !== "alertdialog",
|
|
33
34
|
closeOnEscape: f,
|
|
34
35
|
showClose: S,
|
|
35
36
|
closeLabel: E,
|
|
@@ -46,11 +47,11 @@ function b({ open: n, defaultOpen: r = !1, onOpenChange: i, size: a = "md", plac
|
|
|
46
47
|
}), [
|
|
47
48
|
D,
|
|
48
49
|
O,
|
|
50
|
+
i,
|
|
49
51
|
a,
|
|
50
52
|
s,
|
|
51
53
|
c,
|
|
52
54
|
l,
|
|
53
|
-
u,
|
|
54
55
|
d,
|
|
55
56
|
f,
|
|
56
57
|
S,
|
|
@@ -69,13 +70,13 @@ function b({ open: n, defaultOpen: r = !1, onOpenChange: i, size: a = "md", plac
|
|
|
69
70
|
});
|
|
70
71
|
}
|
|
71
72
|
function x({ children: e }) {
|
|
72
|
-
let t = s("Modal.Trigger"),
|
|
73
|
-
return
|
|
73
|
+
let t = s("Modal.Trigger"), n = f(e) ? e : null, r = n?.props.ref, a = g(() => i(r, t.triggerRef), [r, t.triggerRef]);
|
|
74
|
+
return n ? d(n, {
|
|
74
75
|
ref: a,
|
|
75
76
|
"aria-haspopup": "dialog",
|
|
76
77
|
"aria-expanded": t.open,
|
|
77
78
|
onClick: (e) => {
|
|
78
|
-
|
|
79
|
+
n.props.onClick?.(e), e.defaultPrevented || t.setOpen(!0);
|
|
79
80
|
}
|
|
80
81
|
}) : e;
|
|
81
82
|
}
|
|
@@ -90,58 +91,58 @@ function S({ children: e }) {
|
|
|
90
91
|
}
|
|
91
92
|
});
|
|
92
93
|
}
|
|
93
|
-
function C({ className: e, ...
|
|
94
|
+
function C({ className: e, ...n }) {
|
|
94
95
|
return /* @__PURE__ */ y("div", {
|
|
95
|
-
...
|
|
96
|
-
className:
|
|
96
|
+
...n,
|
|
97
|
+
className: t(l.header, e)
|
|
97
98
|
});
|
|
98
99
|
}
|
|
99
|
-
function w({ level: e = 2, size:
|
|
100
|
-
let
|
|
101
|
-
return h(() => d(u), [d, u]), /* @__PURE__ */ y(
|
|
100
|
+
function w({ level: e = 2, size: r = "2xl", id: i, className: a, ...o }) {
|
|
101
|
+
let c = s("Modal.Title"), u = i ?? c.defaultTitleId, { registerTitle: d } = c;
|
|
102
|
+
return h(() => d(u), [d, u]), /* @__PURE__ */ y(n, {
|
|
102
103
|
...o,
|
|
103
104
|
id: u,
|
|
104
105
|
level: e,
|
|
105
|
-
size:
|
|
106
|
+
size: r,
|
|
106
107
|
weight: "black",
|
|
107
|
-
className:
|
|
108
|
+
className: t(l.title, a)
|
|
108
109
|
});
|
|
109
110
|
}
|
|
110
|
-
function T({ id: e, className:
|
|
111
|
-
let
|
|
112
|
-
return h(() =>
|
|
113
|
-
...
|
|
111
|
+
function T({ id: e, className: n, ...i }) {
|
|
112
|
+
let a = s("Modal.Description"), o = e ?? a.defaultDescriptionId, { registerDescription: c } = a;
|
|
113
|
+
return h(() => c(o), [c, o]), /* @__PURE__ */ y(r, {
|
|
114
|
+
...i,
|
|
114
115
|
id: o,
|
|
115
116
|
tone: "muted",
|
|
116
117
|
size: "md",
|
|
117
|
-
className:
|
|
118
|
+
className: t(l.description, n)
|
|
118
119
|
});
|
|
119
120
|
}
|
|
120
|
-
function E({ className: e, ref:
|
|
121
|
-
let o = s("Modal.Body"), [
|
|
121
|
+
function E({ className: e, ref: n, scrollRegionLabel: r, ...a }) {
|
|
122
|
+
let o = s("Modal.Body"), [u, d] = c(o.scrollBehavior === "inside"), f = g(() => i(n, u), [n, u]), p = d ? {
|
|
122
123
|
tabIndex: 0,
|
|
123
124
|
role: "region",
|
|
124
|
-
"aria-label":
|
|
125
|
-
"aria-labelledby":
|
|
125
|
+
"aria-label": r,
|
|
126
|
+
"aria-labelledby": r ? void 0 : o.titleId ?? void 0
|
|
126
127
|
} : {};
|
|
127
128
|
return /* @__PURE__ */ y("div", {
|
|
128
129
|
...p,
|
|
129
130
|
...a,
|
|
130
131
|
ref: f,
|
|
131
132
|
"data-modal-body": "",
|
|
132
|
-
className:
|
|
133
|
+
className: t(l.body, e)
|
|
133
134
|
});
|
|
134
135
|
}
|
|
135
|
-
function D({ className: e, ...
|
|
136
|
+
function D({ className: e, ...n }) {
|
|
136
137
|
return /* @__PURE__ */ y("div", {
|
|
137
|
-
...
|
|
138
|
+
...n,
|
|
138
139
|
"data-modal-footer": "",
|
|
139
|
-
className:
|
|
140
|
+
className: t(l.footer, e)
|
|
140
141
|
});
|
|
141
142
|
}
|
|
142
143
|
var O = Object.assign(b, {
|
|
143
144
|
Trigger: x,
|
|
144
|
-
Content:
|
|
145
|
+
Content: a,
|
|
145
146
|
Header: C,
|
|
146
147
|
Title: w,
|
|
147
148
|
Description: T,
|
|
@@ -149,5 +150,4 @@ var O = Object.assign(b, {
|
|
|
149
150
|
Footer: D,
|
|
150
151
|
Close: S
|
|
151
152
|
});
|
|
152
|
-
|
|
153
|
-
export { O as Modal, E as ModalBody, S as ModalClose, l as ModalContent, T as ModalDescription, D as ModalFooter, C as ModalHeader, w as ModalTitle, x as ModalTrigger };
|
|
153
|
+
export { O as Modal, E as ModalBody, S as ModalClose, a as ModalContent, T as ModalDescription, D as ModalFooter, C as ModalHeader, w as ModalTitle, x as ModalTrigger };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/components/overlays/Modal/Modal.module.css
|
|
2
2
|
var e = "_root_8lyks_39", t = "_overlay_8lyks_55", n = "_overlayIn_8lyks_1", r = "_overlayOut_8lyks_1", i = "_positioner_8lyks_97", a = "_scrollInside_8lyks_121", o = "_scrollOutside_8lyks_129", s = "_positionerFull_8lyks_137", c = "_placementCenter_8lyks_147", l = "_placementTop_8lyks_149", u = "_content_8lyks_161", d = "_contentInSheet_8lyks_1", f = "_contentOutSheet_8lyks_1", p = "_sizeSm_8lyks_233", m = "_sizeMd_8lyks_235", h = "_sizeLg_8lyks_237", g = "_sizeXl_8lyks_239", _ = "_sizeFull_8lyks_247", v = "_inner_8lyks_269", y = "_closeButton_8lyks_287", b = "_header_8lyks_305", x = "_hasClose_8lyks_319", S = "_title_8lyks_327", C = "_description_8lyks_343", w = "_body_8lyks_355", T = "_footer_8lyks_421", E = "_confirmIcon_8lyks_449", D = "_confirmIconDanger_8lyks_473", O = "_contentIn_8lyks_1", k = "_contentOut_8lyks_1", A = "_mobileCard_8lyks_627", j = {
|
|
3
3
|
root: e,
|
|
4
4
|
overlay: t,
|
|
@@ -32,5 +32,4 @@ var e = "_root_8lyks_39", t = "_overlay_8lyks_55", n = "_overlayIn_8lyks_1", r =
|
|
|
32
32
|
contentOut: k,
|
|
33
33
|
mobileCard: A
|
|
34
34
|
};
|
|
35
|
-
//#endregion
|
|
36
35
|
export { w as body, y as closeButton, E as confirmIcon, D as confirmIconDanger, u as content, O as contentIn, d as contentInSheet, k as contentOut, f as contentOutSheet, j as default, C as description, T as footer, x as hasClose, b as header, v as inner, A as mobileCard, t as overlay, n as overlayIn, r as overlayOut, c as placementCenter, l as placementTop, i as positioner, s as positionerFull, e as root, a as scrollInside, o as scrollOutside, _ as sizeFull, h as sizeLg, m as sizeMd, p as sizeSm, g as sizeXl, S as title };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../../../hooks/useOverlayLayer.cjs.js"),t=require("../../../hooks/
|
|
1
|
+
"use client";const e=require("../../../hooks/useOverlayLayer.cjs.js"),t=require("../../../hooks/useFocusTrap.cjs.js"),n=require("../../../hooks/useInertOutside.cjs.js"),r=require("../../../hooks/useScrollLock.cjs.js"),i=require("../../../hooks/useDismiss.cjs.js"),a=require("../../../utils/cx.cjs.js"),o=require("../../primitives/Button/Button.cjs.js"),s=require("../../primitives/Icon/icons.cjs.js"),c=require("../../utilities/Portal/Portal.cjs.js"),l=require("../../../utils/refs.cjs.js"),u=require("./ModalContext.cjs.js"),d=require("./Modal.module.css.cjs.js");let f=require("react"),p=require("react/jsx-runtime");var m={sm:d.default.sizeSm,md:d.default.sizeMd,lg:d.default.sizeLg,xl:d.default.sizeXl,full:d.default.sizeFull},h={center:d.default.placementCenter,top:d.default.placementTop},g={inside:d.default.scrollInside,outside:d.default.scrollOutside},_=globalThis.process?.env?.NODE_ENV!==`production`;function v(e){return Math.max(0,...e.split(`,`).map(e=>{let t=parseFloat(e);return Number.isNaN(t)?0:e.trim().endsWith(`ms`)?t:t*1e3}))}var y=({overlayClassName:y,className:b,children:x,ref:S,onFocus:C,"aria-labelledby":w,"aria-describedby":T,...E})=>{let D=u.useModalContext(`Modal.Content`),{open:O,setOpen:k}=D,[A,j]=(0,f.useState)(O);O&&!A&&j(!0);let[M,N]=(0,f.useState)(null),[P,F]=(0,f.useState)(null),I=(0,f.useRef)(null),L=(0,f.useMemo)(()=>l.mergeRefs(S,I,F),[S]),R=(0,f.useRef)(D);R.current=D;let z=(0,f.useRef)(null),B=(0,f.useRef)(null),V=e.useOverlayLayer({active:O&&M!==null,modal:!0,elements:()=>[M]});(0,f.useLayoutEffect)(()=>{if(!O||!M)return;let e=r.lockScroll(),t=n.inertOutsideLayer(V.id,M);return()=>{t(),e(),z.current=null;let{finalFocusRef:n,returnFocusRef:r,triggerRef:i}=R.current;[n?.current,r.current,i.current].find(e=>!!e&&e.isConnected&&!e.closest(`[inert]`))?.focus()}},[O,M,V.id]);let H=O&&!V.hasModalAbove&&P!==null;(0,f.useLayoutEffect)(()=>{let e=I.current;if(!H||!e)return;let{initialFocusRef:n,role:r}=R.current,i=e.querySelector(`[data-modal-footer]`),a=e.querySelector(`[data-modal-body]`),o=z.current;B.current=(o&&e.contains(o)?o:null)??n?.current??(r===`alertdialog`&&i?i.querySelector(`[data-modal-close]`)??t.getFocusable(i)[0]:null)??(a?t.getFocusable(a)[0]:null)??e},[H]),t.useFocusTrap(P,{active:O&&P!==null,initialFocusRef:B,restoreFocus:!1,layer:V}),i.useDismiss([I],{active:O,onDismiss:()=>k(!1),escapeKey:D.closeOnEscape,outsidePress:!1,layer:V}),(0,f.useEffect)(()=>{if(O||!A)return;let e=I.current,t=e?v(window.getComputedStyle(e).animationDuration):0;if(!e||t===0){j(!1);return}let n=()=>j(!1),r=t=>{t.target===e&&n()};e.addEventListener(`animationend`,r);let i=window.setTimeout(n,t+50);return()=>{e.removeEventListener(`animationend`,r),window.clearTimeout(i)}},[O,A]);let U=E[`aria-label`];(0,f.useEffect)(()=>{_&&O&&P&&(D.titleId||w||U||console.warn(`[Modal] Add a <Modal.Title> (or pass aria-label / aria-labelledby to <Modal.Content>) so the dialog has an accessible name.`))},[O,P,D.titleId,w,U]);let W=(0,f.useRef)(!1),G=e=>{W.current=e.target===e.currentTarget&&V.getIsTopmost()},K=e=>{let t=W.current;W.current=!1,t&&e.target===e.currentTarget&&D.closeOnOverlayPress&&O&&k(!1)},q=e=>{C?.(e),e.target instanceof HTMLElement&&e.currentTarget.contains(e.target)&&(z.current=e.target)};if(!O&&!A)return null;let J=w??D.titleId??void 0,Y=[T,D.descriptionId].filter(Boolean).join(` `)||void 0,X=O?`open`:`closed`;return(0,p.jsx)(c.Portal,{children:(0,p.jsx)(e.OverlayLayerProvider,{layer:V,children:(0,p.jsxs)(`div`,{ref:N,className:d.default.root,"data-state":X,inert:!O,children:[(0,p.jsx)(`div`,{className:a.cx(d.default.overlay,y),"data-state":X,"aria-hidden":`true`}),(0,p.jsx)(`div`,{className:a.cx(d.default.positioner,h[D.placement],g[D.scrollBehavior],D.size===`full`&&d.default.positionerFull,D.mobileLayout===`card`&&D.size!==`full`&&d.default.mobileCard),onPointerDown:G,onClick:K,children:(0,p.jsxs)(`div`,{role:D.role,"aria-modal":`true`,"aria-labelledby":J,"aria-describedby":Y,tabIndex:-1,...E,ref:L,onFocus:q,className:a.cx(d.default.content,m[D.size],g[D.scrollBehavior],D.showClose&&d.default.hasClose,b),"data-state":X,"data-size":D.size,children:[D.showClose&&(0,p.jsx)(o.IconButton,{"aria-label":D.closeLabel,variant:`ghost`,tone:`neutral`,size:`md`,className:d.default.closeButton,onClick:()=>k(!1),children:(0,p.jsx)(s.CloseIcon,{})}),(0,p.jsx)(`div`,{className:d.default.inner,children:x})]})})]})})})};exports.ModalContent=y;
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { OverlayLayerProvider as e, useOverlayLayer as t } from "../../../hooks/useOverlayLayer.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
3
|
+
import { getFocusable as n, useFocusTrap as r } from "../../../hooks/useFocusTrap.mjs";
|
|
4
|
+
import { inertOutsideLayer as i } from "../../../hooks/useInertOutside.mjs";
|
|
5
|
+
import { lockScroll as a } from "../../../hooks/useScrollLock.mjs";
|
|
6
|
+
import { useDismiss as o } from "../../../hooks/useDismiss.mjs";
|
|
7
|
+
import { cx as s } from "../../../utils/cx.mjs";
|
|
8
|
+
import { IconButton as c } from "../../primitives/Button/Button.mjs";
|
|
9
|
+
import { CloseIcon as l } from "../../primitives/Icon/icons.mjs";
|
|
10
|
+
import { Portal as u } from "../../utilities/Portal/Portal.mjs";
|
|
11
|
+
import { mergeRefs as d } from "../../../utils/refs.mjs";
|
|
11
12
|
import { useModalContext as f } from "./ModalContext.mjs";
|
|
12
13
|
import p from "./Modal.module.css.mjs";
|
|
13
14
|
import { useEffect as m, useLayoutEffect as h, useMemo as g, useRef as _, useState as v } from "react";
|
|
14
15
|
import { jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
15
|
-
|
|
16
|
+
// src/components/overlays/Modal/ModalContent.tsx
|
|
16
17
|
var x = {
|
|
17
18
|
sm: p.sizeSm,
|
|
18
19
|
md: p.sizeMd,
|
|
@@ -35,7 +36,7 @@ function T(e) {
|
|
|
35
36
|
var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "aria-labelledby": j, "aria-describedby": M, ...N }) => {
|
|
36
37
|
let P = f("Modal.Content"), { open: F, setOpen: I } = P, [L, R] = v(F);
|
|
37
38
|
F && !L && R(!0);
|
|
38
|
-
let [z, B] = v(null), [V, H] = v(null), U = _(null), W = g(() =>
|
|
39
|
+
let [z, B] = v(null), [V, H] = v(null), U = _(null), W = g(() => d(k, U, H), [k]), G = _(P);
|
|
39
40
|
G.current = P;
|
|
40
41
|
let K = _(null), q = _(null), J = t({
|
|
41
42
|
active: F && z !== null,
|
|
@@ -44,7 +45,7 @@ var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "
|
|
|
44
45
|
});
|
|
45
46
|
h(() => {
|
|
46
47
|
if (!F || !z) return;
|
|
47
|
-
let e =
|
|
48
|
+
let e = a(), t = i(J.id, z);
|
|
48
49
|
return () => {
|
|
49
50
|
t(), e(), K.current = null;
|
|
50
51
|
let { finalFocusRef: n, returnFocusRef: r, triggerRef: i } = G.current;
|
|
@@ -63,14 +64,14 @@ var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "
|
|
|
63
64
|
h(() => {
|
|
64
65
|
let e = U.current;
|
|
65
66
|
if (!Y || !e) return;
|
|
66
|
-
let { initialFocusRef: t, role:
|
|
67
|
-
q.current = (o && e.contains(o) ? o : null) ?? t?.current ?? (
|
|
68
|
-
}, [Y]),
|
|
67
|
+
let { initialFocusRef: t, role: r } = G.current, i = e.querySelector("[data-modal-footer]"), a = e.querySelector("[data-modal-body]"), o = K.current;
|
|
68
|
+
q.current = (o && e.contains(o) ? o : null) ?? t?.current ?? (r === "alertdialog" && i ? i.querySelector("[data-modal-close]") ?? n(i)[0] : null) ?? (a ? n(a)[0] : null) ?? e;
|
|
69
|
+
}, [Y]), r(V, {
|
|
69
70
|
active: F && V !== null,
|
|
70
71
|
initialFocusRef: q,
|
|
71
72
|
restoreFocus: !1,
|
|
72
73
|
layer: J
|
|
73
|
-
}),
|
|
74
|
+
}), o([U], {
|
|
74
75
|
active: F,
|
|
75
76
|
onDismiss: () => I(!1),
|
|
76
77
|
escapeKey: P.closeOnEscape,
|
|
@@ -94,7 +95,7 @@ var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "
|
|
|
94
95
|
}, [F, L]);
|
|
95
96
|
let X = N["aria-label"];
|
|
96
97
|
m(() => {
|
|
97
|
-
w && F && V &&
|
|
98
|
+
w && F && V && (P.titleId || j || X || console.warn("[Modal] Add a <Modal.Title> (or pass aria-label / aria-labelledby to <Modal.Content>) so the dialog has an accessible name."));
|
|
98
99
|
}, [
|
|
99
100
|
F,
|
|
100
101
|
V,
|
|
@@ -112,7 +113,7 @@ var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "
|
|
|
112
113
|
};
|
|
113
114
|
if (!F && !L) return null;
|
|
114
115
|
let ne = j ?? P.titleId ?? void 0, re = [M, P.descriptionId].filter(Boolean).join(" ") || void 0, $ = F ? "open" : "closed";
|
|
115
|
-
return /* @__PURE__ */ y(
|
|
116
|
+
return /* @__PURE__ */ y(u, { children: /* @__PURE__ */ y(e, {
|
|
116
117
|
layer: J,
|
|
117
118
|
children: /* @__PURE__ */ b("div", {
|
|
118
119
|
ref: B,
|
|
@@ -120,11 +121,11 @@ var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "
|
|
|
120
121
|
"data-state": $,
|
|
121
122
|
inert: !F,
|
|
122
123
|
children: [/* @__PURE__ */ y("div", {
|
|
123
|
-
className:
|
|
124
|
+
className: s(p.overlay, E),
|
|
124
125
|
"data-state": $,
|
|
125
126
|
"aria-hidden": "true"
|
|
126
127
|
}), /* @__PURE__ */ y("div", {
|
|
127
|
-
className:
|
|
128
|
+
className: s(p.positioner, S[P.placement], C[P.scrollBehavior], P.size === "full" && p.positionerFull, P.mobileLayout === "card" && P.size !== "full" && p.mobileCard),
|
|
128
129
|
onPointerDown: Q,
|
|
129
130
|
onClick: ee,
|
|
130
131
|
children: /* @__PURE__ */ b("div", {
|
|
@@ -136,17 +137,17 @@ var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "
|
|
|
136
137
|
...N,
|
|
137
138
|
ref: W,
|
|
138
139
|
onFocus: te,
|
|
139
|
-
className:
|
|
140
|
+
className: s(p.content, x[P.size], C[P.scrollBehavior], P.showClose && p.hasClose, D),
|
|
140
141
|
"data-state": $,
|
|
141
142
|
"data-size": P.size,
|
|
142
|
-
children: [P.showClose && /* @__PURE__ */ y(
|
|
143
|
+
children: [P.showClose && /* @__PURE__ */ y(c, {
|
|
143
144
|
"aria-label": P.closeLabel,
|
|
144
145
|
variant: "ghost",
|
|
145
146
|
tone: "neutral",
|
|
146
147
|
size: "md",
|
|
147
148
|
className: p.closeButton,
|
|
148
149
|
onClick: () => I(!1),
|
|
149
|
-
children: /* @__PURE__ */ y(
|
|
150
|
+
children: /* @__PURE__ */ y(l, {})
|
|
150
151
|
}), /* @__PURE__ */ y("div", {
|
|
151
152
|
className: p.inner,
|
|
152
153
|
children: O
|
|
@@ -156,5 +157,4 @@ var E = ({ overlayClassName: E, className: D, children: O, ref: k, onFocus: A, "
|
|
|
156
157
|
})
|
|
157
158
|
}) });
|
|
158
159
|
};
|
|
159
|
-
//#endregion
|
|
160
160
|
export { E as ModalContent };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let e=require("react");var t=(0,e.createContext)(null);function n(n){let r=(0,e.useContext)(t);if(!r)throw Error(`<${n}> must be used inside <Modal>.`);return r}exports.ModalContext=t,exports.useModalContext=n;
|
|
1
|
+
"use client";let e=require("react");var t=(0,e.createContext)(null);function n(n){let r=(0,e.useContext)(t);if(!r)throw Error(`<${n}> must be used inside <Modal>.`);return r}exports.ModalContext=t,exports.useModalContext=n;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { createContext as e, useContext as t } from "react";
|
|
2
|
-
|
|
3
|
+
// src/components/overlays/Modal/ModalContext.ts
|
|
3
4
|
var n = e(null);
|
|
4
5
|
function r(e) {
|
|
5
6
|
let r = t(n);
|
|
6
7
|
if (!r) throw Error(`<${e}> must be used inside <Modal>.`);
|
|
7
8
|
return r;
|
|
8
9
|
}
|
|
9
|
-
//#endregion
|
|
10
10
|
export { n as ModalContext, r as useModalContext };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let e=require("react");function t(t){let[n,r]=(0,e.useState)(null),[i,a]=(0,e.useState)(!1),o=(0,e.useCallback)(e=>r(e),[]);return(0,e.useEffect)(()=>{if(!t||!n){a(!1);return}let e=()=>a(n.scrollHeight>n.clientHeight+1);if(e(),typeof ResizeObserver>`u`)return;let r=new ResizeObserver(e),i=()=>{r.disconnect(),r.observe(n),Array.from(n.children).forEach(e=>r.observe(e))};i();let o=new MutationObserver(()=>{i(),e()});return o.observe(n,{childList:!0}),()=>{r.disconnect(),o.disconnect()}},[t,n]),[o,i]}exports.useScrollRegion=t;
|
|
1
|
+
"use client";let e=require("react");function t(t){let[n,r]=(0,e.useState)(null),[i,a]=(0,e.useState)(!1),o=(0,e.useCallback)(e=>r(e),[]);return(0,e.useEffect)(()=>{if(!t||!n){a(!1);return}let e=()=>a(n.scrollHeight>n.clientHeight+1);if(e(),typeof ResizeObserver>`u`)return;let r=new ResizeObserver(e),i=()=>{r.disconnect(),r.observe(n),Array.from(n.children).forEach(e=>r.observe(e))};i();let o=new MutationObserver(()=>{i(),e()});return o.observe(n,{childList:!0}),()=>{r.disconnect(),o.disconnect()}},[t,n]),[o,i]}exports.useScrollRegion=t;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { useCallback as e, useEffect as t, useState as n } from "react";
|
|
2
|
-
|
|
3
|
+
// src/components/overlays/Modal/useScrollRegion.ts
|
|
3
4
|
function r(r) {
|
|
4
5
|
let [i, a] = n(null), [o, s] = n(!1), c = e((e) => a(e), []);
|
|
5
6
|
return t(() => {
|
|
@@ -21,5 +22,4 @@ function r(r) {
|
|
|
21
22
|
};
|
|
22
23
|
}, [r, i]), [c, o];
|
|
23
24
|
}
|
|
24
|
-
//#endregion
|
|
25
25
|
export { r as useScrollRegion };
|
|
@@ -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("../../primitives/Button/Button.cjs.js"),r=require("../../../hooks/useMergedRef.cjs.js"),i=require("../../../utils/refs.cjs.js"),a=require("../../../utils/slot.cjs.js"),o=require("./PopoverContext.cjs.js"),s=require("./PopoverContent.cjs.js"),c=require("./Popover.module.css.cjs.js"),l=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let u=require("react"),d=require("react/jsx-runtime");var f=({children:t,open:n,defaultOpen:r=!1,onOpenChange:i,placement:a=`bottom`,offset:s,modal:c=!1,closeOnOutsidePress:l=!0,closeOnEscape:f=!0,closeOnFocusOut:p=!0,closeOnAnchorFocus:m=!1})=>{let[h,g]=e.useControllableState({value:n,defaultValue:r,onChange:i}),_=(0,u.useRef)(null),v=(0,u.useRef)(null),y=(0,u.useRef)(null),b=(0,u.useRef)(null),x=(0,u.useRef)(`auto`),[S,C]=(0,u.useState)(!1),[w,T]=(0,u.useState)(!1),E=(0,u.useId)(),D=(0,u.useCallback)((e,t=`auto`)=>{e||(x.current=t),g(e)},[g]);(0,u.useLayoutEffect)(()=>{if(h){x.current=`auto`;let e=document.activeElement;b.current=e instanceof HTMLElement&&e!==document.body?e:null}},[h]),(0,u.useEffect)(()=>{let e=v.current;if(!h||!m||!e)return;let t=e=>{let t=e.target;t&&!_.current?.contains(t)&&D(!1,`none`)};return e.addEventListener(`focusin`,t),()=>e.removeEventListener(`focusin`,t)},[h,m,D]);let O=(0,u.useMemo)(()=>({open:h,setOpen:D,placement:a,offset:s,modal:c,closeOnOutsidePress:l,closeOnEscape:f,closeOnFocusOut:p,triggerRef:_,anchorRef:v,contentRef:y,returnFocusRef:b,restoreModeRef:x,contentId:`${E}-content`,titleId:`${E}-title`,descriptionId:`${E}-description`,hasTitle:S,hasDescription:w,setHasTitle:C,setHasDescription:T}),[h,D,a,s,c,l,f,p,E,S,w]);return(0,d.jsx)(o.PopoverContext.Provider,{value:O,children:t})};function p(e){let{variant:t,tone:n,size:r,radius:i,startIcon:a,endIcon:o,fullWidth:s,...c}=e;return c}var m=({children:e,asChild:t,onClick:s,ref:c,...l})=>{let u=o.usePopoverContext(`Popover.Trigger`),f=t??i.isSingleElement(e),m=f&&i.isSingleElement(e)?i.getChildRef(e):void 0,h=r.useMergedRef(u.triggerRef,c,m),g=e=>{s?.(e),e.defaultPrevented||u.setOpen(!u.open,`force`)},_={"aria-haspopup":`dialog`,"aria-expanded":u.open,"aria-controls":u.open?u.contentId:void 0,"data-state":u.open?`open`:`closed`};return f&&i.isSingleElement(e)?a.cloneSlot(e,{...p(l),..._,onClick:g},h):(0,d.jsx)(n.Button,{...l,..._,ref:h,onClick:g,children:e})},h=({children:e,asChild:t,ref:n,...s})=>{let c=o.usePopoverContext(`Popover.Anchor`),l=t??i.isSingleElement(e),u=l&&i.isSingleElement(e)?i.getChildRef(e):void 0,f=r.useMergedRef(c.anchorRef,n,u);return l&&i.isSingleElement(e)?a.cloneSlot(e,s,f):(0,d.jsx)(`div`,{...s,ref:f,children:e})},g=({level:e=2,className:n,id:r,...i})=>{let a=o.usePopoverContext(`Popover.Title`),{setHasTitle:s}=a;(0,u.useLayoutEffect)(()=>(s(!0),()=>s(!1)),[s]);let l=`h${e}`;return(0,d.jsx)(l,{...i,id:r??a.titleId,className:t.cx(c.default.title,n)})},_=({className:e,id:n,...r})=>{let i=o.usePopoverContext(`Popover.Description`),{setHasDescription:a}=i;return(0,u.useLayoutEffect)(()=>(a(!0),()=>a(!1)),[a]),(0,d.jsx)(`p`,{...r,id:n??i.descriptionId,className:t.cx(c.default.description,e)})},v=({children:e,asChild:t,onClick:s,ref:c,variant:u=`ghost`,...f})=>{let m=l.useMessages(),h=e??m.popover.close,g=o.usePopoverContext(`Popover.Close`),_=t??i.isSingleElement(h),v=_&&i.isSingleElement(h)?i.getChildRef(h):void 0,y=r.useMergedRef(c,v),b=e=>{s?.(e),e.defaultPrevented||g.setOpen(!1,`force`)};return _&&i.isSingleElement(h)?a.cloneSlot(h,{...p(f),onClick:b},y):(0,d.jsx)(n.Button,{...f,variant:u,ref:y,onClick:b,children:h})},y=Object.assign(f,{Trigger:m,Anchor:h,Content:s.PopoverContent,Title:g,Description:_,Close:v});exports.Popover=y,exports.PopoverAnchor=h,exports.PopoverClose=v,exports.PopoverContent=s.PopoverContent,exports.PopoverDescription=_,exports.PopoverTitle=g,exports.PopoverTrigger=m;
|