@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.
Files changed (536) hide show
  1. package/dist/components/Accordion/SkAccordion.vue.d.ts +65 -0
  2. package/dist/components/Accordion/SkAccordionItem.vue.d.ts +52 -0
  3. package/dist/components/Accordion/index.d.ts +3 -0
  4. package/dist/components/Accordion/types.d.ts +3 -0
  5. package/dist/components/Alert/SkAlert.vue.d.ts +39 -0
  6. package/dist/components/Alert/types.d.ts +4 -0
  7. package/dist/components/Avatar/SkAvatar.vue.d.ts +75 -0
  8. package/dist/components/Avatar/index.d.ts +2 -0
  9. package/dist/components/Avatar/types.d.ts +20 -0
  10. package/dist/components/Breadcrumbs/SkBreadcrumbItem.vue.d.ts +51 -0
  11. package/dist/components/Breadcrumbs/SkBreadcrumbSeparator.vue.d.ts +13 -0
  12. package/dist/components/Breadcrumbs/SkBreadcrumbs.vue.d.ts +24 -0
  13. package/dist/components/Breadcrumbs/index.d.ts +4 -0
  14. package/dist/components/Breadcrumbs/types.d.ts +18 -0
  15. package/dist/components/Button/SkButton.vue.d.ts +97 -0
  16. package/dist/components/Button/types.d.ts +5 -0
  17. package/dist/components/Card/SkCard.vue.d.ts +88 -0
  18. package/dist/components/Card/types.d.ts +2 -0
  19. package/dist/components/Checkbox/SkCheckbox.vue.d.ts +71 -0
  20. package/dist/components/Checkbox/index.d.ts +2 -0
  21. package/dist/components/Checkbox/types.d.ts +3 -0
  22. package/dist/components/Collapsible/SkCollapsible.vue.d.ts +70 -0
  23. package/dist/components/Collapsible/index.d.ts +2 -0
  24. package/dist/components/Collapsible/types.d.ts +2 -0
  25. package/dist/components/Divider/SkDivider.vue.d.ts +39 -0
  26. package/dist/components/Divider/types.d.ts +8 -0
  27. package/dist/components/Dropdown/SkDropdown.vue.d.ts +63 -0
  28. package/dist/components/Dropdown/SkDropdownMenuItem.vue.d.ts +32 -0
  29. package/dist/components/Dropdown/SkDropdownMenuSeparator.vue.d.ts +2 -0
  30. package/dist/components/Dropdown/SkDropdownSubmenu.vue.d.ts +34 -0
  31. package/dist/components/Dropdown/index.d.ts +5 -0
  32. package/dist/components/Dropdown/types.d.ts +4 -0
  33. package/dist/components/Field/SkField.vue.d.ts +99 -0
  34. package/dist/components/Field/index.d.ts +2 -0
  35. package/dist/components/Field/types.d.ts +1 -0
  36. package/dist/components/Group/SkGroup.vue.d.ts +29 -0
  37. package/dist/components/Group/types.d.ts +4 -0
  38. package/dist/components/Input/SkInput.vue.d.ts +84 -0
  39. package/dist/components/Input/index.d.ts +2 -0
  40. package/dist/components/Input/types.d.ts +4 -0
  41. package/dist/components/Listbox/SkListbox.vue.d.ts +62 -0
  42. package/dist/components/Listbox/SkListboxItem.vue.d.ts +34 -0
  43. package/dist/components/Listbox/SkListboxSeparator.vue.d.ts +2 -0
  44. package/dist/components/Listbox/index.d.ts +4 -0
  45. package/dist/components/Listbox/types.d.ts +3 -0
  46. package/dist/components/Modal/SkModal.vue.d.ts +108 -0
  47. package/dist/components/Modal/index.d.ts +2 -0
  48. package/dist/components/Modal/types.d.ts +3 -0
  49. package/dist/components/NavBar/SkNavBar.vue.d.ts +40 -0
  50. package/dist/components/NavBar/index.d.ts +2 -0
  51. package/dist/components/NavBar/types.d.ts +6 -0
  52. package/dist/components/NumberInput/SkNumberInput.vue.d.ts +93 -0
  53. package/dist/components/NumberInput/index.d.ts +2 -0
  54. package/dist/components/NumberInput/types.d.ts +3 -0
  55. package/dist/components/Page/SkPage.vue.d.ts +55 -0
  56. package/dist/components/Page/index.d.ts +2 -0
  57. package/dist/components/Page/types.d.ts +13 -0
  58. package/dist/components/Pagination/SkPagination.vue.d.ts +79 -0
  59. package/dist/components/Pagination/SkPaginationItem.vue.d.ts +44 -0
  60. package/dist/components/Pagination/index.d.ts +3 -0
  61. package/dist/components/Pagination/types.d.ts +24 -0
  62. package/dist/components/Panel/SkPanel.vue.d.ts +55 -0
  63. package/dist/components/Panel/types.d.ts +3 -0
  64. package/dist/components/Popover/SkPopover.vue.d.ts +94 -0
  65. package/dist/components/Popover/index.d.ts +2 -0
  66. package/dist/components/Popover/types.d.ts +4 -0
  67. package/dist/components/Progress/SkProgress.vue.d.ts +66 -0
  68. package/dist/components/Progress/index.d.ts +2 -0
  69. package/dist/components/Progress/types.d.ts +22 -0
  70. package/dist/components/Radio/SkRadio.vue.d.ts +59 -0
  71. package/dist/components/Radio/SkRadioGroup.vue.d.ts +85 -0
  72. package/dist/components/Radio/index.d.ts +3 -0
  73. package/dist/components/Radio/types.d.ts +4 -0
  74. package/dist/components/Sidebar/SkSidebar.vue.d.ts +38 -0
  75. package/dist/components/Sidebar/SkSidebarItem.vue.d.ts +37 -0
  76. package/dist/components/Sidebar/SkSidebarSection.vue.d.ts +44 -0
  77. package/dist/components/Sidebar/types.d.ts +2 -0
  78. package/dist/components/Skeleton/SkSkeleton.vue.d.ts +55 -0
  79. package/dist/components/Skeleton/index.d.ts +2 -0
  80. package/dist/components/Skeleton/types.d.ts +21 -0
  81. package/dist/components/Slider/SkSlider.vue.d.ts +100 -0
  82. package/dist/components/Slider/index.d.ts +2 -0
  83. package/dist/components/Slider/types.d.ts +32 -0
  84. package/dist/components/Spinner/SkSpinner.vue.d.ts +39 -0
  85. package/dist/components/Spinner/index.d.ts +2 -0
  86. package/dist/components/Spinner/types.d.ts +16 -0
  87. package/dist/components/Switch/SkSwitch.vue.d.ts +120 -0
  88. package/dist/components/Switch/index.d.ts +2 -0
  89. package/dist/components/Switch/types.d.ts +3 -0
  90. package/dist/components/Table/SkTable.vue.d.ts +86 -0
  91. package/dist/components/Table/index.d.ts +2 -0
  92. package/dist/components/Table/types.d.ts +3 -0
  93. package/dist/components/Tabs/SkTab.vue.d.ts +49 -0
  94. package/dist/components/Tabs/SkTabList.vue.d.ts +28 -0
  95. package/dist/components/Tabs/SkTabPanel.vue.d.ts +33 -0
  96. package/dist/components/Tabs/SkTabPanels.vue.d.ts +17 -0
  97. package/dist/components/Tabs/SkTabs.vue.d.ts +60 -0
  98. package/dist/components/Tabs/types.d.ts +5 -0
  99. package/dist/components/Tag/SkTag.vue.d.ts +58 -0
  100. package/dist/components/Tag/types.d.ts +8 -0
  101. package/dist/components/TagsInput/SkTagsInput.vue.d.ts +77 -0
  102. package/dist/components/TagsInput/index.d.ts +2 -0
  103. package/dist/components/TagsInput/types.d.ts +3 -0
  104. package/dist/components/Textarea/SkTextarea.vue.d.ts +85 -0
  105. package/dist/components/Textarea/index.d.ts +2 -0
  106. package/dist/components/Textarea/types.d.ts +3 -0
  107. package/dist/components/Theme/SkTheme.vue.d.ts +20 -0
  108. package/dist/components/Theme/types.d.ts +16 -0
  109. package/dist/components/Theme/useTheme.d.ts +84 -0
  110. package/dist/components/Toast/SkToast.vue.d.ts +42 -0
  111. package/dist/components/Toast/SkToastProvider.vue.d.ts +62 -0
  112. package/dist/components/Toast/index.d.ts +3 -0
  113. package/dist/components/Toast/types.d.ts +35 -0
  114. package/dist/components/Toast/useToast.d.ts +33 -0
  115. package/dist/components/Tooltip/SkTooltip.vue.d.ts +81 -0
  116. package/dist/components/Tooltip/SkTooltipProvider.vue.d.ts +70 -0
  117. package/dist/components/Tooltip/index.d.ts +3 -0
  118. package/dist/components/Tooltip/types.d.ts +4 -0
  119. package/dist/composables/useCustomColors.d.ts +74 -0
  120. package/dist/composables/useCustomColors.test.d.ts +1 -0
  121. package/dist/composables/usePortalContext.d.ts +75 -0
  122. package/dist/composables/usePortalContext.test.d.ts +1 -0
  123. package/dist/index.d.ts +149 -0
  124. package/dist/sleekspace-ui.css +2 -16
  125. package/dist/sleekspace-ui.es.js +43 -42
  126. package/dist/sleekspace-ui.umd.js +43 -42
  127. package/dist/tokens.css +968 -0
  128. package/dist/types.d.ts +29 -0
  129. package/docs/components/accordion/_meta.yaml +9 -0
  130. package/docs/components/accordion/custom-colors.md +20 -0
  131. package/docs/components/accordion/intro.md +8 -0
  132. package/docs/components/accordion/kinds.md +30 -0
  133. package/docs/components/accordion/multiple.md +28 -0
  134. package/docs/components/accordion/real-world.md +31 -0
  135. package/docs/components/accordion/usage.md +28 -0
  136. package/docs/components/alert/_meta.yaml +10 -0
  137. package/docs/components/alert/custom-colors.md +30 -0
  138. package/docs/components/alert/custom-icons.md +17 -0
  139. package/docs/components/alert/intro.md +8 -0
  140. package/docs/components/alert/kinds.md +24 -0
  141. package/docs/components/alert/prominent.md +16 -0
  142. package/docs/components/alert/rich-content.md +19 -0
  143. package/docs/components/alert/usage.md +12 -0
  144. package/docs/components/avatar/_meta.yaml +10 -0
  145. package/docs/components/avatar/custom-colors.md +14 -0
  146. package/docs/components/avatar/images.md +12 -0
  147. package/docs/components/avatar/intro.md +8 -0
  148. package/docs/components/avatar/kinds.md +16 -0
  149. package/docs/components/avatar/real-world.md +25 -0
  150. package/docs/components/avatar/sizes.md +14 -0
  151. package/docs/components/avatar/usage.md +15 -0
  152. package/docs/components/breadcrumbs/_meta.yaml +9 -0
  153. package/docs/components/breadcrumbs/custom-colors.md +14 -0
  154. package/docs/components/breadcrumbs/intro.md +8 -0
  155. package/docs/components/breadcrumbs/kinds.md +16 -0
  156. package/docs/components/breadcrumbs/real-world.md +33 -0
  157. package/docs/components/breadcrumbs/separators.md +13 -0
  158. package/docs/components/breadcrumbs/usage.md +15 -0
  159. package/docs/components/card/_meta.yaml +10 -0
  160. package/docs/components/card/intro.md +8 -0
  161. package/docs/components/card/kinds.md +24 -0
  162. package/docs/components/card/media.md +25 -0
  163. package/docs/components/card/neon-kinds.md +24 -0
  164. package/docs/components/card/no-decoration.md +15 -0
  165. package/docs/components/card/scrollable.md +23 -0
  166. package/docs/components/card/usage.md +12 -0
  167. package/docs/components/checkbox/_meta.yaml +11 -0
  168. package/docs/components/checkbox/color-kinds.md +17 -0
  169. package/docs/components/checkbox/custom-colors.md +21 -0
  170. package/docs/components/checkbox/form-example.md +24 -0
  171. package/docs/components/checkbox/intro.md +8 -0
  172. package/docs/components/checkbox/kinds.md +16 -0
  173. package/docs/components/checkbox/sizes.md +13 -0
  174. package/docs/components/checkbox/states.md +14 -0
  175. package/docs/components/checkbox/usage.md +17 -0
  176. package/docs/components/collapsible/_meta.yaml +9 -0
  177. package/docs/components/collapsible/accessibility.md +6 -0
  178. package/docs/components/collapsible/custom-colors.md +16 -0
  179. package/docs/components/collapsible/custom-trigger.md +35 -0
  180. package/docs/components/collapsible/intro.md +8 -0
  181. package/docs/components/collapsible/kinds.md +16 -0
  182. package/docs/components/collapsible/usage.md +22 -0
  183. package/docs/components/divider/_meta.yaml +10 -0
  184. package/docs/components/divider/accessibility.md +6 -0
  185. package/docs/components/divider/intro.md +8 -0
  186. package/docs/components/divider/kinds.md +16 -0
  187. package/docs/components/divider/orientation.md +18 -0
  188. package/docs/components/divider/sizes.md +24 -0
  189. package/docs/components/divider/usage.md +14 -0
  190. package/docs/components/divider/variants.md +14 -0
  191. package/docs/components/dropdown/_meta.yaml +11 -0
  192. package/docs/components/dropdown/accessibility.md +6 -0
  193. package/docs/components/dropdown/custom-colors.md +17 -0
  194. package/docs/components/dropdown/custom-trigger.md +18 -0
  195. package/docs/components/dropdown/intro.md +8 -0
  196. package/docs/components/dropdown/kinds.md +23 -0
  197. package/docs/components/dropdown/positioning.md +23 -0
  198. package/docs/components/dropdown/submenus.md +28 -0
  199. package/docs/components/dropdown/usage.md +24 -0
  200. package/docs/components/field/_meta.yaml +10 -0
  201. package/docs/components/field/accessibility.md +6 -0
  202. package/docs/components/field/description.md +15 -0
  203. package/docs/components/field/intro.md +8 -0
  204. package/docs/components/field/label-position.md +16 -0
  205. package/docs/components/field/required.md +12 -0
  206. package/docs/components/field/usage.md +19 -0
  207. package/docs/components/field/validation.md +32 -0
  208. package/docs/components/group/_meta.yaml +7 -0
  209. package/docs/components/group/accessibility.md +6 -0
  210. package/docs/components/group/intro.md +8 -0
  211. package/docs/components/group/orientation.md +22 -0
  212. package/docs/components/group/usage.md +14 -0
  213. package/docs/components/input/_meta.yaml +11 -0
  214. package/docs/components/input/accessibility.md +6 -0
  215. package/docs/components/input/custom-colors.md +21 -0
  216. package/docs/components/input/intro.md +8 -0
  217. package/docs/components/input/kinds.md +16 -0
  218. package/docs/components/input/sizes.md +13 -0
  219. package/docs/components/input/states.md +12 -0
  220. package/docs/components/input/types.md +15 -0
  221. package/docs/components/input/usage.md +17 -0
  222. package/docs/components/listbox/_meta.yaml +12 -0
  223. package/docs/components/listbox/color-kinds.md +27 -0
  224. package/docs/components/listbox/custom-colors.md +18 -0
  225. package/docs/components/listbox/form-example.md +36 -0
  226. package/docs/components/listbox/intro.md +8 -0
  227. package/docs/components/listbox/kinds.md +30 -0
  228. package/docs/components/listbox/separators.md +19 -0
  229. package/docs/components/listbox/sizes.md +24 -0
  230. package/docs/components/listbox/states.md +19 -0
  231. package/docs/components/listbox/usage.md +23 -0
  232. package/docs/components/modal/_meta.yaml +13 -0
  233. package/docs/components/modal/close-behaviors.md +49 -0
  234. package/docs/components/modal/confirmation.md +19 -0
  235. package/docs/components/modal/controlled-state.md +29 -0
  236. package/docs/components/modal/custom-colors.md +25 -0
  237. package/docs/components/modal/custom-trigger.md +28 -0
  238. package/docs/components/modal/form-modal.md +23 -0
  239. package/docs/components/modal/intro.md +8 -0
  240. package/docs/components/modal/kinds.md +30 -0
  241. package/docs/components/modal/sizes.md +21 -0
  242. package/docs/components/modal/usage.md +15 -0
  243. package/docs/components/navbar/_meta.yaml +11 -0
  244. package/docs/components/navbar/complex-layouts.md +34 -0
  245. package/docs/components/navbar/custom-colors.md +24 -0
  246. package/docs/components/navbar/icons.md +33 -0
  247. package/docs/components/navbar/intro.md +8 -0
  248. package/docs/components/navbar/kinds.md +24 -0
  249. package/docs/components/navbar/neon-colors.md +24 -0
  250. package/docs/components/navbar/sticky.md +22 -0
  251. package/docs/components/navbar/usage.md +25 -0
  252. package/docs/components/number-input/_meta.yaml +12 -0
  253. package/docs/components/number-input/color-kinds.md +17 -0
  254. package/docs/components/number-input/custom-colors.md +21 -0
  255. package/docs/components/number-input/form-example.md +55 -0
  256. package/docs/components/number-input/intro.md +8 -0
  257. package/docs/components/number-input/kinds.md +16 -0
  258. package/docs/components/number-input/min-max-step.md +11 -0
  259. package/docs/components/number-input/sizes.md +13 -0
  260. package/docs/components/number-input/states.md +12 -0
  261. package/docs/components/number-input/usage.md +18 -0
  262. package/docs/components/page/_meta.yaml +9 -0
  263. package/docs/components/page/custom-width.md +17 -0
  264. package/docs/components/page/fixed-header.md +17 -0
  265. package/docs/components/page/intro.md +8 -0
  266. package/docs/components/page/real-world.md +37 -0
  267. package/docs/components/page/sidebar-position.md +18 -0
  268. package/docs/components/page/usage.md +33 -0
  269. package/docs/components/pagination/_meta.yaml +12 -0
  270. package/docs/components/pagination/config-options.md +17 -0
  271. package/docs/components/pagination/custom-colors.md +15 -0
  272. package/docs/components/pagination/intro.md +8 -0
  273. package/docs/components/pagination/kinds.md +13 -0
  274. package/docs/components/pagination/sizes.md +14 -0
  275. package/docs/components/pagination/states.md +10 -0
  276. package/docs/components/pagination/table-example.md +28 -0
  277. package/docs/components/pagination/usage.md +10 -0
  278. package/docs/components/pagination/variants.md +13 -0
  279. package/docs/components/panel/_meta.yaml +10 -0
  280. package/docs/components/panel/custom-colors.md +18 -0
  281. package/docs/components/panel/decoration.md +20 -0
  282. package/docs/components/panel/intro.md +8 -0
  283. package/docs/components/panel/kinds.md +23 -0
  284. package/docs/components/panel/scrollable.md +18 -0
  285. package/docs/components/panel/sizes.md +20 -0
  286. package/docs/components/panel/usage.md +13 -0
  287. package/docs/components/popover/_meta.yaml +9 -0
  288. package/docs/components/popover/arrow.md +15 -0
  289. package/docs/components/popover/custom-colors.md +19 -0
  290. package/docs/components/popover/intro.md +8 -0
  291. package/docs/components/popover/kinds.md +24 -0
  292. package/docs/components/popover/positioning.md +36 -0
  293. package/docs/components/popover/usage.md +15 -0
  294. package/docs/components/progress/_meta.yaml +10 -0
  295. package/docs/components/progress/custom-colors.md +14 -0
  296. package/docs/components/progress/indeterminate.md +11 -0
  297. package/docs/components/progress/intro.md +8 -0
  298. package/docs/components/progress/kinds.md +16 -0
  299. package/docs/components/progress/sizes.md +14 -0
  300. package/docs/components/progress/usage.md +13 -0
  301. package/docs/components/progress/value-label.md +12 -0
  302. package/docs/components/radio/_meta.yaml +10 -0
  303. package/docs/components/radio/custom-colors.md +24 -0
  304. package/docs/components/radio/intro.md +8 -0
  305. package/docs/components/radio/kinds.md +23 -0
  306. package/docs/components/radio/orientation.md +22 -0
  307. package/docs/components/radio/sizes.md +23 -0
  308. package/docs/components/radio/states.md +21 -0
  309. package/docs/components/radio/usage.md +21 -0
  310. package/docs/components/sidebar/_meta.yaml +10 -0
  311. package/docs/components/sidebar/active-state.md +35 -0
  312. package/docs/components/sidebar/custom-colors.md +20 -0
  313. package/docs/components/sidebar/intro.md +8 -0
  314. package/docs/components/sidebar/kinds.md +22 -0
  315. package/docs/components/sidebar/router.md +24 -0
  316. package/docs/components/sidebar/sections.md +24 -0
  317. package/docs/components/sidebar/usage.md +25 -0
  318. package/docs/components/skeleton/_meta.yaml +8 -0
  319. package/docs/components/skeleton/animations.md +17 -0
  320. package/docs/components/skeleton/composition.md +22 -0
  321. package/docs/components/skeleton/intro.md +8 -0
  322. package/docs/components/skeleton/usage.md +12 -0
  323. package/docs/components/skeleton/variants.md +17 -0
  324. package/docs/components/slider/_meta.yaml +12 -0
  325. package/docs/components/slider/accessibility.md +6 -0
  326. package/docs/components/slider/custom-colors.md +14 -0
  327. package/docs/components/slider/intro.md +8 -0
  328. package/docs/components/slider/kinds.md +16 -0
  329. package/docs/components/slider/range.md +16 -0
  330. package/docs/components/slider/sizes.md +14 -0
  331. package/docs/components/slider/step.md +13 -0
  332. package/docs/components/slider/usage.md +16 -0
  333. package/docs/components/slider/vertical.md +14 -0
  334. package/docs/components/spinner/_meta.yaml +10 -0
  335. package/docs/components/spinner/accessibility.md +6 -0
  336. package/docs/components/spinner/custom-colors.md +13 -0
  337. package/docs/components/spinner/intro.md +8 -0
  338. package/docs/components/spinner/kinds.md +16 -0
  339. package/docs/components/spinner/sizes.md +14 -0
  340. package/docs/components/spinner/usage.md +10 -0
  341. package/docs/components/spinner/variants.md +12 -0
  342. package/docs/components/switch/_meta.yaml +12 -0
  343. package/docs/components/switch/accessibility.md +6 -0
  344. package/docs/components/switch/custom-colors.md +29 -0
  345. package/docs/components/switch/disabled.md +11 -0
  346. package/docs/components/switch/dynamic-labels.md +12 -0
  347. package/docs/components/switch/intro.md +8 -0
  348. package/docs/components/switch/kinds.md +16 -0
  349. package/docs/components/switch/sizes.md +14 -0
  350. package/docs/components/switch/thumb-color.md +16 -0
  351. package/docs/components/switch/usage.md +18 -0
  352. package/docs/components/table/_meta.yaml +12 -0
  353. package/docs/components/table/accessibility.md +6 -0
  354. package/docs/components/table/borders.md +17 -0
  355. package/docs/components/table/hoverable.md +26 -0
  356. package/docs/components/table/intro.md +8 -0
  357. package/docs/components/table/kinds.md +18 -0
  358. package/docs/components/table/striped.md +28 -0
  359. package/docs/components/table/subtle.md +26 -0
  360. package/docs/components/table/usage.md +30 -0
  361. package/docs/components/table/variants.md +23 -0
  362. package/docs/components/tabs/_meta.yaml +10 -0
  363. package/docs/components/tabs/accessibility.md +6 -0
  364. package/docs/components/tabs/custom-colors.md +23 -0
  365. package/docs/components/tabs/icons.md +23 -0
  366. package/docs/components/tabs/intro.md +8 -0
  367. package/docs/components/tabs/kinds.md +30 -0
  368. package/docs/components/tabs/usage.md +38 -0
  369. package/docs/components/tabs/vertical.md +23 -0
  370. package/docs/components/tag/_meta.yaml +11 -0
  371. package/docs/components/tag/accessibility.md +6 -0
  372. package/docs/components/tag/custom-colors.md +32 -0
  373. package/docs/components/tag/intro.md +8 -0
  374. package/docs/components/tag/kinds.md +16 -0
  375. package/docs/components/tag/removable.md +33 -0
  376. package/docs/components/tag/sizes.md +13 -0
  377. package/docs/components/tag/usage.md +13 -0
  378. package/docs/components/tag/variants.md +13 -0
  379. package/docs/components/tags-input/_meta.yaml +13 -0
  380. package/docs/components/tags-input/color-kinds.md +17 -0
  381. package/docs/components/tags-input/custom-colors.md +21 -0
  382. package/docs/components/tags-input/form-example.md +30 -0
  383. package/docs/components/tags-input/intro.md +8 -0
  384. package/docs/components/tags-input/kinds.md +16 -0
  385. package/docs/components/tags-input/max-tags.md +10 -0
  386. package/docs/components/tags-input/sizes.md +13 -0
  387. package/docs/components/tags-input/states.md +10 -0
  388. package/docs/components/tags-input/tag-customization.md +17 -0
  389. package/docs/components/tags-input/usage.md +17 -0
  390. package/docs/components/textarea/_meta.yaml +12 -0
  391. package/docs/components/textarea/color-kinds.md +17 -0
  392. package/docs/components/textarea/custom-colors.md +21 -0
  393. package/docs/components/textarea/form-example.md +37 -0
  394. package/docs/components/textarea/intro.md +8 -0
  395. package/docs/components/textarea/kinds.md +16 -0
  396. package/docs/components/textarea/rows.md +12 -0
  397. package/docs/components/textarea/sizes.md +13 -0
  398. package/docs/components/textarea/states.md +12 -0
  399. package/docs/components/textarea/usage.md +17 -0
  400. package/docs/components/theme/_meta.yaml +9 -0
  401. package/docs/components/theme/available-themes.md +16 -0
  402. package/docs/components/theme/intro.md +8 -0
  403. package/docs/components/theme/nested-themes.md +16 -0
  404. package/docs/components/theme/portal-components.md +19 -0
  405. package/docs/components/theme/programmatic-switching.md +19 -0
  406. package/docs/components/theme/usage.md +16 -0
  407. package/docs/components/toast/_meta.yaml +11 -0
  408. package/docs/components/toast/dismiss.md +15 -0
  409. package/docs/components/toast/duration.md +23 -0
  410. package/docs/components/toast/intro.md +8 -0
  411. package/docs/components/toast/kinds.md +13 -0
  412. package/docs/components/toast/real-world.md +23 -0
  413. package/docs/components/toast/setup.md +16 -0
  414. package/docs/components/toast/usage.md +18 -0
  415. package/docs/components/toast/with-title.md +14 -0
  416. package/docs/components/tooltip/_meta.yaml +14 -0
  417. package/docs/components/tooltip/alignment.md +24 -0
  418. package/docs/components/tooltip/app-level-provider.md +21 -0
  419. package/docs/components/tooltip/arrow.md +21 -0
  420. package/docs/components/tooltip/custom-colors.md +24 -0
  421. package/docs/components/tooltip/delay.md +27 -0
  422. package/docs/components/tooltip/intro.md +8 -0
  423. package/docs/components/tooltip/kinds.md +27 -0
  424. package/docs/components/tooltip/positioning.md +24 -0
  425. package/docs/components/tooltip/provider.md +26 -0
  426. package/docs/components/tooltip/real-world.md +32 -0
  427. package/docs/components/tooltip/usage.md +15 -0
  428. package/docs/guides/ai-llms.md +63 -0
  429. package/docs/guides/design-tokens/_meta.yaml +14 -0
  430. package/docs/guides/design-tokens/advanced.md +60 -0
  431. package/docs/guides/design-tokens/architecture.md +11 -0
  432. package/docs/guides/design-tokens/best-practices.md +21 -0
  433. package/docs/guides/design-tokens/component-tokens.md +37 -0
  434. package/docs/guides/design-tokens/foundation-colors.md +13 -0
  435. package/docs/guides/design-tokens/foundation-other.md +41 -0
  436. package/docs/guides/design-tokens/intro.md +19 -0
  437. package/docs/guides/design-tokens/semantic-kinds.md +33 -0
  438. package/docs/guides/design-tokens/semantic-states.md +55 -0
  439. package/docs/guides/design-tokens/themes.md +38 -0
  440. package/docs/guides/design-tokens/usage.md +55 -0
  441. package/package.json +3 -5
  442. package/src/components/Accordion/SkAccordion.vue +51 -37
  443. package/src/components/Accordion/SkAccordionItem.vue +40 -20
  444. package/src/components/Alert/SkAlert.vue +37 -27
  445. package/src/components/Avatar/SkAvatar.vue +69 -10
  446. package/src/components/Breadcrumbs/SkBreadcrumbItem.vue +63 -1
  447. package/src/components/Breadcrumbs/SkBreadcrumbSeparator.vue +32 -3
  448. package/src/components/Breadcrumbs/SkBreadcrumbs.vue +36 -0
  449. package/src/components/Button/SkButton.vue +83 -17
  450. package/src/components/Card/SkCard.vue +84 -17
  451. package/src/components/Checkbox/SkCheckbox.vue +52 -12
  452. package/src/components/Collapsible/SkCollapsible.vue +65 -27
  453. package/src/components/Divider/SkDivider.vue +51 -11
  454. package/src/components/Dropdown/SkDropdown.vue +54 -11
  455. package/src/components/Dropdown/SkDropdownMenuItem.vue +25 -6
  456. package/src/components/Dropdown/SkDropdownMenuSeparator.vue +16 -2
  457. package/src/components/Dropdown/SkDropdownSubmenu.vue +30 -8
  458. package/src/components/Field/SkField.vue +83 -15
  459. package/src/components/Group/SkGroup.vue +24 -9
  460. package/src/components/Input/SkInput.vue +77 -15
  461. package/src/components/Listbox/SkListbox.vue +48 -10
  462. package/src/components/Listbox/SkListboxItem.vue +28 -7
  463. package/src/components/Listbox/SkListboxSeparator.vue +16 -2
  464. package/src/components/Modal/SkModal.vue +85 -36
  465. package/src/components/NavBar/SkNavBar.vue +39 -9
  466. package/src/components/NumberInput/SkNumberInput.vue +85 -16
  467. package/src/components/Page/SkPage.vue +55 -6
  468. package/src/components/Pagination/SkPagination.vue +88 -0
  469. package/src/components/Pagination/SkPaginationItem.vue +51 -1
  470. package/src/components/Panel/SkPanel.vue +46 -12
  471. package/src/components/Popover/SkPopover.vue +91 -36
  472. package/src/components/Progress/SkProgress.vue +74 -10
  473. package/src/components/Radio/SkRadio.vue +48 -12
  474. package/src/components/Radio/SkRadioGroup.vue +69 -13
  475. package/src/components/Sidebar/SkSidebar.vue +36 -29
  476. package/src/components/Sidebar/SkSidebarItem.vue +34 -9
  477. package/src/components/Sidebar/SkSidebarSection.vue +22 -8
  478. package/src/components/Skeleton/SkSkeleton.vue +75 -8
  479. package/src/components/Slider/SkSlider.vue +91 -15
  480. package/src/components/Spinner/SkSpinner.vue +50 -6
  481. package/src/components/Switch/SkSwitch.vue +98 -35
  482. package/src/components/Table/SkTable.vue +79 -15
  483. package/src/components/Tabs/SkTab.vue +41 -11
  484. package/src/components/Tabs/SkTabList.vue +24 -8
  485. package/src/components/Tabs/SkTabPanel.vue +31 -9
  486. package/src/components/Tabs/SkTabPanels.vue +21 -4
  487. package/src/components/Tabs/SkTabs.vue +49 -37
  488. package/src/components/Tag/SkTag.vue +57 -32
  489. package/src/components/TagsInput/SkTagsInput.vue +75 -14
  490. package/src/components/Textarea/SkTextarea.vue +78 -15
  491. package/src/components/Theme/SkTheme.vue +27 -3
  492. package/src/components/Theme/types.ts +14 -5
  493. package/src/components/Toast/SkToast.vue +56 -9
  494. package/src/components/Toast/SkToastProvider.vue +43 -17
  495. package/src/components/Tooltip/SkTooltip.vue +66 -35
  496. package/src/components/Tooltip/SkTooltipProvider.vue +36 -36
  497. package/src/composables/usePortalContext.test.ts +2 -0
  498. package/src/styles/components/_alert.scss +0 -22
  499. package/web-types.json +302 -282
  500. package/docs/components/accordion.md +0 -92
  501. package/docs/components/alert.md +0 -72
  502. package/docs/components/avatar.md +0 -69
  503. package/docs/components/breadcrumbs.md +0 -65
  504. package/docs/components/button.md +0 -110
  505. package/docs/components/card.md +0 -87
  506. package/docs/components/checkbox.md +0 -77
  507. package/docs/components/collapsible.md +0 -71
  508. package/docs/components/divider.md +0 -62
  509. package/docs/components/dropdown.md +0 -88
  510. package/docs/components/field.md +0 -80
  511. package/docs/components/group.md +0 -41
  512. package/docs/components/input.md +0 -84
  513. package/docs/components/listbox.md +0 -82
  514. package/docs/components/modal.md +0 -101
  515. package/docs/components/navbar.md +0 -64
  516. package/docs/components/number-input.md +0 -78
  517. package/docs/components/page.md +0 -77
  518. package/docs/components/pagination.md +0 -88
  519. package/docs/components/panel.md +0 -74
  520. package/docs/components/popover.md +0 -93
  521. package/docs/components/progress.md +0 -76
  522. package/docs/components/radio.md +0 -86
  523. package/docs/components/sidebar.md +0 -74
  524. package/docs/components/skeleton.md +0 -76
  525. package/docs/components/slider.md +0 -94
  526. package/docs/components/spinner.md +0 -59
  527. package/docs/components/switch.md +0 -97
  528. package/docs/components/table.md +0 -91
  529. package/docs/components/tabs.md +0 -108
  530. package/docs/components/tag.md +0 -75
  531. package/docs/components/tags-input.md +0 -88
  532. package/docs/components/textarea.md +0 -80
  533. package/docs/components/theme.md +0 -65
  534. package/docs/components/toast.md +0 -95
  535. package/docs/components/tooltip.md +0 -90
  536. 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,13 @@
