@vjdesigns/vjdesigns-ui 2.4.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 +133 -76
- package/dist/ai/registry.json +82 -61
- 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.mjs +2 -2
- package/dist/components/data-display/Badge/Badge.module.css.mjs +1 -2
- 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.mjs +111 -111
- package/dist/components/navigation/Navbar/Navbar.module.css.mjs +1 -2
- 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.mjs +1 -2
- package/dist/i18n/merge.mjs +1 -2
- package/dist/i18n/plural.mjs +1 -2
- package/dist/index.cjs.js +1 -1
- package/dist/index.mjs +114 -114
- package/dist/locales/ar.mjs +1 -2
- package/dist/locales/bn.mjs +1 -2
- package/dist/locales/cs.mjs +1 -2
- package/dist/locales/da.mjs +1 -2
- package/dist/locales/de.mjs +1 -2
- package/dist/locales/el.mjs +1 -2
- package/dist/locales/es.mjs +1 -2
- package/dist/locales/fa.mjs +1 -2
- package/dist/locales/fi.mjs +1 -2
- package/dist/locales/fr.mjs +1 -2
- package/dist/locales/he.mjs +1 -2
- package/dist/locales/hi.mjs +1 -2
- package/dist/locales/hu.mjs +1 -2
- package/dist/locales/id.mjs +1 -2
- package/dist/locales/it.mjs +1 -2
- package/dist/locales/ja.mjs +1 -2
- package/dist/locales/ko.mjs +1 -2
- package/dist/locales/nb.mjs +1 -2
- package/dist/locales/nl.mjs +1 -2
- package/dist/locales/pl.mjs +1 -2
- package/dist/locales/pt-BR.mjs +1 -2
- package/dist/locales/ro.mjs +1 -2
- package/dist/locales/ru.mjs +1 -2
- package/dist/locales/sv.mjs +1 -2
- package/dist/locales/th.mjs +1 -2
- package/dist/locales/tr.mjs +1 -2
- package/dist/locales/uk.mjs +1 -2
- package/dist/locales/ur.mjs +1 -2
- package/dist/locales/vi.mjs +1 -2
- package/dist/locales/zh-Hans.mjs +1 -2
- package/dist/locales/zh-Hant.mjs +1 -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,17 +1,18 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { useControllableState as e } from "../../../hooks/useControllableState.mjs";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { useMergedRef as
|
|
5
|
-
import {
|
|
3
|
+
import { cx as t } from "../../../utils/cx.mjs";
|
|
4
|
+
import { Button as n } from "../../primitives/Button/Button.mjs";
|
|
5
|
+
import { useMergedRef as r } from "../../../hooks/useMergedRef.mjs";
|
|
6
|
+
import { getChildRef as i, isSingleElement as a } from "../../../utils/refs.mjs";
|
|
6
7
|
import { cloneSlot as o } from "../../../utils/slot.mjs";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
8
|
+
import { PopoverContext as s, usePopoverContext as c } from "./PopoverContext.mjs";
|
|
9
|
+
import { PopoverContent as l } from "./PopoverContent.mjs";
|
|
9
10
|
import u from "./Popover.module.css.mjs";
|
|
10
|
-
import {
|
|
11
|
+
import { useMessages as d } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
|
|
11
12
|
import { useCallback as f, useEffect as p, useId as m, useLayoutEffect as h, useMemo as g, useRef as _, useState as v } from "react";
|
|
12
13
|
import { jsx as y } from "react/jsx-runtime";
|
|
13
|
-
|
|
14
|
-
var b = ({ children: t, open: n, defaultOpen: r = !1, onOpenChange: i, placement: a = "bottom", offset: o, modal:
|
|
14
|
+
// src/components/overlays/Popover/Popover.tsx
|
|
15
|
+
var b = ({ children: t, open: n, defaultOpen: r = !1, onOpenChange: i, placement: a = "bottom", offset: o, modal: c = !1, closeOnOutsidePress: l = !0, closeOnEscape: u = !0, closeOnFocusOut: d = !0, closeOnAnchorFocus: b = !1 }) => {
|
|
15
16
|
let [x, S] = e({
|
|
16
17
|
value: n,
|
|
17
18
|
defaultValue: r,
|
|
@@ -43,7 +44,7 @@ var b = ({ children: t, open: n, defaultOpen: r = !1, onOpenChange: i, placement
|
|
|
43
44
|
setOpen: N,
|
|
44
45
|
placement: a,
|
|
45
46
|
offset: o,
|
|
46
|
-
modal:
|
|
47
|
+
modal: c,
|
|
47
48
|
closeOnOutsidePress: l,
|
|
48
49
|
closeOnEscape: u,
|
|
49
50
|
closeOnFocusOut: d,
|
|
@@ -64,7 +65,7 @@ var b = ({ children: t, open: n, defaultOpen: r = !1, onOpenChange: i, placement
|
|
|
64
65
|
N,
|
|
65
66
|
a,
|
|
66
67
|
o,
|
|
67
|
-
|
|
68
|
+
c,
|
|
68
69
|
l,
|
|
69
70
|
u,
|
|
70
71
|
d,
|
|
@@ -72,7 +73,7 @@ var b = ({ children: t, open: n, defaultOpen: r = !1, onOpenChange: i, placement
|
|
|
72
73
|
O,
|
|
73
74
|
A
|
|
74
75
|
]);
|
|
75
|
-
return /* @__PURE__ */ y(
|
|
76
|
+
return /* @__PURE__ */ y(s.Provider, {
|
|
76
77
|
value: P,
|
|
77
78
|
children: t
|
|
78
79
|
});
|
|
@@ -81,59 +82,59 @@ function x(e) {
|
|
|
81
82
|
let { variant: t, tone: n, size: r, radius: i, startIcon: a, endIcon: o, fullWidth: s, ...c } = e;
|
|
82
83
|
return c;
|
|
83
84
|
}
|
|
84
|
-
var S = ({ children: e, asChild: t, onClick:
|
|
85
|
-
let d =
|
|
86
|
-
|
|
85
|
+
var S = ({ children: e, asChild: t, onClick: s, ref: l, ...u }) => {
|
|
86
|
+
let d = c("Popover.Trigger"), f = t ?? a(e), p = f && a(e) ? i(e) : void 0, m = r(d.triggerRef, l, p), h = (e) => {
|
|
87
|
+
s?.(e), e.defaultPrevented || d.setOpen(!d.open, "force");
|
|
87
88
|
}, g = {
|
|
88
89
|
"aria-haspopup": "dialog",
|
|
89
90
|
"aria-expanded": d.open,
|
|
90
91
|
"aria-controls": d.open ? d.contentId : void 0,
|
|
91
92
|
"data-state": d.open ? "open" : "closed"
|
|
92
93
|
};
|
|
93
|
-
return f &&
|
|
94
|
+
return f && a(e) ? o(e, {
|
|
94
95
|
...x(u),
|
|
95
96
|
...g,
|
|
96
97
|
onClick: h
|
|
97
|
-
}, m) : /* @__PURE__ */ y(
|
|
98
|
+
}, m) : /* @__PURE__ */ y(n, {
|
|
98
99
|
...u,
|
|
99
100
|
...g,
|
|
100
101
|
ref: m,
|
|
101
102
|
onClick: h,
|
|
102
103
|
children: e
|
|
103
104
|
});
|
|
104
|
-
}, C = ({ children: e, asChild: t, ref:
|
|
105
|
-
let
|
|
106
|
-
return u &&
|
|
105
|
+
}, C = ({ children: e, asChild: t, ref: n, ...s }) => {
|
|
106
|
+
let l = c("Popover.Anchor"), u = t ?? a(e), d = u && a(e) ? i(e) : void 0, f = r(l.anchorRef, n, d);
|
|
107
|
+
return u && a(e) ? o(e, s, f) : /* @__PURE__ */ y("div", {
|
|
107
108
|
...s,
|
|
108
109
|
ref: f,
|
|
109
110
|
children: e
|
|
110
111
|
});
|
|
111
|
-
}, w = ({ level: e = 2, className:
|
|
112
|
-
let
|
|
112
|
+
}, w = ({ level: e = 2, className: n, id: r, ...i }) => {
|
|
113
|
+
let a = c("Popover.Title"), { setHasTitle: o } = a;
|
|
113
114
|
h(() => (o(!0), () => o(!1)), [o]);
|
|
114
115
|
let s = `h${e}`;
|
|
115
116
|
return /* @__PURE__ */ y(s, {
|
|
116
|
-
...
|
|
117
|
-
id:
|
|
118
|
-
className:
|
|
117
|
+
...i,
|
|
118
|
+
id: r ?? a.titleId,
|
|
119
|
+
className: t(u.title, n)
|
|
119
120
|
});
|
|
120
|
-
}, T = ({ className: e, id:
|
|
121
|
-
let
|
|
122
|
-
return h(() => (
|
|
123
|
-
...
|
|
124
|
-
id:
|
|
125
|
-
className:
|
|
121
|
+
}, T = ({ className: e, id: n, ...r }) => {
|
|
122
|
+
let i = c("Popover.Description"), { setHasDescription: a } = i;
|
|
123
|
+
return h(() => (a(!0), () => a(!1)), [a]), /* @__PURE__ */ y("p", {
|
|
124
|
+
...r,
|
|
125
|
+
id: n ?? i.descriptionId,
|
|
126
|
+
className: t(u.description, e)
|
|
126
127
|
});
|
|
127
|
-
}, E = ({ children: e, asChild:
|
|
128
|
-
let p =
|
|
129
|
-
|
|
128
|
+
}, E = ({ children: e, asChild: t, onClick: s, ref: l, variant: u = "ghost", ...f }) => {
|
|
129
|
+
let p = d(), m = e ?? p.popover.close, h = c("Popover.Close"), g = t ?? a(m), _ = g && a(m) ? i(m) : void 0, v = r(l, _), b = (e) => {
|
|
130
|
+
s?.(e), e.defaultPrevented || h.setOpen(!1, "force");
|
|
130
131
|
};
|
|
131
|
-
return g &&
|
|
132
|
+
return g && a(m) ? o(m, {
|
|
132
133
|
...x(f),
|
|
133
134
|
onClick: b
|
|
134
|
-
}, v) : /* @__PURE__ */ y(
|
|
135
|
+
}, v) : /* @__PURE__ */ y(n, {
|
|
135
136
|
...f,
|
|
136
|
-
variant:
|
|
137
|
+
variant: u,
|
|
137
138
|
ref: v,
|
|
138
139
|
onClick: b,
|
|
139
140
|
children: m
|
|
@@ -141,10 +142,9 @@ var S = ({ children: e, asChild: t, onClick: a, ref: c, ...u }) => {
|
|
|
141
142
|
}, D = Object.assign(b, {
|
|
142
143
|
Trigger: S,
|
|
143
144
|
Anchor: C,
|
|
144
|
-
Content:
|
|
145
|
+
Content: l,
|
|
145
146
|
Title: w,
|
|
146
147
|
Description: T,
|
|
147
148
|
Close: E
|
|
148
149
|
});
|
|
149
|
-
|
|
150
|
-
export { D as Popover, C as PopoverAnchor, E as PopoverClose, d as PopoverContent, T as PopoverDescription, w as PopoverTitle, S as PopoverTrigger };
|
|
150
|
+
export { D as Popover, C as PopoverAnchor, E as PopoverClose, l as PopoverContent, T as PopoverDescription, w as PopoverTitle, S as PopoverTrigger };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/components/overlays/Popover/Popover.module.css
|
|
2
2
|
var e = "_positioner_p1zsw_15", t = "_content_p1zsw_25", n = "_sm_p1zsw_101", r = "_md_p1zsw_111", i = "_lg_p1zsw_121", a = "_title_p1zsw_197", o = "_description_p1zsw_225", s = "_closeButton_p1zsw_251", c = "_hasClose_p1zsw_265", l = "_arrow_p1zsw_283", u = {
|
|
3
3
|
positioner: e,
|
|
4
4
|
content: t,
|
|
@@ -12,5 +12,4 @@ var e = "_positioner_p1zsw_15", t = "_content_p1zsw_25", n = "_sm_p1zsw_101", r
|
|
|
12
12
|
hasClose: c,
|
|
13
13
|
arrow: l
|
|
14
14
|
};
|
|
15
|
-
//#endregion
|
|
16
15
|
export { l as arrow, s as closeButton, t as content, u as default, o as description, c as hasClose, i as lg, r as md, e as positioner, n as sm, a as title };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../../../hooks/
|
|
1
|
+
"use client";const e=require("../../../hooks/useDismiss.cjs.js"),t=require("../../../hooks/useFloatingPosition.cjs.js"),n=require("../../../hooks/elementSource.cjs.js"),r=require("../../../hooks/useFocusTrap.cjs.js"),i=require("../../../hooks/useOverlayLayer.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("../../../hooks/useMergedRef.cjs.js"),u=require("./PopoverContext.cjs.js"),d=require("./Popover.module.css.cjs.js"),f=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js");let p=require("react"),m=require("react/jsx-runtime");var h={sm:d.default.sm,md:d.default.md,lg:d.default.lg},g=({container:e,...t})=>{let n=u.usePopoverContext(`Popover.Content`);return n.open?(0,m.jsx)(c.Portal,{container:e,children:(0,m.jsx)(v,{...t,ctx:n})}):null},_=9,v=({ctx:c,children:u,initialFocus:g,initialFocusRef:v,showArrow:y=!1,showClose:b=!1,closeLabel:x,size:S=`md`,maxWidth:C,className:w,style:T,ref:E,onKeyDown:D,onBlur:O,"aria-label":k,"aria-labelledby":A,"aria-describedby":j,...M})=>{let N=f.useMessages(),P=x??N.popover.close,F=(0,p.useRef)(null),I=l.useMergedRef(c.contentRef,E),L=c.anchorRef.current?c.anchorRef:c.triggerRef,[R,z]=(0,p.useState)(_);(0,p.useLayoutEffect)(()=>{let e=c.contentRef.current;if(!y||!e)return;let t=parseFloat(getComputedStyle(e).borderTopLeftRadius)||0;z(t+_)},[y,c.contentRef]);let B=t.useFloatingPosition(L,F,{open:!0,placement:c.placement,offset:c.offset??(y?12:8),arrowPadding:R}),V=B.isPositioned,H=B.placement.split(`-`)[0],U=B.arrow?B.arrow.x??B.arrow.y??null:null,W=i.useOverlayLayer({active:!0,modal:c.modal,elements:()=>[F,c.contentRef,c.triggerRef,c.anchorRef]}),G=W.contains,K=(0,p.useRef)(!1);(0,p.useEffect)(()=>{if(!V||c.modal||K.current)return;let e=c.contentRef.current;e&&(K.current=!0,((typeof g==`function`?g()??null:n.resolveElement(g))??v?.current??r.getFocusable(e)[0]??e).focus({preventScroll:!0}))},[V,c.modal,c.contentRef,v]),r.useFocusTrap(c.contentRef,{active:c.modal&&V,initialFocus:g,initialFocusRef:v,restoreFocus:!1,layer:W}),(0,p.useLayoutEffect)(()=>{let{contentRef:e,triggerRef:t,returnFocusRef:n,restoreModeRef:r}=c,i=e.current;return()=>{let e=r.current;r.current=`auto`;let a=!!i&&i.contains(document.activeElement),o=()=>{let e=t.current??n.current;e?.isConnected&&e.focus({preventScroll:!0})};e===`force`||e===`auto`&&a?o():e===`deferred`&&window.setTimeout(o,0)}},[]);let{setOpen:q,closeOnEscape:J}=c;e.useDismiss([],{active:!0,layer:W,escapeKey:J,outsidePress:c.closeOnOutsidePress,onDismiss:e=>{if(e.type===`keydown`){q(!1,`force`);return}let t=e.target instanceof Element?e.target:null;q(!1,t?.closest(`a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),label,summary,iframe,[contenteditable='true'],[tabindex]`)?`none`:`deferred`)}});let Y=e=>{if(D?.(e),e.defaultPrevented||e.key!==`Tab`||c.modal)return;let t=c.contentRef.current,n=c.triggerRef.current;if(!t||!n)return;let i=r.getFocusable(t),a=document.activeElement,o=i[0],s=i[i.length-1];if(e.shiftKey&&(a===t||a===o))e.preventDefault(),n.focus();else if(!e.shiftKey&&(a===s||i.length===0)){let t=r.getFocusable(document.body).find(e=>!G(e)&&n.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING);t&&(e.preventDefault(),t.focus())}},X=e=>{if(O?.(e),!c.closeOnFocusOut||c.modal)return;let t=e.relatedTarget;t&&!G(t)&&q(!1,`none`)},Z=A??(c.hasTitle&&!k?c.titleId:void 0),Q=a.cx(c.hasDescription&&c.descriptionId,j)||void 0;return(0,m.jsx)(i.OverlayLayerProvider,{layer:W,children:(0,m.jsx)(`div`,{ref:F,className:d.default.positioner,style:B.style,children:(0,m.jsxs)(`div`,{role:`dialog`,id:c.contentId,"aria-modal":c.modal?!0:void 0,"aria-label":k,"aria-labelledby":Z,"aria-describedby":Q,tabIndex:-1,...M,ref:I,className:a.cx(d.default.content,h[S],b&&d.default.hasClose,w),style:C===void 0?T:{...T,maxWidth:C},"data-side":H,"data-state":`open`,onKeyDown:Y,onBlur:X,children:[y&&(0,m.jsx)(`span`,{"aria-hidden":`true`,className:d.default.arrow,"data-side":H,style:U===null?void 0:H===`top`||H===`bottom`?{left:`calc(${U}px - var(--space-3) / 2)`}:{top:`calc(${U}px - var(--space-3) / 2)`}}),b&&(0,m.jsx)(o.IconButton,{"aria-label":P,variant:`ghost`,tone:`neutral`,size:`sm`,className:d.default.closeButton,onClick:()=>q(!1,`force`),children:(0,m.jsx)(s.CloseIcon,{})}),u]})})})};exports.PopoverContent=g;
|
|
@@ -1,25 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { getFocusable as
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
1
|
+
"use client";
|
|
2
|
+
import { useDismiss as e } from "../../../hooks/useDismiss.mjs";
|
|
3
|
+
import { useFloatingPosition as t } from "../../../hooks/useFloatingPosition.mjs";
|
|
4
|
+
import { resolveElement as n } from "../../../hooks/elementSource.mjs";
|
|
5
|
+
import { getFocusable as r, useFocusTrap as i } from "../../../hooks/useFocusTrap.mjs";
|
|
6
|
+
import { OverlayLayerProvider as a, useOverlayLayer as o } from "../../../hooks/useOverlayLayer.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";
|
|
9
10
|
import { Portal as u } from "../../utilities/Portal/Portal.mjs";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import
|
|
13
|
-
import m from "
|
|
11
|
+
import { useMergedRef as d } from "../../../hooks/useMergedRef.mjs";
|
|
12
|
+
import { usePopoverContext as f } from "./PopoverContext.mjs";
|
|
13
|
+
import p from "./Popover.module.css.mjs";
|
|
14
|
+
import { useMessages as m } from "../../utilities/LocaleProvider/LocaleProvider.mjs";
|
|
14
15
|
import { useEffect as h, useLayoutEffect as g, useRef as _, useState as v } from "react";
|
|
15
16
|
import { jsx as y, jsxs as b } from "react/jsx-runtime";
|
|
16
|
-
|
|
17
|
+
// src/components/overlays/Popover/PopoverContent.tsx
|
|
17
18
|
var x = {
|
|
18
|
-
sm:
|
|
19
|
-
md:
|
|
20
|
-
lg:
|
|
19
|
+
sm: p.sm,
|
|
20
|
+
md: p.md,
|
|
21
|
+
lg: p.lg
|
|
21
22
|
}, S = ({ container: e, ...t }) => {
|
|
22
|
-
let n =
|
|
23
|
+
let n = f("Popover.Content");
|
|
23
24
|
return n.open ? /* @__PURE__ */ y(u, {
|
|
24
25
|
container: e,
|
|
25
26
|
children: /* @__PURE__ */ y(w, {
|
|
@@ -27,20 +28,20 @@ var x = {
|
|
|
27
28
|
ctx: n
|
|
28
29
|
})
|
|
29
30
|
}) : null;
|
|
30
|
-
}, C = 9, w = ({ ctx: u, children:
|
|
31
|
-
let z =
|
|
31
|
+
}, C = 9, w = ({ ctx: u, children: f, initialFocus: S, initialFocusRef: w, showArrow: T = !1, showClose: E = !1, closeLabel: D, size: O = "md", maxWidth: k, className: A, style: j, ref: M, onKeyDown: N, onBlur: P, "aria-label": F, "aria-labelledby": I, "aria-describedby": L, ...R }) => {
|
|
32
|
+
let z = m(), B = D ?? z.popover.close, V = _(null), H = d(u.contentRef, M), U = u.anchorRef.current ? u.anchorRef : u.triggerRef, [W, G] = v(C);
|
|
32
33
|
g(() => {
|
|
33
34
|
let e = u.contentRef.current;
|
|
34
35
|
if (!T || !e) return;
|
|
35
36
|
let t = parseFloat(getComputedStyle(e).borderTopLeftRadius) || 0;
|
|
36
37
|
G(t + C);
|
|
37
38
|
}, [T, u.contentRef]);
|
|
38
|
-
let K =
|
|
39
|
+
let K = t(U, V, {
|
|
39
40
|
open: !0,
|
|
40
41
|
placement: u.placement,
|
|
41
42
|
offset: u.offset ?? (T ? 12 : 8),
|
|
42
43
|
arrowPadding: W
|
|
43
|
-
}), q = K.isPositioned, J = K.placement.split("-")[0], Y = K.arrow ? K.arrow.x ?? K.arrow.y ?? null : null, X =
|
|
44
|
+
}), q = K.isPositioned, J = K.placement.split("-")[0], Y = K.arrow ? K.arrow.x ?? K.arrow.y ?? null : null, X = o({
|
|
44
45
|
active: !0,
|
|
45
46
|
modal: u.modal,
|
|
46
47
|
elements: () => [
|
|
@@ -52,14 +53,14 @@ var x = {
|
|
|
52
53
|
}), Z = X.contains, Q = _(!1);
|
|
53
54
|
h(() => {
|
|
54
55
|
if (!q || u.modal || Q.current) return;
|
|
55
|
-
let
|
|
56
|
-
|
|
56
|
+
let e = u.contentRef.current;
|
|
57
|
+
e && (Q.current = !0, ((typeof S == "function" ? S() ?? null : n(S)) ?? w?.current ?? r(e)[0] ?? e).focus({ preventScroll: !0 }));
|
|
57
58
|
}, [
|
|
58
59
|
q,
|
|
59
60
|
u.modal,
|
|
60
61
|
u.contentRef,
|
|
61
62
|
w
|
|
62
|
-
]),
|
|
63
|
+
]), i(u.contentRef, {
|
|
63
64
|
active: u.modal && q,
|
|
64
65
|
initialFocus: S,
|
|
65
66
|
initialFocusRef: w,
|
|
@@ -78,7 +79,7 @@ var x = {
|
|
|
78
79
|
};
|
|
79
80
|
}, []);
|
|
80
81
|
let { setOpen: $, closeOnEscape: ee } = u;
|
|
81
|
-
|
|
82
|
+
e([], {
|
|
82
83
|
active: !0,
|
|
83
84
|
layer: X,
|
|
84
85
|
escapeKey: ee,
|
|
@@ -96,22 +97,22 @@ var x = {
|
|
|
96
97
|
if (N?.(e), e.defaultPrevented || e.key !== "Tab" || u.modal) return;
|
|
97
98
|
let t = u.contentRef.current, n = u.triggerRef.current;
|
|
98
99
|
if (!t || !n) return;
|
|
99
|
-
let
|
|
100
|
-
if (e.shiftKey && (
|
|
101
|
-
else if (!e.shiftKey && (
|
|
102
|
-
let t =
|
|
100
|
+
let i = r(t), a = document.activeElement, o = i[0], s = i[i.length - 1];
|
|
101
|
+
if (e.shiftKey && (a === t || a === o)) e.preventDefault(), n.focus();
|
|
102
|
+
else if (!e.shiftKey && (a === s || i.length === 0)) {
|
|
103
|
+
let t = r(document.body).find((e) => !Z(e) && n.compareDocumentPosition(e) & Node.DOCUMENT_POSITION_FOLLOWING);
|
|
103
104
|
t && (e.preventDefault(), t.focus());
|
|
104
105
|
}
|
|
105
106
|
}, ne = (e) => {
|
|
106
107
|
if (P?.(e), !u.closeOnFocusOut || u.modal) return;
|
|
107
108
|
let t = e.relatedTarget;
|
|
108
109
|
t && !Z(t) && $(!1, "none");
|
|
109
|
-
}, re = I ?? (u.hasTitle && !F ? u.titleId : void 0), ie =
|
|
110
|
-
return /* @__PURE__ */ y(
|
|
110
|
+
}, re = I ?? (u.hasTitle && !F ? u.titleId : void 0), ie = s(u.hasDescription && u.descriptionId, L) || void 0;
|
|
111
|
+
return /* @__PURE__ */ y(a, {
|
|
111
112
|
layer: X,
|
|
112
113
|
children: /* @__PURE__ */ y("div", {
|
|
113
114
|
ref: V,
|
|
114
|
-
className:
|
|
115
|
+
className: p.positioner,
|
|
115
116
|
style: K.style,
|
|
116
117
|
children: /* @__PURE__ */ b("div", {
|
|
117
118
|
role: "dialog",
|
|
@@ -123,7 +124,7 @@ var x = {
|
|
|
123
124
|
tabIndex: -1,
|
|
124
125
|
...R,
|
|
125
126
|
ref: H,
|
|
126
|
-
className:
|
|
127
|
+
className: s(p.content, x[O], E && p.hasClose, A),
|
|
127
128
|
style: k === void 0 ? j : {
|
|
128
129
|
...j,
|
|
129
130
|
maxWidth: k
|
|
@@ -135,24 +136,23 @@ var x = {
|
|
|
135
136
|
children: [
|
|
136
137
|
T && /* @__PURE__ */ y("span", {
|
|
137
138
|
"aria-hidden": "true",
|
|
138
|
-
className:
|
|
139
|
+
className: p.arrow,
|
|
139
140
|
"data-side": J,
|
|
140
141
|
style: Y === null ? void 0 : J === "top" || J === "bottom" ? { left: `calc(${Y}px - var(--space-3) / 2)` } : { top: `calc(${Y}px - var(--space-3) / 2)` }
|
|
141
142
|
}),
|
|
142
|
-
E && /* @__PURE__ */ y(
|
|
143
|
+
E && /* @__PURE__ */ y(c, {
|
|
143
144
|
"aria-label": B,
|
|
144
145
|
variant: "ghost",
|
|
145
146
|
tone: "neutral",
|
|
146
147
|
size: "sm",
|
|
147
|
-
className:
|
|
148
|
+
className: p.closeButton,
|
|
148
149
|
onClick: () => $(!1, "force"),
|
|
149
|
-
children: /* @__PURE__ */ y(
|
|
150
|
+
children: /* @__PURE__ */ y(l, {})
|
|
150
151
|
}),
|
|
151
|
-
|
|
152
|
+
f
|
|
152
153
|
]
|
|
153
154
|
})
|
|
154
155
|
})
|
|
155
156
|
});
|
|
156
157
|
};
|
|
157
|
-
//#endregion
|
|
158
158
|
export { S as PopoverContent };
|
|
@@ -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 rendered inside <Popover>.`);return r}var r=`a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),label,summary,iframe,[contenteditable='true'],[tabindex]`;exports.PRESS_FOCUSABLE=r,exports.PopoverContext=t,exports.usePopoverContext=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 rendered inside <Popover>.`);return r}var r=`a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),label,summary,iframe,[contenteditable='true'],[tabindex]`;exports.PRESS_FOCUSABLE=r,exports.PopoverContext=t,exports.usePopoverContext=n;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
"use client";
|
|
1
2
|
import { createContext as e, useContext as t } from "react";
|
|
2
|
-
|
|
3
|
+
// src/components/overlays/Popover/PopoverContext.ts
|
|
3
4
|
var n = e(null);
|
|
4
5
|
function r(e) {
|
|
5
6
|
let r = t(n);
|
|
@@ -7,5 +8,4 @@ function r(e) {
|
|
|
7
8
|
return r;
|
|
8
9
|
}
|
|
9
10
|
var i = "a[href],button:not([disabled]),input:not([disabled]),select:not([disabled]),textarea:not([disabled]),label,summary,iframe,[contenteditable='true'],[tabindex]";
|
|
10
|
-
//#endregion
|
|
11
11
|
export { i as PRESS_FOCUSABLE, n as PopoverContext, r as usePopoverContext };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useDismiss.cjs.js"),n=require("../../../hooks/useFloatingPosition.cjs.js"),r=require("../../../utils/
|
|
1
|
+
"use client";const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useDismiss.cjs.js"),n=require("../../../hooks/useFloatingPosition.cjs.js"),r=require("../../../utils/cx.cjs.js"),i=require("../../../utils/refs.cjs.js"),ee=require("../../primitives/Kbd/Kbd.cjs.js"),te=require("../../utilities/Portal/Portal.cjs.js"),a=require("./Tooltip.module.css.cjs.js");let o=require("react"),s=require("react/jsx-runtime");function c(e,t){if(e!==`start`&&e!==`end`)return e;let n=t?getComputedStyle(t).direction===`rtl`:!1;return e===`end`===n?`left`:`right`}var l={neutral:a.default.neutral,primary:a.default.primary},u={delay:400,closeDelay:100,skipDelayDuration:300},d=(0,o.createContext)(u);function f({delay:e=u.delay,closeDelay:t=u.closeDelay,skipDelayDuration:n=u.skipDelayDuration,children:r}){let i=(0,o.useMemo)(()=>({delay:e,closeDelay:t,skipDelayDuration:n}),[e,t,n]);return(0,s.jsx)(d.Provider,{value:i,children:r})}var p={active:null,lastClosedAt:-1/0};function m(...e){return e.filter(Boolean).join(` `)||void 0}function ne(e){try{return e.matches(`:focus-visible`)}catch{return!0}}var h=globalThis.process?.env?.NODE_ENV!==`production`,g=`a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"]), [contenteditable]:not([contenteditable="false"])`;function _({children:u,content:f,shortcut:_,placement:v=`top`,offset:y=8,open:re,defaultOpen:b=!1,onOpenChange:x,delay:ie,closeDelay:ae,disabled:S=!1,showArrow:C=!0,tone:w=`neutral`,relationship:T=`description`,className:oe,style:se,id:ce}){let E=(0,o.useContext)(d),D=ie??E.delay,O=ae??E.closeDelay,k=(0,o.useId)(),A=ce??`tooltip-${k}`,[le,j]=e.useControllableState({value:re,defaultValue:b,onChange:x}),M=le&&!S,N=(0,o.useRef)(null),P=(0,o.useRef)(null),[F,I]=(0,o.useState)(null),L=(0,o.useRef)(!1),R=(0,o.useRef)(!1),z=(0,o.useRef)(void 0),B=(0,o.useCallback)(()=>{z.current!==void 0&&clearTimeout(z.current),z.current=void 0},[]);(0,o.useEffect)(()=>B,[B]);let V=(0,o.useCallback)(e=>{B(),j(e)},[B,j]),H=()=>{B(),S||(p.active!==null||Date.now()-p.lastClosedAt<E.skipDelayDuration||D<=0?V(!0):z.current=setTimeout(()=>V(!0),D))},U=()=>{B(),L.current||R.current||(O<=0?V(!1):z.current=setTimeout(()=>V(!1),O))};(0,o.useEffect)(()=>{if(!M)return;let e={close:()=>V(!1)};return p.active&&p.active.close(),p.active=e,()=>{p.active===e&&(p.active=null),p.lastClosedAt=Date.now()}},[M,V]),t.useDismiss([N,P],{active:M,outsidePress:!1,onDismiss:()=>V(!1)});let[ue,de]=(0,o.useState)(()=>c(v,null));(0,o.useLayoutEffect)(()=>{M&&de(c(v,N.current))},[M,v]);let W=n.useFloatingPosition(N,F,{open:M,placement:ue,offset:y}),fe=W.placement.split(`-`)[0],G=W.arrow?W.arrow.x??W.arrow.y??null:null;(0,o.useEffect)(()=>{h&&F&&F.querySelector(g)&&console.warn("[Tooltip] `content` contains focusable elements. Tooltips can't receive focus, so keyboard users can't reach them. Use a Popover for interactive content.")},[F,f]);let K=o.Children.only(u),q=(0,o.useRef)(void 0);q.current=(0,o.isValidElement)(K)?K.props.ref:void 0;let pe=(0,o.useCallback)(e=>{N.current=e,i.assignRef(q.current,e)},[]),me=(0,o.useCallback)(e=>{P.current=e,I(e)},[]);if(!(0,o.isValidElement)(K))return u;let J=K.props,Y=f!=null&&f!==!1&&f!==``&&!S,X=_!==void 0&&_.length>0,Z=`${A}-content`,Q=`${A}-shortcut`,$={ref:pe};Y&&($.onPointerEnter=e=>{J.onPointerEnter?.(e),e.pointerType!==`touch`&&(L.current=!0,M?B():H())},$.onPointerLeave=e=>{J.onPointerLeave?.(e),e.pointerType!==`touch`&&(L.current=!1,M?U():R.current||B())},$.onFocus=e=>{J.onFocus?.(e),ne(e.currentTarget)&&(R.current=!0,M||H())},$.onBlur=e=>{J.onBlur?.(e),R.current&&(R.current=!1,L.current||V(!1))},T===`label`?($[`aria-labelledby`]=m(J[`aria-labelledby`],Z),X&&($[`aria-describedby`]=m(J[`aria-describedby`],Q))):$[`aria-describedby`]=m(J[`aria-describedby`],A));let he={...se,...W.style,"--_tooltip-offset":`${y}px`,...G===null?null:{"--_arrow-pos":`${G}px`}};return(0,s.jsxs)(s.Fragment,{children:[(0,o.cloneElement)(K,$),Y&&(0,s.jsx)(te.Portal,{children:(0,s.jsx)(`div`,{ref:me,id:A,role:`tooltip`,hidden:!M,"data-side":fe,className:r.cx(a.default.tooltip,l[w],oe),style:he,onPointerEnter:e=>{e.pointerType!==`touch`&&(L.current=!0,B())},onPointerLeave:e=>{e.pointerType!==`touch`&&(L.current=!1,U())},children:(0,s.jsxs)(`div`,{className:a.default.bubble,children:[(0,s.jsx)(`span`,{id:Z,className:a.default.content,children:f}),X&&(0,s.jsx)(`span`,{id:Q,className:a.default.shortcut,children:(0,s.jsx)(ee.KbdShortcut,{keys:_,size:`sm`,variant:`outline`})}),C&&(0,s.jsx)(`span`,{className:a.default.arrow,"aria-hidden":`true`})]})})})]})}exports.Tooltip=_,exports.TooltipProvider=f;
|