svelora 2.1.0

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 (484) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +145 -0
  3. package/dist/Accordion/Accordion.svelte +207 -0
  4. package/dist/Accordion/Accordion.svelte.d.ts +6 -0
  5. package/dist/Accordion/accordion.types.d.ts +225 -0
  6. package/dist/Accordion/accordion.types.js +1 -0
  7. package/dist/Accordion/accordion.variants.d.ts +88 -0
  8. package/dist/Accordion/accordion.variants.js +28 -0
  9. package/dist/Accordion/index.d.ts +2 -0
  10. package/dist/Accordion/index.js +1 -0
  11. package/dist/Alert/Alert.svelte +131 -0
  12. package/dist/Alert/Alert.svelte.d.ts +5 -0
  13. package/dist/Alert/alert.types.d.ts +103 -0
  14. package/dist/Alert/alert.types.js +1 -0
  15. package/dist/Alert/alert.variants.d.ts +213 -0
  16. package/dist/Alert/alert.variants.js +293 -0
  17. package/dist/Alert/index.d.ts +2 -0
  18. package/dist/Alert/index.js +1 -0
  19. package/dist/Avatar/Avatar.svelte +114 -0
  20. package/dist/Avatar/Avatar.svelte.d.ts +6 -0
  21. package/dist/Avatar/avatar.types.d.ts +73 -0
  22. package/dist/Avatar/avatar.types.js +1 -0
  23. package/dist/Avatar/avatar.variants.d.ts +316 -0
  24. package/dist/Avatar/avatar.variants.js +39 -0
  25. package/dist/Avatar/index.d.ts +2 -0
  26. package/dist/Avatar/index.js +1 -0
  27. package/dist/AvatarGroup/AvatarGroup.svelte +71 -0
  28. package/dist/AvatarGroup/AvatarGroup.svelte.d.ts +5 -0
  29. package/dist/AvatarGroup/avatar-group.types.d.ts +49 -0
  30. package/dist/AvatarGroup/avatar-group.types.js +1 -0
  31. package/dist/AvatarGroup/avatar-group.variants.d.ts +258 -0
  32. package/dist/AvatarGroup/avatar-group.variants.js +35 -0
  33. package/dist/AvatarGroup/index.d.ts +2 -0
  34. package/dist/AvatarGroup/index.js +1 -0
  35. package/dist/Badge/Badge.svelte +79 -0
  36. package/dist/Badge/Badge.svelte.d.ts +5 -0
  37. package/dist/Badge/badge.types.d.ts +83 -0
  38. package/dist/Badge/badge.types.js +1 -0
  39. package/dist/Badge/badge.variants.d.ts +303 -0
  40. package/dist/Badge/badge.variants.js +259 -0
  41. package/dist/Badge/index.d.ts +2 -0
  42. package/dist/Badge/index.js +1 -0
  43. package/dist/Banner/Banner.svelte +130 -0
  44. package/dist/Banner/Banner.svelte.d.ts +5 -0
  45. package/dist/Banner/banner.types.d.ts +148 -0
  46. package/dist/Banner/banner.types.js +1 -0
  47. package/dist/Banner/banner.variants.d.ts +293 -0
  48. package/dist/Banner/banner.variants.js +86 -0
  49. package/dist/Banner/index.d.ts +2 -0
  50. package/dist/Banner/index.js +1 -0
  51. package/dist/Breadcrumb/Breadcrumb.svelte +79 -0
  52. package/dist/Breadcrumb/Breadcrumb.svelte.d.ts +5 -0
  53. package/dist/Breadcrumb/breadcrumb.types.d.ts +66 -0
  54. package/dist/Breadcrumb/breadcrumb.types.js +1 -0
  55. package/dist/Breadcrumb/breadcrumb.variants.d.ts +138 -0
  56. package/dist/Breadcrumb/breadcrumb.variants.js +53 -0
  57. package/dist/Breadcrumb/index.d.ts +2 -0
  58. package/dist/Breadcrumb/index.js +1 -0
  59. package/dist/Button/Button.svelte +177 -0
  60. package/dist/Button/Button.svelte.d.ts +5 -0
  61. package/dist/Button/button.types.d.ts +151 -0
  62. package/dist/Button/button.types.js +1 -0
  63. package/dist/Button/button.variants.d.ts +388 -0
  64. package/dist/Button/button.variants.js +461 -0
  65. package/dist/Button/index.d.ts +2 -0
  66. package/dist/Button/index.js +1 -0
  67. package/dist/Calendar/Calendar.svelte +344 -0
  68. package/dist/Calendar/Calendar.svelte.d.ts +6 -0
  69. package/dist/Calendar/calendar.types.d.ts +122 -0
  70. package/dist/Calendar/calendar.types.js +1 -0
  71. package/dist/Calendar/calendar.variants.d.ts +553 -0
  72. package/dist/Calendar/calendar.variants.js +368 -0
  73. package/dist/Calendar/index.d.ts +2 -0
  74. package/dist/Calendar/index.js +1 -0
  75. package/dist/Card/Card.svelte +54 -0
  76. package/dist/Card/Card.svelte.d.ts +5 -0
  77. package/dist/Card/card.types.d.ts +36 -0
  78. package/dist/Card/card.types.js +1 -0
  79. package/dist/Card/card.variants.d.ts +108 -0
  80. package/dist/Card/card.variants.js +32 -0
  81. package/dist/Card/index.d.ts +2 -0
  82. package/dist/Card/index.js +1 -0
  83. package/dist/Carousel/Carousel.svelte +277 -0
  84. package/dist/Carousel/Carousel.svelte.d.ts +26 -0
  85. package/dist/Carousel/carousel.types.d.ts +251 -0
  86. package/dist/Carousel/carousel.types.js +1 -0
  87. package/dist/Carousel/carousel.variants.d.ts +408 -0
  88. package/dist/Carousel/carousel.variants.js +88 -0
  89. package/dist/Carousel/index.d.ts +2 -0
  90. package/dist/Carousel/index.js +1 -0
  91. package/dist/Checkbox/Checkbox.svelte +161 -0
  92. package/dist/Checkbox/Checkbox.svelte.d.ts +6 -0
  93. package/dist/Checkbox/checkbox.types.d.ts +101 -0
  94. package/dist/Checkbox/checkbox.types.js +1 -0
  95. package/dist/Checkbox/checkbox.variants.d.ts +448 -0
  96. package/dist/Checkbox/checkbox.variants.js +209 -0
  97. package/dist/Checkbox/index.d.ts +2 -0
  98. package/dist/Checkbox/index.js +1 -0
  99. package/dist/CheckboxGroup/CheckboxGroup.svelte +219 -0
  100. package/dist/CheckboxGroup/CheckboxGroup.svelte.d.ts +5 -0
  101. package/dist/CheckboxGroup/checkbox-group.types.d.ts +130 -0
  102. package/dist/CheckboxGroup/checkbox-group.types.js +1 -0
  103. package/dist/CheckboxGroup/checkbox-group.variants.d.ts +553 -0
  104. package/dist/CheckboxGroup/checkbox-group.variants.js +231 -0
  105. package/dist/CheckboxGroup/index.d.ts +2 -0
  106. package/dist/CheckboxGroup/index.js +1 -0
  107. package/dist/Chip/Chip.svelte +51 -0
  108. package/dist/Chip/Chip.svelte.d.ts +5 -0
  109. package/dist/Chip/chip.types.d.ts +66 -0
  110. package/dist/Chip/chip.types.js +1 -0
  111. package/dist/Chip/chip.variants.d.ts +418 -0
  112. package/dist/Chip/chip.variants.js +74 -0
  113. package/dist/Chip/index.d.ts +2 -0
  114. package/dist/Chip/index.js +1 -0
  115. package/dist/Collapsible/Collapsible.svelte +69 -0
  116. package/dist/Collapsible/Collapsible.svelte.d.ts +6 -0
  117. package/dist/Collapsible/CollapsibleTestWrapper.svelte +17 -0
  118. package/dist/Collapsible/CollapsibleTestWrapper.svelte.d.ts +4 -0
  119. package/dist/Collapsible/collapsible.types.d.ts +77 -0
  120. package/dist/Collapsible/collapsible.types.js +1 -0
  121. package/dist/Collapsible/collapsible.variants.d.ts +53 -0
  122. package/dist/Collapsible/collapsible.variants.js +21 -0
  123. package/dist/Collapsible/index.d.ts +2 -0
  124. package/dist/Collapsible/index.js +1 -0
  125. package/dist/Command/Command.svelte +183 -0
  126. package/dist/Command/Command.svelte.d.ts +6 -0
  127. package/dist/Command/CommandTestWrapper.svelte +13 -0
  128. package/dist/Command/CommandTestWrapper.svelte.d.ts +4 -0
  129. package/dist/Command/command.types.d.ts +100 -0
  130. package/dist/Command/command.types.js +1 -0
  131. package/dist/Command/command.variants.d.ts +226 -0
  132. package/dist/Command/command.variants.js +86 -0
  133. package/dist/Command/index.d.ts +2 -0
  134. package/dist/Command/index.js +1 -0
  135. package/dist/Container/Container.svelte +21 -0
  136. package/dist/Container/Container.svelte.d.ts +5 -0
  137. package/dist/Container/container.types.d.ts +19 -0
  138. package/dist/Container/container.types.js +1 -0
  139. package/dist/Container/container.variants.d.ts +29 -0
  140. package/dist/Container/container.variants.js +9 -0
  141. package/dist/Container/index.d.ts +2 -0
  142. package/dist/Container/index.js +1 -0
  143. package/dist/ContextMenu/ContextMenu.svelte +344 -0
  144. package/dist/ContextMenu/ContextMenu.svelte.d.ts +6 -0
  145. package/dist/ContextMenu/context-menu.types.d.ts +265 -0
  146. package/dist/ContextMenu/context-menu.types.js +1 -0
  147. package/dist/ContextMenu/context-menu.variants.d.ts +307 -0
  148. package/dist/ContextMenu/context-menu.variants.js +144 -0
  149. package/dist/ContextMenu/index.d.ts +2 -0
  150. package/dist/ContextMenu/index.js +1 -0
  151. package/dist/Drawer/Drawer.svelte +207 -0
  152. package/dist/Drawer/Drawer.svelte.d.ts +6 -0
  153. package/dist/Drawer/DrawerTriggerTestWrapper.svelte +10 -0
  154. package/dist/Drawer/DrawerTriggerTestWrapper.svelte.d.ts +18 -0
  155. package/dist/Drawer/drawer.types.d.ts +116 -0
  156. package/dist/Drawer/drawer.types.js +1 -0
  157. package/dist/Drawer/drawer.variants.d.ts +193 -0
  158. package/dist/Drawer/drawer.variants.js +139 -0
  159. package/dist/Drawer/index.d.ts +2 -0
  160. package/dist/Drawer/index.js +1 -0
  161. package/dist/DropdownMenu/DropdownMenu.svelte +363 -0
  162. package/dist/DropdownMenu/DropdownMenu.svelte.d.ts +6 -0
  163. package/dist/DropdownMenu/DropdownMenuTriggerTestWrapper.svelte +12 -0
  164. package/dist/DropdownMenu/DropdownMenuTriggerTestWrapper.svelte.d.ts +7 -0
  165. package/dist/DropdownMenu/dropdown-menu.types.d.ts +279 -0
  166. package/dist/DropdownMenu/dropdown-menu.types.js +1 -0
  167. package/dist/DropdownMenu/dropdown-menu.variants.d.ts +312 -0
  168. package/dist/DropdownMenu/dropdown-menu.variants.js +149 -0
  169. package/dist/DropdownMenu/index.d.ts +2 -0
  170. package/dist/DropdownMenu/index.js +1 -0
  171. package/dist/Editor/Editor.svelte +756 -0
  172. package/dist/Editor/Editor.svelte.d.ts +6 -0
  173. package/dist/Editor/EditorUrlPrompt.svelte +94 -0
  174. package/dist/Editor/EditorUrlPrompt.svelte.d.ts +15 -0
  175. package/dist/Editor/SlashPopup.svelte +74 -0
  176. package/dist/Editor/SlashPopup.svelte.d.ts +11 -0
  177. package/dist/Editor/editor.extensions.d.ts +23 -0
  178. package/dist/Editor/editor.extensions.js +132 -0
  179. package/dist/Editor/editor.schemas.d.ts +5 -0
  180. package/dist/Editor/editor.schemas.js +27 -0
  181. package/dist/Editor/editor.slash.svelte.d.ts +25 -0
  182. package/dist/Editor/editor.slash.svelte.js +299 -0
  183. package/dist/Editor/editor.suggestion.d.ts +7 -0
  184. package/dist/Editor/editor.suggestion.js +165 -0
  185. package/dist/Editor/editor.toolbar.d.ts +11 -0
  186. package/dist/Editor/editor.toolbar.js +204 -0
  187. package/dist/Editor/editor.types.d.ts +367 -0
  188. package/dist/Editor/editor.types.js +1 -0
  189. package/dist/Editor/editor.variants.d.ts +303 -0
  190. package/dist/Editor/editor.variants.js +135 -0
  191. package/dist/Editor/index.d.ts +55 -0
  192. package/dist/Editor/index.js +54 -0
  193. package/dist/Empty/Empty.svelte +118 -0
  194. package/dist/Empty/Empty.svelte.d.ts +5 -0
  195. package/dist/Empty/empty.types.d.ts +91 -0
  196. package/dist/Empty/empty.types.js +1 -0
  197. package/dist/Empty/empty.variants.d.ts +308 -0
  198. package/dist/Empty/empty.variants.js +73 -0
  199. package/dist/Empty/index.d.ts +2 -0
  200. package/dist/Empty/index.js +1 -0
  201. package/dist/FieldGroup/FieldGroup.svelte +53 -0
  202. package/dist/FieldGroup/FieldGroup.svelte.d.ts +5 -0
  203. package/dist/FieldGroup/field-group.types.d.ts +37 -0
  204. package/dist/FieldGroup/field-group.types.js +1 -0
  205. package/dist/FieldGroup/field-group.variants.d.ts +116 -0
  206. package/dist/FieldGroup/field-group.variants.js +49 -0
  207. package/dist/FieldGroup/index.d.ts +2 -0
  208. package/dist/FieldGroup/index.js +1 -0
  209. package/dist/FileUpload/FileUpload.svelte +639 -0
  210. package/dist/FileUpload/FileUpload.svelte.d.ts +8 -0
  211. package/dist/FileUpload/file-upload.types.d.ts +203 -0
  212. package/dist/FileUpload/file-upload.types.js +1 -0
  213. package/dist/FileUpload/file-upload.variants.d.ts +397 -0
  214. package/dist/FileUpload/file-upload.variants.js +224 -0
  215. package/dist/FileUpload/index.d.ts +2 -0
  216. package/dist/FileUpload/index.js +1 -0
  217. package/dist/Form/Form.svelte +197 -0
  218. package/dist/Form/Form.svelte.d.ts +26 -0
  219. package/dist/Form/form.context.svelte.d.ts +64 -0
  220. package/dist/Form/form.context.svelte.js +478 -0
  221. package/dist/Form/form.types.d.ts +164 -0
  222. package/dist/Form/form.types.js +12 -0
  223. package/dist/Form/form.variants.d.ts +39 -0
  224. package/dist/Form/form.variants.js +17 -0
  225. package/dist/Form/index.d.ts +4 -0
  226. package/dist/Form/index.js +6 -0
  227. package/dist/Form/validate-schema.d.ts +13 -0
  228. package/dist/Form/validate-schema.js +113 -0
  229. package/dist/FormField/FormField.svelte +186 -0
  230. package/dist/FormField/FormField.svelte.d.ts +5 -0
  231. package/dist/FormField/form-field.types.d.ts +109 -0
  232. package/dist/FormField/form-field.types.js +1 -0
  233. package/dist/FormField/form-field.variants.d.ts +313 -0
  234. package/dist/FormField/form-field.variants.js +74 -0
  235. package/dist/FormField/index.d.ts +2 -0
  236. package/dist/FormField/index.js +1 -0
  237. package/dist/Icon/Icon.svelte +46 -0
  238. package/dist/Icon/Icon.svelte.d.ts +6 -0
  239. package/dist/Icon/icon.types.d.ts +49 -0
  240. package/dist/Icon/icon.types.js +1 -0
  241. package/dist/Icon/index.d.ts +2 -0
  242. package/dist/Icon/index.js +1 -0
  243. package/dist/Input/Input.svelte +199 -0
  244. package/dist/Input/Input.svelte.d.ts +26 -0
  245. package/dist/Input/index.d.ts +2 -0
  246. package/dist/Input/index.js +1 -0
  247. package/dist/Input/input.types.d.ts +113 -0
  248. package/dist/Input/input.types.js +1 -0
  249. package/dist/Input/input.variants.d.ts +398 -0
  250. package/dist/Input/input.variants.js +387 -0
  251. package/dist/Kbd/Kbd.svelte +45 -0
  252. package/dist/Kbd/Kbd.svelte.d.ts +5 -0
  253. package/dist/Kbd/index.d.ts +3 -0
  254. package/dist/Kbd/index.js +2 -0
  255. package/dist/Kbd/kbd.types.d.ts +91 -0
  256. package/dist/Kbd/kbd.types.js +1 -0
  257. package/dist/Kbd/kbd.variants.d.ts +180 -0
  258. package/dist/Kbd/kbd.variants.js +168 -0
  259. package/dist/Kbd/useKbd.svelte.d.ts +29 -0
  260. package/dist/Kbd/useKbd.svelte.js +248 -0
  261. package/dist/Link/Link.svelte +168 -0
  262. package/dist/Link/Link.svelte.d.ts +5 -0
  263. package/dist/Link/index.d.ts +2 -0
  264. package/dist/Link/index.js +1 -0
  265. package/dist/Link/link.types.d.ts +86 -0
  266. package/dist/Link/link.types.js +1 -0
  267. package/dist/Link/link.variants.d.ts +113 -0
  268. package/dist/Link/link.variants.js +43 -0
  269. package/dist/Modal/Modal.svelte +218 -0
  270. package/dist/Modal/Modal.svelte.d.ts +5 -0
  271. package/dist/Modal/ModalTriggerTestWrapper.svelte +10 -0
  272. package/dist/Modal/ModalTriggerTestWrapper.svelte.d.ts +18 -0
  273. package/dist/Modal/index.d.ts +2 -0
  274. package/dist/Modal/index.js +1 -0
  275. package/dist/Modal/modal.types.d.ts +155 -0
  276. package/dist/Modal/modal.types.js +1 -0
  277. package/dist/Modal/modal.variants.d.ts +303 -0
  278. package/dist/Modal/modal.variants.js +90 -0
  279. package/dist/Pagination/Pagination.svelte +253 -0
  280. package/dist/Pagination/Pagination.svelte.d.ts +6 -0
  281. package/dist/Pagination/index.d.ts +2 -0
  282. package/dist/Pagination/index.js +1 -0
  283. package/dist/Pagination/pagination.types.d.ts +191 -0
  284. package/dist/Pagination/pagination.types.js +1 -0
  285. package/dist/Pagination/pagination.variants.d.ts +160 -0
  286. package/dist/Pagination/pagination.variants.js +125 -0
  287. package/dist/PinInput/PinInput.svelte +162 -0
  288. package/dist/PinInput/PinInput.svelte.d.ts +6 -0
  289. package/dist/PinInput/index.d.ts +2 -0
  290. package/dist/PinInput/index.js +1 -0
  291. package/dist/PinInput/pin-input.types.d.ts +110 -0
  292. package/dist/PinInput/pin-input.types.js +1 -0
  293. package/dist/PinInput/pin-input.variants.d.ts +303 -0
  294. package/dist/PinInput/pin-input.variants.js +196 -0
  295. package/dist/Popover/Popover.svelte +122 -0
  296. package/dist/Popover/Popover.svelte.d.ts +6 -0
  297. package/dist/Popover/index.d.ts +2 -0
  298. package/dist/Popover/index.js +1 -0
  299. package/dist/Popover/popover.types.d.ts +58 -0
  300. package/dist/Popover/popover.types.js +1 -0
  301. package/dist/Popover/popover.variants.d.ts +53 -0
  302. package/dist/Popover/popover.variants.js +31 -0
  303. package/dist/Progress/Progress.svelte +135 -0
  304. package/dist/Progress/Progress.svelte.d.ts +6 -0
  305. package/dist/Progress/index.d.ts +2 -0
  306. package/dist/Progress/index.js +1 -0
  307. package/dist/Progress/progress.types.d.ts +71 -0
  308. package/dist/Progress/progress.types.js +1 -0
  309. package/dist/Progress/progress.variants.d.ts +513 -0
  310. package/dist/Progress/progress.variants.js +204 -0
  311. package/dist/RadioGroup/RadioGroup.svelte +226 -0
  312. package/dist/RadioGroup/RadioGroup.svelte.d.ts +6 -0
  313. package/dist/RadioGroup/index.d.ts +2 -0
  314. package/dist/RadioGroup/index.js +1 -0
  315. package/dist/RadioGroup/radio-group.types.d.ts +111 -0
  316. package/dist/RadioGroup/radio-group.types.js +1 -0
  317. package/dist/RadioGroup/radio-group.variants.d.ts +543 -0
  318. package/dist/RadioGroup/radio-group.variants.js +232 -0
  319. package/dist/Select/Select.svelte +461 -0
  320. package/dist/Select/Select.svelte.d.ts +6 -0
  321. package/dist/Select/index.d.ts +2 -0
  322. package/dist/Select/index.js +1 -0
  323. package/dist/Select/select.types.d.ts +263 -0
  324. package/dist/Select/select.types.js +1 -0
  325. package/dist/Select/select.variants.d.ts +713 -0
  326. package/dist/Select/select.variants.js +482 -0
  327. package/dist/SelectMenu/SelectMenu.svelte +637 -0
  328. package/dist/SelectMenu/SelectMenu.svelte.d.ts +5 -0
  329. package/dist/SelectMenu/SelectMenuFormFieldTestWrapper.svelte +11 -0
  330. package/dist/SelectMenu/SelectMenuFormFieldTestWrapper.svelte.d.ts +7 -0
  331. package/dist/SelectMenu/index.d.ts +2 -0
  332. package/dist/SelectMenu/index.js +1 -0
  333. package/dist/SelectMenu/select-menu.types.d.ts +326 -0
  334. package/dist/SelectMenu/select-menu.types.js +1 -0
  335. package/dist/SelectMenu/select-menu.variants.d.ts +795 -0
  336. package/dist/SelectMenu/select-menu.variants.js +70 -0
  337. package/dist/Separator/Separator.svelte +77 -0
  338. package/dist/Separator/Separator.svelte.d.ts +6 -0
  339. package/dist/Separator/index.d.ts +2 -0
  340. package/dist/Separator/index.js +1 -0
  341. package/dist/Separator/separator.types.d.ts +53 -0
  342. package/dist/Separator/separator.types.js +1 -0
  343. package/dist/Separator/separator.variants.d.ts +509 -0
  344. package/dist/Separator/separator.variants.js +110 -0
  345. package/dist/Skeleton/Skeleton.svelte +39 -0
  346. package/dist/Skeleton/Skeleton.svelte.d.ts +5 -0
  347. package/dist/Skeleton/index.d.ts +2 -0
  348. package/dist/Skeleton/index.js +1 -0
  349. package/dist/Skeleton/skeleton.types.d.ts +27 -0
  350. package/dist/Skeleton/skeleton.types.js +1 -0
  351. package/dist/Skeleton/skeleton.variants.d.ts +18 -0
  352. package/dist/Skeleton/skeleton.variants.js +12 -0
  353. package/dist/Slideover/Slideover.svelte +212 -0
  354. package/dist/Slideover/Slideover.svelte.d.ts +5 -0
  355. package/dist/Slideover/SlideoverTriggerTestWrapper.svelte +10 -0
  356. package/dist/Slideover/SlideoverTriggerTestWrapper.svelte.d.ts +18 -0
  357. package/dist/Slideover/index.d.ts +2 -0
  358. package/dist/Slideover/index.js +1 -0
  359. package/dist/Slideover/slideover.types.d.ts +154 -0
  360. package/dist/Slideover/slideover.types.js +1 -0
  361. package/dist/Slideover/slideover.variants.d.ts +298 -0
  362. package/dist/Slideover/slideover.variants.js +145 -0
  363. package/dist/Slider/Slider.svelte +129 -0
  364. package/dist/Slider/Slider.svelte.d.ts +6 -0
  365. package/dist/Slider/index.d.ts +2 -0
  366. package/dist/Slider/index.js +1 -0
  367. package/dist/Slider/slider.types.d.ts +55 -0
  368. package/dist/Slider/slider.types.js +1 -0
  369. package/dist/Slider/slider.variants.d.ts +383 -0
  370. package/dist/Slider/slider.variants.js +102 -0
  371. package/dist/Stepper/Stepper.svelte +254 -0
  372. package/dist/Stepper/Stepper.svelte.d.ts +5 -0
  373. package/dist/Stepper/index.d.ts +2 -0
  374. package/dist/Stepper/index.js +1 -0
  375. package/dist/Stepper/stepper.types.d.ts +223 -0
  376. package/dist/Stepper/stepper.types.js +1 -0
  377. package/dist/Stepper/stepper.variants.d.ts +428 -0
  378. package/dist/Stepper/stepper.variants.js +204 -0
  379. package/dist/Switch/Switch.svelte +150 -0
  380. package/dist/Switch/Switch.svelte.d.ts +6 -0
  381. package/dist/Switch/index.d.ts +2 -0
  382. package/dist/Switch/index.js +1 -0
  383. package/dist/Switch/switch.types.d.ts +80 -0
  384. package/dist/Switch/switch.types.js +1 -0
  385. package/dist/Switch/switch.variants.d.ts +433 -0
  386. package/dist/Switch/switch.variants.js +171 -0
  387. package/dist/Table/Table.svelte +667 -0
  388. package/dist/Table/Table.svelte.d.ts +26 -0
  389. package/dist/Table/index.d.ts +2 -0
  390. package/dist/Table/index.js +1 -0
  391. package/dist/Table/table.types.d.ts +202 -0
  392. package/dist/Table/table.types.js +1 -0
  393. package/dist/Table/table.utils.d.ts +54 -0
  394. package/dist/Table/table.utils.js +167 -0
  395. package/dist/Table/table.variants.d.ts +205 -0
  396. package/dist/Table/table.variants.js +126 -0
  397. package/dist/Tabs/Tabs.svelte +188 -0
  398. package/dist/Tabs/Tabs.svelte.d.ts +6 -0
  399. package/dist/Tabs/index.d.ts +2 -0
  400. package/dist/Tabs/index.js +1 -0
  401. package/dist/Tabs/tabs.types.d.ts +207 -0
  402. package/dist/Tabs/tabs.types.js +1 -0
  403. package/dist/Tabs/tabs.variants.d.ts +298 -0
  404. package/dist/Tabs/tabs.variants.js +251 -0
  405. package/dist/Textarea/Textarea.svelte +215 -0
  406. package/dist/Textarea/Textarea.svelte.d.ts +5 -0
  407. package/dist/Textarea/index.d.ts +2 -0
  408. package/dist/Textarea/index.js +1 -0
  409. package/dist/Textarea/textarea.types.d.ts +103 -0
  410. package/dist/Textarea/textarea.types.js +1 -0
  411. package/dist/Textarea/textarea.variants.d.ts +403 -0
  412. package/dist/Textarea/textarea.variants.js +404 -0
  413. package/dist/ThemeModeButton/ThemeModeButton.svelte +74 -0
  414. package/dist/ThemeModeButton/ThemeModeButton.svelte.d.ts +5 -0
  415. package/dist/ThemeModeButton/index.d.ts +2 -0
  416. package/dist/ThemeModeButton/index.js +1 -0
  417. package/dist/ThemeModeButton/theme-mode-button.types.d.ts +69 -0
  418. package/dist/ThemeModeButton/theme-mode-button.types.js +1 -0
  419. package/dist/ThemeModeButton/theme-mode-button.variants.d.ts +21 -0
  420. package/dist/ThemeModeButton/theme-mode-button.variants.js +17 -0
  421. package/dist/Timeline/Timeline.svelte +116 -0
  422. package/dist/Timeline/Timeline.svelte.d.ts +5 -0
  423. package/dist/Timeline/index.d.ts +2 -0
  424. package/dist/Timeline/index.js +1 -0
  425. package/dist/Timeline/timeline.types.d.ts +138 -0
  426. package/dist/Timeline/timeline.types.js +1 -0
  427. package/dist/Timeline/timeline.variants.d.ts +413 -0
  428. package/dist/Timeline/timeline.variants.js +201 -0
  429. package/dist/Toast/Toaster.svelte +619 -0
  430. package/dist/Toast/Toaster.svelte.d.ts +5 -0
  431. package/dist/Toast/index.d.ts +4 -0
  432. package/dist/Toast/index.js +2 -0
  433. package/dist/Toast/toast.d.ts +38 -0
  434. package/dist/Toast/toast.js +73 -0
  435. package/dist/Toast/toast.types.d.ts +19 -0
  436. package/dist/Toast/toast.types.js +1 -0
  437. package/dist/Toast/toast.variants.d.ts +7 -0
  438. package/dist/Toast/toast.variants.js +5 -0
  439. package/dist/Tooltip/Tooltip.svelte +151 -0
  440. package/dist/Tooltip/Tooltip.svelte.d.ts +6 -0
  441. package/dist/Tooltip/TooltipTestWrapper.svelte +8 -0
  442. package/dist/Tooltip/TooltipTestWrapper.svelte.d.ts +4 -0
  443. package/dist/Tooltip/index.d.ts +2 -0
  444. package/dist/Tooltip/index.js +1 -0
  445. package/dist/Tooltip/tooltip.types.d.ts +62 -0
  446. package/dist/Tooltip/tooltip.types.js +1 -0
  447. package/dist/Tooltip/tooltip.variants.d.ts +68 -0
  448. package/dist/Tooltip/tooltip.variants.js +35 -0
  449. package/dist/User/User.svelte +98 -0
  450. package/dist/User/User.svelte.d.ts +5 -0
  451. package/dist/User/index.d.ts +2 -0
  452. package/dist/User/index.js +1 -0
  453. package/dist/User/user.types.d.ts +78 -0
  454. package/dist/User/user.types.js +1 -0
  455. package/dist/User/user.variants.d.ts +368 -0
  456. package/dist/User/user.variants.js +85 -0
  457. package/dist/config.d.ts +73 -0
  458. package/dist/config.js +108 -0
  459. package/dist/hooks/HookContextProbe.svelte +7 -0
  460. package/dist/hooks/HookContextProbe.svelte.d.ts +18 -0
  461. package/dist/hooks/HookContextProvider.svelte +9 -0
  462. package/dist/hooks/HookContextProvider.svelte.d.ts +18 -0
  463. package/dist/hooks/HookEmitProbe.svelte +14 -0
  464. package/dist/hooks/HookEmitProbe.svelte.d.ts +18 -0
  465. package/dist/hooks/index.d.ts +14 -0
  466. package/dist/hooks/index.js +7 -0
  467. package/dist/hooks/useClickOutside.svelte.d.ts +31 -0
  468. package/dist/hooks/useClickOutside.svelte.js +37 -0
  469. package/dist/hooks/useClipboard.svelte.d.ts +30 -0
  470. package/dist/hooks/useClipboard.svelte.js +45 -0
  471. package/dist/hooks/useDebounce.svelte.d.ts +36 -0
  472. package/dist/hooks/useDebounce.svelte.js +56 -0
  473. package/dist/hooks/useEscapeKeydown.svelte.d.ts +31 -0
  474. package/dist/hooks/useEscapeKeydown.svelte.js +37 -0
  475. package/dist/hooks/useFormField.svelte.d.ts +54 -0
  476. package/dist/hooks/useFormField.svelte.js +65 -0
  477. package/dist/hooks/useInfiniteScroll.svelte.d.ts +57 -0
  478. package/dist/hooks/useInfiniteScroll.svelte.js +69 -0
  479. package/dist/hooks/useMediaQuery.svelte.d.ts +31 -0
  480. package/dist/hooks/useMediaQuery.svelte.js +38 -0
  481. package/dist/index.d.ts +56 -0
  482. package/dist/index.js +57 -0
  483. package/dist/theme.css +680 -0
  484. package/package.json +237 -0
