@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,108 @@
1
+ import { ComponentCustomColors, ComponentKind, ComponentSize } from '../../types';
2
+ export interface SkModalComponentProps extends ComponentCustomColors {
3
+ /**
4
+ * Semantic color kind that controls the modal's accent colors, including the header,
5
+ * close button, and any kind-styled elements within the modal. Semantic kinds
6
+ * (neutral, primary, accent, etc.) adapt to your theme.
7
+ * @default 'neutral'
8
+ */
9
+ kind?: ComponentKind;
10
+ /**
11
+ * Size of the modal dialog, controlling its maximum width. Use 'sm' for simple
12
+ * confirmations, 'md' for standard forms, 'lg' for complex content, and 'xl' for
13
+ * dashboards or data-heavy dialogs.
14
+ * @default 'md'
15
+ */
16
+ size?: ComponentSize;
17
+ /**
18
+ * Title text displayed in the modal header. When provided, a header section with
19
+ * the title and close button is automatically rendered. Can be overridden with
20
+ * the title slot for custom header content.
21
+ */
22
+ title?: string;
23
+ /**
24
+ * Text label for the default trigger button. When provided (and no trigger slot is
25
+ * used), renders an SkButton that opens the modal when clicked. Omit both this and
26
+ * the trigger slot to control the modal programmatically via v-model:open.
27
+ */
28
+ triggerText?: string;
29
+ /**
30
+ * Controls whether the modal is open. Use with `v-model:open` for two-way binding.
31
+ * Set to true to open the modal programmatically, false to close it. The modal
32
+ * can also be closed via the close button, Escape key, or overlay click.
33
+ * @default false
34
+ */
35
+ open?: boolean;
36
+ /**
37
+ * Whether pressing the Escape key closes the modal. Set to false for important
38
+ * dialogs where accidental dismissal should be prevented, such as unsaved form
39
+ * data or critical confirmations.
40
+ * @default true
41
+ */
42
+ closeOnEscape?: boolean;
43
+ /**
44
+ * Whether clicking the overlay (dark backdrop) closes the modal. Set to false to
45
+ * require users to interact with modal buttons rather than dismissing accidentally.
46
+ * @default true
47
+ */
48
+ closeOnOverlay?: boolean;
49
+ /**
50
+ * Boolean shorthand to prevent closing on Escape key. Equivalent to
51
+ * `:close-on-escape="false"`. Use when you prefer attribute syntax over bound values.
52
+ * @default false
53
+ */
54
+ noCloseOnEscape?: boolean;
55
+ /**
56
+ * Boolean shorthand to prevent closing on overlay click. Equivalent to
57
+ * `:close-on-overlay="false"`. Use when you prefer attribute syntax over bound values.
58
+ * @default false
59
+ */
60
+ noCloseOnOverlay?: boolean;
61
+ }
62
+ /**
63
+ * Close the modal programmatically.
64
+ * This function is exposed to all slots via slot props.
65
+ */
66
+ declare function close(): void;
67
+ declare function __VLS_template(): {
68
+ attrs: Partial<{}>;
69
+ slots: {
70
+ trigger?(_: {}): any;
71
+ title?(_: {
72
+ close: typeof close;
73
+ }): any;
74
+ default?(_: {
75
+ close: typeof close;
76
+ }): any;
77
+ footer?(_: {
78
+ close: typeof close;
79
+ }): any;
80
+ };
81
+ refs: {};
82
+ rootEl: any;
83
+ };
84
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
85
+ declare const __VLS_component: import('vue').DefineComponent<SkModalComponentProps, {
86
+ close: typeof close;
87
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
88
+ "update:open": (value: boolean) => any;
89
+ }, string, import('vue').PublicProps, Readonly<SkModalComponentProps> & Readonly<{
90
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
91
+ }>, {
92
+ kind: ComponentKind;
93
+ size: ComponentSize;
94
+ title: string;
95
+ open: boolean;
96
+ triggerText: string;
97
+ closeOnEscape: boolean;
98
+ closeOnOverlay: boolean;
99
+ noCloseOnEscape: boolean;
100
+ noCloseOnOverlay: boolean;
101
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
102
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
103
+ export default _default;
104
+ type __VLS_WithTemplateSlots<T, S> = T & {
105
+ new (): {
106
+ $slots: S;
107
+ };
108
+ };
@@ -0,0 +1,2 @@
1
+ export { default as SkModal } from './SkModal.vue';
2
+ export type { SkModalKind, SkModalSize } from './types';
@@ -0,0 +1,3 @@
1
+ import { ComponentKind, ComponentSize } from '../../types';
2
+ export type SkModalKind = ComponentKind;
3
+ export type SkModalSize = ComponentSize;
@@ -0,0 +1,40 @@
1
+ import { SkNavBarKind } from './types';
2
+ import { ComponentCustomColors } from '../../types';
3
+ export interface SkNavBarComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * Semantic color kind that controls the navbar's background and text colors. Use semantic kinds
6
+ * like 'primary' or 'accent' to match your theme, or color kinds like 'neon-blue' for fixed
7
+ * branding colors. The kind affects the entire navbar including all three slot areas.
8
+ * @default 'neutral'
9
+ */
10
+ kind?: SkNavBarKind;
11
+ /**
12
+ * When true, the navbar uses CSS `position: sticky` to remain fixed at the top of the viewport
13
+ * as the user scrolls down the page. The navbar will overlay page content below it. Set to false
14
+ * for a navbar that scrolls with the page content.
15
+ * @default true
16
+ */
17
+ sticky?: boolean;
18
+ }
19
+ declare function __VLS_template(): {
20
+ attrs: Partial<{}>;
21
+ slots: {
22
+ brand?(_: {}): any;
23
+ default?(_: {}): any;
24
+ actions?(_: {}): any;
25
+ };
26
+ refs: {};
27
+ rootEl: HTMLElement;
28
+ };
29
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
30
+ declare const __VLS_component: import('vue').DefineComponent<SkNavBarComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkNavBarComponentProps> & Readonly<{}>, {
31
+ kind: SkNavBarKind;
32
+ sticky: boolean;
33
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLElement>;
34
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
35
+ export default _default;
36
+ type __VLS_WithTemplateSlots<T, S> = T & {
37
+ new (): {
38
+ $slots: S;
39
+ };
40
+ };
@@ -0,0 +1,2 @@
1
+ export { default as SkNavBar } from './SkNavBar.vue';
2
+ export * from './types';
@@ -0,0 +1,6 @@
1
+ import { ComponentKind } from '../../types';
2
+ /**
3
+ * Available kinds for the navbar component.
4
+ * Supports both semantic kinds (themeable) and color kinds (direct palette access).
5
+ */
6
+ export type SkNavBarKind = ComponentKind;
@@ -0,0 +1,93 @@
1
+ import { ComponentCustomColors } from '../../types';
2
+ import { SkNumberInputKind, SkNumberInputSize } from './types';
3
+ export interface SkNumberInputComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * Semantic color kind for the input border and focus ring. Use semantic kinds like
6
+ * 'success' or 'danger' to indicate validation states. When used inside an SkField
7
+ * with a `state` prop, the field's kind automatically overrides this value.
8
+ * @default 'neutral'
9
+ */
10
+ kind?: SkNumberInputKind;
11
+ /**
12
+ * Input size controlling height, padding, font size, and stepper button dimensions.
13
+ * Available sizes: 'sm' (small, compact forms), 'md' (medium, default), 'lg' (large),
14
+ * 'xl' (extra large).
15
+ * @default 'md'
16
+ */
17
+ size?: SkNumberInputSize;
18
+ /**
19
+ * Placeholder text displayed when the input is empty or has no value. Use to indicate
20
+ * expected format (e.g., "0.00" for currency) or provide a hint about the field's purpose.
21
+ * @default undefined
22
+ */
23
+ placeholder?: string;
24
+ /**
25
+ * When true, disables the input and stepper buttons preventing all user interaction.
26
+ * The component appears with reduced opacity and the cursor changes to not-allowed.
27
+ * Disabled inputs are excluded from form submission.
28
+ * @default false
29
+ */
30
+ disabled?: boolean;
31
+ /**
32
+ * When true, makes the input read-only. The user can select and copy the value but
33
+ * cannot modify it via typing or stepper buttons. Unlike disabled, read-only inputs
34
+ * are still included in form submission.
35
+ * @default false
36
+ */
37
+ readonly?: boolean;
38
+ /**
39
+ * When true, marks the input as required for form validation. The browser will prevent
40
+ * form submission if the input is empty. For visual required indicators, wrap the input
41
+ * in an SkField component with `required` prop.
42
+ * @default false
43
+ */
44
+ required?: boolean;
45
+ /**
46
+ * The form field name used when submitting the input value. Required for native form
47
+ * submission and useful for form libraries that track fields by name.
48
+ * @default undefined
49
+ */
50
+ name?: string;
51
+ /**
52
+ * Minimum allowed value. The stepper buttons will not decrement below this value, and
53
+ * manual input will be constrained on blur. Use to enforce business rules like positive
54
+ * quantities or minimum prices.
55
+ * @default undefined
56
+ */
57
+ min?: number;
58
+ /**
59
+ * Maximum allowed value. The stepper buttons will not increment above this value, and
60
+ * manual input will be constrained on blur. Use to enforce limits like maximum quantity
61
+ * or inventory caps.
62
+ * @default undefined
63
+ */
64
+ max?: number;
65
+ /**
66
+ * The increment/decrement step amount when using stepper buttons or arrow keys. Use
67
+ * fractional values like 0.01 for currency or 0.1 for percentages. Pressing Shift while
68
+ * stepping may multiply the step for faster navigation.
69
+ * @default 1
70
+ */
71
+ step?: number;
72
+ }
73
+ type __VLS_Props = SkNumberInputComponentProps;
74
+ type __VLS_PublicProps = {
75
+ modelValue?: number;
76
+ } & __VLS_Props;
77
+ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
78
+ "update:modelValue": (value: number) => any;
79
+ }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
80
+ "onUpdate:modelValue"?: ((value: number) => any) | undefined;
81
+ }>, {
82
+ kind: SkNumberInputKind;
83
+ disabled: boolean;
84
+ size: SkNumberInputSize;
85
+ placeholder: string;
86
+ required: boolean;
87
+ name: string;
88
+ readonly: boolean;
89
+ min: number;
90
+ max: number;
91
+ step: number;
92
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
93
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as SkNumberInput } from './SkNumberInput.vue';
2
+ export type { SkNumberInputKind, SkNumberInputSize } from './types';
@@ -0,0 +1,3 @@
1
+ import { ComponentKind, ComponentSize } from '../../types';
2
+ export type SkNumberInputKind = ComponentKind;
3
+ export type SkNumberInputSize = ComponentSize;
@@ -0,0 +1,55 @@
1
+ import { SkPageSidebarPosition } from './types';
2
+ export interface SkPageComponentProps {
3
+ /**
4
+ * Controls which side of the page the sidebar appears on. The sidebar slot content
5
+ * will be positioned on the specified side, with the main content area filling the
6
+ * remaining space. Has no effect if the sidebar slot is not provided.
7
+ * @default 'left'
8
+ */
9
+ sidebarPosition?: SkPageSidebarPosition;
10
+ /**
11
+ * When true, the header remains fixed at the top of the viewport while the main
12
+ * content scrolls beneath it. Useful for keeping navigation always accessible.
13
+ * The content area adjusts its top padding to prevent overlap with the fixed header.
14
+ * @default false
15
+ */
16
+ fixedHeader?: boolean;
17
+ /**
18
+ * When true, the footer remains fixed at the bottom of the viewport while the main
19
+ * content scrolls above it. Useful for persistent action bars or important links.
20
+ * The content area adjusts its bottom padding to prevent overlap with the fixed footer.
21
+ * @default false
22
+ */
23
+ fixedFooter?: boolean;
24
+ /**
25
+ * Custom width for the sidebar region. Accepts any valid CSS width value (px, rem, %, etc.).
26
+ * When not specified, the sidebar uses the default width defined in the design tokens.
27
+ * Only applies when the sidebar slot is provided.
28
+ */
29
+ sidebarWidth?: string;
30
+ }
31
+ declare function __VLS_template(): {
32
+ attrs: Partial<{}>;
33
+ slots: {
34
+ header?(_: {}): any;
35
+ sidebar?(_: {}): any;
36
+ default?(_: {}): any;
37
+ footer?(_: {}): any;
38
+ };
39
+ refs: {};
40
+ rootEl: HTMLDivElement;
41
+ };
42
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
43
+ declare const __VLS_component: import('vue').DefineComponent<SkPageComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkPageComponentProps> & Readonly<{}>, {
44
+ sidebarPosition: SkPageSidebarPosition;
45
+ fixedHeader: boolean;
46
+ fixedFooter: boolean;
47
+ sidebarWidth: string;
48
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
49
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
50
+ export default _default;
51
+ type __VLS_WithTemplateSlots<T, S> = T & {
52
+ new (): {
53
+ $slots: S;
54
+ };
55
+ };
@@ -0,0 +1,2 @@
1
+ export { default as SkPage } from './SkPage.vue';
2
+ export * from './types';
@@ -0,0 +1,13 @@
1
+ /** Sidebar position */
2
+ export type SkPageSidebarPosition = 'left' | 'right';
3
+ /** Page props interface */
4
+ export interface SkPageProps {
5
+ /** Sidebar position */
6
+ sidebarPosition?: SkPageSidebarPosition;
7
+ /** Fixed header (stays at top when scrolling) */
8
+ fixedHeader?: boolean;
9
+ /** Fixed footer (stays at bottom when scrolling) */
10
+ fixedFooter?: boolean;
11
+ /** Custom sidebar width */
12
+ sidebarWidth?: string;
13
+ }
@@ -0,0 +1,79 @@
1
+ import { ComponentCustomColors } from '../../types';
2
+ import { SkPaginationProps } from './types';
3
+ export interface SkPaginationComponentProps extends SkPaginationProps, ComponentCustomColors {
4
+ /**
5
+ * The total number of pages available. This is a required prop that determines
6
+ * how many page numbers to display and when to show ellipsis indicators.
7
+ */
8
+ total: number;
9
+ /**
10
+ * The current active page number. Use with `v-model` for two-way binding. Page
11
+ * numbers are 1-indexed, so the first page is 1, not 0.
12
+ * @default 1
13
+ */
14
+ modelValue?: number;
15
+ /**
16
+ * The number of sibling pages to show on each side of the current page. For example,
17
+ * if the current page is 5 and siblingCount is 1, pages 4 and 6 will be shown.
18
+ * Higher values show more page numbers but take up more space.
19
+ * @default 1
20
+ */
21
+ siblingCount?: number;
22
+ /**
23
+ * Whether to show the "first page" and "last page" navigation buttons. These
24
+ * buttons allow users to jump directly to page 1 or the final page. Set to false
25
+ * for a more compact pagination layout.
26
+ * @default true
27
+ */
28
+ showFirstLast?: boolean;
29
+ /**
30
+ * Whether to show the "previous" and "next" navigation buttons. These buttons
31
+ * allow single-page navigation forward or backward. Typically left enabled for
32
+ * standard pagination behavior.
33
+ * @default true
34
+ */
35
+ showPrevNext?: boolean;
36
+ /**
37
+ * Semantic color kind that controls the pagination appearance. Affects the active
38
+ * page indicator and navigation button colors. Semantic kinds (neutral, primary,
39
+ * accent, etc.) adapt to your theme.
40
+ * @default 'neutral'
41
+ */
42
+ kind?: SkPaginationProps['kind'];
43
+ /**
44
+ * Size of the pagination buttons. Controls both the button dimensions and text size.
45
+ * Available sizes: 'xs' (extra small), 'sm' (small), 'md' (medium), 'lg' (large), 'xl' (extra large).
46
+ * @default 'md'
47
+ */
48
+ size?: SkPaginationProps['size'];
49
+ /**
50
+ * Visual style variant for the pagination buttons. Choose 'solid' for filled buttons,
51
+ * 'outline' for bordered buttons, 'subtle' for lightly tinted backgrounds, or 'ghost'
52
+ * for transparent buttons that only show color on hover.
53
+ * @default 'solid'
54
+ */
55
+ variant?: SkPaginationProps['variant'];
56
+ /**
57
+ * When true, the entire pagination component is disabled. All buttons become
58
+ * non-interactive and appear with reduced opacity. The cursor changes to not-allowed.
59
+ * @default false
60
+ */
61
+ disabled?: boolean;
62
+ }
63
+ declare const _default: import('vue').DefineComponent<SkPaginationComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
64
+ "update:modelValue": (page: number) => any;
65
+ }, string, import('vue').PublicProps, Readonly<SkPaginationComponentProps> & Readonly<{
66
+ "onUpdate:modelValue"?: ((page: number) => any) | undefined;
67
+ }>, {
68
+ modelValue: number;
69
+ kind: import('../../types').ComponentKind;
70
+ disabled: boolean;
71
+ baseColor: string;
72
+ textColor: string;
73
+ size: import('../../types').ComponentSize;
74
+ variant: import('./types').SkPaginationVariant;
75
+ siblingCount: number;
76
+ showFirstLast: boolean;
77
+ showPrevNext: boolean;
78
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLElement>;
79
+ export default _default;
@@ -0,0 +1,44 @@
1
+ import { SkPaginationItemProps } from './types';
2
+ export interface SkPaginationItemComponentProps {
3
+ /**
4
+ * The page number this item represents. Required for 'page', 'prev', 'next', 'first',
5
+ * and 'last' types. When clicked, this value is emitted to navigate to that page.
6
+ * Not needed for 'ellipsis' type items.
7
+ */
8
+ page?: number;
9
+ /**
10
+ * Whether this item is the currently active page. Only applicable to 'page' type items.
11
+ * Active items receive distinct styling and include aria-current="page" for accessibility.
12
+ * @default false
13
+ */
14
+ active?: boolean;
15
+ /**
16
+ * When true, the item is disabled and cannot be clicked. The item appears with
17
+ * reduced opacity and the cursor changes to not-allowed. Commonly used on
18
+ * prev/first buttons when on page 1, or next/last buttons when on the final page.
19
+ * @default false
20
+ */
21
+ disabled?: boolean;
22
+ /**
23
+ * The type of pagination item to render. Determines both the visual content and behavior:
24
+ * - 'page': Shows a page number button
25
+ * - 'prev': Shows a previous arrow (‹)
26
+ * - 'next': Shows a next arrow (›)
27
+ * - 'first': Shows a first-page arrow (‹‹)
28
+ * - 'last': Shows a last-page arrow (››)
29
+ * - 'ellipsis': Shows non-interactive dots (...)
30
+ * @default 'page'
31
+ */
32
+ type?: SkPaginationItemProps['type'];
33
+ }
34
+ declare const _default: import('vue').DefineComponent<SkPaginationItemComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
35
+ click: (page: number) => any;
36
+ }, string, import('vue').PublicProps, Readonly<SkPaginationItemComponentProps> & Readonly<{
37
+ onClick?: ((page: number) => any) | undefined;
38
+ }>, {
39
+ type: SkPaginationItemProps["type"];
40
+ disabled: boolean;
41
+ page: number;
42
+ active: boolean;
43
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLButtonElement>;
44
+ export default _default;
@@ -0,0 +1,3 @@
1
+ export { default as SkPagination } from './SkPagination.vue';
2
+ export { default as SkPaginationItem } from './SkPaginationItem.vue';
3
+ export * from './types';
@@ -0,0 +1,24 @@
1
+ import { ComponentKind, ComponentSize } from '../../types';
2
+ export type SkPaginationKind = ComponentKind;
3
+ export type SkPaginationSize = ComponentSize;
4
+ export type SkPaginationVariant = 'solid' | 'outline' | 'subtle' | 'ghost';
5
+ export type SkPaginationItemType = 'page' | 'prev' | 'next' | 'ellipsis' | 'first' | 'last';
6
+ export interface SkPaginationProps {
7
+ modelValue?: number;
8
+ total: number;
9
+ siblingCount?: number;
10
+ showFirstLast?: boolean;
11
+ showPrevNext?: boolean;
12
+ kind?: SkPaginationKind;
13
+ size?: SkPaginationSize;
14
+ variant?: SkPaginationVariant;
15
+ disabled?: boolean;
16
+ baseColor?: string;
17
+ textColor?: string;
18
+ }
19
+ export interface SkPaginationItemProps {
20
+ page?: number;
21
+ active?: boolean;
22
+ disabled?: boolean;
23
+ type: SkPaginationItemType;
24
+ }
@@ -0,0 +1,55 @@
1
+ import { ComponentCustomColors } from '../../types';
2
+ import { SkPanelKind, SkPanelSize } from './types';
3
+ export interface SkPanelComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * Semantic color kind that controls the panel's border color and decorative accent stripe.
6
+ * Semantic kinds (neutral, primary, accent, etc.) automatically adapt to your current theme,
7
+ * while color kinds (neon-blue, neon-purple, etc.) provide fixed branding colors that remain
8
+ * consistent across themes.
9
+ * @default 'neutral'
10
+ */
11
+ kind?: SkPanelKind;
12
+ /**
13
+ * Controls the internal padding of the panel. Larger sizes provide more breathing room
14
+ * for content, while smaller sizes create compact, dense layouts. Available sizes:
15
+ * 'sm' (small), 'md' (medium), 'lg' (large), 'xl' (extra large).
16
+ * @default 'md'
17
+ */
18
+ size?: SkPanelSize;
19
+ /**
20
+ * When true, displays a colored accent stripe along the top edge of the panel.
21
+ * The stripe color matches the selected `kind`. This decoration is automatically
22
+ * disabled when `noBorder` is true since the decoration is part of the border styling.
23
+ * @default true
24
+ */
25
+ showDecoration?: boolean;
26
+ /**
27
+ * When true, removes the border entirely from the panel, creating a borderless container.
28
+ * Useful for nested panels or when you want the panel background without visual boundaries.
29
+ * Note: Setting this to true automatically disables the decoration stripe.
30
+ * @default false
31
+ */
32
+ noBorder?: boolean;
33
+ }
34
+ declare function __VLS_template(): {
35
+ attrs: Partial<{}>;
36
+ slots: {
37
+ default?(_: {}): any;
38
+ };
39
+ refs: {};
40
+ rootEl: HTMLDivElement;
41
+ };
42
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
43
+ declare const __VLS_component: import('vue').DefineComponent<SkPanelComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkPanelComponentProps> & Readonly<{}>, {
44
+ kind: SkPanelKind;
45
+ size: SkPanelSize;
46
+ showDecoration: boolean;
47
+ noBorder: boolean;
48
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
49
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
50
+ export default _default;
51
+ type __VLS_WithTemplateSlots<T, S> = T & {
52
+ new (): {
53
+ $slots: S;
54
+ };
55
+ };
@@ -0,0 +1,3 @@
1
+ import { ComponentKind } from '../../types';
2
+ export type SkPanelKind = ComponentKind;
3
+ export type SkPanelSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
@@ -0,0 +1,94 @@
1
+ import { ComponentCustomColors, ComponentKind } from '../../types';
2
+ import { SkPopoverAlign, SkPopoverSide } from './types';
3
+ export interface SkPopoverComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * Semantic color kind that controls the popover's header accent and overall color scheme.
6
+ * Semantic kinds (neutral, primary, accent, info, success, warning, danger) adapt to your
7
+ * theme. Use 'neutral' for general popovers, or match the kind to contextual meaning
8
+ * (e.g., 'danger' for delete confirmations, 'success' for completion messages).
9
+ * @default 'neutral'
10
+ */
11
+ kind?: ComponentKind;
12
+ /**
13
+ * Which side of the trigger element to display the popover. The popover automatically
14
+ * repositions if there isn't enough space on the preferred side. 'bottom' works well
15
+ * for toolbars, 'right' for sidebar items, 'top' for footer elements.
16
+ * @default 'bottom'
17
+ */
18
+ side?: SkPopoverSide;
19
+ /**
20
+ * Alignment of the popover along its side. 'center' centers the popover on the trigger,
21
+ * 'start' aligns to the left/top edge, 'end' aligns to the right/bottom edge. Useful
22
+ * when triggers are near screen edges or when you want the arrow to point at a specific
23
+ * part of the trigger.
24
+ * @default 'center'
25
+ */
26
+ align?: SkPopoverAlign;
27
+ /**
28
+ * Distance in pixels between the popover and its trigger element. Increase for more
29
+ * visual separation, decrease for tighter coupling. The arrow (if shown) bridges
30
+ * this gap to maintain visual connection.
31
+ * @default 8
32
+ */
33
+ sideOffset?: number;
34
+ /**
35
+ * Whether to display a small arrow pointing from the popover toward its trigger element.
36
+ * Arrows help visually anchor the popover to its trigger, especially important when
37
+ * multiple triggers are close together. Disable for a cleaner, card-like appearance.
38
+ * @default true
39
+ */
40
+ showArrow?: boolean;
41
+ /**
42
+ * Optional title text displayed in the popover header. Creates a header section with
43
+ * the title and close button (if closable). When omitted and no header slot is provided,
44
+ * no header is rendered, creating a content-only popover.
45
+ */
46
+ title?: string;
47
+ /**
48
+ * Whether to show an X close button in the header. Provides an obvious way for users
49
+ * to dismiss the popover beyond clicking outside. Automatically creates a header section
50
+ * if title is also set. Users can always close by clicking outside or pressing Escape.
51
+ * @default true
52
+ */
53
+ closable?: boolean;
54
+ /**
55
+ * Controls the popover's open state for two-way binding with `v-model:open`. When provided,
56
+ * you control when the popover opens and closes. When omitted, the popover manages its own
57
+ * state internally (opens on trigger click, closes on outside click or Escape).
58
+ * @default undefined
59
+ */
60
+ open?: boolean;
61
+ }
62
+ declare function __VLS_template(): {
63
+ attrs: Partial<{}>;
64
+ slots: {
65
+ trigger?(_: {}): any;
66
+ header?(_: {}): any;
67
+ default?(_: {}): any;
68
+ footer?(_: {}): any;
69
+ };
70
+ refs: {};
71
+ rootEl: any;
72
+ };
73
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
74
+ declare const __VLS_component: import('vue').DefineComponent<SkPopoverComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
75
+ "update:open": (value: boolean) => any;
76
+ }, string, import('vue').PublicProps, Readonly<SkPopoverComponentProps> & Readonly<{
77
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
78
+ }>, {
79
+ kind: ComponentKind;
80
+ title: string;
81
+ open: boolean;
82
+ side: SkPopoverSide;
83
+ align: SkPopoverAlign;
84
+ sideOffset: number;
85
+ showArrow: boolean;
86
+ closable: boolean;
87
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
88
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
89
+ export default _default;
90
+ type __VLS_WithTemplateSlots<T, S> = T & {
91
+ new (): {
92
+ $slots: S;
93
+ };
94
+ };
@@ -0,0 +1,2 @@
1
+ export { default as SkPopover } from './SkPopover.vue';
2
+ export type { SkPopoverAlign, SkPopoverSide } from './types';
@@ -0,0 +1,4 @@
1
+ /** Popover positioning side */
2
+ export type SkPopoverSide = 'top' | 'right' | 'bottom' | 'left';
3
+ /** Popover alignment */
4
+ export type SkPopoverAlign = 'start' | 'center' | 'end';