@skewedaspect/sleekspace-ui 0.2.0-beta.1 → 0.2.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Accordion/SkAccordion.vue.d.ts +65 -0
- package/dist/components/Accordion/SkAccordionItem.vue.d.ts +52 -0
- package/dist/components/Accordion/index.d.ts +3 -0
- package/dist/components/Accordion/types.d.ts +3 -0
- package/dist/components/Alert/SkAlert.vue.d.ts +39 -0
- package/dist/components/Alert/types.d.ts +4 -0
- package/dist/components/Avatar/SkAvatar.vue.d.ts +75 -0
- package/dist/components/Avatar/index.d.ts +2 -0
- package/dist/components/Avatar/types.d.ts +20 -0
- package/dist/components/Breadcrumbs/SkBreadcrumbItem.vue.d.ts +51 -0
- package/dist/components/Breadcrumbs/SkBreadcrumbSeparator.vue.d.ts +13 -0
- package/dist/components/Breadcrumbs/SkBreadcrumbs.vue.d.ts +24 -0
- package/dist/components/Breadcrumbs/index.d.ts +4 -0
- package/dist/components/Breadcrumbs/types.d.ts +18 -0
- package/dist/components/Button/SkButton.vue.d.ts +97 -0
- package/dist/components/Button/types.d.ts +5 -0
- package/dist/components/Card/SkCard.vue.d.ts +88 -0
- package/dist/components/Card/types.d.ts +2 -0
- package/dist/components/Checkbox/SkCheckbox.vue.d.ts +71 -0
- package/dist/components/Checkbox/index.d.ts +2 -0
- package/dist/components/Checkbox/types.d.ts +3 -0
- package/dist/components/Collapsible/SkCollapsible.vue.d.ts +70 -0
- package/dist/components/Collapsible/index.d.ts +2 -0
- package/dist/components/Collapsible/types.d.ts +2 -0
- package/dist/components/Divider/SkDivider.vue.d.ts +39 -0
- package/dist/components/Divider/types.d.ts +8 -0
- package/dist/components/Dropdown/SkDropdown.vue.d.ts +63 -0
- package/dist/components/Dropdown/SkDropdownMenuItem.vue.d.ts +32 -0
- package/dist/components/Dropdown/SkDropdownMenuSeparator.vue.d.ts +2 -0
- package/dist/components/Dropdown/SkDropdownSubmenu.vue.d.ts +34 -0
- package/dist/components/Dropdown/index.d.ts +5 -0
- package/dist/components/Dropdown/types.d.ts +4 -0
- package/dist/components/Field/SkField.vue.d.ts +99 -0
- package/dist/components/Field/index.d.ts +2 -0
- package/dist/components/Field/types.d.ts +1 -0
- package/dist/components/Group/SkGroup.vue.d.ts +29 -0
- package/dist/components/Group/types.d.ts +4 -0
- package/dist/components/Input/SkInput.vue.d.ts +84 -0
- package/dist/components/Input/index.d.ts +2 -0
- package/dist/components/Input/types.d.ts +4 -0
- package/dist/components/Listbox/SkListbox.vue.d.ts +62 -0
- package/dist/components/Listbox/SkListboxItem.vue.d.ts +34 -0
- package/dist/components/Listbox/SkListboxSeparator.vue.d.ts +2 -0
- package/dist/components/Listbox/index.d.ts +4 -0
- package/dist/components/Listbox/types.d.ts +3 -0
- package/dist/components/Modal/SkModal.vue.d.ts +108 -0
- package/dist/components/Modal/index.d.ts +2 -0
- package/dist/components/Modal/types.d.ts +3 -0
- package/dist/components/NavBar/SkNavBar.vue.d.ts +40 -0
- package/dist/components/NavBar/index.d.ts +2 -0
- package/dist/components/NavBar/types.d.ts +6 -0
- package/dist/components/NumberInput/SkNumberInput.vue.d.ts +93 -0
- package/dist/components/NumberInput/index.d.ts +2 -0
- package/dist/components/NumberInput/types.d.ts +3 -0
- package/dist/components/Page/SkPage.vue.d.ts +55 -0
- package/dist/components/Page/index.d.ts +2 -0
- package/dist/components/Page/types.d.ts +13 -0
- package/dist/components/Pagination/SkPagination.vue.d.ts +79 -0
- package/dist/components/Pagination/SkPaginationItem.vue.d.ts +44 -0
- package/dist/components/Pagination/index.d.ts +3 -0
- package/dist/components/Pagination/types.d.ts +24 -0
- package/dist/components/Panel/SkPanel.vue.d.ts +55 -0
- package/dist/components/Panel/types.d.ts +3 -0
- package/dist/components/Popover/SkPopover.vue.d.ts +94 -0
- package/dist/components/Popover/index.d.ts +2 -0
- package/dist/components/Popover/types.d.ts +4 -0
- package/dist/components/Progress/SkProgress.vue.d.ts +66 -0
- package/dist/components/Progress/index.d.ts +2 -0
- package/dist/components/Progress/types.d.ts +22 -0
- package/dist/components/Radio/SkRadio.vue.d.ts +59 -0
- package/dist/components/Radio/SkRadioGroup.vue.d.ts +85 -0
- package/dist/components/Radio/index.d.ts +3 -0
- package/dist/components/Radio/types.d.ts +4 -0
- package/dist/components/Sidebar/SkSidebar.vue.d.ts +38 -0
- package/dist/components/Sidebar/SkSidebarItem.vue.d.ts +37 -0
- package/dist/components/Sidebar/SkSidebarSection.vue.d.ts +44 -0
- package/dist/components/Sidebar/types.d.ts +2 -0
- package/dist/components/Skeleton/SkSkeleton.vue.d.ts +55 -0
- package/dist/components/Skeleton/index.d.ts +2 -0
- package/dist/components/Skeleton/types.d.ts +21 -0
- package/dist/components/Slider/SkSlider.vue.d.ts +100 -0
- package/dist/components/Slider/index.d.ts +2 -0
- package/dist/components/Slider/types.d.ts +32 -0
- package/dist/components/Spinner/SkSpinner.vue.d.ts +39 -0
- package/dist/components/Spinner/index.d.ts +2 -0
- package/dist/components/Spinner/types.d.ts +16 -0
- package/dist/components/Switch/SkSwitch.vue.d.ts +120 -0
- package/dist/components/Switch/index.d.ts +2 -0
- package/dist/components/Switch/types.d.ts +3 -0
- package/dist/components/Table/SkTable.vue.d.ts +86 -0
- package/dist/components/Table/index.d.ts +2 -0
- package/dist/components/Table/types.d.ts +3 -0
- package/dist/components/Tabs/SkTab.vue.d.ts +49 -0
- package/dist/components/Tabs/SkTabList.vue.d.ts +28 -0
- package/dist/components/Tabs/SkTabPanel.vue.d.ts +33 -0
- package/dist/components/Tabs/SkTabPanels.vue.d.ts +17 -0
- package/dist/components/Tabs/SkTabs.vue.d.ts +60 -0
- package/dist/components/Tabs/types.d.ts +5 -0
- package/dist/components/Tag/SkTag.vue.d.ts +58 -0
- package/dist/components/Tag/types.d.ts +8 -0
- package/dist/components/TagsInput/SkTagsInput.vue.d.ts +77 -0
- package/dist/components/TagsInput/index.d.ts +2 -0
- package/dist/components/TagsInput/types.d.ts +3 -0
- package/dist/components/Textarea/SkTextarea.vue.d.ts +85 -0
- package/dist/components/Textarea/index.d.ts +2 -0
- package/dist/components/Textarea/types.d.ts +3 -0
- package/dist/components/Theme/SkTheme.vue.d.ts +20 -0
- package/dist/components/Theme/types.d.ts +16 -0
- package/dist/components/Theme/useTheme.d.ts +84 -0
- package/dist/components/Toast/SkToast.vue.d.ts +42 -0
- package/dist/components/Toast/SkToastProvider.vue.d.ts +62 -0
- package/dist/components/Toast/index.d.ts +3 -0
- package/dist/components/Toast/types.d.ts +35 -0
- package/dist/components/Toast/useToast.d.ts +33 -0
- package/dist/components/Tooltip/SkTooltip.vue.d.ts +81 -0
- package/dist/components/Tooltip/SkTooltipProvider.vue.d.ts +70 -0
- package/dist/components/Tooltip/index.d.ts +3 -0
- package/dist/components/Tooltip/types.d.ts +4 -0
- package/dist/composables/useCustomColors.d.ts +74 -0
- package/dist/composables/useCustomColors.test.d.ts +1 -0
- package/dist/composables/usePortalContext.d.ts +75 -0
- package/dist/composables/usePortalContext.test.d.ts +1 -0
- package/dist/index.d.ts +149 -0
- package/dist/sleekspace-ui.css +2 -16
- package/dist/sleekspace-ui.es.js +43 -42
- package/dist/sleekspace-ui.umd.js +43 -42
- package/dist/tokens.css +968 -0
- package/dist/types.d.ts +29 -0
- package/docs/components/accordion/_meta.yaml +9 -0
- package/docs/components/accordion/custom-colors.md +20 -0
- package/docs/components/accordion/intro.md +8 -0
- package/docs/components/accordion/kinds.md +30 -0
- package/docs/components/accordion/multiple.md +28 -0
- package/docs/components/accordion/real-world.md +31 -0
- package/docs/components/accordion/usage.md +28 -0
- package/docs/components/alert/_meta.yaml +10 -0
- package/docs/components/alert/custom-colors.md +30 -0
- package/docs/components/alert/custom-icons.md +17 -0
- package/docs/components/alert/intro.md +8 -0
- package/docs/components/alert/kinds.md +24 -0
- package/docs/components/alert/prominent.md +16 -0
- package/docs/components/alert/rich-content.md +19 -0
- package/docs/components/alert/usage.md +12 -0
- package/docs/components/avatar/_meta.yaml +10 -0
- package/docs/components/avatar/custom-colors.md +14 -0
- package/docs/components/avatar/images.md +12 -0
- package/docs/components/avatar/intro.md +8 -0
- package/docs/components/avatar/kinds.md +16 -0
- package/docs/components/avatar/real-world.md +25 -0
- package/docs/components/avatar/sizes.md +14 -0
- package/docs/components/avatar/usage.md +15 -0
- package/docs/components/breadcrumbs/_meta.yaml +9 -0
- package/docs/components/breadcrumbs/custom-colors.md +14 -0
- package/docs/components/breadcrumbs/intro.md +8 -0
- package/docs/components/breadcrumbs/kinds.md +16 -0
- package/docs/components/breadcrumbs/real-world.md +33 -0
- package/docs/components/breadcrumbs/separators.md +13 -0
- package/docs/components/breadcrumbs/usage.md +15 -0
- package/docs/components/card/_meta.yaml +10 -0
- package/docs/components/card/intro.md +8 -0
- package/docs/components/card/kinds.md +24 -0
- package/docs/components/card/media.md +25 -0
- package/docs/components/card/neon-kinds.md +24 -0
- package/docs/components/card/no-decoration.md +15 -0
- package/docs/components/card/scrollable.md +23 -0
- package/docs/components/card/usage.md +12 -0
- package/docs/components/checkbox/_meta.yaml +11 -0
- package/docs/components/checkbox/color-kinds.md +17 -0
- package/docs/components/checkbox/custom-colors.md +21 -0
- package/docs/components/checkbox/form-example.md +24 -0
- package/docs/components/checkbox/intro.md +8 -0
- package/docs/components/checkbox/kinds.md +16 -0
- package/docs/components/checkbox/sizes.md +13 -0
- package/docs/components/checkbox/states.md +14 -0
- package/docs/components/checkbox/usage.md +17 -0
- package/docs/components/collapsible/_meta.yaml +9 -0
- package/docs/components/collapsible/accessibility.md +6 -0
- package/docs/components/collapsible/custom-colors.md +16 -0
- package/docs/components/collapsible/custom-trigger.md +35 -0
- package/docs/components/collapsible/intro.md +8 -0
- package/docs/components/collapsible/kinds.md +16 -0
- package/docs/components/collapsible/usage.md +22 -0
- package/docs/components/divider/_meta.yaml +10 -0
- package/docs/components/divider/accessibility.md +6 -0
- package/docs/components/divider/intro.md +8 -0
- package/docs/components/divider/kinds.md +16 -0
- package/docs/components/divider/orientation.md +18 -0
- package/docs/components/divider/sizes.md +24 -0
- package/docs/components/divider/usage.md +14 -0
- package/docs/components/divider/variants.md +14 -0
- package/docs/components/dropdown/_meta.yaml +11 -0
- package/docs/components/dropdown/accessibility.md +6 -0
- package/docs/components/dropdown/custom-colors.md +17 -0
- package/docs/components/dropdown/custom-trigger.md +18 -0
- package/docs/components/dropdown/intro.md +8 -0
- package/docs/components/dropdown/kinds.md +23 -0
- package/docs/components/dropdown/positioning.md +23 -0
- package/docs/components/dropdown/submenus.md +28 -0
- package/docs/components/dropdown/usage.md +24 -0
- package/docs/components/field/_meta.yaml +10 -0
- package/docs/components/field/accessibility.md +6 -0
- package/docs/components/field/description.md +15 -0
- package/docs/components/field/intro.md +8 -0
- package/docs/components/field/label-position.md +16 -0
- package/docs/components/field/required.md +12 -0
- package/docs/components/field/usage.md +19 -0
- package/docs/components/field/validation.md +32 -0
- package/docs/components/group/_meta.yaml +7 -0
- package/docs/components/group/accessibility.md +6 -0
- package/docs/components/group/intro.md +8 -0
- package/docs/components/group/orientation.md +22 -0
- package/docs/components/group/usage.md +14 -0
- package/docs/components/input/_meta.yaml +11 -0
- package/docs/components/input/accessibility.md +6 -0
- package/docs/components/input/custom-colors.md +21 -0
- package/docs/components/input/intro.md +8 -0
- package/docs/components/input/kinds.md +16 -0
- package/docs/components/input/sizes.md +13 -0
- package/docs/components/input/states.md +12 -0
- package/docs/components/input/types.md +15 -0
- package/docs/components/input/usage.md +17 -0
- package/docs/components/listbox/_meta.yaml +12 -0
- package/docs/components/listbox/color-kinds.md +27 -0
- package/docs/components/listbox/custom-colors.md +18 -0
- package/docs/components/listbox/form-example.md +36 -0
- package/docs/components/listbox/intro.md +8 -0
- package/docs/components/listbox/kinds.md +30 -0
- package/docs/components/listbox/separators.md +19 -0
- package/docs/components/listbox/sizes.md +24 -0
- package/docs/components/listbox/states.md +19 -0
- package/docs/components/listbox/usage.md +23 -0
- package/docs/components/modal/_meta.yaml +13 -0
- package/docs/components/modal/close-behaviors.md +49 -0
- package/docs/components/modal/confirmation.md +19 -0
- package/docs/components/modal/controlled-state.md +29 -0
- package/docs/components/modal/custom-colors.md +25 -0
- package/docs/components/modal/custom-trigger.md +28 -0
- package/docs/components/modal/form-modal.md +23 -0
- package/docs/components/modal/intro.md +8 -0
- package/docs/components/modal/kinds.md +30 -0
- package/docs/components/modal/sizes.md +21 -0
- package/docs/components/modal/usage.md +15 -0
- package/docs/components/navbar/_meta.yaml +11 -0
- package/docs/components/navbar/complex-layouts.md +34 -0
- package/docs/components/navbar/custom-colors.md +24 -0
- package/docs/components/navbar/icons.md +33 -0
- package/docs/components/navbar/intro.md +8 -0
- package/docs/components/navbar/kinds.md +24 -0
- package/docs/components/navbar/neon-colors.md +24 -0
- package/docs/components/navbar/sticky.md +22 -0
- package/docs/components/navbar/usage.md +25 -0
- package/docs/components/number-input/_meta.yaml +12 -0
- package/docs/components/number-input/color-kinds.md +17 -0
- package/docs/components/number-input/custom-colors.md +21 -0
- package/docs/components/number-input/form-example.md +55 -0
- package/docs/components/number-input/intro.md +8 -0
- package/docs/components/number-input/kinds.md +16 -0
- package/docs/components/number-input/min-max-step.md +11 -0
- package/docs/components/number-input/sizes.md +13 -0
- package/docs/components/number-input/states.md +12 -0
- package/docs/components/number-input/usage.md +18 -0
- package/docs/components/page/_meta.yaml +9 -0
- package/docs/components/page/custom-width.md +17 -0
- package/docs/components/page/fixed-header.md +17 -0
- package/docs/components/page/intro.md +8 -0
- package/docs/components/page/real-world.md +37 -0
- package/docs/components/page/sidebar-position.md +18 -0
- package/docs/components/page/usage.md +33 -0
- package/docs/components/pagination/_meta.yaml +12 -0
- package/docs/components/pagination/config-options.md +17 -0
- package/docs/components/pagination/custom-colors.md +15 -0
- package/docs/components/pagination/intro.md +8 -0
- package/docs/components/pagination/kinds.md +13 -0
- package/docs/components/pagination/sizes.md +14 -0
- package/docs/components/pagination/states.md +10 -0
- package/docs/components/pagination/table-example.md +28 -0
- package/docs/components/pagination/usage.md +10 -0
- package/docs/components/pagination/variants.md +13 -0
- package/docs/components/panel/_meta.yaml +10 -0
- package/docs/components/panel/custom-colors.md +18 -0
- package/docs/components/panel/decoration.md +20 -0
- package/docs/components/panel/intro.md +8 -0
- package/docs/components/panel/kinds.md +23 -0
- package/docs/components/panel/scrollable.md +18 -0
- package/docs/components/panel/sizes.md +20 -0
- package/docs/components/panel/usage.md +13 -0
- package/docs/components/popover/_meta.yaml +9 -0
- package/docs/components/popover/arrow.md +15 -0
- package/docs/components/popover/custom-colors.md +19 -0
- package/docs/components/popover/intro.md +8 -0
- package/docs/components/popover/kinds.md +24 -0
- package/docs/components/popover/positioning.md +36 -0
- package/docs/components/popover/usage.md +15 -0
- package/docs/components/progress/_meta.yaml +10 -0
- package/docs/components/progress/custom-colors.md +14 -0
- package/docs/components/progress/indeterminate.md +11 -0
- package/docs/components/progress/intro.md +8 -0
- package/docs/components/progress/kinds.md +16 -0
- package/docs/components/progress/sizes.md +14 -0
- package/docs/components/progress/usage.md +13 -0
- package/docs/components/progress/value-label.md +12 -0
- package/docs/components/radio/_meta.yaml +10 -0
- package/docs/components/radio/custom-colors.md +24 -0
- package/docs/components/radio/intro.md +8 -0
- package/docs/components/radio/kinds.md +23 -0
- package/docs/components/radio/orientation.md +22 -0
- package/docs/components/radio/sizes.md +23 -0
- package/docs/components/radio/states.md +21 -0
- package/docs/components/radio/usage.md +21 -0
- package/docs/components/sidebar/_meta.yaml +10 -0
- package/docs/components/sidebar/active-state.md +35 -0
- package/docs/components/sidebar/custom-colors.md +20 -0
- package/docs/components/sidebar/intro.md +8 -0
- package/docs/components/sidebar/kinds.md +22 -0
- package/docs/components/sidebar/router.md +24 -0
- package/docs/components/sidebar/sections.md +24 -0
- package/docs/components/sidebar/usage.md +25 -0
- package/docs/components/skeleton/_meta.yaml +8 -0
- package/docs/components/skeleton/animations.md +17 -0
- package/docs/components/skeleton/composition.md +22 -0
- package/docs/components/skeleton/intro.md +8 -0
- package/docs/components/skeleton/usage.md +12 -0
- package/docs/components/skeleton/variants.md +17 -0
- package/docs/components/slider/_meta.yaml +12 -0
- package/docs/components/slider/accessibility.md +6 -0
- package/docs/components/slider/custom-colors.md +14 -0
- package/docs/components/slider/intro.md +8 -0
- package/docs/components/slider/kinds.md +16 -0
- package/docs/components/slider/range.md +16 -0
- package/docs/components/slider/sizes.md +14 -0
- package/docs/components/slider/step.md +13 -0
- package/docs/components/slider/usage.md +16 -0
- package/docs/components/slider/vertical.md +14 -0
- package/docs/components/spinner/_meta.yaml +10 -0
- package/docs/components/spinner/accessibility.md +6 -0
- package/docs/components/spinner/custom-colors.md +13 -0
- package/docs/components/spinner/intro.md +8 -0
- package/docs/components/spinner/kinds.md +16 -0
- package/docs/components/spinner/sizes.md +14 -0
- package/docs/components/spinner/usage.md +10 -0
- package/docs/components/spinner/variants.md +12 -0
- package/docs/components/switch/_meta.yaml +12 -0
- package/docs/components/switch/accessibility.md +6 -0
- package/docs/components/switch/custom-colors.md +29 -0
- package/docs/components/switch/disabled.md +11 -0
- package/docs/components/switch/dynamic-labels.md +12 -0
- package/docs/components/switch/intro.md +8 -0
- package/docs/components/switch/kinds.md +16 -0
- package/docs/components/switch/sizes.md +14 -0
- package/docs/components/switch/thumb-color.md +16 -0
- package/docs/components/switch/usage.md +18 -0
- package/docs/components/table/_meta.yaml +12 -0
- package/docs/components/table/accessibility.md +6 -0
- package/docs/components/table/borders.md +17 -0
- package/docs/components/table/hoverable.md +26 -0
- package/docs/components/table/intro.md +8 -0
- package/docs/components/table/kinds.md +18 -0
- package/docs/components/table/striped.md +28 -0
- package/docs/components/table/subtle.md +26 -0
- package/docs/components/table/usage.md +30 -0
- package/docs/components/table/variants.md +23 -0
- package/docs/components/tabs/_meta.yaml +10 -0
- package/docs/components/tabs/accessibility.md +6 -0
- package/docs/components/tabs/custom-colors.md +23 -0
- package/docs/components/tabs/icons.md +23 -0
- package/docs/components/tabs/intro.md +8 -0
- package/docs/components/tabs/kinds.md +30 -0
- package/docs/components/tabs/usage.md +38 -0
- package/docs/components/tabs/vertical.md +23 -0
- package/docs/components/tag/_meta.yaml +11 -0
- package/docs/components/tag/accessibility.md +6 -0
- package/docs/components/tag/custom-colors.md +32 -0
- package/docs/components/tag/intro.md +8 -0
- package/docs/components/tag/kinds.md +16 -0
- package/docs/components/tag/removable.md +33 -0
- package/docs/components/tag/sizes.md +13 -0
- package/docs/components/tag/usage.md +13 -0
- package/docs/components/tag/variants.md +13 -0
- package/docs/components/tags-input/_meta.yaml +13 -0
- package/docs/components/tags-input/color-kinds.md +17 -0
- package/docs/components/tags-input/custom-colors.md +21 -0
- package/docs/components/tags-input/form-example.md +30 -0
- package/docs/components/tags-input/intro.md +8 -0
- package/docs/components/tags-input/kinds.md +16 -0
- package/docs/components/tags-input/max-tags.md +10 -0
- package/docs/components/tags-input/sizes.md +13 -0
- package/docs/components/tags-input/states.md +10 -0
- package/docs/components/tags-input/tag-customization.md +17 -0
- package/docs/components/tags-input/usage.md +17 -0
- package/docs/components/textarea/_meta.yaml +12 -0
- package/docs/components/textarea/color-kinds.md +17 -0
- package/docs/components/textarea/custom-colors.md +21 -0
- package/docs/components/textarea/form-example.md +37 -0
- package/docs/components/textarea/intro.md +8 -0
- package/docs/components/textarea/kinds.md +16 -0
- package/docs/components/textarea/rows.md +12 -0
- package/docs/components/textarea/sizes.md +13 -0
- package/docs/components/textarea/states.md +12 -0
- package/docs/components/textarea/usage.md +17 -0
- package/docs/components/theme/_meta.yaml +9 -0
- package/docs/components/theme/available-themes.md +16 -0
- package/docs/components/theme/intro.md +8 -0
- package/docs/components/theme/nested-themes.md +16 -0
- package/docs/components/theme/portal-components.md +19 -0
- package/docs/components/theme/programmatic-switching.md +19 -0
- package/docs/components/theme/usage.md +16 -0
- package/docs/components/toast/_meta.yaml +11 -0
- package/docs/components/toast/dismiss.md +15 -0
- package/docs/components/toast/duration.md +23 -0
- package/docs/components/toast/intro.md +8 -0
- package/docs/components/toast/kinds.md +13 -0
- package/docs/components/toast/real-world.md +23 -0
- package/docs/components/toast/setup.md +16 -0
- package/docs/components/toast/usage.md +18 -0
- package/docs/components/toast/with-title.md +14 -0
- package/docs/components/tooltip/_meta.yaml +14 -0
- package/docs/components/tooltip/alignment.md +24 -0
- package/docs/components/tooltip/app-level-provider.md +21 -0
- package/docs/components/tooltip/arrow.md +21 -0
- package/docs/components/tooltip/custom-colors.md +24 -0
- package/docs/components/tooltip/delay.md +27 -0
- package/docs/components/tooltip/intro.md +8 -0
- package/docs/components/tooltip/kinds.md +27 -0
- package/docs/components/tooltip/positioning.md +24 -0
- package/docs/components/tooltip/provider.md +26 -0
- package/docs/components/tooltip/real-world.md +32 -0
- package/docs/components/tooltip/usage.md +15 -0
- package/docs/guides/ai-llms.md +63 -0
- package/docs/guides/design-tokens/_meta.yaml +14 -0
- package/docs/guides/design-tokens/advanced.md +60 -0
- package/docs/guides/design-tokens/architecture.md +11 -0
- package/docs/guides/design-tokens/best-practices.md +21 -0
- package/docs/guides/design-tokens/component-tokens.md +37 -0
- package/docs/guides/design-tokens/foundation-colors.md +13 -0
- package/docs/guides/design-tokens/foundation-other.md +41 -0
- package/docs/guides/design-tokens/intro.md +19 -0
- package/docs/guides/design-tokens/semantic-kinds.md +33 -0
- package/docs/guides/design-tokens/semantic-states.md +55 -0
- package/docs/guides/design-tokens/themes.md +38 -0
- package/docs/guides/design-tokens/usage.md +55 -0
- package/package.json +3 -5
- package/src/components/Accordion/SkAccordion.vue +51 -37
- package/src/components/Accordion/SkAccordionItem.vue +40 -20
- package/src/components/Alert/SkAlert.vue +37 -27
- package/src/components/Avatar/SkAvatar.vue +69 -10
- package/src/components/Breadcrumbs/SkBreadcrumbItem.vue +63 -1
- package/src/components/Breadcrumbs/SkBreadcrumbSeparator.vue +32 -3
- package/src/components/Breadcrumbs/SkBreadcrumbs.vue +36 -0
- package/src/components/Button/SkButton.vue +83 -17
- package/src/components/Card/SkCard.vue +84 -17
- package/src/components/Checkbox/SkCheckbox.vue +52 -12
- package/src/components/Collapsible/SkCollapsible.vue +65 -27
- package/src/components/Divider/SkDivider.vue +51 -11
- package/src/components/Dropdown/SkDropdown.vue +54 -11
- package/src/components/Dropdown/SkDropdownMenuItem.vue +25 -6
- package/src/components/Dropdown/SkDropdownMenuSeparator.vue +16 -2
- package/src/components/Dropdown/SkDropdownSubmenu.vue +30 -8
- package/src/components/Field/SkField.vue +83 -15
- package/src/components/Group/SkGroup.vue +24 -9
- package/src/components/Input/SkInput.vue +77 -15
- package/src/components/Listbox/SkListbox.vue +48 -10
- package/src/components/Listbox/SkListboxItem.vue +28 -7
- package/src/components/Listbox/SkListboxSeparator.vue +16 -2
- package/src/components/Modal/SkModal.vue +85 -36
- package/src/components/NavBar/SkNavBar.vue +39 -9
- package/src/components/NumberInput/SkNumberInput.vue +85 -16
- package/src/components/Page/SkPage.vue +55 -6
- package/src/components/Pagination/SkPagination.vue +88 -0
- package/src/components/Pagination/SkPaginationItem.vue +51 -1
- package/src/components/Panel/SkPanel.vue +46 -12
- package/src/components/Popover/SkPopover.vue +91 -36
- package/src/components/Progress/SkProgress.vue +74 -10
- package/src/components/Radio/SkRadio.vue +48 -12
- package/src/components/Radio/SkRadioGroup.vue +69 -13
- package/src/components/Sidebar/SkSidebar.vue +36 -29
- package/src/components/Sidebar/SkSidebarItem.vue +34 -9
- package/src/components/Sidebar/SkSidebarSection.vue +22 -8
- package/src/components/Skeleton/SkSkeleton.vue +75 -8
- package/src/components/Slider/SkSlider.vue +91 -15
- package/src/components/Spinner/SkSpinner.vue +50 -6
- package/src/components/Switch/SkSwitch.vue +98 -35
- package/src/components/Table/SkTable.vue +79 -15
- package/src/components/Tabs/SkTab.vue +41 -11
- package/src/components/Tabs/SkTabList.vue +24 -8
- package/src/components/Tabs/SkTabPanel.vue +31 -9
- package/src/components/Tabs/SkTabPanels.vue +21 -4
- package/src/components/Tabs/SkTabs.vue +49 -37
- package/src/components/Tag/SkTag.vue +57 -32
- package/src/components/TagsInput/SkTagsInput.vue +75 -14
- package/src/components/Textarea/SkTextarea.vue +78 -15
- package/src/components/Theme/SkTheme.vue +27 -3
- package/src/components/Theme/types.ts +14 -5
- package/src/components/Toast/SkToast.vue +56 -9
- package/src/components/Toast/SkToastProvider.vue +43 -17
- package/src/components/Tooltip/SkTooltip.vue +66 -35
- package/src/components/Tooltip/SkTooltipProvider.vue +36 -36
- package/src/composables/usePortalContext.test.ts +2 -0
- package/src/styles/components/_alert.scss +0 -22
- package/web-types.json +302 -282
- package/docs/components/accordion.md +0 -92
- package/docs/components/alert.md +0 -72
- package/docs/components/avatar.md +0 -69
- package/docs/components/breadcrumbs.md +0 -65
- package/docs/components/button.md +0 -110
- package/docs/components/card.md +0 -87
- package/docs/components/checkbox.md +0 -77
- package/docs/components/collapsible.md +0 -71
- package/docs/components/divider.md +0 -62
- package/docs/components/dropdown.md +0 -88
- package/docs/components/field.md +0 -80
- package/docs/components/group.md +0 -41
- package/docs/components/input.md +0 -84
- package/docs/components/listbox.md +0 -82
- package/docs/components/modal.md +0 -101
- package/docs/components/navbar.md +0 -64
- package/docs/components/number-input.md +0 -78
- package/docs/components/page.md +0 -77
- package/docs/components/pagination.md +0 -88
- package/docs/components/panel.md +0 -74
- package/docs/components/popover.md +0 -93
- package/docs/components/progress.md +0 -76
- package/docs/components/radio.md +0 -86
- package/docs/components/sidebar.md +0 -74
- package/docs/components/skeleton.md +0 -76
- package/docs/components/slider.md +0 -94
- package/docs/components/spinner.md +0 -59
- package/docs/components/switch.md +0 -97
- package/docs/components/table.md +0 -91
- package/docs/components/tabs.md +0 -108
- package/docs/components/tag.md +0 -75
- package/docs/components/tags-input.md +0 -88
- package/docs/components/textarea.md +0 -80
- package/docs/components/theme.md +0 -65
- package/docs/components/toast.md +0 -95
- package/docs/components/tooltip.md +0 -90
- package/docs/guides/design-tokens.md +0 -105
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: sizes
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Four sizes available: `sm`, `md` (default), `lg` and `xl`.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTag size="sm" kind="primary">Small</SkTag>
|
|
10
|
+
<SkTag size="md" kind="primary">Medium</SkTag>
|
|
11
|
+
<SkTag size="lg" kind="primary">Large</SkTag>
|
|
12
|
+
<SkTag size="xl" kind="primary">Extra Large</SkTag>
|
|
13
|
+
```
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Tags are inline elements that label and categorize content. Use them for categories, tags, status indicators, or to display lists of items.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTag>Default Tag</SkTag>
|
|
10
|
+
<SkTag kind="primary">Primary</SkTag>
|
|
11
|
+
<SkTag kind="success">Active</SkTag>
|
|
12
|
+
<SkTag kind="warning">Pending</SkTag>
|
|
13
|
+
```
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: variants
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Four visual variants: `solid` for high contrast, `outline` for bordered style, `subtle` for reduced opacity, and `ghost` for minimal emphasis.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTag variant="solid" kind="primary">Solid</SkTag>
|
|
10
|
+
<SkTag variant="outline" kind="primary">Outline</SkTag>
|
|
11
|
+
<SkTag variant="subtle" kind="primary">Subtle</SkTag>
|
|
12
|
+
<SkTag variant="ghost" kind="primary">Ghost</SkTag>
|
|
13
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: color-kinds
|
|
3
|
+
order: 7
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
TagsInput supports vibrant color palette kinds for a more colorful appearance.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTagsInput v-model="tags" kind="neon-blue" placeholder="Neon Blue" />
|
|
10
|
+
<SkTagsInput v-model="tags" kind="neon-purple" placeholder="Neon Purple" />
|
|
11
|
+
<SkTagsInput v-model="tags" kind="neon-orange" placeholder="Neon Orange" />
|
|
12
|
+
<SkTagsInput v-model="tags" kind="neon-green" placeholder="Neon Green" />
|
|
13
|
+
<SkTagsInput v-model="tags" kind="neon-mint" placeholder="Neon Mint" />
|
|
14
|
+
<SkTagsInput v-model="tags" kind="neon-pink" placeholder="Neon Pink" />
|
|
15
|
+
<SkTagsInput v-model="tags" kind="yellow" placeholder="Yellow" />
|
|
16
|
+
<SkTagsInput v-model="tags" kind="red" placeholder="Red" />
|
|
17
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: custom-colors
|
|
3
|
+
order: 9
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Override colors with custom OKLCH, hex, or CSS variable values.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTagsInput
|
|
10
|
+
v-model="tags"
|
|
11
|
+
base-color="oklch(0.7 0.25 300)"
|
|
12
|
+
text-color="white"
|
|
13
|
+
placeholder="Custom purple"
|
|
14
|
+
/>
|
|
15
|
+
<SkTagsInput
|
|
16
|
+
v-model="tags"
|
|
17
|
+
base-color="#10b981"
|
|
18
|
+
text-color="white"
|
|
19
|
+
placeholder="Custom green"
|
|
20
|
+
/>
|
|
21
|
+
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: form-example
|
|
3
|
+
order: 10
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use SkTagsInput with SkField for labels, descriptions, and validation messages.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue'
|
|
11
|
+
const keywords = ref([])
|
|
12
|
+
const valid = ref(null)
|
|
13
|
+
|
|
14
|
+
const validate = () => {
|
|
15
|
+
valid.value = keywords.value.length >= 2
|
|
16
|
+
}
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<template>
|
|
20
|
+
<SkField
|
|
21
|
+
label="Keywords"
|
|
22
|
+
required
|
|
23
|
+
:state="valid"
|
|
24
|
+
:error="valid === false ? 'Please add at least 2 keywords' : undefined"
|
|
25
|
+
description="Add 2-5 keywords for your article"
|
|
26
|
+
>
|
|
27
|
+
<SkTagsInput v-model="keywords" :max="5" @update:model-value="validate" />
|
|
28
|
+
</SkField>
|
|
29
|
+
</template>
|
|
30
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: kinds
|
|
3
|
+
order: 6
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
TagsInput supports all semantic kinds. These are theme-aware.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTagsInput v-model="tags" kind="neutral" placeholder="Neutral" />
|
|
10
|
+
<SkTagsInput v-model="tags" kind="primary" placeholder="Primary" />
|
|
11
|
+
<SkTagsInput v-model="tags" kind="accent" placeholder="Accent" />
|
|
12
|
+
<SkTagsInput v-model="tags" kind="info" placeholder="Info" />
|
|
13
|
+
<SkTagsInput v-model="tags" kind="success" placeholder="Success" />
|
|
14
|
+
<SkTagsInput v-model="tags" kind="warning" placeholder="Warning" />
|
|
15
|
+
<SkTagsInput v-model="tags" kind="danger" placeholder="Danger" />
|
|
16
|
+
```
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: sizes
|
|
3
|
+
order: 4
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
TagsInput comes in four sizes matching other form inputs.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTagsInput v-model="tags" kind="primary" size="sm" placeholder="Small" />
|
|
10
|
+
<SkTagsInput v-model="tags" kind="primary" size="md" placeholder="Medium" />
|
|
11
|
+
<SkTagsInput v-model="tags" kind="primary" size="lg" placeholder="Large" />
|
|
12
|
+
<SkTagsInput v-model="tags" kind="primary" size="xl" placeholder="Extra Large" />
|
|
13
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: tag-customization
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Customize tag appearance with `tagKind` and `tagVariant` props. By default, tags inherit the input's kind.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<!-- Tags inherit input kind -->
|
|
10
|
+
<SkTagsInput v-model="tags" kind="primary" placeholder="Add tags..." />
|
|
11
|
+
|
|
12
|
+
<!-- Custom tag kind -->
|
|
13
|
+
<SkTagsInput v-model="tags" kind="primary" tag-kind="accent" placeholder="Add tags..." />
|
|
14
|
+
|
|
15
|
+
<!-- Custom tag variant -->
|
|
16
|
+
<SkTagsInput v-model="tags" kind="primary" tag-variant="outline" placeholder="Add tags..." />
|
|
17
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Type a value and press Enter to add a tag. Backspace to remove last tag.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue'
|
|
11
|
+
const tags = ref([])
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<template>
|
|
15
|
+
<SkTagsInput v-model="tags" placeholder="Add tags..." />
|
|
16
|
+
</template>
|
|
17
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: color-kinds
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Textareas also support direct color palette kinds for vibrant cyberpunk colors.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTextarea v-model="value" kind="neon-blue" placeholder="Neon Blue" />
|
|
10
|
+
<SkTextarea v-model="value" kind="neon-purple" placeholder="Neon Purple" />
|
|
11
|
+
<SkTextarea v-model="value" kind="neon-orange" placeholder="Neon Orange" />
|
|
12
|
+
<SkTextarea v-model="value" kind="neon-green" placeholder="Neon Green" />
|
|
13
|
+
<SkTextarea v-model="value" kind="neon-mint" placeholder="Neon Mint" />
|
|
14
|
+
<SkTextarea v-model="value" kind="neon-pink" placeholder="Neon Pink" />
|
|
15
|
+
<SkTextarea v-model="value" kind="yellow" placeholder="Yellow" />
|
|
16
|
+
<SkTextarea v-model="value" kind="red" placeholder="Red" />
|
|
17
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: custom-colors
|
|
3
|
+
order: 8
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Override textarea colors with custom OKLCH, hex, or CSS variable values.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTextarea
|
|
10
|
+
v-model="value"
|
|
11
|
+
base-color="oklch(0.7 0.25 300)"
|
|
12
|
+
text-color="white"
|
|
13
|
+
placeholder="Custom purple"
|
|
14
|
+
/>
|
|
15
|
+
<SkTextarea
|
|
16
|
+
v-model="value"
|
|
17
|
+
base-color="#10b981"
|
|
18
|
+
text-color="white"
|
|
19
|
+
placeholder="Custom green"
|
|
20
|
+
/>
|
|
21
|
+
```
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: form-example
|
|
3
|
+
order: 9
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Real-world form using textarea for longer text input with character count.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue'
|
|
11
|
+
const description = ref('')
|
|
12
|
+
const comments = ref('Looking good so far!')
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<template>
|
|
16
|
+
<div>
|
|
17
|
+
<label>Description</label>
|
|
18
|
+
<SkTextarea
|
|
19
|
+
v-model="description"
|
|
20
|
+
kind="neutral"
|
|
21
|
+
placeholder="Describe your project..."
|
|
22
|
+
:rows="6"
|
|
23
|
+
/>
|
|
24
|
+
</div>
|
|
25
|
+
|
|
26
|
+
<div>
|
|
27
|
+
<label>Comments</label>
|
|
28
|
+
<SkTextarea
|
|
29
|
+
v-model="comments"
|
|
30
|
+
kind="success"
|
|
31
|
+
placeholder="Additional comments..."
|
|
32
|
+
:rows="4"
|
|
33
|
+
/>
|
|
34
|
+
<span style="color: var(--sk-success-base)">{{ comments.length }} characters</span>
|
|
35
|
+
</div>
|
|
36
|
+
</template>
|
|
37
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: kinds
|
|
3
|
+
order: 4
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use semantic kinds for validation states and different contexts. These are theme-aware.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTextarea v-model="value" kind="neutral" placeholder="Neutral" />
|
|
10
|
+
<SkTextarea v-model="value" kind="primary" placeholder="Primary" />
|
|
11
|
+
<SkTextarea v-model="value" kind="accent" placeholder="Accent" />
|
|
12
|
+
<SkTextarea v-model="value" kind="info" placeholder="Info" />
|
|
13
|
+
<SkTextarea v-model="value" kind="success" placeholder="Success" />
|
|
14
|
+
<SkTextarea v-model="value" kind="warning" placeholder="Warning" />
|
|
15
|
+
<SkTextarea v-model="value" kind="danger" placeholder="Danger" />
|
|
16
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: rows
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Control the initial height with the `rows` prop.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTextarea v-model="value" :rows="2" placeholder="Compact (2 rows)" />
|
|
10
|
+
<SkTextarea v-model="value" :rows="4" placeholder="Default (4 rows)" />
|
|
11
|
+
<SkTextarea v-model="value" :rows="8" placeholder="Tall (8 rows)" />
|
|
12
|
+
```
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: sizes
|
|
3
|
+
order: 6
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Textareas come in four sizes with different padding and font sizes.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTextarea v-model="value" kind="primary" size="sm" placeholder="Small" :rows="3" />
|
|
10
|
+
<SkTextarea v-model="value" kind="primary" size="md" placeholder="Medium" :rows="3" />
|
|
11
|
+
<SkTextarea v-model="value" kind="primary" size="lg" placeholder="Large" :rows="3" />
|
|
12
|
+
<SkTextarea v-model="value" kind="primary" size="xl" placeholder="Extra Large" :rows="3" />
|
|
13
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: states
|
|
3
|
+
order: 7
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Textareas support disabled and readonly states. Resizing is disabled for both.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTextarea v-model="normal" kind="primary" placeholder="Normal" />
|
|
10
|
+
<SkTextarea v-model="disabled" kind="primary" disabled placeholder="Disabled" />
|
|
11
|
+
<SkTextarea v-model="readonly" kind="primary" readonly placeholder="Readonly" />
|
|
12
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Simple textarea with placeholder. Use v-model for two-way binding. Vertically resizable.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue'
|
|
11
|
+
const message = ref('')
|
|
12
|
+
</script>
|
|
13
|
+
|
|
14
|
+
<template>
|
|
15
|
+
<SkTextarea v-model="message" placeholder="Enter your message..." />
|
|
16
|
+
</template>
|
|
17
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: available-themes
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Two built-in themes are available: `greyscale` (default) for a monochromatic palette, and `colorful` for vibrant cyberpunk colors. Custom theme names can be used if matching CSS custom property overrides are defined under the corresponding `[data-scheme="..."]` selector.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTheme theme="greyscale">
|
|
10
|
+
<SkButton kind="primary">Greyscale Theme</SkButton>
|
|
11
|
+
</SkTheme>
|
|
12
|
+
|
|
13
|
+
<SkTheme theme="colorful">
|
|
14
|
+
<SkButton kind="primary">Colorful Theme</SkButton>
|
|
15
|
+
</SkTheme>
|
|
16
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: nested-themes
|
|
3
|
+
order: 4
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Themes can be nested. The inner SkTheme overrides the outer one for its subtree.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkTheme theme="greyscale">
|
|
10
|
+
<SkButton kind="primary">Greyscale</SkButton>
|
|
11
|
+
|
|
12
|
+
<SkTheme theme="colorful">
|
|
13
|
+
<SkButton kind="primary">Colorful</SkButton>
|
|
14
|
+
</SkTheme>
|
|
15
|
+
</SkTheme>
|
|
16
|
+
```
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: portal-components
|
|
3
|
+
order: 6
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
SkTheme provides the current theme value via Vue's provide/inject system. Portal components (SkModal, SkDropdown, SkListbox, SkTooltip, SkPopover, SkToast) automatically consume this value and apply `data-scheme` on their portaled content so they inherit the correct theme.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<!-- Portal components automatically inherit theme -->
|
|
10
|
+
<SkTheme theme="colorful">
|
|
11
|
+
<SkModal>
|
|
12
|
+
<!-- Modal content uses colorful theme -->
|
|
13
|
+
</SkModal>
|
|
14
|
+
|
|
15
|
+
<SkDropdown>
|
|
16
|
+
<!-- Dropdown content uses colorful theme -->
|
|
17
|
+
</SkDropdown>
|
|
18
|
+
</SkTheme>
|
|
19
|
+
```
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: programmatic-switching
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
The `useTheme` composable enables runtime theme changes from any component.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { useTheme } from '@skewedaspect/sleekspace-ui';
|
|
11
|
+
|
|
12
|
+
const { currentTheme, setTheme } = useTheme();
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<template>
|
|
16
|
+
<SkButton @click="setTheme('colorful')">Go Colorful</SkButton>
|
|
17
|
+
<SkButton @click="setTheme('greyscale')">Go Greyscale</SkButton>
|
|
18
|
+
</template>
|
|
19
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Wrap components in SkTheme to apply a color scheme. All child components will inherit the theme.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<template>
|
|
10
|
+
<SkTheme theme="colorful">
|
|
11
|
+
<SkPanel kind="primary">
|
|
12
|
+
<SkButton kind="accent">Themed Button</SkButton>
|
|
13
|
+
</SkPanel>
|
|
14
|
+
</SkTheme>
|
|
15
|
+
</template>
|
|
16
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: dismiss
|
|
3
|
+
order: 6
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use `toast.dismissAll()` to clear all active toasts, or `toast.dismiss(id)` to dismiss a specific toast.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
// Dismiss all active toasts
|
|
10
|
+
toast.dismissAll();
|
|
11
|
+
|
|
12
|
+
// Dismiss a specific toast by ID
|
|
13
|
+
const id = toast.add({ message: 'Hello' });
|
|
14
|
+
toast.dismiss(id);
|
|
15
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: duration
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Override the auto-dismiss duration. Use `duration: 0` for toasts that don't auto-dismiss.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
// Quick toast (2 seconds)
|
|
10
|
+
toast.add({
|
|
11
|
+
kind: 'info',
|
|
12
|
+
message: 'Quick notification',
|
|
13
|
+
duration: 2000
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
// Persistent toast (no auto-dismiss)
|
|
17
|
+
toast.add({
|
|
18
|
+
kind: 'danger',
|
|
19
|
+
title: 'Attention Required',
|
|
20
|
+
message: 'Click X to dismiss',
|
|
21
|
+
duration: 0
|
|
22
|
+
});
|
|
23
|
+
```
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: intro
|
|
3
|
+
order: 1
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# SkToast
|
|
7
|
+
|
|
8
|
+
A notification toast system for showing brief messages that appear and auto-dismiss. Composed of SkToastProvider (wraps your app) and the `useToast` composable (shows toasts from anywhere). Built on RekaUI's Toast primitive.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: kinds
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Four semantic kinds: `info`, `success`, `warning`, and `danger`.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
toast.add({ kind: 'info', message: 'Informational message' });
|
|
10
|
+
toast.add({ kind: 'success', message: 'Success message' });
|
|
11
|
+
toast.add({ kind: 'warning', message: 'Warning message' });
|
|
12
|
+
toast.add({ kind: 'danger', message: 'Error message' });
|
|
13
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: real-world
|
|
3
|
+
order: 7
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Common toast patterns for form submissions, errors, and status updates.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
// Form save success
|
|
10
|
+
toast.add({
|
|
11
|
+
kind: 'success',
|
|
12
|
+
title: 'Saved!',
|
|
13
|
+
message: 'Your changes have been saved.'
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
// API error
|
|
17
|
+
toast.add({
|
|
18
|
+
kind: 'danger',
|
|
19
|
+
title: 'Connection Error',
|
|
20
|
+
message: 'Failed to connect. Please retry.',
|
|
21
|
+
duration: 0 // Don't auto-dismiss errors
|
|
22
|
+
});
|
|
23
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: setup
|
|
3
|
+
order: 8
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Add `SkToastProvider` to your App.vue to enable toasts throughout your application. The provider should be placed inside your theme wrapper but outside router content.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<!-- App.vue -->
|
|
10
|
+
<template>
|
|
11
|
+
<SkTheme theme="colorful">
|
|
12
|
+
<RouterView />
|
|
13
|
+
<SkToastProvider position="bottom-right" />
|
|
14
|
+
</SkTheme>
|
|
15
|
+
</template>
|
|
16
|
+
```
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use the `useToast()` composable to show toast notifications. Click the buttons below to see different toast types.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
import { useToast } from '@skewedaspect/sleekspace-ui';
|
|
10
|
+
|
|
11
|
+
const toast = useToast();
|
|
12
|
+
|
|
13
|
+
// Show a simple toast
|
|
14
|
+
toast.add({
|
|
15
|
+
kind: 'success',
|
|
16
|
+
message: 'Operation completed!'
|
|
17
|
+
});
|
|
18
|
+
```
|