@@ -0,0 +1,209 @@
1
+ import { tv } from 'tailwind-variants';
2
+ export const checkboxVariants = tv({
3
+ slots: {
4
+ root: 'relative flex items-start',
5
+ base: [
6
+ 'inline-flex items-center justify-center shrink-0 rounded-md border',
7
+ 'focus-visible:outline-2 focus-visible:outline-offset-2',
8
+ 'transition-colors duration-200',
9
+ 'border-outline-variant',
10
+ 'data-[state=unchecked]:bg-transparent'
11
+ ],
12
+ container: 'flex items-center',
13
+ indicator: 'flex items-center justify-center',
14
+ icon: 'shrink-0 text-surface',
15
+ wrapper: '',
16
+ label: 'block font-medium text-on-surface',
17
+ description: 'text-on-surface-variant'
18
+ },
19
+ variants: {
20
+ color: {
21
+ primary: '',
22
+ secondary: '',
23
+ tertiary: '',
24
+ success: '',
25
+ warning: '',
26
+ error: '',
27
+ info: '',
28
+ surface: ''
29
+ },
30
+ size: {
31
+ xs: {
32
+ base: 'size-3.5 rounded',
33
+ container: 'h-4',
34
+ icon: 'size-2.5',
35
+ wrapper: 'text-xs'
36
+ },
37
+ sm: {
38
+ base: 'size-4 rounded',
39
+ container: 'h-4',
40
+ icon: 'size-3',
41
+ wrapper: 'text-xs'
42
+ },
43
+ md: {
44
+ base: 'size-4.5 rounded-md',
45
+ container: 'h-5',
46
+ icon: 'size-3.5',
47
+ wrapper: 'text-sm'
48
+ },
49
+ lg: {
50
+ base: 'size-5 rounded-md',
51
+ container: 'h-5',
52
+ icon: 'size-4',
53
+ wrapper: 'text-sm'
54
+ },
55
+ xl: {
56
+ base: 'size-5.5 rounded-md',
57
+ container: 'h-6',
58
+ icon: 'size-4.5',
59
+ wrapper: 'text-base'
60
+ }
61
+ },
62
+ variant: {
63
+ list: '',
64
+ card: {
65
+ root: 'border border-outline-variant rounded-lg cursor-pointer select-none'
66
+ }
67
+ },
68
+ indicator: {
69
+ start: {
70
+ wrapper: 'ms-2'
71
+ },
72
+ end: {
73
+ root: 'flex-row-reverse',
74
+ wrapper: 'me-2'
75
+ },
76
+ hidden: {
77
+ container: 'sr-only'
78
+ }
79
+ },
80
+ loading: {
81
+ true: {
82
+ icon: 'animate-spin'
83
+ }
84
+ },
85
+ required: {
86
+ true: {
87
+ label: "after:content-['*'] after:ms-0.5 after:text-error"
88
+ }
89
+ },
90
+ disabled: {
91
+ true: {
92
+ root: 'opacity-75',
93
+ base: 'cursor-not-allowed',
94
+ label: 'cursor-not-allowed',
95
+ description: 'cursor-not-allowed'
96
+ }
97
+ }
98
+ },
99
+ compoundVariants: [
100
+ // ========== COLOR (checked bg + border + focus ring) ==========
101
+ {
102
+ color: 'primary',
103
+ class: {
104
+ base: 'data-[state=checked]:bg-primary data-[state=checked]:border-primary data-[state=indeterminate]:bg-primary data-[state=indeterminate]:border-primary focus-visible:outline-primary'
105
+ }
106
+ },
107
+ {
108
+ color: 'secondary',
109
+ class: {
110
+ base: 'data-[state=checked]:bg-secondary data-[state=checked]:border-secondary data-[state=indeterminate]:bg-secondary data-[state=indeterminate]:border-secondary focus-visible:outline-secondary'
111
+ }
112
+ },
113
+ {
114
+ color: 'tertiary',
115
+ class: {
116
+ base: 'data-[state=checked]:bg-tertiary data-[state=checked]:border-tertiary data-[state=indeterminate]:bg-tertiary data-[state=indeterminate]:border-tertiary focus-visible:outline-tertiary'
117
+ }
118
+ },
119
+ {
120
+ color: 'success',
121
+ class: {
122
+ base: 'data-[state=checked]:bg-success data-[state=checked]:border-success data-[state=indeterminate]:bg-success data-[state=indeterminate]:border-success focus-visible:outline-success'
123
+ }
124
+ },
125
+ {
126
+ color: 'warning',
127
+ class: {
128
+ base: 'data-[state=checked]:bg-warning data-[state=checked]:border-warning data-[state=indeterminate]:bg-warning data-[state=indeterminate]:border-warning focus-visible:outline-warning'
129
+ }
130
+ },
131
+ {
132
+ color: 'error',
133
+ class: {
134
+ base: 'data-[state=checked]:bg-error data-[state=checked]:border-error data-[state=indeterminate]:bg-error data-[state=indeterminate]:border-error focus-visible:outline-error'
135
+ }
136
+ },
137
+ {
138
+ color: 'info',
139
+ class: {
140
+ base: 'data-[state=checked]:bg-info data-[state=checked]:border-info data-[state=indeterminate]:bg-info data-[state=indeterminate]:border-info focus-visible:outline-info'
141
+ }
142
+ },
143
+ {
144
+ color: 'surface',
145
+ class: {
146
+ base: 'data-[state=checked]:bg-on-surface data-[state=checked]:border-on-surface data-[state=indeterminate]:bg-on-surface data-[state=indeterminate]:border-on-surface focus-visible:outline-outline'
147
+ }
148
+ },
149
+ // ========== CARD × SIZE (padding) ==========
150
+ { variant: 'card', size: 'xs', class: { root: 'p-2' } },
151
+ { variant: 'card', size: 'sm', class: { root: 'p-2.5' } },
152
+ { variant: 'card', size: 'md', class: { root: 'p-3' } },
153
+ { variant: 'card', size: 'lg', class: { root: 'p-3.5' } },
154
+ { variant: 'card', size: 'xl', class: { root: 'p-4' } },
155
+ // ========== CARD × COLOR (checked border) ==========
156
+ {
157
+ variant: 'card',
158
+ color: 'primary',
159
+ class: { root: 'has-[[data-state=checked]]:border-primary' }
160
+ },
161
+ {
162
+ variant: 'card',
163
+ color: 'secondary',
164
+ class: { root: 'has-[[data-state=checked]]:border-secondary' }
165
+ },
166
+ {
167
+ variant: 'card',
168
+ color: 'tertiary',
169
+ class: { root: 'has-[[data-state=checked]]:border-tertiary' }
170
+ },
171
+ {
172
+ variant: 'card',
173
+ color: 'success',
174
+ class: { root: 'has-[[data-state=checked]]:border-success' }
175
+ },
176
+ {
177
+ variant: 'card',
178
+ color: 'warning',
179
+ class: { root: 'has-[[data-state=checked]]:border-warning' }
180
+ },
181
+ {
182
+ variant: 'card',
183
+ color: 'error',
184
+ class: { root: 'has-[[data-state=checked]]:border-error' }
185
+ },
186
+ {
187
+ variant: 'card',
188
+ color: 'info',
189
+ class: { root: 'has-[[data-state=checked]]:border-info' }
190
+ },
191
+ {
192
+ variant: 'card',
193
+ color: 'surface',
194
+ class: { root: 'has-[[data-state=checked]]:border-on-surface' }
195
+ },
196
+ // ========== CARD × DISABLED ==========
197
+ { variant: 'card', disabled: true, class: { root: 'cursor-not-allowed' } }
198
+ ],
199
+ defaultVariants: {
200
+ color: 'primary',
201
+ size: 'md',
202
+ variant: 'list',
203
+ indicator: 'start'
204
+ }
205
+ });
206
+ export const checkboxDefaults = {
207
+ defaultVariants: checkboxVariants.defaultVariants,
208
+ slots: {}
209
+ };
@@ -0,0 +1,2 @@
1
+ export { default as Checkbox } from './Checkbox.svelte';
2
+ export type { CheckboxProps } from './checkbox.types.js';
@@ -0,0 +1 @@
1
+ export { default as Checkbox } from './Checkbox.svelte';
@@ -0,0 +1,219 @@
1
+ <script lang="ts" module>
2
+ import type { CheckboxGroupProps } from './checkbox-group.types.js'
3
+
4
+ export type Props = CheckboxGroupProps
5
+ </script>
6
+
7
+ <script lang="ts">
8
+ import { Checkbox, Label, useId } from 'bits-ui'
9
+ import { getComponentConfig, iconsDefaults } from '../config.js'
10
+ import { useFormField, useFormFieldEmit } from '../hooks/useFormField.svelte.js'
11
+ import Icon from '../Icon/Icon.svelte'
12
+ import type { CheckboxGroupItem } from './checkbox-group.types.js'
13
+ import { checkboxGroupDefaults, checkboxGroupVariants } from './checkbox-group.variants.js'
14
+
15
+ const config = getComponentConfig('checkboxGroup', checkboxGroupDefaults)
16
+ const icons = getComponentConfig('icons', iconsDefaults)
17
+
18
+ let {
19
+ ref = $bindable(null),
20
+ value = $bindable([]),
21
+ onValueChange,
22
+ items = [],
23
+ ui,
24
+ id,
25
+ name,
26
+ color = config.defaultVariants.color,
27
+ size,
28
+ variant = config.defaultVariants.variant,
29
+ indicator = config.defaultVariants.indicator,
30
+ orientation = config.defaultVariants.orientation,
31
+ disabled = false,
32
+ required = false,
33
+ loading = false,
34
+ loadingIcon = icons.loading,
35
+ icon = icons.check,
36
+ legend,
37
+ legendSlot,
38
+ labelSlot,
39
+ descriptionSlot,
40
+ class: className,
41
+ ...restProps
42
+ }: Props = $props()
43
+
44
+ const formFieldContext = useFormField()
45
+ const emit = useFormFieldEmit()
46
+
47
+ const hasError = $derived(
48
+ formFieldContext?.error !== undefined && formFieldContext?.error !== false
49
+ )
50
+ const resolvedSize = $derived(size ?? formFieldContext?.size ?? config.defaultVariants.size)
51
+ const resolvedColor = $derived(hasError ? 'error' : color)
52
+ const autoId = useId()
53
+ const resolvedId = $derived(id ?? formFieldContext?.ariaId ?? autoId)
54
+ const resolvedName = $derived(name ?? formFieldContext?.name)
55
+ const isDisabled = $derived(disabled || loading)
56
+
57
+ const ariaDescribedBy = $derived(
58
+ !formFieldContext
59
+ ? undefined
60
+ : hasError
61
+ ? `${formFieldContext.ariaId}-error`
62
+ : `${formFieldContext.ariaId}-description ${formFieldContext.ariaId}-help`
63
+ )
64
+
65
+ const slots = $derived(
66
+ checkboxGroupVariants({
67
+ color: resolvedColor,
68
+ size: resolvedSize,
69
+ variant,
70
+ indicator,
71
+ orientation,
72
+ loading,
73
+ required,
74
+ disabled: isDisabled ? true : undefined
75
+ })
76
+ )
77
+
78
+ const layoutClasses = $derived.by(() => ({
79
+ root: slots.root({ class: [config.slots.root, className, ui?.root] }),
80
+ fieldset: slots.fieldset({ class: [config.slots.fieldset, ui?.fieldset] }),
81
+ legend: slots.legend({ class: [config.slots.legend, ui?.legend] }),
82
+ item: slots.item({ class: [config.slots.item, ui?.item] }),
83
+ container: slots.container({ class: [config.slots.container, ui?.container] }),
84
+ wrapper: slots.wrapper({ class: [config.slots.wrapper, ui?.wrapper] })
85
+ }))
86
+
87
+ const elementClasses = $derived.by(() => ({
88
+ base: slots.base({ class: [config.slots.base, ui?.base] }),
89
+ indicator: slots.indicator({ class: [config.slots.indicator, ui?.indicator] }),
90
+ icon: slots.icon({ class: [config.slots.icon, ui?.icon] }),
91
+ label: slots.label({ class: [config.slots.label, ui?.label] }),
92
+ description: slots.description({ class: [config.slots.description, ui?.description] })
93
+ }))
94
+
95
+ function toggleItem(itemValue: string, checked: boolean) {
96
+ if (checked) {
97
+ value = [...value, itemValue]
98
+ } else {
99
+ value = value.filter((v) => v !== itemValue)
100
+ }
101
+ emit.onChange()
102
+ onValueChange?.(value)
103
+ }
104
+
105
+ function handleCardItemClick(e: MouseEvent, btnId: string, itemDisabled: boolean) {
106
+ if (itemDisabled) return
107
+ if ((e.target as Element).closest('button')) return
108
+ document.getElementById(btnId)?.click()
109
+ }
110
+ </script>
111
+
112
+ {#snippet itemContent(checkboxItem: CheckboxGroupItem)}
113
+ {@const itemId = `${resolvedId}-${checkboxItem.value}`}
114
+ {@const itemDisabled = isDisabled || !!checkboxItem.disabled}
115
+ <div class={layoutClasses.container}>
116
+ <Checkbox.Root
117
+ checked={value.includes(checkboxItem.value)}
118
+ onCheckedChange={(checked) => toggleItem(checkboxItem.value, checked)}
119
+ id={itemId}
120
+ name={resolvedName}
121
+ value={checkboxItem.value}
122
+ disabled={itemDisabled}
123
+ class={elementClasses.base}
124
+ >
125
+ {#snippet children({ checked: isChecked })}
126
+ {#if isChecked || loading}
127
+ <span class={elementClasses.indicator}>
128
+ <Icon name={loading ? loadingIcon : icon} class={elementClasses.icon} />
129
+ </span>
130
+ {/if}
131
+ {/snippet}
132
+ </Checkbox.Root>
133
+ </div>
134
+
135
+ {#if checkboxItem.label || checkboxItem.description || labelSlot || descriptionSlot}
136
+ <div class={layoutClasses.wrapper}>
137
+ {#if labelSlot}
138
+ {@render labelSlot({ item: checkboxItem })}
139
+ {:else if checkboxItem.label}
140
+ {#if variant === 'card'}
141
+ <span
142
+ class={[elementClasses.label, itemDisabled && 'cursor-not-allowed']
143
+ .filter(Boolean)
144
+ .join(' ')}>{checkboxItem.label}</span
145
+ >
146
+ {:else}
147
+ <Label.Root
148
+ for={itemId}
149
+ class={[elementClasses.label, itemDisabled && 'cursor-not-allowed']
150
+ .filter(Boolean)
151
+ .join(' ')}
152
+ >
153
+ {checkboxItem.label}
154
+ </Label.Root>
155
+ {/if}
156
+ {/if}
157
+
158
+ {#if descriptionSlot}
159
+ {@render descriptionSlot({ item: checkboxItem })}
160
+ {:else if checkboxItem.description}
161
+ <p
162
+ class={[elementClasses.description, itemDisabled && 'cursor-not-allowed']
163
+ .filter(Boolean)
164
+ .join(' ')}
165
+ >
166
+ {checkboxItem.description}
167
+ </p>
168
+ {/if}
169
+ </div>
170
+ {/if}
171
+ {/snippet}
172
+
173
+ <div {...restProps} bind:this={ref} class={layoutClasses.root}>
174
+ <fieldset
175
+ class={layoutClasses.fieldset}
176
+ aria-describedby={ariaDescribedBy}
177
+ onfocusin={() => emit.onFocus()}
178
+ onfocusout={(e) => {
179
+ // Only emit blur when focus leaves the fieldset entirely, not when
180
+ // moving between checkboxes within the group.
181
+ if (!e.currentTarget.contains(e.relatedTarget as Node | null)) {
182
+ emit.onBlur()
183
+ }
184
+ }}
185
+ >
186
+ {#if legend || legendSlot}
187
+ {#if legendSlot}
188
+ {@render legendSlot({ legend })}
189
+ {:else}
190
+ <legend class={layoutClasses.legend}>{legend}</legend>
191
+ {/if}
192
+ {/if}
193
+
194
+ {#each items as checkboxItem (checkboxItem.value)}
195
+ {#if variant === 'card'}
196
+ <div
197
+ role="none"
198
+ class={layoutClasses.item}
199
+ class:opacity-75={checkboxItem.disabled && !isDisabled}
200
+ onclick={(e) =>
201
+ handleCardItemClick(
202
+ e,
203
+ `${resolvedId}-${checkboxItem.value}`,
204
+ isDisabled || !!checkboxItem.disabled
205
+ )}
206
+ >
207
+ {@render itemContent(checkboxItem)}
208
+ </div>
209
+ {:else}
210
+ <div
211
+ class={layoutClasses.item}
212
+ class:opacity-75={checkboxItem.disabled && !isDisabled}
213
+ >
214
+ {@render itemContent(checkboxItem)}
215
+ </div>
216
+ {/if}
217
+ {/each}
218
+ </fieldset>
219
+ </div>
@@ -0,0 +1,5 @@
1
+ import type { CheckboxGroupProps } from './checkbox-group.types.js';
2
+ export type Props = CheckboxGroupProps;
3
+ declare const CheckboxGroup: import("svelte").Component<CheckboxGroupProps, {}, "value" | "ref">;
4
+ type CheckboxGroup = ReturnType<typeof CheckboxGroup>;
5
+ export default CheckboxGroup;
@@ -0,0 +1,130 @@
1
+ import type { Snippet } from 'svelte';
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import type { ClassNameValue } from 'tailwind-merge';
4
+ import type { CheckboxGroupSlots, CheckboxGroupVariantProps } from './checkbox-group.variants.js';
5
+ export type CheckboxGroupItem = {
6
+ /**
7
+ * The unique value for this checkbox item.
8
+ */
9
+ value: string;
10
+ /**
11
+ * Label text displayed next to the checkbox.
12
+ */
13
+ label?: string;
14
+ /**
15
+ * Description text displayed below the label.
16
+ */
17
+ description?: string;
18
+ /**
19
+ * Whether this individual checkbox item is disabled.
20
+ * @default false
21
+ */
22
+ disabled?: boolean;
23
+ };
24
+ export type CheckboxGroupProps = Omit<HTMLAttributes<HTMLElement>, 'class'> & {
25
+ /**
26
+ * Bindable reference to the root DOM element.
27
+ */
28
+ ref?: HTMLElement | null;
29
+ /**
30
+ * The list of selected values. Supports two-way binding with `bind:value`.
31
+ * @default []
32
+ */
33
+ value?: string[];
34
+ /**
35
+ * Callback when the selected values change.
36
+ */
37
+ onValueChange?: (value: string[]) => void;
38
+ /**
39
+ * The list of checkbox items to render.
40
+ */
41
+ items?: CheckboxGroupItem[];
42
+ /**
43
+ * Sets the color scheme for the checkboxes.
44
+ * @default 'primary'
45
+ */
46
+ color?: NonNullable<CheckboxGroupVariantProps['color']>;
47
+ /**
48
+ * Controls the dimensions of the checkbox group.
49
+ * @default 'md'
50
+ */
51
+ size?: NonNullable<CheckboxGroupVariantProps['size']>;
52
+ /**
53
+ * Controls the visual style of each checkbox item.
54
+ * @default 'list'
55
+ */
56
+ variant?: NonNullable<CheckboxGroupVariantProps['variant']>;
57
+ /**
58
+ * Controls the position of the checkbox indicator.
59
+ * @default 'start'
60
+ */
61
+ indicator?: NonNullable<CheckboxGroupVariantProps['indicator']>;
62
+ /**
63
+ * Controls the layout direction of the items.
64
+ * @default 'vertical'
65
+ */
66
+ orientation?: NonNullable<CheckboxGroupVariantProps['orientation']>;
67
+ /**
68
+ * The name attribute for the checkbox inputs (used in form submission).
69
+ */
70
+ name?: string;
71
+ /**
72
+ * Whether the checkbox group is disabled.
73
+ * @default false
74
+ */
75
+ disabled?: boolean;
76
+ /**
77
+ * Whether the checkbox group is required.
78
+ * @default false
79
+ */
80
+ required?: boolean;
81
+ /**
82
+ * Renders a loading spinner and disables interaction.
83
+ * @default false
84
+ */
85
+ loading?: boolean;
86
+ /**
87
+ * Icon displayed as the loading indicator.
88
+ * @default Uses `icons.loading` from app config
89
+ */
90
+ loadingIcon?: string;
91
+ /**
92
+ * Icon displayed when a checkbox is checked.
93
+ * @default Uses `icons.check` from app config
94
+ */
95
+ icon?: string;
96
+ /**
97
+ * Legend text displayed above the checkbox group.
98
+ */
99
+ legend?: string;
100
+ /**
101
+ * The HTML id attribute for the checkbox group.
102
+ */
103
+ id?: string;
104
+ /**
105
+ * Custom snippet for the legend.
106
+ */
107
+ legendSlot?: Snippet<[{
108
+ legend?: string;
109
+ }]>;
110
+ /**
111
+ * Custom snippet for each item's label.
112
+ */
113
+ labelSlot?: Snippet<[{
114
+ item: CheckboxGroupItem;
115
+ }]>;
116
+ /**
117
+ * Custom snippet for each item's description.
118
+ */
119
+ descriptionSlot?: Snippet<[{
120
+ item: CheckboxGroupItem;
121
+ }]>;
122
+ /**
123
+ * Additional CSS classes for the root element.
124
+ */
125
+ class?: ClassNameValue;
126
+ /**
127
+ * Override styles for specific checkbox group slots.
128
+ */
129
+ ui?: Partial<Record<CheckboxGroupSlots, ClassNameValue>>;
130
+ };
@@ -0,0 +1 @@
1
+ export {};