@hina-ui/vue 1.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/dist/index.js +18436 -0
- package/dist/index.js.map +1 -0
- package/dist/types/components/accordion/Accordion.vue.d.ts +28 -0
- package/dist/types/components/accordion/Accordion.vue.d.ts.map +1 -0
- package/dist/types/components/accordion/AccordionContent.vue.d.ts +17 -0
- package/dist/types/components/accordion/AccordionContent.vue.d.ts.map +1 -0
- package/dist/types/components/accordion/AccordionItem.vue.d.ts +19 -0
- package/dist/types/components/accordion/AccordionItem.vue.d.ts.map +1 -0
- package/dist/types/components/accordion/AccordionTrigger.vue.d.ts +22 -0
- package/dist/types/components/accordion/AccordionTrigger.vue.d.ts.map +1 -0
- package/dist/types/components/accordion/accordion.variants.d.ts +6 -0
- package/dist/types/components/accordion/accordion.variants.d.ts.map +1 -0
- package/dist/types/components/alert/Alert.vue.d.ts +39 -0
- package/dist/types/components/alert/Alert.vue.d.ts.map +1 -0
- package/dist/types/components/alert-dialog/AlertDialog.vue.d.ts +40 -0
- package/dist/types/components/alert-dialog/AlertDialog.vue.d.ts.map +1 -0
- package/dist/types/components/anchor/Anchor.vue.d.ts +14 -0
- package/dist/types/components/anchor/Anchor.vue.d.ts.map +1 -0
- package/dist/types/components/anchor/composables/useScrollSpy.d.ts +13 -0
- package/dist/types/components/anchor/composables/useScrollSpy.d.ts.map +1 -0
- package/dist/types/components/app-shell/AppShell.vue.d.ts +220 -0
- package/dist/types/components/app-shell/AppShell.vue.d.ts.map +1 -0
- package/dist/types/components/app-shell/composables/useDesktopQuery.d.ts +2 -0
- package/dist/types/components/app-shell/composables/useDesktopQuery.d.ts.map +1 -0
- package/dist/types/components/aspect-ratio/AspectRatio.vue.d.ts +20 -0
- package/dist/types/components/aspect-ratio/AspectRatio.vue.d.ts.map +1 -0
- package/dist/types/components/avatar/Avatar.vue.d.ts +24 -0
- package/dist/types/components/avatar/Avatar.vue.d.ts.map +1 -0
- package/dist/types/components/avatar/AvatarGroup.vue.d.ts +10 -0
- package/dist/types/components/avatar/AvatarGroup.vue.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar-group.variants.d.ts +22 -0
- package/dist/types/components/avatar/avatar-group.variants.d.ts.map +1 -0
- package/dist/types/components/avatar/avatar.variants.d.ts +22 -0
- package/dist/types/components/avatar/avatar.variants.d.ts.map +1 -0
- package/dist/types/components/avatar/context.d.ts +8 -0
- package/dist/types/components/avatar/context.d.ts.map +1 -0
- package/dist/types/components/badge/Badge.vue.d.ts +32 -0
- package/dist/types/components/badge/Badge.vue.d.ts.map +1 -0
- package/dist/types/components/badge/badge.variants.d.ts +94 -0
- package/dist/types/components/badge/badge.variants.d.ts.map +1 -0
- package/dist/types/components/banner/Banner.vue.d.ts +42 -0
- package/dist/types/components/banner/Banner.vue.d.ts.map +1 -0
- package/dist/types/components/banner/banner.variants.d.ts +47 -0
- package/dist/types/components/banner/banner.variants.d.ts.map +1 -0
- package/dist/types/components/banner/composables/useAutoplay.d.ts +7 -0
- package/dist/types/components/banner/composables/useAutoplay.d.ts.map +1 -0
- package/dist/types/components/banner/icons.d.ts +9 -0
- package/dist/types/components/banner/icons.d.ts.map +1 -0
- package/dist/types/components/banner/types.d.ts +8 -0
- package/dist/types/components/banner/types.d.ts.map +1 -0
- package/dist/types/components/banner/utils/direction.d.ts +3 -0
- package/dist/types/components/banner/utils/direction.d.ts.map +1 -0
- package/dist/types/components/blockquote/Blockquote.vue.d.ts +18 -0
- package/dist/types/components/blockquote/Blockquote.vue.d.ts.map +1 -0
- package/dist/types/components/breadcrumb/Breadcrumb.vue.d.ts +18 -0
- package/dist/types/components/breadcrumb/Breadcrumb.vue.d.ts.map +1 -0
- package/dist/types/components/breadcrumb/BreadcrumbItem.vue.d.ts +24 -0
- package/dist/types/components/breadcrumb/BreadcrumbItem.vue.d.ts.map +1 -0
- package/dist/types/components/breadcrumb/BreadcrumbSeparator.vue.d.ts +17 -0
- package/dist/types/components/breadcrumb/BreadcrumbSeparator.vue.d.ts.map +1 -0
- package/dist/types/components/button/Button.vue.d.ts +39 -0
- package/dist/types/components/button/Button.vue.d.ts.map +1 -0
- package/dist/types/components/button/IconSlot.vue.d.ts +19 -0
- package/dist/types/components/button/IconSlot.vue.d.ts.map +1 -0
- package/dist/types/components/button/button.variants.d.ts +104 -0
- package/dist/types/components/button/button.variants.d.ts.map +1 -0
- package/dist/types/components/button-group/ButtonGroup.vue.d.ts +26 -0
- package/dist/types/components/button-group/ButtonGroup.vue.d.ts.map +1 -0
- package/dist/types/components/button-group/button-group.variants.d.ts +40 -0
- package/dist/types/components/button-group/button-group.variants.d.ts.map +1 -0
- package/dist/types/components/calendar/Calendar.vue.d.ts +33 -0
- package/dist/types/components/calendar/Calendar.vue.d.ts.map +1 -0
- package/dist/types/components/calendar/CalendarHeader.vue.d.ts +20 -0
- package/dist/types/components/calendar/CalendarHeader.vue.d.ts.map +1 -0
- package/dist/types/components/calendar/CalendarLevels.vue.d.ts +43 -0
- package/dist/types/components/calendar/CalendarLevels.vue.d.ts.map +1 -0
- package/dist/types/components/calendar/calendar.variants.d.ts +74 -0
- package/dist/types/components/calendar/calendar.variants.d.ts.map +1 -0
- package/dist/types/components/calendar/composables/useCalendarLevels.d.ts +15 -0
- package/dist/types/components/calendar/composables/useCalendarLevels.d.ts.map +1 -0
- package/dist/types/components/calendar/utils/format.d.ts +7 -0
- package/dist/types/components/calendar/utils/format.d.ts.map +1 -0
- package/dist/types/components/callout/Callout.vue.d.ts +26 -0
- package/dist/types/components/callout/Callout.vue.d.ts.map +1 -0
- package/dist/types/components/callout/callout.variants.d.ts +59 -0
- package/dist/types/components/callout/callout.variants.d.ts.map +1 -0
- package/dist/types/components/callout/icons.d.ts +9 -0
- package/dist/types/components/callout/icons.d.ts.map +1 -0
- package/dist/types/components/card/Card.vue.d.ts +22 -0
- package/dist/types/components/card/Card.vue.d.ts.map +1 -0
- package/dist/types/components/card/card.variants.d.ts +19 -0
- package/dist/types/components/card/card.variants.d.ts.map +1 -0
- package/dist/types/components/center/Center.vue.d.ts +22 -0
- package/dist/types/components/center/Center.vue.d.ts.map +1 -0
- package/dist/types/components/checkbox/Checkbox.vue.d.ts +30 -0
- package/dist/types/components/checkbox/Checkbox.vue.d.ts.map +1 -0
- package/dist/types/components/checkbox/checkbox.variants.d.ts +74 -0
- package/dist/types/components/checkbox/checkbox.variants.d.ts.map +1 -0
- package/dist/types/components/checkbox-group/CheckboxGroup.vue.d.ts +34 -0
- package/dist/types/components/checkbox-group/CheckboxGroup.vue.d.ts.map +1 -0
- package/dist/types/components/checkbox-group/checkbox-group.variants.d.ts +19 -0
- package/dist/types/components/checkbox-group/checkbox-group.variants.d.ts.map +1 -0
- package/dist/types/components/chip/Chip.vue.d.ts +40 -0
- package/dist/types/components/chip/Chip.vue.d.ts.map +1 -0
- package/dist/types/components/chip/IconSlot.vue.d.ts +20 -0
- package/dist/types/components/chip/IconSlot.vue.d.ts.map +1 -0
- package/dist/types/components/chip/chip.variants.d.ts +102 -0
- package/dist/types/components/chip/chip.variants.d.ts.map +1 -0
- package/dist/types/components/chip/composables/useChipRoot.d.ts +28 -0
- package/dist/types/components/chip/composables/useChipRoot.d.ts.map +1 -0
- package/dist/types/components/close-button/CloseButton.vue.d.ts +15 -0
- package/dist/types/components/close-button/CloseButton.vue.d.ts.map +1 -0
- package/dist/types/components/code/Code.vue.d.ts +17 -0
- package/dist/types/components/code/Code.vue.d.ts.map +1 -0
- package/dist/types/components/code-block/CodeBlock.vue.d.ts +14 -0
- package/dist/types/components/code-block/CodeBlock.vue.d.ts.map +1 -0
- package/dist/types/components/code-block/highlighter.d.ts +4 -0
- package/dist/types/components/code-block/highlighter.d.ts.map +1 -0
- package/dist/types/components/collapsible/Collapsible.vue.d.ts +24 -0
- package/dist/types/components/collapsible/Collapsible.vue.d.ts.map +1 -0
- package/dist/types/components/collapsible/CollapsibleContent.vue.d.ts +17 -0
- package/dist/types/components/collapsible/CollapsibleContent.vue.d.ts.map +1 -0
- package/dist/types/components/collapsible/CollapsibleTrigger.vue.d.ts +21 -0
- package/dist/types/components/collapsible/CollapsibleTrigger.vue.d.ts.map +1 -0
- package/dist/types/components/combobox/Combobox.vue.d.ts +44 -0
- package/dist/types/components/combobox/Combobox.vue.d.ts.map +1 -0
- package/dist/types/components/combobox/ComboboxList.vue.d.ts +20 -0
- package/dist/types/components/combobox/ComboboxList.vue.d.ts.map +1 -0
- package/dist/types/components/combobox/combobox.variants.d.ts +3 -0
- package/dist/types/components/combobox/combobox.variants.d.ts.map +1 -0
- package/dist/types/components/command-palette/CommandPalette.vue.d.ts +37 -0
- package/dist/types/components/command-palette/CommandPalette.vue.d.ts.map +1 -0
- package/dist/types/components/command-palette/CommandPaletteItem.vue.d.ts +12 -0
- package/dist/types/components/command-palette/CommandPaletteItem.vue.d.ts.map +1 -0
- package/dist/types/components/command-palette/CommandPalettePanel.vue.d.ts +34 -0
- package/dist/types/components/command-palette/CommandPalettePanel.vue.d.ts.map +1 -0
- package/dist/types/components/command-palette/command-palette.variants.d.ts +22 -0
- package/dist/types/components/command-palette/command-palette.variants.d.ts.map +1 -0
- package/dist/types/components/command-palette/composables/useHotkey.d.ts +3 -0
- package/dist/types/components/command-palette/composables/useHotkey.d.ts.map +1 -0
- package/dist/types/components/command-palette/types.d.ts +18 -0
- package/dist/types/components/command-palette/types.d.ts.map +1 -0
- package/dist/types/components/command-palette/utils/hotkey.d.ts +9 -0
- package/dist/types/components/command-palette/utils/hotkey.d.ts.map +1 -0
- package/dist/types/components/command-palette/utils/match.d.ts +13 -0
- package/dist/types/components/command-palette/utils/match.d.ts.map +1 -0
- package/dist/types/components/container/Container.vue.d.ts +22 -0
- package/dist/types/components/container/Container.vue.d.ts.map +1 -0
- package/dist/types/components/container/container.variants.d.ts +25 -0
- package/dist/types/components/container/container.variants.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenu.vue.d.ts +29 -0
- package/dist/types/components/context-menu/ContextMenu.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuCheckboxItem.vue.d.ts +29 -0
- package/dist/types/components/context-menu/ContextMenuCheckboxItem.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuGroup.vue.d.ts +17 -0
- package/dist/types/components/context-menu/ContextMenuGroup.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuItem.vue.d.ts +29 -0
- package/dist/types/components/context-menu/ContextMenuItem.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuLabel.vue.d.ts +17 -0
- package/dist/types/components/context-menu/ContextMenuLabel.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuRadioGroup.vue.d.ts +21 -0
- package/dist/types/components/context-menu/ContextMenuRadioGroup.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuRadioItem.vue.d.ts +20 -0
- package/dist/types/components/context-menu/ContextMenuRadioItem.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuSeparator.vue.d.ts +7 -0
- package/dist/types/components/context-menu/ContextMenuSeparator.vue.d.ts.map +1 -0
- package/dist/types/components/context-menu/ContextMenuSub.vue.d.ts +32 -0
- package/dist/types/components/context-menu/ContextMenuSub.vue.d.ts.map +1 -0
- package/dist/types/components/copy-button/CopyButton.vue.d.ts +21 -0
- package/dist/types/components/copy-button/CopyButton.vue.d.ts.map +1 -0
- package/dist/types/components/copy-button/composables/useCopy.d.ts +6 -0
- package/dist/types/components/copy-button/composables/useCopy.d.ts.map +1 -0
- package/dist/types/components/date-field/DateField.vue.d.ts +50 -0
- package/dist/types/components/date-field/DateField.vue.d.ts.map +1 -0
- package/dist/types/components/date-field/composables/useSegmentFocus.d.ts +6 -0
- package/dist/types/components/date-field/composables/useSegmentFocus.d.ts.map +1 -0
- package/dist/types/components/date-field/date-field.variants.d.ts +42 -0
- package/dist/types/components/date-field/date-field.variants.d.ts.map +1 -0
- package/dist/types/components/date-picker/DatePicker.vue.d.ts +48 -0
- package/dist/types/components/date-picker/DatePicker.vue.d.ts.map +1 -0
- package/dist/types/components/date-picker/date-picker.variants.d.ts +2 -0
- package/dist/types/components/date-picker/date-picker.variants.d.ts.map +1 -0
- package/dist/types/components/date-range-field/DateRangeField.vue.d.ts +50 -0
- package/dist/types/components/date-range-field/DateRangeField.vue.d.ts.map +1 -0
- package/dist/types/components/date-range-field/date-range-field.variants.d.ts +2 -0
- package/dist/types/components/date-range-field/date-range-field.variants.d.ts.map +1 -0
- package/dist/types/components/date-range-field/utils/validity.d.ts +12 -0
- package/dist/types/components/date-range-field/utils/validity.d.ts.map +1 -0
- package/dist/types/components/date-range-picker/DateRangePicker.vue.d.ts +50 -0
- package/dist/types/components/date-range-picker/DateRangePicker.vue.d.ts.map +1 -0
- package/dist/types/components/date-time-picker/DateTimePicker.vue.d.ts +53 -0
- package/dist/types/components/date-time-picker/DateTimePicker.vue.d.ts.map +1 -0
- package/dist/types/components/date-time-picker/date-time-picker.variants.d.ts +2 -0
- package/dist/types/components/date-time-picker/date-time-picker.variants.d.ts.map +1 -0
- package/dist/types/components/description-list/DescriptionDetails.vue.d.ts +17 -0
- package/dist/types/components/description-list/DescriptionDetails.vue.d.ts.map +1 -0
- package/dist/types/components/description-list/DescriptionList.vue.d.ts +17 -0
- package/dist/types/components/description-list/DescriptionList.vue.d.ts.map +1 -0
- package/dist/types/components/description-list/DescriptionTerm.vue.d.ts +17 -0
- package/dist/types/components/description-list/DescriptionTerm.vue.d.ts.map +1 -0
- package/dist/types/components/dialog/Dialog.vue.d.ts +42 -0
- package/dist/types/components/dialog/Dialog.vue.d.ts.map +1 -0
- package/dist/types/components/dialog/dialog.variants.d.ts +56 -0
- package/dist/types/components/dialog/dialog.variants.d.ts.map +1 -0
- package/dist/types/components/disclosure-icon/DisclosureIcon.vue.d.ts +23 -0
- package/dist/types/components/disclosure-icon/DisclosureIcon.vue.d.ts.map +1 -0
- package/dist/types/components/disclosure-icon/disclosure-icon.variants.d.ts +34 -0
- package/dist/types/components/disclosure-icon/disclosure-icon.variants.d.ts.map +1 -0
- package/dist/types/components/divider/Divider.vue.d.ts +22 -0
- package/dist/types/components/divider/Divider.vue.d.ts.map +1 -0
- package/dist/types/components/drawer/Drawer.vue.d.ts +43 -0
- package/dist/types/components/drawer/Drawer.vue.d.ts.map +1 -0
- package/dist/types/components/drawer/drawer.variants.d.ts +34 -0
- package/dist/types/components/drawer/drawer.variants.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenu.vue.d.ts +35 -0
- package/dist/types/components/dropdown-menu/DropdownMenu.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuCheckboxItem.vue.d.ts +29 -0
- package/dist/types/components/dropdown-menu/DropdownMenuCheckboxItem.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuGroup.vue.d.ts +17 -0
- package/dist/types/components/dropdown-menu/DropdownMenuGroup.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuItem.vue.d.ts +29 -0
- package/dist/types/components/dropdown-menu/DropdownMenuItem.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuLabel.vue.d.ts +17 -0
- package/dist/types/components/dropdown-menu/DropdownMenuLabel.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuRadioGroup.vue.d.ts +21 -0
- package/dist/types/components/dropdown-menu/DropdownMenuRadioGroup.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuRadioItem.vue.d.ts +20 -0
- package/dist/types/components/dropdown-menu/DropdownMenuRadioItem.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuSeparator.vue.d.ts +7 -0
- package/dist/types/components/dropdown-menu/DropdownMenuSeparator.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/DropdownMenuSub.vue.d.ts +32 -0
- package/dist/types/components/dropdown-menu/DropdownMenuSub.vue.d.ts.map +1 -0
- package/dist/types/components/dropdown-menu/dropdown-menu.variants.d.ts +19 -0
- package/dist/types/components/dropdown-menu/dropdown-menu.variants.d.ts.map +1 -0
- package/dist/types/components/empty/Empty.vue.d.ts +29 -0
- package/dist/types/components/empty/Empty.vue.d.ts.map +1 -0
- package/dist/types/components/empty/empty.variants.d.ts +81 -0
- package/dist/types/components/empty/empty.variants.d.ts.map +1 -0
- package/dist/types/components/file-upload/FileUpload.vue.d.ts +49 -0
- package/dist/types/components/file-upload/FileUpload.vue.d.ts.map +1 -0
- package/dist/types/components/file-upload/composables/useFileDrop.d.ts +10 -0
- package/dist/types/components/file-upload/composables/useFileDrop.d.ts.map +1 -0
- package/dist/types/components/file-upload/composables/useObjectUrls.d.ts +5 -0
- package/dist/types/components/file-upload/composables/useObjectUrls.d.ts.map +1 -0
- package/dist/types/components/file-upload/file-upload.variants.d.ts +9 -0
- package/dist/types/components/file-upload/file-upload.variants.d.ts.map +1 -0
- package/dist/types/components/file-upload/utils/select.d.ts +17 -0
- package/dist/types/components/file-upload/utils/select.d.ts.map +1 -0
- package/dist/types/components/file-upload/utils/size.d.ts +2 -0
- package/dist/types/components/file-upload/utils/size.d.ts.map +1 -0
- package/dist/types/components/flex/Flex.vue.d.ts +26 -0
- package/dist/types/components/flex/Flex.vue.d.ts.map +1 -0
- package/dist/types/components/flex/flex.variants.d.ts +106 -0
- package/dist/types/components/flex/flex.variants.d.ts.map +1 -0
- package/dist/types/components/form/Form.vue.d.ts +39 -0
- package/dist/types/components/form/Form.vue.d.ts.map +1 -0
- package/dist/types/components/form/composables/useForm.d.ts +22 -0
- package/dist/types/components/form/composables/useForm.d.ts.map +1 -0
- package/dist/types/components/form/context.d.ts +10 -0
- package/dist/types/components/form/context.d.ts.map +1 -0
- package/dist/types/components/form/form.variants.d.ts +2 -0
- package/dist/types/components/form/form.variants.d.ts.map +1 -0
- package/dist/types/components/form/standard-schema.d.ts +23 -0
- package/dist/types/components/form/standard-schema.d.ts.map +1 -0
- package/dist/types/components/form/utils/errors.d.ts +7 -0
- package/dist/types/components/form/utils/errors.d.ts.map +1 -0
- package/dist/types/components/form/utils/focus.d.ts +2 -0
- package/dist/types/components/form/utils/focus.d.ts.map +1 -0
- package/dist/types/components/form/utils/values.d.ts +3 -0
- package/dist/types/components/form/utils/values.d.ts.map +1 -0
- package/dist/types/components/form-field/FormField.vue.d.ts +27 -0
- package/dist/types/components/form-field/FormField.vue.d.ts.map +1 -0
- package/dist/types/components/form-field/context.d.ts +27 -0
- package/dist/types/components/form-field/context.d.ts.map +1 -0
- package/dist/types/components/form-field/form-field.variants.d.ts +18 -0
- package/dist/types/components/form-field/form-field.variants.d.ts.map +1 -0
- package/dist/types/components/form-layout/FormLayout.vue.d.ts +28 -0
- package/dist/types/components/form-layout/FormLayout.vue.d.ts.map +1 -0
- package/dist/types/components/form-layout/form-layout.variants.d.ts +37 -0
- package/dist/types/components/form-layout/form-layout.variants.d.ts.map +1 -0
- package/dist/types/components/grid/Grid.vue.d.ts +23 -0
- package/dist/types/components/grid/Grid.vue.d.ts.map +1 -0
- package/dist/types/components/grid/grid.variants.d.ts +73 -0
- package/dist/types/components/grid/grid.variants.d.ts.map +1 -0
- package/dist/types/components/heading/Heading.vue.d.ts +24 -0
- package/dist/types/components/heading/Heading.vue.d.ts.map +1 -0
- package/dist/types/components/heading/heading.variants.d.ts +58 -0
- package/dist/types/components/heading/heading.variants.d.ts.map +1 -0
- package/dist/types/components/highlight/Highlight.vue.d.ts +12 -0
- package/dist/types/components/highlight/Highlight.vue.d.ts.map +1 -0
- package/dist/types/components/hover-card/HoverCard.vue.d.ts +40 -0
- package/dist/types/components/hover-card/HoverCard.vue.d.ts.map +1 -0
- package/dist/types/components/icon-button/IconButton.vue.d.ts +36 -0
- package/dist/types/components/icon-button/IconButton.vue.d.ts.map +1 -0
- package/dist/types/components/image/Image.vue.d.ts +54 -0
- package/dist/types/components/image/Image.vue.d.ts.map +1 -0
- package/dist/types/components/image/ImageGroup.vue.d.ts +17 -0
- package/dist/types/components/image/ImageGroup.vue.d.ts.map +1 -0
- package/dist/types/components/image/composables/useImage.d.ts +24 -0
- package/dist/types/components/image/composables/useImage.d.ts.map +1 -0
- package/dist/types/components/image/context.d.ts +9 -0
- package/dist/types/components/image/context.d.ts.map +1 -0
- package/dist/types/components/image/image.variants.d.ts +28 -0
- package/dist/types/components/image/image.variants.d.ts.map +1 -0
- package/dist/types/components/image/resolver.d.ts +5 -0
- package/dist/types/components/image/resolver.d.ts.map +1 -0
- package/dist/types/components/indicator/Indicator.vue.d.ts +15 -0
- package/dist/types/components/indicator/Indicator.vue.d.ts.map +1 -0
- package/dist/types/components/indicator/indicator.variants.d.ts +46 -0
- package/dist/types/components/indicator/indicator.variants.d.ts.map +1 -0
- package/dist/types/components/inline/Inline.vue.d.ts +26 -0
- package/dist/types/components/inline/Inline.vue.d.ts.map +1 -0
- package/dist/types/components/inline/inline.variants.d.ts +88 -0
- package/dist/types/components/inline/inline.variants.d.ts.map +1 -0
- package/dist/types/components/input/Input.vue.d.ts +39 -0
- package/dist/types/components/input/Input.vue.d.ts.map +1 -0
- package/dist/types/components/input/InputAction.vue.d.ts +19 -0
- package/dist/types/components/input/InputAction.vue.d.ts.map +1 -0
- package/dist/types/components/input/InputBase.vue.d.ts +42 -0
- package/dist/types/components/input/InputBase.vue.d.ts.map +1 -0
- package/dist/types/components/input/input.variants.d.ts +61 -0
- package/dist/types/components/input/input.variants.d.ts.map +1 -0
- package/dist/types/components/input-group/InputGroup.vue.d.ts +22 -0
- package/dist/types/components/input-group/InputGroup.vue.d.ts.map +1 -0
- package/dist/types/components/input-group/InputGroupAddon.vue.d.ts +17 -0
- package/dist/types/components/input-group/InputGroupAddon.vue.d.ts.map +1 -0
- package/dist/types/components/input-group/InputGroupScope.vue.d.ts +20 -0
- package/dist/types/components/input-group/InputGroupScope.vue.d.ts.map +1 -0
- package/dist/types/components/input-group/context.d.ts +10 -0
- package/dist/types/components/input-group/context.d.ts.map +1 -0
- package/dist/types/components/input-group/input-group.variants.d.ts +3 -0
- package/dist/types/components/input-group/input-group.variants.d.ts.map +1 -0
- package/dist/types/components/kbd/Kbd.vue.d.ts +17 -0
- package/dist/types/components/kbd/Kbd.vue.d.ts.map +1 -0
- package/dist/types/components/lightbox/Lightbox.vue.d.ts +21 -0
- package/dist/types/components/lightbox/Lightbox.vue.d.ts.map +1 -0
- package/dist/types/components/lightbox/LightboxChrome.vue.d.ts +36 -0
- package/dist/types/components/lightbox/LightboxChrome.vue.d.ts.map +1 -0
- package/dist/types/components/lightbox/LightboxStrip.vue.d.ts +29 -0
- package/dist/types/components/lightbox/LightboxStrip.vue.d.ts.map +1 -0
- package/dist/types/components/lightbox/LightboxThumbs.vue.d.ts +13 -0
- package/dist/types/components/lightbox/LightboxThumbs.vue.d.ts.map +1 -0
- package/dist/types/components/lightbox/LightboxToolbar.vue.d.ts +24 -0
- package/dist/types/components/lightbox/LightboxToolbar.vue.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxFrames.d.ts +12 -0
- package/dist/types/components/lightbox/composables/useLightboxFrames.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxGesture.d.ts +27 -0
- package/dist/types/components/lightbox/composables/useLightboxGesture.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxHint.d.ts +14 -0
- package/dist/types/components/lightbox/composables/useLightboxHint.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxLarge.d.ts +8 -0
- package/dist/types/components/lightbox/composables/useLightboxLarge.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxMotion.d.ts +25 -0
- package/dist/types/components/lightbox/composables/useLightboxMotion.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxPaging.d.ts +18 -0
- package/dist/types/components/lightbox/composables/useLightboxPaging.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxPhase.d.ts +20 -0
- package/dist/types/components/lightbox/composables/useLightboxPhase.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxPose.d.ts +7 -0
- package/dist/types/components/lightbox/composables/useLightboxPose.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxRotation.d.ts +18 -0
- package/dist/types/components/lightbox/composables/useLightboxRotation.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxSlides.d.ts +9 -0
- package/dist/types/components/lightbox/composables/useLightboxSlides.d.ts.map +1 -0
- package/dist/types/components/lightbox/composables/useLightboxZoom.d.ts +28 -0
- package/dist/types/components/lightbox/composables/useLightboxZoom.d.ts.map +1 -0
- package/dist/types/components/lightbox/types.d.ts +10 -0
- package/dist/types/components/lightbox/types.d.ts.map +1 -0
- package/dist/types/components/lightbox/utils/download.d.ts +3 -0
- package/dist/types/components/lightbox/utils/download.d.ts.map +1 -0
- package/dist/types/components/lightbox/utils/gesture.d.ts +26 -0
- package/dist/types/components/lightbox/utils/gesture.d.ts.map +1 -0
- package/dist/types/components/lightbox/utils/paging.d.ts +9 -0
- package/dist/types/components/lightbox/utils/paging.d.ts.map +1 -0
- package/dist/types/components/lightbox/utils/pose.d.ts +38 -0
- package/dist/types/components/lightbox/utils/pose.d.ts.map +1 -0
- package/dist/types/components/lightbox/utils/zoom.d.ts +36 -0
- package/dist/types/components/lightbox/utils/zoom.d.ts.map +1 -0
- package/dist/types/components/link/Link.vue.d.ts +24 -0
- package/dist/types/components/link/Link.vue.d.ts.map +1 -0
- package/dist/types/components/link/link.variants.d.ts +19 -0
- package/dist/types/components/link/link.variants.d.ts.map +1 -0
- package/dist/types/components/list/List.vue.d.ts +18 -0
- package/dist/types/components/list/List.vue.d.ts.map +1 -0
- package/dist/types/components/list/ListItem.vue.d.ts +17 -0
- package/dist/types/components/list/ListItem.vue.d.ts.map +1 -0
- package/dist/types/components/listbox/Listbox.vue.d.ts +35 -0
- package/dist/types/components/listbox/Listbox.vue.d.ts.map +1 -0
- package/dist/types/components/listbox/listbox.variants.d.ts +20 -0
- package/dist/types/components/listbox/listbox.variants.d.ts.map +1 -0
- package/dist/types/components/loading-overlay/LoadingOverlay.vue.d.ts +30 -0
- package/dist/types/components/loading-overlay/LoadingOverlay.vue.d.ts.map +1 -0
- package/dist/types/components/loading-overlay/composables/useDelayedVisible.d.ts +7 -0
- package/dist/types/components/loading-overlay/composables/useDelayedVisible.d.ts.map +1 -0
- package/dist/types/components/loading-overlay/loading-overlay.variants.d.ts +35 -0
- package/dist/types/components/loading-overlay/loading-overlay.variants.d.ts.map +1 -0
- package/dist/types/components/mark/Mark.vue.d.ts +17 -0
- package/dist/types/components/mark/Mark.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/Menubar.vue.d.ts +29 -0
- package/dist/types/components/menubar/Menubar.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarCheckboxItem.vue.d.ts +29 -0
- package/dist/types/components/menubar/MenubarCheckboxItem.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarGroup.vue.d.ts +17 -0
- package/dist/types/components/menubar/MenubarGroup.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarItem.vue.d.ts +29 -0
- package/dist/types/components/menubar/MenubarItem.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarLabel.vue.d.ts +17 -0
- package/dist/types/components/menubar/MenubarLabel.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarMenu.vue.d.ts +22 -0
- package/dist/types/components/menubar/MenubarMenu.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarRadioGroup.vue.d.ts +21 -0
- package/dist/types/components/menubar/MenubarRadioGroup.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarRadioItem.vue.d.ts +20 -0
- package/dist/types/components/menubar/MenubarRadioItem.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarSeparator.vue.d.ts +7 -0
- package/dist/types/components/menubar/MenubarSeparator.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/MenubarSub.vue.d.ts +32 -0
- package/dist/types/components/menubar/MenubarSub.vue.d.ts.map +1 -0
- package/dist/types/components/menubar/menubar.variants.d.ts +4 -0
- package/dist/types/components/menubar/menubar.variants.d.ts.map +1 -0
- package/dist/types/components/meter-group/MeterGroup.vue.d.ts +19 -0
- package/dist/types/components/meter-group/MeterGroup.vue.d.ts.map +1 -0
- package/dist/types/components/meter-group/meter-group.variants.d.ts +34 -0
- package/dist/types/components/meter-group/meter-group.variants.d.ts.map +1 -0
- package/dist/types/components/meter-group/types.d.ts +8 -0
- package/dist/types/components/meter-group/types.d.ts.map +1 -0
- package/dist/types/components/meter-group/utils/tones.d.ts +4 -0
- package/dist/types/components/meter-group/utils/tones.d.ts.map +1 -0
- package/dist/types/components/multi-combobox/MultiCombobox.vue.d.ts +48 -0
- package/dist/types/components/multi-combobox/MultiCombobox.vue.d.ts.map +1 -0
- package/dist/types/components/multi-combobox/multi-combobox.variants.d.ts +15 -0
- package/dist/types/components/multi-combobox/multi-combobox.variants.d.ts.map +1 -0
- package/dist/types/components/multi-select/MultiSelect.vue.d.ts +47 -0
- package/dist/types/components/multi-select/MultiSelect.vue.d.ts.map +1 -0
- package/dist/types/components/multi-select/multi-select.variants.d.ts +3 -0
- package/dist/types/components/multi-select/multi-select.variants.d.ts.map +1 -0
- package/dist/types/components/nav-link/NavLink.vue.d.ts +27 -0
- package/dist/types/components/nav-link/NavLink.vue.d.ts.map +1 -0
- package/dist/types/components/nav-link/nav-link.variants.d.ts +35 -0
- package/dist/types/components/nav-link/nav-link.variants.d.ts.map +1 -0
- package/dist/types/components/number-format/NumberFormat.vue.d.ts +13 -0
- package/dist/types/components/number-format/NumberFormat.vue.d.ts.map +1 -0
- package/dist/types/components/number-input/NumberInput.vue.d.ts +30 -0
- package/dist/types/components/number-input/NumberInput.vue.d.ts.map +1 -0
- package/dist/types/components/number-input/number-input.variants.d.ts +33 -0
- package/dist/types/components/number-input/number-input.variants.d.ts.map +1 -0
- package/dist/types/components/page/Page.vue.d.ts +21 -0
- package/dist/types/components/page/Page.vue.d.ts.map +1 -0
- package/dist/types/components/page/PageAside.vue.d.ts +18 -0
- package/dist/types/components/page/PageAside.vue.d.ts.map +1 -0
- package/dist/types/components/page/PageBody.vue.d.ts +17 -0
- package/dist/types/components/page/PageBody.vue.d.ts.map +1 -0
- package/dist/types/components/page/PageHeader.vue.d.ts +22 -0
- package/dist/types/components/page/PageHeader.vue.d.ts.map +1 -0
- package/dist/types/components/panel/Panel.vue.d.ts +33 -0
- package/dist/types/components/panel/Panel.vue.d.ts.map +1 -0
- package/dist/types/components/panel/panel.variants.d.ts +20 -0
- package/dist/types/components/panel/panel.variants.d.ts.map +1 -0
- package/dist/types/components/password-input/PasswordInput.vue.d.ts +23 -0
- package/dist/types/components/password-input/PasswordInput.vue.d.ts.map +1 -0
- package/dist/types/components/pin-input/PinInput.vue.d.ts +32 -0
- package/dist/types/components/pin-input/PinInput.vue.d.ts.map +1 -0
- package/dist/types/components/pin-input/pin-input.variants.d.ts +35 -0
- package/dist/types/components/pin-input/pin-input.variants.d.ts.map +1 -0
- package/dist/types/components/popconfirm/Popconfirm.vue.d.ts +43 -0
- package/dist/types/components/popconfirm/Popconfirm.vue.d.ts.map +1 -0
- package/dist/types/components/popover/Popover.vue.d.ts +36 -0
- package/dist/types/components/popover/Popover.vue.d.ts.map +1 -0
- package/dist/types/components/prev-next/PrevNext.vue.d.ts +18 -0
- package/dist/types/components/prev-next/PrevNext.vue.d.ts.map +1 -0
- package/dist/types/components/prev-next/PrevNextLink.vue.d.ts +23 -0
- package/dist/types/components/prev-next/PrevNextLink.vue.d.ts.map +1 -0
- package/dist/types/components/prev-next/prev-next.variants.d.ts +35 -0
- package/dist/types/components/prev-next/prev-next.variants.d.ts.map +1 -0
- package/dist/types/components/progress/Progress.vue.d.ts +20 -0
- package/dist/types/components/progress/Progress.vue.d.ts.map +1 -0
- package/dist/types/components/progress/composables/useProgressValue.d.ts +16 -0
- package/dist/types/components/progress/composables/useProgressValue.d.ts.map +1 -0
- package/dist/types/components/progress/progress.variants.d.ts +53 -0
- package/dist/types/components/progress/progress.variants.d.ts.map +1 -0
- package/dist/types/components/prose/Prose.vue.d.ts +20 -0
- package/dist/types/components/prose/Prose.vue.d.ts.map +1 -0
- package/dist/types/components/radio-group/RadioGroup.vue.d.ts +34 -0
- package/dist/types/components/radio-group/RadioGroup.vue.d.ts.map +1 -0
- package/dist/types/components/radio-group/radio-group.variants.d.ts +2 -0
- package/dist/types/components/radio-group/radio-group.variants.d.ts.map +1 -0
- package/dist/types/components/range-calendar/RangeCalendar.vue.d.ts +35 -0
- package/dist/types/components/range-calendar/RangeCalendar.vue.d.ts.map +1 -0
- package/dist/types/components/range-calendar/composables/useRangeAnchor.d.ts +7 -0
- package/dist/types/components/range-calendar/composables/useRangeAnchor.d.ts.map +1 -0
- package/dist/types/components/range-calendar/range-calendar.variants.d.ts +3 -0
- package/dist/types/components/range-calendar/range-calendar.variants.d.ts.map +1 -0
- package/dist/types/components/range-calendar/utils/limit.d.ts +3 -0
- package/dist/types/components/range-calendar/utils/limit.d.ts.map +1 -0
- package/dist/types/components/range-slider/RangeSlider.vue.d.ts +36 -0
- package/dist/types/components/range-slider/RangeSlider.vue.d.ts.map +1 -0
- package/dist/types/components/rating/Rating.vue.d.ts +27 -0
- package/dist/types/components/rating/Rating.vue.d.ts.map +1 -0
- package/dist/types/components/rating/rating.variants.d.ts +41 -0
- package/dist/types/components/rating/rating.variants.d.ts.map +1 -0
- package/dist/types/components/rating/utils/fill.d.ts +2 -0
- package/dist/types/components/rating/utils/fill.d.ts.map +1 -0
- package/dist/types/components/result/Result.vue.d.ts +29 -0
- package/dist/types/components/result/Result.vue.d.ts.map +1 -0
- package/dist/types/components/result/result.variants.d.ts +40 -0
- package/dist/types/components/result/result.variants.d.ts.map +1 -0
- package/dist/types/components/ring-progress/RingProgress.vue.d.ts +30 -0
- package/dist/types/components/ring-progress/RingProgress.vue.d.ts.map +1 -0
- package/dist/types/components/ring-progress/ring-progress.variants.d.ts +55 -0
- package/dist/types/components/ring-progress/ring-progress.variants.d.ts.map +1 -0
- package/dist/types/components/ripple/Ripple.vue.d.ts +7 -0
- package/dist/types/components/ripple/Ripple.vue.d.ts.map +1 -0
- package/dist/types/components/ripple/useRipple.d.ts +5 -0
- package/dist/types/components/ripple/useRipple.d.ts.map +1 -0
- package/dist/types/components/scroll-area/ScrollArea.vue.d.ts +34 -0
- package/dist/types/components/scroll-area/ScrollArea.vue.d.ts.map +1 -0
- package/dist/types/components/scroll-area/composables/useEdgeShadow.d.ts +12 -0
- package/dist/types/components/scroll-area/composables/useEdgeShadow.d.ts.map +1 -0
- package/dist/types/components/scroll-area/composables/useLayerLock.d.ts +3 -0
- package/dist/types/components/scroll-area/composables/useLayerLock.d.ts.map +1 -0
- package/dist/types/components/scroll-area/composables/useOverlayScrollbars.d.ts +10 -0
- package/dist/types/components/scroll-area/composables/useOverlayScrollbars.d.ts.map +1 -0
- package/dist/types/components/scroll-area/composables/useWheelRedirect.d.ts +3 -0
- package/dist/types/components/scroll-area/composables/useWheelRedirect.d.ts.map +1 -0
- package/dist/types/components/scroll-area/scroll-restore.d.ts +35 -0
- package/dist/types/components/scroll-area/scroll-restore.d.ts.map +1 -0
- package/dist/types/components/search-input/SearchInput.vue.d.ts +27 -0
- package/dist/types/components/search-input/SearchInput.vue.d.ts.map +1 -0
- package/dist/types/components/section/Section.vue.d.ts +19 -0
- package/dist/types/components/section/Section.vue.d.ts.map +1 -0
- package/dist/types/components/segmented-control/SegmentedControl.vue.d.ts +36 -0
- package/dist/types/components/segmented-control/SegmentedControl.vue.d.ts.map +1 -0
- package/dist/types/components/segmented-control/segmented-control.variants.d.ts +61 -0
- package/dist/types/components/segmented-control/segmented-control.variants.d.ts.map +1 -0
- package/dist/types/components/select/Select.vue.d.ts +43 -0
- package/dist/types/components/select/Select.vue.d.ts.map +1 -0
- package/dist/types/components/select/SelectList.vue.d.ts +20 -0
- package/dist/types/components/select/SelectList.vue.d.ts.map +1 -0
- package/dist/types/components/select/select.variants.d.ts +8 -0
- package/dist/types/components/select/select.variants.d.ts.map +1 -0
- package/dist/types/components/select/types.d.ts +14 -0
- package/dist/types/components/select/types.d.ts.map +1 -0
- package/dist/types/components/sheet/Sheet.vue.d.ts +41 -0
- package/dist/types/components/sheet/Sheet.vue.d.ts.map +1 -0
- package/dist/types/components/sheet/composables/useDragToDismiss.d.ts +13 -0
- package/dist/types/components/sheet/composables/useDragToDismiss.d.ts.map +1 -0
- package/dist/types/components/sheet/sheet.variants.d.ts +4 -0
- package/dist/types/components/sheet/sheet.variants.d.ts.map +1 -0
- package/dist/types/components/sidebar/DrawerScope.d.ts +5 -0
- package/dist/types/components/sidebar/DrawerScope.d.ts.map +1 -0
- package/dist/types/components/sidebar/Sidebar.vue.d.ts +26 -0
- package/dist/types/components/sidebar/Sidebar.vue.d.ts.map +1 -0
- package/dist/types/components/sidebar/SidebarGroup.vue.d.ts +21 -0
- package/dist/types/components/sidebar/SidebarGroup.vue.d.ts.map +1 -0
- package/dist/types/components/sidebar/SidebarTrigger.vue.d.ts +7 -0
- package/dist/types/components/sidebar/SidebarTrigger.vue.d.ts.map +1 -0
- package/dist/types/components/sidebar/context.d.ts +11 -0
- package/dist/types/components/sidebar/context.d.ts.map +1 -0
- package/dist/types/components/simple-grid/SimpleGrid.vue.d.ts +26 -0
- package/dist/types/components/simple-grid/SimpleGrid.vue.d.ts.map +1 -0
- package/dist/types/components/simple-grid/simple-grid.variants.d.ts +43 -0
- package/dist/types/components/simple-grid/simple-grid.variants.d.ts.map +1 -0
- package/dist/types/components/skeleton/Skeleton.vue.d.ts +24 -0
- package/dist/types/components/skeleton/Skeleton.vue.d.ts.map +1 -0
- package/dist/types/components/slider/Slider.vue.d.ts +34 -0
- package/dist/types/components/slider/Slider.vue.d.ts.map +1 -0
- package/dist/types/components/slider/SliderHandle.vue.d.ts +10 -0
- package/dist/types/components/slider/SliderHandle.vue.d.ts.map +1 -0
- package/dist/types/components/slider/SliderMarks.vue.d.ts +13 -0
- package/dist/types/components/slider/SliderMarks.vue.d.ts.map +1 -0
- package/dist/types/components/slider/composables/useSliderChrome.d.ts +16 -0
- package/dist/types/components/slider/composables/useSliderChrome.d.ts.map +1 -0
- package/dist/types/components/slider/slider.variants.d.ts +30 -0
- package/dist/types/components/slider/slider.variants.d.ts.map +1 -0
- package/dist/types/components/space/Space.vue.d.ts +9 -0
- package/dist/types/components/space/Space.vue.d.ts.map +1 -0
- package/dist/types/components/space/space.variants.d.ts +31 -0
- package/dist/types/components/space/space.variants.d.ts.map +1 -0
- package/dist/types/components/spinner/Spinner.vue.d.ts +11 -0
- package/dist/types/components/spinner/Spinner.vue.d.ts.map +1 -0
- package/dist/types/components/spinner/spinner.variants.d.ts +22 -0
- package/dist/types/components/spinner/spinner.variants.d.ts.map +1 -0
- package/dist/types/components/splitter/Splitter.vue.d.ts +21 -0
- package/dist/types/components/splitter/Splitter.vue.d.ts.map +1 -0
- package/dist/types/components/splitter/SplitterHandle.vue.d.ts +8 -0
- package/dist/types/components/splitter/SplitterHandle.vue.d.ts.map +1 -0
- package/dist/types/components/splitter/SplitterPanel.vue.d.ts +22 -0
- package/dist/types/components/splitter/SplitterPanel.vue.d.ts.map +1 -0
- package/dist/types/components/spoiler/Spoiler.vue.d.ts +29 -0
- package/dist/types/components/spoiler/Spoiler.vue.d.ts.map +1 -0
- package/dist/types/components/spoiler/SpoilerPainter.d.ts +35 -0
- package/dist/types/components/spoiler/SpoilerPainter.d.ts.map +1 -0
- package/dist/types/components/spoiler/composables/useReveal.d.ts +17 -0
- package/dist/types/components/spoiler/composables/useReveal.d.ts.map +1 -0
- package/dist/types/components/spoiler/composables/useSpoiler.d.ts +5 -0
- package/dist/types/components/spoiler/composables/useSpoiler.d.ts.map +1 -0
- package/dist/types/components/spoiler/utils/irisOrigin.d.ts +6 -0
- package/dist/types/components/spoiler/utils/irisOrigin.d.ts.map +1 -0
- package/dist/types/components/spoiler/worklet.d.ts +2 -0
- package/dist/types/components/spoiler/worklet.d.ts.map +1 -0
- package/dist/types/components/stack/Stack.vue.d.ts +24 -0
- package/dist/types/components/stack/Stack.vue.d.ts.map +1 -0
- package/dist/types/components/stack/stack.variants.d.ts +73 -0
- package/dist/types/components/stack/stack.variants.d.ts.map +1 -0
- package/dist/types/components/statistic/Statistic.vue.d.ts +37 -0
- package/dist/types/components/statistic/Statistic.vue.d.ts.map +1 -0
- package/dist/types/components/statistic/statistic.variants.d.ts +46 -0
- package/dist/types/components/statistic/statistic.variants.d.ts.map +1 -0
- package/dist/types/components/switch/Switch.vue.d.ts +30 -0
- package/dist/types/components/switch/Switch.vue.d.ts.map +1 -0
- package/dist/types/components/switch/switch.variants.d.ts +23 -0
- package/dist/types/components/switch/switch.variants.d.ts.map +1 -0
- package/dist/types/components/table/Table.vue.d.ts +26 -0
- package/dist/types/components/table/Table.vue.d.ts.map +1 -0
- package/dist/types/components/table/TableBody.vue.d.ts +17 -0
- package/dist/types/components/table/TableBody.vue.d.ts.map +1 -0
- package/dist/types/components/table/TableCell.vue.d.ts +22 -0
- package/dist/types/components/table/TableCell.vue.d.ts.map +1 -0
- package/dist/types/components/table/TableHead.vue.d.ts +24 -0
- package/dist/types/components/table/TableHead.vue.d.ts.map +1 -0
- package/dist/types/components/table/TableHeader.vue.d.ts +17 -0
- package/dist/types/components/table/TableHeader.vue.d.ts.map +1 -0
- package/dist/types/components/table/TableRow.vue.d.ts +17 -0
- package/dist/types/components/table/TableRow.vue.d.ts.map +1 -0
- package/dist/types/components/table/table.variants.d.ts +87 -0
- package/dist/types/components/table/table.variants.d.ts.map +1 -0
- package/dist/types/components/tabs/Tabs.vue.d.ts +33 -0
- package/dist/types/components/tabs/Tabs.vue.d.ts.map +1 -0
- package/dist/types/components/tabs/TabsContent.vue.d.ts +18 -0
- package/dist/types/components/tabs/TabsContent.vue.d.ts.map +1 -0
- package/dist/types/components/tabs/TabsList.vue.d.ts +18 -0
- package/dist/types/components/tabs/TabsList.vue.d.ts.map +1 -0
- package/dist/types/components/tabs/TabsTrigger.vue.d.ts +19 -0
- package/dist/types/components/tabs/TabsTrigger.vue.d.ts.map +1 -0
- package/dist/types/components/tabs/context.d.ts +10 -0
- package/dist/types/components/tabs/context.d.ts.map +1 -0
- package/dist/types/components/tabs/tabs.variants.d.ts +130 -0
- package/dist/types/components/tabs/tabs.variants.d.ts.map +1 -0
- package/dist/types/components/tag/Tag.vue.d.ts +25 -0
- package/dist/types/components/tag/Tag.vue.d.ts.map +1 -0
- package/dist/types/components/tag/tag.variants.d.ts +67 -0
- package/dist/types/components/tag/tag.variants.d.ts.map +1 -0
- package/dist/types/components/tags-input/TagsInput.vue.d.ts +38 -0
- package/dist/types/components/tags-input/TagsInput.vue.d.ts.map +1 -0
- package/dist/types/components/tags-input/TagsInputChip.vue.d.ts +14 -0
- package/dist/types/components/tags-input/TagsInputChip.vue.d.ts.map +1 -0
- package/dist/types/components/tags-input/tags-input.variants.d.ts +92 -0
- package/dist/types/components/tags-input/tags-input.variants.d.ts.map +1 -0
- package/dist/types/components/text/Text.vue.d.ts +25 -0
- package/dist/types/components/text/Text.vue.d.ts.map +1 -0
- package/dist/types/components/text/text.variants.d.ts +91 -0
- package/dist/types/components/text/text.variants.d.ts.map +1 -0
- package/dist/types/components/textarea/Textarea.vue.d.ts +28 -0
- package/dist/types/components/textarea/Textarea.vue.d.ts.map +1 -0
- package/dist/types/components/textarea/textarea.variants.d.ts +59 -0
- package/dist/types/components/textarea/textarea.variants.d.ts.map +1 -0
- package/dist/types/components/time/Time.vue.d.ts +11 -0
- package/dist/types/components/time/Time.vue.d.ts.map +1 -0
- package/dist/types/components/time/composables/useNow.d.ts +2 -0
- package/dist/types/components/time/composables/useNow.d.ts.map +1 -0
- package/dist/types/components/time/utils/relativeTime.d.ts +2 -0
- package/dist/types/components/time/utils/relativeTime.d.ts.map +1 -0
- package/dist/types/components/time-field/TimeField.vue.d.ts +51 -0
- package/dist/types/components/time-field/TimeField.vue.d.ts.map +1 -0
- package/dist/types/components/toast/Toaster.vue.d.ts +10 -0
- package/dist/types/components/toast/Toaster.vue.d.ts.map +1 -0
- package/dist/types/components/toast/composables/useToastExpand.d.ts +6 -0
- package/dist/types/components/toast/composables/useToastExpand.d.ts.map +1 -0
- package/dist/types/components/toast/composables/useToastLayout.d.ts +16 -0
- package/dist/types/components/toast/composables/useToastLayout.d.ts.map +1 -0
- package/dist/types/components/toast/store.d.ts +68 -0
- package/dist/types/components/toast/store.d.ts.map +1 -0
- package/dist/types/components/toggle/Toggle.vue.d.ts +42 -0
- package/dist/types/components/toggle/Toggle.vue.d.ts.map +1 -0
- package/dist/types/components/toggle/toggle.variants.d.ts +167 -0
- package/dist/types/components/toggle/toggle.variants.d.ts.map +1 -0
- package/dist/types/components/tooltip/Tooltip.vue.d.ts +31 -0
- package/dist/types/components/tooltip/Tooltip.vue.d.ts.map +1 -0
- package/dist/types/components/tooltip/TooltipProvider.vue.d.ts +21 -0
- package/dist/types/components/tooltip/TooltipProvider.vue.d.ts.map +1 -0
- package/dist/types/components/tree-select/TreeSelect.vue.d.ts +40 -0
- package/dist/types/components/tree-select/TreeSelect.vue.d.ts.map +1 -0
- package/dist/types/components/tree-select/tree-select.variants.d.ts +5 -0
- package/dist/types/components/tree-select/tree-select.variants.d.ts.map +1 -0
- package/dist/types/components/tree-select/types.d.ts +10 -0
- package/dist/types/components/tree-select/types.d.ts.map +1 -0
- package/dist/types/components/visually-hidden/VisuallyHidden.vue.d.ts +14 -0
- package/dist/types/components/visually-hidden/VisuallyHidden.vue.d.ts.map +1 -0
- package/dist/types/index.d.ts +223 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/lib/a11y.d.ts +3 -0
- package/dist/types/lib/a11y.d.ts.map +1 -0
- package/dist/types/lib/caret.d.ts +6 -0
- package/dist/types/lib/caret.d.ts.map +1 -0
- package/dist/types/lib/cn.d.ts +3 -0
- package/dist/types/lib/cn.d.ts.map +1 -0
- package/dist/types/lib/collapse.d.ts +14 -0
- package/dist/types/lib/collapse.d.ts.map +1 -0
- package/dist/types/lib/date.d.ts +28 -0
- package/dist/types/lib/date.d.ts.map +1 -0
- package/dist/types/lib/dev.d.ts +3 -0
- package/dist/types/lib/dev.d.ts.map +1 -0
- package/dist/types/lib/field-focus.d.ts +6 -0
- package/dist/types/lib/field-focus.d.ts.map +1 -0
- package/dist/types/lib/passthrough.d.ts +4 -0
- package/dist/types/lib/passthrough.d.ts.map +1 -0
- package/dist/types/lib/tv.d.ts +3 -0
- package/dist/types/lib/tv.d.ts.map +1 -0
- package/dist/types/lib/tw-merge.d.ts +16 -0
- package/dist/types/lib/tw-merge.d.ts.map +1 -0
- package/dist/types/locale/en-US.d.ts +3 -0
- package/dist/types/locale/en-US.d.ts.map +1 -0
- package/dist/types/locale/index.d.ts +8 -0
- package/dist/types/locale/index.d.ts.map +1 -0
- package/dist/types/locale/types.d.ts +154 -0
- package/dist/types/locale/types.d.ts.map +1 -0
- package/dist/types/locale/zh-CN.d.ts +3 -0
- package/dist/types/locale/zh-CN.d.ts.map +1 -0
- package/dist/types/motion.d.ts +53 -0
- package/dist/types/motion.d.ts.map +1 -0
- package/dist/types/singletons.d.ts +3 -0
- package/dist/types/singletons.d.ts.map +1 -0
- package/package.json +85 -0
- package/src/components/accordion/Accordion.vue +37 -0
- package/src/components/accordion/AccordionContent.vue +29 -0
- package/src/components/accordion/AccordionItem.vue +18 -0
- package/src/components/accordion/AccordionTrigger.vue +40 -0
- package/src/components/accordion/accordion.variants.ts +19 -0
- package/src/components/alert/Alert.vue +70 -0
- package/src/components/alert-dialog/AlertDialog.vue +117 -0
- package/src/components/anchor/Anchor.vue +76 -0
- package/src/components/anchor/composables/useScrollSpy.ts +69 -0
- package/src/components/app-shell/AppShell.vue +102 -0
- package/src/components/app-shell/composables/useDesktopQuery.ts +20 -0
- package/src/components/aspect-ratio/AspectRatio.vue +29 -0
- package/src/components/avatar/Avatar.vue +57 -0
- package/src/components/avatar/AvatarGroup.vue +40 -0
- package/src/components/avatar/avatar-group.variants.ts +15 -0
- package/src/components/avatar/avatar.variants.ts +18 -0
- package/src/components/avatar/context.ts +16 -0
- package/src/components/badge/Badge.vue +67 -0
- package/src/components/badge/badge.variants.ts +54 -0
- package/src/components/banner/Banner.vue +179 -0
- package/src/components/banner/banner.variants.ts +52 -0
- package/src/components/banner/composables/useAutoplay.ts +31 -0
- package/src/components/banner/icons.ts +7 -0
- package/src/components/banner/types.ts +9 -0
- package/src/components/banner/utils/direction.ts +10 -0
- package/src/components/blockquote/Blockquote.vue +14 -0
- package/src/components/breadcrumb/Breadcrumb.vue +21 -0
- package/src/components/breadcrumb/BreadcrumbItem.vue +38 -0
- package/src/components/breadcrumb/BreadcrumbSeparator.vue +16 -0
- package/src/components/button/Button.vue +132 -0
- package/src/components/button/IconSlot.vue +36 -0
- package/src/components/button/button.variants.ts +113 -0
- package/src/components/button-group/ButtonGroup.vue +37 -0
- package/src/components/button-group/button-group.variants.ts +51 -0
- package/src/components/calendar/Calendar.vue +159 -0
- package/src/components/calendar/CalendarHeader.vue +51 -0
- package/src/components/calendar/CalendarLevels.vue +174 -0
- package/src/components/calendar/calendar.variants.ts +83 -0
- package/src/components/calendar/composables/useCalendarLevels.ts +52 -0
- package/src/components/calendar/utils/format.ts +23 -0
- package/src/components/callout/Callout.vue +34 -0
- package/src/components/callout/callout.variants.ts +33 -0
- package/src/components/callout/icons.ts +10 -0
- package/src/components/card/Card.vue +27 -0
- package/src/components/card/card.variants.ts +16 -0
- package/src/components/center/Center.vue +23 -0
- package/src/components/checkbox/Checkbox.vue +83 -0
- package/src/components/checkbox/checkbox.variants.ts +70 -0
- package/src/components/checkbox-group/CheckboxGroup.vue +58 -0
- package/src/components/checkbox-group/checkbox-group.variants.ts +16 -0
- package/src/components/chip/Chip.vue +107 -0
- package/src/components/chip/IconSlot.vue +46 -0
- package/src/components/chip/chip.variants.ts +67 -0
- package/src/components/chip/composables/useChipRoot.ts +20 -0
- package/src/components/close-button/CloseButton.vue +41 -0
- package/src/components/code/Code.vue +11 -0
- package/src/components/code-block/CodeBlock.vue +63 -0
- package/src/components/code-block/highlighter.ts +98 -0
- package/src/components/collapsible/Collapsible.vue +25 -0
- package/src/components/collapsible/CollapsibleContent.vue +31 -0
- package/src/components/collapsible/CollapsibleTrigger.vue +37 -0
- package/src/components/combobox/Combobox.vue +145 -0
- package/src/components/combobox/ComboboxList.vue +98 -0
- package/src/components/combobox/combobox.variants.ts +12 -0
- package/src/components/command-palette/CommandPalette.vue +97 -0
- package/src/components/command-palette/CommandPaletteItem.vue +49 -0
- package/src/components/command-palette/CommandPalettePanel.vue +95 -0
- package/src/components/command-palette/command-palette.variants.ts +45 -0
- package/src/components/command-palette/composables/useHotkey.ts +17 -0
- package/src/components/command-palette/types.ts +23 -0
- package/src/components/command-palette/utils/hotkey.ts +27 -0
- package/src/components/command-palette/utils/match.ts +76 -0
- package/src/components/container/Container.vue +21 -0
- package/src/components/container/container.variants.ts +18 -0
- package/src/components/context-menu/ContextMenu.vue +43 -0
- package/src/components/context-menu/ContextMenuCheckboxItem.vue +35 -0
- package/src/components/context-menu/ContextMenuGroup.vue +14 -0
- package/src/components/context-menu/ContextMenuItem.vue +30 -0
- package/src/components/context-menu/ContextMenuLabel.vue +14 -0
- package/src/components/context-menu/ContextMenuRadioGroup.vue +13 -0
- package/src/components/context-menu/ContextMenuRadioItem.vue +32 -0
- package/src/components/context-menu/ContextMenuSeparator.vue +12 -0
- package/src/components/context-menu/ContextMenuSub.vue +54 -0
- package/src/components/copy-button/CopyButton.vue +61 -0
- package/src/components/copy-button/composables/useCopy.ts +31 -0
- package/src/components/date-field/DateField.vue +155 -0
- package/src/components/date-field/composables/useSegmentFocus.ts +22 -0
- package/src/components/date-field/date-field.variants.ts +33 -0
- package/src/components/date-picker/DatePicker.vue +135 -0
- package/src/components/date-picker/date-picker.variants.ts +5 -0
- package/src/components/date-range-field/DateRangeField.vue +171 -0
- package/src/components/date-range-field/date-range-field.variants.ts +5 -0
- package/src/components/date-range-field/utils/validity.ts +21 -0
- package/src/components/date-range-picker/DateRangePicker.vue +138 -0
- package/src/components/date-time-picker/DateTimePicker.vue +174 -0
- package/src/components/date-time-picker/date-time-picker.variants.ts +5 -0
- package/src/components/description-list/DescriptionDetails.vue +13 -0
- package/src/components/description-list/DescriptionList.vue +13 -0
- package/src/components/description-list/DescriptionTerm.vue +13 -0
- package/src/components/dialog/Dialog.vue +103 -0
- package/src/components/dialog/dialog.variants.ts +32 -0
- package/src/components/disclosure-icon/DisclosureIcon.vue +36 -0
- package/src/components/disclosure-icon/disclosure-icon.variants.ts +25 -0
- package/src/components/divider/Divider.vue +43 -0
- package/src/components/drawer/Drawer.vue +95 -0
- package/src/components/drawer/drawer.variants.ts +19 -0
- package/src/components/dropdown-menu/DropdownMenu.vue +67 -0
- package/src/components/dropdown-menu/DropdownMenuCheckboxItem.vue +35 -0
- package/src/components/dropdown-menu/DropdownMenuGroup.vue +14 -0
- package/src/components/dropdown-menu/DropdownMenuItem.vue +30 -0
- package/src/components/dropdown-menu/DropdownMenuLabel.vue +14 -0
- package/src/components/dropdown-menu/DropdownMenuRadioGroup.vue +13 -0
- package/src/components/dropdown-menu/DropdownMenuRadioItem.vue +32 -0
- package/src/components/dropdown-menu/DropdownMenuSeparator.vue +12 -0
- package/src/components/dropdown-menu/DropdownMenuSub.vue +54 -0
- package/src/components/dropdown-menu/dropdown-menu.variants.ts +19 -0
- package/src/components/empty/Empty.vue +50 -0
- package/src/components/empty/empty.variants.ts +67 -0
- package/src/components/file-upload/FileUpload.vue +186 -0
- package/src/components/file-upload/composables/useFileDrop.ts +42 -0
- package/src/components/file-upload/composables/useObjectUrls.ts +33 -0
- package/src/components/file-upload/file-upload.variants.ts +31 -0
- package/src/components/file-upload/utils/select.ts +58 -0
- package/src/components/file-upload/utils/size.ts +16 -0
- package/src/components/flex/Flex.vue +28 -0
- package/src/components/flex/flex.variants.ts +49 -0
- package/src/components/form/Form.vue +70 -0
- package/src/components/form/composables/useForm.ts +108 -0
- package/src/components/form/context.ts +18 -0
- package/src/components/form/form.variants.ts +5 -0
- package/src/components/form/standard-schema.ts +26 -0
- package/src/components/form/utils/errors.ts +48 -0
- package/src/components/form/utils/focus.ts +10 -0
- package/src/components/form/utils/values.ts +23 -0
- package/src/components/form-field/FormField.vue +103 -0
- package/src/components/form-field/context.ts +62 -0
- package/src/components/form-field/form-field.variants.ts +26 -0
- package/src/components/form-layout/FormLayout.vue +59 -0
- package/src/components/form-layout/form-layout.variants.ts +33 -0
- package/src/components/grid/Grid.vue +22 -0
- package/src/components/grid/grid.variants.ts +35 -0
- package/src/components/heading/Heading.vue +49 -0
- package/src/components/heading/heading.variants.ts +30 -0
- package/src/components/highlight/Highlight.vue +31 -0
- package/src/components/hover-card/HoverCard.vue +53 -0
- package/src/components/icon-button/IconButton.vue +60 -0
- package/src/components/image/Image.vue +138 -0
- package/src/components/image/ImageGroup.vue +43 -0
- package/src/components/image/composables/useImage.ts +153 -0
- package/src/components/image/context.ts +18 -0
- package/src/components/image/image.variants.ts +17 -0
- package/src/components/image/resolver.ts +15 -0
- package/src/components/indicator/Indicator.vue +37 -0
- package/src/components/indicator/indicator.variants.ts +26 -0
- package/src/components/inline/Inline.vue +24 -0
- package/src/components/inline/inline.variants.ts +41 -0
- package/src/components/input/Input.vue +43 -0
- package/src/components/input/InputAction.vue +26 -0
- package/src/components/input/InputBase.vue +129 -0
- package/src/components/input/input.variants.ts +68 -0
- package/src/components/input-group/InputGroup.vue +35 -0
- package/src/components/input-group/InputGroupAddon.vue +14 -0
- package/src/components/input-group/InputGroupScope.vue +23 -0
- package/src/components/input-group/context.ts +18 -0
- package/src/components/input-group/input-group.variants.ts +13 -0
- package/src/components/kbd/Kbd.vue +11 -0
- package/src/components/lightbox/Lightbox.vue +249 -0
- package/src/components/lightbox/LightboxChrome.vue +113 -0
- package/src/components/lightbox/LightboxStrip.vue +91 -0
- package/src/components/lightbox/LightboxThumbs.vue +73 -0
- package/src/components/lightbox/LightboxToolbar.vue +73 -0
- package/src/components/lightbox/composables/useLightboxFrames.ts +38 -0
- package/src/components/lightbox/composables/useLightboxGesture.ts +204 -0
- package/src/components/lightbox/composables/useLightboxHint.ts +37 -0
- package/src/components/lightbox/composables/useLightboxLarge.ts +62 -0
- package/src/components/lightbox/composables/useLightboxMotion.ts +146 -0
- package/src/components/lightbox/composables/useLightboxPaging.ts +96 -0
- package/src/components/lightbox/composables/useLightboxPhase.ts +59 -0
- package/src/components/lightbox/composables/useLightboxPose.ts +35 -0
- package/src/components/lightbox/composables/useLightboxRotation.ts +48 -0
- package/src/components/lightbox/composables/useLightboxSlides.ts +31 -0
- package/src/components/lightbox/composables/useLightboxZoom.ts +148 -0
- package/src/components/lightbox/types.ts +10 -0
- package/src/components/lightbox/utils/download.ts +29 -0
- package/src/components/lightbox/utils/gesture.ts +54 -0
- package/src/components/lightbox/utils/paging.ts +33 -0
- package/src/components/lightbox/utils/pose.ts +125 -0
- package/src/components/lightbox/utils/zoom.ts +113 -0
- package/src/components/link/Link.vue +29 -0
- package/src/components/link/link.variants.ts +14 -0
- package/src/components/list/List.vue +13 -0
- package/src/components/list/ListItem.vue +13 -0
- package/src/components/listbox/Listbox.vue +103 -0
- package/src/components/listbox/listbox.variants.ts +23 -0
- package/src/components/loading-overlay/LoadingOverlay.vue +54 -0
- package/src/components/loading-overlay/composables/useDelayedVisible.ts +51 -0
- package/src/components/loading-overlay/loading-overlay.variants.ts +25 -0
- package/src/components/mark/Mark.vue +11 -0
- package/src/components/menubar/Menubar.vue +29 -0
- package/src/components/menubar/MenubarCheckboxItem.vue +35 -0
- package/src/components/menubar/MenubarGroup.vue +14 -0
- package/src/components/menubar/MenubarItem.vue +30 -0
- package/src/components/menubar/MenubarLabel.vue +14 -0
- package/src/components/menubar/MenubarMenu.vue +43 -0
- package/src/components/menubar/MenubarRadioGroup.vue +13 -0
- package/src/components/menubar/MenubarRadioItem.vue +32 -0
- package/src/components/menubar/MenubarSeparator.vue +12 -0
- package/src/components/menubar/MenubarSub.vue +42 -0
- package/src/components/menubar/menubar.variants.ts +17 -0
- package/src/components/meter-group/MeterGroup.vue +102 -0
- package/src/components/meter-group/meter-group.variants.ts +38 -0
- package/src/components/meter-group/types.ts +9 -0
- package/src/components/meter-group/utils/tones.ts +14 -0
- package/src/components/multi-combobox/MultiCombobox.vue +207 -0
- package/src/components/multi-combobox/multi-combobox.variants.ts +14 -0
- package/src/components/multi-select/MultiSelect.vue +187 -0
- package/src/components/multi-select/multi-select.variants.ts +13 -0
- package/src/components/nav-link/NavLink.vue +50 -0
- package/src/components/nav-link/nav-link.variants.ts +30 -0
- package/src/components/number-format/NumberFormat.vue +50 -0
- package/src/components/number-input/NumberInput.vue +109 -0
- package/src/components/number-input/number-input.variants.ts +28 -0
- package/src/components/page/Page.vue +23 -0
- package/src/components/page/PageAside.vue +28 -0
- package/src/components/page/PageBody.vue +13 -0
- package/src/components/page/PageHeader.vue +35 -0
- package/src/components/panel/Panel.vue +59 -0
- package/src/components/panel/panel.variants.ts +29 -0
- package/src/components/password-input/PasswordInput.vue +56 -0
- package/src/components/pin-input/PinInput.vue +75 -0
- package/src/components/pin-input/pin-input.variants.ts +31 -0
- package/src/components/popconfirm/Popconfirm.vue +112 -0
- package/src/components/popover/Popover.vue +52 -0
- package/src/components/prev-next/PrevNext.vue +22 -0
- package/src/components/prev-next/PrevNextLink.vue +44 -0
- package/src/components/prev-next/prev-next.variants.ts +28 -0
- package/src/components/progress/Progress.vue +59 -0
- package/src/components/progress/composables/useProgressValue.ts +40 -0
- package/src/components/progress/progress.variants.ts +46 -0
- package/src/components/prose/Prose.vue +14 -0
- package/src/components/radio-group/RadioGroup.vue +86 -0
- package/src/components/radio-group/radio-group.variants.ts +5 -0
- package/src/components/range-calendar/RangeCalendar.vue +184 -0
- package/src/components/range-calendar/composables/useRangeAnchor.ts +16 -0
- package/src/components/range-calendar/range-calendar.variants.ts +24 -0
- package/src/components/range-calendar/utils/limit.ts +11 -0
- package/src/components/range-slider/RangeSlider.vue +128 -0
- package/src/components/rating/Rating.vue +97 -0
- package/src/components/rating/rating.variants.ts +46 -0
- package/src/components/rating/utils/fill.ts +4 -0
- package/src/components/result/Result.vue +51 -0
- package/src/components/result/result.variants.ts +24 -0
- package/src/components/ring-progress/RingProgress.vue +76 -0
- package/src/components/ring-progress/ring-progress.variants.ts +55 -0
- package/src/components/ripple/LICENSE +9 -0
- package/src/components/ripple/Ripple.vue +19 -0
- package/src/components/ripple/useRipple.ts +211 -0
- package/src/components/scroll-area/ScrollArea.vue +128 -0
- package/src/components/scroll-area/composables/useEdgeShadow.ts +32 -0
- package/src/components/scroll-area/composables/useLayerLock.ts +39 -0
- package/src/components/scroll-area/composables/useOverlayScrollbars.ts +109 -0
- package/src/components/scroll-area/composables/useWheelRedirect.ts +30 -0
- package/src/components/scroll-area/scroll-restore.ts +153 -0
- package/src/components/search-input/SearchInput.vue +57 -0
- package/src/components/section/Section.vue +19 -0
- package/src/components/segmented-control/SegmentedControl.vue +79 -0
- package/src/components/segmented-control/segmented-control.variants.ts +46 -0
- package/src/components/select/Select.vue +102 -0
- package/src/components/select/SelectList.vue +108 -0
- package/src/components/select/select.variants.ts +42 -0
- package/src/components/select/types.ts +21 -0
- package/src/components/sheet/Sheet.vue +118 -0
- package/src/components/sheet/composables/useDragToDismiss.ts +64 -0
- package/src/components/sheet/sheet.variants.ts +19 -0
- package/src/components/sidebar/DrawerScope.ts +15 -0
- package/src/components/sidebar/Sidebar.vue +67 -0
- package/src/components/sidebar/SidebarGroup.vue +68 -0
- package/src/components/sidebar/SidebarTrigger.vue +27 -0
- package/src/components/sidebar/context.ts +20 -0
- package/src/components/simple-grid/SimpleGrid.vue +27 -0
- package/src/components/simple-grid/simple-grid.variants.ts +25 -0
- package/src/components/skeleton/Skeleton.vue +28 -0
- package/src/components/slider/Slider.vue +110 -0
- package/src/components/slider/SliderHandle.vue +27 -0
- package/src/components/slider/SliderMarks.vue +40 -0
- package/src/components/slider/composables/useSliderChrome.ts +44 -0
- package/src/components/slider/slider.variants.ts +64 -0
- package/src/components/space/Space.vue +15 -0
- package/src/components/space/space.variants.ts +18 -0
- package/src/components/spinner/Spinner.vue +25 -0
- package/src/components/spinner/spinner.variants.ts +15 -0
- package/src/components/splitter/Splitter.vue +23 -0
- package/src/components/splitter/SplitterHandle.vue +31 -0
- package/src/components/splitter/SplitterPanel.vue +28 -0
- package/src/components/spoiler/LICENSE +19 -0
- package/src/components/spoiler/Spoiler.vue +45 -0
- package/src/components/spoiler/SpoilerPainter.ts +197 -0
- package/src/components/spoiler/composables/useReveal.ts +53 -0
- package/src/components/spoiler/composables/useSpoiler.ts +68 -0
- package/src/components/spoiler/utils/irisOrigin.ts +40 -0
- package/src/components/spoiler/worklet.ts +199 -0
- package/src/components/stack/Stack.vue +23 -0
- package/src/components/stack/stack.variants.ts +34 -0
- package/src/components/statistic/Statistic.vue +92 -0
- package/src/components/statistic/statistic.variants.ts +51 -0
- package/src/components/switch/Switch.vue +66 -0
- package/src/components/switch/switch.variants.ts +34 -0
- package/src/components/table/Table.vue +41 -0
- package/src/components/table/TableBody.vue +13 -0
- package/src/components/table/TableCell.vue +21 -0
- package/src/components/table/TableHead.vue +25 -0
- package/src/components/table/TableHeader.vue +13 -0
- package/src/components/table/TableRow.vue +13 -0
- package/src/components/table/table.variants.ts +56 -0
- package/src/components/tabs/Tabs.vue +41 -0
- package/src/components/tabs/TabsContent.vue +17 -0
- package/src/components/tabs/TabsList.vue +28 -0
- package/src/components/tabs/TabsTrigger.vue +33 -0
- package/src/components/tabs/context.ts +24 -0
- package/src/components/tabs/tabs.variants.ts +95 -0
- package/src/components/tag/Tag.vue +40 -0
- package/src/components/tag/tag.variants.ts +57 -0
- package/src/components/tags-input/TagsInput.vue +132 -0
- package/src/components/tags-input/TagsInputChip.vue +29 -0
- package/src/components/tags-input/tags-input.variants.ts +47 -0
- package/src/components/text/Text.vue +40 -0
- package/src/components/text/text.variants.ts +41 -0
- package/src/components/textarea/Textarea.vue +111 -0
- package/src/components/textarea/textarea.variants.ts +47 -0
- package/src/components/time/Time.vue +64 -0
- package/src/components/time/composables/useNow.ts +27 -0
- package/src/components/time/utils/relativeTime.ts +20 -0
- package/src/components/time-field/TimeField.vue +162 -0
- package/src/components/toast/Toaster.vue +173 -0
- package/src/components/toast/composables/useToastExpand.ts +27 -0
- package/src/components/toast/composables/useToastLayout.ts +84 -0
- package/src/components/toast/store.ts +234 -0
- package/src/components/toggle/Toggle.vue +102 -0
- package/src/components/toggle/toggle.variants.ts +10 -0
- package/src/components/tooltip/Tooltip.vue +46 -0
- package/src/components/tooltip/TooltipProvider.vue +22 -0
- package/src/components/tree-select/TreeSelect.vue +178 -0
- package/src/components/tree-select/tree-select.variants.ts +27 -0
- package/src/components/tree-select/types.ts +34 -0
- package/src/components/visually-hidden/VisuallyHidden.vue +11 -0
- package/src/index.ts +252 -0
- package/src/lib/a11y.ts +20 -0
- package/src/lib/caret.ts +52 -0
- package/src/lib/cn.ts +9 -0
- package/src/lib/collapse.ts +45 -0
- package/src/lib/date.ts +111 -0
- package/src/lib/dev.ts +13 -0
- package/src/lib/field-focus.ts +40 -0
- package/src/lib/passthrough.ts +9 -0
- package/src/lib/tv.ts +6 -0
- package/src/lib/tw-merge.ts +25 -0
- package/src/locale/en-US.ts +152 -0
- package/src/locale/index.ts +67 -0
- package/src/locale/types.ts +154 -0
- package/src/locale/zh-CN.ts +152 -0
- package/src/motion.ts +41 -0
- package/src/singletons.ts +3 -0
- package/src/styles/base.css +22 -0
- package/src/styles/density.css +32 -0
- package/src/styles/interaction.css +294 -0
- package/src/styles/mappings.css +104 -0
- package/src/styles/motion.css +606 -0
- package/src/styles/palette.css +36 -0
- package/src/styles/scroll.css +45 -0
- package/src/styles/semantic.css +225 -0
- package/src/styles/spoiler.css +65 -0
- package/src/styles/tokens.css +14 -0
- package/src/styles/typography.css +259 -0
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { animate, useMotionValue, type ValueAnimationTransition } from 'motion-v'
|
|
2
|
+
import { TRANSITION, prefersReducedMotion, type TransitionName } from '../../../motion'
|
|
3
|
+
import { rubberBand } from '../utils/zoom'
|
|
4
|
+
import {
|
|
5
|
+
DISMISS_SCALE,
|
|
6
|
+
REST_POSE,
|
|
7
|
+
RETURN_SPRING,
|
|
8
|
+
TRAVEL_SPRING,
|
|
9
|
+
dismissProgress,
|
|
10
|
+
shouldDismiss,
|
|
11
|
+
type Pose,
|
|
12
|
+
} from '../utils/pose'
|
|
13
|
+
|
|
14
|
+
const FADE_POSE: Pose = { ...REST_POSE, scale: 0.98 }
|
|
15
|
+
|
|
16
|
+
type Timing = ValueAnimationTransition
|
|
17
|
+
|
|
18
|
+
export function useLightboxMotion(stageHeight: () => number, restScale: () => number) {
|
|
19
|
+
const x = useMotionValue(0)
|
|
20
|
+
const y = useMotionValue(0)
|
|
21
|
+
const scale = useMotionValue(1)
|
|
22
|
+
const rotate = useMotionValue(0)
|
|
23
|
+
const clipPath = useMotionValue(REST_POSE.clipPath)
|
|
24
|
+
const opacity = useMotionValue(1)
|
|
25
|
+
const presence = useMotionValue(0)
|
|
26
|
+
|
|
27
|
+
function timing(value: Timing) {
|
|
28
|
+
return prefersReducedMotion() ? { duration: 0 } : value
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
function transition(name: TransitionName) {
|
|
32
|
+
return timing(TRANSITION[name])
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
function settle(controls: { finished: Promise<unknown> }[]): Promise<void> {
|
|
36
|
+
return Promise.all(controls.map(control => control.finished)).then(() => undefined)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function stop() {
|
|
40
|
+
x.stop()
|
|
41
|
+
y.stop()
|
|
42
|
+
scale.stop()
|
|
43
|
+
rotate.stop()
|
|
44
|
+
presence.stop()
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
function jumpTo(pose: Pose) {
|
|
48
|
+
x.jump(pose.x)
|
|
49
|
+
y.jump(pose.y)
|
|
50
|
+
scale.jump(pose.scale)
|
|
51
|
+
rotate.jump(pose.rotate)
|
|
52
|
+
clipPath.jump(pose.clipPath)
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
function nearestTurn(target: number): number {
|
|
56
|
+
return target + Math.round((rotate.get() - target) / 360) * 360
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function poseTo(pose: Pose, t: ReturnType<typeof timing>) {
|
|
60
|
+
return [
|
|
61
|
+
animate(x, pose.x, t),
|
|
62
|
+
animate(y, pose.y, t),
|
|
63
|
+
animate(scale, pose.scale, t),
|
|
64
|
+
animate(rotate, nearestTurn(pose.rotate), t),
|
|
65
|
+
animate(clipPath, pose.clipPath, t),
|
|
66
|
+
]
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
function enter(from: Pose | null): Promise<void> {
|
|
70
|
+
const t = from ? timing(TRAVEL_SPRING) : transition('enterStrong')
|
|
71
|
+
jumpTo(from ?? FADE_POSE)
|
|
72
|
+
opacity.jump(from ? 1 : 0)
|
|
73
|
+
presence.jump(0)
|
|
74
|
+
return settle([...poseTo(REST_POSE, t), animate(opacity, 1, t), animate(presence, 1, t)])
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
function resume(): Promise<void> {
|
|
78
|
+
stop()
|
|
79
|
+
const t = timing(TRAVEL_SPRING)
|
|
80
|
+
const rest = { ...REST_POSE, scale: restScale(), rotate: rotate.get() }
|
|
81
|
+
return settle([...poseTo(rest, t), animate(opacity, 1, t), animate(presence, 1, t)])
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function leave(to: Pose | null): Promise<void> {
|
|
85
|
+
stop()
|
|
86
|
+
const t = to ? timing(RETURN_SPRING) : transition('exit')
|
|
87
|
+
const travel = to ? poseTo(to, t) : [animate(scale, FADE_POSE.scale, t), animate(opacity, 0, t)]
|
|
88
|
+
return settle([...travel, animate(presence, 0, t)])
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
function dismissMove(offsetY: number) {
|
|
92
|
+
y.set(offsetY < 0 ? rubberBand(offsetY, 0, Infinity, stageHeight()) : offsetY)
|
|
93
|
+
const progress = dismissProgress(offsetY, stageHeight())
|
|
94
|
+
scale.set(restScale() * (1 - (1 - DISMISS_SCALE) * progress))
|
|
95
|
+
presence.set(1 - progress)
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function dismissRelease(offsetY: number, velocityY: number): boolean {
|
|
99
|
+
if (shouldDismiss(offsetY, velocityY, stageHeight())) return true
|
|
100
|
+
const t = transition('press')
|
|
101
|
+
animate(x, 0, t)
|
|
102
|
+
animate(y, 0, t)
|
|
103
|
+
animate(scale, restScale(), t)
|
|
104
|
+
animate(presence, 1, t)
|
|
105
|
+
return false
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
function dismissCancel() {
|
|
109
|
+
animate(presence, 1, transition('fast'))
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
function turn(degrees: number) {
|
|
113
|
+
const t = transition('base')
|
|
114
|
+
animate(rotate, degrees, t)
|
|
115
|
+
animate(scale, restScale(), t)
|
|
116
|
+
animate(x, 0, t)
|
|
117
|
+
animate(y, 0, t)
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
function reset(degrees: number) {
|
|
121
|
+
x.jump(0)
|
|
122
|
+
y.jump(0)
|
|
123
|
+
rotate.jump(degrees)
|
|
124
|
+
scale.jump(restScale())
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
return {
|
|
128
|
+
x,
|
|
129
|
+
y,
|
|
130
|
+
scale,
|
|
131
|
+
rotate,
|
|
132
|
+
clipPath,
|
|
133
|
+
opacity,
|
|
134
|
+
presence,
|
|
135
|
+
transition,
|
|
136
|
+
stop,
|
|
137
|
+
enter,
|
|
138
|
+
resume,
|
|
139
|
+
leave,
|
|
140
|
+
dismissMove,
|
|
141
|
+
dismissRelease,
|
|
142
|
+
dismissCancel,
|
|
143
|
+
turn,
|
|
144
|
+
reset,
|
|
145
|
+
}
|
|
146
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { onBeforeUnmount, shallowRef, type Ref } from 'vue'
|
|
2
|
+
import { animate, useMotionValue, type ValueAnimationTransition } from 'motion-v'
|
|
3
|
+
import { prefersReducedMotion } from '../../../motion'
|
|
4
|
+
import { clampIndex, edgePosition, pageSteps, shortestDelta, wrapIndex } from '../utils/paging'
|
|
5
|
+
import { TRAVEL_SPRING } from '../utils/pose'
|
|
6
|
+
|
|
7
|
+
const PAGE_EPSILON = 0.001
|
|
8
|
+
|
|
9
|
+
export function useLightboxPaging(options: {
|
|
10
|
+
index: Ref<number>
|
|
11
|
+
count: () => number
|
|
12
|
+
width: () => number
|
|
13
|
+
loop: () => boolean
|
|
14
|
+
}) {
|
|
15
|
+
const stripX = useMotionValue(0)
|
|
16
|
+
const position = shallowRef(0)
|
|
17
|
+
const low = shallowRef(0)
|
|
18
|
+
const high = shallowRef(0)
|
|
19
|
+
let origin = 0
|
|
20
|
+
|
|
21
|
+
function looping(): boolean {
|
|
22
|
+
return options.loop() && options.count() > 1
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function rest(at: number): number {
|
|
26
|
+
return -at * options.width()
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function track(value: number) {
|
|
30
|
+
const width = options.width()
|
|
31
|
+
const page = width > 0 ? -value / width : position.value
|
|
32
|
+
const nextLow = Math.floor(page + PAGE_EPSILON)
|
|
33
|
+
const nextHigh = Math.ceil(page - PAGE_EPSILON)
|
|
34
|
+
if (nextLow !== low.value) low.value = nextLow
|
|
35
|
+
if (nextHigh !== high.value) high.value = nextHigh
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
const untrack = stripX.on('change', track)
|
|
39
|
+
onBeforeUnmount(untrack)
|
|
40
|
+
|
|
41
|
+
function sync() {
|
|
42
|
+
position.value = options.index.value
|
|
43
|
+
stripX.jump(rest(position.value))
|
|
44
|
+
track(stripX.get())
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
function range(): [number, number] {
|
|
48
|
+
return [low.value, high.value]
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
function grab(): boolean {
|
|
52
|
+
stripX.stop()
|
|
53
|
+
origin = stripX.get()
|
|
54
|
+
return Math.abs(origin - rest(position.value)) > PAGE_EPSILON
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
function move(offset: number) {
|
|
58
|
+
const raw = origin + offset
|
|
59
|
+
stripX.set(looping() ? raw : edgePosition(raw, options.count(), options.width()))
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
function travel(to: number, transition: ValueAnimationTransition<number>): boolean {
|
|
63
|
+
const count = options.count()
|
|
64
|
+
const target = looping() ? to : clampIndex(to, count)
|
|
65
|
+
const real = looping() ? wrapIndex(target, count) : target
|
|
66
|
+
const changed = real !== options.index.value
|
|
67
|
+
position.value = target
|
|
68
|
+
if (changed) options.index.value = real
|
|
69
|
+
animate(stripX, rest(target), transition)
|
|
70
|
+
return changed
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
function withVelocity(velocity: number): ValueAnimationTransition<number> {
|
|
74
|
+
return prefersReducedMotion() ? { duration: 0 } : { ...TRAVEL_SPRING, velocity }
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
function go(to: number): boolean {
|
|
78
|
+
const target = looping()
|
|
79
|
+
? position.value + shortestDelta(to - options.index.value, options.count())
|
|
80
|
+
: to
|
|
81
|
+
return travel(target, withVelocity(0))
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function release(offset: number) {
|
|
85
|
+
const width = options.width()
|
|
86
|
+
const velocity = stripX.getVelocity()
|
|
87
|
+
const from = width > 0 ? Math.round(-origin / width) : position.value
|
|
88
|
+
travel(from + pageSteps(offset, velocity, width), withVelocity(velocity))
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
function settle() {
|
|
92
|
+
if (stripX.get() !== rest(position.value)) travel(position.value, withVelocity(0))
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return { stripX, position, range, sync, grab, move, release, go, settle }
|
|
96
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { nextTick, shallowRef, type Ref } from 'vue'
|
|
2
|
+
import type { useLightboxMotion } from './useLightboxMotion'
|
|
3
|
+
import type { Pose } from '../utils/pose'
|
|
4
|
+
|
|
5
|
+
export type LightboxPhase = 'closed' | 'entering' | 'open' | 'closing'
|
|
6
|
+
|
|
7
|
+
export function useLightboxPhase(options: {
|
|
8
|
+
open: Ref<boolean>
|
|
9
|
+
mounted: Ref<boolean>
|
|
10
|
+
locked: Ref<boolean>
|
|
11
|
+
motion: ReturnType<typeof useLightboxMotion>
|
|
12
|
+
pose: () => Pose | null
|
|
13
|
+
prepare: () => void
|
|
14
|
+
layout: () => void
|
|
15
|
+
}) {
|
|
16
|
+
const { motion } = options
|
|
17
|
+
const phase = shallowRef<LightboxPhase>('closed')
|
|
18
|
+
let generation = 0
|
|
19
|
+
|
|
20
|
+
async function show() {
|
|
21
|
+
if (phase.value !== 'closed') return
|
|
22
|
+
phase.value = 'entering'
|
|
23
|
+
const run = ++generation
|
|
24
|
+
options.prepare()
|
|
25
|
+
options.mounted.value = true
|
|
26
|
+
options.locked.value = true
|
|
27
|
+
await nextTick()
|
|
28
|
+
options.layout()
|
|
29
|
+
await motion.enter(options.pose())
|
|
30
|
+
if (run === generation) phase.value = 'open'
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
async function reopen() {
|
|
34
|
+
if (phase.value !== 'closing') return
|
|
35
|
+
phase.value = 'entering'
|
|
36
|
+
const run = ++generation
|
|
37
|
+
await motion.resume()
|
|
38
|
+
if (run === generation) phase.value = 'open'
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
async function close() {
|
|
42
|
+
if (phase.value === 'closed' || phase.value === 'closing') return
|
|
43
|
+
phase.value = 'closing'
|
|
44
|
+
const run = ++generation
|
|
45
|
+
await motion.leave(options.pose())
|
|
46
|
+
if (run !== generation) return
|
|
47
|
+
phase.value = 'closed'
|
|
48
|
+
options.mounted.value = false
|
|
49
|
+
options.locked.value = false
|
|
50
|
+
if (options.open.value) options.open.value = false
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
function interrupt() {
|
|
54
|
+
if (phase.value === 'entering') void close()
|
|
55
|
+
else if (phase.value === 'closing') void reopen()
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return { current: () => phase.value, show, close, reopen, interrupt }
|
|
59
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { useLightboxFrames } from './useLightboxFrames'
|
|
2
|
+
import { openPose, radiusOf, type Pose, type Rect } from '../utils/pose'
|
|
3
|
+
import type { LightboxItem } from '../types'
|
|
4
|
+
|
|
5
|
+
export function useLightboxPose(
|
|
6
|
+
frames: ReturnType<typeof useLightboxFrames>,
|
|
7
|
+
current: () => LightboxItem | undefined,
|
|
8
|
+
) {
|
|
9
|
+
function sourceBox(): Rect | null {
|
|
10
|
+
const el = current()?.source?.()
|
|
11
|
+
if (!el?.isConnected) return null
|
|
12
|
+
const rect = el.getBoundingClientRect()
|
|
13
|
+
if (rect.width <= 0 || rect.height <= 0) return null
|
|
14
|
+
const stage = frames.stage.value
|
|
15
|
+
if (
|
|
16
|
+
rect.bottom <= 0 ||
|
|
17
|
+
rect.right <= 0 ||
|
|
18
|
+
rect.top >= stage.height ||
|
|
19
|
+
rect.left >= stage.width
|
|
20
|
+
) {
|
|
21
|
+
return null
|
|
22
|
+
}
|
|
23
|
+
return { x: rect.x, y: rect.y, width: rect.width, height: rect.height }
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
function fromSource(): Pose | null {
|
|
27
|
+
const item = current()
|
|
28
|
+
const box = sourceBox()
|
|
29
|
+
const natural = frames.naturalOf(item)
|
|
30
|
+
if (!box || !natural) return null
|
|
31
|
+
return openPose(frames.frameOf(item), box, natural, item?.fit, radiusOf(item?.source?.()))
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
return { fromSource }
|
|
35
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { reactive } from 'vue'
|
|
2
|
+
import type { useLightboxFrames } from './useLightboxFrames'
|
|
3
|
+
import { baseScale } from '../utils/pose'
|
|
4
|
+
import { rotatedSize } from '../utils/zoom'
|
|
5
|
+
import type { LightboxItem } from '../types'
|
|
6
|
+
|
|
7
|
+
export function useLightboxRotation(
|
|
8
|
+
frames: ReturnType<typeof useLightboxFrames>,
|
|
9
|
+
current: () => LightboxItem | undefined,
|
|
10
|
+
) {
|
|
11
|
+
const rotations = reactive(new Map<string, number>())
|
|
12
|
+
|
|
13
|
+
function rotationOf(item: LightboxItem | undefined): number {
|
|
14
|
+
return item ? (rotations.get(item.id) ?? 0) : 0
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
function baseOf(item: LightboxItem | undefined): number {
|
|
18
|
+
return baseScale(frames.frameOf(item), frames.stage.value, rotationOf(item) % 360)
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
function geometry() {
|
|
22
|
+
const item = current()
|
|
23
|
+
const base = baseOf(item)
|
|
24
|
+
const visual = rotatedSize(frames.frameOf(item), rotationOf(item) % 360)
|
|
25
|
+
return {
|
|
26
|
+
fit: { width: visual.width * base, height: visual.height * base },
|
|
27
|
+
stage: frames.stage.value,
|
|
28
|
+
base,
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function clear() {
|
|
33
|
+
rotations.clear()
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
function advance(): number {
|
|
37
|
+
const item = current()
|
|
38
|
+
if (!item) return 0
|
|
39
|
+
rotations.set(item.id, rotationOf(item) + 90)
|
|
40
|
+
return rotationOf(item)
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
function drop(item: LightboxItem | undefined) {
|
|
44
|
+
if (item) rotations.set(item.id, Math.round(rotationOf(item) / 360) * 360)
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
return { rotationOf, baseOf, geometry, clear, advance, drop }
|
|
48
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { computed } from 'vue'
|
|
2
|
+
import type { useLightboxPaging } from './useLightboxPaging'
|
|
3
|
+
import { wrapIndex } from '../utils/paging'
|
|
4
|
+
import type { LightboxItem } from '../types'
|
|
5
|
+
|
|
6
|
+
export interface LightboxSlide {
|
|
7
|
+
item: LightboxItem
|
|
8
|
+
at: number
|
|
9
|
+
key: string
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export function useLightboxSlides(
|
|
13
|
+
paging: ReturnType<typeof useLightboxPaging>,
|
|
14
|
+
items: () => LightboxItem[],
|
|
15
|
+
looping: () => boolean,
|
|
16
|
+
) {
|
|
17
|
+
return computed<LightboxSlide[]>(() => {
|
|
18
|
+
const list = items()
|
|
19
|
+
const count = list.length
|
|
20
|
+
const [low, high] = paging.range()
|
|
21
|
+
const loop = looping()
|
|
22
|
+
const from = loop ? low - 1 : Math.max(0, low - 1)
|
|
23
|
+
const to = loop ? high + 1 : Math.min(count - 1, high + 1)
|
|
24
|
+
const slides: LightboxSlide[] = []
|
|
25
|
+
for (let at = from; at <= to; at += 1) {
|
|
26
|
+
const item = list[wrapIndex(at, count)]
|
|
27
|
+
if (item) slides.push({ item, at, key: loop ? `${item.id}@${at}` : item.id })
|
|
28
|
+
}
|
|
29
|
+
return slides
|
|
30
|
+
})
|
|
31
|
+
}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { onBeforeUnmount, shallowRef } from 'vue'
|
|
2
|
+
import { animate } from 'motion-v'
|
|
3
|
+
import { prefersReducedMotion, type TransitionName } from '../../../motion'
|
|
4
|
+
import type { useLightboxMotion } from './useLightboxMotion'
|
|
5
|
+
import { FLING, TRACKPAD_INTENSITY } from '../utils/gesture'
|
|
6
|
+
import {
|
|
7
|
+
WHEEL_INTENSITY,
|
|
8
|
+
ZOOM_MIN,
|
|
9
|
+
clampOffset,
|
|
10
|
+
clampZoom,
|
|
11
|
+
doubleTapZoom,
|
|
12
|
+
elasticOffset,
|
|
13
|
+
elasticZoom,
|
|
14
|
+
isZoomed,
|
|
15
|
+
panBounds,
|
|
16
|
+
stepZoom,
|
|
17
|
+
wheelZoom,
|
|
18
|
+
zoomAbout,
|
|
19
|
+
type Bounds,
|
|
20
|
+
type Point,
|
|
21
|
+
type Size,
|
|
22
|
+
} from '../utils/zoom'
|
|
23
|
+
|
|
24
|
+
export interface PinchStart {
|
|
25
|
+
distance: number
|
|
26
|
+
zoom: number
|
|
27
|
+
mid: Point
|
|
28
|
+
offset: Point
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function useLightboxZoom(
|
|
32
|
+
motion: ReturnType<typeof useLightboxMotion>,
|
|
33
|
+
geometry: () => { fit: Size; stage: Size; base: number },
|
|
34
|
+
) {
|
|
35
|
+
const { x, y, scale } = motion
|
|
36
|
+
const zoomed = shallowRef(false)
|
|
37
|
+
const unsubscribe = scale.on('change', value => {
|
|
38
|
+
zoomed.value = isZoomed(value / geometry().base)
|
|
39
|
+
})
|
|
40
|
+
onBeforeUnmount(unsubscribe)
|
|
41
|
+
|
|
42
|
+
const zoom = () => scale.get() / geometry().base
|
|
43
|
+
const offset = (): Point => ({ x: x.get(), y: y.get() })
|
|
44
|
+
|
|
45
|
+
function bounds(level = zoom()): Bounds {
|
|
46
|
+
const { fit, stage } = geometry()
|
|
47
|
+
return panBounds({ width: fit.width * level, height: fit.height * level }, stage)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function place(level: number, next: Point) {
|
|
51
|
+
x.stop()
|
|
52
|
+
y.stop()
|
|
53
|
+
scale.stop()
|
|
54
|
+
scale.set(level * geometry().base)
|
|
55
|
+
x.set(next.x)
|
|
56
|
+
y.set(next.y)
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function target(level: number, focal: Point): { level: number; offset: Point } {
|
|
60
|
+
const clamped = clampZoom(level)
|
|
61
|
+
if (!isZoomed(clamped)) return { level: ZOOM_MIN, offset: { x: 0, y: 0 } }
|
|
62
|
+
return {
|
|
63
|
+
level: clamped,
|
|
64
|
+
offset: clampOffset(zoomAbout(offset(), zoom(), clamped, focal), bounds(clamped)),
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
function zoomTo(level: number, focal: Point, name: TransitionName = 'base') {
|
|
69
|
+
const to = target(level, focal)
|
|
70
|
+
const t = motion.transition(name)
|
|
71
|
+
animate(scale, to.level * geometry().base, t)
|
|
72
|
+
animate(x, to.offset.x, t)
|
|
73
|
+
animate(y, to.offset.y, t)
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
function step(direction: 1 | -1) {
|
|
77
|
+
zoomTo(stepZoom(zoom(), direction), { x: 0, y: 0 })
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
function reset() {
|
|
81
|
+
zoomTo(ZOOM_MIN, { x: 0, y: 0 })
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function wheel(delta: number, focal: Point, trackpad: boolean) {
|
|
85
|
+
const intensity = trackpad ? TRACKPAD_INTENSITY : WHEEL_INTENSITY
|
|
86
|
+
const to = target(wheelZoom(zoom(), delta, intensity), focal)
|
|
87
|
+
place(to.level, to.offset)
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
function doubleTap(focal: Point) {
|
|
91
|
+
zoomTo(doubleTapZoom(zoom()), focal)
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
function pinch(start: PinchStart, mid: Point, ratio: number) {
|
|
95
|
+
const level = elasticZoom(start.zoom * ratio)
|
|
96
|
+
const about = zoomAbout(start.offset, start.zoom, level, start.mid)
|
|
97
|
+
place(level, { x: about.x + mid.x - start.mid.x, y: about.y + mid.y - start.mid.y })
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
function settle(focal: Point) {
|
|
101
|
+
zoomTo(zoom(), focal, 'press')
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
function pan(origin: Point, delta: Point) {
|
|
105
|
+
const next = elasticOffset(
|
|
106
|
+
{ x: origin.x + delta.x, y: origin.y + delta.y },
|
|
107
|
+
bounds(),
|
|
108
|
+
geometry().stage,
|
|
109
|
+
)
|
|
110
|
+
x.set(next.x)
|
|
111
|
+
y.set(next.y)
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
function glide(value: typeof x, min: number, max: number) {
|
|
115
|
+
const from = value.get()
|
|
116
|
+
const velocity = value.getVelocity()
|
|
117
|
+
const target = Math.min(Math.max(from + FLING.power * velocity, min), max)
|
|
118
|
+
if (target === from && velocity === 0) return
|
|
119
|
+
animate(value, target, { type: 'inertia', velocity, min, max, ...FLING })
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function fling() {
|
|
123
|
+
const b = bounds()
|
|
124
|
+
if (prefersReducedMotion()) {
|
|
125
|
+
const clamped = clampOffset(offset(), b)
|
|
126
|
+
x.set(clamped.x)
|
|
127
|
+
y.set(clamped.y)
|
|
128
|
+
return
|
|
129
|
+
}
|
|
130
|
+
glide(x, b.minX, b.maxX)
|
|
131
|
+
glide(y, b.minY, b.maxY)
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
return {
|
|
135
|
+
zoomed,
|
|
136
|
+
zoom,
|
|
137
|
+
isZoomed: () => isZoomed(zoom()),
|
|
138
|
+
zoomTo,
|
|
139
|
+
step,
|
|
140
|
+
reset,
|
|
141
|
+
wheel,
|
|
142
|
+
doubleTap,
|
|
143
|
+
pinch,
|
|
144
|
+
settle,
|
|
145
|
+
pan,
|
|
146
|
+
fling,
|
|
147
|
+
}
|
|
148
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export function fileNameOf(url: string, fallback = 'image'): string {
|
|
2
|
+
try {
|
|
3
|
+
const parsed = new URL(url, 'http://localhost')
|
|
4
|
+
if (parsed.protocol !== 'http:' && parsed.protocol !== 'https:') return fallback
|
|
5
|
+
const name = decodeURIComponent(parsed.pathname.split('/').filter(Boolean).pop() ?? '')
|
|
6
|
+
return name || fallback
|
|
7
|
+
} catch {
|
|
8
|
+
return fallback
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export async function saveImage(url: string): Promise<'saved' | 'opened'> {
|
|
13
|
+
try {
|
|
14
|
+
const response = await fetch(url, { mode: 'cors' })
|
|
15
|
+
if (!response.ok) throw new Error(String(response.status))
|
|
16
|
+
const blob = await response.blob()
|
|
17
|
+
const href = URL.createObjectURL(blob)
|
|
18
|
+
const anchor = Object.assign(document.createElement('a'), {
|
|
19
|
+
href,
|
|
20
|
+
download: fileNameOf(url),
|
|
21
|
+
})
|
|
22
|
+
anchor.click()
|
|
23
|
+
setTimeout(() => URL.revokeObjectURL(href), 0)
|
|
24
|
+
return 'saved'
|
|
25
|
+
} catch {
|
|
26
|
+
window.open(url, '_blank', 'noopener')
|
|
27
|
+
return 'opened'
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { Point } from './zoom'
|
|
2
|
+
|
|
3
|
+
export interface Touch extends Point {
|
|
4
|
+
time: number
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export const DRAG_THRESHOLD = 4
|
|
8
|
+
export const TAP_MAX_DISTANCE = 10
|
|
9
|
+
export const TAP_MAX_MS = 300
|
|
10
|
+
export const DOUBLE_TAP_MS = 300
|
|
11
|
+
export const DOUBLE_TAP_DISTANCE = 25
|
|
12
|
+
export const WHEEL_LINE = 16
|
|
13
|
+
export const TRACKPAD_INTENSITY = 0.01
|
|
14
|
+
|
|
15
|
+
export const FLING = {
|
|
16
|
+
power: 0.8,
|
|
17
|
+
timeConstant: 750,
|
|
18
|
+
bounceStiffness: 200,
|
|
19
|
+
bounceDamping: 40,
|
|
20
|
+
restDelta: 1,
|
|
21
|
+
restSpeed: 10,
|
|
22
|
+
} as const
|
|
23
|
+
|
|
24
|
+
export function midpoint(a: Point, b: Point): Point {
|
|
25
|
+
return { x: (a.x + b.x) / 2, y: (a.y + b.y) / 2 }
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export function distance(a: Point, b: Point): number {
|
|
29
|
+
return Math.hypot(b.x - a.x, b.y - a.y)
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export function dragAxis(start: Point, current: Point): 'x' | 'y' | null {
|
|
33
|
+
const dx = Math.abs(current.x - start.x)
|
|
34
|
+
const dy = Math.abs(current.y - start.y)
|
|
35
|
+
if (Math.max(dx, dy) < DRAG_THRESHOLD) return null
|
|
36
|
+
return dx > dy ? 'x' : 'y'
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export function isTap(start: Touch, end: Touch): boolean {
|
|
40
|
+
return distance(start, end) <= TAP_MAX_DISTANCE && end.time - start.time <= TAP_MAX_MS
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export function isDoubleTap(previous: Touch | null, next: Touch): boolean {
|
|
44
|
+
if (!previous) return false
|
|
45
|
+
return (
|
|
46
|
+
next.time - previous.time <= DOUBLE_TAP_MS && distance(previous, next) <= DOUBLE_TAP_DISTANCE
|
|
47
|
+
)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export function wheelDelta(deltaY: number, deltaMode: number, stageHeight: number): number {
|
|
51
|
+
if (deltaMode === 1) return deltaY * WHEEL_LINE
|
|
52
|
+
if (deltaMode === 2) return deltaY * stageHeight
|
|
53
|
+
return deltaY
|
|
54
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { rubberBand } from './zoom'
|
|
2
|
+
|
|
3
|
+
export const PAGE_COMMIT = 0.2
|
|
4
|
+
export const PAGE_VELOCITY = 400
|
|
5
|
+
export const PAGE_PROJECTION = 0.25
|
|
6
|
+
|
|
7
|
+
export function pageSteps(offset: number, velocity: number, width: number): number {
|
|
8
|
+
if (width <= 0) return 0
|
|
9
|
+
if (Math.abs(offset) < width * PAGE_COMMIT && Math.abs(velocity) < PAGE_VELOCITY) return 0
|
|
10
|
+
const projected = offset + velocity * PAGE_PROJECTION
|
|
11
|
+
if (projected === 0) return 0
|
|
12
|
+
return projected < 0 ? 1 : -1
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export function clampIndex(index: number, count: number): number {
|
|
16
|
+
if (count <= 0) return 0
|
|
17
|
+
return Math.min(Math.max(index, 0), count - 1)
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export function wrapIndex(index: number, count: number): number {
|
|
21
|
+
if (count <= 0) return 0
|
|
22
|
+
return ((index % count) + count) % count
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function shortestDelta(delta: number, count: number): number {
|
|
26
|
+
if (count <= 0) return 0
|
|
27
|
+
const forward = wrapIndex(delta, count)
|
|
28
|
+
return forward > count / 2 ? forward - count : forward
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export function edgePosition(raw: number, count: number, width: number): number {
|
|
32
|
+
return rubberBand(raw, -Math.max(0, count - 1) * width, 0, width)
|
|
33
|
+
}
|