sv5ui 2.1.0 → 2.3.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 (631) hide show
  1. package/README.md +122 -43
  2. package/dist/{Accordion → components/Accordion}/Accordion.svelte +79 -99
  3. package/dist/components/Alert/Alert.svelte +119 -0
  4. package/dist/components/Avatar/Avatar.svelte +86 -0
  5. package/dist/components/AvatarGroup/AvatarGroup.svelte +59 -0
  6. package/dist/components/Badge/Badge.svelte +69 -0
  7. package/dist/{Banner → components/Banner}/Banner.svelte +73 -87
  8. package/dist/components/Breadcrumb/Breadcrumb.svelte +85 -0
  9. package/dist/components/Button/Button.svelte +149 -0
  10. package/dist/{Calendar → components/Calendar}/Calendar.svelte +139 -165
  11. package/dist/components/Card/Card.svelte +46 -0
  12. package/dist/components/Carousel/Carousel.svelte +254 -0
  13. package/dist/components/Checkbox/Checkbox.svelte +142 -0
  14. package/dist/{CheckboxGroup → components/CheckboxGroup}/CheckboxGroup.svelte +89 -109
  15. package/dist/components/Chip/Chip.svelte +43 -0
  16. package/dist/components/Collapsible/Collapsible.svelte +60 -0
  17. package/dist/{Collapsible → components/Collapsible}/CollapsibleTestWrapper.svelte +2 -5
  18. package/dist/{Command → components/Command}/Command.svelte +69 -78
  19. package/dist/components/Command/CommandTestWrapper.svelte +7 -0
  20. package/dist/components/Container/Container.svelte +13 -0
  21. package/dist/{ContextMenu → components/ContextMenu}/ContextMenu.svelte +93 -117
  22. package/dist/components/Drawer/Drawer.svelte +191 -0
  23. package/dist/{Drawer → components/Drawer}/DrawerTriggerTestWrapper.svelte +1 -2
  24. package/dist/{DropdownMenu → components/DropdownMenu}/DropdownMenu.svelte +103 -128
  25. package/dist/components/DropdownMenu/DropdownMenuTriggerTestWrapper.svelte +9 -0
  26. package/dist/components/Editor/Editor.svelte +674 -0
  27. package/dist/components/Editor/EditorUrlPrompt.svelte +88 -0
  28. package/dist/{Editor → components/Editor}/SlashPopup.svelte +12 -24
  29. package/dist/components/Empty/Empty.svelte +102 -0
  30. package/dist/components/Error/Error.svelte +89 -0
  31. package/dist/components/Error/Error.svelte.d.ts +5 -0
  32. package/dist/components/Error/error.types.d.ts +87 -0
  33. package/dist/components/Error/error.variants.d.ts +66 -0
  34. package/dist/components/Error/error.variants.js +16 -0
  35. package/dist/components/Error/index.d.ts +2 -0
  36. package/dist/components/Error/index.js +1 -0
  37. package/dist/components/FieldGroup/FieldGroup.svelte +41 -0
  38. package/dist/{FileUpload → components/FileUpload}/FileUpload.svelte +265 -321
  39. package/dist/components/Footer/Footer.svelte +71 -0
  40. package/dist/components/Footer/Footer.svelte.d.ts +5 -0
  41. package/dist/components/Footer/FooterColumns.svelte +110 -0
  42. package/dist/components/Footer/FooterColumns.svelte.d.ts +5 -0
  43. package/dist/components/Footer/footer-columns.types.d.ts +73 -0
  44. package/dist/components/Footer/footer-columns.variants.d.ts +108 -0
  45. package/dist/components/Footer/footer-columns.variants.js +23 -0
  46. package/dist/components/Footer/footer.types.d.ts +46 -0
  47. package/dist/components/Footer/footer.variants.d.ts +66 -0
  48. package/dist/components/Footer/footer.variants.js +16 -0
  49. package/dist/components/Footer/index.d.ts +4 -0
  50. package/dist/components/Footer/index.js +2 -0
  51. package/dist/components/Form/Form.svelte +146 -0
  52. package/dist/{Form → components/Form}/form.context.svelte.js +1 -1
  53. package/dist/{Form → components/Form}/form.variants.d.ts +1 -1
  54. package/dist/{Form → components/Form}/form.variants.js +1 -1
  55. package/dist/components/FormField/FormField.svelte +158 -0
  56. package/dist/components/Header/Header.svelte +177 -0
  57. package/dist/components/Header/Header.svelte.d.ts +5 -0
  58. package/dist/components/Header/header.types.d.ts +124 -0
  59. package/dist/components/Header/header.variants.d.ts +108 -0
  60. package/dist/components/Header/header.variants.js +32 -0
  61. package/dist/components/Header/index.d.ts +2 -0
  62. package/dist/components/Header/index.js +1 -0
  63. package/dist/components/Icon/Icon.svelte +31 -0
  64. package/dist/components/Input/Input.svelte +168 -0
  65. package/dist/{Input → components/Input}/input.types.d.ts +3 -3
  66. package/dist/components/Kbd/Kbd.svelte +36 -0
  67. package/dist/components/Link/Link.svelte +131 -0
  68. package/dist/components/Main/Main.svelte +20 -0
  69. package/dist/components/Main/Main.svelte.d.ts +5 -0
  70. package/dist/components/Main/index.d.ts +2 -0
  71. package/dist/components/Main/index.js +1 -0
  72. package/dist/components/Main/main.types.d.ts +27 -0
  73. package/dist/components/Main/main.variants.d.ts +30 -0
  74. package/dist/components/Main/main.variants.js +10 -0
  75. package/dist/{Modal → components/Modal}/Modal.svelte +94 -108
  76. package/dist/{Modal → components/Modal}/ModalTriggerTestWrapper.svelte +1 -2
  77. package/dist/{Pagination → components/Pagination}/Pagination.svelte +79 -93
  78. package/dist/components/PinInput/PinInput.svelte +142 -0
  79. package/dist/components/Popover/Popover.svelte +111 -0
  80. package/dist/components/Progress/Progress.svelte +117 -0
  81. package/dist/{RadioGroup → components/RadioGroup}/RadioGroup.svelte +82 -101
  82. package/dist/components/Select/Select.svelte +400 -0
  83. package/dist/components/SelectMenu/SelectMenu.svelte +544 -0
  84. package/dist/components/SelectMenu/SelectMenuFormFieldTestWrapper.svelte +8 -0
  85. package/dist/components/Separator/Separator.svelte +67 -0
  86. package/dist/components/Skeleton/Skeleton.svelte +31 -0
  87. package/dist/{Slideover → components/Slideover}/Slideover.svelte +94 -108
  88. package/dist/{Slideover → components/Slideover}/SlideoverTriggerTestWrapper.svelte +1 -2
  89. package/dist/components/Slider/Slider.svelte +111 -0
  90. package/dist/components/Stepper/Stepper.svelte +238 -0
  91. package/dist/components/Switch/Switch.svelte +126 -0
  92. package/dist/components/Table/Table.svelte +644 -0
  93. package/dist/components/Tabs/Tabs.svelte +156 -0
  94. package/dist/components/Textarea/Textarea.svelte +174 -0
  95. package/dist/components/ThemeModeButton/ThemeModeButton.svelte +64 -0
  96. package/dist/components/ThemeModeButton/theme-mode-button.types.js +1 -0
  97. package/dist/components/Timeline/Timeline.svelte +114 -0
  98. package/dist/components/Timeline/timeline.types.js +1 -0
  99. package/dist/{Toast → components/Toast}/Toaster.svelte +18 -26
  100. package/dist/components/Toast/toast.types.js +1 -0
  101. package/dist/{Tooltip → components/Tooltip}/Tooltip.svelte +54 -67
  102. package/dist/components/Tooltip/TooltipTestWrapper.svelte +5 -0
  103. package/dist/components/Tooltip/tooltip.types.js +1 -0
  104. package/dist/components/Tour/Tour.svelte +459 -0
  105. package/dist/components/Tour/Tour.svelte.d.ts +5 -0
  106. package/dist/components/Tour/index.d.ts +2 -0
  107. package/dist/components/Tour/index.js +1 -0
  108. package/dist/components/Tour/tour.types.d.ts +457 -0
  109. package/dist/components/Tour/tour.types.js +1 -0
  110. package/dist/components/Tour/tour.variants.d.ts +208 -0
  111. package/dist/components/Tour/tour.variants.js +56 -0
  112. package/dist/components/User/User.svelte +87 -0
  113. package/dist/components/User/user.types.js +1 -0
  114. package/dist/config.d.ts +2 -0
  115. package/dist/config.js +2 -0
  116. package/dist/hooks/index.d.ts +17 -14
  117. package/dist/hooks/index.js +17 -7
  118. package/dist/hooks/useClickOutside/index.d.ts +1 -0
  119. package/dist/hooks/useClickOutside/index.js +1 -0
  120. package/dist/hooks/{useClickOutside.svelte.js → useClickOutside/useClickOutside.svelte.js} +3 -6
  121. package/dist/hooks/useClipboard/index.d.ts +1 -0
  122. package/dist/hooks/useClipboard/index.js +1 -0
  123. package/dist/hooks/{useClipboard.svelte.d.ts → useClipboard/useClipboard.svelte.d.ts} +2 -1
  124. package/dist/hooks/useDebounce/index.d.ts +1 -0
  125. package/dist/hooks/useDebounce/index.js +1 -0
  126. package/dist/hooks/useDebouncedState/index.d.ts +1 -0
  127. package/dist/hooks/useDebouncedState/index.js +1 -0
  128. package/dist/hooks/useDebouncedState/useDebouncedState.svelte.d.ts +30 -0
  129. package/dist/hooks/useDebouncedState/useDebouncedState.svelte.js +45 -0
  130. package/dist/hooks/useEscapeKeydown/index.d.ts +1 -0
  131. package/dist/hooks/useEscapeKeydown/index.js +1 -0
  132. package/dist/hooks/{useEscapeKeydown.svelte.js → useEscapeKeydown/useEscapeKeydown.svelte.js} +3 -6
  133. package/dist/hooks/useEventListener/index.d.ts +1 -0
  134. package/dist/hooks/useEventListener/index.js +1 -0
  135. package/dist/hooks/useEventListener/useEventListener.svelte.d.ts +30 -0
  136. package/dist/hooks/useEventListener/useEventListener.svelte.js +16 -0
  137. package/dist/hooks/useFocusTrap/index.d.ts +1 -0
  138. package/dist/hooks/useFocusTrap/index.js +1 -0
  139. package/dist/hooks/useFocusTrap/useFocusTrap.svelte.d.ts +42 -0
  140. package/dist/hooks/useFocusTrap/useFocusTrap.svelte.js +87 -0
  141. package/dist/hooks/useFormField/HookContextProbe.svelte +5 -0
  142. package/dist/hooks/useFormField/HookContextProvider.svelte +7 -0
  143. package/dist/hooks/useFormField/HookEmitProbe.svelte +11 -0
  144. package/dist/hooks/useFormField/index.d.ts +1 -0
  145. package/dist/hooks/useFormField/index.js +1 -0
  146. package/dist/hooks/{useFormField.svelte.d.ts → useFormField/useFormField.svelte.d.ts} +1 -1
  147. package/dist/hooks/{useFormField.svelte.js → useFormField/useFormField.svelte.js} +1 -1
  148. package/dist/hooks/useInfiniteScroll/index.d.ts +1 -0
  149. package/dist/hooks/useInfiniteScroll/index.js +1 -0
  150. package/dist/hooks/{useInfiniteScroll.svelte.d.ts → useInfiniteScroll/useInfiniteScroll.svelte.d.ts} +2 -1
  151. package/dist/hooks/{useInfiniteScroll.svelte.js → useInfiniteScroll/useInfiniteScroll.svelte.js} +2 -9
  152. package/dist/hooks/useIntersectionObserver/index.d.ts +1 -0
  153. package/dist/hooks/useIntersectionObserver/index.js +1 -0
  154. package/dist/hooks/useIntersectionObserver/useIntersectionObserver.svelte.d.ts +30 -0
  155. package/dist/hooks/useIntersectionObserver/useIntersectionObserver.svelte.js +46 -0
  156. package/dist/hooks/useLocalStorage/index.d.ts +1 -0
  157. package/dist/hooks/useLocalStorage/index.js +1 -0
  158. package/dist/hooks/useLocalStorage/useLocalStorage.svelte.d.ts +39 -0
  159. package/dist/hooks/useLocalStorage/useLocalStorage.svelte.js +73 -0
  160. package/dist/hooks/useMediaQuery/index.d.ts +1 -0
  161. package/dist/hooks/useMediaQuery/index.js +1 -0
  162. package/dist/hooks/{useMediaQuery.svelte.d.ts → useMediaQuery/useMediaQuery.svelte.d.ts} +2 -1
  163. package/dist/hooks/{useMediaQuery.svelte.js → useMediaQuery/useMediaQuery.svelte.js} +2 -1
  164. package/dist/hooks/useResizeObserver/index.d.ts +1 -0
  165. package/dist/hooks/useResizeObserver/index.js +1 -0
  166. package/dist/hooks/useResizeObserver/useResizeObserver.svelte.d.ts +50 -0
  167. package/dist/hooks/useResizeObserver/useResizeObserver.svelte.js +71 -0
  168. package/dist/hooks/useScrollLock/index.d.ts +1 -0
  169. package/dist/hooks/useScrollLock/index.js +1 -0
  170. package/dist/hooks/useScrollLock/useScrollLock.svelte.d.ts +28 -0
  171. package/dist/hooks/useScrollLock/useScrollLock.svelte.js +79 -0
  172. package/dist/hooks/useThrottle/index.d.ts +1 -0
  173. package/dist/hooks/useThrottle/index.js +1 -0
  174. package/dist/hooks/useThrottle/useThrottle.svelte.d.ts +37 -0
  175. package/dist/hooks/useThrottle/useThrottle.svelte.js +72 -0
  176. package/dist/hooks/useTimers/index.d.ts +1 -0
  177. package/dist/hooks/useTimers/index.js +1 -0
  178. package/dist/hooks/useTimers/useTimers.svelte.d.ts +62 -0
  179. package/dist/hooks/useTimers/useTimers.svelte.js +90 -0
  180. package/dist/hooks/useTour/index.d.ts +1 -0
  181. package/dist/hooks/useTour/index.js +1 -0
  182. package/dist/hooks/useTour/useTour.svelte.d.ts +29 -0
  183. package/dist/hooks/useTour/useTour.svelte.js +194 -0
  184. package/dist/hooks/utils.d.ts +1 -0
  185. package/dist/hooks/utils.js +3 -0
  186. package/dist/index.d.ts +56 -51
  187. package/dist/index.js +56 -51
  188. package/dist/theme.css +3 -0
  189. package/package.json +4 -4
  190. package/dist/Alert/Alert.svelte +0 -131
  191. package/dist/Avatar/Avatar.svelte +0 -114
  192. package/dist/AvatarGroup/AvatarGroup.svelte +0 -71
  193. package/dist/Badge/Badge.svelte +0 -79
  194. package/dist/Breadcrumb/Breadcrumb.svelte +0 -101
  195. package/dist/Button/Button.svelte +0 -177
  196. package/dist/Card/Card.svelte +0 -54
  197. package/dist/Carousel/Carousel.svelte +0 -279
  198. package/dist/Checkbox/Checkbox.svelte +0 -161
  199. package/dist/Chip/Chip.svelte +0 -51
  200. package/dist/Collapsible/Collapsible.svelte +0 -69
  201. package/dist/Command/CommandTestWrapper.svelte +0 -13
  202. package/dist/Container/Container.svelte +0 -21
  203. package/dist/Drawer/Drawer.svelte +0 -204
  204. package/dist/DropdownMenu/DropdownMenuTriggerTestWrapper.svelte +0 -12
  205. package/dist/Editor/Editor.svelte +0 -762
  206. package/dist/Editor/EditorUrlPrompt.svelte +0 -111
  207. package/dist/Empty/Empty.svelte +0 -118
  208. package/dist/FieldGroup/FieldGroup.svelte +0 -53
  209. package/dist/Form/Form.svelte +0 -203
  210. package/dist/FormField/FormField.svelte +0 -186
  211. package/dist/Icon/Icon.svelte +0 -46
  212. package/dist/Input/Input.svelte +0 -199
  213. package/dist/Kbd/Kbd.svelte +0 -45
  214. package/dist/Link/Link.svelte +0 -168
  215. package/dist/PinInput/PinInput.svelte +0 -162
  216. package/dist/Popover/Popover.svelte +0 -122
  217. package/dist/Progress/Progress.svelte +0 -135
  218. package/dist/Select/Select.svelte +0 -461
  219. package/dist/SelectMenu/SelectMenu.svelte +0 -637
  220. package/dist/SelectMenu/SelectMenuFormFieldTestWrapper.svelte +0 -11
  221. package/dist/Separator/Separator.svelte +0 -77
  222. package/dist/Skeleton/Skeleton.svelte +0 -39
  223. package/dist/Slider/Slider.svelte +0 -129
  224. package/dist/Stepper/Stepper.svelte +0 -290
  225. package/dist/Switch/Switch.svelte +0 -150
  226. package/dist/Table/Table.svelte +0 -763
  227. package/dist/Tabs/Tabs.svelte +0 -188
  228. package/dist/Textarea/Textarea.svelte +0 -215
  229. package/dist/ThemeModeButton/ThemeModeButton.svelte +0 -74
  230. package/dist/Timeline/Timeline.svelte +0 -151
  231. package/dist/Tooltip/TooltipTestWrapper.svelte +0 -8
  232. package/dist/User/User.svelte +0 -98
  233. package/dist/hooks/HookContextProbe.svelte +0 -7
  234. package/dist/hooks/HookContextProvider.svelte +0 -9
  235. package/dist/hooks/HookEmitProbe.svelte +0 -14
  236. /package/dist/{Accordion → components/Accordion}/Accordion.svelte.d.ts +0 -0
  237. /package/dist/{Accordion → components/Accordion}/accordion.types.d.ts +0 -0
  238. /package/dist/{Accordion → components/Accordion}/accordion.types.js +0 -0
  239. /package/dist/{Accordion → components/Accordion}/accordion.variants.d.ts +0 -0
  240. /package/dist/{Accordion → components/Accordion}/accordion.variants.js +0 -0
  241. /package/dist/{Accordion → components/Accordion}/index.d.ts +0 -0
  242. /package/dist/{Accordion → components/Accordion}/index.js +0 -0
  243. /package/dist/{Alert → components/Alert}/Alert.svelte.d.ts +0 -0
  244. /package/dist/{Alert → components/Alert}/alert.types.d.ts +0 -0
  245. /package/dist/{Alert → components/Alert}/alert.types.js +0 -0
  246. /package/dist/{Alert → components/Alert}/alert.variants.d.ts +0 -0
  247. /package/dist/{Alert → components/Alert}/alert.variants.js +0 -0
  248. /package/dist/{Alert → components/Alert}/index.d.ts +0 -0
  249. /package/dist/{Alert → components/Alert}/index.js +0 -0
  250. /package/dist/{Avatar → components/Avatar}/Avatar.svelte.d.ts +0 -0
  251. /package/dist/{Avatar → components/Avatar}/avatar.types.d.ts +0 -0
  252. /package/dist/{Avatar → components/Avatar}/avatar.types.js +0 -0
  253. /package/dist/{Avatar → components/Avatar}/avatar.variants.d.ts +0 -0
  254. /package/dist/{Avatar → components/Avatar}/avatar.variants.js +0 -0
  255. /package/dist/{Avatar → components/Avatar}/index.d.ts +0 -0
  256. /package/dist/{Avatar → components/Avatar}/index.js +0 -0
  257. /package/dist/{AvatarGroup → components/AvatarGroup}/AvatarGroup.svelte.d.ts +0 -0
  258. /package/dist/{AvatarGroup → components/AvatarGroup}/avatar-group.types.d.ts +0 -0
  259. /package/dist/{AvatarGroup → components/AvatarGroup}/avatar-group.types.js +0 -0
  260. /package/dist/{AvatarGroup → components/AvatarGroup}/avatar-group.variants.d.ts +0 -0
  261. /package/dist/{AvatarGroup → components/AvatarGroup}/avatar-group.variants.js +0 -0
  262. /package/dist/{AvatarGroup → components/AvatarGroup}/index.d.ts +0 -0
  263. /package/dist/{AvatarGroup → components/AvatarGroup}/index.js +0 -0
  264. /package/dist/{Badge → components/Badge}/Badge.svelte.d.ts +0 -0
  265. /package/dist/{Badge → components/Badge}/badge.types.d.ts +0 -0
  266. /package/dist/{Badge → components/Badge}/badge.types.js +0 -0
  267. /package/dist/{Badge → components/Badge}/badge.variants.d.ts +0 -0
  268. /package/dist/{Badge → components/Badge}/badge.variants.js +0 -0
  269. /package/dist/{Badge → components/Badge}/index.d.ts +0 -0
  270. /package/dist/{Badge → components/Badge}/index.js +0 -0
  271. /package/dist/{Banner → components/Banner}/Banner.svelte.d.ts +0 -0
  272. /package/dist/{Banner → components/Banner}/banner.types.d.ts +0 -0
  273. /package/dist/{Banner → components/Banner}/banner.types.js +0 -0
  274. /package/dist/{Banner → components/Banner}/banner.variants.d.ts +0 -0
  275. /package/dist/{Banner → components/Banner}/banner.variants.js +0 -0
  276. /package/dist/{Banner → components/Banner}/index.d.ts +0 -0
  277. /package/dist/{Banner → components/Banner}/index.js +0 -0
  278. /package/dist/{Breadcrumb → components/Breadcrumb}/Breadcrumb.svelte.d.ts +0 -0
  279. /package/dist/{Breadcrumb → components/Breadcrumb}/breadcrumb.types.d.ts +0 -0
  280. /package/dist/{Breadcrumb → components/Breadcrumb}/breadcrumb.types.js +0 -0
  281. /package/dist/{Breadcrumb → components/Breadcrumb}/breadcrumb.variants.d.ts +0 -0
  282. /package/dist/{Breadcrumb → components/Breadcrumb}/breadcrumb.variants.js +0 -0
  283. /package/dist/{Breadcrumb → components/Breadcrumb}/index.d.ts +0 -0
  284. /package/dist/{Breadcrumb → components/Breadcrumb}/index.js +0 -0
  285. /package/dist/{Button → components/Button}/Button.svelte.d.ts +0 -0
  286. /package/dist/{Button → components/Button}/button.types.d.ts +0 -0
  287. /package/dist/{Button → components/Button}/button.types.js +0 -0
  288. /package/dist/{Button → components/Button}/button.variants.d.ts +0 -0
  289. /package/dist/{Button → components/Button}/button.variants.js +0 -0
  290. /package/dist/{Button → components/Button}/index.d.ts +0 -0
  291. /package/dist/{Button → components/Button}/index.js +0 -0
  292. /package/dist/{Calendar → components/Calendar}/Calendar.svelte.d.ts +0 -0
  293. /package/dist/{Calendar → components/Calendar}/calendar.types.d.ts +0 -0
  294. /package/dist/{Calendar → components/Calendar}/calendar.types.js +0 -0
  295. /package/dist/{Calendar → components/Calendar}/calendar.variants.d.ts +0 -0
  296. /package/dist/{Calendar → components/Calendar}/calendar.variants.js +0 -0
  297. /package/dist/{Calendar → components/Calendar}/index.d.ts +0 -0
  298. /package/dist/{Calendar → components/Calendar}/index.js +0 -0
  299. /package/dist/{Card → components/Card}/Card.svelte.d.ts +0 -0
  300. /package/dist/{Card → components/Card}/card.types.d.ts +0 -0
  301. /package/dist/{Card → components/Card}/card.types.js +0 -0
  302. /package/dist/{Card → components/Card}/card.variants.d.ts +0 -0
  303. /package/dist/{Card → components/Card}/card.variants.js +0 -0
  304. /package/dist/{Card → components/Card}/index.d.ts +0 -0
  305. /package/dist/{Card → components/Card}/index.js +0 -0
  306. /package/dist/{Carousel → components/Carousel}/Carousel.svelte.d.ts +0 -0
  307. /package/dist/{Carousel → components/Carousel}/carousel.types.d.ts +0 -0
  308. /package/dist/{Carousel → components/Carousel}/carousel.types.js +0 -0
  309. /package/dist/{Carousel → components/Carousel}/carousel.variants.d.ts +0 -0
  310. /package/dist/{Carousel → components/Carousel}/carousel.variants.js +0 -0
  311. /package/dist/{Carousel → components/Carousel}/index.d.ts +0 -0
  312. /package/dist/{Carousel → components/Carousel}/index.js +0 -0
  313. /package/dist/{Checkbox → components/Checkbox}/Checkbox.svelte.d.ts +0 -0
  314. /package/dist/{Checkbox → components/Checkbox}/checkbox.types.d.ts +0 -0
  315. /package/dist/{Checkbox → components/Checkbox}/checkbox.types.js +0 -0
  316. /package/dist/{Checkbox → components/Checkbox}/checkbox.variants.d.ts +0 -0
  317. /package/dist/{Checkbox → components/Checkbox}/checkbox.variants.js +0 -0
  318. /package/dist/{Checkbox → components/Checkbox}/index.d.ts +0 -0
  319. /package/dist/{Checkbox → components/Checkbox}/index.js +0 -0
  320. /package/dist/{CheckboxGroup → components/CheckboxGroup}/CheckboxGroup.svelte.d.ts +0 -0
  321. /package/dist/{CheckboxGroup → components/CheckboxGroup}/checkbox-group.types.d.ts +0 -0
  322. /package/dist/{CheckboxGroup → components/CheckboxGroup}/checkbox-group.types.js +0 -0
  323. /package/dist/{CheckboxGroup → components/CheckboxGroup}/checkbox-group.variants.d.ts +0 -0
  324. /package/dist/{CheckboxGroup → components/CheckboxGroup}/checkbox-group.variants.js +0 -0
  325. /package/dist/{CheckboxGroup → components/CheckboxGroup}/index.d.ts +0 -0
  326. /package/dist/{CheckboxGroup → components/CheckboxGroup}/index.js +0 -0
  327. /package/dist/{Chip → components/Chip}/Chip.svelte.d.ts +0 -0
  328. /package/dist/{Chip → components/Chip}/chip.types.d.ts +0 -0
  329. /package/dist/{Chip → components/Chip}/chip.types.js +0 -0
  330. /package/dist/{Chip → components/Chip}/chip.variants.d.ts +0 -0
  331. /package/dist/{Chip → components/Chip}/chip.variants.js +0 -0
  332. /package/dist/{Chip → components/Chip}/index.d.ts +0 -0
  333. /package/dist/{Chip → components/Chip}/index.js +0 -0
  334. /package/dist/{Collapsible → components/Collapsible}/Collapsible.svelte.d.ts +0 -0
  335. /package/dist/{Collapsible → components/Collapsible}/CollapsibleTestWrapper.svelte.d.ts +0 -0
  336. /package/dist/{Collapsible → components/Collapsible}/collapsible.types.d.ts +0 -0
  337. /package/dist/{Collapsible → components/Collapsible}/collapsible.types.js +0 -0
  338. /package/dist/{Collapsible → components/Collapsible}/collapsible.variants.d.ts +0 -0
  339. /package/dist/{Collapsible → components/Collapsible}/collapsible.variants.js +0 -0
  340. /package/dist/{Collapsible → components/Collapsible}/index.d.ts +0 -0
  341. /package/dist/{Collapsible → components/Collapsible}/index.js +0 -0
  342. /package/dist/{Command → components/Command}/Command.svelte.d.ts +0 -0
  343. /package/dist/{Command → components/Command}/CommandTestWrapper.svelte.d.ts +0 -0
  344. /package/dist/{Command → components/Command}/command.types.d.ts +0 -0
  345. /package/dist/{Command → components/Command}/command.types.js +0 -0
  346. /package/dist/{Command → components/Command}/command.variants.d.ts +0 -0
  347. /package/dist/{Command → components/Command}/command.variants.js +0 -0
  348. /package/dist/{Command → components/Command}/index.d.ts +0 -0
  349. /package/dist/{Command → components/Command}/index.js +0 -0
  350. /package/dist/{Container → components/Container}/Container.svelte.d.ts +0 -0
  351. /package/dist/{Container → components/Container}/container.types.d.ts +0 -0
  352. /package/dist/{Container → components/Container}/container.types.js +0 -0
  353. /package/dist/{Container → components/Container}/container.variants.d.ts +0 -0
  354. /package/dist/{Container → components/Container}/container.variants.js +0 -0
  355. /package/dist/{Container → components/Container}/index.d.ts +0 -0
  356. /package/dist/{Container → components/Container}/index.js +0 -0
  357. /package/dist/{ContextMenu → components/ContextMenu}/ContextMenu.svelte.d.ts +0 -0
  358. /package/dist/{ContextMenu → components/ContextMenu}/context-menu.types.d.ts +0 -0
  359. /package/dist/{ContextMenu → components/ContextMenu}/context-menu.types.js +0 -0
  360. /package/dist/{ContextMenu → components/ContextMenu}/context-menu.variants.d.ts +0 -0
  361. /package/dist/{ContextMenu → components/ContextMenu}/context-menu.variants.js +0 -0
  362. /package/dist/{ContextMenu → components/ContextMenu}/index.d.ts +0 -0
  363. /package/dist/{ContextMenu → components/ContextMenu}/index.js +0 -0
  364. /package/dist/{Drawer → components/Drawer}/Drawer.svelte.d.ts +0 -0
  365. /package/dist/{Drawer → components/Drawer}/DrawerTriggerTestWrapper.svelte.d.ts +0 -0
  366. /package/dist/{Drawer → components/Drawer}/drawer.types.d.ts +0 -0
  367. /package/dist/{Drawer → components/Drawer}/drawer.types.js +0 -0
  368. /package/dist/{Drawer → components/Drawer}/drawer.variants.d.ts +0 -0
  369. /package/dist/{Drawer → components/Drawer}/drawer.variants.js +0 -0
  370. /package/dist/{Drawer → components/Drawer}/index.d.ts +0 -0
  371. /package/dist/{Drawer → components/Drawer}/index.js +0 -0
  372. /package/dist/{DropdownMenu → components/DropdownMenu}/DropdownMenu.svelte.d.ts +0 -0
  373. /package/dist/{DropdownMenu → components/DropdownMenu}/DropdownMenuTriggerTestWrapper.svelte.d.ts +0 -0
  374. /package/dist/{DropdownMenu → components/DropdownMenu}/dropdown-menu.types.d.ts +0 -0
  375. /package/dist/{DropdownMenu → components/DropdownMenu}/dropdown-menu.types.js +0 -0
  376. /package/dist/{DropdownMenu → components/DropdownMenu}/dropdown-menu.variants.d.ts +0 -0
  377. /package/dist/{DropdownMenu → components/DropdownMenu}/dropdown-menu.variants.js +0 -0
  378. /package/dist/{DropdownMenu → components/DropdownMenu}/index.d.ts +0 -0
  379. /package/dist/{DropdownMenu → components/DropdownMenu}/index.js +0 -0
  380. /package/dist/{Editor → components/Editor}/Editor.svelte.d.ts +0 -0
  381. /package/dist/{Editor → components/Editor}/EditorUrlPrompt.svelte.d.ts +0 -0
  382. /package/dist/{Editor → components/Editor}/SlashPopup.svelte.d.ts +0 -0
  383. /package/dist/{Editor → components/Editor}/editor.extensions.d.ts +0 -0
  384. /package/dist/{Editor → components/Editor}/editor.extensions.js +0 -0
  385. /package/dist/{Editor → components/Editor}/editor.schemas.d.ts +0 -0
  386. /package/dist/{Editor → components/Editor}/editor.schemas.js +0 -0
  387. /package/dist/{Editor → components/Editor}/editor.slash.svelte.d.ts +0 -0
  388. /package/dist/{Editor → components/Editor}/editor.slash.svelte.js +0 -0
  389. /package/dist/{Editor → components/Editor}/editor.suggestion.d.ts +0 -0
  390. /package/dist/{Editor → components/Editor}/editor.suggestion.js +0 -0
  391. /package/dist/{Editor → components/Editor}/editor.toolbar.d.ts +0 -0
  392. /package/dist/{Editor → components/Editor}/editor.toolbar.js +0 -0
  393. /package/dist/{Editor → components/Editor}/editor.types.d.ts +0 -0
  394. /package/dist/{Editor → components/Editor}/editor.types.js +0 -0
  395. /package/dist/{Editor → components/Editor}/editor.variants.d.ts +0 -0
  396. /package/dist/{Editor → components/Editor}/editor.variants.js +0 -0
  397. /package/dist/{Editor → components/Editor}/index.d.ts +0 -0
  398. /package/dist/{Editor → components/Editor}/index.js +0 -0
  399. /package/dist/{Empty → components/Empty}/Empty.svelte.d.ts +0 -0
  400. /package/dist/{Empty → components/Empty}/empty.types.d.ts +0 -0
  401. /package/dist/{Empty → components/Empty}/empty.types.js +0 -0
  402. /package/dist/{Empty → components/Empty}/empty.variants.d.ts +0 -0
  403. /package/dist/{Empty → components/Empty}/empty.variants.js +0 -0
  404. /package/dist/{Empty → components/Empty}/index.d.ts +0 -0
  405. /package/dist/{Empty → components/Empty}/index.js +0 -0
  406. /package/dist/{FieldGroup/field-group.types.js → components/Error/error.types.js} +0 -0
  407. /package/dist/{FieldGroup → components/FieldGroup}/FieldGroup.svelte.d.ts +0 -0
  408. /package/dist/{FieldGroup → components/FieldGroup}/field-group.types.d.ts +0 -0
  409. /package/dist/{FileUpload/file-upload.types.js → components/FieldGroup/field-group.types.js} +0 -0
  410. /package/dist/{FieldGroup → components/FieldGroup}/field-group.variants.d.ts +0 -0
  411. /package/dist/{FieldGroup → components/FieldGroup}/field-group.variants.js +0 -0
  412. /package/dist/{FieldGroup → components/FieldGroup}/index.d.ts +0 -0
  413. /package/dist/{FieldGroup → components/FieldGroup}/index.js +0 -0
  414. /package/dist/{FileUpload → components/FileUpload}/FileUpload.svelte.d.ts +0 -0
  415. /package/dist/{FileUpload → components/FileUpload}/file-upload.types.d.ts +0 -0
  416. /package/dist/{FormField/form-field.types.js → components/FileUpload/file-upload.types.js} +0 -0
  417. /package/dist/{FileUpload → components/FileUpload}/file-upload.variants.d.ts +0 -0
  418. /package/dist/{FileUpload → components/FileUpload}/file-upload.variants.js +0 -0
  419. /package/dist/{FileUpload → components/FileUpload}/index.d.ts +0 -0
  420. /package/dist/{FileUpload → components/FileUpload}/index.js +0 -0
  421. /package/dist/{Icon/icon.types.js → components/Footer/footer-columns.types.js} +0 -0
  422. /package/dist/{Input/input.types.js → components/Footer/footer.types.js} +0 -0
  423. /package/dist/{Form → components/Form}/Form.svelte.d.ts +0 -0
  424. /package/dist/{Form → components/Form}/form.context.svelte.d.ts +0 -0
  425. /package/dist/{Form → components/Form}/form.types.d.ts +0 -0
  426. /package/dist/{Form → components/Form}/form.types.js +0 -0
  427. /package/dist/{Form → components/Form}/index.d.ts +0 -0
  428. /package/dist/{Form → components/Form}/index.js +0 -0
  429. /package/dist/{Form → components/Form}/validate-schema.d.ts +0 -0
  430. /package/dist/{Form → components/Form}/validate-schema.js +0 -0
  431. /package/dist/{FormField → components/FormField}/FormField.svelte.d.ts +0 -0
  432. /package/dist/{FormField → components/FormField}/form-field.types.d.ts +0 -0
  433. /package/dist/{Kbd/kbd.types.js → components/FormField/form-field.types.js} +0 -0
  434. /package/dist/{FormField → components/FormField}/form-field.variants.d.ts +0 -0
  435. /package/dist/{FormField → components/FormField}/form-field.variants.js +0 -0
  436. /package/dist/{FormField → components/FormField}/index.d.ts +0 -0
  437. /package/dist/{FormField → components/FormField}/index.js +0 -0
  438. /package/dist/{Link/link.types.js → components/Header/header.types.js} +0 -0
  439. /package/dist/{Icon → components/Icon}/Icon.svelte.d.ts +0 -0
  440. /package/dist/{Icon → components/Icon}/icon.types.d.ts +0 -0
  441. /package/dist/{Modal/modal.types.js → components/Icon/icon.types.js} +0 -0
  442. /package/dist/{Icon → components/Icon}/index.d.ts +0 -0
  443. /package/dist/{Icon → components/Icon}/index.js +0 -0
  444. /package/dist/{Input → components/Input}/Input.svelte.d.ts +0 -0
  445. /package/dist/{Input → components/Input}/index.d.ts +0 -0
  446. /package/dist/{Input → components/Input}/index.js +0 -0
  447. /package/dist/{Pagination/pagination.types.js → components/Input/input.types.js} +0 -0
  448. /package/dist/{Input → components/Input}/input.variants.d.ts +0 -0
  449. /package/dist/{Input → components/Input}/input.variants.js +0 -0
  450. /package/dist/{Kbd → components/Kbd}/Kbd.svelte.d.ts +0 -0
  451. /package/dist/{Kbd → components/Kbd}/index.d.ts +0 -0
  452. /package/dist/{Kbd → components/Kbd}/index.js +0 -0
  453. /package/dist/{Kbd → components/Kbd}/kbd.types.d.ts +0 -0
  454. /package/dist/{PinInput/pin-input.types.js → components/Kbd/kbd.types.js} +0 -0
  455. /package/dist/{Kbd → components/Kbd}/kbd.variants.d.ts +0 -0
  456. /package/dist/{Kbd → components/Kbd}/kbd.variants.js +0 -0
  457. /package/dist/{Kbd → components/Kbd}/useKbd.svelte.d.ts +0 -0
  458. /package/dist/{Kbd → components/Kbd}/useKbd.svelte.js +0 -0
  459. /package/dist/{Link → components/Link}/Link.svelte.d.ts +0 -0
  460. /package/dist/{Link → components/Link}/index.d.ts +0 -0
  461. /package/dist/{Link → components/Link}/index.js +0 -0
  462. /package/dist/{Link → components/Link}/link.types.d.ts +0 -0
  463. /package/dist/{Popover/popover.types.js → components/Link/link.types.js} +0 -0
  464. /package/dist/{Link → components/Link}/link.variants.d.ts +0 -0
  465. /package/dist/{Link → components/Link}/link.variants.js +0 -0
  466. /package/dist/{Progress/progress.types.js → components/Main/main.types.js} +0 -0
  467. /package/dist/{Modal → components/Modal}/Modal.svelte.d.ts +0 -0
  468. /package/dist/{Modal → components/Modal}/ModalTriggerTestWrapper.svelte.d.ts +0 -0
  469. /package/dist/{Modal → components/Modal}/index.d.ts +0 -0
  470. /package/dist/{Modal → components/Modal}/index.js +0 -0
  471. /package/dist/{Modal → components/Modal}/modal.types.d.ts +0 -0
  472. /package/dist/{RadioGroup/radio-group.types.js → components/Modal/modal.types.js} +0 -0
  473. /package/dist/{Modal → components/Modal}/modal.variants.d.ts +0 -0
  474. /package/dist/{Modal → components/Modal}/modal.variants.js +0 -0
  475. /package/dist/{Pagination → components/Pagination}/Pagination.svelte.d.ts +0 -0
  476. /package/dist/{Pagination → components/Pagination}/index.d.ts +0 -0
  477. /package/dist/{Pagination → components/Pagination}/index.js +0 -0
  478. /package/dist/{Pagination → components/Pagination}/pagination.types.d.ts +0 -0
  479. /package/dist/{Select/select.types.js → components/Pagination/pagination.types.js} +0 -0
  480. /package/dist/{Pagination → components/Pagination}/pagination.variants.d.ts +0 -0
  481. /package/dist/{Pagination → components/Pagination}/pagination.variants.js +0 -0
  482. /package/dist/{PinInput → components/PinInput}/PinInput.svelte.d.ts +0 -0
  483. /package/dist/{PinInput → components/PinInput}/index.d.ts +0 -0
  484. /package/dist/{PinInput → components/PinInput}/index.js +0 -0
  485. /package/dist/{PinInput → components/PinInput}/pin-input.types.d.ts +0 -0
  486. /package/dist/{SelectMenu/select-menu.types.js → components/PinInput/pin-input.types.js} +0 -0
  487. /package/dist/{PinInput → components/PinInput}/pin-input.variants.d.ts +0 -0
  488. /package/dist/{PinInput → components/PinInput}/pin-input.variants.js +0 -0
  489. /package/dist/{Popover → components/Popover}/Popover.svelte.d.ts +0 -0
  490. /package/dist/{Popover → components/Popover}/index.d.ts +0 -0
  491. /package/dist/{Popover → components/Popover}/index.js +0 -0
  492. /package/dist/{Popover → components/Popover}/popover.types.d.ts +0 -0
  493. /package/dist/{Separator/separator.types.js → components/Popover/popover.types.js} +0 -0
  494. /package/dist/{Popover → components/Popover}/popover.variants.d.ts +0 -0
  495. /package/dist/{Popover → components/Popover}/popover.variants.js +0 -0
  496. /package/dist/{Progress → components/Progress}/Progress.svelte.d.ts +0 -0
  497. /package/dist/{Progress → components/Progress}/index.d.ts +0 -0
  498. /package/dist/{Progress → components/Progress}/index.js +0 -0
  499. /package/dist/{Progress → components/Progress}/progress.types.d.ts +0 -0
  500. /package/dist/{Skeleton/skeleton.types.js → components/Progress/progress.types.js} +0 -0
  501. /package/dist/{Progress → components/Progress}/progress.variants.d.ts +0 -0
  502. /package/dist/{Progress → components/Progress}/progress.variants.js +0 -0
  503. /package/dist/{RadioGroup → components/RadioGroup}/RadioGroup.svelte.d.ts +0 -0
  504. /package/dist/{RadioGroup → components/RadioGroup}/index.d.ts +0 -0
  505. /package/dist/{RadioGroup → components/RadioGroup}/index.js +0 -0
  506. /package/dist/{RadioGroup → components/RadioGroup}/radio-group.types.d.ts +0 -0
  507. /package/dist/{Slideover/slideover.types.js → components/RadioGroup/radio-group.types.js} +0 -0
  508. /package/dist/{RadioGroup → components/RadioGroup}/radio-group.variants.d.ts +0 -0
  509. /package/dist/{RadioGroup → components/RadioGroup}/radio-group.variants.js +0 -0
  510. /package/dist/{Select → components/Select}/Select.svelte.d.ts +0 -0
  511. /package/dist/{Select → components/Select}/index.d.ts +0 -0
  512. /package/dist/{Select → components/Select}/index.js +0 -0
  513. /package/dist/{Select → components/Select}/select.types.d.ts +0 -0
  514. /package/dist/{Slider/slider.types.js → components/Select/select.types.js} +0 -0
  515. /package/dist/{Select → components/Select}/select.variants.d.ts +0 -0
  516. /package/dist/{Select → components/Select}/select.variants.js +0 -0
  517. /package/dist/{SelectMenu → components/SelectMenu}/SelectMenu.svelte.d.ts +0 -0
  518. /package/dist/{SelectMenu → components/SelectMenu}/SelectMenuFormFieldTestWrapper.svelte.d.ts +0 -0
  519. /package/dist/{SelectMenu → components/SelectMenu}/index.d.ts +0 -0
  520. /package/dist/{SelectMenu → components/SelectMenu}/index.js +0 -0
  521. /package/dist/{SelectMenu → components/SelectMenu}/select-menu.types.d.ts +0 -0
  522. /package/dist/{Stepper/stepper.types.js → components/SelectMenu/select-menu.types.js} +0 -0
  523. /package/dist/{SelectMenu → components/SelectMenu}/select-menu.variants.d.ts +0 -0
  524. /package/dist/{SelectMenu → components/SelectMenu}/select-menu.variants.js +0 -0
  525. /package/dist/{Separator → components/Separator}/Separator.svelte.d.ts +0 -0
  526. /package/dist/{Separator → components/Separator}/index.d.ts +0 -0
  527. /package/dist/{Separator → components/Separator}/index.js +0 -0
  528. /package/dist/{Separator → components/Separator}/separator.types.d.ts +0 -0
  529. /package/dist/{Switch/switch.types.js → components/Separator/separator.types.js} +0 -0
  530. /package/dist/{Separator → components/Separator}/separator.variants.d.ts +0 -0
  531. /package/dist/{Separator → components/Separator}/separator.variants.js +0 -0
  532. /package/dist/{Skeleton → components/Skeleton}/Skeleton.svelte.d.ts +0 -0
  533. /package/dist/{Skeleton → components/Skeleton}/index.d.ts +0 -0
  534. /package/dist/{Skeleton → components/Skeleton}/index.js +0 -0
  535. /package/dist/{Skeleton → components/Skeleton}/skeleton.types.d.ts +0 -0
  536. /package/dist/{Table/table.types.js → components/Skeleton/skeleton.types.js} +0 -0
  537. /package/dist/{Skeleton → components/Skeleton}/skeleton.variants.d.ts +0 -0
  538. /package/dist/{Skeleton → components/Skeleton}/skeleton.variants.js +0 -0
  539. /package/dist/{Slideover → components/Slideover}/Slideover.svelte.d.ts +0 -0
  540. /package/dist/{Slideover → components/Slideover}/SlideoverTriggerTestWrapper.svelte.d.ts +0 -0
  541. /package/dist/{Slideover → components/Slideover}/index.d.ts +0 -0
  542. /package/dist/{Slideover → components/Slideover}/index.js +0 -0
  543. /package/dist/{Slideover → components/Slideover}/slideover.types.d.ts +0 -0
  544. /package/dist/{Tabs/tabs.types.js → components/Slideover/slideover.types.js} +0 -0
  545. /package/dist/{Slideover → components/Slideover}/slideover.variants.d.ts +0 -0
  546. /package/dist/{Slideover → components/Slideover}/slideover.variants.js +0 -0
  547. /package/dist/{Slider → components/Slider}/Slider.svelte.d.ts +0 -0
  548. /package/dist/{Slider → components/Slider}/index.d.ts +0 -0
  549. /package/dist/{Slider → components/Slider}/index.js +0 -0
  550. /package/dist/{Slider → components/Slider}/slider.types.d.ts +0 -0
  551. /package/dist/{Textarea/textarea.types.js → components/Slider/slider.types.js} +0 -0
  552. /package/dist/{Slider → components/Slider}/slider.variants.d.ts +0 -0
  553. /package/dist/{Slider → components/Slider}/slider.variants.js +0 -0
  554. /package/dist/{Stepper → components/Stepper}/Stepper.svelte.d.ts +0 -0
  555. /package/dist/{Stepper → components/Stepper}/index.d.ts +0 -0
  556. /package/dist/{Stepper → components/Stepper}/index.js +0 -0
  557. /package/dist/{Stepper → components/Stepper}/stepper.types.d.ts +0 -0
  558. /package/dist/{ThemeModeButton/theme-mode-button.types.js → components/Stepper/stepper.types.js} +0 -0
  559. /package/dist/{Stepper → components/Stepper}/stepper.variants.d.ts +0 -0
  560. /package/dist/{Stepper → components/Stepper}/stepper.variants.js +0 -0
  561. /package/dist/{Switch → components/Switch}/Switch.svelte.d.ts +0 -0
  562. /package/dist/{Switch → components/Switch}/index.d.ts +0 -0
  563. /package/dist/{Switch → components/Switch}/index.js +0 -0
  564. /package/dist/{Switch → components/Switch}/switch.types.d.ts +0 -0
  565. /package/dist/{Timeline/timeline.types.js → components/Switch/switch.types.js} +0 -0
  566. /package/dist/{Switch → components/Switch}/switch.variants.d.ts +0 -0
  567. /package/dist/{Switch → components/Switch}/switch.variants.js +0 -0
  568. /package/dist/{Table → components/Table}/Table.svelte.d.ts +0 -0
  569. /package/dist/{Table → components/Table}/index.d.ts +0 -0
  570. /package/dist/{Table → components/Table}/index.js +0 -0
  571. /package/dist/{Table → components/Table}/table.types.d.ts +0 -0
  572. /package/dist/{Toast/toast.types.js → components/Table/table.types.js} +0 -0
  573. /package/dist/{Table → components/Table}/table.utils.d.ts +0 -0
  574. /package/dist/{Table → components/Table}/table.utils.js +0 -0
  575. /package/dist/{Table → components/Table}/table.variants.d.ts +0 -0
  576. /package/dist/{Table → components/Table}/table.variants.js +0 -0
  577. /package/dist/{Tabs → components/Tabs}/Tabs.svelte.d.ts +0 -0
  578. /package/dist/{Tabs → components/Tabs}/index.d.ts +0 -0
  579. /package/dist/{Tabs → components/Tabs}/index.js +0 -0
  580. /package/dist/{Tabs → components/Tabs}/tabs.types.d.ts +0 -0
  581. /package/dist/{Tooltip/tooltip.types.js → components/Tabs/tabs.types.js} +0 -0
  582. /package/dist/{Tabs → components/Tabs}/tabs.variants.d.ts +0 -0
  583. /package/dist/{Tabs → components/Tabs}/tabs.variants.js +0 -0
  584. /package/dist/{Textarea → components/Textarea}/Textarea.svelte.d.ts +0 -0
  585. /package/dist/{Textarea → components/Textarea}/index.d.ts +0 -0
  586. /package/dist/{Textarea → components/Textarea}/index.js +0 -0
  587. /package/dist/{Textarea → components/Textarea}/textarea.types.d.ts +0 -0
  588. /package/dist/{User/user.types.js → components/Textarea/textarea.types.js} +0 -0
  589. /package/dist/{Textarea → components/Textarea}/textarea.variants.d.ts +0 -0
  590. /package/dist/{Textarea → components/Textarea}/textarea.variants.js +0 -0
  591. /package/dist/{ThemeModeButton → components/ThemeModeButton}/ThemeModeButton.svelte.d.ts +0 -0
  592. /package/dist/{ThemeModeButton → components/ThemeModeButton}/index.d.ts +0 -0
  593. /package/dist/{ThemeModeButton → components/ThemeModeButton}/index.js +0 -0
  594. /package/dist/{ThemeModeButton → components/ThemeModeButton}/theme-mode-button.types.d.ts +0 -0
  595. /package/dist/{ThemeModeButton → components/ThemeModeButton}/theme-mode-button.variants.d.ts +0 -0
  596. /package/dist/{ThemeModeButton → components/ThemeModeButton}/theme-mode-button.variants.js +0 -0
  597. /package/dist/{Timeline → components/Timeline}/Timeline.svelte.d.ts +0 -0
  598. /package/dist/{Timeline → components/Timeline}/index.d.ts +0 -0
  599. /package/dist/{Timeline → components/Timeline}/index.js +0 -0
  600. /package/dist/{Timeline → components/Timeline}/timeline.types.d.ts +0 -0
  601. /package/dist/{Timeline → components/Timeline}/timeline.variants.d.ts +0 -0
  602. /package/dist/{Timeline → components/Timeline}/timeline.variants.js +0 -0
  603. /package/dist/{Toast → components/Toast}/Toaster.svelte.d.ts +0 -0
  604. /package/dist/{Toast → components/Toast}/index.d.ts +0 -0
  605. /package/dist/{Toast → components/Toast}/index.js +0 -0
  606. /package/dist/{Toast → components/Toast}/toast.d.ts +0 -0
  607. /package/dist/{Toast → components/Toast}/toast.js +0 -0
  608. /package/dist/{Toast → components/Toast}/toast.types.d.ts +0 -0
  609. /package/dist/{Toast → components/Toast}/toast.variants.d.ts +0 -0
  610. /package/dist/{Toast → components/Toast}/toast.variants.js +0 -0
  611. /package/dist/{Tooltip → components/Tooltip}/Tooltip.svelte.d.ts +0 -0
  612. /package/dist/{Tooltip → components/Tooltip}/TooltipTestWrapper.svelte.d.ts +0 -0
  613. /package/dist/{Tooltip → components/Tooltip}/index.d.ts +0 -0
  614. /package/dist/{Tooltip → components/Tooltip}/index.js +0 -0
  615. /package/dist/{Tooltip → components/Tooltip}/tooltip.types.d.ts +0 -0
  616. /package/dist/{Tooltip → components/Tooltip}/tooltip.variants.d.ts +0 -0
  617. /package/dist/{Tooltip → components/Tooltip}/tooltip.variants.js +0 -0
  618. /package/dist/{User → components/User}/User.svelte.d.ts +0 -0
  619. /package/dist/{User → components/User}/index.d.ts +0 -0
  620. /package/dist/{User → components/User}/index.js +0 -0
  621. /package/dist/{User → components/User}/user.types.d.ts +0 -0
  622. /package/dist/{User → components/User}/user.variants.d.ts +0 -0
  623. /package/dist/{User → components/User}/user.variants.js +0 -0
  624. /package/dist/hooks/{useClickOutside.svelte.d.ts → useClickOutside/useClickOutside.svelte.d.ts} +0 -0
  625. /package/dist/hooks/{useClipboard.svelte.js → useClipboard/useClipboard.svelte.js} +0 -0
  626. /package/dist/hooks/{useDebounce.svelte.d.ts → useDebounce/useDebounce.svelte.d.ts} +0 -0
  627. /package/dist/hooks/{useDebounce.svelte.js → useDebounce/useDebounce.svelte.js} +0 -0
  628. /package/dist/hooks/{useEscapeKeydown.svelte.d.ts → useEscapeKeydown/useEscapeKeydown.svelte.d.ts} +0 -0
  629. /package/dist/hooks/{HookContextProbe.svelte.d.ts → useFormField/HookContextProbe.svelte.d.ts} +0 -0
  630. /package/dist/hooks/{HookContextProvider.svelte.d.ts → useFormField/HookContextProvider.svelte.d.ts} +0 -0
  631. /package/dist/hooks/{HookEmitProbe.svelte.d.ts → useFormField/HookEmitProbe.svelte.d.ts} +0 -0
