@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,3 @@
1
+ import { ComponentKind, ComponentSize } from '../../types';
2
+ export type SkCheckboxKind = ComponentKind;
3
+ export type SkCheckboxSize = ComponentSize;
@@ -0,0 +1,70 @@
1
+ import { ComponentCustomColors } from '../../types';
2
+ import { SkCollapsibleKind } from './types';
3
+ export interface SkCollapsibleComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * Controls the expanded/collapsed state of the component. Use with `v-model:open` for
6
+ * two-way binding. When true, the content is visible; when false, it's hidden. If not
7
+ * provided, the component manages its own state internally starting with `defaultOpen`.
8
+ * @default undefined (uncontrolled mode)
9
+ */
10
+ open?: boolean;
11
+ /**
12
+ * The initial expanded state when the component is first rendered in uncontrolled mode.
13
+ * Only applies when the `open` prop is not provided. After initial render, the component
14
+ * manages its own state.
15
+ * @default false
16
+ */
17
+ defaultOpen?: boolean;
18
+ /**
19
+ * When true, disables the trigger and prevents state changes. The current expanded/collapsed
20
+ * state is preserved but cannot be changed by user interaction. The trigger element appears
21
+ * with reduced opacity and cursor changes to not-allowed.
22
+ * @default false
23
+ */
24
+ disabled?: boolean;
25
+ /**
26
+ * Semantic color kind that controls the default trigger button appearance. Semantic kinds
27
+ * (neutral, primary, accent, etc.) adapt to your theme, while color kinds provide fixed
28
+ * branding colors. Only applies when using the default trigger; ignored when using the
29
+ * trigger slot.
30
+ * @default 'neutral'
31
+ */
32
+ kind?: SkCollapsibleKind;
33
+ /**
34
+ * Label text for the default trigger button. Displayed alongside the animated chevron
35
+ * icon. Only applies when the trigger slot is not provided. For more control over the
36
+ * trigger appearance, use the trigger slot instead.
37
+ * @default 'Toggle'
38
+ */
39
+ triggerText?: string;
40
+ }
41
+ declare function __VLS_template(): {
42
+ attrs: Partial<{}>;
43
+ slots: {
44
+ trigger?(_: {
45
+ open: boolean | undefined;
46
+ }): any;
47
+ default?(_: {}): any;
48
+ };
49
+ refs: {};
50
+ rootEl: any;
51
+ };
52
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
53
+ declare const __VLS_component: import('vue').DefineComponent<SkCollapsibleComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
54
+ "update:open": (value: boolean) => any;
55
+ }, string, import('vue').PublicProps, Readonly<SkCollapsibleComponentProps> & Readonly<{
56
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
57
+ }>, {
58
+ kind: SkCollapsibleKind;
59
+ disabled: boolean;
60
+ open: boolean;
61
+ defaultOpen: boolean;
62
+ triggerText: string;
63
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
64
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
65
+ export default _default;
66
+ type __VLS_WithTemplateSlots<T, S> = T & {
67
+ new (): {
68
+ $slots: S;
69
+ };
70
+ };
@@ -0,0 +1,2 @@
1
+ export { default as SkCollapsible } from './SkCollapsible.vue';
2
+ export * from './types';
@@ -0,0 +1,2 @@
1
+ import { ComponentKind } from '../../types';
2
+ export type SkCollapsibleKind = ComponentKind;
@@ -0,0 +1,39 @@
1
+ import { ComponentKind, ComponentSize } from '../../types';
2
+ import { SkDividerOrientation, SkDividerVariant } from './types';
3
+ export interface SkDividerComponentProps {
4
+ /**
5
+ * Controls the direction of the divider line. Use 'horizontal' for separating
6
+ * vertically stacked content (the divider spans width), or 'vertical' for
7
+ * separating horizontally arranged elements (the divider spans height).
8
+ * @default 'horizontal'
9
+ */
10
+ orientation?: SkDividerOrientation;
11
+ /**
12
+ * Semantic color kind that controls the divider's line color. Semantic kinds
13
+ * (neutral, primary, accent, etc.) adapt to your theme. Use colored dividers
14
+ * sparingly to draw attention to important content boundaries.
15
+ * @default 'neutral'
16
+ */
17
+ kind?: ComponentKind;
18
+ /**
19
+ * Visual intensity variant for the divider. The default variant provides a
20
+ * clearly visible line, while 'subtle' reduces opacity for a softer, less
21
+ * prominent separation that doesn't compete with content for attention.
22
+ * @default undefined (uses default styling)
23
+ */
24
+ variant?: SkDividerVariant;
25
+ /**
26
+ * Controls the thickness of the divider line and the spacing (margin) around it.
27
+ * Larger sizes create bolder visual breaks between content sections, while smaller
28
+ * sizes provide minimal separation. Available: 'sm', 'md', 'lg', 'xl'.
29
+ * @default 'md'
30
+ */
31
+ size?: ComponentSize;
32
+ }
33
+ declare const _default: import('vue').DefineComponent<SkDividerComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkDividerComponentProps> & Readonly<{}>, {
34
+ kind: ComponentKind;
35
+ size: ComponentSize;
36
+ orientation: SkDividerOrientation;
37
+ variant: SkDividerVariant;
38
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLHRElement>;
39
+ export default _default;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Divider orientation options
3
+ */
4
+ export type SkDividerOrientation = 'horizontal' | 'vertical';
5
+ /**
6
+ * Divider variant options
7
+ */
8
+ export type SkDividerVariant = 'subtle';
@@ -0,0 +1,63 @@
1
+ import { ComponentCustomColors } from '../../types';
2
+ import { SkDropdownAlign, SkDropdownKind, SkDropdownSide } from './types';
3
+ export interface SkDropdownComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * Semantic color kind that controls the menu's accent colors for hover states and
6
+ * focus indicators. The kind is inherited by nested SkDropdownSubmenu components
7
+ * unless they specify their own kind.
8
+ * @default 'neutral'
9
+ */
10
+ kind?: SkDropdownKind;
11
+ /**
12
+ * Text displayed on the default trigger button. Only used when the trigger slot
13
+ * is not provided. For custom trigger elements (icons, avatar buttons, etc.),
14
+ * use the trigger slot instead.
15
+ * @default 'Menu'
16
+ */
17
+ triggerText?: string;
18
+ /**
19
+ * Which side of the trigger element to position the dropdown menu. The menu
20
+ * will automatically flip to the opposite side if there isn't enough space.
21
+ * The caret icon on the default trigger rotates to match this direction.
22
+ * @default 'bottom'
23
+ */
24
+ side?: SkDropdownSide;
25
+ /**
26
+ * Horizontal alignment of the dropdown menu relative to the trigger. 'start'
27
+ * aligns the menu's left edge with the trigger's left edge, 'center' centers
28
+ * the menu, and 'end' aligns right edges.
29
+ * @default 'start'
30
+ */
31
+ align?: SkDropdownAlign;
32
+ /**
33
+ * Distance in pixels between the trigger element and the dropdown menu.
34
+ * Increase for more visual separation or decrease for a tighter connection
35
+ * to the trigger element.
36
+ * @default 4
37
+ */
38
+ sideOffset?: number;
39
+ }
40
+ declare function __VLS_template(): {
41
+ attrs: Partial<{}>;
42
+ slots: {
43
+ trigger?(_: {}): any;
44
+ default?(_: {}): any;
45
+ };
46
+ refs: {};
47
+ rootEl: any;
48
+ };
49
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
50
+ declare const __VLS_component: import('vue').DefineComponent<SkDropdownComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkDropdownComponentProps> & Readonly<{}>, {
51
+ kind: SkDropdownKind;
52
+ triggerText: string;
53
+ side: SkDropdownSide;
54
+ align: SkDropdownAlign;
55
+ sideOffset: number;
56
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
57
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
58
+ export default _default;
59
+ type __VLS_WithTemplateSlots<T, S> = T & {
60
+ new (): {
61
+ $slots: S;
62
+ };
63
+ };
@@ -0,0 +1,32 @@
1
+ export interface SkDropdownMenuItemComponentProps {
2
+ /**
3
+ * When true, the menu item is visually dimmed and cannot be interacted with.
4
+ * Disabled items are skipped during keyboard navigation. Use for actions that
5
+ * are temporarily unavailable based on application state.
6
+ * @default false
7
+ */
8
+ disabled?: boolean;
9
+ }
10
+ declare function __VLS_template(): {
11
+ attrs: Partial<{}>;
12
+ slots: {
13
+ default?(_: {}): any;
14
+ };
15
+ refs: {};
16
+ rootEl: any;
17
+ };
18
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
19
+ declare const __VLS_component: import('vue').DefineComponent<SkDropdownMenuItemComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
20
+ click: (event: Event) => any;
21
+ }, string, import('vue').PublicProps, Readonly<SkDropdownMenuItemComponentProps> & Readonly<{
22
+ onClick?: ((event: Event) => any) | undefined;
23
+ }>, {
24
+ disabled: boolean;
25
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
26
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
27
+ export default _default;
28
+ type __VLS_WithTemplateSlots<T, S> = T & {
29
+ new (): {
30
+ $slots: S;
31
+ };
32
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
@@ -0,0 +1,34 @@
1
+ import { SkDropdownKind } from './types';
2
+ export interface SkDropdownSubmenuComponentProps {
3
+ /**
4
+ * The label text displayed on the submenu trigger item. This appears as a menu
5
+ * item in the parent menu with a right-pointing caret indicating it opens a submenu.
6
+ */
7
+ triggerText: string;
8
+ /**
9
+ * Semantic color kind for the submenu content. When not specified, the submenu
10
+ * automatically inherits the kind from its parent SkDropdown, ensuring visual
11
+ * consistency throughout nested menu structures.
12
+ * @default inherited from parent
13
+ */
14
+ kind?: SkDropdownKind;
15
+ }
16
+ declare function __VLS_template(): {
17
+ attrs: Partial<{}>;
18
+ slots: {
19
+ default?(_: {}): any;
20
+ };
21
+ refs: {};
22
+ rootEl: any;
23
+ };
24
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
25
+ declare const __VLS_component: import('vue').DefineComponent<SkDropdownSubmenuComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkDropdownSubmenuComponentProps> & Readonly<{}>, {
26
+ kind: SkDropdownKind;
27
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
28
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
29
+ export default _default;
30
+ type __VLS_WithTemplateSlots<T, S> = T & {
31
+ new (): {
32
+ $slots: S;
33
+ };
34
+ };
@@ -0,0 +1,5 @@
1
+ export { default as SkDropdown } from './SkDropdown.vue';
2
+ export { default as SkDropdownMenuItem } from './SkDropdownMenuItem.vue';
3
+ export { default as SkDropdownMenuSeparator } from './SkDropdownMenuSeparator.vue';
4
+ export { default as SkDropdownSubmenu } from './SkDropdownSubmenu.vue';
5
+ export type { SkDropdownAlign, SkDropdownKind, SkDropdownSide } from './types';
@@ -0,0 +1,4 @@
1
+ import { ComponentKind } from '../../types';
2
+ export type SkDropdownKind = ComponentKind;
3
+ export type SkDropdownSide = 'top' | 'right' | 'bottom' | 'left';
4
+ export type SkDropdownAlign = 'start' | 'center' | 'end';
@@ -0,0 +1,99 @@
1
+ import { SkFieldLabelPosition } from './types';
2
+ export interface SkFieldComponentProps {
3
+ /**
4
+ * Label text displayed above or beside the input. The label is automatically associated
5
+ * with the input via the `for` attribute using the generated or provided ID. Leave empty
6
+ * for inputs that don't need a visible label (use aria-label on the input instead).
7
+ * @default undefined
8
+ */
9
+ label?: string;
10
+ /**
11
+ * Help text displayed below the input providing additional context or instructions.
12
+ * When an error message is present, the description is hidden and replaced by the error.
13
+ * Connected to the input via aria-describedby for screen reader accessibility.
14
+ * @default undefined
15
+ */
16
+ description?: string;
17
+ /**
18
+ * Error message displayed below the input in a danger/red color. When present, replaces
19
+ * the description text and sets aria-invalid="true" on the input. Typically populated
20
+ * from form validation results.
21
+ * @default undefined
22
+ */
23
+ error?: string;
24
+ /**
25
+ * When true, displays a red asterisk (*) after the label to indicate the field is required.
26
+ * This is a visual indicator only—you must also set the `required` attribute on the input
27
+ * itself for form validation.
28
+ * @default false
29
+ */
30
+ required?: boolean;
31
+ /**
32
+ * Position of the label relative to the input. 'top' places the label above the input
33
+ * (default, best for most forms). 'left' places the label to the left of the input
34
+ * (useful for horizontal form layouts or settings panels).
35
+ * @default 'top'
36
+ */
37
+ labelPosition?: SkFieldLabelPosition;
38
+ /**
39
+ * Custom ID for the field. When provided, this ID is passed to the slotted input and
40
+ * used for label association. When not provided, a unique ID is auto-generated. Use
41
+ * custom IDs when you need to reference the input from elsewhere in your code.
42
+ * @default undefined (auto-generated)
43
+ */
44
+ id?: string;
45
+ /**
46
+ * Validation state that controls the visual kind of the child input. `true` applies the
47
+ * `validKind` (default: 'success'), `false` applies the `invalidKind` (default: 'danger'),
48
+ * and `null`/`undefined` lets the input use its own kind prop. Child inputs automatically
49
+ * inherit this via provide/inject.
50
+ * @default null
51
+ */
52
+ state?: boolean | null;
53
+ /**
54
+ * Semantic kind to apply to the child input when `state` is `true` (valid). Typically
55
+ * 'success' for green styling indicating valid input. The kind is provided to child
56
+ * inputs via Vue's provide/inject system.
57
+ * @default 'success'
58
+ */
59
+ validKind?: string;
60
+ /**
61
+ * Semantic kind to apply to the child input when `state` is `false` (invalid). Typically
62
+ * 'danger' for red styling indicating validation errors. The kind is provided to child
63
+ * inputs via Vue's provide/inject system.
64
+ * @default 'danger'
65
+ */
66
+ invalidKind?: string;
67
+ }
68
+ declare function __VLS_template(): {
69
+ attrs: Partial<{}>;
70
+ slots: {
71
+ default?(_: {
72
+ id: string;
73
+ ariaDescribedby: string | undefined;
74
+ ariaInvalid: string | undefined;
75
+ kind: string | undefined;
76
+ }): any;
77
+ };
78
+ refs: {};
79
+ rootEl: HTMLDivElement;
80
+ };
81
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
82
+ declare const __VLS_component: import('vue').DefineComponent<SkFieldComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkFieldComponentProps> & Readonly<{}>, {
83
+ label: string;
84
+ required: boolean;
85
+ id: string;
86
+ description: string;
87
+ error: string;
88
+ labelPosition: SkFieldLabelPosition;
89
+ state: boolean | null;
90
+ validKind: string;
91
+ invalidKind: string;
92
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
93
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
94
+ export default _default;
95
+ type __VLS_WithTemplateSlots<T, S> = T & {
96
+ new (): {
97
+ $slots: S;
98
+ };
99
+ };
@@ -0,0 +1,2 @@
1
+ export { default as SkField } from './SkField.vue';
2
+ export type { SkFieldLabelPosition } from './types';
@@ -0,0 +1 @@
1
+ export type SkFieldLabelPosition = 'top' | 'left';
@@ -0,0 +1,29 @@
1
+ import { SkGroupOrientation } from './types';
2
+ export interface SkGroupComponentProps {
3
+ /**
4
+ * Controls how child elements are arranged within the group. Use 'horizontal' for
5
+ * side-by-side layouts (like button groups or inline form controls), or 'vertical'
6
+ * for stacked layouts (like form field groups or menu items).
7
+ * @default 'horizontal'
8
+ */
9
+ orientation?: SkGroupOrientation;
10
+ }
11
+ declare function __VLS_template(): {
12
+ attrs: Partial<{}>;
13
+ slots: {
14
+ default?(_: {}): any;
15
+ };
16
+ refs: {};
17
+ rootEl: HTMLDivElement;
18
+ };
19
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
20
+ declare const __VLS_component: import('vue').DefineComponent<SkGroupComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkGroupComponentProps> & Readonly<{}>, {
21
+ orientation: SkGroupOrientation;
22
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
23
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
24
+ export default _default;
25
+ type __VLS_WithTemplateSlots<T, S> = T & {
26
+ new (): {
27
+ $slots: S;
28
+ };
29
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Group orientation options
3
+ */
4
+ export type SkGroupOrientation = 'horizontal' | 'vertical';
@@ -0,0 +1,84 @@
1
+ import { ComponentCustomColors } from '../../types';
2
+ import { SkInputKind, SkInputSize, SkInputType } from './types';
3
+ export interface SkInputComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * The HTML input type attribute controlling the input behavior and keyboard on mobile devices.
6
+ * Common types include 'text', 'email', 'password', 'tel', 'url', 'search', and 'number'.
7
+ * Note: For numeric inputs with stepper buttons, consider using SkNumberInput instead.
8
+ * @default 'text'
9
+ */
10
+ type?: SkInputType;
11
+ /**
12
+ * Semantic color kind for the input border and focus ring. Use semantic kinds like 'success'
13
+ * or 'danger' to indicate validation states. When used inside an SkField with a `state` prop,
14
+ * the field's kind automatically overrides this value.
15
+ * @default 'neutral'
16
+ */
17
+ kind?: SkInputKind;
18
+ /**
19
+ * Input size controlling height, padding, and font size. Available sizes: 'sm' (small,
20
+ * compact forms), 'md' (medium, default), 'lg' (large), 'xl' (extra large, prominent inputs).
21
+ * @default 'md'
22
+ */
23
+ size?: SkInputSize;
24
+ /**
25
+ * Placeholder text displayed when the input is empty. Use to provide hints about expected
26
+ * input format or example values. The placeholder disappears when the user begins typing.
27
+ * @default undefined
28
+ */
29
+ placeholder?: string;
30
+ /**
31
+ * When true, disables the input preventing all user interaction. The input appears with
32
+ * reduced opacity and the cursor changes to not-allowed. Disabled inputs are excluded
33
+ * from form submission.
34
+ * @default false
35
+ */
36
+ disabled?: boolean;
37
+ /**
38
+ * When true, makes the input read-only. The user can select and copy text but cannot
39
+ * modify it. Unlike disabled, read-only inputs are still included in form submission
40
+ * and maintain normal visual appearance.
41
+ * @default false
42
+ */
43
+ readonly?: boolean;
44
+ /**
45
+ * When true, marks the input as required for form validation. The browser will prevent
46
+ * form submission if the input is empty. For visual required indicators, wrap the input
47
+ * in an SkField component with `required` prop.
48
+ * @default false
49
+ */
50
+ required?: boolean;
51
+ /**
52
+ * The form field name used when submitting the input value. Required for native form
53
+ * submission and useful for form libraries that track fields by name.
54
+ * @default undefined
55
+ */
56
+ name?: string;
57
+ /**
58
+ * Autocomplete hint for the browser's autofill feature. Common values include 'off',
59
+ * 'email', 'username', 'current-password', 'new-password', 'given-name', 'family-name',
60
+ * 'street-address', etc. See MDN for the complete list of valid values.
61
+ * @default undefined
62
+ */
63
+ autocomplete?: string;
64
+ }
65
+ type __VLS_Props = SkInputComponentProps;
66
+ type __VLS_PublicProps = {
67
+ modelValue?: string | number;
68
+ } & __VLS_Props;
69
+ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
70
+ "update:modelValue": (value: string | number) => any;
71
+ }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
72
+ "onUpdate:modelValue"?: ((value: string | number) => any) | undefined;
73
+ }>, {
74
+ type: SkInputType;
75
+ kind: SkInputKind;
76
+ disabled: boolean;
77
+ size: SkInputSize;
78
+ placeholder: string;
79
+ required: boolean;
80
+ name: string;
81
+ readonly: boolean;
82
+ autocomplete: string;
83
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLInputElement>;
84
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as SkInput } from './SkInput.vue';
2
+ export type { SkInputKind, SkInputSize, SkInputType } from './types';
@@ -0,0 +1,4 @@
1
+ import { ComponentKind, ComponentSize } from '../../types';
2
+ export type SkInputKind = ComponentKind;
3
+ export type SkInputSize = ComponentSize;
4
+ export type SkInputType = 'text' | 'email' | 'password' | 'url' | 'tel' | 'search' | 'number';
@@ -0,0 +1,62 @@
1
+ import { ComponentCustomColors } from '../../types';
2
+ import { SkListboxKind, SkListboxSize } from './types';
3
+ export interface SkListboxComponentProps extends ComponentCustomColors {
4
+ /**
5
+ * Semantic color kind that controls the input border, focus ring, and selected
6
+ * item highlight appearance. When used inside SkField, inherits the field's
7
+ * kind if not explicitly set.
8
+ * @default 'neutral' (or inherited from parent SkField)
9
+ */
10
+ kind?: SkListboxKind;
11
+ /**
12
+ * Size of the input field and dropdown content. Controls the input height,
13
+ * text size, and option item dimensions. Available sizes: 'sm' (small),
14
+ * 'md' (medium), 'lg' (large).
15
+ * @default 'md'
16
+ */
17
+ size?: SkListboxSize;
18
+ /**
19
+ * Placeholder text displayed in the input field when no option is selected
20
+ * and no search text is entered. Use to guide users on what type of selection
21
+ * to make or to indicate the field purpose.
22
+ * @default 'Search...'
23
+ */
24
+ placeholder?: string;
25
+ /**
26
+ * When true, the listbox is disabled and cannot be interacted with. The input
27
+ * field is non-editable and the dropdown cannot be opened. The component
28
+ * appears with reduced opacity and the cursor changes to not-allowed.
29
+ * @default false
30
+ */
31
+ disabled?: boolean;
32
+ }
33
+ type __VLS_Props = SkListboxComponentProps;
34
+ type __VLS_PublicProps = {
35
+ modelValue?: string | string[];
36
+ } & __VLS_Props;
37
+ declare function __VLS_template(): {
38
+ attrs: Partial<{}>;
39
+ slots: {
40
+ default?(_: {}): any;
41
+ };
42
+ refs: {};
43
+ rootEl: any;
44
+ };
45
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
46
+ declare const __VLS_component: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
47
+ "update:modelValue": (value: string | string[]) => any;
48
+ }, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
49
+ "onUpdate:modelValue"?: ((value: string | string[]) => any) | undefined;
50
+ }>, {
51
+ kind: SkListboxKind;
52
+ disabled: boolean;
53
+ size: SkListboxSize;
54
+ placeholder: string;
55
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
56
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
57
+ export default _default;
58
+ type __VLS_WithTemplateSlots<T, S> = T & {
59
+ new (): {
60
+ $slots: S;
61
+ };
62
+ };
@@ -0,0 +1,34 @@
1
+ export interface SkListboxItemComponentProps {
2
+ /**
3
+ * The value this option represents. When selected, the parent SkListbox's v-model
4
+ * will be set to this value. Can be a string, number, or object for complex data.
5
+ * Must be unique within the listbox to ensure proper selection behavior.
6
+ */
7
+ value: string | number | object;
8
+ /**
9
+ * When true, this option is disabled and cannot be selected. The item appears
10
+ * with reduced opacity and is skipped during keyboard navigation. Use for
11
+ * temporarily unavailable options that should still be visible.
12
+ * @default false
13
+ */
14
+ disabled?: boolean;
15
+ }
16
+ declare function __VLS_template(): {
17
+ attrs: Partial<{}>;
18
+ slots: {
19
+ default?(_: {}): any;
20
+ };
21
+ refs: {};
22
+ rootEl: any;
23
+ };
24
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
25
+ declare const __VLS_component: import('vue').DefineComponent<SkListboxItemComponentProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<SkListboxItemComponentProps> & Readonly<{}>, {
26
+ disabled: boolean;
27
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
28
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
29
+ export default _default;
30
+ type __VLS_WithTemplateSlots<T, S> = T & {
31
+ new (): {
32
+ $slots: S;
33
+ };
34
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
2
+ export default _default;
@@ -0,0 +1,4 @@
1
+ export { default as SkListbox } from './SkListbox.vue';
2
+ export { default as SkListboxItem } from './SkListboxItem.vue';
3
+ export { default as SkListboxSeparator } from './SkListboxSeparator.vue';
4
+ export type { SkListboxKind, SkListboxSize } from './types';
@@ -0,0 +1,3 @@
1
+ import { ComponentKind, ComponentSize } from '../../types';
2
+ export type SkListboxKind = ComponentKind;
3
+ export type SkListboxSize = ComponentSize;