@sewadah/selaras 0.1.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -20
- package/dist/module.d.mts +10 -0
- package/dist/module.json +1 -1
- package/dist/module.mjs +123 -36
- package/dist/runtime/components/Accordion.d.vue.ts +3 -0
- package/dist/runtime/components/Accordion.vue +5 -1
- package/dist/runtime/components/Accordion.vue.d.ts +3 -0
- package/dist/runtime/components/Alert.d.vue.ts +2 -1
- package/dist/runtime/components/Alert.vue +6 -3
- package/dist/runtime/components/Alert.vue.d.ts +2 -1
- package/dist/runtime/components/AlertDialog.d.vue.ts +2 -0
- package/dist/runtime/components/AlertDialog.vue +21 -8
- package/dist/runtime/components/AlertDialog.vue.d.ts +2 -0
- package/dist/runtime/components/App.vue +9 -2
- package/dist/runtime/components/Autocomplete.d.vue.ts +22 -58
- package/dist/runtime/components/Autocomplete.vue +50 -11
- package/dist/runtime/components/Autocomplete.vue.d.ts +22 -58
- package/dist/runtime/components/Avatar.d.vue.ts +2 -1
- package/dist/runtime/components/Avatar.vue +4 -2
- package/dist/runtime/components/Avatar.vue.d.ts +2 -1
- package/dist/runtime/components/Badge.d.vue.ts +3 -2
- package/dist/runtime/components/Badge.vue +8 -5
- package/dist/runtime/components/Badge.vue.d.ts +3 -2
- package/dist/runtime/components/Breadcrumb.d.vue.ts +3 -0
- package/dist/runtime/components/Breadcrumb.vue +5 -2
- package/dist/runtime/components/Breadcrumb.vue.d.ts +3 -0
- package/dist/runtime/components/Button.d.vue.ts +5 -2
- package/dist/runtime/components/Button.vue +5 -2
- package/dist/runtime/components/Button.vue.d.ts +5 -2
- package/dist/runtime/components/Checkbox.d.vue.ts +2 -1
- package/dist/runtime/components/Checkbox.vue +4 -2
- package/dist/runtime/components/Checkbox.vue.d.ts +2 -1
- package/dist/runtime/components/Chip.d.vue.ts +2 -1
- package/dist/runtime/components/Chip.vue +4 -2
- package/dist/runtime/components/Chip.vue.d.ts +2 -1
- package/dist/runtime/components/Collapsible.d.vue.ts +3 -0
- package/dist/runtime/components/Collapsible.vue +11 -6
- package/dist/runtime/components/Collapsible.vue.d.ts +3 -0
- package/dist/runtime/components/ColorPicker.d.vue.ts +13 -3
- package/dist/runtime/components/ColorPicker.vue +60 -14
- package/dist/runtime/components/ColorPicker.vue.d.ts +13 -3
- package/dist/runtime/components/Column.d.ts +1 -1
- package/dist/runtime/components/CommandPalette.vue +18 -16
- package/dist/runtime/components/ContentNavigation.d.vue.ts +3 -0
- package/dist/runtime/components/ContentNavigation.vue +6 -3
- package/dist/runtime/components/ContentNavigation.vue.d.ts +3 -0
- package/dist/runtime/components/ContentSurround.d.vue.ts +3 -0
- package/dist/runtime/components/ContentSurround.vue +7 -4
- package/dist/runtime/components/ContentSurround.vue.d.ts +3 -0
- package/dist/runtime/components/ContentToc.d.vue.ts +3 -0
- package/dist/runtime/components/ContentToc.vue +22 -12
- package/dist/runtime/components/ContentToc.vue.d.ts +3 -0
- package/dist/runtime/components/ContextMenu.vue +3 -2
- package/dist/runtime/components/DashboardSidebar.vue +1 -1
- package/dist/runtime/components/DashboardSidebarToggle.d.vue.ts +1 -0
- package/dist/runtime/components/DashboardSidebarToggle.vue +3 -1
- package/dist/runtime/components/DashboardSidebarToggle.vue.d.ts +1 -0
- package/dist/runtime/components/DatePicker.d.vue.ts +32 -23
- package/dist/runtime/components/DatePicker.vue +130 -60
- package/dist/runtime/components/DatePicker.vue.d.ts +32 -23
- package/dist/runtime/components/Drawer.d.vue.ts +2 -0
- package/dist/runtime/components/Drawer.vue +21 -8
- package/dist/runtime/components/Drawer.vue.d.ts +2 -0
- package/dist/runtime/components/DrawerRenderer.vue +28 -21
- package/dist/runtime/components/Dropdown.d.vue.ts +14 -4
- package/dist/runtime/components/Dropdown.vue +19 -4
- package/dist/runtime/components/Dropdown.vue.d.ts +14 -4
- package/dist/runtime/components/FileTree.d.vue.ts +3 -0
- package/dist/runtime/components/FileTree.vue +7 -3
- package/dist/runtime/components/FileTree.vue.d.ts +3 -0
- package/dist/runtime/components/FileUpload.d.vue.ts +2 -1
- package/dist/runtime/components/FileUpload.vue +75 -32
- package/dist/runtime/components/FileUpload.vue.d.ts +2 -1
- package/dist/runtime/components/FormField.d.vue.ts +2 -0
- package/dist/runtime/components/FormField.vue +12 -9
- package/dist/runtime/components/FormField.vue.d.ts +2 -0
- package/dist/runtime/components/Icon.d.vue.ts +2 -4
- package/dist/runtime/components/Icon.vue +7 -2
- package/dist/runtime/components/Icon.vue.d.ts +2 -4
- package/dist/runtime/components/Input.d.vue.ts +2 -1
- package/dist/runtime/components/Input.vue +12 -6
- package/dist/runtime/components/Input.vue.d.ts +2 -1
- package/dist/runtime/components/InputNumber.d.vue.ts +4 -1
- package/dist/runtime/components/InputNumber.vue +21 -8
- package/dist/runtime/components/InputNumber.vue.d.ts +4 -1
- package/dist/runtime/components/Modal.d.vue.ts +2 -0
- package/dist/runtime/components/Modal.vue +21 -8
- package/dist/runtime/components/Modal.vue.d.ts +2 -0
- package/dist/runtime/components/ModalRenderer.vue +23 -16
- package/dist/runtime/components/NavigationMenu.d.vue.ts +2 -4
- package/dist/runtime/components/NavigationMenu.vue +8 -4
- package/dist/runtime/components/NavigationMenu.vue.d.ts +2 -4
- package/dist/runtime/components/NavigationMenuAccordionItem.d.vue.ts +2 -4
- package/dist/runtime/components/NavigationMenuAccordionItem.vue +5 -3
- package/dist/runtime/components/NavigationMenuAccordionItem.vue.d.ts +2 -4
- package/dist/runtime/components/NavigationMenuFlyoutList.d.vue.ts +2 -4
- package/dist/runtime/components/NavigationMenuFlyoutList.vue +7 -4
- package/dist/runtime/components/NavigationMenuFlyoutList.vue.d.ts +2 -4
- package/dist/runtime/components/NavigationMenuFlyoutTrigger.d.vue.ts +2 -4
- package/dist/runtime/components/NavigationMenuFlyoutTrigger.vue +9 -2
- package/dist/runtime/components/NavigationMenuFlyoutTrigger.vue.d.ts +2 -4
- package/dist/runtime/components/Pagination.d.vue.ts +3 -2
- package/dist/runtime/components/Pagination.vue.d.ts +3 -2
- package/dist/runtime/components/PinInput.d.vue.ts +2 -1
- package/dist/runtime/components/PinInput.vue +17 -6
- package/dist/runtime/components/PinInput.vue.d.ts +2 -1
- package/dist/runtime/components/Popover.d.vue.ts +2 -0
- package/dist/runtime/components/Popover.vue +14 -7
- package/dist/runtime/components/Popover.vue.d.ts +2 -0
- package/dist/runtime/components/Progress.d.vue.ts +2 -1
- package/dist/runtime/components/Progress.vue +6 -4
- package/dist/runtime/components/Progress.vue.d.ts +2 -1
- package/dist/runtime/components/ProseH1.d.vue.ts +2 -0
- package/dist/runtime/components/ProseH1.vue +7 -4
- package/dist/runtime/components/ProseH1.vue.d.ts +2 -0
- package/dist/runtime/components/ProseH2.d.vue.ts +2 -0
- package/dist/runtime/components/ProseH2.vue +7 -4
- package/dist/runtime/components/ProseH2.vue.d.ts +2 -0
- package/dist/runtime/components/ProseH3.d.vue.ts +2 -0
- package/dist/runtime/components/ProseH3.vue +7 -4
- package/dist/runtime/components/ProseH3.vue.d.ts +2 -0
- package/dist/runtime/components/ProseH4.d.vue.ts +2 -0
- package/dist/runtime/components/ProseH4.vue +7 -4
- package/dist/runtime/components/ProseH4.vue.d.ts +2 -0
- package/dist/runtime/components/ProseH5.d.vue.ts +2 -0
- package/dist/runtime/components/ProseH5.vue +7 -4
- package/dist/runtime/components/ProseH5.vue.d.ts +2 -0
- package/dist/runtime/components/ProseH6.d.vue.ts +2 -0
- package/dist/runtime/components/ProseH6.vue +7 -4
- package/dist/runtime/components/ProseH6.vue.d.ts +2 -0
- package/dist/runtime/components/ProsePre.d.vue.ts +4 -2
- package/dist/runtime/components/ProsePre.vue +9 -3
- package/dist/runtime/components/ProsePre.vue.d.ts +4 -2
- package/dist/runtime/components/RadioGroup.d.vue.ts +2 -1
- package/dist/runtime/components/RadioGroup.vue +9 -5
- package/dist/runtime/components/RadioGroup.vue.d.ts +2 -1
- package/dist/runtime/components/Rating.d.vue.ts +2 -1
- package/dist/runtime/components/Rating.vue +4 -1
- package/dist/runtime/components/Rating.vue.d.ts +2 -1
- package/dist/runtime/components/ReadMore.d.vue.ts +3 -0
- package/dist/runtime/components/ReadMore.vue +24 -6
- package/dist/runtime/components/ReadMore.vue.d.ts +3 -0
- package/dist/runtime/components/Select.d.vue.ts +21 -57
- package/dist/runtime/components/Select.vue +58 -9
- package/dist/runtime/components/Select.vue.d.ts +21 -57
- package/dist/runtime/components/Separator.d.vue.ts +2 -1
- package/dist/runtime/components/Separator.vue +4 -2
- package/dist/runtime/components/Separator.vue.d.ts +2 -1
- package/dist/runtime/components/Slideover.d.vue.ts +2 -0
- package/dist/runtime/components/Slideover.vue +21 -8
- package/dist/runtime/components/Slideover.vue.d.ts +2 -0
- package/dist/runtime/components/SlideoverRenderer.vue +25 -18
- package/dist/runtime/components/Slider.d.vue.ts +2 -1
- package/dist/runtime/components/Slider.vue +4 -1
- package/dist/runtime/components/Slider.vue.d.ts +2 -1
- package/dist/runtime/components/SplitterResizeHandle.d.vue.ts +3 -0
- package/dist/runtime/components/SplitterResizeHandle.vue +5 -2
- package/dist/runtime/components/SplitterResizeHandle.vue.d.ts +3 -0
- package/dist/runtime/components/Stepper.d.vue.ts +2 -1
- package/dist/runtime/components/Stepper.vue +4 -1
- package/dist/runtime/components/Stepper.vue.d.ts +2 -1
- package/dist/runtime/components/Switch.d.vue.ts +2 -1
- package/dist/runtime/components/Switch.vue +4 -2
- package/dist/runtime/components/Switch.vue.d.ts +2 -1
- package/dist/runtime/components/Table.d.vue.ts +28 -80
- package/dist/runtime/components/Table.vue +25 -13
- package/dist/runtime/components/Table.vue.d.ts +28 -80
- package/dist/runtime/components/Tabs.d.vue.ts +3 -0
- package/dist/runtime/components/Tabs.vue +5 -1
- package/dist/runtime/components/Tabs.vue.d.ts +3 -0
- package/dist/runtime/components/Textarea.d.vue.ts +2 -1
- package/dist/runtime/components/Textarea.vue +11 -6
- package/dist/runtime/components/Textarea.vue.d.ts +2 -1
- package/dist/runtime/components/Theme.d.vue.ts +16 -5
- package/dist/runtime/components/Theme.vue +30 -5
- package/dist/runtime/components/Theme.vue.d.ts +16 -5
- package/dist/runtime/components/Toast.vue +11 -39
- package/dist/runtime/components/Toggle.d.vue.ts +2 -1
- package/dist/runtime/components/Toggle.vue +4 -1
- package/dist/runtime/components/Toggle.vue.d.ts +2 -1
- package/dist/runtime/components/ToggleGroup.d.vue.ts +2 -1
- package/dist/runtime/components/ToggleGroup.vue +4 -1
- package/dist/runtime/components/ToggleGroup.vue.d.ts +2 -1
- package/dist/runtime/components/Tooltip.vue +3 -2
- package/dist/runtime/components/Tree.d.vue.ts +5 -2
- package/dist/runtime/components/Tree.vue +5 -1
- package/dist/runtime/components/Tree.vue.d.ts +5 -2
- package/dist/runtime/composables/use-drawer.d.ts +1 -22
- package/dist/runtime/composables/use-drawer.js +12 -18
- package/dist/runtime/composables/use-form-field.d.ts +1 -0
- package/dist/runtime/composables/use-icons.d.ts +2 -2
- package/dist/runtime/composables/use-icons.js +1 -1
- package/dist/runtime/composables/use-locale.d.ts +2 -2
- package/dist/runtime/composables/use-locale.js +1 -1
- package/dist/runtime/composables/use-media-query.d.ts +6 -8
- package/dist/runtime/composables/use-media-query.js +7 -2
- package/dist/runtime/composables/use-messages.d.ts +2 -2
- package/dist/runtime/composables/use-messages.js +1 -1
- package/dist/runtime/composables/use-modal.d.ts +1 -17
- package/dist/runtime/composables/use-modal.js +12 -18
- package/dist/runtime/composables/use-ripple.d.ts +2 -2
- package/dist/runtime/composables/use-ripple.js +1 -1
- package/dist/runtime/composables/use-slideover.d.ts +1 -19
- package/dist/runtime/composables/use-slideover.js +12 -18
- package/dist/runtime/composables/use-table.d.ts +74 -17
- package/dist/runtime/composables/use-table.js +4 -1
- package/dist/runtime/composables/use-toast.d.ts +8 -8
- package/dist/runtime/composables/use-toast.js +9 -11
- package/dist/runtime/default-color-metadata.d.ts +4 -0
- package/dist/runtime/default-color-metadata.js +4 -0
- package/dist/runtime/default-colors.css +1 -0
- package/dist/runtime/internal/ColorPickerBody.d.vue.ts +1 -0
- package/dist/runtime/internal/ColorPickerBody.vue +24 -1
- package/dist/runtime/internal/ColorPickerBody.vue.d.ts +1 -0
- package/dist/runtime/internal/ComboboxSelectBase.d.vue.ts +50 -46
- package/dist/runtime/internal/ComboboxSelectBase.vue +340 -93
- package/dist/runtime/internal/ComboboxSelectBase.vue.d.ts +50 -46
- package/dist/runtime/internal/ComboboxSelectBody.d.vue.ts +29 -23
- package/dist/runtime/internal/ComboboxSelectBody.vue +74 -40
- package/dist/runtime/internal/ComboboxSelectBody.vue.d.ts +29 -23
- package/dist/runtime/internal/DatePickerCalendarBody.d.vue.ts +3 -5
- package/dist/runtime/internal/DatePickerCalendarBody.vue +2 -2
- package/dist/runtime/internal/DatePickerCalendarBody.vue.d.ts +3 -5
- package/dist/runtime/internal/DatePickerRangeCalendarBody.d.vue.ts +3 -5
- package/dist/runtime/internal/DatePickerRangeCalendarBody.vue +1 -1
- package/dist/runtime/internal/DatePickerRangeCalendarBody.vue.d.ts +3 -5
- package/dist/runtime/internal/DatePickerTimeBody.d.vue.ts +2 -4
- package/dist/runtime/internal/DatePickerTimeBody.vue.d.ts +2 -4
- package/dist/runtime/internal/ProgrammaticTheme.d.vue.ts +17 -0
- package/dist/runtime/internal/ProgrammaticTheme.vue +41 -0
- package/dist/runtime/internal/ProgrammaticTheme.vue.d.ts +17 -0
- package/dist/runtime/internal/TimeStepper.vue +1 -1
- package/dist/runtime/internal/ToastItemRenderer.d.vue.ts +14 -0
- package/dist/runtime/internal/ToastItemRenderer.vue +54 -0
- package/dist/runtime/internal/ToastItemRenderer.vue.d.ts +14 -0
- package/dist/runtime/internal/combobox-select.d.ts +52 -0
- package/dist/runtime/{composables/use-combobox-select.js → internal/combobox-select.js} +26 -11
- package/dist/runtime/internal/programmatic-services.d.ts +71 -0
- package/dist/runtime/internal/programmatic-services.js +61 -0
- package/dist/runtime/prose.css +1 -1
- package/dist/runtime/structural.css +1 -0
- package/dist/runtime/table.d.ts +3 -0
- package/dist/runtime/table.js +1 -0
- package/dist/runtime/theme/accordion.d.ts +27 -0
- package/dist/runtime/theme/accordion.js +15 -6
- package/dist/runtime/theme/alert-dialog.js +5 -5
- package/dist/runtime/theme/alert.js +6 -15
- package/dist/runtime/theme/avatar-group.js +2 -2
- package/dist/runtime/theme/avatar.js +12 -18
- package/dist/runtime/theme/badge.d.ts +39 -9
- package/dist/runtime/theme/badge.js +11 -40
- package/dist/runtime/theme/breadcrumb.d.ts +29 -47
- package/dist/runtime/theme/breadcrumb.js +16 -5
- package/dist/runtime/theme/button.d.ts +45 -15
- package/dist/runtime/theme/button.js +10 -57
- package/dist/runtime/theme/callout.js +7 -7
- package/dist/runtime/theme/card.js +7 -7
- package/dist/runtime/theme/checkbox.d.ts +21 -84
- package/dist/runtime/theme/checkbox.js +15 -36
- package/dist/runtime/theme/chip.js +4 -22
- package/dist/runtime/theme/code-button.js +2 -2
- package/dist/runtime/theme/code-tree.d.ts +3 -3
- package/dist/runtime/theme/code-tree.js +4 -4
- package/dist/runtime/theme/collapsible.d.ts +27 -0
- package/dist/runtime/theme/collapsible.js +12 -3
- package/dist/runtime/theme/color-picker.d.ts +18 -54
- package/dist/runtime/theme/color-picker.js +19 -18
- package/dist/runtime/theme/command-palette.d.ts +6 -6
- package/dist/runtime/theme/command-palette.js +12 -10
- package/dist/runtime/theme/content-navigation.d.ts +27 -0
- package/dist/runtime/theme/content-navigation.js +14 -5
- package/dist/runtime/theme/content-surround.d.ts +27 -0
- package/dist/runtime/theme/content-surround.js +13 -4
- package/dist/runtime/theme/content-toc.d.ts +27 -0
- package/dist/runtime/theme/content-toc.js +14 -5
- package/dist/runtime/theme/context-menu.js +7 -7
- package/dist/runtime/theme/dashboard-navbar.d.ts +6 -6
- package/dist/runtime/theme/dashboard-navbar.js +2 -2
- package/dist/runtime/theme/dashboard-resize-handle.js +3 -3
- package/dist/runtime/theme/dashboard-sidebar.js +3 -3
- package/dist/runtime/theme/date-picker.js +10 -10
- package/dist/runtime/theme/drawer.js +9 -9
- package/dist/runtime/theme/dropdown.js +7 -7
- package/dist/runtime/theme/file-tree.d.ts +27 -0
- package/dist/runtime/theme/file-tree.js +12 -3
- package/dist/runtime/theme/file-upload.d.ts +18 -72
- package/dist/runtime/theme/file-upload.js +20 -19
- package/dist/runtime/theme/form-field.js +5 -5
- package/dist/runtime/theme/header.d.ts +3 -3
- package/dist/runtime/theme/header.js +1 -1
- package/dist/runtime/theme/icon.d.ts +30 -57
- package/dist/runtime/theme/icon.js +19 -9
- package/dist/runtime/theme/input-number.d.ts +21 -63
- package/dist/runtime/theme/input-number.js +12 -12
- package/dist/runtime/theme/input.d.ts +21 -63
- package/dist/runtime/theme/input.js +12 -12
- package/dist/runtime/theme/kbd.js +1 -1
- package/dist/runtime/theme/modal.js +4 -4
- package/dist/runtime/theme/navigation-menu.d.ts +2 -0
- package/dist/runtime/theme/navigation-menu.js +17 -28
- package/dist/runtime/theme/page-header.js +3 -3
- package/dist/runtime/theme/pagination.js +1 -1
- package/dist/runtime/theme/pin-input.d.ts +21 -63
- package/dist/runtime/theme/pin-input.js +13 -11
- package/dist/runtime/theme/popover.js +2 -2
- package/dist/runtime/theme/progress.d.ts +21 -84
- package/dist/runtime/theme/progress.js +12 -12
- package/dist/runtime/theme/prose.d.ts +35 -50
- package/dist/runtime/theme/prose.js +24 -11
- package/dist/runtime/theme/radio-group.d.ts +21 -84
- package/dist/runtime/theme/radio-group.js +16 -22
- package/dist/runtime/theme/rating.d.ts +21 -63
- package/dist/runtime/theme/rating.js +10 -10
- package/dist/runtime/theme/read-more.d.ts +27 -0
- package/dist/runtime/theme/read-more.js +13 -4
- package/dist/runtime/theme/scroll-area.d.ts +3 -3
- package/dist/runtime/theme/scroll-area.js +2 -2
- package/dist/runtime/theme/select.d.ts +21 -54
- package/dist/runtime/theme/select.js +32 -24
- package/dist/runtime/theme/separator.d.ts +18 -54
- package/dist/runtime/theme/separator.js +16 -12
- package/dist/runtime/theme/skeleton.js +4 -4
- package/dist/runtime/theme/slideover.js +5 -5
- package/dist/runtime/theme/slider.d.ts +21 -84
- package/dist/runtime/theme/slider.js +14 -14
- package/dist/runtime/theme/splitter-resize-handle.d.ts +27 -0
- package/dist/runtime/theme/splitter-resize-handle.js +11 -1
- package/dist/runtime/theme/stepper.d.ts +21 -84
- package/dist/runtime/theme/stepper.js +12 -33
- package/dist/runtime/theme/switch.d.ts +21 -84
- package/dist/runtime/theme/switch.js +13 -13
- package/dist/runtime/theme/table.d.ts +27 -0
- package/dist/runtime/theme/table.js +31 -21
- package/dist/runtime/theme/tabs.d.ts +27 -0
- package/dist/runtime/theme/tabs.js +17 -7
- package/dist/runtime/theme/textarea.d.ts +21 -63
- package/dist/runtime/theme/textarea.js +12 -12
- package/dist/runtime/theme/toast.d.ts +12 -48
- package/dist/runtime/theme/toast.js +9 -9
- package/dist/runtime/theme/toggle-group.js +5 -11
- package/dist/runtime/theme/toggle.js +2 -12
- package/dist/runtime/theme/tooltip.d.ts +3 -3
- package/dist/runtime/theme/tooltip.js +3 -3
- package/dist/runtime/theme/tree.d.ts +27 -0
- package/dist/runtime/theme/tree.js +13 -3
- package/dist/runtime/theme-api.d.ts +15 -0
- package/dist/runtime/theme-api.js +12 -0
- package/dist/runtime/theme-config.d.ts +470 -0
- package/dist/runtime/theme-config.js +0 -0
- package/dist/runtime/theme.css +1 -1
- package/dist/runtime/types/app-config.d.ts +11 -8
- package/dist/runtime/types/index.d.ts +19 -1
- package/dist/runtime/utils/app-scoped-state.d.ts +2 -0
- package/dist/runtime/utils/app-scoped-state.js +13 -0
- package/dist/runtime/utils/autocomplete-contracts.d.ts +24 -0
- package/dist/runtime/utils/autocomplete-contracts.js +0 -0
- package/dist/runtime/utils/color-registry.d.ts +62 -0
- package/dist/runtime/utils/color-registry.js +191 -0
- package/dist/runtime/utils/dtcg-colors.d.ts +25 -0
- package/dist/runtime/utils/dtcg-colors.js +40 -0
- package/dist/runtime/utils/file-icons.d.ts +8 -0
- package/dist/runtime/utils/file-icons.js +131 -0
- package/dist/runtime/utils/functional-tokens.d.ts +26 -0
- package/dist/runtime/utils/functional-tokens.js +54 -0
- package/dist/runtime/utils/icons.d.ts +3 -0
- package/dist/runtime/utils/icons.js +4 -0
- package/dist/runtime/utils/injection-keys.d.ts +12 -3
- package/dist/runtime/utils/native-input.d.ts +5 -0
- package/dist/runtime/utils/native-input.js +32 -0
- package/dist/runtime/utils/navigation-menu.d.ts +3 -0
- package/dist/runtime/utils/programmatic-theme.d.ts +17 -0
- package/dist/runtime/utils/programmatic-theme.js +59 -0
- package/dist/runtime/utils/registered-colors.d.ts +3 -0
- package/dist/runtime/utils/registered-colors.js +14 -0
- package/dist/runtime/utils/seed-colors.d.ts +19 -0
- package/dist/runtime/utils/seed-colors.js +207 -0
- package/dist/runtime/utils/select-contracts.d.ts +101 -0
- package/dist/runtime/utils/select-contracts.js +0 -0
- package/dist/runtime/utils/table-contracts.d.ts +60 -0
- package/dist/runtime/utils/table-contracts.js +0 -0
- package/dist/runtime/utils/ui.d.ts +26 -4
- package/dist/runtime/utils/ui.js +38 -5
- package/dist/tokens/default-colors.tokens.json +879 -0
- package/package.json +83 -16
- package/dist/runtime/composables/use-combobox-select.d.ts +0 -45
|
@@ -1,23 +1,25 @@
|
|
|
1
1
|
import { tv } from "tailwind-variants";
|
|
2
2
|
export const commandPaletteTheme = tv({
|
|
3
3
|
slots: {
|
|
4
|
-
overlay: "fixed inset-0 z-[var(--
|
|
4
|
+
overlay: "fixed inset-0 z-[var(--selaras-resolved-z-modal-overlay)] bg-[var(--selaras-resolved-scrim)] data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0",
|
|
5
5
|
// Top-anchored (not vertically centered like Modal) - the conventional
|
|
6
6
|
// command-palette position, and it means the dialog doesn't visibly
|
|
7
7
|
// jump up and down as the result list grows/shrinks while typing.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
// The search input is the palette's only editor. Keep focus local to the
|
|
9
|
+
// editor rather than tinting the palette's whole dialog frame or divider.
|
|
10
|
+
content: "fixed left-1/2 top-24 z-[var(--selaras-resolved-z-modal)] flex max-h-[min(28rem,calc(100vh-8rem))] w-[calc(100%-2rem)] max-w-lg -translate-x-1/2 flex-col overflow-hidden rounded-[var(--selaras-resolved-radius-lg)] bg-[var(--selaras-resolved-surface-default)] shadow-[var(--selaras-resolved-shadow-lg)] focus:outline-none data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",
|
|
11
|
+
header: "flex shrink-0 items-center gap-2 border-b border-[var(--selaras-resolved-border-default)] px-4",
|
|
12
|
+
searchIcon: "size-4.5 shrink-0 text-[var(--selaras-resolved-text-muted)]",
|
|
13
|
+
input: "h-12 flex-1 rounded-[var(--selaras-resolved-radius-sm)] bg-transparent text-sm text-[var(--selaras-resolved-text-default)] placeholder:text-[var(--selaras-resolved-text-muted)] outline-none focus-visible:outline-2 focus-visible:outline-offset-[-2px] focus-visible:outline-[var(--_selaras-color-focus)]",
|
|
12
14
|
list: "flex-1 overflow-y-auto p-1",
|
|
13
15
|
group: "py-1",
|
|
14
|
-
groupLabel: "px-2 py-1 text-xs font-medium text-[var(--
|
|
15
|
-
item: "flex items-center gap-2 rounded-[var(--
|
|
16
|
-
itemIcon: "size-4 shrink-0 text-[var(--
|
|
16
|
+
groupLabel: "px-2 py-1 text-xs font-medium text-[var(--selaras-resolved-text-muted)]",
|
|
17
|
+
item: "flex items-center gap-2 rounded-[var(--selaras-resolved-radius-sm)] px-2 py-2 text-sm text-[var(--selaras-resolved-text-default)] cursor-pointer select-none outline-none data-[highlighted]:bg-[var(--selaras-resolved-surface-elevated)] data-[disabled]:opacity-50 data-[disabled]:pointer-events-none",
|
|
18
|
+
itemIcon: "size-4 shrink-0 text-[var(--selaras-resolved-text-muted)]",
|
|
17
19
|
itemLabel: "flex-1",
|
|
18
20
|
itemShortcut: "flex shrink-0 items-center gap-1",
|
|
19
|
-
empty: "p-6 text-center text-sm text-[var(--
|
|
20
|
-
footer: "flex shrink-0 items-center gap-3 border-t border-[var(--
|
|
21
|
+
empty: "p-6 text-center text-sm text-[var(--selaras-resolved-text-muted)]",
|
|
22
|
+
footer: "flex shrink-0 items-center gap-3 border-t border-[var(--selaras-resolved-border-default)] px-3 py-2 text-xs text-[var(--selaras-resolved-text-muted)]",
|
|
21
23
|
footerKey: "flex items-center gap-1"
|
|
22
24
|
}
|
|
23
25
|
});
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
export declare const contentNavigationTheme: import("tailwind-variants").TVReturnType<{
|
|
2
|
+
color: {
|
|
3
|
+
primary: "";
|
|
4
|
+
neutral: "";
|
|
5
|
+
secondary: "";
|
|
6
|
+
success: "";
|
|
7
|
+
danger: "";
|
|
8
|
+
info: "";
|
|
9
|
+
warning: "";
|
|
10
|
+
};
|
|
2
11
|
isNested: {
|
|
3
12
|
true: {
|
|
4
13
|
item: string;
|
|
@@ -14,6 +23,15 @@ export declare const contentNavigationTheme: import("tailwind-variants").TVRetur
|
|
|
14
23
|
chevron: string;
|
|
15
24
|
content: string;
|
|
16
25
|
}, undefined, {
|
|
26
|
+
color: {
|
|
27
|
+
primary: "";
|
|
28
|
+
neutral: "";
|
|
29
|
+
secondary: "";
|
|
30
|
+
success: "";
|
|
31
|
+
danger: "";
|
|
32
|
+
info: "";
|
|
33
|
+
warning: "";
|
|
34
|
+
};
|
|
17
35
|
isNested: {
|
|
18
36
|
true: {
|
|
19
37
|
item: string;
|
|
@@ -29,6 +47,15 @@ export declare const contentNavigationTheme: import("tailwind-variants").TVRetur
|
|
|
29
47
|
chevron: string;
|
|
30
48
|
content: string;
|
|
31
49
|
}, import("tailwind-variants").TVReturnTypeLike<{
|
|
50
|
+
color: {
|
|
51
|
+
primary: "";
|
|
52
|
+
neutral: "";
|
|
53
|
+
secondary: "";
|
|
54
|
+
success: "";
|
|
55
|
+
danger: "";
|
|
56
|
+
info: "";
|
|
57
|
+
warning: "";
|
|
58
|
+
};
|
|
32
59
|
isNested: {
|
|
33
60
|
true: {
|
|
34
61
|
item: string;
|
|
@@ -6,13 +6,13 @@ export const contentNavigationTheme = tv({
|
|
|
6
6
|
// py-2.5 (+ text-sm's 20px line-height) lands close to the 44px touch
|
|
7
7
|
// target guideline without doubling the sidebar's height the way a
|
|
8
8
|
// literal py-3 would across ~40 entries.
|
|
9
|
-
link: "flex items-center gap-2 rounded-[var(--
|
|
10
|
-
linkActive: "flex items-center gap-2 rounded-[var(--
|
|
11
|
-
trigger: "group flex w-full items-center justify-between gap-2 rounded-[var(--
|
|
9
|
+
link: "flex items-center gap-2 rounded-[var(--selaras-resolved-radius-sm)] px-2 py-2.5 text-[var(--selaras-resolved-text-muted)] transition-colors hover:bg-[var(--selaras-resolved-surface-elevated)] hover:text-[var(--selaras-resolved-text-default)]",
|
|
10
|
+
linkActive: "flex items-center gap-2 rounded-[var(--selaras-resolved-radius-sm)] bg-[var(--_selaras-color-subtle)] px-2 py-2.5 text-[var(--_selaras-color-text)]",
|
|
11
|
+
trigger: "group flex w-full items-center justify-between gap-2 rounded-[var(--selaras-resolved-radius-sm)] px-2 py-2.5 text-start font-medium text-[var(--selaras-resolved-text-default)] transition-colors hover:bg-[var(--selaras-resolved-surface-elevated)]",
|
|
12
12
|
// A separate slot from label - this styles the icon a link/group-header
|
|
13
13
|
// shows before its title, not the title text itself.
|
|
14
|
-
icon: "size-4 shrink-0 text-[var(--
|
|
15
|
-
chevron: "size-4 shrink-0 text-[var(--
|
|
14
|
+
icon: "size-4 shrink-0 text-[var(--selaras-resolved-text-muted)]",
|
|
15
|
+
chevron: "size-4 shrink-0 text-[var(--selaras-resolved-text-muted)] transition-transform group-data-[state=open]:rotate-180",
|
|
16
16
|
// `ps-4` (16px) reserves the gutter each child's own trunk segment
|
|
17
17
|
// and elbow (on the `item` slot above) reach back into - the trunk
|
|
18
18
|
// line itself has no presence here at all, see theme.css's own
|
|
@@ -20,6 +20,15 @@ export const contentNavigationTheme = tv({
|
|
|
20
20
|
content: "ms-3 flex flex-col gap-0.5 ps-4"
|
|
21
21
|
},
|
|
22
22
|
variants: {
|
|
23
|
+
color: {
|
|
24
|
+
primary: "",
|
|
25
|
+
neutral: "",
|
|
26
|
+
secondary: "",
|
|
27
|
+
success: "",
|
|
28
|
+
danger: "",
|
|
29
|
+
info: "",
|
|
30
|
+
warning: ""
|
|
31
|
+
},
|
|
23
32
|
// ContentNavigation.vue recurses into itself for every nested group,
|
|
24
33
|
// reusing this exact same `item` slot at every depth - unlike
|
|
25
34
|
// NavigationMenu's own `item`/`childItem` (genuinely different slot
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
export declare const contentSurroundTheme: import("tailwind-variants").TVReturnType<{
|
|
2
|
+
color: {
|
|
3
|
+
primary: "";
|
|
4
|
+
neutral: "";
|
|
5
|
+
secondary: "";
|
|
6
|
+
success: "";
|
|
7
|
+
danger: "";
|
|
8
|
+
info: "";
|
|
9
|
+
warning: "";
|
|
10
|
+
};
|
|
2
11
|
align: {
|
|
3
12
|
start: {
|
|
4
13
|
link: string;
|
|
@@ -16,6 +25,15 @@ export declare const contentSurroundTheme: import("tailwind-variants").TVReturnT
|
|
|
16
25
|
icon: string;
|
|
17
26
|
title: string;
|
|
18
27
|
}, undefined, {
|
|
28
|
+
color: {
|
|
29
|
+
primary: "";
|
|
30
|
+
neutral: "";
|
|
31
|
+
secondary: "";
|
|
32
|
+
success: "";
|
|
33
|
+
danger: "";
|
|
34
|
+
info: "";
|
|
35
|
+
warning: "";
|
|
36
|
+
};
|
|
19
37
|
align: {
|
|
20
38
|
start: {
|
|
21
39
|
link: string;
|
|
@@ -33,6 +51,15 @@ export declare const contentSurroundTheme: import("tailwind-variants").TVReturnT
|
|
|
33
51
|
icon: string;
|
|
34
52
|
title: string;
|
|
35
53
|
}, import("tailwind-variants").TVReturnTypeLike<{
|
|
54
|
+
color: {
|
|
55
|
+
primary: "";
|
|
56
|
+
neutral: "";
|
|
57
|
+
secondary: "";
|
|
58
|
+
success: "";
|
|
59
|
+
danger: "";
|
|
60
|
+
info: "";
|
|
61
|
+
warning: "";
|
|
62
|
+
};
|
|
36
63
|
align: {
|
|
37
64
|
start: {
|
|
38
65
|
link: string;
|
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
import { tv } from "tailwind-variants";
|
|
2
2
|
export const contentSurroundTheme = tv({
|
|
3
3
|
slots: {
|
|
4
|
-
root: "grid grid-cols-2 gap-4 border-t border-[var(--
|
|
5
|
-
link: "group flex flex-col gap-1 rounded-[var(--
|
|
6
|
-
label: "flex items-center gap-1 text-xs font-medium text-[var(--
|
|
4
|
+
root: "grid grid-cols-2 gap-4 border-t border-[var(--selaras-resolved-border-default)] pt-6",
|
|
5
|
+
link: "group flex flex-col gap-1 rounded-[var(--selaras-resolved-radius-md)] border border-[var(--selaras-resolved-border-default)] p-4 transition-colors hover:border-[var(--_selaras-color-border)] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--_selaras-color-focus)]",
|
|
6
|
+
label: "flex items-center gap-1 text-xs font-medium text-[var(--selaras-resolved-text-muted)]",
|
|
7
7
|
icon: "size-3.5 shrink-0 rtl:rotate-180",
|
|
8
|
-
title: "text-sm font-medium text-[var(--
|
|
8
|
+
title: "text-sm font-medium text-[var(--selaras-resolved-text-default)] transition-colors group-hover:text-[var(--_selaras-color-text)]"
|
|
9
9
|
},
|
|
10
10
|
variants: {
|
|
11
|
+
color: {
|
|
12
|
+
primary: "",
|
|
13
|
+
neutral: "",
|
|
14
|
+
secondary: "",
|
|
15
|
+
success: "",
|
|
16
|
+
danger: "",
|
|
17
|
+
info: "",
|
|
18
|
+
warning: ""
|
|
19
|
+
},
|
|
11
20
|
// `next` right-aligns its own text and flips the label's icon+text
|
|
12
21
|
// order (icon trailing, not leading) - `prev`/`next` read as mirror
|
|
13
22
|
// images of each other, not two copies of the same layout.
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
export declare const contentTocTheme: import("tailwind-variants").TVReturnType<{
|
|
2
|
+
color: {
|
|
3
|
+
primary: "";
|
|
4
|
+
neutral: "";
|
|
5
|
+
secondary: "";
|
|
6
|
+
success: "";
|
|
7
|
+
danger: "";
|
|
8
|
+
info: "";
|
|
9
|
+
warning: "";
|
|
10
|
+
};
|
|
2
11
|
active: {
|
|
3
12
|
true: {
|
|
4
13
|
link: string;
|
|
@@ -17,6 +26,15 @@ export declare const contentTocTheme: import("tailwind-variants").TVReturnType<{
|
|
|
17
26
|
railSegments: string;
|
|
18
27
|
railSegment: string;
|
|
19
28
|
}, undefined, {
|
|
29
|
+
color: {
|
|
30
|
+
primary: "";
|
|
31
|
+
neutral: "";
|
|
32
|
+
secondary: "";
|
|
33
|
+
success: "";
|
|
34
|
+
danger: "";
|
|
35
|
+
info: "";
|
|
36
|
+
warning: "";
|
|
37
|
+
};
|
|
20
38
|
active: {
|
|
21
39
|
true: {
|
|
22
40
|
link: string;
|
|
@@ -35,6 +53,15 @@ export declare const contentTocTheme: import("tailwind-variants").TVReturnType<{
|
|
|
35
53
|
railSegments: string;
|
|
36
54
|
railSegment: string;
|
|
37
55
|
}, import("tailwind-variants").TVReturnTypeLike<{
|
|
56
|
+
color: {
|
|
57
|
+
primary: "";
|
|
58
|
+
neutral: "";
|
|
59
|
+
secondary: "";
|
|
60
|
+
success: "";
|
|
61
|
+
danger: "";
|
|
62
|
+
info: "";
|
|
63
|
+
warning: "";
|
|
64
|
+
};
|
|
38
65
|
active: {
|
|
39
66
|
true: {
|
|
40
67
|
link: string;
|
|
@@ -2,7 +2,7 @@ import { tv } from "tailwind-variants";
|
|
|
2
2
|
export const contentTocTheme = tv({
|
|
3
3
|
slots: {
|
|
4
4
|
root: "flex flex-col gap-2 text-sm",
|
|
5
|
-
title: "font-medium text-[var(--
|
|
5
|
+
title: "font-medium text-[var(--selaras-resolved-text-default)]",
|
|
6
6
|
// relative + start padding reserves room for the rail (an absolutely
|
|
7
7
|
// positioned box, sized/placed entirely by ContentToc.vue's JS
|
|
8
8
|
// measurement - this only wraps the <ul>, not the title, matching the
|
|
@@ -14,7 +14,7 @@ export const contentTocTheme = tv({
|
|
|
14
14
|
// supplementary "on this page" list, not primary navigation - but
|
|
15
15
|
// still meaningfully bigger than the original py-0.5. No left
|
|
16
16
|
// border/padding for the indicator anymore - the rail owns that job.
|
|
17
|
-
link: "block py-1.5 text-[var(--
|
|
17
|
+
link: "block py-1.5 text-[var(--selaras-resolved-text-muted)] transition-colors hover:text-[var(--selaras-resolved-text-default)] focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--_selaras-color-focus)]",
|
|
18
18
|
content: "ms-3 flex flex-col gap-1",
|
|
19
19
|
// The rail is a single continuous "wire" connecting every heading
|
|
20
20
|
// (not just the active one), drawn as an SVG path and applied as a
|
|
@@ -25,17 +25,26 @@ export const contentTocTheme = tv({
|
|
|
25
25
|
// Two masked divs share that same path shape:
|
|
26
26
|
railContainer: "absolute start-0 top-0 rtl:-scale-x-100",
|
|
27
27
|
// - a faint always-visible track (the full path, every heading).
|
|
28
|
-
railTrack: "absolute inset-0 bg-[var(--
|
|
28
|
+
railTrack: "absolute inset-0 bg-[var(--selaras-resolved-text-muted)]/25",
|
|
29
29
|
// - a primary-colored overlay, masked identically, whose own child
|
|
30
30
|
// blocks (railSegment, one per contiguous run of active headings)
|
|
31
31
|
// only paint where they fall within the path - so the "lit"
|
|
32
32
|
// portion follows the same curves as the track under it.
|
|
33
33
|
railSegments: "absolute inset-0",
|
|
34
|
-
railSegment: "absolute w-full bg-[var(--
|
|
34
|
+
railSegment: "absolute w-full bg-[var(--_selaras-color-fill)] transition-[top,height] duration-200 ease-out"
|
|
35
35
|
},
|
|
36
36
|
variants: {
|
|
37
|
+
color: {
|
|
38
|
+
primary: "",
|
|
39
|
+
neutral: "",
|
|
40
|
+
secondary: "",
|
|
41
|
+
success: "",
|
|
42
|
+
danger: "",
|
|
43
|
+
info: "",
|
|
44
|
+
warning: ""
|
|
45
|
+
},
|
|
37
46
|
active: {
|
|
38
|
-
true: { link: "text-[var(--
|
|
47
|
+
true: { link: "text-[var(--_selaras-color-text)]" }
|
|
39
48
|
}
|
|
40
49
|
}
|
|
41
50
|
});
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { tv } from "tailwind-variants";
|
|
2
2
|
export const contextMenuTheme = tv({
|
|
3
3
|
slots: {
|
|
4
|
-
// Same transient-popover layering tier as Dropdown - --
|
|
4
|
+
// Same transient-popover layering tier as Dropdown - --selaras-resolved-z-dropdown,
|
|
5
5
|
// not a separate token of its own.
|
|
6
|
-
content: "z-[var(--
|
|
7
|
-
item: "flex items-center gap-2 rounded-[var(--
|
|
8
|
-
icon: "size-4 shrink-0 text-[var(--
|
|
9
|
-
separator: "-mx-1 my-1 h-px bg-[var(--
|
|
6
|
+
content: "z-[var(--selaras-resolved-z-dropdown)] min-w-40 rounded-[var(--selaras-resolved-radius-md)] bg-[var(--selaras-resolved-surface-default)] p-1 shadow-[var(--selaras-resolved-shadow-md)] ring-1 ring-[var(--selaras-resolved-border-default)] data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",
|
|
7
|
+
item: "flex items-center gap-2 rounded-[var(--selaras-resolved-radius-sm)] px-2 py-1.5 text-sm text-[var(--selaras-resolved-text-default)] cursor-pointer select-none outline-none data-[highlighted]:bg-[var(--selaras-resolved-surface-elevated)] data-[disabled]:opacity-50 data-[disabled]:pointer-events-none",
|
|
8
|
+
icon: "size-4 shrink-0 text-[var(--selaras-resolved-text-muted)]",
|
|
9
|
+
separator: "-mx-1 my-1 h-px bg-[var(--selaras-resolved-border-default)]"
|
|
10
10
|
},
|
|
11
11
|
variants: {
|
|
12
12
|
// For a delete/remove-style action - same single flag Dropdown's own
|
|
13
13
|
// theme uses, rather than the full 7-color palette Badge/Chip expose.
|
|
14
14
|
destructive: {
|
|
15
15
|
true: {
|
|
16
|
-
item: "text-[var(--
|
|
17
|
-
icon: "text-
|
|
16
|
+
item: "text-[var(--selaras-resolved-color-danger-text)] data-[highlighted]:bg-[var(--selaras-resolved-color-danger-subtle-hover)] data-[highlighted]:text-[var(--selaras-resolved-color-danger-on-subtle)]",
|
|
17
|
+
icon: "text-current"
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -2,18 +2,18 @@ export declare const dashboardNavbarTheme: import("tailwind-variants").TVReturnT
|
|
|
2
2
|
[key: string]: {
|
|
3
3
|
[key: string]: import("tailwind-variants").ClassValue | {
|
|
4
4
|
root?: import("tailwind-variants").ClassValue;
|
|
5
|
-
right?: import("tailwind-variants").ClassValue;
|
|
6
|
-
left?: import("tailwind-variants").ClassValue;
|
|
7
5
|
title?: import("tailwind-variants").ClassValue;
|
|
6
|
+
left?: import("tailwind-variants").ClassValue;
|
|
7
|
+
right?: import("tailwind-variants").ClassValue;
|
|
8
8
|
};
|
|
9
9
|
};
|
|
10
10
|
} | {
|
|
11
11
|
[x: string]: {
|
|
12
12
|
[x: string]: import("tailwind-variants").ClassValue | {
|
|
13
13
|
root?: import("tailwind-variants").ClassValue;
|
|
14
|
-
right?: import("tailwind-variants").ClassValue;
|
|
15
|
-
left?: import("tailwind-variants").ClassValue;
|
|
16
14
|
title?: import("tailwind-variants").ClassValue;
|
|
15
|
+
left?: import("tailwind-variants").ClassValue;
|
|
16
|
+
right?: import("tailwind-variants").ClassValue;
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
19
|
} | {}, {
|
|
@@ -25,9 +25,9 @@ export declare const dashboardNavbarTheme: import("tailwind-variants").TVReturnT
|
|
|
25
25
|
[key: string]: {
|
|
26
26
|
[key: string]: import("tailwind-variants").ClassValue | {
|
|
27
27
|
root?: import("tailwind-variants").ClassValue;
|
|
28
|
-
right?: import("tailwind-variants").ClassValue;
|
|
29
|
-
left?: import("tailwind-variants").ClassValue;
|
|
30
28
|
title?: import("tailwind-variants").ClassValue;
|
|
29
|
+
left?: import("tailwind-variants").ClassValue;
|
|
30
|
+
right?: import("tailwind-variants").ClassValue;
|
|
31
31
|
};
|
|
32
32
|
};
|
|
33
33
|
} | {}, {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { tv } from "tailwind-variants";
|
|
2
2
|
export const dashboardNavbarTheme = tv({
|
|
3
3
|
slots: {
|
|
4
|
-
root: "flex h-14 shrink-0 items-center justify-between gap-4 border-b border-[var(--
|
|
4
|
+
root: "flex h-14 shrink-0 items-center justify-between gap-4 border-b border-[var(--selaras-resolved-border-default)] bg-[var(--selaras-resolved-surface-default)] px-4",
|
|
5
5
|
left: "flex min-w-0 items-center gap-2",
|
|
6
|
-
title: "truncate font-medium text-[var(--
|
|
6
|
+
title: "truncate font-medium text-[var(--selaras-resolved-text-default)]",
|
|
7
7
|
right: "flex shrink-0 items-center gap-2"
|
|
8
8
|
}
|
|
9
9
|
});
|
|
@@ -5,13 +5,13 @@ export const dashboardResizeHandleTheme = tv({
|
|
|
5
5
|
// visible line (a comfortable grab target, invisible padding on
|
|
6
6
|
// either side) - harmless when both adjacent panels share one
|
|
7
7
|
// background, but once DashboardSidebar's own root reads as
|
|
8
|
-
// --
|
|
9
|
-
// --
|
|
8
|
+
// --selaras-resolved-surface-elevated (a step apart from DashboardPanel's own plain
|
|
9
|
+
// --selaras-resolved-surface-default), that "invisible" padding stops being invisible: it reads
|
|
10
10
|
// as a sliver of the wrong background bleeding through right at the
|
|
11
11
|
// sidebar's own edge. A background split exactly down the middle -
|
|
12
12
|
// matching each side's real background - makes the hit area blend
|
|
13
13
|
// into whichever panel it happens to be sitting over instead of
|
|
14
14
|
// showing through as its own separate strip.
|
|
15
|
-
root: "bg-[linear-gradient(to_right,var(--
|
|
15
|
+
root: "bg-[linear-gradient(to_right,var(--selaras-resolved-surface-elevated)_50%,var(--selaras-resolved-surface-default)_50%)]"
|
|
16
16
|
}
|
|
17
17
|
});
|
|
@@ -12,14 +12,14 @@ export const dashboardSidebarTheme = tv({
|
|
|
12
12
|
// every pointermove instead, frequently enough that a short duration
|
|
13
13
|
// like this reads as smoothed-out tracking rather than lag, not a
|
|
14
14
|
// rubber-band fight against the cursor.
|
|
15
|
-
// --
|
|
15
|
+
// --selaras-resolved-surface-elevated (not the base --selaras-resolved-surface-default the main content area sits
|
|
16
16
|
// on) - a step darker/lighter than the page background, the same
|
|
17
17
|
// token hover states elsewhere already use for "a surface slightly
|
|
18
18
|
// apart from the page" - gives the sidebar a genuine, real contrast
|
|
19
19
|
// against DashboardPanel's own content instead of both areas reading
|
|
20
20
|
// as one contiguous white/dark surface with only the resize-handle's
|
|
21
21
|
// thin line between them.
|
|
22
|
-
root: "flex h-full flex-col overflow-hidden bg-[var(--
|
|
22
|
+
root: "flex h-full flex-col overflow-hidden bg-[var(--selaras-resolved-surface-elevated)] transition-[flex-grow] duration-200 ease-out",
|
|
23
23
|
// No border, no height lock to DashboardNavbar's own h-14 - an
|
|
24
24
|
// earlier version of this tried exactly that (to fix a real reported
|
|
25
25
|
// bug: the two areas' bottom borders landing a few px apart), but
|
|
@@ -35,6 +35,6 @@ export const dashboardSidebarTheme = tv({
|
|
|
35
35
|
header: "shrink-0 p-4",
|
|
36
36
|
scrollArea: "flex-1 min-h-0",
|
|
37
37
|
body: "p-2",
|
|
38
|
-
footer: "shrink-0 border-t border-[var(--
|
|
38
|
+
footer: "shrink-0 border-t border-[var(--selaras-resolved-border-default)] p-4"
|
|
39
39
|
}
|
|
40
40
|
});
|
|
@@ -10,19 +10,19 @@ export const datePickerTheme = tv({
|
|
|
10
10
|
// slot for why (same fix, same reasoning: hovering while focused is
|
|
11
11
|
// unavoidable here, and would otherwise let the plain gray hover ring
|
|
12
12
|
// beat the primary focus-within ring).
|
|
13
|
-
field: "inline-flex w-full items-center gap-1 rounded-[var(--
|
|
13
|
+
field: "inline-flex w-full items-center gap-1 rounded-[var(--selaras-resolved-radius-md)] bg-[var(--selaras-resolved-surface-default)] ring-1 ring-inset ring-[var(--selaras-resolved-border-default)] transition-[color,background-color,box-shadow] not-focus-within:hover:ring-[var(--selaras-resolved-border-hover)] hover:bg-[var(--selaras-resolved-surface-elevated)] focus-within:ring-2 focus-within:ring-[var(--_selaras-color-focus)] has-[[data-disabled]]:opacity-50 has-[[data-disabled]]:pointer-events-none",
|
|
14
14
|
// rounded-sm + tabular-nums keeps digit width stable as a segment's
|
|
15
15
|
// value changes; the segment itself is the contenteditable element
|
|
16
16
|
// Reka renders, so focus state is real :focus, not a data-attribute.
|
|
17
|
-
segment: "rounded-[var(--
|
|
17
|
+
segment: "rounded-[var(--selaras-resolved-radius-sm)] px-0.5 text-[var(--selaras-resolved-text-default)] tabular-nums outline-none focus:bg-[var(--_selaras-color-subtle)]/15 data-[reka-date-field-segment=literal]:px-0 data-[reka-date-field-segment=literal]:text-[var(--selaras-resolved-text-muted)]",
|
|
18
18
|
// Between the two segment groups in range mode - a plain en dash, not an
|
|
19
19
|
// arrow glyph, so there's nothing directional to mirror under RTL.
|
|
20
|
-
separator: "px-0.5 text-[var(--
|
|
20
|
+
separator: "px-0.5 text-[var(--selaras-resolved-text-muted)]",
|
|
21
21
|
// Copied from theme/dropdown.ts's `content` - the more complete of this
|
|
22
22
|
// library's two floating-panel precedents (directional slide-in, not
|
|
23
23
|
// just fade/zoom).
|
|
24
|
-
content: "z-[var(--
|
|
25
|
-
// The `
|
|
24
|
+
content: "z-[var(--selaras-resolved-z-dropdown)] rounded-[var(--selaras-resolved-radius-md)] bg-[var(--selaras-resolved-surface-default)] p-3 shadow-[var(--selaras-resolved-shadow-md)] ring-1 ring-[var(--selaras-resolved-border-default)] data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",
|
|
25
|
+
// The `adaptive` path's own content wrapper - none of `content`'s
|
|
26
26
|
// own popover chrome (ring/shadow/rounded/animate-in/slide-in, all
|
|
27
27
|
// tied to a data-[side=] this never gets since it isn't Floating-UI
|
|
28
28
|
// positioned) applies here, since Modal's own card already provides
|
|
@@ -30,14 +30,14 @@ export const datePickerTheme = tv({
|
|
|
30
30
|
// wants the same breathing room it gets in the popover.
|
|
31
31
|
mobileContent: "p-3",
|
|
32
32
|
header: "mb-2 flex items-center justify-between gap-2",
|
|
33
|
-
heading: "text-sm font-medium text-[var(--
|
|
33
|
+
heading: "text-sm font-medium text-[var(--selaras-resolved-text-default)]",
|
|
34
34
|
// Wraps one <table> per visible month (numberOfMonths>1, e.g. range
|
|
35
35
|
// mode's default of 2) - without it, multiple month tables just stack
|
|
36
36
|
// vertically (block-level default), not side by side.
|
|
37
37
|
grids: "flex flex-col gap-4 sm:flex-row",
|
|
38
38
|
grid: "w-full border-collapse",
|
|
39
39
|
gridHead: "",
|
|
40
|
-
headCell: "size-8 text-xs font-medium text-[var(--
|
|
40
|
+
headCell: "size-8 text-xs font-medium text-[var(--selaras-resolved-text-muted)]",
|
|
41
41
|
// The <td> wrapper - just spacing, not the day's own look (that's the
|
|
42
42
|
// nested Button inside it, styled directly in DatePicker.vue via a
|
|
43
43
|
// plain :ui override string, same as Pagination's page buttons - no
|
|
@@ -49,8 +49,8 @@ export const datePickerTheme = tv({
|
|
|
49
49
|
viewGrid: "grid grid-cols-3 gap-1",
|
|
50
50
|
// Hour/minute granularity only - sits below the day grid, separated by
|
|
51
51
|
// a divider so it doesn't read as part of the grid itself.
|
|
52
|
-
timeSection: "mt-3 flex items-center justify-center gap-1.5 border-t border-[var(--
|
|
53
|
-
arrow: "fill-[var(--
|
|
52
|
+
timeSection: "mt-3 flex items-center justify-center gap-1.5 border-t border-[var(--selaras-resolved-border-default)] pt-3",
|
|
53
|
+
arrow: "fill-[var(--selaras-resolved-surface-default)] stroke-[var(--selaras-resolved-border-default)] stroke-1"
|
|
54
54
|
},
|
|
55
55
|
variants: {
|
|
56
56
|
size: {
|
|
@@ -59,7 +59,7 @@ export const datePickerTheme = tv({
|
|
|
59
59
|
lg: { field: "h-11 px-3.5 text-base" }
|
|
60
60
|
},
|
|
61
61
|
invalid: {
|
|
62
|
-
true: { field: "ring-[var(--
|
|
62
|
+
true: { field: "ring-[var(--_selaras-color-border)] hover:ring-[var(--_selaras-color-border)] focus-within:ring-[var(--_selaras-color-focus)]" }
|
|
63
63
|
},
|
|
64
64
|
// Range mode's day cells butt up against each other with no horizontal
|
|
65
65
|
// gap, so a highlighted run of days reads as one continuous connected
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { tv } from "tailwind-variants";
|
|
2
2
|
export const drawerTheme = tv({
|
|
3
3
|
slots: {
|
|
4
|
-
overlay: "fixed inset-0 z-[var(--
|
|
5
|
-
content: "fixed z-[var(--
|
|
4
|
+
overlay: "fixed inset-0 z-[var(--selaras-resolved-z-modal-overlay)] bg-[var(--selaras-resolved-scrim)]",
|
|
5
|
+
content: "fixed z-[var(--selaras-resolved-z-modal)] flex flex-col bg-[var(--selaras-resolved-surface-default)] shadow-[var(--selaras-resolved-shadow-lg)] focus:outline-none",
|
|
6
6
|
// A small rounded grip bar - purely visual, signals "draggable" the
|
|
7
7
|
// same way a real bottom sheet's handle does. Centered via the
|
|
8
8
|
// header's own flex row would fight the header's title/close layout,
|
|
9
9
|
// so it gets its own row above everything else instead.
|
|
10
|
-
handle: "mx-auto my-2 h-1.5 w-12 shrink-0 rounded-full bg-[var(--
|
|
10
|
+
handle: "mx-auto my-2 h-1.5 w-12 shrink-0 rounded-full bg-[var(--selaras-resolved-border-default)]",
|
|
11
11
|
header: "flex items-start justify-between gap-4 p-4 sm:px-6",
|
|
12
|
-
title: "text-base font-semibold text-[var(--
|
|
13
|
-
description: "mt-1 text-sm text-[var(--
|
|
12
|
+
title: "text-base font-semibold text-[var(--selaras-resolved-text-default)]",
|
|
13
|
+
description: "mt-1 text-sm text-[var(--selaras-resolved-text-muted)]",
|
|
14
14
|
close: "shrink-0 rounded-full",
|
|
15
15
|
body: "flex-1 overflow-y-auto p-4 sm:px-6",
|
|
16
16
|
footer: "flex items-center justify-end gap-2 p-4 sm:px-6"
|
|
@@ -25,10 +25,10 @@ export const drawerTheme = tv({
|
|
|
25
25
|
// identity, distinct from Slideover's flush-by-default/optional-
|
|
26
26
|
// floating-inset treatment.
|
|
27
27
|
side: {
|
|
28
|
-
top: { content: "rounded-b-[var(--
|
|
29
|
-
bottom: { content: "rounded-t-[var(--
|
|
30
|
-
left: { content: "max-w-md rounded-e-[var(--
|
|
31
|
-
right: { content: "max-w-md rounded-s-[var(--
|
|
28
|
+
top: { content: "rounded-b-[var(--selaras-resolved-radius-lg)]" },
|
|
29
|
+
bottom: { content: "rounded-t-[var(--selaras-resolved-radius-lg)]" },
|
|
30
|
+
left: { content: "max-w-md rounded-e-[var(--selaras-resolved-radius-lg)]" },
|
|
31
|
+
right: { content: "max-w-md rounded-s-[var(--selaras-resolved-radius-lg)]" }
|
|
32
32
|
},
|
|
33
33
|
// See slideover.ts for why this lives entirely in the variant (and
|
|
34
34
|
// compoundVariants below), not the base slot strings - tailwind-merge
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { tv } from "tailwind-variants";
|
|
2
2
|
export const dropdownTheme = tv({
|
|
3
3
|
slots: {
|
|
4
|
-
content: "z-[var(--
|
|
5
|
-
item: "flex items-center gap-2 rounded-[var(--
|
|
6
|
-
icon: "size-4 shrink-0 text-[var(--
|
|
7
|
-
separator: "-mx-1 my-1 h-px bg-[var(--
|
|
8
|
-
arrow: "fill-[var(--
|
|
4
|
+
content: "z-[var(--selaras-resolved-z-dropdown)] min-w-40 rounded-[var(--selaras-resolved-radius-md)] bg-[var(--selaras-resolved-surface-default)] p-1 shadow-[var(--selaras-resolved-shadow-md)] ring-1 ring-[var(--selaras-resolved-border-default)] data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=top]:slide-in-from-bottom-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2",
|
|
5
|
+
item: "flex items-center gap-2 rounded-[var(--selaras-resolved-radius-sm)] px-2 py-1.5 text-sm text-[var(--selaras-resolved-text-default)] cursor-pointer select-none outline-none data-[highlighted]:bg-[var(--selaras-resolved-surface-elevated)] data-[disabled]:opacity-50 data-[disabled]:pointer-events-none",
|
|
6
|
+
icon: "size-4 shrink-0 text-[var(--selaras-resolved-text-muted)]",
|
|
7
|
+
separator: "-mx-1 my-1 h-px bg-[var(--selaras-resolved-border-default)]",
|
|
8
|
+
arrow: "fill-[var(--selaras-resolved-surface-default)] stroke-[var(--selaras-resolved-border-default)] stroke-1"
|
|
9
9
|
},
|
|
10
10
|
variants: {
|
|
11
11
|
// For a delete/remove-style action - deliberately just this one flag
|
|
@@ -13,8 +13,8 @@ export const dropdownTheme = tv({
|
|
|
13
13
|
// item realistically only ever needs this one special case.
|
|
14
14
|
destructive: {
|
|
15
15
|
true: {
|
|
16
|
-
item: "text-[var(--
|
|
17
|
-
icon: "text-
|
|
16
|
+
item: "text-[var(--selaras-resolved-color-danger-text)] data-[highlighted]:bg-[var(--selaras-resolved-color-danger-subtle-hover)] data-[highlighted]:text-[var(--selaras-resolved-color-danger-on-subtle)]",
|
|
17
|
+
icon: "text-current"
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -4,6 +4,15 @@ export declare const fileTreeTheme: import("tailwind-variants").TVReturnType<{
|
|
|
4
4
|
row: string;
|
|
5
5
|
};
|
|
6
6
|
};
|
|
7
|
+
color: {
|
|
8
|
+
primary: "";
|
|
9
|
+
neutral: "";
|
|
10
|
+
secondary: "";
|
|
11
|
+
success: "";
|
|
12
|
+
danger: "";
|
|
13
|
+
info: "";
|
|
14
|
+
warning: "";
|
|
15
|
+
};
|
|
7
16
|
isNested: {
|
|
8
17
|
true: {
|
|
9
18
|
item: string;
|
|
@@ -22,6 +31,15 @@ export declare const fileTreeTheme: import("tailwind-variants").TVReturnType<{
|
|
|
22
31
|
row: string;
|
|
23
32
|
};
|
|
24
33
|
};
|
|
34
|
+
color: {
|
|
35
|
+
primary: "";
|
|
36
|
+
neutral: "";
|
|
37
|
+
secondary: "";
|
|
38
|
+
success: "";
|
|
39
|
+
danger: "";
|
|
40
|
+
info: "";
|
|
41
|
+
warning: "";
|
|
42
|
+
};
|
|
25
43
|
isNested: {
|
|
26
44
|
true: {
|
|
27
45
|
item: string;
|
|
@@ -40,6 +58,15 @@ export declare const fileTreeTheme: import("tailwind-variants").TVReturnType<{
|
|
|
40
58
|
row: string;
|
|
41
59
|
};
|
|
42
60
|
};
|
|
61
|
+
color: {
|
|
62
|
+
primary: "";
|
|
63
|
+
neutral: "";
|
|
64
|
+
secondary: "";
|
|
65
|
+
success: "";
|
|
66
|
+
danger: "";
|
|
67
|
+
info: "";
|
|
68
|
+
warning: "";
|
|
69
|
+
};
|
|
43
70
|
isNested: {
|
|
44
71
|
true: {
|
|
45
72
|
item: string;
|