package/README.md CHANGED
@@ -5,113 +5,192 @@
5
5
  <h1 align="center">SV5UI</h1>
6
6
 
7
7
  <p align="center">
8
- <strong>Modern UI component library for Svelte 5</strong><br/>
9
- Tailwind CSS 4 &middot; OKLCH Color Tokens &middot; Fully Typed &middot; 50+ Components &middot; 7 Hooks
8
+ <strong>The modern UI component library for Svelte 5.</strong><br/>
9
+ Accessible components and reactive hooks, styled with Tailwind CSS 4 and fully typed.
10
10
  </p>
11
11
 
12
12
  <p align="center">
13
- <a href="https://www.npmjs.com/package/sv5ui"><img src="https://img.shields.io/npm/v/sv5ui?style=flat-square&colorA=18181b&colorB=ff3e00" alt="npm" /></a>
14
- <a href="https://www.npmjs.com/package/sv5ui"><img src="https://img.shields.io/npm/dm/sv5ui?style=flat-square&colorA=18181b&colorB=ff3e00" alt="downloads" /></a>
13
+ <a href="https://www.npmjs.com/package/sv5ui"><img src="https://img.shields.io/npm/v/sv5ui?style=flat-square&colorA=18181b&colorB=ff3e00" alt="npm version" /></a>
14
+ <a href="https://www.npmjs.com/package/sv5ui"><img src="https://img.shields.io/npm/dm/sv5ui?style=flat-square&colorA=18181b&colorB=ff3e00" alt="npm downloads" /></a>
15
15
  <a href="https://github.com/ndlabdev/sv5ui/blob/main/LICENSE"><img src="https://img.shields.io/npm/l/sv5ui?style=flat-square&colorA=18181b&colorB=ff3e00" alt="license" /></a>
