@hina-ui/vue 1.7.6 → 1.7.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +7952 -663
- package/dist/index.js.map +1 -1
- package/dist/shared/behavior/anchor-follow.ts +20 -11
- package/dist/shared/lib/command-palette/match.ts +9 -0
- package/dist/shared/lib/float-button.ts +14 -0
- package/dist/shared/lib/line-clamp.ts +76 -0
- package/dist/shared/lib/scroll-restore.ts +145 -0
- package/dist/shared/locale/en-US.ts +4 -0
- package/dist/shared/locale/index.ts +2 -0
- package/dist/shared/locale/ja-JP.ts +229 -0
- package/dist/shared/locale/types.ts +4 -0
- package/dist/shared/locale/zh-CN.ts +4 -0
- package/dist/shared/primitives/accordion/LICENSE +21 -0
- package/dist/shared/primitives/accordion/index.ts +34 -0
- package/dist/shared/primitives/arrow-navigation/LICENSE +21 -0
- package/dist/shared/primitives/arrow-navigation/index.ts +90 -0
- package/dist/shared/primitives/body-scroll-lock/LICENSE +21 -0
- package/dist/shared/primitives/body-scroll-lock/index.ts +115 -0
- package/dist/shared/primitives/checkbox/LICENSE +21 -0
- package/dist/shared/primitives/checkbox/index.ts +23 -0
- package/dist/shared/primitives/collapsible/LICENSE +21 -0
- package/dist/shared/primitives/collapsible/index.ts +31 -0
- package/dist/shared/primitives/collection/LICENSE +21 -0
- package/dist/shared/primitives/collection/index.ts +19 -0
- package/dist/shared/primitives/dismissable-layer/LICENSE +21 -0
- package/dist/shared/primitives/dismissable-layer/index.ts +203 -0
- package/dist/shared/primitives/focus-guards/LICENSE +21 -0
- package/dist/shared/primitives/focus-guards/index.ts +24 -0
- package/dist/shared/primitives/focus-scope/LICENSE +21 -0
- package/dist/shared/primitives/focus-scope/index.ts +216 -0
- package/dist/shared/primitives/label/LICENSE +21 -0
- package/dist/shared/primitives/label/index.ts +4 -0
- package/dist/shared/primitives/pagination/LICENSE +21 -0
- package/dist/shared/primitives/pagination/index.ts +99 -0
- package/dist/shared/primitives/pin-input/LICENSE +21 -0
- package/dist/shared/primitives/pin-input/index.ts +126 -0
- package/dist/shared/primitives/presence/LICENSE +21 -0
- package/dist/shared/primitives/presence/index.ts +135 -0
- package/dist/shared/primitives/progress/LICENSE +21 -0
- package/dist/shared/primitives/progress/index.ts +41 -0
- package/dist/shared/primitives/radio-group/LICENSE +21 -0
- package/dist/shared/primitives/radio-group/index.ts +46 -0
- package/dist/shared/primitives/rating/LICENSE +21 -0
- package/dist/shared/primitives/rating/index.ts +37 -0
- package/dist/shared/primitives/roving-focus/LICENSE +21 -0
- package/dist/shared/primitives/roving-focus/index.ts +44 -0
- package/dist/shared/primitives/separator/LICENSE +21 -0
- package/dist/shared/primitives/separator/index.ts +14 -0
- package/dist/shared/primitives/size/LICENSE +21 -0
- package/dist/shared/primitives/size/index.ts +19 -0
- package/dist/shared/primitives/slider/LICENSE +21 -0
- package/dist/shared/primitives/slider/index.ts +183 -0
- package/dist/shared/primitives/splitter/LICENSE +21 -0
- package/dist/shared/primitives/splitter/arrays.ts +6 -0
- package/dist/shared/primitives/splitter/assert.ts +9 -0
- package/dist/shared/primitives/splitter/calculate.ts +139 -0
- package/dist/shared/primitives/splitter/callPanelCallbacks.ts +40 -0
- package/dist/shared/primitives/splitter/compare.ts +13 -0
- package/dist/shared/primitives/splitter/constants.ts +1 -0
- package/dist/shared/primitives/splitter/debounce.ts +10 -0
- package/dist/shared/primitives/splitter/dom.ts +64 -0
- package/dist/shared/primitives/splitter/events.ts +29 -0
- package/dist/shared/primitives/splitter/flags.ts +4 -0
- package/dist/shared/primitives/splitter/layout.ts +153 -0
- package/dist/shared/primitives/splitter/pivot.ts +10 -0
- package/dist/shared/primitives/splitter/rects.ts +24 -0
- package/dist/shared/primitives/splitter/registry.ts +231 -0
- package/dist/shared/primitives/splitter/resizePanel.ts +30 -0
- package/dist/shared/primitives/splitter/stackingOrder.ts +88 -0
- package/dist/shared/primitives/splitter/storage.ts +95 -0
- package/dist/shared/primitives/splitter/style.ts +95 -0
- package/dist/shared/primitives/splitter/types.ts +48 -0
- package/dist/shared/primitives/splitter/units.ts +123 -0
- package/dist/shared/primitives/splitter/validation.ts +55 -0
- package/dist/shared/primitives/stepper/LICENSE +21 -0
- package/dist/shared/primitives/stepper/index.ts +58 -0
- package/dist/shared/primitives/tabs/LICENSE +21 -0
- package/dist/shared/primitives/tabs/index.ts +18 -0
- package/dist/shared/primitives/toggle/LICENSE +21 -0
- package/dist/shared/primitives/toggle/index.ts +5 -0
- package/dist/shared/primitives/value/LICENSE +21 -0
- package/dist/shared/primitives/value/index.ts +80 -0
- package/dist/shared/primitives/visually-hidden/LICENSE +21 -0
- package/dist/shared/primitives/visually-hidden/index.ts +25 -0
- package/dist/shared/styles/density.css +4 -0
- package/dist/shared/styles/float-button.css +20 -6
- package/dist/shared/styles/line-clamp.css +98 -0
- package/dist/shared/styles/tokens.css +1 -0
- package/dist/shared/styles/typography.css +18 -0
- package/dist/shared/variants/button.ts +2 -0
- package/dist/shared/variants/command-palette.ts +4 -0
- package/dist/shared/variants/line-clamp.ts +13 -0
- package/dist/shared/variants/panel.ts +5 -0
- package/dist/shared/variants/tag.ts +1 -0
- package/dist/types/shared/src/behavior/anchor-follow.d.ts.map +1 -1
- package/dist/types/shared/src/lib/command-palette/match.d.ts +5 -0
- package/dist/types/shared/src/lib/command-palette/match.d.ts.map +1 -1
- package/dist/types/shared/src/lib/float-button.d.ts +15 -0
- package/dist/types/shared/src/lib/float-button.d.ts.map +1 -0
- package/dist/types/shared/src/lib/line-clamp.d.ts +6 -0
- package/dist/types/shared/src/lib/line-clamp.d.ts.map +1 -0
- package/dist/types/shared/src/lib/scroll-restore.d.ts +14 -0
- package/dist/types/shared/src/lib/scroll-restore.d.ts.map +1 -1
- package/dist/types/shared/src/locale/en-US.d.ts.map +1 -1
- package/dist/types/shared/src/locale/index.d.ts +1 -0
- package/dist/types/shared/src/locale/index.d.ts.map +1 -1
- package/dist/types/shared/src/locale/ja-JP.d.ts +3 -0
- package/dist/types/shared/src/locale/ja-JP.d.ts.map +1 -0
- package/dist/types/shared/src/locale/types.d.ts +4 -0
- package/dist/types/shared/src/locale/types.d.ts.map +1 -1
- package/dist/types/shared/src/locale/zh-CN.d.ts.map +1 -1
- package/dist/types/shared/src/primitives/accordion/index.d.ts +9 -0
- package/dist/types/shared/src/primitives/accordion/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/arrow-navigation/index.d.ts +12 -0
- package/dist/types/shared/src/primitives/arrow-navigation/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/checkbox/index.d.ts +6 -0
- package/dist/types/shared/src/primitives/checkbox/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/collapsible/index.d.ts +12 -0
- package/dist/types/shared/src/primitives/collapsible/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/collection/index.d.ts +6 -0
- package/dist/types/shared/src/primitives/collection/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/dismissable-layer/index.d.ts +41 -0
- package/dist/types/shared/src/primitives/dismissable-layer/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/focus-scope/index.d.ts +51 -0
- package/dist/types/shared/src/primitives/focus-scope/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/label/index.d.ts +2 -0
- package/dist/types/shared/src/primitives/label/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/pagination/index.d.ts +17 -0
- package/dist/types/shared/src/primitives/pagination/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/pin-input/index.d.ts +31 -0
- package/dist/types/shared/src/primitives/pin-input/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/presence/index.d.ts +14 -0
- package/dist/types/shared/src/primitives/presence/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/progress/index.d.ts +10 -0
- package/dist/types/shared/src/primitives/progress/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/radio-group/index.d.ts +12 -0
- package/dist/types/shared/src/primitives/radio-group/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/rating/index.d.ts +8 -0
- package/dist/types/shared/src/primitives/rating/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/roving-focus/index.d.ts +13 -0
- package/dist/types/shared/src/primitives/roving-focus/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/separator/index.d.ts +10 -0
- package/dist/types/shared/src/primitives/separator/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/size/index.d.ts +7 -0
- package/dist/types/shared/src/primitives/size/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/slider/index.d.ts +60 -0
- package/dist/types/shared/src/primitives/slider/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/arrays.d.ts +2 -0
- package/dist/types/shared/src/primitives/splitter/arrays.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/assert.d.ts +2 -0
- package/dist/types/shared/src/primitives/splitter/assert.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/calculate.d.ts +15 -0
- package/dist/types/shared/src/primitives/splitter/calculate.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/callPanelCallbacks.d.ts +3 -0
- package/dist/types/shared/src/primitives/splitter/callPanelCallbacks.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/compare.d.ts +3 -0
- package/dist/types/shared/src/primitives/splitter/compare.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/constants.d.ts +2 -0
- package/dist/types/shared/src/primitives/splitter/constants.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/debounce.d.ts +2 -0
- package/dist/types/shared/src/primitives/splitter/debounce.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/dom.d.ts +8 -0
- package/dist/types/shared/src/primitives/splitter/dom.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/events.d.ts +10 -0
- package/dist/types/shared/src/primitives/splitter/events.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/flags.d.ts +5 -0
- package/dist/types/shared/src/primitives/splitter/flags.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/layout.d.ts +10 -0
- package/dist/types/shared/src/primitives/splitter/layout.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/pivot.d.ts +2 -0
- package/dist/types/shared/src/primitives/splitter/pivot.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/rects.d.ts +8 -0
- package/dist/types/shared/src/primitives/splitter/rects.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/registry.d.ts +5 -0
- package/dist/types/shared/src/primitives/splitter/registry.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/resizePanel.d.ts +7 -0
- package/dist/types/shared/src/primitives/splitter/resizePanel.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/stackingOrder.d.ts +2 -0
- package/dist/types/shared/src/primitives/splitter/stackingOrder.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/storage.d.ts +9 -0
- package/dist/types/shared/src/primitives/splitter/storage.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/style.d.ts +21 -0
- package/dist/types/shared/src/primitives/splitter/style.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/types.d.ts +42 -0
- package/dist/types/shared/src/primitives/splitter/types.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/units.d.ts +13 -0
- package/dist/types/shared/src/primitives/splitter/units.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/splitter/validation.d.ts +6 -0
- package/dist/types/shared/src/primitives/splitter/validation.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/stepper/index.d.ts +21 -0
- package/dist/types/shared/src/primitives/stepper/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/tabs/index.d.ts +7 -0
- package/dist/types/shared/src/primitives/tabs/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/toggle/index.d.ts +3 -0
- package/dist/types/shared/src/primitives/toggle/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/value/index.d.ts +15 -0
- package/dist/types/shared/src/primitives/value/index.d.ts.map +1 -0
- package/dist/types/shared/src/primitives/visually-hidden/index.d.ts +19 -0
- package/dist/types/shared/src/primitives/visually-hidden/index.d.ts.map +1 -0
- package/dist/types/shared/src/variants/button.d.ts +6 -0
- package/dist/types/shared/src/variants/button.d.ts.map +1 -1
- package/dist/types/shared/src/variants/command-palette.d.ts +1 -0
- package/dist/types/shared/src/variants/command-palette.d.ts.map +1 -1
- package/dist/types/shared/src/variants/line-clamp.d.ts +4 -0
- package/dist/types/shared/src/variants/line-clamp.d.ts.map +1 -0
- package/dist/types/shared/src/variants/panel.d.ts +13 -1
- package/dist/types/shared/src/variants/panel.d.ts.map +1 -1
- package/dist/types/shared/src/variants/tag.d.ts +3 -0
- package/dist/types/shared/src/variants/tag.d.ts.map +1 -1
- package/dist/types/shared/src/variants/toggle.d.ts +7 -0
- package/dist/types/shared/src/variants/toggle.d.ts.map +1 -1
- package/dist/types/vue/src/components/accordion/Accordion.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/app-shell/AppShell.vue.d.ts +2 -2
- package/dist/types/vue/src/components/app-shell/AppShell.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/breadcrumb/BreadcrumbItem.vue.d.ts +2 -2
- package/dist/types/vue/src/components/breadcrumb/BreadcrumbItem.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/button/Button.vue.d.ts +2 -2
- package/dist/types/vue/src/components/button/Button.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/card/Card.vue.d.ts +2 -2
- package/dist/types/vue/src/components/card/Card.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/carousel/composables/useCarousel.d.ts +1 -1
- package/dist/types/vue/src/components/chip/Chip.vue.d.ts +1 -1
- package/dist/types/vue/src/components/chip/Chip.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/chip/composables/useChipRoot.d.ts +2 -2
- package/dist/types/vue/src/components/chip/composables/useChipRoot.d.ts.map +1 -1
- package/dist/types/vue/src/components/close-button/CloseButton.vue.d.ts +1 -1
- package/dist/types/vue/src/components/collapsible/Collapsible.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/command-palette/CommandPalette.vue.d.ts +40 -34
- package/dist/types/vue/src/components/command-palette/CommandPalette.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/command-palette/CommandPaletteInput.vue.d.ts +8 -0
- package/dist/types/vue/src/components/command-palette/CommandPaletteInput.vue.d.ts.map +1 -0
- package/dist/types/vue/src/components/command-palette/CommandPaletteItem.vue.d.ts +21 -7
- package/dist/types/vue/src/components/command-palette/CommandPaletteItem.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/command-palette/CommandPalettePanel.vue.d.ts +37 -31
- package/dist/types/vue/src/components/command-palette/CommandPalettePanel.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/command-palette/composables/useCommandItems.d.ts +6 -6
- package/dist/types/vue/src/components/command-palette/composables/useCommandItems.d.ts.map +1 -1
- package/dist/types/vue/src/components/command-palette/context.d.ts +11 -0
- package/dist/types/vue/src/components/command-palette/context.d.ts.map +1 -0
- package/dist/types/vue/src/components/command-palette/types.d.ts +16 -5
- package/dist/types/vue/src/components/command-palette/types.d.ts.map +1 -1
- package/dist/types/vue/src/components/command-palette/utils/match.d.ts +3 -3
- package/dist/types/vue/src/components/command-palette/utils/match.d.ts.map +1 -1
- package/dist/types/vue/src/components/copy-button/CopyButton.vue.d.ts +1 -1
- package/dist/types/vue/src/components/data-list/DataList.vue.d.ts +2 -2
- package/dist/types/vue/src/components/data-table/DataTable.vue.d.ts +2 -2
- package/dist/types/vue/src/components/description-list/DescriptionList.vue.d.ts +1 -0
- package/dist/types/vue/src/components/description-list/DescriptionList.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/dialog/Dialog.vue.d.ts +3 -0
- package/dist/types/vue/src/components/dialog/Dialog.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/drawer/Drawer.vue.d.ts +3 -0
- package/dist/types/vue/src/components/drawer/Drawer.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/float-button/FloatButton.vue.d.ts +1 -1
- package/dist/types/vue/src/components/float-button/FloatButton.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/float-button/types.d.ts +3 -2
- package/dist/types/vue/src/components/float-button/types.d.ts.map +1 -1
- package/dist/types/vue/src/components/form/Form.vue.d.ts +5 -0
- package/dist/types/vue/src/components/form/Form.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/form/scope.d.ts +4 -0
- package/dist/types/vue/src/components/form/scope.d.ts.map +1 -0
- package/dist/types/vue/src/components/heading/Heading.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/icon-button/IconButton.vue.d.ts +2 -2
- package/dist/types/vue/src/components/icon-button/IconButton.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/image/Image.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/indicator/Indicator.vue.d.ts +2 -2
- package/dist/types/vue/src/components/indicator/Indicator.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/line-clamp/LineClamp.vue.d.ts +28 -0
- package/dist/types/vue/src/components/line-clamp/LineClamp.vue.d.ts.map +1 -0
- package/dist/types/vue/src/components/line-clamp/line-clamp.variants.d.ts +2 -0
- package/dist/types/vue/src/components/line-clamp/line-clamp.variants.d.ts.map +1 -0
- package/dist/types/vue/src/components/link/Link.vue.d.ts +2 -2
- package/dist/types/vue/src/components/link/Link.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/multi-select/MultiSelect.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/nav-link/NavLink.vue.d.ts +9 -5
- package/dist/types/vue/src/components/nav-link/NavLink.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/nav-link/NavLinkChild.d.ts +27 -0
- package/dist/types/vue/src/components/nav-link/NavLinkChild.d.ts.map +1 -0
- package/dist/types/vue/src/components/navigation-menu/NavigationMenuLink.vue.d.ts +2 -2
- package/dist/types/vue/src/components/navigation-menu/NavigationMenuLink.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/pagination/PaginationControl.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/prev-next/PrevNextLink.vue.d.ts +2 -2
- package/dist/types/vue/src/components/prev-next/PrevNextLink.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/prose/Prose.vue.d.ts +2 -2
- package/dist/types/vue/src/components/prose/Prose.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/section/Section.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/segmented-control/SegmentedControl.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/sheet/Sheet.vue.d.ts +3 -0
- package/dist/types/vue/src/components/sheet/Sheet.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/sidebar/Sidebar.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/sidebar/context.d.ts +2 -0
- package/dist/types/vue/src/components/sidebar/context.d.ts.map +1 -1
- package/dist/types/vue/src/components/slider/SliderHandle.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/split-button/SplitButton.vue.d.ts +1 -1
- package/dist/types/vue/src/components/split-button/types.d.ts +1 -1
- package/dist/types/vue/src/components/split-button/types.d.ts.map +1 -1
- package/dist/types/vue/src/components/tag/Tag.vue.d.ts +2 -2
- package/dist/types/vue/src/components/tag/Tag.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/text/Text.vue.d.ts +2 -2
- package/dist/types/vue/src/components/text/Text.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/time/Time.vue.d.ts +2 -0
- package/dist/types/vue/src/components/time/Time.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/toast/Toaster.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/toggle/Toggle.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/toolbar/ToolbarControl.vue.d.ts +1 -1
- package/dist/types/vue/src/components/toolbar/ToolbarLink.vue.d.ts +1 -1
- package/dist/types/vue/src/components/toolbar/ToolbarToggleGroup.vue.d.ts.map +1 -1
- package/dist/types/vue/src/components/toolbar/types.d.ts +1 -1
- package/dist/types/vue/src/components/toolbar/types.d.ts.map +1 -1
- package/dist/types/vue/src/components/virtual-list/composables/useVirtualList.d.ts +1 -1
- package/dist/types/vue/src/components/visually-hidden/VisuallyHidden.vue.d.ts +2 -2
- package/dist/types/vue/src/components/visually-hidden/VisuallyHidden.vue.d.ts.map +1 -1
- package/dist/types/vue/src/index.d.ts +6 -4
- package/dist/types/vue/src/index.d.ts.map +1 -1
- package/dist/types/vue/src/lib/useDirection.d.ts +2 -2
- package/dist/types/vue/src/lib/useDirection.d.ts.map +1 -1
- package/dist/types/vue/src/locale/index.d.ts +1 -1
- package/dist/types/vue/src/locale/index.d.ts.map +1 -1
- package/dist/types/vue/src/primitives/accordion/AccordionContent.d.ts +40 -0
- package/dist/types/vue/src/primitives/accordion/AccordionContent.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/accordion/AccordionHeader.d.ts +33 -0
- package/dist/types/vue/src/primitives/accordion/AccordionHeader.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/accordion/AccordionItem.d.ts +61 -0
- package/dist/types/vue/src/primitives/accordion/AccordionItem.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/accordion/AccordionRoot.d.ts +122 -0
- package/dist/types/vue/src/primitives/accordion/AccordionRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/accordion/AccordionTrigger.d.ts +30 -0
- package/dist/types/vue/src/primitives/accordion/AccordionTrigger.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/accordion/context.d.ts +27 -0
- package/dist/types/vue/src/primitives/accordion/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/accordion/index.d.ts +7 -0
- package/dist/types/vue/src/primitives/accordion/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/aspect-ratio/AspectRatio.d.ts +42 -0
- package/dist/types/vue/src/primitives/aspect-ratio/AspectRatio.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/aspect-ratio/index.d.ts +2 -0
- package/dist/types/vue/src/primitives/aspect-ratio/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/checkbox/CheckboxGroupRoot.d.ts +121 -0
- package/dist/types/vue/src/primitives/checkbox/CheckboxGroupRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/checkbox/CheckboxRoot.d.ts +127 -0
- package/dist/types/vue/src/primitives/checkbox/CheckboxRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/checkbox/context.d.ts +14 -0
- package/dist/types/vue/src/primitives/checkbox/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/checkbox/index.d.ts +4 -0
- package/dist/types/vue/src/primitives/checkbox/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/collapsible/CollapsibleContent.d.ts +45 -0
- package/dist/types/vue/src/primitives/collapsible/CollapsibleContent.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/collapsible/CollapsibleRoot.d.ts +81 -0
- package/dist/types/vue/src/primitives/collapsible/CollapsibleRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/collapsible/CollapsibleTrigger.d.ts +33 -0
- package/dist/types/vue/src/primitives/collapsible/CollapsibleTrigger.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/collapsible/context.d.ts +10 -0
- package/dist/types/vue/src/primitives/collapsible/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/collapsible/index.d.ts +5 -0
- package/dist/types/vue/src/primitives/collapsible/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/collection/index.d.ts +28 -0
- package/dist/types/vue/src/primitives/collection/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/number-field/NumberFieldDecrement.vue.d.ts +2 -2
- package/dist/types/vue/src/primitives/number-field/NumberFieldDecrement.vue.d.ts.map +1 -1
- package/dist/types/vue/src/primitives/number-field/NumberFieldIncrement.vue.d.ts +2 -2
- package/dist/types/vue/src/primitives/number-field/NumberFieldIncrement.vue.d.ts.map +1 -1
- package/dist/types/vue/src/primitives/number-field/NumberFieldInput.vue.d.ts +2 -2
- package/dist/types/vue/src/primitives/number-field/NumberFieldInput.vue.d.ts.map +1 -1
- package/dist/types/vue/src/primitives/number-field/NumberFieldRoot.vue.d.ts +2 -2
- package/dist/types/vue/src/primitives/number-field/NumberFieldRoot.vue.d.ts.map +1 -1
- package/dist/types/vue/src/primitives/pagination/PaginationEdge.d.ts +111 -0
- package/dist/types/vue/src/primitives/pagination/PaginationEdge.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pagination/PaginationList.d.ts +30 -0
- package/dist/types/vue/src/primitives/pagination/PaginationList.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pagination/PaginationListItem.d.ts +42 -0
- package/dist/types/vue/src/primitives/pagination/PaginationListItem.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pagination/PaginationRoot.d.ts +114 -0
- package/dist/types/vue/src/primitives/pagination/PaginationRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pagination/context.d.ts +11 -0
- package/dist/types/vue/src/primitives/pagination/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pagination/index.d.ts +6 -0
- package/dist/types/vue/src/primitives/pagination/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pin-input/PinInputInput.d.ts +52 -0
- package/dist/types/vue/src/primitives/pin-input/PinInputInput.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pin-input/PinInputRoot.d.ts +149 -0
- package/dist/types/vue/src/primitives/pin-input/PinInputRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pin-input/context.d.ts +20 -0
- package/dist/types/vue/src/primitives/pin-input/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/pin-input/index.d.ts +4 -0
- package/dist/types/vue/src/primitives/pin-input/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/presence/Presence.d.ts +31 -0
- package/dist/types/vue/src/primitives/presence/Presence.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/presence/index.d.ts +3 -0
- package/dist/types/vue/src/primitives/presence/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/presence/usePresence.d.ts +5 -0
- package/dist/types/vue/src/primitives/presence/usePresence.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/primitive/Primitive.d.ts +31 -0
- package/dist/types/vue/src/primitives/primitive/Primitive.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/primitive/Slot.d.ts +6 -0
- package/dist/types/vue/src/primitives/primitive/Slot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/primitive/index.d.ts +3 -0
- package/dist/types/vue/src/primitives/primitive/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/progress/ProgressIndicator.vue.d.ts +14 -0
- package/dist/types/vue/src/primitives/progress/ProgressIndicator.vue.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/progress/ProgressRoot.vue.d.ts +33 -0
- package/dist/types/vue/src/primitives/progress/ProgressRoot.vue.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/progress/context.d.ts +9 -0
- package/dist/types/vue/src/primitives/progress/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/progress/index.d.ts +4 -0
- package/dist/types/vue/src/primitives/progress/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/radio-group/Radio.d.ts +88 -0
- package/dist/types/vue/src/primitives/radio-group/Radio.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/radio-group/RadioGroupIndicator.d.ts +43 -0
- package/dist/types/vue/src/primitives/radio-group/RadioGroupIndicator.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/radio-group/RadioGroupItem.d.ts +85 -0
- package/dist/types/vue/src/primitives/radio-group/RadioGroupItem.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/radio-group/RadioGroupRoot.d.ts +119 -0
- package/dist/types/vue/src/primitives/radio-group/RadioGroupRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/radio-group/context.d.ts +19 -0
- package/dist/types/vue/src/primitives/radio-group/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/radio-group/index.d.ts +5 -0
- package/dist/types/vue/src/primitives/radio-group/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/rating/RatingItem.d.ts +42 -0
- package/dist/types/vue/src/primitives/rating/RatingItem.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/rating/RatingItemIndicator.d.ts +39 -0
- package/dist/types/vue/src/primitives/rating/RatingItemIndicator.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/rating/RatingRoot.d.ts +159 -0
- package/dist/types/vue/src/primitives/rating/RatingRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/rating/context.d.ts +16 -0
- package/dist/types/vue/src/primitives/rating/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/rating/index.d.ts +5 -0
- package/dist/types/vue/src/primitives/rating/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/roving-focus/RovingFocusGroup.vue.d.ts +38 -0
- package/dist/types/vue/src/primitives/roving-focus/RovingFocusGroup.vue.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/roving-focus/RovingFocusItem.vue.d.ts +21 -0
- package/dist/types/vue/src/primitives/roving-focus/RovingFocusItem.vue.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/roving-focus/context.d.ts +15 -0
- package/dist/types/vue/src/primitives/roving-focus/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/roving-focus/index.d.ts +4 -0
- package/dist/types/vue/src/primitives/roving-focus/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/separator/Separator.vue.d.ts +19 -0
- package/dist/types/vue/src/primitives/separator/Separator.vue.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/separator/index.d.ts +2 -0
- package/dist/types/vue/src/primitives/separator/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/slider/SliderImpl.d.ts +36 -0
- package/dist/types/vue/src/primitives/slider/SliderImpl.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/slider/SliderOrientation.d.ts +91 -0
- package/dist/types/vue/src/primitives/slider/SliderOrientation.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/slider/SliderRoot.d.ts +187 -0
- package/dist/types/vue/src/primitives/slider/SliderRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/slider/SliderThumb.d.ts +33 -0
- package/dist/types/vue/src/primitives/slider/SliderThumb.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/slider/SliderTrack.d.ts +33 -0
- package/dist/types/vue/src/primitives/slider/SliderTrack.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/slider/context.d.ts +22 -0
- package/dist/types/vue/src/primitives/slider/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/slider/index.d.ts +5 -0
- package/dist/types/vue/src/primitives/slider/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/splitter/SplitterGroup.d.ts +90 -0
- package/dist/types/vue/src/primitives/splitter/SplitterGroup.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/splitter/SplitterPanel.d.ts +113 -0
- package/dist/types/vue/src/primitives/splitter/SplitterPanel.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/splitter/SplitterResizeHandle.d.ts +85 -0
- package/dist/types/vue/src/primitives/splitter/SplitterResizeHandle.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/splitter/behaviors.d.ts +22 -0
- package/dist/types/vue/src/primitives/splitter/behaviors.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/splitter/context.d.ts +23 -0
- package/dist/types/vue/src/primitives/splitter/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/splitter/index.d.ts +6 -0
- package/dist/types/vue/src/primitives/splitter/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/stepper/StepperItem.d.ts +63 -0
- package/dist/types/vue/src/primitives/stepper/StepperItem.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/stepper/StepperParts.d.ts +130 -0
- package/dist/types/vue/src/primitives/stepper/StepperParts.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/stepper/StepperRoot.d.ts +91 -0
- package/dist/types/vue/src/primitives/stepper/StepperRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/stepper/StepperTrigger.d.ts +33 -0
- package/dist/types/vue/src/primitives/stepper/StepperTrigger.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/stepper/context.d.ts +23 -0
- package/dist/types/vue/src/primitives/stepper/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/stepper/index.d.ts +6 -0
- package/dist/types/vue/src/primitives/stepper/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/switch/SwitchRoot.d.ts +133 -0
- package/dist/types/vue/src/primitives/switch/SwitchRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/switch/index.d.ts +2 -0
- package/dist/types/vue/src/primitives/switch/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/tabs/TabsContent.d.ts +50 -0
- package/dist/types/vue/src/primitives/tabs/TabsContent.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/tabs/TabsList.d.ts +42 -0
- package/dist/types/vue/src/primitives/tabs/TabsList.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/tabs/TabsRoot.d.ts +101 -0
- package/dist/types/vue/src/primitives/tabs/TabsRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/tabs/TabsTrigger.d.ts +55 -0
- package/dist/types/vue/src/primitives/tabs/TabsTrigger.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/tabs/context.d.ts +19 -0
- package/dist/types/vue/src/primitives/tabs/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/tabs/index.d.ts +6 -0
- package/dist/types/vue/src/primitives/tabs/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toggle/Toggle.d.ts +91 -0
- package/dist/types/vue/src/primitives/toggle/Toggle.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toggle/index.d.ts +2 -0
- package/dist/types/vue/src/primitives/toggle/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toggle-group/ToggleGroupItem.d.ts +53 -0
- package/dist/types/vue/src/primitives/toggle-group/ToggleGroupItem.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toggle-group/ToggleGroupRoot.d.ts +141 -0
- package/dist/types/vue/src/primitives/toggle-group/ToggleGroupRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toggle-group/context.d.ts +16 -0
- package/dist/types/vue/src/primitives/toggle-group/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toggle-group/index.d.ts +4 -0
- package/dist/types/vue/src/primitives/toggle-group/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarButton.d.ts +43 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarButton.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarRoot.d.ts +63 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarRoot.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarToggleGroup.d.ts +135 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarToggleGroup.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarToggleItem.d.ts +50 -0
- package/dist/types/vue/src/primitives/toolbar/ToolbarToggleItem.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toolbar/context.d.ts +9 -0
- package/dist/types/vue/src/primitives/toolbar/context.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/toolbar/index.d.ts +6 -0
- package/dist/types/vue/src/primitives/toolbar/index.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/config.d.ts +2 -0
- package/dist/types/vue/src/primitives/utils/config.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/createContext.d.ts +2 -0
- package/dist/types/vue/src/primitives/utils/createContext.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/renderSlotFragments.d.ts +3 -0
- package/dist/types/vue/src/primitives/utils/renderSlotFragments.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/types.d.ts +2 -0
- package/dist/types/vue/src/primitives/utils/types.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useComposing.d.ts +8 -0
- package/dist/types/vue/src/primitives/utils/useComposing.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useDirection.d.ts +4 -0
- package/dist/types/vue/src/primitives/utils/useDirection.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useEmitAsProps.d.ts +2 -0
- package/dist/types/vue/src/primitives/utils/useEmitAsProps.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useFormControl.d.ts +4 -0
- package/dist/types/vue/src/primitives/utils/useFormControl.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useForwardExpose.d.ts +7 -0
- package/dist/types/vue/src/primitives/utils/useForwardExpose.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useForwardProps.d.ts +3 -0
- package/dist/types/vue/src/primitives/utils/useForwardProps.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useForwardPropsEmits.d.ts +3 -0
- package/dist/types/vue/src/primitives/utils/useForwardPropsEmits.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useForwardScopeId.d.ts +2 -0
- package/dist/types/vue/src/primitives/utils/useForwardScopeId.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useId.d.ts +2 -0
- package/dist/types/vue/src/primitives/utils/useId.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useNonce.d.ts +3 -0
- package/dist/types/vue/src/primitives/utils/useNonce.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useSingleOrMultipleValue.d.ts +12 -0
- package/dist/types/vue/src/primitives/utils/useSingleOrMultipleValue.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/utils/useSize.d.ts +7 -0
- package/dist/types/vue/src/primitives/utils/useSize.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/visually-hidden/VisuallyHidden.vue.d.ts +19 -0
- package/dist/types/vue/src/primitives/visually-hidden/VisuallyHidden.vue.d.ts.map +1 -0
- package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInput.d.ts +2 -2
- package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInput.d.ts.map +1 -1
- package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInputBubble.vue.d.ts +1 -1
- package/dist/types/vue/src/primitives/visually-hidden/VisuallyHiddenInputBubble.vue.d.ts.map +1 -1
- package/dist/types/vue/src/primitives/visually-hidden/index.d.ts +3 -0
- package/dist/types/vue/src/primitives/visually-hidden/index.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/components/accordion/Accordion.vue +2 -1
- package/src/components/accordion/AccordionContent.vue +1 -1
- package/src/components/accordion/AccordionItem.vue +1 -1
- package/src/components/accordion/AccordionTrigger.vue +3 -3
- package/src/components/app-shell/AppShell.vue +54 -4
- package/src/components/aspect-ratio/AspectRatio.vue +1 -1
- package/src/components/breadcrumb/BreadcrumbItem.vue +2 -1
- package/src/components/button/Button.vue +2 -1
- package/src/components/card/Card.vue +2 -1
- package/src/components/checkbox/Checkbox.vue +1 -1
- package/src/components/checkbox-group/CheckboxGroup.vue +1 -1
- package/src/components/chip/Chip.vue +2 -1
- package/src/components/chip/composables/useChipRoot.ts +1 -1
- package/src/components/collapsible/Collapsible.vue +2 -1
- package/src/components/collapsible/CollapsibleContent.vue +1 -1
- package/src/components/collapsible/CollapsibleTrigger.vue +2 -2
- package/src/components/command-palette/CommandPalette.vue +53 -16
- package/src/components/command-palette/CommandPaletteInput.vue +32 -0
- package/src/components/command-palette/CommandPaletteItem.vue +7 -5
- package/src/components/command-palette/CommandPalettePanel.vue +95 -34
- package/src/components/command-palette/composables/useCommandItems.ts +16 -14
- package/src/components/command-palette/context.ts +28 -0
- package/src/components/command-palette/types.ts +21 -5
- package/src/components/command-palette/utils/match.ts +6 -3
- package/src/components/description-list/DescriptionList.vue +8 -2
- package/src/components/dialog/Dialog.vue +13 -8
- package/src/components/divider/Divider.vue +1 -1
- package/src/components/drawer/Drawer.vue +13 -8
- package/src/components/float-button/FloatButton.vue +4 -11
- package/src/components/float-button/types.ts +3 -2
- package/src/components/form/Form.vue +14 -1
- package/src/components/form/scope.ts +39 -0
- package/src/components/heading/Heading.vue +1 -1
- package/src/components/icon-button/IconButton.vue +2 -1
- package/src/components/image/Image.vue +1 -1
- package/src/components/indicator/Indicator.vue +2 -1
- package/src/components/input/InputAction.vue +1 -1
- package/src/components/line-clamp/LineClamp.vue +105 -0
- package/src/components/line-clamp/line-clamp.variants.ts +1 -0
- package/src/components/link/Link.vue +2 -1
- package/src/components/multi-select/MultiSelect.vue +4 -1
- package/src/components/nav-link/NavLink.vue +33 -4
- package/src/components/nav-link/NavLinkChild.ts +57 -0
- package/src/components/navigation-menu/NavigationMenuLink.vue +1 -1
- package/src/components/pagination/Pagination.vue +1 -1
- package/src/components/pagination/PaginationContent.vue +1 -1
- package/src/components/pagination/PaginationControl.vue +6 -1
- package/src/components/pagination/PaginationPage.vue +1 -1
- package/src/components/panel/Panel.vue +1 -1
- package/src/components/pin-input/PinInput.vue +1 -1
- package/src/components/prev-next/PrevNextLink.vue +2 -1
- package/src/components/progress/Progress.vue +1 -1
- package/src/components/prose/Prose.vue +2 -1
- package/src/components/radio-group/RadioGroup.vue +1 -1
- package/src/components/range-slider/RangeSlider.vue +1 -1
- package/src/components/rating/Rating.vue +1 -1
- package/src/components/ring-progress/RingProgress.vue +1 -1
- package/src/components/section/Section.vue +13 -2
- package/src/components/segmented-control/SegmentedControl.vue +2 -1
- package/src/components/sheet/Sheet.vue +14 -10
- package/src/components/sidebar/Sidebar.vue +2 -1
- package/src/components/sidebar/context.ts +9 -0
- package/src/components/slider/Slider.vue +1 -1
- package/src/components/slider/SliderHandle.vue +2 -1
- package/src/components/split-button/types.ts +1 -1
- package/src/components/splitter/Splitter.vue +1 -1
- package/src/components/splitter/SplitterHandle.vue +1 -1
- package/src/components/splitter/SplitterPanel.vue +1 -1
- package/src/components/statistic/Statistic.vue +2 -2
- package/src/components/stepper/Stepper.vue +1 -1
- package/src/components/stepper/StepperStep.vue +1 -1
- package/src/components/switch/Switch.vue +1 -1
- package/src/components/tabs/Tabs.vue +1 -1
- package/src/components/tabs/TabsContent.vue +1 -1
- package/src/components/tabs/TabsList.vue +1 -1
- package/src/components/tabs/TabsTrigger.vue +1 -1
- package/src/components/tag/Tag.vue +2 -1
- package/src/components/text/Text.vue +2 -1
- package/src/components/time/Time.vue +22 -5
- package/src/components/toast/Toaster.vue +1 -0
- package/src/components/toggle/Toggle.vue +2 -1
- package/src/components/toolbar/Toolbar.vue +1 -1
- package/src/components/toolbar/ToolbarButton.vue +1 -1
- package/src/components/toolbar/ToolbarLink.vue +1 -1
- package/src/components/toolbar/ToolbarSeparator.vue +1 -1
- package/src/components/toolbar/ToolbarToggleGroup.vue +2 -1
- package/src/components/toolbar/ToolbarToggleItem.vue +1 -1
- package/src/components/toolbar/types.ts +1 -1
- package/src/components/visually-hidden/VisuallyHidden.vue +4 -18
- package/src/index.ts +15 -2
- package/src/lib/useDirection.ts +2 -1
- package/src/locale/index.ts +1 -1
- package/src/primitives/accordion/AccordionContent.ts +47 -0
- package/src/primitives/accordion/AccordionHeader.ts +35 -0
- package/src/primitives/accordion/AccordionItem.ts +83 -0
- package/src/primitives/accordion/AccordionRoot.ts +75 -0
- package/src/primitives/accordion/AccordionTrigger.ts +55 -0
- package/src/primitives/accordion/LICENSE +44 -0
- package/src/primitives/accordion/context.ts +34 -0
- package/src/primitives/accordion/index.ts +11 -0
- package/src/primitives/aspect-ratio/AspectRatio.ts +47 -0
- package/src/primitives/aspect-ratio/LICENSE +44 -0
- package/src/primitives/aspect-ratio/index.ts +1 -0
- package/src/primitives/checkbox/CheckboxGroupRoot.ts +93 -0
- package/src/primitives/checkbox/CheckboxRoot.ts +170 -0
- package/src/primitives/checkbox/LICENSE +44 -0
- package/src/primitives/checkbox/context.ts +20 -0
- package/src/primitives/checkbox/index.ts +8 -0
- package/src/primitives/collapsible/CollapsibleContent.ts +124 -0
- package/src/primitives/collapsible/CollapsibleRoot.ts +63 -0
- package/src/primitives/collapsible/CollapsibleTrigger.ts +43 -0
- package/src/primitives/collapsible/LICENSE +44 -0
- package/src/primitives/collapsible/context.ts +13 -0
- package/src/primitives/collapsible/index.ts +12 -0
- package/src/primitives/collection/LICENSE +44 -0
- package/src/primitives/collection/index.ts +82 -0
- package/src/primitives/number-field/NumberFieldDecrement.vue +2 -3
- package/src/primitives/number-field/NumberFieldIncrement.vue +2 -3
- package/src/primitives/number-field/NumberFieldInput.vue +2 -3
- package/src/primitives/number-field/NumberFieldRoot.vue +3 -3
- package/src/primitives/pagination/LICENSE +44 -0
- package/src/primitives/pagination/PaginationEdge.ts +77 -0
- package/src/primitives/pagination/PaginationList.ts +46 -0
- package/src/primitives/pagination/PaginationListItem.ts +61 -0
- package/src/primitives/pagination/PaginationRoot.ts +73 -0
- package/src/primitives/pagination/context.ts +14 -0
- package/src/primitives/pagination/index.ts +15 -0
- package/src/primitives/pin-input/LICENSE +44 -0
- package/src/primitives/pin-input/PinInputInput.ts +218 -0
- package/src/primitives/pin-input/PinInputRoot.ts +136 -0
- package/src/primitives/pin-input/context.ts +24 -0
- package/src/primitives/pin-input/index.ts +3 -0
- package/src/primitives/presence/LICENSE +44 -0
- package/src/primitives/presence/Presence.ts +70 -0
- package/src/primitives/presence/index.ts +2 -0
- package/src/primitives/presence/usePresence.ts +28 -0
- package/src/primitives/primitive/LICENSE +44 -0
- package/src/primitives/primitive/Primitive.ts +45 -0
- package/src/primitives/primitive/Slot.ts +22 -0
- package/src/primitives/primitive/index.ts +2 -0
- package/src/primitives/progress/LICENSE +44 -0
- package/src/primitives/progress/ProgressIndicator.vue +24 -0
- package/src/primitives/progress/ProgressRoot.vue +95 -0
- package/src/primitives/progress/context.ts +12 -0
- package/src/primitives/progress/index.ts +7 -0
- package/src/primitives/radio-group/LICENSE +44 -0
- package/src/primitives/radio-group/Radio.ts +110 -0
- package/src/primitives/radio-group/RadioGroupIndicator.ts +54 -0
- package/src/primitives/radio-group/RadioGroupItem.ts +116 -0
- package/src/primitives/radio-group/RadioGroupRoot.ts +108 -0
- package/src/primitives/radio-group/context.ts +25 -0
- package/src/primitives/radio-group/index.ts +9 -0
- package/src/primitives/rating/LICENSE +44 -0
- package/src/primitives/rating/RatingItem.ts +35 -0
- package/src/primitives/rating/RatingItemIndicator.ts +87 -0
- package/src/primitives/rating/RatingRoot.ts +111 -0
- package/src/primitives/rating/context.ts +22 -0
- package/src/primitives/rating/index.ts +9 -0
- package/src/primitives/roving-focus/LICENSE +44 -0
- package/src/primitives/roving-focus/RovingFocusGroup.vue +125 -0
- package/src/primitives/roving-focus/RovingFocusItem.vue +99 -0
- package/src/primitives/roving-focus/context.ts +18 -0
- package/src/primitives/roving-focus/index.ts +7 -0
- package/src/primitives/separator/LICENSE +44 -0
- package/src/primitives/separator/Separator.vue +26 -0
- package/src/primitives/separator/index.ts +1 -0
- package/src/primitives/slider/LICENSE +44 -0
- package/src/primitives/slider/SliderImpl.ts +66 -0
- package/src/primitives/slider/SliderOrientation.ts +100 -0
- package/src/primitives/slider/SliderRoot.ts +214 -0
- package/src/primitives/slider/SliderThumb.ts +139 -0
- package/src/primitives/slider/SliderTrack.ts +37 -0
- package/src/primitives/slider/context.ts +31 -0
- package/src/primitives/slider/index.ts +8 -0
- package/src/primitives/splitter/LICENSE +44 -0
- package/src/primitives/splitter/SplitterGroup.ts +642 -0
- package/src/primitives/splitter/SplitterPanel.ts +170 -0
- package/src/primitives/splitter/SplitterResizeHandle.ts +170 -0
- package/src/primitives/splitter/behaviors.ts +173 -0
- package/src/primitives/splitter/context.ts +33 -0
- package/src/primitives/splitter/index.ts +13 -0
- package/src/primitives/stepper/LICENSE +44 -0
- package/src/primitives/stepper/StepperItem.ts +68 -0
- package/src/primitives/stepper/StepperParts.ts +103 -0
- package/src/primitives/stepper/StepperRoot.ts +171 -0
- package/src/primitives/stepper/StepperTrigger.ts +119 -0
- package/src/primitives/stepper/context.ts +29 -0
- package/src/primitives/stepper/index.ts +17 -0
- package/src/primitives/switch/LICENSE +44 -0
- package/src/primitives/switch/SwitchRoot.ts +151 -0
- package/src/primitives/switch/index.ts +6 -0
- package/src/primitives/tabs/LICENSE +44 -0
- package/src/primitives/tabs/TabsContent.ts +94 -0
- package/src/primitives/tabs/TabsList.ts +52 -0
- package/src/primitives/tabs/TabsRoot.ts +99 -0
- package/src/primitives/tabs/TabsTrigger.ts +97 -0
- package/src/primitives/tabs/context.ts +22 -0
- package/src/primitives/tabs/index.ts +5 -0
- package/src/primitives/toggle/LICENSE +44 -0
- package/src/primitives/toggle/Toggle.ts +116 -0
- package/src/primitives/toggle/index.ts +1 -0
- package/src/primitives/toggle-group/LICENSE +44 -0
- package/src/primitives/toggle-group/ToggleGroupItem.ts +80 -0
- package/src/primitives/toggle-group/ToggleGroupRoot.ts +113 -0
- package/src/primitives/toggle-group/context.ts +19 -0
- package/src/primitives/toggle-group/index.ts +7 -0
- package/src/primitives/toolbar/LICENSE +44 -0
- package/src/primitives/toolbar/ToolbarButton.ts +44 -0
- package/src/primitives/toolbar/ToolbarRoot.ts +53 -0
- package/src/primitives/toolbar/ToolbarToggleGroup.ts +69 -0
- package/src/primitives/toolbar/ToolbarToggleItem.ts +43 -0
- package/src/primitives/toolbar/context.ts +12 -0
- package/src/primitives/toolbar/index.ts +9 -0
- package/src/primitives/utils/config.ts +1 -0
- package/src/primitives/utils/createContext.ts +34 -0
- package/src/primitives/utils/renderSlotFragments.ts +8 -0
- package/src/primitives/utils/types.ts +1 -0
- package/src/primitives/utils/useComposing.ts +44 -0
- package/src/primitives/utils/useDirection.ts +9 -0
- package/src/primitives/utils/useEmitAsProps.ts +13 -0
- package/src/primitives/utils/useFormControl.ts +6 -0
- package/src/primitives/utils/useForwardExpose.ts +78 -0
- package/src/primitives/utils/useForwardProps.ts +29 -0
- package/src/primitives/utils/useForwardPropsEmits.ts +12 -0
- package/src/primitives/utils/useForwardScopeId.ts +6 -0
- package/src/primitives/utils/useId.ts +9 -0
- package/src/primitives/utils/useNonce.ts +7 -0
- package/src/primitives/utils/useSingleOrMultipleValue.ts +36 -0
- package/src/primitives/utils/useSize.ts +25 -0
- package/src/primitives/visually-hidden/VisuallyHidden.vue +30 -0
- package/src/primitives/visually-hidden/VisuallyHiddenInput.ts +1 -1
- package/src/primitives/visually-hidden/VisuallyHiddenInputBubble.vue +2 -2
- package/src/primitives/visually-hidden/index.ts +2 -0
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { assert } from './assert'
|
|
2
|
+
import { getPanelGroupElement, getResizeHandleElement } from './dom'
|
|
3
|
+
import { getResizeEventCursorPosition, isKeyDown } from './events'
|
|
4
|
+
import type { Direction, DragState, PanelData, ResizeEvent } from './types'
|
|
5
|
+
|
|
6
|
+
function calculateDragOffsetPercentage(
|
|
7
|
+
event: ResizeEvent,
|
|
8
|
+
dragHandleId: string,
|
|
9
|
+
direction: Direction,
|
|
10
|
+
initialDragState: DragState,
|
|
11
|
+
panelGroupElement: ParentNode,
|
|
12
|
+
): number {
|
|
13
|
+
const isHorizontal = direction === 'horizontal'
|
|
14
|
+
const handleElement = getResizeHandleElement(dragHandleId, panelGroupElement)
|
|
15
|
+
assert(handleElement)
|
|
16
|
+
const groupId = handleElement.getAttribute('data-panel-group-id')
|
|
17
|
+
assert(groupId)
|
|
18
|
+
const { initialCursorPosition } = initialDragState
|
|
19
|
+
const cursorPosition = getResizeEventCursorPosition(direction, event)
|
|
20
|
+
const groupElement = getPanelGroupElement(groupId, panelGroupElement)
|
|
21
|
+
assert(groupElement)
|
|
22
|
+
const groupRect = groupElement.getBoundingClientRect()
|
|
23
|
+
const groupSizeInPixels = isHorizontal ? groupRect.width : groupRect.height
|
|
24
|
+
const offsetPixels = cursorPosition - initialCursorPosition
|
|
25
|
+
const offsetPercentage = (offsetPixels / groupSizeInPixels) * 100
|
|
26
|
+
return offsetPercentage
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export function calculateDeltaPercentage(
|
|
30
|
+
event: ResizeEvent,
|
|
31
|
+
dragHandleId: string,
|
|
32
|
+
direction: Direction,
|
|
33
|
+
initialDragState: DragState | null,
|
|
34
|
+
keyboardResizeBy: number | null,
|
|
35
|
+
panelGroupElement: ParentNode,
|
|
36
|
+
): number {
|
|
37
|
+
if (isKeyDown(event)) {
|
|
38
|
+
const isHorizontal = direction === 'horizontal'
|
|
39
|
+
let delta = 0
|
|
40
|
+
if (event.shiftKey) delta = 100
|
|
41
|
+
else delta = keyboardResizeBy ?? 10
|
|
42
|
+
let movement = 0
|
|
43
|
+
switch (event.key) {
|
|
44
|
+
case 'ArrowDown':
|
|
45
|
+
movement = isHorizontal ? 0 : delta
|
|
46
|
+
break
|
|
47
|
+
case 'ArrowLeft':
|
|
48
|
+
movement = isHorizontal ? -delta : 0
|
|
49
|
+
break
|
|
50
|
+
case 'ArrowRight':
|
|
51
|
+
movement = isHorizontal ? delta : 0
|
|
52
|
+
break
|
|
53
|
+
case 'ArrowUp':
|
|
54
|
+
movement = isHorizontal ? 0 : -delta
|
|
55
|
+
break
|
|
56
|
+
case 'End':
|
|
57
|
+
movement = 100
|
|
58
|
+
break
|
|
59
|
+
case 'Home':
|
|
60
|
+
movement = -100
|
|
61
|
+
break
|
|
62
|
+
}
|
|
63
|
+
return movement
|
|
64
|
+
} else {
|
|
65
|
+
if (initialDragState == null) return 0
|
|
66
|
+
return calculateDragOffsetPercentage(
|
|
67
|
+
event,
|
|
68
|
+
dragHandleId,
|
|
69
|
+
direction,
|
|
70
|
+
initialDragState,
|
|
71
|
+
panelGroupElement,
|
|
72
|
+
)
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
export function calculateAriaValues({
|
|
77
|
+
layout,
|
|
78
|
+
panelsArray,
|
|
79
|
+
pivotIndices,
|
|
80
|
+
}: {
|
|
81
|
+
layout: number[]
|
|
82
|
+
panelsArray: PanelData[]
|
|
83
|
+
pivotIndices: number[]
|
|
84
|
+
}) {
|
|
85
|
+
let currentMinSize = 0
|
|
86
|
+
let currentMaxSize = 100
|
|
87
|
+
let totalMinSize = 0
|
|
88
|
+
let totalMaxSize = 0
|
|
89
|
+
const firstIndex = pivotIndices[0]
|
|
90
|
+
assert(firstIndex != null)
|
|
91
|
+
panelsArray.forEach((panelData, index) => {
|
|
92
|
+
const { constraints } = panelData
|
|
93
|
+
const { maxSize = 100, minSize = 0 } = constraints
|
|
94
|
+
if (index === firstIndex) {
|
|
95
|
+
currentMinSize = minSize
|
|
96
|
+
currentMaxSize = maxSize
|
|
97
|
+
} else {
|
|
98
|
+
totalMinSize += minSize
|
|
99
|
+
totalMaxSize += maxSize
|
|
100
|
+
}
|
|
101
|
+
})
|
|
102
|
+
const valueMax = Math.min(currentMaxSize, 100 - totalMinSize)
|
|
103
|
+
const valueMin = Math.max(currentMinSize, 100 - totalMaxSize)
|
|
104
|
+
const valueNow = layout[firstIndex]
|
|
105
|
+
return { valueMax, valueMin, valueNow }
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export function calculateUnsafeDefaultLayout({
|
|
109
|
+
panelDataArray,
|
|
110
|
+
}: {
|
|
111
|
+
panelDataArray: PanelData[]
|
|
112
|
+
}): number[] {
|
|
113
|
+
const layout = Array.from<number>({ length: panelDataArray.length })
|
|
114
|
+
const panelConstraintsArray = panelDataArray.map(panelData => panelData.constraints)
|
|
115
|
+
let numPanelsWithSizes = 0
|
|
116
|
+
let remainingSize = 100
|
|
117
|
+
for (let index = 0; index < panelDataArray.length; index++) {
|
|
118
|
+
const panelConstraints = panelConstraintsArray[index]
|
|
119
|
+
assert(panelConstraints)
|
|
120
|
+
const { defaultSize } = panelConstraints
|
|
121
|
+
if (defaultSize != null) {
|
|
122
|
+
numPanelsWithSizes++
|
|
123
|
+
layout[index] = defaultSize
|
|
124
|
+
remainingSize -= defaultSize
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
for (let index = 0; index < panelDataArray.length; index++) {
|
|
128
|
+
const panelConstraints = panelConstraintsArray[index]
|
|
129
|
+
assert(panelConstraints)
|
|
130
|
+
const { defaultSize } = panelConstraints
|
|
131
|
+
if (defaultSize != null) continue
|
|
132
|
+
const numRemainingPanels = panelDataArray.length - numPanelsWithSizes
|
|
133
|
+
const size = remainingSize / numRemainingPanels
|
|
134
|
+
numPanelsWithSizes++
|
|
135
|
+
layout[index] = size
|
|
136
|
+
remainingSize -= size
|
|
137
|
+
}
|
|
138
|
+
return layout
|
|
139
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { assert } from './assert'
|
|
2
|
+
import { fuzzyNumbersEqual } from './compare'
|
|
3
|
+
import type { PanelData } from './types'
|
|
4
|
+
|
|
5
|
+
export function callPanelCallbacks(
|
|
6
|
+
panelsArray: PanelData[],
|
|
7
|
+
layout: number[],
|
|
8
|
+
panelIdToLastNotifiedSizeMap: Record<string, number>,
|
|
9
|
+
groupSizeInPixels: number | null,
|
|
10
|
+
) {
|
|
11
|
+
layout.forEach((size, index) => {
|
|
12
|
+
const panelData = panelsArray[index]
|
|
13
|
+
assert(panelData)
|
|
14
|
+
const { callbacks, constraints, id: panelId } = panelData
|
|
15
|
+
const { collapsedSize = 0, collapsible, sizeUnit } = constraints
|
|
16
|
+
let displaySize = size
|
|
17
|
+
if (sizeUnit === 'px' && groupSizeInPixels != null)
|
|
18
|
+
displaySize = (size / 100) * groupSizeInPixels
|
|
19
|
+
const lastNotifiedSize = panelIdToLastNotifiedSizeMap[panelId]
|
|
20
|
+
if (lastNotifiedSize == null || !fuzzyNumbersEqual(displaySize, lastNotifiedSize)) {
|
|
21
|
+
panelIdToLastNotifiedSizeMap[panelId] = displaySize
|
|
22
|
+
const { onCollapse, onExpand, onResize } = callbacks
|
|
23
|
+
if (onResize) onResize(displaySize, lastNotifiedSize)
|
|
24
|
+
if (collapsible && (onCollapse || onExpand)) {
|
|
25
|
+
if (
|
|
26
|
+
onExpand &&
|
|
27
|
+
(lastNotifiedSize == null || fuzzyNumbersEqual(lastNotifiedSize, collapsedSize)) &&
|
|
28
|
+
!fuzzyNumbersEqual(displaySize, collapsedSize)
|
|
29
|
+
)
|
|
30
|
+
onExpand()
|
|
31
|
+
if (
|
|
32
|
+
onCollapse &&
|
|
33
|
+
(lastNotifiedSize == null || !fuzzyNumbersEqual(lastNotifiedSize, collapsedSize)) &&
|
|
34
|
+
fuzzyNumbersEqual(displaySize, collapsedSize)
|
|
35
|
+
)
|
|
36
|
+
onCollapse()
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
})
|
|
40
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { PRECISION } from './constants'
|
|
2
|
+
|
|
3
|
+
export function fuzzyCompareNumbers(actual: number, expected: number, fractionDigits = PRECISION) {
|
|
4
|
+
actual = Number.parseFloat(actual.toFixed(fractionDigits))
|
|
5
|
+
expected = Number.parseFloat(expected.toFixed(fractionDigits))
|
|
6
|
+
const delta = actual - expected
|
|
7
|
+
if (delta === 0) return 0
|
|
8
|
+
else return delta > 0 ? 1 : -1
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export function fuzzyNumbersEqual(actual: number, expected: number, fractionDigits?: number) {
|
|
12
|
+
return fuzzyCompareNumbers(actual, expected, fractionDigits) === 0
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const PRECISION = 10
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export function debounce<T extends unknown[]>(callback: (...args: T) => void, durationMs = 10) {
|
|
2
|
+
let timeoutId: ReturnType<typeof setTimeout> | null = null
|
|
3
|
+
const callable = (...args: T) => {
|
|
4
|
+
if (timeoutId !== null) clearTimeout(timeoutId)
|
|
5
|
+
timeoutId = setTimeout(() => {
|
|
6
|
+
callback(...args)
|
|
7
|
+
}, durationMs)
|
|
8
|
+
}
|
|
9
|
+
return callable
|
|
10
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
const isBrowser = typeof document !== 'undefined'
|
|
2
|
+
|
|
3
|
+
export function getPanelGroupElement(
|
|
4
|
+
id: string,
|
|
5
|
+
rootElement: ParentNode | HTMLElement = document,
|
|
6
|
+
): HTMLElement | null {
|
|
7
|
+
if (!isBrowser) return null
|
|
8
|
+
if (rootElement instanceof HTMLElement && rootElement?.dataset?.panelGroupId === id)
|
|
9
|
+
return rootElement
|
|
10
|
+
const element = rootElement.querySelector<HTMLElement>(
|
|
11
|
+
`[data-panel-group][data-panel-group-id="${id}"]`,
|
|
12
|
+
)
|
|
13
|
+
if (element) return element
|
|
14
|
+
return null
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export function getResizeHandleElement(
|
|
18
|
+
id: string,
|
|
19
|
+
scope: ParentNode | HTMLElement = document,
|
|
20
|
+
): HTMLElement | null {
|
|
21
|
+
if (!isBrowser) return null
|
|
22
|
+
const element = scope.querySelector<HTMLElement>(`[data-panel-resize-handle-id="${id}"]`)
|
|
23
|
+
if (element) return element
|
|
24
|
+
return null
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function getResizeHandleElementIndex(
|
|
28
|
+
groupId: string,
|
|
29
|
+
id: string,
|
|
30
|
+
scope: ParentNode | HTMLElement = document,
|
|
31
|
+
): number | null {
|
|
32
|
+
if (!isBrowser) return null
|
|
33
|
+
const handles = getResizeHandleElementsForGroup(groupId, scope)
|
|
34
|
+
const index = handles.findIndex(
|
|
35
|
+
handle => handle.getAttribute('data-panel-resize-handle-id') === id,
|
|
36
|
+
)
|
|
37
|
+
return index ?? null
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export function getResizeHandleElementsForGroup(
|
|
41
|
+
groupId: string,
|
|
42
|
+
scope: ParentNode | HTMLElement = document,
|
|
43
|
+
): HTMLElement[] {
|
|
44
|
+
if (!isBrowser) return []
|
|
45
|
+
return Array.from(
|
|
46
|
+
scope.querySelectorAll<HTMLElement>(
|
|
47
|
+
`[data-panel-resize-handle-id][data-panel-group-id="${groupId}"]`,
|
|
48
|
+
),
|
|
49
|
+
)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export function getResizeHandlePanelIds(
|
|
53
|
+
groupId: string,
|
|
54
|
+
handleId: string,
|
|
55
|
+
panelsArray: { id: string }[],
|
|
56
|
+
scope: ParentNode | HTMLElement = document,
|
|
57
|
+
): [idBefore: string | null, idAfter: string | null] {
|
|
58
|
+
const handle = getResizeHandleElement(handleId, scope)
|
|
59
|
+
const handles = getResizeHandleElementsForGroup(groupId, scope)
|
|
60
|
+
const index = handle ? handles.indexOf(handle) : -1
|
|
61
|
+
const idBefore = panelsArray[index]?.id ?? null
|
|
62
|
+
const idAfter = panelsArray[index + 1]?.id ?? null
|
|
63
|
+
return [idBefore, idAfter]
|
|
64
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { Direction, ResizeEvent } from './types'
|
|
2
|
+
|
|
3
|
+
export function isKeyDown(event: ResizeEvent): event is KeyboardEvent {
|
|
4
|
+
return event.type === 'keydown'
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export function isMouseEvent(event: ResizeEvent): event is MouseEvent {
|
|
8
|
+
return event.type.startsWith('mouse')
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export function isTouchEvent(event: ResizeEvent): event is TouchEvent {
|
|
12
|
+
return event.type.startsWith('touch')
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export function getResizeEventCoordinates(event: ResizeEvent) {
|
|
16
|
+
if (isMouseEvent(event)) {
|
|
17
|
+
return { x: event.clientX, y: event.clientY }
|
|
18
|
+
} else if (isTouchEvent(event)) {
|
|
19
|
+
const touch = event.touches[0]
|
|
20
|
+
if (touch && touch.clientX && touch.clientY) return { x: touch.clientX, y: touch.clientY }
|
|
21
|
+
}
|
|
22
|
+
return { x: Number.POSITIVE_INFINITY, y: Number.POSITIVE_INFINITY }
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function getResizeEventCursorPosition(direction: Direction, event: ResizeEvent): number {
|
|
26
|
+
const isHorizontal = direction === 'horizontal'
|
|
27
|
+
const { x, y } = getResizeEventCoordinates(event)
|
|
28
|
+
return isHorizontal ? x : y
|
|
29
|
+
}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import { assert } from './assert'
|
|
2
|
+
import { fuzzyCompareNumbers, fuzzyNumbersEqual } from './compare'
|
|
3
|
+
import { resizePanel } from './resizePanel'
|
|
4
|
+
import type { PanelConstraints } from './types'
|
|
5
|
+
|
|
6
|
+
export function compareLayouts(a: number[], b: number[]) {
|
|
7
|
+
if (a.length !== b.length) return false
|
|
8
|
+
else for (let index = 0; index < a.length; index++) if (a[index] !== b[index]) return false
|
|
9
|
+
return true
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function adjustLayoutByDelta({
|
|
13
|
+
delta,
|
|
14
|
+
layout: prevLayout,
|
|
15
|
+
panelConstraints: panelConstraintsArray,
|
|
16
|
+
pivotIndices,
|
|
17
|
+
trigger,
|
|
18
|
+
}: {
|
|
19
|
+
delta: number
|
|
20
|
+
layout: number[]
|
|
21
|
+
panelConstraints: PanelConstraints[]
|
|
22
|
+
pivotIndices: number[]
|
|
23
|
+
trigger: 'imperative-api' | 'keyboard' | 'mouse-or-touch'
|
|
24
|
+
}): number[] {
|
|
25
|
+
if (fuzzyNumbersEqual(delta, 0)) return prevLayout
|
|
26
|
+
const nextLayout = [...prevLayout]
|
|
27
|
+
const [firstPivotIndex, secondPivotIndex] = pivotIndices
|
|
28
|
+
assert(firstPivotIndex != null)
|
|
29
|
+
assert(secondPivotIndex != null)
|
|
30
|
+
let deltaApplied = 0
|
|
31
|
+
if (trigger === 'keyboard') {
|
|
32
|
+
{
|
|
33
|
+
const index = delta < 0 ? secondPivotIndex : firstPivotIndex
|
|
34
|
+
const panelConstraints = panelConstraintsArray[index]
|
|
35
|
+
assert(panelConstraints)
|
|
36
|
+
if (panelConstraints.collapsible) {
|
|
37
|
+
const prevSize = prevLayout[index]
|
|
38
|
+
assert(prevSize != null)
|
|
39
|
+
const constraints = panelConstraintsArray[index]
|
|
40
|
+
assert(constraints)
|
|
41
|
+
const { collapsedSize = 0, minSize = 0 } = constraints
|
|
42
|
+
if (fuzzyNumbersEqual(prevSize, collapsedSize)) {
|
|
43
|
+
const localDelta = minSize - prevSize
|
|
44
|
+
if (fuzzyCompareNumbers(localDelta, Math.abs(delta)) > 0)
|
|
45
|
+
delta = delta < 0 ? 0 - localDelta : localDelta
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
{
|
|
50
|
+
const index = delta < 0 ? firstPivotIndex : secondPivotIndex
|
|
51
|
+
const panelConstraints = panelConstraintsArray[index]
|
|
52
|
+
assert(panelConstraints)
|
|
53
|
+
const { collapsible } = panelConstraints
|
|
54
|
+
if (collapsible) {
|
|
55
|
+
const prevSize = prevLayout[index]
|
|
56
|
+
assert(prevSize != null)
|
|
57
|
+
const constraints = panelConstraintsArray[index]
|
|
58
|
+
assert(constraints)
|
|
59
|
+
const { collapsedSize = 0, minSize = 0 } = constraints
|
|
60
|
+
if (fuzzyNumbersEqual(prevSize, minSize)) {
|
|
61
|
+
const localDelta = prevSize - collapsedSize
|
|
62
|
+
if (fuzzyCompareNumbers(localDelta, Math.abs(delta)) > 0)
|
|
63
|
+
delta = delta < 0 ? 0 - localDelta : localDelta
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
{
|
|
69
|
+
const increment = delta < 0 ? 1 : -1
|
|
70
|
+
let index = delta < 0 ? secondPivotIndex : firstPivotIndex
|
|
71
|
+
let maxAvailableDelta = 0
|
|
72
|
+
while (true) {
|
|
73
|
+
const prevSize = prevLayout[index]
|
|
74
|
+
assert(prevSize != null)
|
|
75
|
+
const maxSafeSize = resizePanel({
|
|
76
|
+
panelConstraints: panelConstraintsArray,
|
|
77
|
+
panelIndex: index,
|
|
78
|
+
size: 100,
|
|
79
|
+
})
|
|
80
|
+
const available = maxSafeSize - prevSize
|
|
81
|
+
maxAvailableDelta += available
|
|
82
|
+
index += increment
|
|
83
|
+
if (index < 0 || index >= panelConstraintsArray.length) break
|
|
84
|
+
}
|
|
85
|
+
const minAbsDelta = Math.min(Math.abs(delta), Math.abs(maxAvailableDelta))
|
|
86
|
+
delta = delta < 0 ? 0 - minAbsDelta : minAbsDelta
|
|
87
|
+
}
|
|
88
|
+
{
|
|
89
|
+
const pivotIndex = delta < 0 ? firstPivotIndex : secondPivotIndex
|
|
90
|
+
let index = pivotIndex
|
|
91
|
+
while (index >= 0 && index < panelConstraintsArray.length) {
|
|
92
|
+
const deltaRemaining = Math.abs(delta) - Math.abs(deltaApplied)
|
|
93
|
+
const prevSize = prevLayout[index]
|
|
94
|
+
assert(prevSize != null)
|
|
95
|
+
const unsafeSize = prevSize - deltaRemaining
|
|
96
|
+
const safeSize = resizePanel({
|
|
97
|
+
panelConstraints: panelConstraintsArray,
|
|
98
|
+
panelIndex: index,
|
|
99
|
+
size: unsafeSize,
|
|
100
|
+
})
|
|
101
|
+
if (!fuzzyNumbersEqual(prevSize, safeSize)) {
|
|
102
|
+
deltaApplied += prevSize - safeSize
|
|
103
|
+
nextLayout[index] = safeSize
|
|
104
|
+
if (
|
|
105
|
+
deltaApplied
|
|
106
|
+
.toPrecision(3)
|
|
107
|
+
.localeCompare(Math.abs(delta).toPrecision(3), undefined, { numeric: true }) >= 0
|
|
108
|
+
)
|
|
109
|
+
break
|
|
110
|
+
}
|
|
111
|
+
if (delta < 0) index--
|
|
112
|
+
else index++
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
if (fuzzyNumbersEqual(deltaApplied, 0)) return prevLayout
|
|
116
|
+
{
|
|
117
|
+
const pivotIndex = delta < 0 ? secondPivotIndex : firstPivotIndex
|
|
118
|
+
const prevSize = prevLayout[pivotIndex]
|
|
119
|
+
assert(prevSize != null)
|
|
120
|
+
const unsafeSize = prevSize + deltaApplied
|
|
121
|
+
const safeSize = resizePanel({
|
|
122
|
+
panelConstraints: panelConstraintsArray,
|
|
123
|
+
panelIndex: pivotIndex,
|
|
124
|
+
size: unsafeSize,
|
|
125
|
+
})
|
|
126
|
+
nextLayout[pivotIndex] = safeSize
|
|
127
|
+
if (!fuzzyNumbersEqual(safeSize, unsafeSize)) {
|
|
128
|
+
let deltaRemaining = unsafeSize - safeSize
|
|
129
|
+
const remainingPivotIndex = delta < 0 ? secondPivotIndex : firstPivotIndex
|
|
130
|
+
let index = remainingPivotIndex
|
|
131
|
+
while (index >= 0 && index < panelConstraintsArray.length) {
|
|
132
|
+
const size = nextLayout[index]
|
|
133
|
+
assert(size != null)
|
|
134
|
+
const unsafe = size + deltaRemaining
|
|
135
|
+
const safe = resizePanel({
|
|
136
|
+
panelConstraints: panelConstraintsArray,
|
|
137
|
+
panelIndex: index,
|
|
138
|
+
size: unsafe,
|
|
139
|
+
})
|
|
140
|
+
if (!fuzzyNumbersEqual(size, safe)) {
|
|
141
|
+
deltaRemaining -= safe - size
|
|
142
|
+
nextLayout[index] = safe
|
|
143
|
+
}
|
|
144
|
+
if (fuzzyNumbersEqual(deltaRemaining, 0)) break
|
|
145
|
+
if (delta > 0) index--
|
|
146
|
+
else index++
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
const totalSize = nextLayout.reduce((total, size) => size + total, 0)
|
|
151
|
+
if (!fuzzyNumbersEqual(totalSize, 100)) return prevLayout
|
|
152
|
+
return nextLayout
|
|
153
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { getResizeHandleElementIndex } from './dom'
|
|
2
|
+
|
|
3
|
+
export function determinePivotIndices(
|
|
4
|
+
groupId: string,
|
|
5
|
+
dragHandleId: string,
|
|
6
|
+
panelGroupElement: ParentNode,
|
|
7
|
+
): [number, number] {
|
|
8
|
+
const index = getResizeHandleElementIndex(groupId, dragHandleId, panelGroupElement)
|
|
9
|
+
return index != null ? [index, index + 1] : [-1, -1]
|
|
10
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface Rectangle {
|
|
2
|
+
x: number
|
|
3
|
+
y: number
|
|
4
|
+
width: number
|
|
5
|
+
height: number
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export function intersects(rectOne: Rectangle, rectTwo: Rectangle, strict: boolean): boolean {
|
|
9
|
+
if (strict) {
|
|
10
|
+
return (
|
|
11
|
+
rectOne.x < rectTwo.x + rectTwo.width &&
|
|
12
|
+
rectOne.x + rectOne.width > rectTwo.x &&
|
|
13
|
+
rectOne.y < rectTwo.y + rectTwo.height &&
|
|
14
|
+
rectOne.y + rectOne.height > rectTwo.y
|
|
15
|
+
)
|
|
16
|
+
} else {
|
|
17
|
+
return (
|
|
18
|
+
rectOne.x <= rectTwo.x + rectTwo.width &&
|
|
19
|
+
rectOne.x + rectOne.width >= rectTwo.x &&
|
|
20
|
+
rectOne.y <= rectTwo.y + rectTwo.height &&
|
|
21
|
+
rectOne.y + rectOne.height >= rectTwo.y
|
|
22
|
+
)
|
|
23
|
+
}
|
|
24
|
+
}
|