@sewadah/selaras 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +131 -0
- package/dist/module.d.mts +22 -0
- package/dist/module.json +9 -0
- package/dist/module.mjs +127 -0
- package/dist/runtime/components/Accordion.d.vue.ts +59 -0
- package/dist/runtime/components/Accordion.vue +65 -0
- package/dist/runtime/components/Accordion.vue.d.ts +59 -0
- package/dist/runtime/components/Alert.d.vue.ts +39 -0
- package/dist/runtime/components/Alert.vue +64 -0
- package/dist/runtime/components/Alert.vue.d.ts +39 -0
- package/dist/runtime/components/AlertDialog.d.vue.ts +66 -0
- package/dist/runtime/components/AlertDialog.vue +116 -0
- package/dist/runtime/components/AlertDialog.vue.d.ts +66 -0
- package/dist/runtime/components/App.d.vue.ts +32 -0
- package/dist/runtime/components/App.vue +26 -0
- package/dist/runtime/components/App.vue.d.ts +32 -0
- package/dist/runtime/components/Autocomplete.d.vue.ts +61 -0
- package/dist/runtime/components/Autocomplete.vue +41 -0
- package/dist/runtime/components/Autocomplete.vue.d.ts +61 -0
- package/dist/runtime/components/Avatar.d.vue.ts +46 -0
- package/dist/runtime/components/Avatar.vue +64 -0
- package/dist/runtime/components/Avatar.vue.d.ts +46 -0
- package/dist/runtime/components/AvatarGroup.d.vue.ts +14 -0
- package/dist/runtime/components/AvatarGroup.vue +41 -0
- package/dist/runtime/components/AvatarGroup.vue.d.ts +14 -0
- package/dist/runtime/components/Badge.d.vue.ts +37 -0
- package/dist/runtime/components/Badge.vue +47 -0
- package/dist/runtime/components/Badge.vue.d.ts +37 -0
- package/dist/runtime/components/Breadcrumb.d.vue.ts +37 -0
- package/dist/runtime/components/Breadcrumb.vue +109 -0
- package/dist/runtime/components/Breadcrumb.vue.d.ts +37 -0
- package/dist/runtime/components/Button.d.vue.ts +45 -0
- package/dist/runtime/components/Button.vue +67 -0
- package/dist/runtime/components/Button.vue.d.ts +45 -0
- package/dist/runtime/components/ButtonGroup.d.vue.ts +22 -0
- package/dist/runtime/components/ButtonGroup.vue +21 -0
- package/dist/runtime/components/ButtonGroup.vue.d.ts +22 -0
- package/dist/runtime/components/Callout.d.vue.ts +27 -0
- package/dist/runtime/components/Callout.vue +47 -0
- package/dist/runtime/components/Callout.vue.d.ts +27 -0
- package/dist/runtime/components/Card.d.vue.ts +25 -0
- package/dist/runtime/components/Card.vue +30 -0
- package/dist/runtime/components/Card.vue.d.ts +25 -0
- package/dist/runtime/components/CardGroup.d.vue.ts +23 -0
- package/dist/runtime/components/CardGroup.vue +19 -0
- package/dist/runtime/components/CardGroup.vue.d.ts +23 -0
- package/dist/runtime/components/Checkbox.d.vue.ts +45 -0
- package/dist/runtime/components/Checkbox.vue +76 -0
- package/dist/runtime/components/Checkbox.vue.d.ts +45 -0
- package/dist/runtime/components/Chip.d.vue.ts +50 -0
- package/dist/runtime/components/Chip.vue +75 -0
- package/dist/runtime/components/Chip.vue.d.ts +50 -0
- package/dist/runtime/components/CodeButton.d.vue.ts +21 -0
- package/dist/runtime/components/CodeButton.vue +33 -0
- package/dist/runtime/components/CodeButton.vue.d.ts +21 -0
- package/dist/runtime/components/CodeGroup.d.vue.ts +3 -0
- package/dist/runtime/components/CodeGroup.vue +46 -0
- package/dist/runtime/components/CodeGroup.vue.d.ts +3 -0
- package/dist/runtime/components/CodeTree.d.vue.ts +17 -0
- package/dist/runtime/components/CodeTree.vue +56 -0
- package/dist/runtime/components/CodeTree.vue.d.ts +17 -0
- package/dist/runtime/components/Collapsible.d.vue.ts +44 -0
- package/dist/runtime/components/Collapsible.vue +52 -0
- package/dist/runtime/components/Collapsible.vue.d.ts +44 -0
- package/dist/runtime/components/ColorModeToggle.d.vue.ts +3 -0
- package/dist/runtime/components/ColorModeToggle.vue +24 -0
- package/dist/runtime/components/ColorModeToggle.vue.d.ts +3 -0
- package/dist/runtime/components/ColorPicker.d.vue.ts +30 -0
- package/dist/runtime/components/ColorPicker.vue +112 -0
- package/dist/runtime/components/ColorPicker.vue.d.ts +30 -0
- package/dist/runtime/components/Column.d.ts +72 -0
- package/dist/runtime/components/Column.js +34 -0
- package/dist/runtime/components/ColumnGroup.d.ts +33 -0
- package/dist/runtime/components/ColumnGroup.js +17 -0
- package/dist/runtime/components/CommandPalette.d.vue.ts +41 -0
- package/dist/runtime/components/CommandPalette.vue +208 -0
- package/dist/runtime/components/CommandPalette.vue.d.ts +41 -0
- package/dist/runtime/components/Container.d.vue.ts +22 -0
- package/dist/runtime/components/Container.vue +21 -0
- package/dist/runtime/components/Container.vue.d.ts +22 -0
- package/dist/runtime/components/ContentNavigation.d.vue.ts +31 -0
- package/dist/runtime/components/ContentNavigation.vue +64 -0
- package/dist/runtime/components/ContentNavigation.vue.d.ts +31 -0
- package/dist/runtime/components/ContentSurround.d.vue.ts +16 -0
- package/dist/runtime/components/ContentSurround.vue +46 -0
- package/dist/runtime/components/ContentSurround.vue.d.ts +16 -0
- package/dist/runtime/components/ContentToc.d.vue.ts +35 -0
- package/dist/runtime/components/ContentToc.vue +265 -0
- package/dist/runtime/components/ContentToc.vue.d.ts +35 -0
- package/dist/runtime/components/ContextMenu.d.vue.ts +33 -0
- package/dist/runtime/components/ContextMenu.vue +49 -0
- package/dist/runtime/components/ContextMenu.vue.d.ts +33 -0
- package/dist/runtime/components/DashboardGroup.d.vue.ts +24 -0
- package/dist/runtime/components/DashboardGroup.vue +52 -0
- package/dist/runtime/components/DashboardGroup.vue.d.ts +24 -0
- package/dist/runtime/components/DashboardNavbar.d.vue.ts +23 -0
- package/dist/runtime/components/DashboardNavbar.vue +33 -0
- package/dist/runtime/components/DashboardNavbar.vue.d.ts +23 -0
- package/dist/runtime/components/DashboardPanel.d.vue.ts +22 -0
- package/dist/runtime/components/DashboardPanel.vue +26 -0
- package/dist/runtime/components/DashboardPanel.vue.d.ts +22 -0
- package/dist/runtime/components/DashboardResizeHandle.d.vue.ts +8 -0
- package/dist/runtime/components/DashboardResizeHandle.vue +19 -0
- package/dist/runtime/components/DashboardResizeHandle.vue.d.ts +8 -0
- package/dist/runtime/components/DashboardSidebar.d.vue.ts +40 -0
- package/dist/runtime/components/DashboardSidebar.vue +117 -0
- package/dist/runtime/components/DashboardSidebar.vue.d.ts +40 -0
- package/dist/runtime/components/DashboardSidebarToggle.d.vue.ts +21 -0
- package/dist/runtime/components/DashboardSidebarToggle.vue +42 -0
- package/dist/runtime/components/DashboardSidebarToggle.vue.d.ts +21 -0
- package/dist/runtime/components/DatePicker.d.vue.ts +165 -0
- package/dist/runtime/components/DatePicker.vue +796 -0
- package/dist/runtime/components/DatePicker.vue.d.ts +165 -0
- package/dist/runtime/components/Drawer.d.vue.ts +74 -0
- package/dist/runtime/components/Drawer.vue +157 -0
- package/dist/runtime/components/Drawer.vue.d.ts +74 -0
- package/dist/runtime/components/DrawerRenderer.d.vue.ts +3 -0
- package/dist/runtime/components/DrawerRenderer.vue +30 -0
- package/dist/runtime/components/DrawerRenderer.vue.d.ts +3 -0
- package/dist/runtime/components/Dropdown.d.vue.ts +35 -0
- package/dist/runtime/components/Dropdown.vue +51 -0
- package/dist/runtime/components/Dropdown.vue.d.ts +35 -0
- package/dist/runtime/components/FileTree.d.vue.ts +28 -0
- package/dist/runtime/components/FileTree.vue +68 -0
- package/dist/runtime/components/FileTree.vue.d.ts +28 -0
- package/dist/runtime/components/FileUpload.d.vue.ts +68 -0
- package/dist/runtime/components/FileUpload.vue +226 -0
- package/dist/runtime/components/FileUpload.vue.d.ts +68 -0
- package/dist/runtime/components/FormField.d.vue.ts +37 -0
- package/dist/runtime/components/FormField.vue +72 -0
- package/dist/runtime/components/FormField.vue.d.ts +37 -0
- package/dist/runtime/components/Header.d.vue.ts +20 -0
- package/dist/runtime/components/Header.vue +23 -0
- package/dist/runtime/components/Header.vue.d.ts +20 -0
- package/dist/runtime/components/Icon.d.vue.ts +14 -0
- package/dist/runtime/components/Icon.vue +18 -0
- package/dist/runtime/components/Icon.vue.d.ts +14 -0
- package/dist/runtime/components/Input.d.vue.ts +41 -0
- package/dist/runtime/components/Input.vue +86 -0
- package/dist/runtime/components/Input.vue.d.ts +41 -0
- package/dist/runtime/components/InputGroup.d.vue.ts +22 -0
- package/dist/runtime/components/InputGroup.vue +21 -0
- package/dist/runtime/components/InputGroup.vue.d.ts +22 -0
- package/dist/runtime/components/InputNumber.d.vue.ts +37 -0
- package/dist/runtime/components/InputNumber.vue +173 -0
- package/dist/runtime/components/InputNumber.vue.d.ts +37 -0
- package/dist/runtime/components/Kbd.d.vue.ts +24 -0
- package/dist/runtime/components/Kbd.vue +42 -0
- package/dist/runtime/components/Kbd.vue.d.ts +24 -0
- package/dist/runtime/components/Modal.d.vue.ts +72 -0
- package/dist/runtime/components/Modal.vue +178 -0
- package/dist/runtime/components/Modal.vue.d.ts +72 -0
- package/dist/runtime/components/ModalRenderer.d.vue.ts +3 -0
- package/dist/runtime/components/ModalRenderer.vue +25 -0
- package/dist/runtime/components/ModalRenderer.vue.d.ts +3 -0
- package/dist/runtime/components/NavigationMenu.d.vue.ts +108 -0
- package/dist/runtime/components/NavigationMenu.vue +166 -0
- package/dist/runtime/components/NavigationMenu.vue.d.ts +108 -0
- package/dist/runtime/components/NavigationMenuAccordionItem.d.vue.ts +23 -0
- package/dist/runtime/components/NavigationMenuAccordionItem.vue +106 -0
- package/dist/runtime/components/NavigationMenuAccordionItem.vue.d.ts +23 -0
- package/dist/runtime/components/NavigationMenuFlyoutList.d.vue.ts +19 -0
- package/dist/runtime/components/NavigationMenuFlyoutList.vue +44 -0
- package/dist/runtime/components/NavigationMenuFlyoutList.vue.d.ts +19 -0
- package/dist/runtime/components/NavigationMenuFlyoutTrigger.d.vue.ts +49 -0
- package/dist/runtime/components/NavigationMenuFlyoutTrigger.vue +116 -0
- package/dist/runtime/components/NavigationMenuFlyoutTrigger.vue.d.ts +49 -0
- package/dist/runtime/components/PageAside.d.vue.ts +20 -0
- package/dist/runtime/components/PageAside.vue +26 -0
- package/dist/runtime/components/PageAside.vue.d.ts +20 -0
- package/dist/runtime/components/PageHeader.d.vue.ts +24 -0
- package/dist/runtime/components/PageHeader.vue +30 -0
- package/dist/runtime/components/PageHeader.vue.d.ts +24 -0
- package/dist/runtime/components/Pagination.d.vue.ts +42 -0
- package/dist/runtime/components/Pagination.vue +113 -0
- package/dist/runtime/components/Pagination.vue.d.ts +42 -0
- package/dist/runtime/components/PinInput.d.vue.ts +40 -0
- package/dist/runtime/components/PinInput.vue +66 -0
- package/dist/runtime/components/PinInput.vue.d.ts +40 -0
- package/dist/runtime/components/Popover.d.vue.ts +52 -0
- package/dist/runtime/components/Popover.vue +77 -0
- package/dist/runtime/components/Popover.vue.d.ts +52 -0
- package/dist/runtime/components/Progress.d.vue.ts +32 -0
- package/dist/runtime/components/Progress.vue +76 -0
- package/dist/runtime/components/Progress.vue.d.ts +32 -0
- package/dist/runtime/components/ProseH1.d.vue.ts +18 -0
- package/dist/runtime/components/ProseH1.vue +21 -0
- package/dist/runtime/components/ProseH1.vue.d.ts +18 -0
- package/dist/runtime/components/ProseH2.d.vue.ts +18 -0
- package/dist/runtime/components/ProseH2.vue +21 -0
- package/dist/runtime/components/ProseH2.vue.d.ts +18 -0
- package/dist/runtime/components/ProseH3.d.vue.ts +18 -0
- package/dist/runtime/components/ProseH3.vue +21 -0
- package/dist/runtime/components/ProseH3.vue.d.ts +18 -0
- package/dist/runtime/components/ProseH4.d.vue.ts +18 -0
- package/dist/runtime/components/ProseH4.vue +21 -0
- package/dist/runtime/components/ProseH4.vue.d.ts +18 -0
- package/dist/runtime/components/ProseH5.d.vue.ts +18 -0
- package/dist/runtime/components/ProseH5.vue +21 -0
- package/dist/runtime/components/ProseH5.vue.d.ts +18 -0
- package/dist/runtime/components/ProseH6.d.vue.ts +18 -0
- package/dist/runtime/components/ProseH6.vue +21 -0
- package/dist/runtime/components/ProseH6.vue.d.ts +18 -0
- package/dist/runtime/components/ProsePre.d.vue.ts +20 -0
- package/dist/runtime/components/ProsePre.vue +50 -0
- package/dist/runtime/components/ProsePre.vue.d.ts +20 -0
- package/dist/runtime/components/RadioGroup.d.vue.ts +50 -0
- package/dist/runtime/components/RadioGroup.vue +82 -0
- package/dist/runtime/components/RadioGroup.vue.d.ts +50 -0
- package/dist/runtime/components/Rating.d.vue.ts +36 -0
- package/dist/runtime/components/Rating.vue +83 -0
- package/dist/runtime/components/Rating.vue.d.ts +36 -0
- package/dist/runtime/components/ReadMore.d.vue.ts +20 -0
- package/dist/runtime/components/ReadMore.vue +59 -0
- package/dist/runtime/components/ReadMore.vue.d.ts +20 -0
- package/dist/runtime/components/ScrollArea.d.vue.ts +19 -0
- package/dist/runtime/components/ScrollArea.vue +37 -0
- package/dist/runtime/components/ScrollArea.vue.d.ts +19 -0
- package/dist/runtime/components/Select.d.vue.ts +60 -0
- package/dist/runtime/components/Select.vue +40 -0
- package/dist/runtime/components/Select.vue.d.ts +60 -0
- package/dist/runtime/components/Separator.d.vue.ts +27 -0
- package/dist/runtime/components/Separator.vue +36 -0
- package/dist/runtime/components/Separator.vue.d.ts +27 -0
- package/dist/runtime/components/Skeleton.d.vue.ts +13 -0
- package/dist/runtime/components/Skeleton.vue +17 -0
- package/dist/runtime/components/Skeleton.vue.d.ts +13 -0
- package/dist/runtime/components/Slideover.d.vue.ts +65 -0
- package/dist/runtime/components/Slideover.vue +140 -0
- package/dist/runtime/components/Slideover.vue.d.ts +65 -0
- package/dist/runtime/components/SlideoverRenderer.d.vue.ts +3 -0
- package/dist/runtime/components/SlideoverRenderer.vue +27 -0
- package/dist/runtime/components/SlideoverRenderer.vue.d.ts +3 -0
- package/dist/runtime/components/Slider.d.vue.ts +60 -0
- package/dist/runtime/components/Slider.vue +186 -0
- package/dist/runtime/components/Slider.vue.d.ts +60 -0
- package/dist/runtime/components/Splitter.d.vue.ts +41 -0
- package/dist/runtime/components/Splitter.vue +31 -0
- package/dist/runtime/components/Splitter.vue.d.ts +41 -0
- package/dist/runtime/components/SplitterPanel.d.vue.ts +55 -0
- package/dist/runtime/components/SplitterPanel.vue +52 -0
- package/dist/runtime/components/SplitterPanel.vue.d.ts +55 -0
- package/dist/runtime/components/SplitterResizeHandle.d.vue.ts +14 -0
- package/dist/runtime/components/SplitterResizeHandle.vue +22 -0
- package/dist/runtime/components/SplitterResizeHandle.vue.d.ts +14 -0
- package/dist/runtime/components/Stepper.d.vue.ts +57 -0
- package/dist/runtime/components/Stepper.vue +101 -0
- package/dist/runtime/components/Stepper.vue.d.ts +57 -0
- package/dist/runtime/components/Switch.d.vue.ts +49 -0
- package/dist/runtime/components/Switch.vue +73 -0
- package/dist/runtime/components/Switch.vue.d.ts +49 -0
- package/dist/runtime/components/Table.d.vue.ts +83 -0
- package/dist/runtime/components/Table.vue +339 -0
- package/dist/runtime/components/Table.vue.d.ts +83 -0
- package/dist/runtime/components/Tabs.d.vue.ts +43 -0
- package/dist/runtime/components/Tabs.vue +60 -0
- package/dist/runtime/components/Tabs.vue.d.ts +43 -0
- package/dist/runtime/components/Textarea.d.vue.ts +45 -0
- package/dist/runtime/components/Textarea.vue +110 -0
- package/dist/runtime/components/Textarea.vue.d.ts +45 -0
- package/dist/runtime/components/Theme.d.vue.ts +19 -0
- package/dist/runtime/components/Theme.vue +18 -0
- package/dist/runtime/components/Theme.vue.d.ts +19 -0
- package/dist/runtime/components/Toast.d.vue.ts +8 -0
- package/dist/runtime/components/Toast.vue +58 -0
- package/dist/runtime/components/Toast.vue.d.ts +8 -0
- package/dist/runtime/components/Toggle.d.vue.ts +38 -0
- package/dist/runtime/components/Toggle.vue +44 -0
- package/dist/runtime/components/Toggle.vue.d.ts +38 -0
- package/dist/runtime/components/ToggleGroup.d.vue.ts +48 -0
- package/dist/runtime/components/ToggleGroup.vue +61 -0
- package/dist/runtime/components/ToggleGroup.vue.d.ts +48 -0
- package/dist/runtime/components/Tooltip.d.vue.ts +28 -0
- package/dist/runtime/components/Tooltip.vue +40 -0
- package/dist/runtime/components/Tooltip.vue.d.ts +28 -0
- package/dist/runtime/components/Tree.d.vue.ts +64 -0
- package/dist/runtime/components/Tree.vue +139 -0
- package/dist/runtime/components/Tree.vue.d.ts +64 -0
- package/dist/runtime/composables/use-combobox-select.d.ts +45 -0
- package/dist/runtime/composables/use-combobox-select.js +80 -0
- package/dist/runtime/composables/use-command-palette.d.ts +8 -0
- package/dist/runtime/composables/use-command-palette.js +14 -0
- package/dist/runtime/composables/use-drawer.d.ts +42 -0
- package/dist/runtime/composables/use-drawer.js +44 -0
- package/dist/runtime/composables/use-form-field.d.ts +10 -0
- package/dist/runtime/composables/use-form-field.js +8 -0
- package/dist/runtime/composables/use-icons.d.ts +10 -0
- package/dist/runtime/composables/use-icons.js +7 -0
- package/dist/runtime/composables/use-locale.d.ts +12 -0
- package/dist/runtime/composables/use-locale.js +6 -0
- package/dist/runtime/composables/use-media-query.d.ts +11 -0
- package/dist/runtime/composables/use-media-query.js +15 -0
- package/dist/runtime/composables/use-messages.d.ts +12 -0
- package/dist/runtime/composables/use-messages.js +7 -0
- package/dist/runtime/composables/use-modal.d.ts +32 -0
- package/dist/runtime/composables/use-modal.js +39 -0
- package/dist/runtime/composables/use-ripple.d.ts +15 -0
- package/dist/runtime/composables/use-ripple.js +6 -0
- package/dist/runtime/composables/use-slideover.d.ts +36 -0
- package/dist/runtime/composables/use-slideover.js +41 -0
- package/dist/runtime/composables/use-table.d.ts +63 -0
- package/dist/runtime/composables/use-table.js +142 -0
- package/dist/runtime/composables/use-toast.d.ts +15 -0
- package/dist/runtime/composables/use-toast.js +16 -0
- package/dist/runtime/directives/index.d.ts +1 -0
- package/dist/runtime/directives/index.js +1 -0
- package/dist/runtime/directives/ripple.d.ts +16 -0
- package/dist/runtime/directives/ripple.js +80 -0
- package/dist/runtime/internal/ColorPickerBody.d.vue.ts +26 -0
- package/dist/runtime/internal/ColorPickerBody.vue +111 -0
- package/dist/runtime/internal/ColorPickerBody.vue.d.ts +26 -0
- package/dist/runtime/internal/ComboboxSelectBase.d.vue.ts +122 -0
- package/dist/runtime/internal/ComboboxSelectBase.vue +590 -0
- package/dist/runtime/internal/ComboboxSelectBase.vue.d.ts +122 -0
- package/dist/runtime/internal/ComboboxSelectBody.d.vue.ts +71 -0
- package/dist/runtime/internal/ComboboxSelectBody.vue +146 -0
- package/dist/runtime/internal/ComboboxSelectBody.vue.d.ts +71 -0
- package/dist/runtime/internal/DatePickerCalendarBody.d.vue.ts +71 -0
- package/dist/runtime/internal/DatePickerCalendarBody.vue +215 -0
- package/dist/runtime/internal/DatePickerCalendarBody.vue.d.ts +71 -0
- package/dist/runtime/internal/DatePickerRangeCalendarBody.d.vue.ts +37 -0
- package/dist/runtime/internal/DatePickerRangeCalendarBody.vue +96 -0
- package/dist/runtime/internal/DatePickerRangeCalendarBody.vue.d.ts +37 -0
- package/dist/runtime/internal/DatePickerTimeBody.d.vue.ts +33 -0
- package/dist/runtime/internal/DatePickerTimeBody.vue +53 -0
- package/dist/runtime/internal/DatePickerTimeBody.vue.d.ts +33 -0
- package/dist/runtime/internal/TimeStepper.d.vue.ts +28 -0
- package/dist/runtime/internal/TimeStepper.vue +99 -0
- package/dist/runtime/internal/TimeStepper.vue.d.ts +28 -0
- package/dist/runtime/prose.css +1 -0
- package/dist/runtime/server/tsconfig.json +3 -0
- package/dist/runtime/theme/accordion.d.ts +131 -0
- package/dist/runtime/theme/accordion.js +60 -0
- package/dist/runtime/theme/alert-dialog.d.ts +50 -0
- package/dist/runtime/theme/alert-dialog.js +30 -0
- package/dist/runtime/theme/alert.d.ts +62 -0
- package/dist/runtime/theme/alert.js +52 -0
- package/dist/runtime/theme/avatar-group.d.ts +59 -0
- package/dist/runtime/theme/avatar-group.js +18 -0
- package/dist/runtime/theme/avatar.d.ts +206 -0
- package/dist/runtime/theme/avatar.js +67 -0
- package/dist/runtime/theme/badge.d.ts +140 -0
- package/dist/runtime/theme/badge.js +90 -0
- package/dist/runtime/theme/breadcrumb.d.ts +86 -0
- package/dist/runtime/theme/breadcrumb.js +22 -0
- package/dist/runtime/theme/button-group.d.ts +53 -0
- package/dist/runtime/theme/button-group.js +21 -0
- package/dist/runtime/theme/button.d.ts +155 -0
- package/dist/runtime/theme/button.js +99 -0
- package/dist/runtime/theme/callout.d.ts +74 -0
- package/dist/runtime/theme/callout.js +23 -0
- package/dist/runtime/theme/card-group.d.ts +44 -0
- package/dist/runtime/theme/card-group.js +19 -0
- package/dist/runtime/theme/card.d.ts +62 -0
- package/dist/runtime/theme/card.js +23 -0
- package/dist/runtime/theme/checkbox.d.ts +218 -0
- package/dist/runtime/theme/checkbox.js +113 -0
- package/dist/runtime/theme/chip.d.ts +155 -0
- package/dist/runtime/theme/chip.js +86 -0
- package/dist/runtime/theme/code-button.d.ts +32 -0
- package/dist/runtime/theme/code-button.js +7 -0
- package/dist/runtime/theme/code-tree.d.ts +50 -0
- package/dist/runtime/theme/code-tree.js +13 -0
- package/dist/runtime/theme/collapsible.d.ts +95 -0
- package/dist/runtime/theme/collapsible.js +46 -0
- package/dist/runtime/theme/color-picker.d.ts +152 -0
- package/dist/runtime/theme/color-picker.js +83 -0
- package/dist/runtime/theme/command-palette.d.ts +110 -0
- package/dist/runtime/theme/command-palette.js +23 -0
- package/dist/runtime/theme/container.d.ts +62 -0
- package/dist/runtime/theme/container.js +18 -0
- package/dist/runtime/theme/content-navigation.d.ts +47 -0
- package/dist/runtime/theme/content-navigation.js +38 -0
- package/dist/runtime/theme/content-surround.d.ts +53 -0
- package/dist/runtime/theme/content-surround.js +22 -0
- package/dist/runtime/theme/content-toc.d.ts +56 -0
- package/dist/runtime/theme/content-toc.js +41 -0
- package/dist/runtime/theme/context-menu.d.ts +38 -0
- package/dist/runtime/theme/context-menu.js +21 -0
- package/dist/runtime/theme/dashboard-group.d.ts +26 -0
- package/dist/runtime/theme/dashboard-group.js +9 -0
- package/dist/runtime/theme/dashboard-navbar.d.ts +44 -0
- package/dist/runtime/theme/dashboard-navbar.js +9 -0
- package/dist/runtime/theme/dashboard-panel.d.ts +26 -0
- package/dist/runtime/theme/dashboard-panel.js +6 -0
- package/dist/runtime/theme/dashboard-resize-handle.d.ts +26 -0
- package/dist/runtime/theme/dashboard-resize-handle.js +17 -0
- package/dist/runtime/theme/dashboard-sidebar.d.ts +50 -0
- package/dist/runtime/theme/dashboard-sidebar.js +40 -0
- package/dist/runtime/theme/date-picker.d.ts +119 -0
- package/dist/runtime/theme/date-picker.js +75 -0
- package/dist/runtime/theme/drawer.d.ts +95 -0
- package/dist/runtime/theme/drawer.js +57 -0
- package/dist/runtime/theme/dropdown.d.ts +41 -0
- package/dist/runtime/theme/dropdown.js +21 -0
- package/dist/runtime/theme/file-tree.d.ts +56 -0
- package/dist/runtime/theme/file-tree.js +33 -0
- package/dist/runtime/theme/file-upload.d.ts +233 -0
- package/dist/runtime/theme/file-upload.js +63 -0
- package/dist/runtime/theme/form-field.d.ts +95 -0
- package/dist/runtime/theme/form-field.js +37 -0
- package/dist/runtime/theme/header.d.ts +38 -0
- package/dist/runtime/theme/header.js +8 -0
- package/dist/runtime/theme/icon.d.ts +80 -0
- package/dist/runtime/theme/icon.js +26 -0
- package/dist/runtime/theme/input-group.d.ts +95 -0
- package/dist/runtime/theme/input-group.js +39 -0
- package/dist/runtime/theme/input-number.d.ts +164 -0
- package/dist/runtime/theme/input-number.js +76 -0
- package/dist/runtime/theme/input.d.ts +185 -0
- package/dist/runtime/theme/input.js +72 -0
- package/dist/runtime/theme/kbd.d.ts +44 -0
- package/dist/runtime/theme/kbd.js +16 -0
- package/dist/runtime/theme/modal.d.ts +74 -0
- package/dist/runtime/theme/modal.js +58 -0
- package/dist/runtime/theme/navigation-menu.d.ts +224 -0
- package/dist/runtime/theme/navigation-menu.js +232 -0
- package/dist/runtime/theme/page-aside.d.ts +44 -0
- package/dist/runtime/theme/page-aside.js +17 -0
- package/dist/runtime/theme/page-header.d.ts +38 -0
- package/dist/runtime/theme/page-header.js +8 -0
- package/dist/runtime/theme/pagination.d.ts +68 -0
- package/dist/runtime/theme/pagination.js +21 -0
- package/dist/runtime/theme/pin-input.d.ts +131 -0
- package/dist/runtime/theme/pin-input.js +40 -0
- package/dist/runtime/theme/popover.d.ts +32 -0
- package/dist/runtime/theme/popover.js +7 -0
- package/dist/runtime/theme/progress.d.ts +185 -0
- package/dist/runtime/theme/progress.js +54 -0
- package/dist/runtime/theme/prose.d.ts +92 -0
- package/dist/runtime/theme/prose.js +17 -0
- package/dist/runtime/theme/radio-group.d.ts +239 -0
- package/dist/runtime/theme/radio-group.js +134 -0
- package/dist/runtime/theme/rating.d.ts +167 -0
- package/dist/runtime/theme/rating.js +77 -0
- package/dist/runtime/theme/read-more.d.ts +38 -0
- package/dist/runtime/theme/read-more.js +21 -0
- package/dist/runtime/theme/scroll-area.d.ts +50 -0
- package/dist/runtime/theme/scroll-area.js +10 -0
- package/dist/runtime/theme/select.d.ts +176 -0
- package/dist/runtime/theme/select.js +74 -0
- package/dist/runtime/theme/separator.d.ts +158 -0
- package/dist/runtime/theme/separator.js +63 -0
- package/dist/runtime/theme/skeleton.d.ts +35 -0
- package/dist/runtime/theme/skeleton.js +27 -0
- package/dist/runtime/theme/slideover.d.ts +107 -0
- package/dist/runtime/theme/slideover.js +62 -0
- package/dist/runtime/theme/slider.d.ts +227 -0
- package/dist/runtime/theme/slider.js +73 -0
- package/dist/runtime/theme/splitter-panel.d.ts +26 -0
- package/dist/runtime/theme/splitter-panel.js +9 -0
- package/dist/runtime/theme/splitter-resize-handle.d.ts +44 -0
- package/dist/runtime/theme/splitter-resize-handle.js +18 -0
- package/dist/runtime/theme/splitter.d.ts +35 -0
- package/dist/runtime/theme/splitter.js +15 -0
- package/dist/runtime/theme/stepper.d.ts +221 -0
- package/dist/runtime/theme/stepper.js +106 -0
- package/dist/runtime/theme/switch.d.ts +206 -0
- package/dist/runtime/theme/switch.js +84 -0
- package/dist/runtime/theme/table.d.ts +176 -0
- package/dist/runtime/theme/table.js +59 -0
- package/dist/runtime/theme/tabs.d.ts +59 -0
- package/dist/runtime/theme/tabs.js +44 -0
- package/dist/runtime/theme/textarea.d.ts +212 -0
- package/dist/runtime/theme/textarea.js +56 -0
- package/dist/runtime/theme/toast.d.ts +80 -0
- package/dist/runtime/theme/toast.js +31 -0
- package/dist/runtime/theme/toggle-group.d.ts +110 -0
- package/dist/runtime/theme/toggle-group.js +48 -0
- package/dist/runtime/theme/toggle.d.ts +92 -0
- package/dist/runtime/theme/toggle.js +48 -0
- package/dist/runtime/theme/tooltip.d.ts +44 -0
- package/dist/runtime/theme/tooltip.js +14 -0
- package/dist/runtime/theme/tree.d.ts +80 -0
- package/dist/runtime/theme/tree.js +32 -0
- package/dist/runtime/theme.css +1 -0
- package/dist/runtime/types/app-config.d.ts +15 -0
- package/dist/runtime/types/index.d.ts +82 -0
- package/dist/runtime/types/index.js +2 -0
- package/dist/runtime/utils/format-bytes.d.ts +2 -0
- package/dist/runtime/utils/format-bytes.js +9 -0
- package/dist/runtime/utils/fuzzy-match.d.ts +12 -0
- package/dist/runtime/utils/fuzzy-match.js +21 -0
- package/dist/runtime/utils/icons.d.ts +38 -0
- package/dist/runtime/utils/icons.js +51 -0
- package/dist/runtime/utils/injection-keys.d.ts +69 -0
- package/dist/runtime/utils/injection-keys.js +3 -0
- package/dist/runtime/utils/messages.d.ts +70 -0
- package/dist/runtime/utils/messages.js +68 -0
- package/dist/runtime/utils/navigation-menu.d.ts +32 -0
- package/dist/runtime/utils/navigation-menu.js +5 -0
- package/dist/runtime/utils/table-columns.d.ts +30 -0
- package/dist/runtime/utils/table-columns.js +89 -0
- package/dist/runtime/utils/table-export.d.ts +12 -0
- package/dist/runtime/utils/table-export.js +29 -0
- package/dist/runtime/utils/ui.d.ts +124 -0
- package/dist/runtime/utils/ui.js +74 -0
- package/dist/types.d.mts +3 -0
- package/package.json +99 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Sewadah
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# Selaras
|
|
2
|
+
|
|
3
|
+
[![npm version][npm-version-src]][npm-version-href]
|
|
4
|
+
[![npm downloads][npm-downloads-src]][npm-downloads-href]
|
|
5
|
+
[![License][license-src]][license-href]
|
|
6
|
+
[![Nuxt][nuxt-src]][nuxt-href]
|
|
7
|
+
|
|
8
|
+
A UI component library for Nuxt, built on Reka UI and Tailwind v4. Every
|
|
9
|
+
component ships a `tailwind-variants` theme and a single `:ui` prop for
|
|
10
|
+
overrides - no separate pass-through prop to juggle, no specificity fights
|
|
11
|
+
between the library's own classes and yours. Design tokens are plain CSS
|
|
12
|
+
variables (`@theme` + a semantic `--ui-*` layer), so re-theming an app is a
|
|
13
|
+
matter of overriding variables, not rebuilding the library.
|
|
14
|
+
|
|
15
|
+
- [✨ Release Notes](/CHANGELOG.md)
|
|
16
|
+
|
|
17
|
+
> **Status:** pre-1.0 and still moving - component APIs, the color token
|
|
18
|
+
> system, and internal structure can change between minor versions until
|
|
19
|
+
> things settle. Not yet published to npm.
|
|
20
|
+
|
|
21
|
+
## Features
|
|
22
|
+
|
|
23
|
+
- **One override prop, not two.** `:ui` accepts a string (tailwind-merge'd
|
|
24
|
+
against the theme) or an object (merged via `mergeProps` for the rare
|
|
25
|
+
non-class case) per slot - the same mental model everywhere in the library.
|
|
26
|
+
- **CSS variable design tokens.** Colors, radii, shadows, and z-index all
|
|
27
|
+
live in `theme.css` as `--ui-*` variables built on OKLCH primitives, so
|
|
28
|
+
swapping a brand color is a CSS override, not a rebuild.
|
|
29
|
+
- **CSS-only animation.** Open/close and hover/focus transitions run on
|
|
30
|
+
`data-state` attributes and Tailwind variants - no motion library
|
|
31
|
+
dependency.
|
|
32
|
+
- **~35 components** across elements (Button, Badge, Chip, Icon, ...), forms
|
|
33
|
+
(Input, Select, Autocomplete, Checkbox, RadioGroup, Switch, FormField,
|
|
34
|
+
...), data (Table, with sorting/pagination/virtualization/pinning/export),
|
|
35
|
+
navigation (Tabs, Accordion, ContentNavigation, ContentToc), overlays
|
|
36
|
+
(Modal, Dropdown, Tooltip, Toast), layout, and a full set of Prose
|
|
37
|
+
wrappers for `@nuxt/content`.
|
|
38
|
+
- Components auto-import with an `S` prefix (`SButton`, `SSelect`, ...).
|
|
39
|
+
|
|
40
|
+
## Quick Setup
|
|
41
|
+
|
|
42
|
+
Install the module to your Nuxt application with one command:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npx nuxt module add selaras
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Tailwind CSS is a peer dependency - install it alongside Selaras too, so
|
|
49
|
+
your own project owns its version directly:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
npm install tailwindcss
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Import the CSS in your own stylesheet, after Tailwind itself:
|
|
56
|
+
|
|
57
|
+
```css
|
|
58
|
+
@import "tailwindcss";
|
|
59
|
+
@import "selaras";
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Wrap your root `app.vue` in `<SApp>`, once - required for Tooltip's shared
|
|
63
|
+
hover-delay behavior and the `useModal`/`useDrawer`/`useSlideover` composables
|
|
64
|
+
to work:
|
|
65
|
+
|
|
66
|
+
```vue-html
|
|
67
|
+
<!-- app.vue -->
|
|
68
|
+
<template>
|
|
69
|
+
<SApp>
|
|
70
|
+
<NuxtLayout>
|
|
71
|
+
<NuxtPage />
|
|
72
|
+
</NuxtLayout>
|
|
73
|
+
</SApp>
|
|
74
|
+
</template>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Every component is now auto-imported and ready to use:
|
|
78
|
+
|
|
79
|
+
```vue-html
|
|
80
|
+
<SButton color="primary" icon="ph:sparkle">
|
|
81
|
+
Get started
|
|
82
|
+
</SButton>
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## Contribution
|
|
86
|
+
|
|
87
|
+
<details>
|
|
88
|
+
<summary>Local development</summary>
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
# Install dependencies
|
|
92
|
+
npm install
|
|
93
|
+
|
|
94
|
+
# Generate type stubs
|
|
95
|
+
npm run dev:prepare
|
|
96
|
+
|
|
97
|
+
# Develop with the playground (component docs site)
|
|
98
|
+
npm run dev
|
|
99
|
+
|
|
100
|
+
# Build the playground
|
|
101
|
+
npm run dev:build
|
|
102
|
+
|
|
103
|
+
# Type-check
|
|
104
|
+
npm run test:types
|
|
105
|
+
|
|
106
|
+
# Run ESLint
|
|
107
|
+
npm run lint
|
|
108
|
+
|
|
109
|
+
# Run Vitest
|
|
110
|
+
npm run test
|
|
111
|
+
npm run test:watch
|
|
112
|
+
|
|
113
|
+
# Release new version
|
|
114
|
+
npm run release
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
</details>
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
<!-- Badges -->
|
|
121
|
+
[npm-version-src]: https://img.shields.io/npm/v/selaras/latest.svg?style=flat&colorA=020420&colorB=00DC82
|
|
122
|
+
[npm-version-href]: https://npmjs.com/package/selaras
|
|
123
|
+
|
|
124
|
+
[npm-downloads-src]: https://img.shields.io/npm/dm/selaras.svg?style=flat&colorA=020420&colorB=00DC82
|
|
125
|
+
[npm-downloads-href]: https://npm.chart.dev/selaras
|
|
126
|
+
|
|
127
|
+
[license-src]: https://img.shields.io/npm/l/selaras.svg?style=flat&colorA=020420&colorB=00DC82
|
|
128
|
+
[license-href]: https://npmjs.com/package/selaras
|
|
129
|
+
|
|
130
|
+
[nuxt-src]: https://img.shields.io/badge/Nuxt-020420?logo=nuxt
|
|
131
|
+
[nuxt-href]: https://nuxt.com
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as _nuxt_schema from '@nuxt/schema';
|
|
2
|
+
|
|
3
|
+
interface ModuleOptions {
|
|
4
|
+
/**
|
|
5
|
+
* Prefix used for auto-imported components.
|
|
6
|
+
* @default 'S'
|
|
7
|
+
*/
|
|
8
|
+
prefix?: string;
|
|
9
|
+
/**
|
|
10
|
+
* Namespaces every class Selaras's own components render behind this
|
|
11
|
+
* Tailwind v4 class-prefix (`tw:flex` instead of `flex`) - matches a
|
|
12
|
+
* consumer's own `@import "tailwindcss" prefix(tw);` declaration, which
|
|
13
|
+
* must use the exact same string or the whole UI renders unstyled with
|
|
14
|
+
* no error. Unset by default (no prefixing). See "Class prefix" in the
|
|
15
|
+
* installation docs before setting this.
|
|
16
|
+
*/
|
|
17
|
+
classPrefix?: string;
|
|
18
|
+
}
|
|
19
|
+
declare const _default: _nuxt_schema.NuxtModule<ModuleOptions, ModuleOptions, false>;
|
|
20
|
+
|
|
21
|
+
export { _default as default };
|
|
22
|
+
export type { ModuleOptions };
|
package/dist/module.json
ADDED
package/dist/module.mjs
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { defineNuxtModule, createResolver, addVitePlugin, addComponentsDir, addImportsDir, addImports, addTemplate } from '@nuxt/kit';
|
|
2
|
+
import { Scanner } from '@tailwindcss/oxide';
|
|
3
|
+
import tailwindcss from '@tailwindcss/vite';
|
|
4
|
+
|
|
5
|
+
const module$1 = defineNuxtModule({
|
|
6
|
+
meta: {
|
|
7
|
+
name: "selaras",
|
|
8
|
+
configKey: "selaras"
|
|
9
|
+
},
|
|
10
|
+
defaults: {
|
|
11
|
+
prefix: "S"
|
|
12
|
+
},
|
|
13
|
+
moduleDependencies: {
|
|
14
|
+
"@nuxt/icon": {},
|
|
15
|
+
// classSuffix: '' (the module's own default) produces bare `dark`/`light`
|
|
16
|
+
// classes on <html>, matching theme.css's own Tailwind v4 dark variant
|
|
17
|
+
// (`@custom-variant dark (&:where(.dark, .dark *))`) with no extra config.
|
|
18
|
+
"@nuxtjs/color-mode": {}
|
|
19
|
+
},
|
|
20
|
+
setup(options, nuxt) {
|
|
21
|
+
const resolver = createResolver(import.meta.url);
|
|
22
|
+
nuxt.options.icon ||= {};
|
|
23
|
+
nuxt.options.icon.cssLayer = "components";
|
|
24
|
+
addVitePlugin(tailwindcss());
|
|
25
|
+
addComponentsDir({
|
|
26
|
+
path: resolver.resolve("./runtime/components"),
|
|
27
|
+
prefix: options.prefix,
|
|
28
|
+
pathPrefix: false,
|
|
29
|
+
// SColumn/SColumnGroup are plain .ts files (never render real DOM), not
|
|
30
|
+
// .vue SFCs - addComponentsDir only scans .vue by default.
|
|
31
|
+
extensions: ["vue", "ts"],
|
|
32
|
+
// ModalRenderer is App.vue's own internal render loop for useModal(),
|
|
33
|
+
// mirroring the same un-exported overlay-provider pattern other Nuxt
|
|
34
|
+
// component libraries commonly use internally - not meant to be
|
|
35
|
+
// placed by a consumer (App.vue already mounts one; a second copy
|
|
36
|
+
// would render every open programmatic modal twice, since useModal()'s
|
|
37
|
+
// state is a shared singleton). NavigationMenuAccordionItem,
|
|
38
|
+
// NavigationMenuFlyoutList and NavigationMenuFlyoutTrigger are
|
|
39
|
+
// NavigationMenu's own internal recursive helpers for vertical mode's
|
|
40
|
+
// arbitrary-depth tree (expanded, collapsed-flyout content, and the
|
|
41
|
+
// collapsed-flyout's own hover/click trigger, respectively) - not
|
|
42
|
+
// meant to be placed directly either. SlideoverRenderer/DrawerRenderer
|
|
43
|
+
// are useSlideover()'s/useDrawer()'s own render loops, same reasoning
|
|
44
|
+
// as ModalRenderer.
|
|
45
|
+
ignore: ["**/ModalRenderer.vue", "**/NavigationMenuAccordionItem.vue", "**/NavigationMenuFlyoutList.vue", "**/NavigationMenuFlyoutTrigger.vue", "**/SlideoverRenderer.vue", "**/DrawerRenderer.vue"]
|
|
46
|
+
});
|
|
47
|
+
const hasContentModule = nuxt.options.modules.some((m) => {
|
|
48
|
+
const name = typeof m === "string" ? m : Array.isArray(m) && typeof m[0] === "string" ? m[0] : void 0;
|
|
49
|
+
return name === "@nuxt/content" || name === "@nuxtjs/mdc";
|
|
50
|
+
});
|
|
51
|
+
if (hasContentModule) {
|
|
52
|
+
addComponentsDir({
|
|
53
|
+
path: resolver.resolve("./runtime/components"),
|
|
54
|
+
pattern: ["ProsePre.vue", "ProseH[1-6].vue"],
|
|
55
|
+
prefix: "",
|
|
56
|
+
pathPrefix: false,
|
|
57
|
+
global: true,
|
|
58
|
+
priority: 10
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
addImportsDir(resolver.resolve("./runtime/composables"));
|
|
62
|
+
nuxt.hook("prepare:types", ({ references }) => {
|
|
63
|
+
references.push({ path: resolver.resolve("./runtime/types/app-config.d.ts") });
|
|
64
|
+
});
|
|
65
|
+
addImports({
|
|
66
|
+
name: "vRipple",
|
|
67
|
+
from: resolver.resolve("./runtime/directives/ripple"),
|
|
68
|
+
meta: { vueDirective: true }
|
|
69
|
+
});
|
|
70
|
+
addTemplate({
|
|
71
|
+
filename: "selaras-class-prefix.mjs",
|
|
72
|
+
getContents: () => `export const classPrefix = ${JSON.stringify(options.classPrefix ?? null)}
|
|
73
|
+
`
|
|
74
|
+
});
|
|
75
|
+
if (options.classPrefix) {
|
|
76
|
+
const runtimeBase = resolver.resolve("./runtime");
|
|
77
|
+
const scanner = new Scanner({
|
|
78
|
+
sources: [
|
|
79
|
+
{ base: runtimeBase, pattern: "./components/**/*.vue", negated: false },
|
|
80
|
+
{ base: runtimeBase, pattern: "./theme/**/*.ts", negated: false },
|
|
81
|
+
{ base: runtimeBase, pattern: "./utils/**/*.ts", negated: false }
|
|
82
|
+
]
|
|
83
|
+
});
|
|
84
|
+
const candidates = scanner.scan().filter((candidate) => {
|
|
85
|
+
if (candidate.startsWith("selaras-"))
|
|
86
|
+
return false;
|
|
87
|
+
if (candidate.startsWith("!") || /[A-Z]/.test(candidate))
|
|
88
|
+
return false;
|
|
89
|
+
return true;
|
|
90
|
+
});
|
|
91
|
+
const safelist = candidates.map((candidate) => `${options.classPrefix}:${candidate}`).join(" ");
|
|
92
|
+
const safelistTemplate = addTemplate({
|
|
93
|
+
filename: "selaras-prefix-safelist.css",
|
|
94
|
+
// Tailwind's split entry points (`tailwindcss/theme.css` +
|
|
95
|
+
// `tailwindcss/utilities.css`, each with their own `prefix(...)`)
|
|
96
|
+
// emit only the utilities layer for this file's own safelist
|
|
97
|
+
// candidates, instead of a second full copy of Preflight/theme
|
|
98
|
+
// output the plain `@import "tailwindcss" prefix(...)` form would
|
|
99
|
+
// otherwise duplicate (confirmed: ~3.4KB vs ~190KB for an
|
|
100
|
+
// equivalent safelist). `theme(reference)` on the theme import:
|
|
101
|
+
// this file only needs to *resolve* Tailwind's own theme values
|
|
102
|
+
// for candidate generation, not emit them again.
|
|
103
|
+
//
|
|
104
|
+
// `tw-animate-css` and `@custom-variant dark` are also imported/
|
|
105
|
+
// declared here, matching theme.css's own - both live only in
|
|
106
|
+
// theme.css's (separate) compilation otherwise, so without them
|
|
107
|
+
// every `${prefix}:animate-in`/`${prefix}:fade-in-0`/etc class
|
|
108
|
+
// (every Modal/Dropdown/Select/Toast/Tooltip/Drawer open-close
|
|
109
|
+
// transition) would silently generate no CSS at all under a
|
|
110
|
+
// configured prefix - confirmed empirically. `dark:` isn't used
|
|
111
|
+
// by any real component class yet, but costs nothing to close now.
|
|
112
|
+
getContents: () => [
|
|
113
|
+
`@import "tailwindcss/theme.css" theme(reference) prefix(${options.classPrefix});`,
|
|
114
|
+
`@import "tailwindcss/utilities.css" layer(utilities) prefix(${options.classPrefix});`,
|
|
115
|
+
`@import "tw-animate-css";`,
|
|
116
|
+
`@custom-variant dark (&:where(.dark, .dark *));`,
|
|
117
|
+
`@source inline("${safelist}");`,
|
|
118
|
+
""
|
|
119
|
+
].join("\n"),
|
|
120
|
+
write: true
|
|
121
|
+
});
|
|
122
|
+
nuxt.options.css.push(safelistTemplate.dst);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
export { module$1 as default };
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { VariantProps } from 'tailwind-variants';
|
|
2
|
+
import type { AccordionThemeSlots } from '../theme/accordion.js';
|
|
3
|
+
import type { UiProp } from '../utils/ui.js';
|
|
4
|
+
import { accordionTheme } from '../theme/accordion.js';
|
|
5
|
+
type AccordionVariants = VariantProps<typeof accordionTheme>;
|
|
6
|
+
export interface AccordionItemDef {
|
|
7
|
+
value: string;
|
|
8
|
+
label: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
/** Not read by Accordion's own default label rendering - carried purely so a custom #label slot override can display one. */
|
|
11
|
+
icon?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface AccordionProps {
|
|
14
|
+
items: AccordionItemDef[];
|
|
15
|
+
type?: 'single' | 'multiple';
|
|
16
|
+
defaultValue?: string | string[];
|
|
17
|
+
modelValue?: string | string[];
|
|
18
|
+
collapsible?: boolean;
|
|
19
|
+
/** Disables every item at once - Reka's own AccordionRoot already blocks all interaction when this is set, so this is a straight pass-through. */
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
size?: AccordionVariants['size'];
|
|
22
|
+
/** @default 'list' */
|
|
23
|
+
variant?: AccordionVariants['variant'];
|
|
24
|
+
/** @default 'end' */
|
|
25
|
+
chevronPosition?: AccordionVariants['chevronPosition'];
|
|
26
|
+
ui?: UiProp<AccordionThemeSlots>;
|
|
27
|
+
}
|
|
28
|
+
export interface AccordionEmits {
|
|
29
|
+
'update:modelValue': [value: string | string[]];
|
|
30
|
+
}
|
|
31
|
+
declare var __VLS_28: {
|
|
32
|
+
class: unknown;
|
|
33
|
+
}, __VLS_35: {
|
|
34
|
+
item: AccordionItemDef;
|
|
35
|
+
}, __VLS_37: {
|
|
36
|
+
class: unknown;
|
|
37
|
+
}, __VLS_51: string, __VLS_52: {};
|
|
38
|
+
type __VLS_Slots = {} & {
|
|
39
|
+
[K in NonNullable<typeof __VLS_51>]?: (props: typeof __VLS_52) => any;
|
|
40
|
+
} & {
|
|
41
|
+
'chevron-icon'?: (props: typeof __VLS_28) => any;
|
|
42
|
+
} & {
|
|
43
|
+
label?: (props: typeof __VLS_35) => any;
|
|
44
|
+
} & {
|
|
45
|
+
'chevron-icon'?: (props: typeof __VLS_37) => any;
|
|
46
|
+
};
|
|
47
|
+
declare const __VLS_base: import("vue").DefineComponent<AccordionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
48
|
+
"update:modelValue": (value: string | string[]) => any;
|
|
49
|
+
}, string, import("vue").PublicProps, Readonly<AccordionProps> & Readonly<{
|
|
50
|
+
"onUpdate:modelValue"?: ((value: string | string[]) => any) | undefined;
|
|
51
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
52
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
53
|
+
declare const _default: typeof __VLS_export;
|
|
54
|
+
export default _default;
|
|
55
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
56
|
+
new (): {
|
|
57
|
+
$slots: S;
|
|
58
|
+
};
|
|
59
|
+
};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { AccordionContent, AccordionHeader, AccordionItem, AccordionRoot, AccordionTrigger } from "reka-ui";
|
|
3
|
+
import { computed } from "vue";
|
|
4
|
+
import { useIcons } from "../composables/use-icons";
|
|
5
|
+
import { accordionTheme } from "../theme/accordion";
|
|
6
|
+
import { resolveSlot, useComponentTheme, useRootProps } from "../utils/ui";
|
|
7
|
+
import Icon from "./Icon.vue";
|
|
8
|
+
defineOptions({ inheritAttrs: false });
|
|
9
|
+
const props = defineProps({
|
|
10
|
+
items: { type: Array, required: true },
|
|
11
|
+
type: { type: String, required: false, default: "multiple" },
|
|
12
|
+
defaultValue: { type: [String, Array], required: false },
|
|
13
|
+
modelValue: { type: [String, Array], required: false },
|
|
14
|
+
collapsible: { type: Boolean, required: false, default: true },
|
|
15
|
+
disabled: { type: Boolean, required: false },
|
|
16
|
+
size: { type: null, required: false },
|
|
17
|
+
variant: { type: null, required: false },
|
|
18
|
+
chevronPosition: { type: null, required: false },
|
|
19
|
+
ui: { type: Object, required: false }
|
|
20
|
+
});
|
|
21
|
+
defineEmits(["update:modelValue"]);
|
|
22
|
+
const icons = useIcons();
|
|
23
|
+
const theme = useComponentTheme("accordion", accordionTheme);
|
|
24
|
+
const ui = computed(() => theme.value({ size: props.size, variant: props.variant, chevronPosition: props.chevronPosition }));
|
|
25
|
+
const rootProps = useRootProps(() => ui.value.root, () => props.ui?.root);
|
|
26
|
+
</script>
|
|
27
|
+
|
|
28
|
+
<template>
|
|
29
|
+
<AccordionRoot
|
|
30
|
+
:type="type"
|
|
31
|
+
:default-value="defaultValue"
|
|
32
|
+
:model-value="modelValue"
|
|
33
|
+
:collapsible="type === 'single' ? collapsible : void 0"
|
|
34
|
+
:disabled="disabled"
|
|
35
|
+
v-bind="rootProps"
|
|
36
|
+
@update:model-value="(value) => $emit('update:modelValue', value)"
|
|
37
|
+
>
|
|
38
|
+
<AccordionItem
|
|
39
|
+
v-for="item in items"
|
|
40
|
+
:key="item.value"
|
|
41
|
+
:value="item.value"
|
|
42
|
+
:disabled="item.disabled"
|
|
43
|
+
v-bind="resolveSlot(ui.item, props.ui?.item)"
|
|
44
|
+
>
|
|
45
|
+
<AccordionHeader as="div" v-bind="resolveSlot(ui.header, props.ui?.header)">
|
|
46
|
+
<AccordionTrigger v-bind="resolveSlot(ui.trigger, props.ui?.trigger)">
|
|
47
|
+
<slot v-if="chevronPosition === 'start'" name="chevron-icon" :class="resolveSlot(ui.chevron, props.ui?.chevron).class">
|
|
48
|
+
<Icon :name="icons.chevronDown" v-bind="resolveSlot(ui.chevron, props.ui?.chevron)" />
|
|
49
|
+
</slot>
|
|
50
|
+
<span v-bind="resolveSlot(ui.label, props.ui?.label)">
|
|
51
|
+
<slot name="label" :item="item">{{ item.label }}</slot>
|
|
52
|
+
</span>
|
|
53
|
+
<slot v-if="chevronPosition !== 'start'" name="chevron-icon" :class="resolveSlot(ui.chevron, props.ui?.chevron).class">
|
|
54
|
+
<Icon :name="icons.chevronDown" v-bind="resolveSlot(ui.chevron, props.ui?.chevron)" />
|
|
55
|
+
</slot>
|
|
56
|
+
</AccordionTrigger>
|
|
57
|
+
</AccordionHeader>
|
|
58
|
+
<AccordionContent v-bind="resolveSlot(ui.content, props.ui?.content)">
|
|
59
|
+
<div v-bind="resolveSlot(ui.contentInner, props.ui?.contentInner)">
|
|
60
|
+
<slot :name="item.value" />
|
|
61
|
+
</div>
|
|
62
|
+
</AccordionContent>
|
|
63
|
+
</AccordionItem>
|
|
64
|
+
</AccordionRoot>
|
|
65
|
+
</template>
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { VariantProps } from 'tailwind-variants';
|
|
2
|
+
import type { AccordionThemeSlots } from '../theme/accordion.js';
|
|
3
|
+
import type { UiProp } from '../utils/ui.js';
|
|
4
|
+
import { accordionTheme } from '../theme/accordion.js';
|
|
5
|
+
type AccordionVariants = VariantProps<typeof accordionTheme>;
|
|
6
|
+
export interface AccordionItemDef {
|
|
7
|
+
value: string;
|
|
8
|
+
label: string;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
/** Not read by Accordion's own default label rendering - carried purely so a custom #label slot override can display one. */
|
|
11
|
+
icon?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface AccordionProps {
|
|
14
|
+
items: AccordionItemDef[];
|
|
15
|
+
type?: 'single' | 'multiple';
|
|
16
|
+
defaultValue?: string | string[];
|
|
17
|
+
modelValue?: string | string[];
|
|
18
|
+
collapsible?: boolean;
|
|
19
|
+
/** Disables every item at once - Reka's own AccordionRoot already blocks all interaction when this is set, so this is a straight pass-through. */
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
size?: AccordionVariants['size'];
|
|
22
|
+
/** @default 'list' */
|
|
23
|
+
variant?: AccordionVariants['variant'];
|
|
24
|
+
/** @default 'end' */
|
|
25
|
+
chevronPosition?: AccordionVariants['chevronPosition'];
|
|
26
|
+
ui?: UiProp<AccordionThemeSlots>;
|
|
27
|
+
}
|
|
28
|
+
export interface AccordionEmits {
|
|
29
|
+
'update:modelValue': [value: string | string[]];
|
|
30
|
+
}
|
|
31
|
+
declare var __VLS_28: {
|
|
32
|
+
class: unknown;
|
|
33
|
+
}, __VLS_35: {
|
|
34
|
+
item: AccordionItemDef;
|
|
35
|
+
}, __VLS_37: {
|
|
36
|
+
class: unknown;
|
|
37
|
+
}, __VLS_51: string, __VLS_52: {};
|
|
38
|
+
type __VLS_Slots = {} & {
|
|
39
|
+
[K in NonNullable<typeof __VLS_51>]?: (props: typeof __VLS_52) => any;
|
|
40
|
+
} & {
|
|
41
|
+
'chevron-icon'?: (props: typeof __VLS_28) => any;
|
|
42
|
+
} & {
|
|
43
|
+
label?: (props: typeof __VLS_35) => any;
|
|
44
|
+
} & {
|
|
45
|
+
'chevron-icon'?: (props: typeof __VLS_37) => any;
|
|
46
|
+
};
|
|
47
|
+
declare const __VLS_base: import("vue").DefineComponent<AccordionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
48
|
+
"update:modelValue": (value: string | string[]) => any;
|
|
49
|
+
}, string, import("vue").PublicProps, Readonly<AccordionProps> & Readonly<{
|
|
50
|
+
"onUpdate:modelValue"?: ((value: string | string[]) => any) | undefined;
|
|
51
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
52
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
53
|
+
declare const _default: typeof __VLS_export;
|
|
54
|
+
export default _default;
|
|
55
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
56
|
+
new (): {
|
|
57
|
+
$slots: S;
|
|
58
|
+
};
|
|
59
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { VariantProps } from 'tailwind-variants';
|
|
2
|
+
import type { AlertThemeSlots } from '../theme/alert.js';
|
|
3
|
+
import type { UiProp } from '../utils/ui.js';
|
|
4
|
+
import { alertTheme } from '../theme/alert.js';
|
|
5
|
+
type AlertVariants = VariantProps<typeof alertTheme>;
|
|
6
|
+
type __VLS_Slots = AlertSlots;
|
|
7
|
+
export interface AlertProps {
|
|
8
|
+
title?: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
/** Falls back to the color's own default icon (icons.success/danger/warning/info) when unset - no icon renders at all without a color either. */
|
|
11
|
+
icon?: string;
|
|
12
|
+
/** Shows a dismiss button and emits `close` when clicked. The alert has no open state of its own - closing it is left to the consumer's own v-if/v-for, the same way Chip's own `removable` + `remove` already works. */
|
|
13
|
+
closable?: boolean;
|
|
14
|
+
color?: AlertVariants['color'];
|
|
15
|
+
variant?: AlertVariants['variant'];
|
|
16
|
+
ui?: UiProp<AlertThemeSlots>;
|
|
17
|
+
}
|
|
18
|
+
export interface AlertEmits {
|
|
19
|
+
close: [];
|
|
20
|
+
}
|
|
21
|
+
export interface AlertSlots {
|
|
22
|
+
title?: () => any;
|
|
23
|
+
description?: () => any;
|
|
24
|
+
/** Action buttons (Retry, Undo, ...) below the description. */
|
|
25
|
+
actions?: () => any;
|
|
26
|
+
}
|
|
27
|
+
declare const __VLS_base: import("vue").DefineComponent<AlertProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
28
|
+
close: () => any;
|
|
29
|
+
}, string, import("vue").PublicProps, Readonly<AlertProps> & Readonly<{
|
|
30
|
+
onClose?: (() => any) | undefined;
|
|
31
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
32
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
33
|
+
declare const _default: typeof __VLS_export;
|
|
34
|
+
export default _default;
|
|
35
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
36
|
+
new (): {
|
|
37
|
+
$slots: S;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { computed } from "vue";
|
|
3
|
+
import { useIcons } from "../composables/use-icons";
|
|
4
|
+
import { useMessages } from "../composables/use-messages";
|
|
5
|
+
import { alertTheme } from "../theme/alert";
|
|
6
|
+
import { resolveSlot, useComponentTheme, useRootProps } from "../utils/ui";
|
|
7
|
+
import Button from "./Button.vue";
|
|
8
|
+
import Icon from "./Icon.vue";
|
|
9
|
+
defineOptions({ inheritAttrs: false });
|
|
10
|
+
const props = defineProps({
|
|
11
|
+
title: { type: String, required: false },
|
|
12
|
+
description: { type: String, required: false },
|
|
13
|
+
icon: { type: String, required: false },
|
|
14
|
+
closable: { type: Boolean, required: false },
|
|
15
|
+
color: { type: null, required: false },
|
|
16
|
+
variant: { type: null, required: false },
|
|
17
|
+
ui: { type: Object, required: false }
|
|
18
|
+
});
|
|
19
|
+
const emit = defineEmits(["close"]);
|
|
20
|
+
defineSlots();
|
|
21
|
+
const icons = useIcons();
|
|
22
|
+
const messages = useMessages();
|
|
23
|
+
const iconName = computed(() => props.icon ?? (props.color ? icons.value[props.color] : void 0));
|
|
24
|
+
const theme = useComponentTheme("alert", alertTheme);
|
|
25
|
+
const ui = computed(() => theme.value({ color: props.color, variant: props.variant }));
|
|
26
|
+
const rootProps = useRootProps(() => ui.value.root, () => props.ui?.root);
|
|
27
|
+
const iconProps = computed(() => resolveSlot(ui.value.icon, props.ui?.icon));
|
|
28
|
+
const contentProps = computed(() => resolveSlot(ui.value.content, props.ui?.content));
|
|
29
|
+
const titleProps = computed(() => resolveSlot(ui.value.title, props.ui?.title));
|
|
30
|
+
const descriptionProps = computed(() => resolveSlot(ui.value.description, props.ui?.description));
|
|
31
|
+
const actionsProps = computed(() => resolveSlot(ui.value.actions, props.ui?.actions));
|
|
32
|
+
const closeProps = computed(() => resolveSlot(ui.value.close, props.ui?.close));
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<template>
|
|
36
|
+
<div v-bind="rootProps">
|
|
37
|
+
<Icon v-if="iconName" :name="iconName" v-bind="iconProps" />
|
|
38
|
+
<div v-bind="contentProps">
|
|
39
|
+
<p v-if="title || $slots.title" v-bind="titleProps">
|
|
40
|
+
<slot name="title">
|
|
41
|
+
{{ title }}
|
|
42
|
+
</slot>
|
|
43
|
+
</p>
|
|
44
|
+
<p v-if="description || $slots.description" v-bind="descriptionProps">
|
|
45
|
+
<slot name="description">
|
|
46
|
+
{{ description }}
|
|
47
|
+
</slot>
|
|
48
|
+
</p>
|
|
49
|
+
<div v-if="$slots.actions" v-bind="actionsProps">
|
|
50
|
+
<slot name="actions" />
|
|
51
|
+
</div>
|
|
52
|
+
</div>
|
|
53
|
+
<Button
|
|
54
|
+
v-if="closable"
|
|
55
|
+
size="sm"
|
|
56
|
+
variant="ghost"
|
|
57
|
+
color="neutral"
|
|
58
|
+
:icon="icons.close"
|
|
59
|
+
:aria-label="messages.close"
|
|
60
|
+
v-bind="closeProps"
|
|
61
|
+
@click="emit('close')"
|
|
62
|
+
/>
|
|
63
|
+
</div>
|
|
64
|
+
</template>
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { VariantProps } from 'tailwind-variants';
|
|
2
|
+
import type { AlertThemeSlots } from '../theme/alert.js';
|
|
3
|
+
import type { UiProp } from '../utils/ui.js';
|
|
4
|
+
import { alertTheme } from '../theme/alert.js';
|
|
5
|
+
type AlertVariants = VariantProps<typeof alertTheme>;
|
|
6
|
+
type __VLS_Slots = AlertSlots;
|
|
7
|
+
export interface AlertProps {
|
|
8
|
+
title?: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
/** Falls back to the color's own default icon (icons.success/danger/warning/info) when unset - no icon renders at all without a color either. */
|
|
11
|
+
icon?: string;
|
|
12
|
+
/** Shows a dismiss button and emits `close` when clicked. The alert has no open state of its own - closing it is left to the consumer's own v-if/v-for, the same way Chip's own `removable` + `remove` already works. */
|
|
13
|
+
closable?: boolean;
|
|
14
|
+
color?: AlertVariants['color'];
|
|
15
|
+
variant?: AlertVariants['variant'];
|
|
16
|
+
ui?: UiProp<AlertThemeSlots>;
|
|
17
|
+
}
|
|
18
|
+
export interface AlertEmits {
|
|
19
|
+
close: [];
|
|
20
|
+
}
|
|
21
|
+
export interface AlertSlots {
|
|
22
|
+
title?: () => any;
|
|
23
|
+
description?: () => any;
|
|
24
|
+
/** Action buttons (Retry, Undo, ...) below the description. */
|
|
25
|
+
actions?: () => any;
|
|
26
|
+
}
|
|
27
|
+
declare const __VLS_base: import("vue").DefineComponent<AlertProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
28
|
+
close: () => any;
|
|
29
|
+
}, string, import("vue").PublicProps, Readonly<AlertProps> & Readonly<{
|
|
30
|
+
onClose?: (() => any) | undefined;
|
|
31
|
+
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
32
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
33
|
+
declare const _default: typeof __VLS_export;
|
|
34
|
+
export default _default;
|
|
35
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
36
|
+
new (): {
|
|
37
|
+
$slots: S;
|
|
38
|
+
};
|
|
39
|
+
};
|