@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,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: controlled-state
|
|
3
|
+
order: 9
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use `v-model:open` to control the modal state programmatically. This allows opening the modal from external triggers or closing it after async operations complete.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue';
|
|
11
|
+
|
|
12
|
+
const isModalOpen = ref(false);
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<template>
|
|
16
|
+
<SkButton @click="isModalOpen = true">
|
|
17
|
+
Open Modal Programmatically
|
|
18
|
+
</SkButton>
|
|
19
|
+
|
|
20
|
+
<SkModal v-model:open="isModalOpen" title="Controlled Modal" kind="info">
|
|
21
|
+
<p>This modal's state is controlled by a variable.</p>
|
|
22
|
+
<template #footer>
|
|
23
|
+
<SkButton kind="neutral" variant="ghost" @click="isModalOpen = false">
|
|
24
|
+
Close
|
|
25
|
+
</SkButton>
|
|
26
|
+
</template>
|
|
27
|
+
</SkModal>
|
|
28
|
+
</template>
|
|
29
|
+
```
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: custom-colors
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use `baseColor` and `textColor` for full color control. These props accept any valid CSS color value including OKLCH, hex, and CSS variables.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkModal
|
|
10
|
+
title="Custom Purple Modal"
|
|
11
|
+
trigger-text="Purple"
|
|
12
|
+
base-color="oklch(0.5 0.25 300)"
|
|
13
|
+
text-color="white"
|
|
14
|
+
>
|
|
15
|
+
<p>This modal uses custom purple colors.</p>
|
|
16
|
+
</SkModal>
|
|
17
|
+
<SkModal
|
|
18
|
+
title="Custom Orange Modal"
|
|
19
|
+
trigger-text="Orange"
|
|
20
|
+
base-color="oklch(0.65 0.2 50)"
|
|
21
|
+
text-color="oklch(0.95 0.03 85)"
|
|
22
|
+
>
|
|
23
|
+
<p>This modal uses custom orange colors.</p>
|
|
24
|
+
</SkModal>
|
|
25
|
+
```
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: custom-trigger
|
|
3
|
+
order: 8
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use the `trigger` slot to provide a custom trigger element instead of the default button. Any clickable element can be used.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkModal title="Settings">
|
|
10
|
+
<template #trigger>
|
|
11
|
+
<SkButton kind="accent" variant="outline">Open Settings</SkButton>
|
|
12
|
+
</template>
|
|
13
|
+
<div class="flex flex-col gap-4">
|
|
14
|
+
<SkField label="Theme">
|
|
15
|
+
<SkListbox>
|
|
16
|
+
<SkListboxItem value="light">Light</SkListboxItem>
|
|
17
|
+
<SkListboxItem value="dark">Dark</SkListboxItem>
|
|
18
|
+
</SkListbox>
|
|
19
|
+
</SkField>
|
|
20
|
+
<SkField label="Notifications">
|
|
21
|
+
<SkSwitch />
|
|
22
|
+
</SkField>
|
|
23
|
+
</div>
|
|
24
|
+
<template #footer>
|
|
25
|
+
<SkButton kind="primary">Save Changes</SkButton>
|
|
26
|
+
</template>
|
|
27
|
+
</SkModal>
|
|
28
|
+
```
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: form-modal
|
|
3
|
+
order: 7
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Modal containing a form for user input. Combine with SkField and other form components for a complete form experience.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkModal kind="primary" title="Create New Project" trigger-text="New Project">
|
|
10
|
+
<div class="flex flex-col gap-4">
|
|
11
|
+
<SkField label="Project Name" required>
|
|
12
|
+
<SkInput placeholder="Enter project name" />
|
|
13
|
+
</SkField>
|
|
14
|
+
<SkField label="Description">
|
|
15
|
+
<SkTextarea placeholder="Describe your project" :rows="4" />
|
|
16
|
+
</SkField>
|
|
17
|
+
</div>
|
|
18
|
+
<template #footer>
|
|
19
|
+
<SkButton kind="neutral" variant="ghost">Cancel</SkButton>
|
|
20
|
+
<SkButton kind="primary">Create Project</SkButton>
|
|
21
|
+
</template>
|
|
22
|
+
</SkModal>
|
|
23
|
+
```
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: intro
|
|
3
|
+
order: 1
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# SkModal
|
|
7
|
+
|
|
8
|
+
A dialog overlay component for presenting focused content that requires user attention or interaction. Includes a backdrop, close button, and optional trigger. Built on RekaUI's Dialog primitive and uses a portal.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: kinds
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Seven semantic kinds that control the modal's color scheme. Use `kind` to match the modal's purpose to your application's design language.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkModal kind="neutral" title="Neutral Modal" trigger-text="Neutral">
|
|
10
|
+
<p>This is a neutral modal for general content.</p>
|
|
11
|
+
</SkModal>
|
|
12
|
+
<SkModal kind="primary" title="Primary Modal" trigger-text="Primary">
|
|
13
|
+
<p>This is a primary modal for main actions.</p>
|
|
14
|
+
</SkModal>
|
|
15
|
+
<SkModal kind="accent" title="Accent Modal" trigger-text="Accent">
|
|
16
|
+
<p>This is an accent modal for highlighted content.</p>
|
|
17
|
+
</SkModal>
|
|
18
|
+
<SkModal kind="info" title="Info Modal" trigger-text="Info">
|
|
19
|
+
<p>This is an info modal for informational messages.</p>
|
|
20
|
+
</SkModal>
|
|
21
|
+
<SkModal kind="success" title="Success Modal" trigger-text="Success">
|
|
22
|
+
<p>This is a success modal for positive feedback.</p>
|
|
23
|
+
</SkModal>
|
|
24
|
+
<SkModal kind="warning" title="Warning Modal" trigger-text="Warning">
|
|
25
|
+
<p>This is a warning modal for cautionary messages.</p>
|
|
26
|
+
</SkModal>
|
|
27
|
+
<SkModal kind="danger" title="Danger Modal" trigger-text="Danger">
|
|
28
|
+
<p>This is a danger modal for critical actions.</p>
|
|
29
|
+
</SkModal>
|
|
30
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: sizes
|
|
3
|
+
order: 4
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Four size options: `sm` (24rem), `md` (32rem), `lg` (48rem), and `xl` (64rem). Choose based on the amount of content your modal needs to display.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkModal size="sm" title="Small Modal" trigger-text="Small">
|
|
10
|
+
<p>This is a small modal with a narrower width.</p>
|
|
11
|
+
</SkModal>
|
|
12
|
+
<SkModal size="md" title="Medium Modal" trigger-text="Medium">
|
|
13
|
+
<p>This is a medium modal (default size).</p>
|
|
14
|
+
</SkModal>
|
|
15
|
+
<SkModal size="lg" title="Large Modal" trigger-text="Large">
|
|
16
|
+
<p>This is a large modal with more space for content.</p>
|
|
17
|
+
</SkModal>
|
|
18
|
+
<SkModal size="xl" title="Extra Large Modal" trigger-text="Extra Large">
|
|
19
|
+
<p>This is an extra large modal for extensive content.</p>
|
|
20
|
+
</SkModal>
|
|
21
|
+
```
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Basic modal with trigger button, title, body content, and footer actions. Use `trigger-text` or the `trigger` slot for an inline trigger button.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkModal title="Welcome" trigger-text="Open Modal">
|
|
10
|
+
<p>This is a basic modal dialog. It displays content in an overlay with a backdrop.</p>
|
|
11
|
+
<template #footer>
|
|
12
|
+
<SkButton kind="primary">Confirm</SkButton>
|
|
13
|
+
</template>
|
|
14
|
+
</SkModal>
|
|
15
|
+
```
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: complex-layouts
|
|
3
|
+
order: 8
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Build feature-rich navigation bars combining brand, multiple links, and various action controls like switches, buttons, and tags.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<!-- Full Featured Navigation -->
|
|
10
|
+
<SkNavBar kind="neutral" :sticky="false">
|
|
11
|
+
<template #brand>
|
|
12
|
+
<div style="display: flex; align-items: center; gap: 0.75rem;">
|
|
13
|
+
<FontAwesomeIcon :icon="['fasds', 'cubes']" style="font-size: 1.5rem;" />
|
|
14
|
+
<span style="font-weight: 600; font-size: 1.25rem;">SleekSpace</span>
|
|
15
|
+
</div>
|
|
16
|
+
</template>
|
|
17
|
+
|
|
18
|
+
<a href="#" class="nav-link">Home</a>
|
|
19
|
+
<a href="#" class="nav-link">Documentation</a>
|
|
20
|
+
<a href="#" class="nav-link">Components</a>
|
|
21
|
+
|
|
22
|
+
<template #actions>
|
|
23
|
+
<SkSwitch
|
|
24
|
+
:model-value="false"
|
|
25
|
+
kind="neutral"
|
|
26
|
+
label-on="Dark"
|
|
27
|
+
label-off="Light"
|
|
28
|
+
/>
|
|
29
|
+
<SkButton kind="primary" size="sm">
|
|
30
|
+
Get Started
|
|
31
|
+
</SkButton>
|
|
32
|
+
</template>
|
|
33
|
+
</SkNavBar>
|
|
34
|
+
```
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: custom-colors
|
|
3
|
+
order: 6
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use `base-color` for custom CSS colors. Text color is automatically calculated for optimal contrast, or you can specify it explicitly with `text-color`.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNavBar base-color="#8B5CF6" :sticky="false">
|
|
10
|
+
<template #brand>
|
|
11
|
+
<span style="font-weight: 600;">Purple Nav</span>
|
|
12
|
+
</template>
|
|
13
|
+
<a href="#" class="nav-link">Home</a>
|
|
14
|
+
<a href="#" class="nav-link">About</a>
|
|
15
|
+
</SkNavBar>
|
|
16
|
+
|
|
17
|
+
<SkNavBar base-color="oklch(0.65 0.22 60)" :sticky="false">
|
|
18
|
+
<template #brand>
|
|
19
|
+
<span style="font-weight: 600;">Gold Nav</span>
|
|
20
|
+
</template>
|
|
21
|
+
<a href="#" class="nav-link">Home</a>
|
|
22
|
+
<a href="#" class="nav-link">About</a>
|
|
23
|
+
</SkNavBar>
|
|
24
|
+
```
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: icons
|
|
3
|
+
order: 4
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Enhance your navbar with FontAwesome icons for better visual identification. Icons can be added to the brand, navigation links, and action buttons.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNavBar kind="accent" :sticky="false">
|
|
10
|
+
<template #brand>
|
|
11
|
+
<div style="display: flex; align-items: center; gap: 0.5rem; font-weight: 600; font-size: 1.25rem;">
|
|
12
|
+
<FontAwesomeIcon :icon="['fasds', 'rocket']" />
|
|
13
|
+
<span>Project</span>
|
|
14
|
+
</div>
|
|
15
|
+
</template>
|
|
16
|
+
<a href="#" class="nav-link">
|
|
17
|
+
<FontAwesomeIcon :icon="['fasds', 'cubes']" style="margin-right: 0.5rem;" />
|
|
18
|
+
Components
|
|
19
|
+
</a>
|
|
20
|
+
<a href="#" class="nav-link">
|
|
21
|
+
<FontAwesomeIcon :icon="['fasds', 'code']" style="margin-right: 0.5rem;" />
|
|
22
|
+
Code
|
|
23
|
+
</a>
|
|
24
|
+
|
|
25
|
+
<template #actions>
|
|
26
|
+
<SkButton kind="neutral" size="sm" variant="ghost">
|
|
27
|
+
<template #icon>
|
|
28
|
+
<FontAwesomeIcon :icon="['fasds', 'download']" />
|
|
29
|
+
</template>
|
|
30
|
+
</SkButton>
|
|
31
|
+
</template>
|
|
32
|
+
</SkNavBar>
|
|
33
|
+
```
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: kinds
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Choose from semantic kinds (`neutral`, `primary`, `accent`, `info`, `success`, `warning`, `danger`) to match your application theme and indicate purpose.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNavBar kind="neutral" :sticky="false">
|
|
10
|
+
<template #brand>
|
|
11
|
+
<span style="font-weight: 600;">Neutral</span>
|
|
12
|
+
</template>
|
|
13
|
+
<a href="#" class="nav-link">Home</a>
|
|
14
|
+
<a href="#" class="nav-link">About</a>
|
|
15
|
+
</SkNavBar>
|
|
16
|
+
|
|
17
|
+
<SkNavBar kind="primary" :sticky="false">
|
|
18
|
+
<template #brand>
|
|
19
|
+
<span style="font-weight: 600;">Primary</span>
|
|
20
|
+
</template>
|
|
21
|
+
<a href="#" class="nav-link">Home</a>
|
|
22
|
+
<a href="#" class="nav-link">About</a>
|
|
23
|
+
</SkNavBar>
|
|
24
|
+
```
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: neon-colors
|
|
3
|
+
order: 7
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use direct color palette kinds for fixed neon colors that don't change with themes. These provide vibrant cyberpunk aesthetics.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNavBar kind="neon-blue" :sticky="false">
|
|
10
|
+
<template #brand>
|
|
11
|
+
<span style="font-weight: 600;">Neon Blue</span>
|
|
12
|
+
</template>
|
|
13
|
+
<a href="#" class="nav-link">Dashboard</a>
|
|
14
|
+
<a href="#" class="nav-link">Settings</a>
|
|
15
|
+
</SkNavBar>
|
|
16
|
+
|
|
17
|
+
<SkNavBar kind="neon-orange" :sticky="false">
|
|
18
|
+
<template #brand>
|
|
19
|
+
<span style="font-weight: 600;">Neon Orange</span>
|
|
20
|
+
</template>
|
|
21
|
+
<a href="#" class="nav-link">Dashboard</a>
|
|
22
|
+
<a href="#" class="nav-link">Settings</a>
|
|
23
|
+
</SkNavBar>
|
|
24
|
+
```
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: sticky
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
By default, navbars are sticky and stay at the top when scrolling. Set `:sticky="false"` to disable this behavior for a static navbar that scrolls with the page.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<!-- Sticky (Default) -->
|
|
10
|
+
<SkNavBar kind="info">
|
|
11
|
+
<template #brand>Sticky Nav</template>
|
|
12
|
+
<a href="#" class="nav-link">Link 1</a>
|
|
13
|
+
<a href="#" class="nav-link">Link 2</a>
|
|
14
|
+
</SkNavBar>
|
|
15
|
+
|
|
16
|
+
<!-- Non-Sticky -->
|
|
17
|
+
<SkNavBar kind="success" :sticky="false">
|
|
18
|
+
<template #brand>Non-Sticky Nav</template>
|
|
19
|
+
<a href="#" class="nav-link">Link 1</a>
|
|
20
|
+
<a href="#" class="nav-link">Link 2</a>
|
|
21
|
+
</SkNavBar>
|
|
22
|
+
```
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use the `brand` slot for your logo or app name, default slot for navigation links, and `actions` slot for buttons or controls.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNavBar kind="neutral" :sticky="false">
|
|
10
|
+
<template #brand>
|
|
11
|
+
<div style="font-weight: 600; font-size: 1.25rem;">
|
|
12
|
+
My App
|
|
13
|
+
</div>
|
|
14
|
+
</template>
|
|
15
|
+
<a href="#" class="nav-link">Home</a>
|
|
16
|
+
<a href="#" class="nav-link">Docs</a>
|
|
17
|
+
<a href="#" class="nav-link">Components</a>
|
|
18
|
+
|
|
19
|
+
<template #actions>
|
|
20
|
+
<SkButton kind="primary" size="sm">
|
|
21
|
+
Get Started
|
|
22
|
+
</SkButton>
|
|
23
|
+
</template>
|
|
24
|
+
</SkNavBar>
|
|
25
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: color-kinds
|
|
3
|
+
order: 6
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Number inputs also support direct color palette kinds for vibrant cyberpunk colors. These are fixed colors that don't change with themes.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNumberInput v-model="value" kind="neon-blue" />
|
|
10
|
+
<SkNumberInput v-model="value" kind="neon-purple" />
|
|
11
|
+
<SkNumberInput v-model="value" kind="neon-orange" />
|
|
12
|
+
<SkNumberInput v-model="value" kind="neon-green" />
|
|
13
|
+
<SkNumberInput v-model="value" kind="neon-mint" />
|
|
14
|
+
<SkNumberInput v-model="value" kind="neon-pink" />
|
|
15
|
+
<SkNumberInput v-model="value" kind="yellow" />
|
|
16
|
+
<SkNumberInput v-model="value" kind="red" />
|
|
17
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: custom-colors
|
|
3
|
+
order: 8
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Override number input colors with custom OKLCH, hex, or CSS variable values using `baseColor` and `textColor` props.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNumberInput
|
|
10
|
+
v-model="value"
|
|
11
|
+
base-color="oklch(0.7 0.25 300)"
|
|
12
|
+
text-color="white"
|
|
13
|
+
placeholder="Custom purple"
|
|
14
|
+
/>
|
|
15
|
+
<SkNumberInput
|
|
16
|
+
v-model="value"
|
|
17
|
+
base-color="#10b981"
|
|
18
|
+
text-color="white"
|
|
19
|
+
placeholder="Custom green"
|
|
20
|
+
/>
|
|
21
|
+
```
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: form-example
|
|
3
|
+
order: 9
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Pair with SkField for labels and validation. Real-world forms using NumberInput with validation display.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue';
|
|
11
|
+
|
|
12
|
+
const age = ref(0);
|
|
13
|
+
const quantity = ref(1);
|
|
14
|
+
const price = ref(0);
|
|
15
|
+
|
|
16
|
+
const ageValid = ref(null);
|
|
17
|
+
const quantityValid = ref(true);
|
|
18
|
+
|
|
19
|
+
const validateAge = () => {
|
|
20
|
+
if (age.value >= 18 && age.value <= 120) {
|
|
21
|
+
ageValid.value = true;
|
|
22
|
+
} else {
|
|
23
|
+
ageValid.value = false;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
const validateQuantity = () => {
|
|
28
|
+
quantityValid.value = quantity.value >= 1 && quantity.value <= 100;
|
|
29
|
+
};
|
|
30
|
+
</script>
|
|
31
|
+
|
|
32
|
+
<template>
|
|
33
|
+
<SkField
|
|
34
|
+
label="Age"
|
|
35
|
+
required
|
|
36
|
+
:state="ageValid"
|
|
37
|
+
:error="ageValid === false ? 'Age must be between 18 and 120' : undefined"
|
|
38
|
+
>
|
|
39
|
+
<SkNumberInput v-model="age" :min="18" :max="120" @input="validateAge" />
|
|
40
|
+
</SkField>
|
|
41
|
+
|
|
42
|
+
<SkField
|
|
43
|
+
label="Quantity"
|
|
44
|
+
required
|
|
45
|
+
:state="quantityValid"
|
|
46
|
+
description="Select quantity (1-100)"
|
|
47
|
+
>
|
|
48
|
+
<SkNumberInput v-model="quantity" :min="1" :max="100" @input="validateQuantity" />
|
|
49
|
+
</SkField>
|
|
50
|
+
|
|
51
|
+
<SkField label="Price" description="Enter price (increments of $0.25)">
|
|
52
|
+
<SkNumberInput v-model="price" :min="0" :step="0.25" />
|
|
53
|
+
</SkField>
|
|
54
|
+
</template>
|
|
55
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: kinds
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use semantic kinds for validation states. When nested inside SkField, the kind is automatically injected based on field validation state.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNumberInput v-model="value" kind="neutral" />
|
|
10
|
+
<SkNumberInput v-model="value" kind="primary" />
|
|
11
|
+
<SkNumberInput v-model="value" kind="accent" />
|
|
12
|
+
<SkNumberInput v-model="value" kind="info" />
|
|
13
|
+
<SkNumberInput v-model="value" kind="success" />
|
|
14
|
+
<SkNumberInput v-model="value" kind="warning" />
|
|
15
|
+
<SkNumberInput v-model="value" kind="danger" />
|
|
16
|
+
```
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: min-max-step
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Configure min/max bounds and step increments to constrain the input range. Values outside bounds will be clamped when using stepper buttons.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNumberInput v-model="quantity" :min="1" :max="10" />
|
|
10
|
+
<SkNumberInput v-model="price" :min="0" :step="0.5" placeholder="0.00" />
|
|
11
|
+
```
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: sizes
|
|
3
|
+
order: 4
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Number inputs come in four sizes (`sm`, `md`, `lg`, `xl`) matching other form inputs for consistent layouts.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNumberInput v-model="value" kind="primary" size="sm" />
|
|
10
|
+
<SkNumberInput v-model="value" kind="primary" size="md" />
|
|
11
|
+
<SkNumberInput v-model="value" kind="primary" size="lg" />
|
|
12
|
+
<SkNumberInput v-model="value" kind="primary" size="xl" />
|
|
13
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: states
|
|
3
|
+
order: 7
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Number inputs support disabled and readonly states. Disabled inputs cannot be interacted with, while readonly inputs display the value but prevent modification.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkNumberInput v-model="value" kind="primary" />
|
|
10
|
+
<SkNumberInput v-model="value" kind="primary" disabled />
|
|
11
|
+
<SkNumberInput v-model="value" kind="primary" readonly />
|
|
12
|
+
```
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: usage
|
|
3
|
+
order: 2
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Simple number input with stepper buttons. Click the buttons or use arrow keys to increment/decrement the value.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<script setup>
|
|
10
|
+
import { ref } from 'vue';
|
|
11
|
+
|
|
12
|
+
const value = ref(0);
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<template>
|
|
16
|
+
<SkNumberInput v-model="value" placeholder="Enter a number" />
|
|
17
|
+
</template>
|
|
18
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: custom-width
|
|
3
|
+
order: 5
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use `sidebarWidth` to customize the sidebar width. Accepts any valid CSS width value.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkPage sidebar-width="20rem">
|
|
10
|
+
<template #sidebar>
|
|
11
|
+
<div class="p-4">
|
|
12
|
+
Wider sidebar content
|
|
13
|
+
</div>
|
|
14
|
+
</template>
|
|
15
|
+
<!-- ... -->
|
|
16
|
+
</SkPage>
|
|
17
|
+
```
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
---
|
|
2
|
+
section: fixed-header
|
|
3
|
+
order: 3
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Use `fixedHeader` to make the header stay at the top when scrolling. The content area scrolls independently while the header remains visible.
|
|
7
|
+
|
|
8
|
+
```vue
|
|
9
|
+
<SkPage fixed-header>
|
|
10
|
+
<template #header>
|
|
11
|
+
<div class="p-4">
|
|
12
|
+
<h3>Fixed Header</h3>
|
|
13
|
+
</div>
|
|
14
|
+
</template>
|
|
15
|
+
<!-- ... -->
|
|
16
|
+
</SkPage>
|
|
17
|
+
```
|