@vjdesigns/vjdesigns-ui 0.0.0-stage → 2.0.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/README.md +724 -3
- package/dist/ai/llms-full.txt +8231 -0
- package/dist/ai/llms.txt +196 -0
- package/dist/ai/mcp-server.mjs +212 -0
- package/dist/ai/registry.json +20490 -0
- package/dist/components/data-display/Accordion/Accordion.cjs.js +1 -0
- package/dist/components/data-display/Accordion/Accordion.d.ts +154 -0
- package/dist/components/data-display/Accordion/Accordion.mjs +327 -0
- package/dist/components/data-display/Accordion/Accordion.module.css.cjs.js +1 -0
- package/dist/components/data-display/Accordion/Accordion.module.css.mjs +31 -0
- package/dist/components/data-display/Accordion/index.d.ts +1 -0
- package/dist/components/data-display/Avatar/Avatar.cjs.js +1 -0
- package/dist/components/data-display/Avatar/Avatar.d.ts +114 -0
- package/dist/components/data-display/Avatar/Avatar.mjs +150 -0
- package/dist/components/data-display/Avatar/Avatar.module.css.cjs.js +1 -0
- package/dist/components/data-display/Avatar/Avatar.module.css.mjs +48 -0
- package/dist/components/data-display/Avatar/index.d.ts +1 -0
- package/dist/components/data-display/Badge/Badge.cjs.js +1 -0
- package/dist/components/data-display/Badge/Badge.d.ts +95 -0
- package/dist/components/data-display/Badge/Badge.mjs +100 -0
- package/dist/components/data-display/Badge/Badge.module.css.cjs.js +1 -0
- package/dist/components/data-display/Badge/Badge.module.css.mjs +43 -0
- package/dist/components/data-display/Badge/index.d.ts +1 -0
- package/dist/components/data-display/Card/Card.cjs.js +1 -0
- package/dist/components/data-display/Card/Card.d.ts +171 -0
- package/dist/components/data-display/Card/Card.mjs +178 -0
- package/dist/components/data-display/Card/Card.module.css.cjs.js +1 -0
- package/dist/components/data-display/Card/Card.module.css.mjs +59 -0
- package/dist/components/data-display/Card/index.d.ts +1 -0
- package/dist/components/data-display/Carousel/Carousel.cjs.js +1 -0
- package/dist/components/data-display/Carousel/Carousel.d.ts +117 -0
- package/dist/components/data-display/Carousel/Carousel.mjs +374 -0
- package/dist/components/data-display/Carousel/Carousel.module.css.cjs.js +1 -0
- package/dist/components/data-display/Carousel/Carousel.module.css.mjs +26 -0
- package/dist/components/data-display/Carousel/index.d.ts +1 -0
- package/dist/components/data-display/Chip/Chip.cjs.js +1 -0
- package/dist/components/data-display/Chip/Chip.d.ts +162 -0
- package/dist/components/data-display/Chip/Chip.mjs +223 -0
- package/dist/components/data-display/Chip/Chip.module.css.cjs.js +1 -0
- package/dist/components/data-display/Chip/Chip.module.css.mjs +45 -0
- package/dist/components/data-display/Chip/index.d.ts +1 -0
- package/dist/components/data-display/CodeBlock/CodeBlock.cjs.js +6 -0
- package/dist/components/data-display/CodeBlock/CodeBlock.d.ts +96 -0
- package/dist/components/data-display/CodeBlock/CodeBlock.mjs +207 -0
- package/dist/components/data-display/CodeBlock/CodeBlock.module.css.cjs.js +1 -0
- package/dist/components/data-display/CodeBlock/CodeBlock.module.css.mjs +48 -0
- package/dist/components/data-display/CodeBlock/index.d.ts +1 -0
- package/dist/components/data-display/CodeBlock/tokenize.cjs.js +13 -0
- package/dist/components/data-display/CodeBlock/tokenize.d.ts +26 -0
- package/dist/components/data-display/CodeBlock/tokenize.mjs +307 -0
- package/dist/components/data-display/DataGrid/DataGrid.cjs.js +1 -0
- package/dist/components/data-display/DataGrid/DataGrid.d.ts +183 -0
- package/dist/components/data-display/DataGrid/DataGrid.mjs +403 -0
- package/dist/components/data-display/DataGrid/DataGrid.module.css.cjs.js +1 -0
- package/dist/components/data-display/DataGrid/DataGrid.module.css.mjs +41 -0
- package/dist/components/data-display/DataGrid/dataGridUtils.cjs.js +1 -0
- package/dist/components/data-display/DataGrid/dataGridUtils.d.ts +28 -0
- package/dist/components/data-display/DataGrid/dataGridUtils.mjs +46 -0
- package/dist/components/data-display/DataGrid/index.d.ts +1 -0
- package/dist/components/data-display/EmptyState/EmptyState.cjs.js +1 -0
- package/dist/components/data-display/EmptyState/EmptyState.d.ts +112 -0
- package/dist/components/data-display/EmptyState/EmptyState.mjs +146 -0
- package/dist/components/data-display/EmptyState/EmptyState.module.css.cjs.js +1 -0
- package/dist/components/data-display/EmptyState/EmptyState.module.css.mjs +31 -0
- package/dist/components/data-display/EmptyState/index.d.ts +1 -0
- package/dist/components/data-display/Image/Image.cjs.js +1 -0
- package/dist/components/data-display/Image/Image.d.ts +107 -0
- package/dist/components/data-display/Image/Image.mjs +171 -0
- package/dist/components/data-display/Image/Image.module.css.cjs.js +1 -0
- package/dist/components/data-display/Image/Image.module.css.mjs +46 -0
- package/dist/components/data-display/Image/index.d.ts +1 -0
- package/dist/components/data-display/List/List.cjs.js +1 -0
- package/dist/components/data-display/List/List.d.ts +195 -0
- package/dist/components/data-display/List/List.mjs +200 -0
- package/dist/components/data-display/List/List.module.css.cjs.js +1 -0
- package/dist/components/data-display/List/List.module.css.mjs +33 -0
- package/dist/components/data-display/List/index.d.ts +1 -0
- package/dist/components/data-display/Stat/Stat.cjs.js +1 -0
- package/dist/components/data-display/Stat/Stat.d.ts +149 -0
- package/dist/components/data-display/Stat/Stat.mjs +224 -0
- package/dist/components/data-display/Stat/Stat.module.css.cjs.js +1 -0
- package/dist/components/data-display/Stat/Stat.module.css.mjs +60 -0
- package/dist/components/data-display/Stat/index.d.ts +1 -0
- package/dist/components/data-display/Table/Table.cjs.js +1 -0
- package/dist/components/data-display/Table/Table.d.ts +255 -0
- package/dist/components/data-display/Table/Table.mjs +333 -0
- package/dist/components/data-display/Table/Table.module.css.cjs.js +1 -0
- package/dist/components/data-display/Table/Table.module.css.mjs +55 -0
- package/dist/components/data-display/Table/index.d.ts +1 -0
- package/dist/components/data-display/Table/useTable.cjs.js +1 -0
- package/dist/components/data-display/Table/useTable.d.ts +118 -0
- package/dist/components/data-display/Table/useTable.mjs +89 -0
- package/dist/components/data-display/Timeline/Timeline.cjs.js +1 -0
- package/dist/components/data-display/Timeline/Timeline.d.ts +92 -0
- package/dist/components/data-display/Timeline/Timeline.mjs +140 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.cjs.js +1 -0
- package/dist/components/data-display/Timeline/Timeline.module.css.mjs +46 -0
- package/dist/components/data-display/Timeline/index.d.ts +1 -0
- package/dist/components/data-display/TreeView/TreeView.cjs.js +1 -0
- package/dist/components/data-display/TreeView/TreeView.d.ts +86 -0
- package/dist/components/data-display/TreeView/TreeView.mjs +361 -0
- package/dist/components/data-display/TreeView/TreeView.module.css.cjs.js +1 -0
- package/dist/components/data-display/TreeView/TreeView.module.css.mjs +24 -0
- package/dist/components/data-display/TreeView/index.d.ts +1 -0
- package/dist/components/data-display/TreeView/treeUtils.cjs.js +1 -0
- package/dist/components/data-display/TreeView/treeUtils.d.ts +82 -0
- package/dist/components/data-display/TreeView/treeUtils.mjs +54 -0
- package/dist/components/data-display/VirtualList/VirtualList.cjs.js +1 -0
- package/dist/components/data-display/VirtualList/VirtualList.d.ts +66 -0
- package/dist/components/data-display/VirtualList/VirtualList.mjs +53 -0
- package/dist/components/data-display/VirtualList/VirtualList.module.css.cjs.js +1 -0
- package/dist/components/data-display/VirtualList/VirtualList.module.css.mjs +9 -0
- package/dist/components/data-display/VirtualList/index.d.ts +1 -0
- package/dist/components/feedback/Alert/Alert.cjs.js +1 -0
- package/dist/components/feedback/Alert/Alert.d.ts +101 -0
- package/dist/components/feedback/Alert/Alert.mjs +113 -0
- package/dist/components/feedback/Alert/Alert.module.css.cjs.js +1 -0
- package/dist/components/feedback/Alert/Alert.module.css.mjs +32 -0
- package/dist/components/feedback/Alert/index.d.ts +1 -0
- package/dist/components/feedback/Banner/Banner.cjs.js +1 -0
- package/dist/components/feedback/Banner/Banner.d.ts +132 -0
- package/dist/components/feedback/Banner/Banner.mjs +199 -0
- package/dist/components/feedback/Banner/Banner.module.css.cjs.js +1 -0
- package/dist/components/feedback/Banner/Banner.module.css.mjs +40 -0
- package/dist/components/feedback/Banner/index.d.ts +1 -0
- package/dist/components/feedback/ErrorSummary/ErrorSummary.cjs.js +1 -0
- package/dist/components/feedback/ErrorSummary/ErrorSummary.d.ts +29 -0
- package/dist/components/feedback/ErrorSummary/ErrorSummary.mjs +38 -0
- package/dist/components/feedback/ErrorSummary/ErrorSummary.module.css.cjs.js +1 -0
- package/dist/components/feedback/ErrorSummary/ErrorSummary.module.css.mjs +7 -0
- package/dist/components/feedback/ErrorSummary/index.d.ts +1 -0
- package/dist/components/feedback/Progress/Progress.cjs.js +1 -0
- package/dist/components/feedback/Progress/Progress.d.ts +150 -0
- package/dist/components/feedback/Progress/Progress.mjs +238 -0
- package/dist/components/feedback/Progress/Progress.module.css.cjs.js +1 -0
- package/dist/components/feedback/Progress/Progress.module.css.mjs +57 -0
- package/dist/components/feedback/Progress/index.d.ts +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.cjs.js +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.d.ts +151 -0
- package/dist/components/feedback/Skeleton/Skeleton.mjs +157 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.cjs.js +1 -0
- package/dist/components/feedback/Skeleton/Skeleton.module.css.mjs +63 -0
- package/dist/components/feedback/Skeleton/index.d.ts +1 -0
- package/dist/components/feedback/Spinner/Spinner.cjs.js +1 -0
- package/dist/components/feedback/Spinner/Spinner.d.ts +72 -0
- package/dist/components/feedback/Spinner/Spinner.mjs +67 -0
- package/dist/components/feedback/Spinner/Spinner.module.css.cjs.js +1 -0
- package/dist/components/feedback/Spinner/Spinner.module.css.mjs +29 -0
- package/dist/components/feedback/Spinner/index.d.ts +1 -0
- package/dist/components/feedback/Toast/Toast.cjs.js +1 -0
- package/dist/components/feedback/Toast/Toast.d.ts +52 -0
- package/dist/components/feedback/Toast/Toast.mjs +89 -0
- package/dist/components/feedback/Toast/Toast.module.css.cjs.js +1 -0
- package/dist/components/feedback/Toast/Toast.module.css.mjs +48 -0
- package/dist/components/feedback/Toast/Toast.storyHelpers.d.ts +21 -0
- package/dist/components/feedback/Toast/ToastItem.cjs.js +1 -0
- package/dist/components/feedback/Toast/ToastItem.d.ts +18 -0
- package/dist/components/feedback/Toast/ToastItem.mjs +61 -0
- package/dist/components/feedback/Toast/ToastProvider.cjs.js +1 -0
- package/dist/components/feedback/Toast/ToastProvider.d.ts +62 -0
- package/dist/components/feedback/Toast/ToastProvider.mjs +36 -0
- package/dist/components/feedback/Toast/ToastViewport.cjs.js +1 -0
- package/dist/components/feedback/Toast/ToastViewport.d.ts +25 -0
- package/dist/components/feedback/Toast/ToastViewport.mjs +137 -0
- package/dist/components/feedback/Toast/index.d.ts +5 -0
- package/dist/components/feedback/Toast/toastStore.cjs.js +1 -0
- package/dist/components/feedback/Toast/toastStore.d.ts +46 -0
- package/dist/components/feedback/Toast/toastStore.mjs +86 -0
- package/dist/components/feedback/Toast/toastTiming.cjs.js +1 -0
- package/dist/components/feedback/Toast/toastTiming.d.ts +27 -0
- package/dist/components/feedback/Toast/toastTiming.mjs +43 -0
- package/dist/components/feedback/Toast/toastTypes.d.ts +136 -0
- package/dist/components/feedback/Toast/useToast.cjs.js +1 -0
- package/dist/components/feedback/Toast/useToast.d.ts +32 -0
- package/dist/components/feedback/Toast/useToast.mjs +16 -0
- package/dist/components/feedback/Toast/useToastAnnouncer.cjs.js +1 -0
- package/dist/components/feedback/Toast/useToastAnnouncer.d.ts +15 -0
- package/dist/components/feedback/Toast/useToastAnnouncer.mjs +39 -0
- package/dist/components/forms/CheckBox/CheckBox.cjs.js +1 -0
- package/dist/components/forms/CheckBox/CheckBox.d.ts +79 -0
- package/dist/components/forms/CheckBox/CheckBox.mjs +168 -0
- package/dist/components/forms/CheckBox/CheckBox.module.css.cjs.js +1 -0
- package/dist/components/forms/CheckBox/CheckBox.module.css.mjs +33 -0
- package/dist/components/forms/CheckBox/index.d.ts +1 -0
- package/dist/components/forms/ColorPicker/ColorInput.cjs.js +1 -0
- package/dist/components/forms/ColorPicker/ColorInput.d.ts +38 -0
- package/dist/components/forms/ColorPicker/ColorInput.mjs +113 -0
- package/dist/components/forms/ColorPicker/ColorPicker.cjs.js +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.d.ts +129 -0
- package/dist/components/forms/ColorPicker/ColorPicker.mjs +554 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.cjs.js +1 -0
- package/dist/components/forms/ColorPicker/ColorPicker.module.css.mjs +45 -0
- package/dist/components/forms/ColorPicker/colorUtils.cjs.js +1 -0
- package/dist/components/forms/ColorPicker/colorUtils.d.ts +86 -0
- package/dist/components/forms/ColorPicker/colorUtils.mjs +184 -0
- package/dist/components/forms/ColorPicker/index.d.ts +2 -0
- package/dist/components/forms/Combobox/Combobox.cjs.js +1 -0
- package/dist/components/forms/Combobox/Combobox.d.ts +172 -0
- package/dist/components/forms/Combobox/Combobox.mjs +364 -0
- package/dist/components/forms/Combobox/Combobox.module.css.cjs.js +1 -0
- package/dist/components/forms/Combobox/Combobox.module.css.mjs +37 -0
- package/dist/components/forms/Combobox/ComboboxPopup.cjs.js +1 -0
- package/dist/components/forms/Combobox/ComboboxPopup.d.ts +40 -0
- package/dist/components/forms/Combobox/ComboboxPopup.mjs +183 -0
- package/dist/components/forms/Combobox/comboboxUtils.cjs.js +1 -0
- package/dist/components/forms/Combobox/comboboxUtils.d.ts +70 -0
- package/dist/components/forms/Combobox/comboboxUtils.mjs +57 -0
- package/dist/components/forms/Combobox/index.d.ts +1 -0
- package/dist/components/forms/DatePicker/Calendar.cjs.js +1 -0
- package/dist/components/forms/DatePicker/Calendar.d.ts +98 -0
- package/dist/components/forms/DatePicker/Calendar.mjs +228 -0
- package/dist/components/forms/DatePicker/Calendar.module.css.cjs.js +1 -0
- package/dist/components/forms/DatePicker/Calendar.module.css.mjs +25 -0
- package/dist/components/forms/DatePicker/DatePicker.cjs.js +1 -0
- package/dist/components/forms/DatePicker/DatePicker.d.ts +100 -0
- package/dist/components/forms/DatePicker/DatePicker.mjs +186 -0
- package/dist/components/forms/DatePicker/DatePicker.module.css.cjs.js +1 -0
- package/dist/components/forms/DatePicker/DatePicker.module.css.mjs +11 -0
- package/dist/components/forms/DatePicker/DateRangePicker.cjs.js +1 -0
- package/dist/components/forms/DatePicker/DateRangePicker.d.ts +124 -0
- package/dist/components/forms/DatePicker/DateRangePicker.mjs +250 -0
- package/dist/components/forms/DatePicker/DateRangePicker.module.css.cjs.js +1 -0
- package/dist/components/forms/DatePicker/DateRangePicker.module.css.mjs +15 -0
- package/dist/components/forms/DatePicker/dateUtils.cjs.js +1 -0
- package/dist/components/forms/DatePicker/dateUtils.d.ts +88 -0
- package/dist/components/forms/DatePicker/dateUtils.mjs +204 -0
- package/dist/components/forms/DatePicker/index.d.ts +4 -0
- package/dist/components/forms/DateTimePicker/DateTimePicker.cjs.js +1 -0
- package/dist/components/forms/DateTimePicker/DateTimePicker.d.ts +101 -0
- package/dist/components/forms/DateTimePicker/DateTimePicker.mjs +120 -0
- package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.cjs.js +1 -0
- package/dist/components/forms/DateTimePicker/DateTimePicker.module.css.mjs +12 -0
- package/dist/components/forms/DateTimePicker/index.d.ts +1 -0
- package/dist/components/forms/Field/Field.cjs.js +1 -0
- package/dist/components/forms/Field/Field.d.ts +171 -0
- package/dist/components/forms/Field/Field.mjs +277 -0
- package/dist/components/forms/Field/Field.module.css.cjs.js +1 -0
- package/dist/components/forms/Field/Field.module.css.mjs +29 -0
- package/dist/components/forms/Field/FieldContext.cjs.js +1 -0
- package/dist/components/forms/Field/FieldContext.d.ts +74 -0
- package/dist/components/forms/Field/FieldContext.mjs +29 -0
- package/dist/components/forms/Field/index.d.ts +2 -0
- package/dist/components/forms/FileUpload/FileUpload.cjs.js +1 -0
- package/dist/components/forms/FileUpload/FileUpload.d.ts +153 -0
- package/dist/components/forms/FileUpload/FileUpload.mjs +447 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.cjs.js +1 -0
- package/dist/components/forms/FileUpload/FileUpload.module.css.mjs +40 -0
- package/dist/components/forms/FileUpload/index.d.ts +1 -0
- package/dist/components/forms/Input/Input.cjs.js +1 -0
- package/dist/components/forms/Input/Input.d.ts +98 -0
- package/dist/components/forms/Input/Input.mjs +147 -0
- package/dist/components/forms/Input/Input.module.css.cjs.js +1 -0
- package/dist/components/forms/Input/Input.module.css.mjs +36 -0
- package/dist/components/forms/Input/index.d.ts +1 -0
- package/dist/components/forms/NumberInput/NumberInput.cjs.js +1 -0
- package/dist/components/forms/NumberInput/NumberInput.d.ts +87 -0
- package/dist/components/forms/NumberInput/NumberInput.mjs +309 -0
- package/dist/components/forms/NumberInput/NumberInput.module.css.cjs.js +1 -0
- package/dist/components/forms/NumberInput/NumberInput.module.css.mjs +13 -0
- package/dist/components/forms/NumberInput/index.d.ts +1 -0
- package/dist/components/forms/PasswordInput/PasswordInput.cjs.js +1 -0
- package/dist/components/forms/PasswordInput/PasswordInput.d.ts +117 -0
- package/dist/components/forms/PasswordInput/PasswordInput.mjs +253 -0
- package/dist/components/forms/PasswordInput/PasswordInput.module.css.cjs.js +1 -0
- package/dist/components/forms/PasswordInput/PasswordInput.module.css.mjs +33 -0
- package/dist/components/forms/PasswordInput/index.d.ts +1 -0
- package/dist/components/forms/PinInput/PinInput.cjs.js +1 -0
- package/dist/components/forms/PinInput/PinInput.d.ts +92 -0
- package/dist/components/forms/PinInput/PinInput.mjs +221 -0
- package/dist/components/forms/PinInput/PinInput.module.css.cjs.js +1 -0
- package/dist/components/forms/PinInput/PinInput.module.css.mjs +34 -0
- package/dist/components/forms/PinInput/index.d.ts +1 -0
- package/dist/components/forms/Radio/Radio.cjs.js +1 -0
- package/dist/components/forms/Radio/Radio.d.ts +119 -0
- package/dist/components/forms/Radio/Radio.mjs +220 -0
- package/dist/components/forms/Radio/Radio.module.css.cjs.js +1 -0
- package/dist/components/forms/Radio/Radio.module.css.mjs +43 -0
- package/dist/components/forms/Radio/index.d.ts +1 -0
- package/dist/components/forms/Rating/Rating.cjs.js +1 -0
- package/dist/components/forms/Rating/Rating.d.ts +128 -0
- package/dist/components/forms/Rating/Rating.mjs +228 -0
- package/dist/components/forms/Rating/Rating.module.css.cjs.js +1 -0
- package/dist/components/forms/Rating/Rating.module.css.mjs +42 -0
- package/dist/components/forms/Rating/index.d.ts +1 -0
- package/dist/components/forms/SearchInput/SearchInput.cjs.js +1 -0
- package/dist/components/forms/SearchInput/SearchInput.d.ts +124 -0
- package/dist/components/forms/SearchInput/SearchInput.mjs +220 -0
- package/dist/components/forms/SearchInput/SearchInput.module.css.cjs.js +1 -0
- package/dist/components/forms/SearchInput/SearchInput.module.css.mjs +8 -0
- package/dist/components/forms/SearchInput/index.d.ts +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.cjs.js +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.d.ts +120 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.mjs +171 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.cjs.js +1 -0
- package/dist/components/forms/SegmentedControl/SegmentedControl.module.css.mjs +33 -0
- package/dist/components/forms/SegmentedControl/index.d.ts +1 -0
- package/dist/components/forms/Select/Select.cjs.js +1 -0
- package/dist/components/forms/Select/Select.d.ts +86 -0
- package/dist/components/forms/Select/Select.mjs +107 -0
- package/dist/components/forms/Select/Select.module.css.cjs.js +1 -0
- package/dist/components/forms/Select/Select.module.css.mjs +27 -0
- package/dist/components/forms/Select/index.d.ts +1 -0
- package/dist/components/forms/Slider/Slider.cjs.js +1 -0
- package/dist/components/forms/Slider/Slider.d.ts +84 -0
- package/dist/components/forms/Slider/Slider.mjs +251 -0
- package/dist/components/forms/Slider/Slider.module.css.cjs.js +1 -0
- package/dist/components/forms/Slider/Slider.module.css.mjs +29 -0
- package/dist/components/forms/Slider/index.d.ts +1 -0
- package/dist/components/forms/Switch/Switch.cjs.js +1 -0
- package/dist/components/forms/Switch/Switch.d.ts +62 -0
- package/dist/components/forms/Switch/Switch.mjs +135 -0
- package/dist/components/forms/Switch/Switch.module.css.cjs.js +1 -0
- package/dist/components/forms/Switch/Switch.module.css.mjs +30 -0
- package/dist/components/forms/Switch/index.d.ts +1 -0
- package/dist/components/forms/TagInput/TagInput.cjs.js +1 -0
- package/dist/components/forms/TagInput/TagInput.d.ts +144 -0
- package/dist/components/forms/TagInput/TagInput.mjs +311 -0
- package/dist/components/forms/TagInput/TagInput.module.css.cjs.js +1 -0
- package/dist/components/forms/TagInput/TagInput.module.css.mjs +22 -0
- package/dist/components/forms/TagInput/index.d.ts +1 -0
- package/dist/components/forms/Textarea/Textarea.cjs.js +1 -0
- package/dist/components/forms/Textarea/Textarea.d.ts +62 -0
- package/dist/components/forms/Textarea/Textarea.mjs +151 -0
- package/dist/components/forms/Textarea/Textarea.module.css.cjs.js +1 -0
- package/dist/components/forms/Textarea/Textarea.module.css.mjs +30 -0
- package/dist/components/forms/Textarea/index.d.ts +1 -0
- package/dist/components/forms/TimePicker/TimePicker.cjs.js +1 -0
- package/dist/components/forms/TimePicker/TimePicker.d.ts +116 -0
- package/dist/components/forms/TimePicker/TimePicker.mjs +161 -0
- package/dist/components/forms/TimePicker/TimePicker.module.css.cjs.js +1 -0
- package/dist/components/forms/TimePicker/TimePicker.module.css.mjs +9 -0
- package/dist/components/forms/TimePicker/index.d.ts +1 -0
- package/dist/components/forms/TimePicker/timeUtils.cjs.js +1 -0
- package/dist/components/forms/TimePicker/timeUtils.d.ts +23 -0
- package/dist/components/forms/TimePicker/timeUtils.mjs +117 -0
- package/dist/components/forms/ToggleGroup/ToggleGroup.cjs.js +1 -0
- package/dist/components/forms/ToggleGroup/ToggleGroup.d.ts +153 -0
- package/dist/components/forms/ToggleGroup/ToggleGroup.mjs +201 -0
- package/dist/components/forms/ToggleGroup/ToggleGroup.module.css.cjs.js +1 -0
- package/dist/components/forms/ToggleGroup/ToggleGroup.module.css.mjs +58 -0
- package/dist/components/forms/ToggleGroup/index.d.ts +1 -0
- package/dist/components/layout/Box/Box.cjs.js +1 -0
- package/dist/components/layout/Box/Box.d.ts +120 -0
- package/dist/components/layout/Box/Box.mjs +158 -0
- package/dist/components/layout/Box/Box.module.css.cjs.js +1 -0
- package/dist/components/layout/Box/Box.module.css.mjs +83 -0
- package/dist/components/layout/Box/index.d.ts +1 -0
- package/dist/components/layout/Container/Container.cjs.js +1 -0
- package/dist/components/layout/Container/Container.d.ts +30 -0
- package/dist/components/layout/Container/Container.mjs +48 -0
- package/dist/components/layout/Container/Container.module.css.cjs.js +1 -0
- package/dist/components/layout/Container/Container.module.css.mjs +43 -0
- package/dist/components/layout/Container/index.d.ts +1 -0
- package/dist/components/layout/Divider/Divider.cjs.js +1 -0
- package/dist/components/layout/Divider/Divider.d.ts +65 -0
- package/dist/components/layout/Divider/Divider.mjs +77 -0
- package/dist/components/layout/Divider/Divider.module.css.cjs.js +1 -0
- package/dist/components/layout/Divider/Divider.module.css.mjs +31 -0
- package/dist/components/layout/Divider/index.d.ts +1 -0
- package/dist/components/layout/Flex/Flex.cjs.js +1 -0
- package/dist/components/layout/Flex/Flex.d.ts +96 -0
- package/dist/components/layout/Flex/Flex.mjs +60 -0
- package/dist/components/layout/Flex/Flex.module.css.cjs.js +1 -0
- package/dist/components/layout/Flex/Flex.module.css.mjs +60 -0
- package/dist/components/layout/Flex/index.d.ts +1 -0
- package/dist/components/layout/Grid/Grid.cjs.js +1 -0
- package/dist/components/layout/Grid/Grid.d.ts +127 -0
- package/dist/components/layout/Grid/Grid.mjs +74 -0
- package/dist/components/layout/Grid/Grid.module.css.cjs.js +1 -0
- package/dist/components/layout/Grid/Grid.module.css.mjs +22 -0
- package/dist/components/layout/Grid/index.d.ts +1 -0
- package/dist/components/layout/ResizablePanels/ResizablePanels.cjs.js +1 -0
- package/dist/components/layout/ResizablePanels/ResizablePanels.d.ts +48 -0
- package/dist/components/layout/ResizablePanels/ResizablePanels.mjs +175 -0
- package/dist/components/layout/ResizablePanels/ResizablePanels.module.css.cjs.js +1 -0
- package/dist/components/layout/ResizablePanels/ResizablePanels.module.css.mjs +9 -0
- package/dist/components/layout/ResizablePanels/index.d.ts +1 -0
- package/dist/components/layout/ScrollArea/ScrollArea.cjs.js +1 -0
- package/dist/components/layout/ScrollArea/ScrollArea.d.ts +65 -0
- package/dist/components/layout/ScrollArea/ScrollArea.mjs +152 -0
- package/dist/components/layout/ScrollArea/ScrollArea.module.css.cjs.js +1 -0
- package/dist/components/layout/ScrollArea/ScrollArea.module.css.mjs +13 -0
- package/dist/components/layout/ScrollArea/index.d.ts +1 -0
- package/dist/components/layout/Stack/Stack.cjs.js +1 -0
- package/dist/components/layout/Stack/Stack.d.ts +81 -0
- package/dist/components/layout/Stack/Stack.mjs +70 -0
- package/dist/components/layout/Stack/Stack.module.css.cjs.js +1 -0
- package/dist/components/layout/Stack/Stack.module.css.mjs +43 -0
- package/dist/components/layout/Stack/index.d.ts +1 -0
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.cjs.js +1 -0
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.d.ts +111 -0
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.mjs +147 -0
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.module.css.cjs.js +1 -0
- package/dist/components/navigation/Breadcrumbs/Breadcrumbs.module.css.mjs +21 -0
- package/dist/components/navigation/Breadcrumbs/index.d.ts +1 -0
- package/dist/components/navigation/ContextMenu/ContextMenu.cjs.js +1 -0
- package/dist/components/navigation/ContextMenu/ContextMenu.d.ts +67 -0
- package/dist/components/navigation/ContextMenu/ContextMenu.mjs +168 -0
- package/dist/components/navigation/ContextMenu/ContextMenu.module.css.cjs.js +1 -0
- package/dist/components/navigation/ContextMenu/ContextMenu.module.css.mjs +7 -0
- package/dist/components/navigation/ContextMenu/index.d.ts +1 -0
- package/dist/components/navigation/Link/Link.cjs.js +1 -0
- package/dist/components/navigation/Link/Link.d.ts +93 -0
- package/dist/components/navigation/Link/Link.mjs +83 -0
- package/dist/components/navigation/Link/Link.module.css.cjs.js +1 -0
- package/dist/components/navigation/Link/Link.module.css.mjs +31 -0
- package/dist/components/navigation/Link/index.d.ts +1 -0
- package/dist/components/navigation/Menu/Menu.cjs.js +1 -0
- package/dist/components/navigation/Menu/Menu.d.ts +61 -0
- package/dist/components/navigation/Menu/Menu.mjs +72 -0
- package/dist/components/navigation/Menu/Menu.module.css.cjs.js +1 -0
- package/dist/components/navigation/Menu/Menu.module.css.mjs +22 -0
- package/dist/components/navigation/Menu/MenuContent.cjs.js +1 -0
- package/dist/components/navigation/Menu/MenuContent.d.ts +46 -0
- package/dist/components/navigation/Menu/MenuContent.mjs +180 -0
- package/dist/components/navigation/Menu/MenuContext.cjs.js +1 -0
- package/dist/components/navigation/Menu/MenuContext.d.ts +84 -0
- package/dist/components/navigation/Menu/MenuContext.mjs +60 -0
- package/dist/components/navigation/Menu/MenuItem.cjs.js +1 -0
- package/dist/components/navigation/Menu/MenuItem.d.ts +133 -0
- package/dist/components/navigation/Menu/MenuItem.mjs +250 -0
- package/dist/components/navigation/Menu/MenuSub.cjs.js +1 -0
- package/dist/components/navigation/Menu/MenuSub.d.ts +28 -0
- package/dist/components/navigation/Menu/MenuSub.mjs +93 -0
- package/dist/components/navigation/Menu/index.d.ts +1 -0
- package/dist/components/navigation/Menu/useMenuRoot.cjs.js +1 -0
- package/dist/components/navigation/Menu/useMenuRoot.d.ts +14 -0
- package/dist/components/navigation/Menu/useMenuRoot.mjs +59 -0
- package/dist/components/navigation/Navbar/Navbar.cjs.js +1 -0
- package/dist/components/navigation/Navbar/Navbar.d.ts +245 -0
- package/dist/components/navigation/Navbar/Navbar.mjs +249 -0
- package/dist/components/navigation/Navbar/Navbar.module.css.cjs.js +1 -0
- package/dist/components/navigation/Navbar/Navbar.module.css.mjs +49 -0
- package/dist/components/navigation/Navbar/index.d.ts +1 -0
- package/dist/components/navigation/Pagination/Pagination.cjs.js +1 -0
- package/dist/components/navigation/Pagination/Pagination.d.ts +97 -0
- package/dist/components/navigation/Pagination/Pagination.mjs +133 -0
- package/dist/components/navigation/Pagination/Pagination.module.css.cjs.js +1 -0
- package/dist/components/navigation/Pagination/Pagination.module.css.mjs +19 -0
- package/dist/components/navigation/Pagination/index.d.ts +1 -0
- package/dist/components/navigation/Sidebar/Sidebar.cjs.js +1 -0
- package/dist/components/navigation/Sidebar/Sidebar.d.ts +90 -0
- package/dist/components/navigation/Sidebar/Sidebar.mjs +113 -0
- package/dist/components/navigation/Sidebar/Sidebar.module.css.cjs.js +1 -0
- package/dist/components/navigation/Sidebar/Sidebar.module.css.mjs +34 -0
- package/dist/components/navigation/Sidebar/Sidebar.storyHelpers.d.ts +27 -0
- package/dist/components/navigation/Sidebar/SidebarContext.cjs.js +1 -0
- package/dist/components/navigation/Sidebar/SidebarContext.d.ts +45 -0
- package/dist/components/navigation/Sidebar/SidebarContext.mjs +21 -0
- package/dist/components/navigation/Sidebar/SidebarParts.cjs.js +1 -0
- package/dist/components/navigation/Sidebar/SidebarParts.d.ts +179 -0
- package/dist/components/navigation/Sidebar/SidebarParts.mjs +242 -0
- package/dist/components/navigation/Sidebar/index.d.ts +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.cjs.js +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.d.ts +41 -0
- package/dist/components/navigation/SkipLink/SkipLink.mjs +52 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.cjs.js +1 -0
- package/dist/components/navigation/SkipLink/SkipLink.module.css.mjs +8 -0
- package/dist/components/navigation/SkipLink/index.d.ts +1 -0
- package/dist/components/navigation/Stepper/Stepper.cjs.js +1 -0
- package/dist/components/navigation/Stepper/Stepper.d.ts +109 -0
- package/dist/components/navigation/Stepper/Stepper.mjs +185 -0
- package/dist/components/navigation/Stepper/Stepper.module.css.cjs.js +1 -0
- package/dist/components/navigation/Stepper/Stepper.module.css.mjs +32 -0
- package/dist/components/navigation/Stepper/index.d.ts +1 -0
- package/dist/components/navigation/Tabs/Tabs.cjs.js +1 -0
- package/dist/components/navigation/Tabs/Tabs.d.ts +132 -0
- package/dist/components/navigation/Tabs/Tabs.mjs +300 -0
- package/dist/components/navigation/Tabs/Tabs.module.css.cjs.js +1 -0
- package/dist/components/navigation/Tabs/Tabs.module.css.mjs +26 -0
- package/dist/components/navigation/Tabs/index.d.ts +1 -0
- package/dist/components/overlays/CommandPalette/CommandPalette.cjs.js +1 -0
- package/dist/components/overlays/CommandPalette/CommandPalette.d.ts +152 -0
- package/dist/components/overlays/CommandPalette/CommandPalette.mjs +375 -0
- package/dist/components/overlays/CommandPalette/CommandPalette.module.css.cjs.js +1 -0
- package/dist/components/overlays/CommandPalette/CommandPalette.module.css.mjs +33 -0
- package/dist/components/overlays/CommandPalette/CommandPaletteContext.cjs.js +1 -0
- package/dist/components/overlays/CommandPalette/CommandPaletteContext.d.ts +96 -0
- package/dist/components/overlays/CommandPalette/CommandPaletteContext.mjs +11 -0
- package/dist/components/overlays/CommandPalette/CommandPaletteParts.cjs.js +1 -0
- package/dist/components/overlays/CommandPalette/CommandPaletteParts.d.ts +115 -0
- package/dist/components/overlays/CommandPalette/CommandPaletteParts.mjs +304 -0
- package/dist/components/overlays/CommandPalette/commandPaletteUtils.cjs.js +1 -0
- package/dist/components/overlays/CommandPalette/commandPaletteUtils.d.ts +50 -0
- package/dist/components/overlays/CommandPalette/commandPaletteUtils.mjs +147 -0
- package/dist/components/overlays/CommandPalette/index.d.ts +1 -0
- package/dist/components/overlays/Drawer/Drawer.cjs.js +1 -0
- package/dist/components/overlays/Drawer/Drawer.d.ts +148 -0
- package/dist/components/overlays/Drawer/Drawer.mjs +106 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.cjs.js +1 -0
- package/dist/components/overlays/Drawer/Drawer.module.css.mjs +34 -0
- package/dist/components/overlays/Drawer/Drawer.storyHelpers.d.ts +16 -0
- package/dist/components/overlays/Drawer/DrawerContent.cjs.js +1 -0
- package/dist/components/overlays/Drawer/DrawerContent.d.ts +27 -0
- package/dist/components/overlays/Drawer/DrawerContent.mjs +192 -0
- package/dist/components/overlays/Drawer/DrawerContext.cjs.js +1 -0
- package/dist/components/overlays/Drawer/DrawerContext.d.ts +39 -0
- package/dist/components/overlays/Drawer/DrawerContext.mjs +10 -0
- package/dist/components/overlays/Drawer/DrawerParts.cjs.js +1 -0
- package/dist/components/overlays/Drawer/DrawerParts.d.ts +65 -0
- package/dist/components/overlays/Drawer/DrawerParts.mjs +63 -0
- package/dist/components/overlays/Drawer/index.d.ts +1 -0
- package/dist/components/overlays/Drawer/internal.cjs.js +1 -0
- package/dist/components/overlays/Drawer/internal.d.ts +1 -0
- package/dist/components/overlays/Drawer/internal.mjs +4 -0
- package/dist/components/overlays/Drawer/useDragToClose.cjs.js +1 -0
- package/dist/components/overlays/Drawer/useDragToClose.d.ts +28 -0
- package/dist/components/overlays/Drawer/useDragToClose.mjs +42 -0
- package/dist/components/overlays/HoverCard/HoverCard.cjs.js +1 -0
- package/dist/components/overlays/HoverCard/HoverCard.d.ts +50 -0
- package/dist/components/overlays/HoverCard/HoverCard.mjs +173 -0
- package/dist/components/overlays/HoverCard/HoverCard.module.css.cjs.js +1 -0
- package/dist/components/overlays/HoverCard/HoverCard.module.css.mjs +12 -0
- package/dist/components/overlays/HoverCard/index.d.ts +1 -0
- package/dist/components/overlays/Modal/ConfirmModal.cjs.js +1 -0
- package/dist/components/overlays/Modal/ConfirmModal.d.ts +47 -0
- package/dist/components/overlays/Modal/ConfirmModal.mjs +76 -0
- package/dist/components/overlays/Modal/Modal.cjs.js +1 -0
- package/dist/components/overlays/Modal/Modal.d.ts +150 -0
- package/dist/components/overlays/Modal/Modal.mjs +153 -0
- package/dist/components/overlays/Modal/Modal.module.css.cjs.js +1 -0
- package/dist/components/overlays/Modal/Modal.module.css.mjs +36 -0
- package/dist/components/overlays/Modal/ModalContent.cjs.js +1 -0
- package/dist/components/overlays/Modal/ModalContent.d.ts +12 -0
- package/dist/components/overlays/Modal/ModalContent.mjs +160 -0
- package/dist/components/overlays/Modal/ModalContext.cjs.js +1 -0
- package/dist/components/overlays/Modal/ModalContext.d.ts +56 -0
- package/dist/components/overlays/Modal/ModalContext.mjs +10 -0
- package/dist/components/overlays/Modal/index.d.ts +2 -0
- package/dist/components/overlays/Modal/useScrollRegion.cjs.js +1 -0
- package/dist/components/overlays/Modal/useScrollRegion.d.ts +7 -0
- package/dist/components/overlays/Modal/useScrollRegion.mjs +25 -0
- package/dist/components/overlays/Popover/Popover.cjs.js +1 -0
- package/dist/components/overlays/Popover/Popover.d.ts +96 -0
- package/dist/components/overlays/Popover/Popover.mjs +150 -0
- package/dist/components/overlays/Popover/Popover.module.css.cjs.js +1 -0
- package/dist/components/overlays/Popover/Popover.module.css.mjs +16 -0
- package/dist/components/overlays/Popover/PopoverContent.cjs.js +1 -0
- package/dist/components/overlays/Popover/PopoverContent.d.ts +41 -0
- package/dist/components/overlays/Popover/PopoverContent.mjs +158 -0
- package/dist/components/overlays/Popover/PopoverContext.cjs.js +1 -0
- package/dist/components/overlays/Popover/PopoverContext.d.ts +38 -0
- package/dist/components/overlays/Popover/PopoverContext.mjs +11 -0
- package/dist/components/overlays/Popover/index.d.ts +1 -0
- package/dist/components/overlays/Tooltip/Tooltip.cjs.js +1 -0
- package/dist/components/overlays/Tooltip/Tooltip.d.ts +104 -0
- package/dist/components/overlays/Tooltip/Tooltip.mjs +153 -0
- package/dist/components/overlays/Tooltip/Tooltip.module.css.cjs.js +1 -0
- package/dist/components/overlays/Tooltip/Tooltip.module.css.mjs +13 -0
- package/dist/components/overlays/Tooltip/index.d.ts +1 -0
- package/dist/components/primitives/Button/Button.cjs.js +1 -0
- package/dist/components/primitives/Button/Button.d.ts +123 -0
- package/dist/components/primitives/Button/Button.mjs +194 -0
- package/dist/components/primitives/Button/Button.module.css.cjs.js +1 -0
- package/dist/components/primitives/Button/Button.module.css.mjs +63 -0
- package/dist/components/primitives/Button/index.d.ts +1 -0
- package/dist/components/primitives/Icon/Icon.cjs.js +1 -0
- package/dist/components/primitives/Icon/Icon.d.ts +17 -0
- package/dist/components/primitives/Icon/Icon.mjs +11 -0
- package/dist/components/primitives/Icon/Icon.module.css.cjs.js +1 -0
- package/dist/components/primitives/Icon/Icon.module.css.mjs +21 -0
- package/dist/components/primitives/Icon/IconSvg.cjs.js +1 -0
- package/dist/components/primitives/Icon/IconSvg.d.ts +31 -0
- package/dist/components/primitives/Icon/IconSvg.mjs +47 -0
- package/dist/components/primitives/Icon/icons.cjs.js +1 -0
- package/dist/components/primitives/Icon/icons.d.ts +315 -0
- package/dist/components/primitives/Icon/icons.mjs +285 -0
- package/dist/components/primitives/Icon/index.d.ts +2 -0
- package/dist/components/primitives/Kbd/Kbd.cjs.js +1 -0
- package/dist/components/primitives/Kbd/Kbd.d.ts +81 -0
- package/dist/components/primitives/Kbd/Kbd.mjs +175 -0
- package/dist/components/primitives/Kbd/Kbd.module.css.cjs.js +1 -0
- package/dist/components/primitives/Kbd/Kbd.module.css.mjs +16 -0
- package/dist/components/primitives/Kbd/index.d.ts +1 -0
- package/dist/components/primitives/Typography/Typography.cjs.js +1 -0
- package/dist/components/primitives/Typography/Typography.d.ts +111 -0
- package/dist/components/primitives/Typography/Typography.mjs +147 -0
- package/dist/components/primitives/Typography/Typography.module.css.cjs.js +1 -0
- package/dist/components/primitives/Typography/Typography.module.css.mjs +49 -0
- package/dist/components/primitives/Typography/index.d.ts +1 -0
- package/dist/components/utilities/LocaleProvider/LocaleProvider.cjs.js +1 -0
- package/dist/components/utilities/LocaleProvider/LocaleProvider.d.ts +58 -0
- package/dist/components/utilities/LocaleProvider/LocaleProvider.mjs +40 -0
- package/dist/components/utilities/LocaleProvider/LocaleProvider.module.css.cjs.js +1 -0
- package/dist/components/utilities/LocaleProvider/LocaleProvider.module.css.mjs +4 -0
- package/dist/components/utilities/LocaleProvider/index.d.ts +1 -0
- package/dist/components/utilities/Portal/Portal.cjs.js +1 -0
- package/dist/components/utilities/Portal/Portal.d.ts +23 -0
- package/dist/components/utilities/Portal/Portal.mjs +27 -0
- package/dist/components/utilities/Portal/index.d.ts +1 -0
- package/dist/components/utilities/Theme/Theme.cjs.js +1 -0
- package/dist/components/utilities/Theme/Theme.d.ts +79 -0
- package/dist/components/utilities/Theme/Theme.mjs +86 -0
- package/dist/components/utilities/Theme/Theme.module.css.cjs.js +1 -0
- package/dist/components/utilities/Theme/Theme.module.css.mjs +7 -0
- package/dist/components/utilities/Theme/index.d.ts +1 -0
- package/dist/components/utilities/VisuallyHidden/VisuallyHidden.cjs.js +1 -0
- package/dist/components/utilities/VisuallyHidden/VisuallyHidden.d.ts +4 -0
- package/dist/components/utilities/VisuallyHidden/VisuallyHidden.mjs +10 -0
- package/dist/components/utilities/VisuallyHidden/VisuallyHidden.module.css.cjs.js +1 -0
- package/dist/components/utilities/VisuallyHidden/VisuallyHidden.module.css.mjs +4 -0
- package/dist/components/utilities/VisuallyHidden/index.d.ts +1 -0
- package/dist/hooks/elementSource.cjs.js +1 -0
- package/dist/hooks/elementSource.d.ts +16 -0
- package/dist/hooks/elementSource.mjs +17 -0
- package/dist/hooks/index.d.ts +21 -0
- package/dist/hooks/useClipboard.cjs.js +1 -0
- package/dist/hooks/useClipboard.d.ts +24 -0
- package/dist/hooks/useClipboard.mjs +23 -0
- package/dist/hooks/useControllableState.cjs.js +1 -0
- package/dist/hooks/useControllableState.d.ts +15 -0
- package/dist/hooks/useControllableState.mjs +13 -0
- package/dist/hooks/useDisclosure.cjs.js +1 -0
- package/dist/hooks/useDisclosure.d.ts +35 -0
- package/dist/hooks/useDisclosure.mjs +29 -0
- package/dist/hooks/useDismiss.cjs.js +1 -0
- package/dist/hooks/useDismiss.d.ts +33 -0
- package/dist/hooks/useDismiss.mjs +15 -0
- package/dist/hooks/useElementObservers.cjs.js +1 -0
- package/dist/hooks/useElementObservers.d.ts +70 -0
- package/dist/hooks/useElementObservers.mjs +88 -0
- package/dist/hooks/useEnvironment.cjs.js +1 -0
- package/dist/hooks/useEnvironment.d.ts +42 -0
- package/dist/hooks/useEnvironment.mjs +36 -0
- package/dist/hooks/useFloatingPosition.cjs.js +1 -0
- package/dist/hooks/useFloatingPosition.d.ts +55 -0
- package/dist/hooks/useFloatingPosition.mjs +116 -0
- package/dist/hooks/useFocusTrap.cjs.js +1 -0
- package/dist/hooks/useFocusTrap.d.ts +52 -0
- package/dist/hooks/useFocusTrap.mjs +93 -0
- package/dist/hooks/useFormReset.cjs.js +1 -0
- package/dist/hooks/useFormReset.d.ts +17 -0
- package/dist/hooks/useFormReset.mjs +16 -0
- package/dist/hooks/useFormValidation.cjs.js +1 -0
- package/dist/hooks/useFormValidation.d.ts +101 -0
- package/dist/hooks/useFormValidation.mjs +187 -0
- package/dist/hooks/useHotkeys.cjs.js +1 -0
- package/dist/hooks/useHotkeys.d.ts +50 -0
- package/dist/hooks/useHotkeys.mjs +39 -0
- package/dist/hooks/useInertOutside.cjs.js +1 -0
- package/dist/hooks/useInertOutside.d.ts +23 -0
- package/dist/hooks/useInertOutside.mjs +83 -0
- package/dist/hooks/useMediaQuery.cjs.js +1 -0
- package/dist/hooks/useMediaQuery.d.ts +11 -0
- package/dist/hooks/useMediaQuery.mjs +13 -0
- package/dist/hooks/useMergedRef.cjs.js +1 -0
- package/dist/hooks/useMergedRef.d.ts +7 -0
- package/dist/hooks/useMergedRef.mjs +8 -0
- package/dist/hooks/useOverlayLayer.cjs.js +1 -0
- package/dist/hooks/useOverlayLayer.d.ts +92 -0
- package/dist/hooks/useOverlayLayer.mjs +163 -0
- package/dist/hooks/useResponsiveValue.cjs.js +1 -0
- package/dist/hooks/useResponsiveValue.d.ts +10 -0
- package/dist/hooks/useResponsiveValue.mjs +14 -0
- package/dist/hooks/useScrollLock.cjs.js +1 -0
- package/dist/hooks/useScrollLock.d.ts +4 -0
- package/dist/hooks/useScrollLock.mjs +30 -0
- package/dist/hooks/useStorage.cjs.js +1 -0
- package/dist/hooks/useStorage.d.ts +21 -0
- package/dist/hooks/useStorage.mjs +70 -0
- package/dist/hooks/useTiming.cjs.js +1 -0
- package/dist/hooks/useTiming.d.ts +78 -0
- package/dist/hooks/useTiming.mjs +100 -0
- package/dist/hooks/useVirtualizer.cjs.js +1 -0
- package/dist/hooks/useVirtualizer.d.ts +77 -0
- package/dist/hooks/useVirtualizer.mjs +115 -0
- package/dist/i18n/en.cjs.js +1 -0
- package/dist/i18n/en.d.ts +3 -0
- package/dist/i18n/en.mjs +565 -0
- package/dist/i18n/index.d.ts +4 -0
- package/dist/i18n/locales/ar.d.ts +3 -0
- package/dist/i18n/locales/bn.d.ts +3 -0
- package/dist/i18n/locales/cs.d.ts +3 -0
- package/dist/i18n/locales/da.d.ts +3 -0
- package/dist/i18n/locales/de.d.ts +3 -0
- package/dist/i18n/locales/el.d.ts +3 -0
- package/dist/i18n/locales/es.d.ts +3 -0
- package/dist/i18n/locales/fa.d.ts +3 -0
- package/dist/i18n/locales/fi.d.ts +3 -0
- package/dist/i18n/locales/fr.d.ts +3 -0
- package/dist/i18n/locales/he.d.ts +3 -0
- package/dist/i18n/locales/hi.d.ts +3 -0
- package/dist/i18n/locales/hu.d.ts +3 -0
- package/dist/i18n/locales/id.d.ts +3 -0
- package/dist/i18n/locales/it.d.ts +3 -0
- package/dist/i18n/locales/ja.d.ts +3 -0
- package/dist/i18n/locales/ko.d.ts +3 -0
- package/dist/i18n/locales/nb.d.ts +3 -0
- package/dist/i18n/locales/nl.d.ts +3 -0
- package/dist/i18n/locales/pl.d.ts +3 -0
- package/dist/i18n/locales/pt-BR.d.ts +3 -0
- package/dist/i18n/locales/ro.d.ts +3 -0
- package/dist/i18n/locales/ru.d.ts +3 -0
- package/dist/i18n/locales/sv.d.ts +3 -0
- package/dist/i18n/locales/th.d.ts +3 -0
- package/dist/i18n/locales/tr.d.ts +3 -0
- package/dist/i18n/locales/uk.d.ts +3 -0
- package/dist/i18n/locales/ur.d.ts +3 -0
- package/dist/i18n/locales/vi.d.ts +3 -0
- package/dist/i18n/locales/zh-Hans.d.ts +3 -0
- package/dist/i18n/locales/zh-Hant.d.ts +3 -0
- package/dist/i18n/merge.cjs.js +1 -0
- package/dist/i18n/merge.d.ts +6 -0
- package/dist/i18n/merge.mjs +12 -0
- package/dist/i18n/plural.cjs.js +1 -0
- package/dist/i18n/plural.d.ts +45 -0
- package/dist/i18n/plural.mjs +43 -0
- package/dist/i18n/types.d.ts +619 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.d.ts +81 -0
- package/dist/index.mjs +143 -0
- package/dist/locales/ar.cjs.js +1 -0
- package/dist/locales/ar.d.ts +6 -0
- package/dist/locales/ar.mjs +585 -0
- package/dist/locales/bn.cjs.js +1 -0
- package/dist/locales/bn.d.ts +6 -0
- package/dist/locales/bn.mjs +512 -0
- package/dist/locales/cs.cjs.js +1 -0
- package/dist/locales/cs.d.ts +6 -0
- package/dist/locales/cs.mjs +594 -0
- package/dist/locales/da.cjs.js +1 -0
- package/dist/locales/da.d.ts +6 -0
- package/dist/locales/da.mjs +562 -0
- package/dist/locales/de.cjs.js +1 -0
- package/dist/locales/de.d.ts +6 -0
- package/dist/locales/de.mjs +562 -0
- package/dist/locales/el.cjs.js +1 -0
- package/dist/locales/el.d.ts +6 -0
- package/dist/locales/el.mjs +562 -0
- package/dist/locales/es.cjs.js +1 -0
- package/dist/locales/es.d.ts +6 -0
- package/dist/locales/es.mjs +565 -0
- package/dist/locales/fa.cjs.js +1 -0
- package/dist/locales/fa.d.ts +6 -0
- package/dist/locales/fa.mjs +512 -0
- package/dist/locales/fi.cjs.js +1 -0
- package/dist/locales/fi.d.ts +6 -0
- package/dist/locales/fi.mjs +562 -0
- package/dist/locales/fr.cjs.js +1 -0
- package/dist/locales/fr.d.ts +6 -0
- package/dist/locales/fr.mjs +565 -0
- package/dist/locales/he.cjs.js +1 -0
- package/dist/locales/he.d.ts +6 -0
- package/dist/locales/he.mjs +573 -0
- package/dist/locales/hi.cjs.js +1 -0
- package/dist/locales/hi.d.ts +6 -0
- package/dist/locales/hi.mjs +562 -0
- package/dist/locales/hu.cjs.js +1 -0
- package/dist/locales/hu.d.ts +6 -0
- package/dist/locales/hu.mjs +512 -0
- package/dist/locales/id.cjs.js +1 -0
- package/dist/locales/id.d.ts +6 -0
- package/dist/locales/id.mjs +512 -0
- package/dist/locales/it.cjs.js +1 -0
- package/dist/locales/it.d.ts +6 -0
- package/dist/locales/it.mjs +565 -0
- package/dist/locales/ja.cjs.js +1 -0
- package/dist/locales/ja.d.ts +6 -0
- package/dist/locales/ja.mjs +512 -0
- package/dist/locales/ko.cjs.js +1 -0
- package/dist/locales/ko.d.ts +6 -0
- package/dist/locales/ko.mjs +512 -0
- package/dist/locales/nb.cjs.js +1 -0
- package/dist/locales/nb.d.ts +6 -0
- package/dist/locales/nb.mjs +562 -0
- package/dist/locales/nl.cjs.js +1 -0
- package/dist/locales/nl.d.ts +6 -0
- package/dist/locales/nl.mjs +562 -0
- package/dist/locales/pl.cjs.js +1 -0
- package/dist/locales/pl.d.ts +6 -0
- package/dist/locales/pl.mjs +594 -0
- package/dist/locales/pt-BR.cjs.js +1 -0
- package/dist/locales/pt-BR.d.ts +6 -0
- package/dist/locales/pt-BR.mjs +565 -0
- package/dist/locales/ro.cjs.js +1 -0
- package/dist/locales/ro.d.ts +6 -0
- package/dist/locales/ro.mjs +578 -0
- package/dist/locales/ru.cjs.js +1 -0
- package/dist/locales/ru.d.ts +6 -0
- package/dist/locales/ru.mjs +594 -0
- package/dist/locales/sv.cjs.js +1 -0
- package/dist/locales/sv.d.ts +6 -0
- package/dist/locales/sv.mjs +562 -0
- package/dist/locales/th.cjs.js +1 -0
- package/dist/locales/th.d.ts +6 -0
- package/dist/locales/th.mjs +512 -0
- package/dist/locales/tr.cjs.js +1 -0
- package/dist/locales/tr.d.ts +6 -0
- package/dist/locales/tr.mjs +512 -0
- package/dist/locales/uk.cjs.js +1 -0
- package/dist/locales/uk.d.ts +6 -0
- package/dist/locales/uk.mjs +594 -0
- package/dist/locales/ur.cjs.js +1 -0
- package/dist/locales/ur.d.ts +6 -0
- package/dist/locales/ur.mjs +562 -0
- package/dist/locales/vi.cjs.js +1 -0
- package/dist/locales/vi.d.ts +6 -0
- package/dist/locales/vi.mjs +512 -0
- package/dist/locales/zh-Hans.cjs.js +1 -0
- package/dist/locales/zh-Hans.d.ts +6 -0
- package/dist/locales/zh-Hans.mjs +512 -0
- package/dist/locales/zh-Hant.cjs.js +1 -0
- package/dist/locales/zh-Hant.d.ts +6 -0
- package/dist/locales/zh-Hant.mjs +512 -0
- package/dist/types/common.cjs.js +1 -0
- package/dist/types/common.d.ts +31 -0
- package/dist/types/common.mjs +10 -0
- package/dist/types/style.d.ts +7 -0
- package/dist/utils/announce.cjs.js +1 -0
- package/dist/utils/announce.d.ts +1 -0
- package/dist/utils/announce.mjs +26 -0
- package/dist/utils/brandPalette.cjs.js +3 -0
- package/dist/utils/brandPalette.d.ts +146 -0
- package/dist/utils/brandPalette.mjs +387 -0
- package/dist/utils/clipboard.cjs.js +1 -0
- package/dist/utils/clipboard.d.ts +6 -0
- package/dist/utils/clipboard.mjs +21 -0
- package/dist/utils/cx.cjs.js +1 -0
- package/dist/utils/cx.d.ts +2 -0
- package/dist/utils/cx.mjs +6 -0
- package/dist/utils/fillSlot.cjs.js +1 -0
- package/dist/utils/fillSlot.d.ts +9 -0
- package/dist/utils/fillSlot.mjs +5 -0
- package/dist/utils/flattenChildren.cjs.js +1 -0
- package/dist/utils/flattenChildren.d.ts +8 -0
- package/dist/utils/flattenChildren.mjs +7 -0
- package/dist/utils/hotkeys.cjs.js +1 -0
- package/dist/utils/hotkeys.d.ts +27 -0
- package/dist/utils/hotkeys.mjs +45 -0
- package/dist/utils/index.d.ts +11 -0
- package/dist/utils/refs.cjs.js +1 -0
- package/dist/utils/refs.d.ts +15 -0
- package/dist/utils/refs.mjs +27 -0
- package/dist/utils/responsive.cjs.js +1 -0
- package/dist/utils/responsive.d.ts +43 -0
- package/dist/utils/responsive.mjs +63 -0
- package/dist/utils/slot.cjs.js +1 -0
- package/dist/utils/slot.d.ts +11 -0
- package/dist/utils/slot.mjs +21 -0
- package/dist/utils/validators.cjs.js +1 -0
- package/dist/utils/validators.d.ts +72 -0
- package/dist/utils/validators.mjs +61 -0
- package/dist/vjdesigns-ui.css +2 -0
- package/package.json +88 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("../../../hooks/useControllableState.cjs.js"),t=require("../../../hooks/useMergedRef.cjs.js"),n=require("../../../utils/cx.cjs.js"),r=require("../../primitives/Icon/icons.cjs.js"),i=require("./Accordion.module.css.cjs.js");let a=require("react"),o=require("react/jsx-runtime"),s=require("react-dom");var c=6,l={separated:i.default.separated,contained:i.default.contained,flush:i.default.flush},u={sm:i.default.sm,md:i.default.md,lg:i.default.lg},d={start:i.default.iconStart,end:i.default.iconEnd},f={sm:`sm`,md:`md`,lg:`md`},p=(0,a.createContext)(null);function m(e){let t=(0,a.useContext)(p);if(!t)throw Error(`<${e}> must be used inside <Accordion>.`);return t}var h=(0,a.createContext)(null);function g(e){let t=(0,a.useContext)(h);if(!t)throw Error(`<${e}> must be used inside <Accordion.Item>.`);return t}var _=e=>Array.isArray(e)?e:e==null?[]:[e],v=r=>{let{type:s=`single`,collapsible:c=!0,value:f,defaultValue:m,onValueChange:h,variant:g=`separated`,size:v=`md`,headingLevel:y=3,icon:b=`chevron`,iconPosition:x=`end`,keyboardNavigation:S=!0,regionRole:C=`auto`,forceMount:w=!1,hiddenUntilFound:T=!1,disabled:E=!1,className:D,children:O,ref:k,...A}=r,j=s===`multiple`,[M,N]=e.useControllableState({value:f,defaultValue:m??(j?[]:null),onChange:h}),P=(0,a.useMemo)(()=>_(M),[M]),F=(0,a.useCallback)((e,t)=>{N(n=>{let r=_(n);return t===r.includes(e)?n:j?t?[...r,e]:r.filter(t=>t!==e):t?e:c?null:n})},[N,j,c]),I=(0,a.useCallback)(e=>F(e,!P.includes(e)),[F,P]),[L,R]=(0,a.useState)(0),z=(0,a.useCallback)(()=>(R(e=>e+1),()=>R(e=>e-1)),[]),B=C===`auto`?L<=6:C,V=(0,a.useRef)(null),H=t.useMergedRef(k,V),U=(0,a.useMemo)(()=>({rootRef:V,openValues:P,multiple:j,collapsible:j?!0:c,disabled:E,headingLevel:y,size:v,icon:b,iconPosition:x,keyboardNavigation:S,isRegion:B,forceMount:w,hiddenUntilFound:T,toggle:I,setItemOpen:F,registerItem:z}),[P,j,c,E,y,v,b,x,S,B,w,T,I,F,z]);return(0,o.jsx)(p.Provider,{value:U,children:(0,o.jsx)(`div`,{...A,ref:H,"data-accordion-root":``,"data-orientation":`vertical`,className:n.cx(i.default.root,l[g],u[v],d[x],D),children:O})})},y=({value:e,disabled:t=!1,headingLevel:r,className:s,children:c,...l})=>{let u=m(`Accordion.Item`),d=(0,a.useId)(),[f,p]=(0,a.useState)(),[g,_]=(0,a.useState)(),{registerItem:v}=u;(0,a.useLayoutEffect)(()=>v(),[v]);let y=u.openValues.includes(e),b=u.disabled||t,x=(0,a.useMemo)(()=>({value:e,open:y,disabled:b,headingLevel:r??u.headingLevel,triggerId:f??`${d}-trigger`,contentId:g??`${d}-content`,setTriggerId:p,setContentId:_}),[e,y,b,r,u.headingLevel,f,g,d]);return(0,o.jsx)(h.Provider,{value:x,children:(0,o.jsx)(`div`,{...l,"data-state":y?`open`:`closed`,"data-disabled":b?``:void 0,className:n.cx(i.default.item,s),children:c})})},b=({size:e})=>(0,o.jsx)(r.ChevronDownIcon,{size:e,className:i.default.rotating}),x=({size:e})=>(0,o.jsxs)(`span`,{className:i.default.plusMinus,children:[(0,o.jsx)(r.PlusIcon,{size:e,className:i.default.plus}),(0,o.jsx)(r.MinusIcon,{size:e,className:i.default.minus})]}),S=({children:e,description:t,startIcon:r,badge:s,headingClassName:c,className:l,id:u,onClick:d,onKeyDown:p,disabled:h,..._})=>{let v=m(`Accordion.Trigger`),y=g(`Accordion.Trigger`),S=(0,a.useId)(),C=`${S}-title`,w=`${S}-description`,T=`${S}-badge`,{setTriggerId:E}=y;(0,a.useLayoutEffect)(()=>{E(u)},[u,E]);let D=y.disabled||!!h,O=y.open&&!v.collapsible,k=e=>{d?.(e),!(e.defaultPrevented||D||O)&&v.toggle(y.value)},A=e=>{if(p?.(e),e.defaultPrevented||!v.keyboardNavigation||e.altKey||e.ctrlKey||e.metaKey||e.shiftKey)return;let t=v.rootRef.current;if(!t)return;let n=Array.from(t.querySelectorAll(`[data-accordion-trigger]`)).filter(e=>e.closest(`[data-accordion-root]`)===t&&!e.disabled),r=n.indexOf(e.currentTarget);if(r===-1||n.length===0)return;let i=null;switch(e.key){case`ArrowDown`:i=(r+1)%n.length;break;case`ArrowUp`:i=(r-1+n.length)%n.length;break;case`Home`:i=0;break;case`End`:i=n.length-1;break;default:return}e.preventDefault(),n[i]?.focus()},j=f[v.size],{icon:M}=v,N=null;M===`chevron`?N=(0,o.jsx)(b,{size:j}):M===`plus-minus`?N=(0,o.jsx)(x,{size:j}):typeof M==`function`?N=M({open:y.open,disabled:D}):(0,a.isValidElement)(M)&&(N=(0,o.jsx)(`span`,{className:i.default.rotating,children:M}));let P=M===`none`||N==null?null:(0,o.jsx)(`span`,{className:i.default.indicator,"aria-hidden":`true`,children:N}),F=s!=null&&s!==!1,I=t!=null&&t!==!1&&t!==``,L=`h${y.headingLevel}`;return(0,o.jsx)(L,{className:n.cx(i.default.heading,c),children:(0,o.jsxs)(`button`,{"aria-labelledby":F?`${C} ${T}`:C,"aria-describedby":I?w:void 0,..._,type:`button`,id:y.triggerId,"data-accordion-trigger":``,"data-state":y.open?`open`:`closed`,"data-disabled":D?``:void 0,"aria-expanded":y.open,"aria-controls":y.contentId,"aria-disabled":O&&!D?!0:void 0,disabled:D,className:n.cx(i.default.trigger,O&&i.default.locked,l),onClick:k,onKeyDown:A,children:[v.iconPosition===`start`&&P,r!=null&&(0,o.jsx)(`span`,{className:i.default.startIcon,"aria-hidden":`true`,children:r}),(0,o.jsxs)(`span`,{className:i.default.text,children:[(0,o.jsx)(`span`,{id:C,className:i.default.title,children:e}),I&&(0,o.jsx)(`span`,{id:w,className:i.default.description,children:t})]}),F&&(0,o.jsx)(`span`,{id:T,className:i.default.badge,children:s}),v.iconPosition===`end`&&P]})})};function C(e){let t=getComputedStyle(e),n=e=>e.split(`,`).map(e=>{let t=parseFloat(e);return Number.isNaN(t)?0:e.trim().endsWith(`ms`)?t:t*1e3}),r=n(t.transitionDuration),i=n(t.transitionDelay);return Math.max(0,...r.map((e,t)=>e+(i[t]??i[0]??0)))}var w=()=>typeof document<`u`&&!!document.body&&`onbeforematch`in document.body,T=({forceMount:e,hiddenUntilFound:r,bodyClassName:c,className:l,children:u,id:d,ref:f,...p})=>{let h=m(`Accordion.Content`),_=g(`Accordion.Content`),v=e??h.forceMount,y=r??h.hiddenUntilFound,{setContentId:b}=_;(0,a.useLayoutEffect)(()=>{b(d)},[d,b]);let x=_.open,S=(0,a.useRef)(null),T=t.useMergedRef(f,S),[E,D]=(0,a.useState)(x),[O,k]=(0,a.useState)(x),[A,j]=(0,a.useState)(!1),M=(0,a.useRef)(!1);(0,a.useLayoutEffect)(()=>{if(x){if(M.current){M.current=!1,j(!0),D(!0),k(!0);return}if(!E){D(!0);return}O||(S.current?.getBoundingClientRect(),k(!0))}else O&&k(!1)},[x,E,O]),(0,a.useEffect)(()=>{if(x||O||!E)return;let e=S.current,t=e?C(e):0;if(!e||t===0){D(!1);return}let n=()=>D(!1),r=t=>{t.target===e&&n()};e.addEventListener(`transitionend`,r);let i=window.setTimeout(n,t+50);return()=>{e.removeEventListener(`transitionend`,r),window.clearTimeout(i)}},[x,O,E]),(0,a.useEffect)(()=>{if(!A)return;let e=requestAnimationFrame(()=>j(!1));return()=>cancelAnimationFrame(e)},[A]);let[N,P]=(0,a.useState)(!1);(0,a.useEffect)(()=>{P(y&&w())},[y]),(0,a.useLayoutEffect)(()=>{let e=S.current;e&&N&&!E&&e.setAttribute(`hidden`,`until-found`)},[N,E]);let{setItemOpen:F}=h,I=_.value,L=_.disabled;(0,a.useEffect)(()=>{let e=S.current;if(!e||!N)return;let t=()=>{L||(M.current=!0,(0,s.flushSync)(()=>F(I,!0)))};return e.addEventListener(`beforematch`,t),()=>e.removeEventListener(`beforematch`,t)},[N,F,I,L]);let R=v||y||E;return(0,o.jsx)(`div`,{role:h.isRegion?`region`:void 0,"aria-labelledby":_.triggerId,...p,ref:T,id:_.contentId,"data-state":O?`open`:`closed`,"data-instant":A?``:void 0,hidden:!E,inert:E&&!O?!0:void 0,className:n.cx(i.default.content,l),children:(0,o.jsx)(`div`,{className:i.default.clip,children:(0,o.jsx)(`div`,{className:n.cx(i.default.body,c),children:R?u:null})})})},E=v;E.Item=y,E.Trigger=S,E.Content=T,exports.ACCORDION_AUTO_REGION_MAX=c,exports.Accordion=E,exports.AccordionContent=T,exports.AccordionItem=y,exports.AccordionTrigger=S;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { ComponentPropsWithRef, ReactElement, ReactNode } from 'react';
|
|
2
|
+
import { Size } from '../../../types/common';
|
|
3
|
+
import { HeadingLevel } from '../../primitives/Typography';
|
|
4
|
+
/**
|
|
5
|
+
* Visual style of the accordion.
|
|
6
|
+
* - `separated`: each item is its own rounded, softly shadowed card (the default, friendly look).
|
|
7
|
+
* - `contained`: one bordered card with dividers between items.
|
|
8
|
+
* - `flush`: dividers only, no outer border or background. Good inside cards and sidebars.
|
|
9
|
+
*/
|
|
10
|
+
export type AccordionVariant = "separated" | "contained" | "flush";
|
|
11
|
+
/** Which side of the trigger the expand indicator sits on. Logical, so `end` flips in RTL. */
|
|
12
|
+
export type AccordionIconPosition = "start" | "end";
|
|
13
|
+
/** Heading level (`h1`-`h6`) that wraps each trigger. */
|
|
14
|
+
export type AccordionHeadingLevel = HeadingLevel;
|
|
15
|
+
/** Render function for a fully custom indicator. Receives the item's open state; not rotated for you. */
|
|
16
|
+
export type AccordionIconRender = (state: {
|
|
17
|
+
open: boolean;
|
|
18
|
+
disabled: boolean;
|
|
19
|
+
}) => ReactNode;
|
|
20
|
+
/**
|
|
21
|
+
* Expand indicator.
|
|
22
|
+
* - `"chevron"`: a chevron that rotates 180 degrees when open (springy).
|
|
23
|
+
* - `"plus-minus"`: a plus that turns into a minus when open.
|
|
24
|
+
* - `"none"`: no indicator (the trigger still exposes `aria-expanded`).
|
|
25
|
+
* - A React element: your own icon, rotated 180 degrees when open like the chevron.
|
|
26
|
+
* - A function: `({ open, disabled }) => ReactNode`, rendered as-is with no rotation.
|
|
27
|
+
*/
|
|
28
|
+
export type AccordionIcon = "chevron" | "plus-minus" | "none" | ReactElement | AccordionIconRender;
|
|
29
|
+
/**
|
|
30
|
+
* Whether each panel is a `region` landmark labelled by its trigger.
|
|
31
|
+
* - `"auto"` (default): a region while the accordion has 6 items or fewer, and
|
|
32
|
+
* a plain group otherwise, per WAI-ARIA APG advice to avoid landmark proliferation.
|
|
33
|
+
* - `true`: always a region. `false`: never a region.
|
|
34
|
+
*/
|
|
35
|
+
export type AccordionRegionRole = "auto" | boolean;
|
|
36
|
+
/** Largest item count for which `regionRole="auto"` still renders regions. */
|
|
37
|
+
export declare const ACCORDION_AUTO_REGION_MAX = 6;
|
|
38
|
+
interface AccordionSharedProps extends Omit<ComponentPropsWithRef<"div">, "defaultValue" | "onChange"> {
|
|
39
|
+
/** Visual style. @default "separated" */
|
|
40
|
+
variant?: AccordionVariant;
|
|
41
|
+
/** Trigger padding and type size. @default "md" */
|
|
42
|
+
size?: Size;
|
|
43
|
+
/** Heading level wrapping each trigger. Choose it by the page outline; override per item. @default 3 */
|
|
44
|
+
headingLevel?: AccordionHeadingLevel;
|
|
45
|
+
/** Expand indicator: `"chevron"`, `"plus-minus"`, `"none"`, a custom element, or a render function. @default "chevron" */
|
|
46
|
+
icon?: AccordionIcon;
|
|
47
|
+
/** Side of the trigger the indicator sits on. @default "end" */
|
|
48
|
+
iconPosition?: AccordionIconPosition;
|
|
49
|
+
/** WAI-ARIA APG arrow-key navigation between triggers (ArrowUp/ArrowDown wrap, Home, End). Tab always works. @default true */
|
|
50
|
+
keyboardNavigation?: boolean;
|
|
51
|
+
/** Panel landmark behavior. `"auto"` uses `role="region"` only when there are 6 items or fewer. @default "auto" */
|
|
52
|
+
regionRole?: AccordionRegionRole;
|
|
53
|
+
/** Keep every panel's children mounted while closed (still `hidden` from view and assistive technology). @default false */
|
|
54
|
+
forceMount?: boolean;
|
|
55
|
+
/**
|
|
56
|
+
* Hide closed panels with `hidden="until-found"` so the browser's find-in-page
|
|
57
|
+
* can search them; a match opens the item (via the `beforematch` event).
|
|
58
|
+
* Implies `forceMount`. Falls back to plain `hidden` in browsers without
|
|
59
|
+
* support (feature-detected with `"onbeforematch" in document.body`). @default false
|
|
60
|
+
*/
|
|
61
|
+
hiddenUntilFound?: boolean;
|
|
62
|
+
/** Disable every item. @default false */
|
|
63
|
+
disabled?: boolean;
|
|
64
|
+
/** `Accordion.Item` elements. */
|
|
65
|
+
children?: ReactNode;
|
|
66
|
+
}
|
|
67
|
+
export interface AccordionSingleProps extends AccordionSharedProps {
|
|
68
|
+
/** `single` allows one open item at a time; `multiple` allows any number. @default "single" */
|
|
69
|
+
type?: "single";
|
|
70
|
+
/** In `single` mode, whether the open item can be closed so none is open. @default true */
|
|
71
|
+
collapsible?: boolean;
|
|
72
|
+
/** Controlled open item value (`null` for none). */
|
|
73
|
+
value?: string | null;
|
|
74
|
+
/** Initially open item value when uncontrolled. @default null */
|
|
75
|
+
defaultValue?: string | null;
|
|
76
|
+
/** Called with the open item value (or `null`) when it changes. */
|
|
77
|
+
onValueChange?: (value: string | null) => void;
|
|
78
|
+
}
|
|
79
|
+
export interface AccordionMultipleProps extends AccordionSharedProps {
|
|
80
|
+
/** `single` allows one open item at a time; `multiple` allows any number. */
|
|
81
|
+
type: "multiple";
|
|
82
|
+
/** Not used in `multiple` mode: every item can always close. */
|
|
83
|
+
collapsible?: never;
|
|
84
|
+
/** Controlled list of open item values. */
|
|
85
|
+
value?: string[];
|
|
86
|
+
/** Initially open item values when uncontrolled. @default [] */
|
|
87
|
+
defaultValue?: string[];
|
|
88
|
+
/** Called with the list of open item values when it changes. */
|
|
89
|
+
onValueChange?: (value: string[]) => void;
|
|
90
|
+
}
|
|
91
|
+
export type AccordionProps = AccordionSingleProps | AccordionMultipleProps;
|
|
92
|
+
/**
|
|
93
|
+
* A vertically stacked set of headings that each reveal a section of
|
|
94
|
+
* content. Follows the WAI-ARIA APG Accordion pattern: every trigger is a
|
|
95
|
+
* real `<button>` inside a heading, with `aria-expanded` and
|
|
96
|
+
* `aria-controls`, and each panel is labelled by its trigger.
|
|
97
|
+
*
|
|
98
|
+
* Compose with `Accordion.Item`, `Accordion.Trigger`, and `Accordion.Content`
|
|
99
|
+
* (also exported as `AccordionItem`, `AccordionTrigger`, `AccordionContent`).
|
|
100
|
+
*/
|
|
101
|
+
declare const AccordionRoot: (props: AccordionProps) => import("react").JSX.Element;
|
|
102
|
+
export interface AccordionItemProps extends ComponentPropsWithRef<"div"> {
|
|
103
|
+
/** Unique value identifying this item in the accordion's `value`. */
|
|
104
|
+
value: string;
|
|
105
|
+
/** Prevent opening or closing this item. Its trigger is a disabled button and is skipped by arrow keys. @default false */
|
|
106
|
+
disabled?: boolean;
|
|
107
|
+
/** Heading level for this item's trigger, overriding the accordion's `headingLevel`. */
|
|
108
|
+
headingLevel?: AccordionHeadingLevel;
|
|
109
|
+
/** One `Accordion.Trigger` followed by one `Accordion.Content`. */
|
|
110
|
+
children?: ReactNode;
|
|
111
|
+
}
|
|
112
|
+
/** One collapsible section: a trigger and its content. Exposes `data-state="open" | "closed"` and `data-disabled`. */
|
|
113
|
+
export declare const AccordionItem: ({ value, disabled: disabledProp, headingLevel, className, children, ...rest }: AccordionItemProps) => import("react").JSX.Element;
|
|
114
|
+
export interface AccordionTriggerProps extends Omit<ComponentPropsWithRef<"button">, "type"> {
|
|
115
|
+
/** The trigger's visible title. Rendered in the bold display font; this is the accessible name. */
|
|
116
|
+
children?: ReactNode;
|
|
117
|
+
/** A secondary line under the title, in muted body text. Exposed as the button's accessible description. */
|
|
118
|
+
description?: ReactNode;
|
|
119
|
+
/** Decorative icon before the title (hidden from assistive technology). */
|
|
120
|
+
startIcon?: ReactNode;
|
|
121
|
+
/** A slot after the title, typically a `Badge`. Its text is included in the accessible name. */
|
|
122
|
+
badge?: ReactNode;
|
|
123
|
+
/** Class for the heading element that wraps the button. */
|
|
124
|
+
headingClassName?: string;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* The button that toggles an item, rendered inside a heading (`h3` by
|
|
128
|
+
* default). Enter and Space toggle it; ArrowUp/ArrowDown/Home/End move
|
|
129
|
+
* between triggers when `keyboardNavigation` is on.
|
|
130
|
+
*/
|
|
131
|
+
export declare const AccordionTrigger: ({ children, description, startIcon, badge, headingClassName, className, id, onClick, onKeyDown, disabled: disabledProp, ...rest }: AccordionTriggerProps) => import("react").JSX.Element;
|
|
132
|
+
export interface AccordionContentProps extends ComponentPropsWithRef<"div"> {
|
|
133
|
+
/** Keep the children mounted while closed (still hidden). Overrides the accordion's `forceMount`. */
|
|
134
|
+
forceMount?: boolean;
|
|
135
|
+
/** Use `hidden="until-found"` so find-in-page can reveal this panel. Overrides the accordion's `hiddenUntilFound`. */
|
|
136
|
+
hiddenUntilFound?: boolean;
|
|
137
|
+
/** Class for the inner padded element that holds the children. */
|
|
138
|
+
bodyClassName?: string;
|
|
139
|
+
/** The panel content. */
|
|
140
|
+
children?: ReactNode;
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* The collapsible panel. Animates its height open and closed, then gets the
|
|
144
|
+
* `hidden` attribute so closed content is invisible to assistive technology
|
|
145
|
+
* and unfocusable. A `role="region"` labelled by its trigger (see `regionRole`).
|
|
146
|
+
*/
|
|
147
|
+
export declare const AccordionContent: ({ forceMount: forceMountProp, hiddenUntilFound: hiddenUntilFoundProp, bodyClassName, className, children, id, ref, ...rest }: AccordionContentProps) => import("react").JSX.Element;
|
|
148
|
+
type AccordionComponent = typeof AccordionRoot & {
|
|
149
|
+
Item: typeof AccordionItem;
|
|
150
|
+
Trigger: typeof AccordionTrigger;
|
|
151
|
+
Content: typeof AccordionContent;
|
|
152
|
+
};
|
|
153
|
+
export declare const Accordion: AccordionComponent;
|
|
154
|
+
export {};
|
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
import { useControllableState as e } from "../../../hooks/useControllableState.mjs";
|
|
2
|
+
import { useMergedRef as t } from "../../../hooks/useMergedRef.mjs";
|
|
3
|
+
import { cx as n } from "../../../utils/cx.mjs";
|
|
4
|
+
import { ChevronDownIcon as r, MinusIcon as i, PlusIcon as a } from "../../primitives/Icon/icons.mjs";
|
|
5
|
+
import o from "./Accordion.module.css.mjs";
|
|
6
|
+
import { createContext as s, isValidElement as c, useCallback as l, useContext as u, useEffect as d, useId as f, useLayoutEffect as p, useMemo as m, useRef as h, useState as g } from "react";
|
|
7
|
+
import { jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
8
|
+
import { flushSync as y } from "react-dom";
|
|
9
|
+
//#region src/components/data-display/Accordion/Accordion.tsx
|
|
10
|
+
var b = 6, x = {
|
|
11
|
+
separated: o.separated,
|
|
12
|
+
contained: o.contained,
|
|
13
|
+
flush: o.flush
|
|
14
|
+
}, S = {
|
|
15
|
+
sm: o.sm,
|
|
16
|
+
md: o.md,
|
|
17
|
+
lg: o.lg
|
|
18
|
+
}, C = {
|
|
19
|
+
start: o.iconStart,
|
|
20
|
+
end: o.iconEnd
|
|
21
|
+
}, w = {
|
|
22
|
+
sm: "sm",
|
|
23
|
+
md: "md",
|
|
24
|
+
lg: "md"
|
|
25
|
+
}, T = s(null);
|
|
26
|
+
function E(e) {
|
|
27
|
+
let t = u(T);
|
|
28
|
+
if (!t) throw Error(`<${e}> must be used inside <Accordion>.`);
|
|
29
|
+
return t;
|
|
30
|
+
}
|
|
31
|
+
var D = s(null);
|
|
32
|
+
function O(e) {
|
|
33
|
+
let t = u(D);
|
|
34
|
+
if (!t) throw Error(`<${e}> must be used inside <Accordion.Item>.`);
|
|
35
|
+
return t;
|
|
36
|
+
}
|
|
37
|
+
var k = (e) => Array.isArray(e) ? e : e == null ? [] : [e], A = (r) => {
|
|
38
|
+
let { type: i = "single", collapsible: a = !0, value: s, defaultValue: c, onValueChange: u, variant: d = "separated", size: f = "md", headingLevel: p = 3, icon: v = "chevron", iconPosition: y = "end", keyboardNavigation: b = !0, regionRole: w = "auto", forceMount: E = !1, hiddenUntilFound: D = !1, disabled: O = !1, className: A, children: j, ref: M, ...N } = r, P = i === "multiple", [F, I] = e({
|
|
39
|
+
value: s,
|
|
40
|
+
defaultValue: c ?? (P ? [] : null),
|
|
41
|
+
onChange: u
|
|
42
|
+
}), L = m(() => k(F), [F]), R = l((e, t) => {
|
|
43
|
+
I((n) => {
|
|
44
|
+
let r = k(n);
|
|
45
|
+
return t === r.includes(e) ? n : P ? t ? [...r, e] : r.filter((t) => t !== e) : t ? e : a ? null : n;
|
|
46
|
+
});
|
|
47
|
+
}, [
|
|
48
|
+
I,
|
|
49
|
+
P,
|
|
50
|
+
a
|
|
51
|
+
]), z = l((e) => R(e, !L.includes(e)), [R, L]), [B, V] = g(0), H = l(() => (V((e) => e + 1), () => V((e) => e - 1)), []), U = w === "auto" ? B <= 6 : w, W = h(null), G = t(M, W), K = m(() => ({
|
|
52
|
+
rootRef: W,
|
|
53
|
+
openValues: L,
|
|
54
|
+
multiple: P,
|
|
55
|
+
collapsible: P ? !0 : a,
|
|
56
|
+
disabled: O,
|
|
57
|
+
headingLevel: p,
|
|
58
|
+
size: f,
|
|
59
|
+
icon: v,
|
|
60
|
+
iconPosition: y,
|
|
61
|
+
keyboardNavigation: b,
|
|
62
|
+
isRegion: U,
|
|
63
|
+
forceMount: E,
|
|
64
|
+
hiddenUntilFound: D,
|
|
65
|
+
toggle: z,
|
|
66
|
+
setItemOpen: R,
|
|
67
|
+
registerItem: H
|
|
68
|
+
}), [
|
|
69
|
+
L,
|
|
70
|
+
P,
|
|
71
|
+
a,
|
|
72
|
+
O,
|
|
73
|
+
p,
|
|
74
|
+
f,
|
|
75
|
+
v,
|
|
76
|
+
y,
|
|
77
|
+
b,
|
|
78
|
+
U,
|
|
79
|
+
E,
|
|
80
|
+
D,
|
|
81
|
+
z,
|
|
82
|
+
R,
|
|
83
|
+
H
|
|
84
|
+
]);
|
|
85
|
+
return /* @__PURE__ */ _(T.Provider, {
|
|
86
|
+
value: K,
|
|
87
|
+
children: /* @__PURE__ */ _("div", {
|
|
88
|
+
...N,
|
|
89
|
+
ref: G,
|
|
90
|
+
"data-accordion-root": "",
|
|
91
|
+
"data-orientation": "vertical",
|
|
92
|
+
className: n(o.root, x[d], S[f], C[y], A),
|
|
93
|
+
children: j
|
|
94
|
+
})
|
|
95
|
+
});
|
|
96
|
+
}, j = ({ value: e, disabled: t = !1, headingLevel: r, className: i, children: a, ...s }) => {
|
|
97
|
+
let c = E("Accordion.Item"), l = f(), [u, d] = g(), [h, v] = g(), { registerItem: y } = c;
|
|
98
|
+
p(() => y(), [y]);
|
|
99
|
+
let b = c.openValues.includes(e), x = c.disabled || t, S = m(() => ({
|
|
100
|
+
value: e,
|
|
101
|
+
open: b,
|
|
102
|
+
disabled: x,
|
|
103
|
+
headingLevel: r ?? c.headingLevel,
|
|
104
|
+
triggerId: u ?? `${l}-trigger`,
|
|
105
|
+
contentId: h ?? `${l}-content`,
|
|
106
|
+
setTriggerId: d,
|
|
107
|
+
setContentId: v
|
|
108
|
+
}), [
|
|
109
|
+
e,
|
|
110
|
+
b,
|
|
111
|
+
x,
|
|
112
|
+
r,
|
|
113
|
+
c.headingLevel,
|
|
114
|
+
u,
|
|
115
|
+
h,
|
|
116
|
+
l
|
|
117
|
+
]);
|
|
118
|
+
return /* @__PURE__ */ _(D.Provider, {
|
|
119
|
+
value: S,
|
|
120
|
+
children: /* @__PURE__ */ _("div", {
|
|
121
|
+
...s,
|
|
122
|
+
"data-state": b ? "open" : "closed",
|
|
123
|
+
"data-disabled": x ? "" : void 0,
|
|
124
|
+
className: n(o.item, i),
|
|
125
|
+
children: a
|
|
126
|
+
})
|
|
127
|
+
});
|
|
128
|
+
}, M = ({ size: e }) => /* @__PURE__ */ _(r, {
|
|
129
|
+
size: e,
|
|
130
|
+
className: o.rotating
|
|
131
|
+
}), N = ({ size: e }) => /* @__PURE__ */ v("span", {
|
|
132
|
+
className: o.plusMinus,
|
|
133
|
+
children: [/* @__PURE__ */ _(a, {
|
|
134
|
+
size: e,
|
|
135
|
+
className: o.plus
|
|
136
|
+
}), /* @__PURE__ */ _(i, {
|
|
137
|
+
size: e,
|
|
138
|
+
className: o.minus
|
|
139
|
+
})]
|
|
140
|
+
}), P = ({ children: e, description: t, startIcon: r, badge: i, headingClassName: a, className: s, id: l, onClick: u, onKeyDown: d, disabled: m, ...h }) => {
|
|
141
|
+
let g = E("Accordion.Trigger"), y = O("Accordion.Trigger"), b = f(), x = `${b}-title`, S = `${b}-description`, C = `${b}-badge`, { setTriggerId: T } = y;
|
|
142
|
+
p(() => {
|
|
143
|
+
T(l);
|
|
144
|
+
}, [l, T]);
|
|
145
|
+
let D = y.disabled || !!m, k = y.open && !g.collapsible, A = (e) => {
|
|
146
|
+
u?.(e), !(e.defaultPrevented || D || k) && g.toggle(y.value);
|
|
147
|
+
}, j = (e) => {
|
|
148
|
+
if (d?.(e), e.defaultPrevented || !g.keyboardNavigation || e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) return;
|
|
149
|
+
let t = g.rootRef.current;
|
|
150
|
+
if (!t) return;
|
|
151
|
+
let n = Array.from(t.querySelectorAll("[data-accordion-trigger]")).filter((e) => e.closest("[data-accordion-root]") === t && !e.disabled), r = n.indexOf(e.currentTarget);
|
|
152
|
+
if (r === -1 || n.length === 0) return;
|
|
153
|
+
let i = null;
|
|
154
|
+
switch (e.key) {
|
|
155
|
+
case "ArrowDown":
|
|
156
|
+
i = (r + 1) % n.length;
|
|
157
|
+
break;
|
|
158
|
+
case "ArrowUp":
|
|
159
|
+
i = (r - 1 + n.length) % n.length;
|
|
160
|
+
break;
|
|
161
|
+
case "Home":
|
|
162
|
+
i = 0;
|
|
163
|
+
break;
|
|
164
|
+
case "End":
|
|
165
|
+
i = n.length - 1;
|
|
166
|
+
break;
|
|
167
|
+
default: return;
|
|
168
|
+
}
|
|
169
|
+
e.preventDefault(), n[i]?.focus();
|
|
170
|
+
}, P = w[g.size], { icon: F } = g, I = null;
|
|
171
|
+
F === "chevron" ? I = /* @__PURE__ */ _(M, { size: P }) : F === "plus-minus" ? I = /* @__PURE__ */ _(N, { size: P }) : typeof F == "function" ? I = F({
|
|
172
|
+
open: y.open,
|
|
173
|
+
disabled: D
|
|
174
|
+
}) : c(F) && (I = /* @__PURE__ */ _("span", {
|
|
175
|
+
className: o.rotating,
|
|
176
|
+
children: F
|
|
177
|
+
}));
|
|
178
|
+
let L = F === "none" || I == null ? null : /* @__PURE__ */ _("span", {
|
|
179
|
+
className: o.indicator,
|
|
180
|
+
"aria-hidden": "true",
|
|
181
|
+
children: I
|
|
182
|
+
}), R = i != null && i !== !1, z = t != null && t !== !1 && t !== "", B = `h${y.headingLevel}`;
|
|
183
|
+
return /* @__PURE__ */ _(B, {
|
|
184
|
+
className: n(o.heading, a),
|
|
185
|
+
children: /* @__PURE__ */ v("button", {
|
|
186
|
+
"aria-labelledby": R ? `${x} ${C}` : x,
|
|
187
|
+
"aria-describedby": z ? S : void 0,
|
|
188
|
+
...h,
|
|
189
|
+
type: "button",
|
|
190
|
+
id: y.triggerId,
|
|
191
|
+
"data-accordion-trigger": "",
|
|
192
|
+
"data-state": y.open ? "open" : "closed",
|
|
193
|
+
"data-disabled": D ? "" : void 0,
|
|
194
|
+
"aria-expanded": y.open,
|
|
195
|
+
"aria-controls": y.contentId,
|
|
196
|
+
"aria-disabled": k && !D ? !0 : void 0,
|
|
197
|
+
disabled: D,
|
|
198
|
+
className: n(o.trigger, k && o.locked, s),
|
|
199
|
+
onClick: A,
|
|
200
|
+
onKeyDown: j,
|
|
201
|
+
children: [
|
|
202
|
+
g.iconPosition === "start" && L,
|
|
203
|
+
r != null && /* @__PURE__ */ _("span", {
|
|
204
|
+
className: o.startIcon,
|
|
205
|
+
"aria-hidden": "true",
|
|
206
|
+
children: r
|
|
207
|
+
}),
|
|
208
|
+
/* @__PURE__ */ v("span", {
|
|
209
|
+
className: o.text,
|
|
210
|
+
children: [/* @__PURE__ */ _("span", {
|
|
211
|
+
id: x,
|
|
212
|
+
className: o.title,
|
|
213
|
+
children: e
|
|
214
|
+
}), z && /* @__PURE__ */ _("span", {
|
|
215
|
+
id: S,
|
|
216
|
+
className: o.description,
|
|
217
|
+
children: t
|
|
218
|
+
})]
|
|
219
|
+
}),
|
|
220
|
+
R && /* @__PURE__ */ _("span", {
|
|
221
|
+
id: C,
|
|
222
|
+
className: o.badge,
|
|
223
|
+
children: i
|
|
224
|
+
}),
|
|
225
|
+
g.iconPosition === "end" && L
|
|
226
|
+
]
|
|
227
|
+
})
|
|
228
|
+
});
|
|
229
|
+
};
|
|
230
|
+
function F(e) {
|
|
231
|
+
let t = getComputedStyle(e), n = (e) => e.split(",").map((e) => {
|
|
232
|
+
let t = parseFloat(e);
|
|
233
|
+
return Number.isNaN(t) ? 0 : e.trim().endsWith("ms") ? t : t * 1e3;
|
|
234
|
+
}), r = n(t.transitionDuration), i = n(t.transitionDelay);
|
|
235
|
+
return Math.max(0, ...r.map((e, t) => e + (i[t] ?? i[0] ?? 0)));
|
|
236
|
+
}
|
|
237
|
+
var I = () => typeof document < "u" && !!document.body && "onbeforematch" in document.body, L = ({ forceMount: e, hiddenUntilFound: r, bodyClassName: i, className: a, children: s, id: c, ref: l, ...u }) => {
|
|
238
|
+
let f = E("Accordion.Content"), m = O("Accordion.Content"), v = e ?? f.forceMount, b = r ?? f.hiddenUntilFound, { setContentId: x } = m;
|
|
239
|
+
p(() => {
|
|
240
|
+
x(c);
|
|
241
|
+
}, [c, x]);
|
|
242
|
+
let S = m.open, C = h(null), w = t(l, C), [T, D] = g(S), [k, A] = g(S), [j, M] = g(!1), N = h(!1);
|
|
243
|
+
p(() => {
|
|
244
|
+
if (S) {
|
|
245
|
+
if (N.current) {
|
|
246
|
+
N.current = !1, M(!0), D(!0), A(!0);
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
if (!T) {
|
|
250
|
+
D(!0);
|
|
251
|
+
return;
|
|
252
|
+
}
|
|
253
|
+
k || (C.current?.getBoundingClientRect(), A(!0));
|
|
254
|
+
} else k && A(!1);
|
|
255
|
+
}, [
|
|
256
|
+
S,
|
|
257
|
+
T,
|
|
258
|
+
k
|
|
259
|
+
]), d(() => {
|
|
260
|
+
if (S || k || !T) return;
|
|
261
|
+
let e = C.current, t = e ? F(e) : 0;
|
|
262
|
+
if (!e || t === 0) {
|
|
263
|
+
D(!1);
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
let n = () => D(!1), r = (t) => {
|
|
267
|
+
t.target === e && n();
|
|
268
|
+
};
|
|
269
|
+
e.addEventListener("transitionend", r);
|
|
270
|
+
let i = window.setTimeout(n, t + 50);
|
|
271
|
+
return () => {
|
|
272
|
+
e.removeEventListener("transitionend", r), window.clearTimeout(i);
|
|
273
|
+
};
|
|
274
|
+
}, [
|
|
275
|
+
S,
|
|
276
|
+
k,
|
|
277
|
+
T
|
|
278
|
+
]), d(() => {
|
|
279
|
+
if (!j) return;
|
|
280
|
+
let e = requestAnimationFrame(() => M(!1));
|
|
281
|
+
return () => cancelAnimationFrame(e);
|
|
282
|
+
}, [j]);
|
|
283
|
+
let [P, L] = g(!1);
|
|
284
|
+
d(() => {
|
|
285
|
+
L(b && I());
|
|
286
|
+
}, [b]), p(() => {
|
|
287
|
+
let e = C.current;
|
|
288
|
+
e && P && !T && e.setAttribute("hidden", "until-found");
|
|
289
|
+
}, [P, T]);
|
|
290
|
+
let { setItemOpen: R } = f, z = m.value, B = m.disabled;
|
|
291
|
+
d(() => {
|
|
292
|
+
let e = C.current;
|
|
293
|
+
if (!e || !P) return;
|
|
294
|
+
let t = () => {
|
|
295
|
+
B || (N.current = !0, y(() => R(z, !0)));
|
|
296
|
+
};
|
|
297
|
+
return e.addEventListener("beforematch", t), () => e.removeEventListener("beforematch", t);
|
|
298
|
+
}, [
|
|
299
|
+
P,
|
|
300
|
+
R,
|
|
301
|
+
z,
|
|
302
|
+
B
|
|
303
|
+
]);
|
|
304
|
+
let V = v || b || T;
|
|
305
|
+
return /* @__PURE__ */ _("div", {
|
|
306
|
+
role: f.isRegion ? "region" : void 0,
|
|
307
|
+
"aria-labelledby": m.triggerId,
|
|
308
|
+
...u,
|
|
309
|
+
ref: w,
|
|
310
|
+
id: m.contentId,
|
|
311
|
+
"data-state": k ? "open" : "closed",
|
|
312
|
+
"data-instant": j ? "" : void 0,
|
|
313
|
+
hidden: !T,
|
|
314
|
+
inert: T && !k ? !0 : void 0,
|
|
315
|
+
className: n(o.content, a),
|
|
316
|
+
children: /* @__PURE__ */ _("div", {
|
|
317
|
+
className: o.clip,
|
|
318
|
+
children: /* @__PURE__ */ _("div", {
|
|
319
|
+
className: n(o.body, i),
|
|
320
|
+
children: V ? s : null
|
|
321
|
+
})
|
|
322
|
+
})
|
|
323
|
+
});
|
|
324
|
+
}, R = A;
|
|
325
|
+
R.Item = j, R.Trigger = P, R.Content = L;
|
|
326
|
+
//#endregion
|
|
327
|
+
export { b as ACCORDION_AUTO_REGION_MAX, R as Accordion, L as AccordionContent, j as AccordionItem, P as AccordionTrigger };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`_root_aanju_11`,t=`_sm_aanju_45`,n=`_md_aanju_67`,r=`_lg_aanju_75`,i=`_iconEnd_aanju_97`,a=`_iconStart_aanju_105`,o=`_separated_aanju_123`,s=`_item_aanju_131`,c=`_trigger_aanju_155`,l=`_contained_aanju_175`,u=`_flush_aanju_189`,d=`_heading_aanju_251`,f=`_locked_aanju_301`,p=`_text_aanju_341`,m=`_title_aanju_357`,h=`_description_aanju_373`,g=`_startIcon_aanju_397`,_=`_badge_aanju_399`,v=`_indicator_aanju_429`,y=`_rotating_aanju_489`,b=`_plusMinus_aanju_507`,x=`_plus_aanju_507`,S=`_minus_aanju_517`,C=`_content_aanju_569`,w=`_clip_aanju_609`,T=`_body_aanju_619`,E={root:e,sm:t,md:n,lg:r,iconEnd:i,iconStart:a,separated:o,item:s,trigger:c,contained:l,flush:u,heading:d,locked:f,text:p,title:m,description:h,startIcon:g,badge:_,indicator:v,rotating:y,plusMinus:b,plus:x,minus:S,content:C,clip:w,body:T};exports.badge=_,exports.body=T,exports.clip=w,exports.contained=l,exports.content=C,exports.default=E,exports.description=h,exports.flush=u,exports.heading=d,exports.iconEnd=i,exports.iconStart=a,exports.indicator=v,exports.item=s,exports.lg=r,exports.locked=f,exports.md=n,exports.minus=S,exports.plus=x,exports.plusMinus=b,exports.root=e,exports.rotating=y,exports.separated=o,exports.sm=t,exports.startIcon=g,exports.text=p,exports.title=m,exports.trigger=c;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
//#region src/components/data-display/Accordion/Accordion.module.css
|
|
2
|
+
var e = "_root_aanju_11", t = "_sm_aanju_45", n = "_md_aanju_67", r = "_lg_aanju_75", i = "_iconEnd_aanju_97", a = "_iconStart_aanju_105", o = "_separated_aanju_123", s = "_item_aanju_131", c = "_trigger_aanju_155", l = "_contained_aanju_175", u = "_flush_aanju_189", d = "_heading_aanju_251", f = "_locked_aanju_301", p = "_text_aanju_341", m = "_title_aanju_357", h = "_description_aanju_373", g = "_startIcon_aanju_397", _ = "_badge_aanju_399", v = "_indicator_aanju_429", y = "_rotating_aanju_489", b = "_plusMinus_aanju_507", x = "_plus_aanju_507", S = "_minus_aanju_517", C = "_content_aanju_569", w = "_clip_aanju_609", T = "_body_aanju_619", E = {
|
|
3
|
+
root: e,
|
|
4
|
+
sm: t,
|
|
5
|
+
md: n,
|
|
6
|
+
lg: r,
|
|
7
|
+
iconEnd: i,
|
|
8
|
+
iconStart: a,
|
|
9
|
+
separated: o,
|
|
10
|
+
item: s,
|
|
11
|
+
trigger: c,
|
|
12
|
+
contained: l,
|
|
13
|
+
flush: u,
|
|
14
|
+
heading: d,
|
|
15
|
+
locked: f,
|
|
16
|
+
text: p,
|
|
17
|
+
title: m,
|
|
18
|
+
description: h,
|
|
19
|
+
startIcon: g,
|
|
20
|
+
badge: _,
|
|
21
|
+
indicator: v,
|
|
22
|
+
rotating: y,
|
|
23
|
+
plusMinus: b,
|
|
24
|
+
plus: x,
|
|
25
|
+
minus: S,
|
|
26
|
+
content: C,
|
|
27
|
+
clip: w,
|
|
28
|
+
body: T
|
|
29
|
+
};
|
|
30
|
+
//#endregion
|
|
31
|
+
export { _ as badge, T as body, w as clip, l as contained, C as content, E as default, h as description, u as flush, d as heading, i as iconEnd, a as iconStart, v as indicator, s as item, r as lg, f as locked, n as md, S as minus, x as plus, b as plusMinus, e as root, y as rotating, o as separated, t as sm, g as startIcon, p as text, m as title, c as trigger };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Accordion';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=require("../../utilities/LocaleProvider/LocaleProvider.cjs.js"),t=require("../../../utils/cx.cjs.js"),n=require("../../primitives/Icon/icons.cjs.js"),r=require("./Avatar.module.css.cjs.js");let i=require("react"),a=require("react/jsx-runtime");function o(e){let t=Intl.Segmenter;return t?Array.from(new t(void 0,{granularity:`grapheme`}).segment(e),e=>e.segment):Array.from(e)}var s=/[\p{L}\p{N}]/u;function c(e){let t=o(e).find(e=>s.test(e));return t?t.toLocaleUpperCase():``}function l(e){if(!e)return``;let t=e.trim().split(/\s+/u).filter(e=>s.test(e));if(t.length===0)return``;let n=c(t[0]);return t.length===1?n:n+c(t[t.length-1])}var u=Object.freeze([`primary`,`accent`,`success`,`info`,`neutral`]);function d(e){let t=5381;for(let n of e.trim().toLocaleLowerCase())t=(t<<5)+t+(n.codePointAt(0)??0)|0;return u[Math.abs(t)%u.length]}var f={xs:r.default.xs,sm:r.default.sm,md:r.default.md,lg:r.default.lg,xl:r.default.xl,"2xl":r.default.size2xl},p={circle:r.default.circle,rounded:r.default.rounded,square:r.default.square},m={soft:r.default.soft,solid:r.default.solid},h={neutral:r.default.toneNeutral,primary:r.default.tonePrimary,accent:r.default.toneAccent,success:r.default.toneSuccess,warning:r.default.toneWarning,danger:r.default.toneDanger,info:r.default.toneInfo},g={neutral:r.default.ringNeutral,primary:r.default.ringPrimary,accent:r.default.ringAccent,success:r.default.ringSuccess,warning:r.default.ringWarning,danger:r.default.ringDanger,info:r.default.ringInfo},_={online:r.default.statusOnline,away:r.default.statusAway,busy:r.default.statusBusy,offline:r.default.statusOffline},v={sm:r.default.spacingSm,md:r.default.spacingMd,lg:r.default.spacingLg},y=(0,i.createContext)(null);function b({src:o,alt:s,name:c,size:u,shape:v,tone:b=`neutral`,variant:x=`soft`,colorFromName:S=!1,status:C,statusLabel:w,ring:T=!1,ringTone:E=`accent`,decorative:D=!1,icon:O,imgProps:ee,onImageStatusChange:te,className:k,"aria-label":A,"aria-labelledby":j,...M}){let N=e.useMessages(),P=(0,i.useContext)(y),ne=P?.size??u??`md`,re=v??P?.shape??`circle`,[F,I]=(0,i.useState)(null),L=o?F?.src===o?F.status:`loading`:void 0,R=e=>{!o||F?.src===o&&F.status===e||(I({src:o,status:e}),te?.(e))},{onLoad:z,onError:B,className:V,ref:H,...U}=ee??{},W=e=>{e&&e.complete&&F?.src!==o&&R(e.naturalWidth>0?`loaded`:`error`),typeof H==`function`?H(e):H&&(H.current=e)},G=e=>{R(`loaded`),z?.(e)},K=e=>{R(`error`),B?.(e)},q=l(c),J=S&&c?.trim()?d(c):b,Y=!!o&&L!==`error`,X=D||s===``&&!c,Z=s||c?.trim()||N.avatar.fallbackName,Q=C?w??N.avatar.status[C]:void 0,ie=Q?`${Z} (${Q})`:Z,ae=X&&!Q?{"aria-hidden":!0}:X?{role:`img`,"aria-label":Q}:{role:`img`,"aria-label":j?A:A===void 0?ie:(e=>Q?`${e} (${Q})`:e)(A),"aria-labelledby":j},$;return $=Y?(0,a.jsx)(`img`,{...U,ref:W,src:o,alt:``,className:t.cx(r.default.image,L===`loaded`&&r.default.imageLoaded,V),onLoad:G,onError:K}):q?(0,a.jsx)(`span`,{className:r.default.initials,children:q}):O??(0,a.jsx)(n.UserIcon,{className:r.default.icon}),(0,a.jsxs)(`span`,{...M,...ae,"data-status":C,"data-image-status":L,className:t.cx(r.default.root,f[ne],p[re],m[x],h[J],P&&r.default.inGroup,T&&r.default.ring,T&&g[E],k),children:[(0,a.jsx)(`span`,{className:r.default.face,children:$}),C&&(0,a.jsx)(`span`,{className:t.cx(r.default.status,_[C]),"aria-hidden":`true`})]})}function x({size:n=`md`,shape:o,max:s,spacing:c=`md`,surplusLabel:l,renderSurplus:u,className:d,children:m,...h}){let g=e.useMessages(),_=l??g.avatar.surplus,b=i.Children.toArray(m).filter(i.isValidElement),x=s!==void 0&&s>=0&&s<b.length?Math.floor(s):b.length,S=b.slice(0,x),C=b.slice(x),w=C.length;return(0,a.jsx)(y.Provider,{value:{size:n,shape:o},children:(0,a.jsxs)(`div`,{role:`group`,...h,className:t.cx(r.default.group,f[n],v[c],d),children:[S,w>0&&(u?u(w,C):(0,a.jsx)(`span`,{role:`img`,"aria-label":_(w),className:t.cx(r.default.root,f[n],p[o??`circle`],r.default.soft,r.default.toneNeutral,r.default.inGroup),children:(0,a.jsx)(`span`,{className:r.default.face,children:(0,a.jsxs)(`span`,{className:t.cx(r.default.initials,r.default.surplus),"aria-hidden":`true`,children:[`+`,w]})})}))]})})}exports.Avatar=b,exports.AvatarGroup=x,exports.avatarNameTones=u,exports.avatarToneFromName=d,exports.getInitials=l;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { ComponentPropsWithRef, ReactNode } from 'react';
|
|
2
|
+
import { Size, Tone } from '../../../types/common';
|
|
3
|
+
/** Avatar size: `xs` 24px, `sm` 32px, `md` 40px, `lg` 48px, `xl` 64px, `2xl` 96px. */
|
|
4
|
+
export type AvatarSize = "xs" | "sm" | "md" | "lg" | "xl" | "2xl";
|
|
5
|
+
/** Avatar corner shape: `circle` (`--radius-round`), `rounded` (`--radius-md`), `square` (`--radius-sm`). */
|
|
6
|
+
export type AvatarShape = "circle" | "rounded" | "square";
|
|
7
|
+
/** Fill style of the initials/icon fallback: `soft` (subtle tone fill) or `solid` (strong tone fill). */
|
|
8
|
+
export type AvatarVariant = "soft" | "solid";
|
|
9
|
+
/** Presence status shown as a dot at the bottom-end corner. */
|
|
10
|
+
export type AvatarStatus = "online" | "away" | "busy" | "offline";
|
|
11
|
+
/** Loading state of the avatar image. */
|
|
12
|
+
export type AvatarImageStatus = "loading" | "loaded" | "error";
|
|
13
|
+
/**
|
|
14
|
+
* Derives up to two initials from a name: the first letter of the first and
|
|
15
|
+
* last words. Single names give one initial. Handles extra whitespace and
|
|
16
|
+
* non-Latin scripts; returns `""` when nothing usable is found.
|
|
17
|
+
*
|
|
18
|
+
* `getInitials("Dana Hernandez")` → `"DH"`, `getInitials("Zoë")` → `"Z"`,
|
|
19
|
+
* `getInitials("José María García")` → `"JG"`, `getInitials("王小明")` → `"王"`.
|
|
20
|
+
*/
|
|
21
|
+
export declare function getInitials(name: string | undefined | null): string;
|
|
22
|
+
/**
|
|
23
|
+
* Tones cycled by `colorFromName`. No warning or danger: a person's avatar
|
|
24
|
+
* in alert amber or red reads as an error next to status dots. Changing this
|
|
25
|
+
* list re-colors every name, so treat it as stable.
|
|
26
|
+
*/
|
|
27
|
+
export declare const avatarNameTones: readonly Tone[];
|
|
28
|
+
/**
|
|
29
|
+
* Deterministically picks a tone from a name (string hash), so the same name
|
|
30
|
+
* always gets the same color.
|
|
31
|
+
*/
|
|
32
|
+
export declare function avatarToneFromName(name: string): Tone;
|
|
33
|
+
export interface AvatarProps extends Omit<ComponentPropsWithRef<"span">, "children"> {
|
|
34
|
+
/** Image URL. When it fails to load, the avatar falls back to initials, then to a user icon. */
|
|
35
|
+
src?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Text alternative for the image. Used as the accessible name (falls back to
|
|
38
|
+
* `name`). Pass `alt=""` with no `name` to make the avatar decorative.
|
|
39
|
+
*/
|
|
40
|
+
alt?: string;
|
|
41
|
+
/** Person's name. Used for initials, `colorFromName`, and the accessible name when `alt` is not set. */
|
|
42
|
+
name?: string;
|
|
43
|
+
/** Size. `xs` 24px, `sm` 32px, `md` 40px, `lg` 48px, `xl` 64px, `2xl` 96px. Inside an `AvatarGroup`, the group's size wins. */
|
|
44
|
+
size?: AvatarSize;
|
|
45
|
+
/** Corner shape. */
|
|
46
|
+
shape?: AvatarShape;
|
|
47
|
+
/** Fallback fill color (initials or icon). Ignored when `colorFromName` is set and a name is given. */
|
|
48
|
+
tone?: Tone;
|
|
49
|
+
/** Fallback fill style: `soft` (subtle fill) or `solid` (strong fill). */
|
|
50
|
+
variant?: AvatarVariant;
|
|
51
|
+
/** Pick the fallback tone from a hash of `name`, so lists are colorful but stable. */
|
|
52
|
+
colorFromName?: boolean;
|
|
53
|
+
/** Presence dot at the bottom-end corner. Also appended to the accessible name, e.g. "Dana Hernandez (online)". */
|
|
54
|
+
status?: AvatarStatus;
|
|
55
|
+
/** Text for the status in the accessible name. Defaults to the status value ("online", "away", ...). */
|
|
56
|
+
statusLabel?: string;
|
|
57
|
+
/**
|
|
58
|
+
* Highlight ring (e.g. the active player). Visual only: also convey the
|
|
59
|
+
* state in text nearby or in `aria-label`.
|
|
60
|
+
*/
|
|
61
|
+
ring?: boolean;
|
|
62
|
+
/** Color of the highlight ring. Uses the tone's `--color-*-border` token. */
|
|
63
|
+
ringTone?: Tone;
|
|
64
|
+
/**
|
|
65
|
+
* Hide the avatar from assistive technology. Use when the person's name is
|
|
66
|
+
* already visible next to the avatar.
|
|
67
|
+
*/
|
|
68
|
+
decorative?: boolean;
|
|
69
|
+
/** Custom fallback icon shown when there is no image and no initials. Defaults to `UserIcon`. */
|
|
70
|
+
icon?: ReactNode;
|
|
71
|
+
/** Extra props for the inner `<img>` (e.g. `loading`, `crossOrigin`, `referrerPolicy`). */
|
|
72
|
+
imgProps?: Omit<ComponentPropsWithRef<"img">, "src" | "alt">;
|
|
73
|
+
/** Called with the new image status when the image loads or fails. */
|
|
74
|
+
onImageStatusChange?: (status: AvatarImageStatus) => void;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* A person's picture, with a fallback chain of image, initials, then a user
|
|
78
|
+
* icon. Supports a presence status dot, a highlight ring, and stacking in an
|
|
79
|
+
* `AvatarGroup`.
|
|
80
|
+
*/
|
|
81
|
+
export declare function Avatar({ src, alt, name, size, shape, tone, variant, colorFromName, status, statusLabel, ring, ringTone, decorative, icon, imgProps, onImageStatusChange, className, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ...rest }: AvatarProps): import("react").JSX.Element;
|
|
82
|
+
type AvatarGroupName = {
|
|
83
|
+
/** Accessible name for the group, e.g. "Starting lineup". */
|
|
84
|
+
"aria-label": string;
|
|
85
|
+
"aria-labelledby"?: string;
|
|
86
|
+
} | {
|
|
87
|
+
"aria-label"?: string;
|
|
88
|
+
/** ID of a visible element that names the group. */
|
|
89
|
+
"aria-labelledby": string;
|
|
90
|
+
};
|
|
91
|
+
interface AvatarGroupOwnProps {
|
|
92
|
+
/** Size applied to every avatar in the group (overrides each avatar's own `size`). */
|
|
93
|
+
size?: AvatarSize;
|
|
94
|
+
/** Default shape for avatars in the group. An avatar's own `shape` still wins. */
|
|
95
|
+
shape?: AvatarShape;
|
|
96
|
+
/** Maximum number of avatars shown. Extra avatars collapse into a "+N" surplus avatar. */
|
|
97
|
+
max?: number;
|
|
98
|
+
/** How much avatars overlap: `sm` 15%, `md` 25%, `lg` 40% of the avatar size. */
|
|
99
|
+
spacing?: Size;
|
|
100
|
+
/** Accessible label for the surplus avatar. Defaults to `and ${count} more`. */
|
|
101
|
+
surplusLabel?: (count: number) => string;
|
|
102
|
+
/** Replace the default "+N" surplus avatar. Receives the hidden count and the hidden children. */
|
|
103
|
+
renderSurplus?: (count: number, hidden: ReactNode[]) => ReactNode;
|
|
104
|
+
/** Avatars to stack. */
|
|
105
|
+
children?: ReactNode;
|
|
106
|
+
}
|
|
107
|
+
/** Props for `AvatarGroup`. Requires `aria-label` or `aria-labelledby`. */
|
|
108
|
+
export type AvatarGroupProps = AvatarGroupOwnProps & AvatarGroupName & Omit<ComponentPropsWithRef<"div">, keyof AvatarGroupOwnProps | "aria-label" | "aria-labelledby">;
|
|
109
|
+
/**
|
|
110
|
+
* Overlapping stack of avatars in a labelled `role="group"`. Avatars beyond
|
|
111
|
+
* `max` collapse into a "+N" surplus avatar with an accessible label.
|
|
112
|
+
*/
|
|
113
|
+
export declare function AvatarGroup({ size, shape, max, spacing, surplusLabel: surplusLabelProp, renderSurplus, className, children, ...rest }: AvatarGroupProps): import("react").JSX.Element;
|
|
114
|
+
export {};
|