16
16
  </p>
17
17
 
18
18
  <p align="center">
19
- <a href="https://sv5ui.vercel.app"><strong>Live Demo</strong></a> &middot;
20
- <a href="https://sv5ui.vercel.app/getting-started"><strong>Getting Started</strong></a> &middot;
19
+ <a href="https://sv5ui.vercel.app"><strong>Live Demo &amp; Docs</strong></a> &middot;
21
20
  <a href="https://github.com/ndlabdev/sv5ui/blob/main/CHANGELOG.md"><strong>Changelog</strong></a>
22
21
  </p>
23
22
 
24
23
  ---
25
24
 
26
- ## Install
25
+ **SV5UI** is a batteries-included component library built natively for **Svelte 5 runes**. It pairs accessible primitives from [Bits UI](https://bits-ui.com) with a [Tailwind CSS 4](https://tailwindcss.com) styling layer you can theme down to a single token — so you ship polished, accessible UI without rebuilding buttons, modals, and forms for the hundredth time.
26
+
27
+ ```svelte
28
+ <script>
29
+ import { Button, Avatar, toast } from 'sv5ui'
30
+ </script>
31
+
32
+ <Button variant="soft" color="primary" leadingIcon="lucide:edit">Edit</Button>
33
+ <Avatar src="/photo.jpg" alt="Jane" size="lg" />
34
+ <Button onclick={() => toast.success('Saved!')}>Save</Button>
35
+ ```
36
+
37
+ ## Why SV5UI?
38
+
39
+ - **Native Svelte 5** — Built on runes and snippets from the ground up, not ported from an older API. Reactivity is first-class, not retrofitted.
40
+ - **Accessible by default** — Overlays, menus, and form controls are built on [Bits UI](https://bits-ui.com) and [Vaul Svelte](https://vaul-svelte.com), so focus management, keyboard navigation, and WAI-ARIA semantics come for free.
41
+ - **Thoroughly tested** — Every component is covered by an extensive unit and real-browser test suite (Vitest + Playwright), including accessibility and memory-leak regressions.
42
+ - **Themeable to the core** — [OKLCH](https://oklch.com) color tokens, automatic light/dark mode, and three layers of customization (per-instance → global config → CSS variables).
43
+ - **Truly typed** — Strict TypeScript with exported prop types for every component; a `publint`-clean ESM package with proper `types` and `svelte` export conditions.
44
+ - **Tree-shakeable** — Pure ESM with side effects limited to CSS, so you only ship the components you import.
45
+ - **Bring your own validation** — `Form` speaks [Standard Schema](https://standardschema.dev), so it works out of the box with Zod, Valibot, Yup, or Joi.
46
+ - **Icons included** — Reference any [Iconify](https://iconify.design) icon by name, with no per-icon imports: `leadingIcon="lucide:edit"`.
47
+
48
+ ## Quick Start
49
+
50
+ **1. Install**
27
51
 
28
52
  ```bash
29
53
  npm install sv5ui
30
- # pnpm add sv5ui
31
- # yarn add sv5ui
32
- # bun add sv5ui
54
+ # pnpm add sv5ui · yarn add sv5ui · bun add sv5ui
33
55
  ```
34
56
 
57
+ > **Peer dependencies:** `svelte@^5`, `tailwindcss@^4`, and `mode-watcher@^1`. The rich-text `Editor` and `Form` validators (TipTap, Zod/Valibot/Yup/Joi) are **optional** peers — install only what you use.
58
+
59
+ **2. Import the theme**
60
+
35
61
  ```css
36
- /* layout.css */
62
+ /* app.css */
37
63
  @import 'sv5ui/theme.css';
38
64
  ```
39
65
 
66
+ **3. Enable dark mode** (one-time, in your root layout)
67
+
40
68
  ```svelte
41
69
  <script>
42
- import { Button, Avatar, toast } from 'sv5ui'
70
+ import { ModeWatcher } from 'mode-watcher'
43
71
  </script>
44
72
 
45
- <Button variant="soft" color="primary" leadingIcon="lucide:edit">Edit</Button>
46
- <Avatar src="/photo.jpg" alt="Jane" size="lg" />
73
+ <ModeWatcher />
74
+ ```
75
+
76
+ **4. Use components**
77
+
78
+ ```svelte
79
+ <script>
80
+ import { Card, Button } from 'sv5ui'
81
+ </script>
82
+
83
+ <Card>
84
+ <p>Welcome back 👋</p>
85
+ <Button color="primary" leadingIcon="lucide:log-in">Sign in</Button>
86
+ </Card>
47
87
  ```
48
88
 
49
- ## Features
89
+ That's it — no provider to wrap, no config file required.
90
+
91
+ ## Components
50
92
 
51
- - **Svelte 5** Runes, snippets, latest reactivity
52
- - **Tailwind CSS 4** — Utility-first with [Tailwind Variants](https://www.tailwind-variants.org/)
53
- - **Fully Typed** Strict TypeScript, exported prop types
54
- - **Accessible** — Built on [Bits UI](https://bits-ui.com) & [Vaul Svelte](https://vaul-svelte.com)
55
- - **200,000+ Icons** — [Iconify](https://iconify.design) integration
56
- - **Themeable** — OKLCH color tokens, light/dark mode, global config
57
- - **Hooks** — 7 reactive hooks for common UI patterns
93
+ SV5UI covers the surface area of a real application — forms and inputs, overlays and menus, navigation, data display, and feedback — including richer pieces many libraries leave out, like a TipTap-powered rich-text **Editor**, a data **Table**, a **Command** palette, and a **Calendar**.
94
+
95
+ Every component is fully typed, theme-aware, and exposes a consistent `variant` / `color` / `size` / `ui` API. Browse the complete, always-current catalog with live examples and prop tables in the **[live demo](https://sv5ui.vercel.app)**.
58
96
 
59
97
  ## Hooks
60
98
 
61
- Reactive hooks built on Svelte 5 runes and actions.
99
+ Beyond components, SV5UI exports a set of reactive hooks built on the same runes and actions it uses internally — for everyday UI needs such as media queries, clipboard access, debouncing, focus trapping, and scroll locking.
62
100
 
63
101
  ```svelte
64
102
  <script>
65
- import { useMediaQuery, useClipboard, useDebounce } from 'sv5ui'
103
+ import { useMediaQuery, useClipboard } from 'sv5ui'
66
104
 
67
105
  const isMobile = useMediaQuery('(max-width: 640px)')
68
106
  const clipboard = useClipboard()
69
- const debounce = useDebounce({ delay: 500 })
70
107
  </script>
71
108
 
72
- {#if isMobile.matches}
73
- <MobileLayout />
74
- {/if}
109
+ {#if isMobile.matches}<MobileNav />{/if}
75
110
 
76
111
  <Button onclick={() => clipboard.copy('Hello!')}>
77
112
  {clipboard.copied ? 'Copied!' : 'Copy'}
78
113
  </Button>
79
114
  ```
80
115
 
81
- | Hook | Type | Description |
82
- | ------------------- | -------------- | ---------------------------------------------- |
83
- | `useMediaQuery` | Runes | Reactive CSS media query tracking |
84
- | `useClipboard` | Runes | Copy text with auto-reset state |
85
- | `useFormField` | Context | Access FormField context from child components |
86
- | `useDebounce` | Runes | Debounce with pending, cancel, flush |
87
- | `useClickOutside` | Action | Detect clicks outside an element |
88
- | `useInfiniteScroll` | Runes + Action | Auto-load on scroll with loading state |
89
- | `useEscapeKeydown` | Action | Listen for Escape key |
90
-
91
116
  ## Customization
92
117
 
118
+ SV5UI gives you three layers of control, from a single instance up to your whole design system.
119
+
120
+ **1. Per-instance** — override any slot with the `ui` prop or `class`:
121
+
93
122
  ```svelte
94
- <!-- Per-instance -->
95
- <Button ui={{ base: 'rounded-full shadow-lg' }}>Custom</Button>
123
+ <Button ui={{ base: 'rounded-full shadow-lg' }}>Pill button</Button>
96
124
  ```
97
125
 
126
+ **2. Global defaults** — set library-wide variants and icons once:
127
+
98
128
  ```ts
99
- // Global defaults
100
129
  import { defineConfig } from 'sv5ui'
101
130
 
102
131
  defineConfig({
103
132
  button: { defaultVariants: { variant: 'outline' } },
104
- icons: { loading: 'lucide:loader' }
133
+ icons: { loading: 'lucide:loader-circle' }
105
134
  })
106
135
  ```
107
136
 
137
+ **3. Design tokens** — re-skin everything with CSS variables (OKLCH):
138
+
108
139
  ```css
109
- /* Custom colors */
110
140
  :root {
111
141
  --color-primary: oklch(0.55 0.25 270);
142
+ --radius-lg: 0.75rem;
112
143
  }
113
144
  ```
114
145
 
146
+ ## Form validation
147
+
148
+ `Form` validates with any [Standard Schema](https://standardschema.dev) library — no adapter, no wrapper:
149
+
150
+ ```svelte
151
+ <script>
152
+ import { Form, FormField, Input, Button } from 'sv5ui'
153
+ import { z } from 'zod'
154
+
155
+ const schema = z.object({
156
+ email: z.string().email(),
157
+ password: z.string().min(8)
158
+ })
159
+ </script>
160
+
161
+ <Form {schema} onsubmit={({ data }) => console.log(data)}>
162
+ <FormField name="email" label="Email"><Input /></FormField>
163
+ <FormField name="password" label="Password"><Input type="password" /></FormField>
164
+ <Button type="submit">Sign in</Button>
165
+ </Form>
166
+ ```
167
+
168
+ Swap `zod` for `valibot`, `yup`, or `joi` — the API is identical.
169
+
170
+ ## Requirements
171
+
172
+ | Peer | Version | Required |
173
+ | --------------------------------- | -------- | -------------------------- |
174
+ | `svelte` | `^5.0.0` | Yes |
175
+ | `tailwindcss` | `^4.0.0` | Yes |
176
+ | `mode-watcher` | `^1.0.0` | Yes (dark mode) |
177
+ | `zod` / `valibot` / `yup` / `joi` | — | Optional (form validation) |
178
+ | `@tiptap/*`, `tiptap-markdown` | `^3.0.0` | Optional (`Editor`) |
179
+
180
+ ## Contributing
181
+
182
+ Issues and pull requests are welcome. To run the project locally:
183
+
184
+ ```bash
185
+ git clone https://github.com/ndlabdev/sv5ui.git
186
+ cd sv5ui
187
+ npm install
188
+ npm run dev # docs site at localhost:5173
189
+ npm test # vitest (unit + browser)
190
+ npm run check # svelte-check
191
+ npm run lint # prettier + eslint
192
+ ```
193
+
115
194
  ## License
116
195
 
117
196
  [MIT](LICENSE) &copy; [ndlabdev](https://github.com/ndlabdev)
@@ -1,102 +1,82 @@
1
- <script lang="ts" module>
2
- import type { AccordionProps, AccordionItem } from './accordion.types.js'
3
-
4
- export type Props = AccordionProps
5
- </script>
6
-
7
- <script lang="ts">
8
- import { Accordion } from 'bits-ui'
9
- import { slide } from 'svelte/transition'
10
- import { accordionVariants, accordionDefaults } from './accordion.variants.js'
11
- import { getComponentConfig } from '../config.js'
12
- import Icon from '../Icon/Icon.svelte'
13
-
14
- const config = getComponentConfig('accordion', accordionDefaults)
15
-
16
- let {
17
- items = [],
18
- type = 'single',
19
- value = $bindable(),
20
- onValueChange,
21
- disabled = false,
22
- loop = false,
23
- orientation = 'vertical',
24
- forceMount = false,
25
- trailingIcon = 'lucide:chevron-down',
26
- ui,
27
- class: className,
28
- leading,
29
- label: labelSlot,
30
- trailing,
31
- content: contentSlot,
32
- body: bodySlot
33
- }: Props = $props()
34
-
35
- const variantSlots = $derived(accordionVariants({ disabled }))
36
- const rootClass = $derived(
37
- variantSlots.root({ class: [config.slots.root, ui?.root, className] })
38
- )
39
-
40
- const singleValue = $derived(typeof value === 'string' ? value : undefined)
41
- const multipleValue = $derived(Array.isArray(value) ? value : undefined)
42
-
43
- const slotNames = [
44
- 'item',
45
- 'header',
46
- 'trigger',
47
- 'content',
48
- 'body',
49
- 'leadingIcon',
50
- 'trailingIcon',
51
- 'label'
52
- ] as const
53
-
54
- type SlotName = (typeof slotNames)[number]
55
-
56
- const itemDefaults = $derived.by(() => {
57
- const result = {} as Record<SlotName, string>
58
- for (const slot of slotNames) {
59
- result[slot] = variantSlots[slot]({ class: [config.slots[slot], ui?.[slot]] })
60
- }
61
- return result
62
- })
63
-
64
- function getItemClasses(item: AccordionItem) {
65
- if (!item.ui && item.class === undefined && item.disabled === undefined) {
66
- return itemDefaults
67
- }
68
- const result = {} as Record<SlotName, string>
69
- for (const slot of slotNames) {
70
- const baseClass = [
71
- config.slots[slot],
72
- ui?.[slot],
73
- item.ui?.[slot],
74
- slot === 'item' ? item.class : undefined
75
- ]
76
- const opts =
77
- slot === 'trigger'
78
- ? { class: baseClass, disabled: item.disabled }
79
- : { class: baseClass }
80
- result[slot] = variantSlots[slot](opts)
81
- }
82
- return result
83
- }
84
-
85
- function isOpen(itemValue: string): boolean {
86
- if (!value) return false
87
- if (Array.isArray(value)) return value.includes(itemValue)
88
- return value === itemValue
89
- }
90
-
91
- function handleSingleValueChange(newValue: string) {
92
- value = newValue
93
- onValueChange?.(newValue)
94
- }
95
-
96
- function handleMultipleValueChange(newValue: string[]) {
97
- value = newValue
98
- onValueChange?.(newValue)
99
- }
1
+ <script lang="ts" module></script>
2
+
3
+ <script lang="ts">import { Accordion } from "bits-ui";
4
+ import { slide } from "svelte/transition";
5
+ import { accordionVariants, accordionDefaults } from "./accordion.variants.js";
6
+ import { getComponentConfig } from "../../config.js";
7
+ import Icon from "../Icon/Icon.svelte";
8
+ const config = getComponentConfig("accordion", accordionDefaults);
9
+ let {
10
+ items = [],
11
+ type = "single",
12
+ value = $bindable(),
13
+ onValueChange,
14
+ disabled = false,
15
+ loop = false,
16
+ orientation = "vertical",
17
+ forceMount = false,
18
+ trailingIcon = "lucide:chevron-down",
19
+ ui,
20
+ class: className,
21
+ leading,
22
+ label: labelSlot,
23
+ trailing,
24
+ content: contentSlot,
25
+ body: bodySlot
26
+ } = $props();
27
+ const variantSlots = $derived(accordionVariants({ disabled }));
28
+ const rootClass = $derived(
29
+ variantSlots.root({ class: [config.slots.root, ui?.root, className] })
30
+ );
31
+ const singleValue = $derived(typeof value === "string" ? value : void 0);
32
+ const multipleValue = $derived(Array.isArray(value) ? value : void 0);
33
+ const slotNames = [
34
+ "item",
35
+ "header",
36
+ "trigger",
37
+ "content",
38
+ "body",
39
+ "leadingIcon",
40
+ "trailingIcon",
41
+ "label"
42
+ ];
43
+ const itemDefaults = $derived.by(() => {
44
+ const result = {};
45
+ for (const slot of slotNames) {
46
+ result[slot] = variantSlots[slot]({ class: [config.slots[slot], ui?.[slot]] });
47
+ }
48
+ return result;
49
+ });
50
+ function getItemClasses(item) {
51
+ if (!item.ui && item.class === void 0 && item.disabled === void 0) {
52
+ return itemDefaults;
53
+ }
54
+ const result = {};
55
+ for (const slot of slotNames) {
56
+ const baseClass = [
57
+ config.slots[slot],
58
+ ui?.[slot],
59
+ item.ui?.[slot],
60
+ slot === "item" ? item.class : void 0
61
+ ];
62
+ const opts = slot === "trigger" ? { class: baseClass, disabled: item.disabled } : { class: baseClass };
63
+ result[slot] = variantSlots[slot](opts);
64
+ }
65
+ return result;
66
+ }
67
+ function isOpen(itemValue) {
68
+ if (!value) return false;
69
+ if (Array.isArray(value)) return value.includes(itemValue);
70
+ return value === itemValue;
71
+ }
72
+ function handleSingleValueChange(newValue) {
73
+ value = newValue;
74
+ onValueChange?.(newValue);
75
+ }
76
+ function handleMultipleValueChange(newValue) {
77
+ value = newValue;
78
+ onValueChange?.(newValue);
79
+ }
100
80
  </script>
101
81
 
102
82
  {#snippet accordionItem(item: AccordionItem, index: number)}
@@ -0,0 +1,119 @@
1
+ <script lang="ts" module></script>
2
+
3
+ <script lang="ts">import { alertVariants, alertDefaults } from "./alert.variants.js";
4
+ import { getComponentConfig, iconsDefaults } from "../../config.js";
5
+ import Icon from "../Icon/Icon.svelte";
6
+ import Avatar from "../Avatar/Avatar.svelte";
7
+ import Button from "../Button/Button.svelte";
8
+ const config = getComponentConfig("alert", alertDefaults);
9
+ const icons = getComponentConfig("icons", iconsDefaults);
10
+ let {
11
+ ref = $bindable(null),
12
+ as = "div",
13
+ ui,
14
+ title,
15
+ description,
16
+ icon,
17
+ avatar,
18
+ color = config.defaultVariants.color,
19
+ variant = config.defaultVariants.variant,
20
+ orientation = config.defaultVariants.orientation,
21
+ open = $bindable(true),
22
+ close = false,
23
+ closeIcon,
24
+ actions,
25
+ class: className,
26
+ leading,
27
+ titleSlot,
28
+ descriptionSlot,
29
+ actionsSlot,
30
+ closeSlot,
31
+ onClose,
32
+ ...restProps
33
+ } = $props();
34
+ const resolvedCloseIcon = $derived(closeIcon ?? icons.close);
35
+ const classes = $derived.by(() => {
36
+ const slots = alertVariants({ variant, color, orientation, title: !!title });
37
+ return {
38
+ root: slots.root({ class: [config.slots.root, className, ui?.root] }),
39
+ wrapper: slots.wrapper({ class: [config.slots.wrapper, ui?.wrapper] }),
40
+ title: slots.title({ class: [config.slots.title, ui?.title] }),
41
+ description: slots.description({ class: [config.slots.description, ui?.description] }),
42
+ icon: slots.icon({ class: [config.slots.icon, ui?.icon] }),
43
+ avatar: slots.avatar({ class: [config.slots.avatar, ui?.avatar] }),
44
+ actions: slots.actions({ class: [config.slots.actions, ui?.actions] }),
45
+ close: slots.close({ class: [config.slots.close, ui?.close] })
46
+ };
47
+ });
48
+ const closeButtonProps = $derived(!close ? null : close === true ? {} : close);
49
+ const isVertical = $derived(orientation === "vertical");
50
+ const hasActions = $derived(!!actionsSlot || actions && actions.length > 0);
51
+ function handleClose() {
52
+ open = false;
53
+ onClose?.();
54
+ }
55
+ </script>
56
+
57
+ {#snippet actionsContent()}
58
+ {#if actionsSlot}
59
+ {@render actionsSlot()}
60
+ {:else if actions && actions.length > 0}
61
+ <div class={classes.actions}>
62
+ {#each actions as action, index (index)}
63
+ <Button size="xs" {...action} />
64
+ {/each}
65
+ </div>
66
+ {/if}
67
+ {/snippet}
68
+
69
+ {#if open}
70
+ <svelte:element this={as} bind:this={ref} class={classes.root} role="alert" {...restProps}>
71
+ {#if leading}
72
+ {@render leading()}
73
+ {:else if icon}
74
+ <Icon name={icon} class={classes.icon} />
75
+ {:else if avatar}
76
+ <Avatar {...avatar} class={classes.avatar} />
77
+ {/if}
78
+
79
+ {#if title || description || titleSlot || descriptionSlot || (isVertical && hasActions)}
80
+ <div class={classes.wrapper}>
81
+ {#if titleSlot}
82
+ {@render titleSlot()}
83
+ {:else if title}
84
+ <div class={classes.title}>{title}</div>
85
+ {/if}
86
+
87
+ {#if descriptionSlot}
88
+ {@render descriptionSlot()}
89
+ {:else if description}
90
+ <div class={classes.description}>{description}</div>
91
+ {/if}
92
+
93
+ {#if isVertical}
94
+ {@render actionsContent()}
95
+ {/if}
96
+ </div>
97
+ {/if}
98
+
99
+ {#if !isVertical}
100
+ {@render actionsContent()}
101
+ {/if}
102
+
103
+ {#if closeSlot}
104
+ <div class={classes.close}>
105
+ {@render closeSlot()}
106
+ </div>
107
+ {:else if closeButtonProps}
108
+ <Button
109
+ {...closeButtonProps}
110
+ icon={closeButtonProps.icon ?? resolvedCloseIcon}
111
+ variant={closeButtonProps.variant ?? 'link'}
112
+ color={closeButtonProps.color ?? 'surface'}
113
+ class={classes.close}
114
+ onclick={handleClose}
115
+ aria-label={closeButtonProps['aria-label'] ?? 'Close alert'}
116
+ />
117
+ {/if}
118
+ </svelte:element>
119
+ {/if}
@@ -0,0 +1,86 @@
1
+ <script lang="ts" module></script>
2
+
3
+ <script lang="ts">import { Avatar } from "bits-ui";
4
+ import { avatarVariants, avatarDefaults, avatarSizePx } from "./avatar.variants.js";
5
+ import { getComponentConfig } from "../../config.js";
6
+ import { getContext } from "svelte";
7
+ import Icon from "../Icon/Icon.svelte";
8
+ import Chip from "../Chip/Chip.svelte";
9
+ const config = getComponentConfig("avatar", avatarDefaults);
10
+ let {
11
+ ref = $bindable(null),
12
+ src,
13
+ alt,
14
+ size,
15
+ rounded,
16
+ text,
17
+ icon,
18
+ chip,
19
+ loading,
20
+ delayMs = 0,
21
+ class: className,
22
+ ui,
23
+ fallback: fallbackSnippet,
24
+ children,
25
+ ...restProps
26
+ } = $props();
27
+ const groupContext = getContext("avatarGroup");
28
+ const resolvedSize = $derived(size ?? groupContext?.size ?? config.defaultVariants.size ?? "md");
29
+ const resolvedRounded = $derived(
30
+ rounded ?? groupContext?.rounded ?? config.defaultVariants.rounded ?? "full"
31
+ );
32
+ const sizePx = $derived(avatarSizePx[resolvedSize]);
33
+ const initials = $derived(
34
+ text !== void 0 ? text : alt ? alt.split(" ").filter(Boolean).slice(0, 2).map((w) => w[0]).join("").toUpperCase() : ""
35
+ );
36
+ const chipProps = $derived(
37
+ chip === true ? { inset: true } : chip ? { inset: true, ...chip } : void 0
38
+ );
39
+ const classes = $derived.by(() => {
40
+ const slots = avatarVariants({ size: resolvedSize, rounded: resolvedRounded });
41
+ return {
42
+ root: slots.root({
43
+ class: [config.slots.root, groupContext?.baseClass, className, ui?.root]
44
+ }),
45
+ image: slots.image({ class: [config.slots.image, ui?.image] }),
46
+ fallback: slots.fallback({ class: [config.slots.fallback, ui?.fallback] }),
47
+ icon: slots.icon({ class: [config.slots.icon, ui?.icon] })
48
+ };
49
+ });
50
+ </script>
51
+
52
+ {#snippet avatarContent()}
53
+ <Avatar.Root {...restProps} bind:ref class={classes.root} {delayMs}>
54
+ {#if children}
55
+ {@render children()}
56
+ {:else}
57
+ {#if src}
58
+ <Avatar.Image
59
+ {src}
60
+ alt={alt ?? ''}
61
+ class={classes.image}
62
+ width={sizePx}
63
+ height={sizePx}
64
+ {loading}
65
+ />
66
+ {/if}
67
+ <Avatar.Fallback class={classes.fallback}>
68
+ {#if fallbackSnippet}
69
+ {@render fallbackSnippet()}
70
+ {:else if initials}
71
+ {initials}
72
+ {:else if icon}
73
+ <Icon name={icon} class={classes.icon} />
74
+ {/if}
75
+ </Avatar.Fallback>
76
+ {/if}
77
+ </Avatar.Root>
78
+ {/snippet}
79
+
80
+ {#if chipProps}
81
+ <Chip {...chipProps}>
82
+ {@render avatarContent()}
83
+ </Chip>
84
+ {:else}
85
+ {@render avatarContent()}
86
+ {/if}