1
+ component: SkTagsInput
2
+ category: Forms
3
+ sections:
4
+ - intro
5
+ - usage
6
+ - tag-customization
7
+ - sizes
8
+ - max-tags
9
+ - kinds
10
+ - color-kinds
11
+ - states
12
+ - custom-colors
13
+ - form-example
@@ -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,8 @@
1
+ ---
2
+ section: intro
3
+ order: 1
4
+ ---
5
+
6
+ # SkTagsInput
7
+
8
+ A multi-value tag input component for entering a list of string values. Type text and press Enter to add tags; use Backspace or the delete button to remove them. Built on RekaUI's TagsInput primitive.
@@ -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,10 @@
1
+ ---
2
+ section: max-tags
3
+ order: 5
4
+ ---
5
+
6
+ Input disables when max is reached, but you can still remove tags.
7
+
8
+ ```vue
9
+ <SkTagsInput v-model="tags" :max="3" placeholder="Max 3 tags..." />
10
+ ```
@@ -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,10 @@
1
+ ---
2
+ section: states
3
+ order: 8
4
+ ---
5
+
6
+ Disabled state prevents all interaction (adding and removing tags).
7
+
8
+ ```vue
9
+ <SkTagsInput v-model="tags" disabled placeholder="Disabled" />
10
+ ```
@@ -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,12 @@
1
+ component: SkTextarea
2
+ category: Forms
3
+ sections:
4
+ - intro
5
+ - usage
6
+ - rows
7
+ - kinds
8
+ - color-kinds
9
+ - sizes
10
+ - states
11
+ - custom-colors
12
+ - form-example
@@ -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,8 @@
1
+ ---
2
+ section: intro
3
+ order: 1
4
+ ---
5
+
6
+ # SkTextarea
7
+
8
+ A multiline text input component with validation states and semantic color support. Automatically inherits kind from a parent SkField.
@@ -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,9 @@
1
+ component: SkTheme
2
+ category: Theming
3
+ sections:
4
+ - intro
5
+ - usage
6
+ - available-themes
7
+ - nested-themes
8
+ - programmatic-switching
9
+ - portal-components
@@ -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,8 @@
1
+ ---
2
+ section: intro
3
+ order: 1
4
+ ---
5
+
6
+ # SkTheme
7
+
8
+ A theme provider component that controls the color scheme for all child components. Sets a `data-scheme` attribute that CSS rules use to apply different semantic token values.
@@ -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,11 @@
1
+ component: SkToast
2
+ category: Feedback
3
+ sections:
4
+ - intro
5
+ - usage
6
+ - kinds
7
+ - with-title
8
+ - duration
9
+ - dismiss
10
+ - real-world
11
+ - setup
@@ -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
+ ```