@getmicdrop/svelte-components 5.5.5 → 5.6.1

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 (330) hide show
  1. package/dist/calendar/AboutShow/AboutShow.svelte +172 -172
  2. package/dist/calendar/Calendar/MiniMonthCalendar.svelte +782 -782
  3. package/dist/calendar/FAQs/FAQs.svelte +75 -75
  4. package/dist/calendar/MonthSwitcher/MonthSwitcher.svelte +126 -126
  5. package/dist/calendar/OrderSummary/OrderSummary.svelte +367 -367
  6. package/dist/calendar/PublicCard/PublicCard.svelte +134 -134
  7. package/dist/calendar/ShowCard/ShowCard.svelte +157 -157
  8. package/dist/calendar/ShowTimeCard/ShowTimeCard.svelte +61 -61
  9. package/dist/components/Layout/AppShell.svelte +104 -0
  10. package/dist/components/Layout/AppShell.svelte.d.ts +26 -0
  11. package/dist/components/Layout/AppShell.svelte.d.ts.map +1 -0
  12. package/dist/components/Layout/ContentSection.svelte +80 -0
  13. package/dist/components/Layout/ContentSection.svelte.d.ts +23 -0
  14. package/dist/components/Layout/ContentSection.svelte.d.ts.map +1 -0
  15. package/dist/components/Layout/Grid.svelte +4 -4
  16. package/dist/components/Layout/Heading.svelte +81 -0
  17. package/dist/components/Layout/Heading.svelte.d.ts +24 -0
  18. package/dist/components/Layout/Heading.svelte.d.ts.map +1 -0
  19. package/dist/components/Layout/PageContainer.svelte +69 -0
  20. package/dist/components/Layout/PageContainer.svelte.d.ts +23 -0
  21. package/dist/components/Layout/PageContainer.svelte.d.ts.map +1 -0
  22. package/dist/components/Layout/Responsive.svelte +75 -0
  23. package/dist/components/Layout/Responsive.svelte.d.ts +19 -0
  24. package/dist/components/Layout/Responsive.svelte.d.ts.map +1 -0
  25. package/dist/components/Layout/Section.svelte +80 -80
  26. package/dist/components/Layout/ShowOnDesktop.svelte +37 -0
  27. package/dist/components/Layout/ShowOnDesktop.svelte.d.ts +16 -0
  28. package/dist/components/Layout/ShowOnDesktop.svelte.d.ts.map +1 -0
  29. package/dist/components/Layout/ShowOnMobile.svelte +37 -0
  30. package/dist/components/Layout/ShowOnMobile.svelte.d.ts +16 -0
  31. package/dist/components/Layout/ShowOnMobile.svelte.d.ts.map +1 -0
  32. package/dist/components/Layout/Sidebar.svelte +108 -108
  33. package/dist/components/Layout/Stack.spec.js +1 -1
  34. package/dist/components/Layout/Stack.svelte +6 -6
  35. package/dist/components/Layout/Text.svelte +87 -0
  36. package/dist/components/Layout/Text.svelte.d.ts +28 -0
  37. package/dist/components/Layout/Text.svelte.d.ts.map +1 -0
  38. package/dist/components/Layout/TwoColumn.svelte +108 -0
  39. package/dist/components/Layout/TwoColumn.svelte.d.ts +28 -0
  40. package/dist/components/Layout/TwoColumn.svelte.d.ts.map +1 -0
  41. package/dist/components/Layout/__tests__/AppShell.test.d.ts +2 -0
  42. package/dist/components/Layout/__tests__/AppShell.test.d.ts.map +1 -0
  43. package/dist/components/Layout/__tests__/AppShell.test.js +95 -0
  44. package/dist/components/Layout/__tests__/ContentSection.test.d.ts +2 -0
  45. package/dist/components/Layout/__tests__/ContentSection.test.d.ts.map +1 -0
  46. package/dist/components/Layout/__tests__/ContentSection.test.js +112 -0
  47. package/dist/components/Layout/__tests__/Heading.test.d.ts +2 -0
  48. package/dist/components/Layout/__tests__/Heading.test.d.ts.map +1 -0
  49. package/dist/components/Layout/__tests__/Heading.test.js +123 -0
  50. package/dist/components/Layout/__tests__/PageContainer.test.d.ts +2 -0
  51. package/dist/components/Layout/__tests__/PageContainer.test.d.ts.map +1 -0
  52. package/dist/components/Layout/__tests__/PageContainer.test.js +133 -0
  53. package/dist/components/Layout/__tests__/Responsive.test.d.ts +2 -0
  54. package/dist/components/Layout/__tests__/Responsive.test.d.ts.map +1 -0
  55. package/dist/components/Layout/__tests__/Responsive.test.js +123 -0
  56. package/dist/components/Layout/__tests__/ShowOnDesktop.test.d.ts +2 -0
  57. package/dist/components/Layout/__tests__/ShowOnDesktop.test.d.ts.map +1 -0
  58. package/dist/components/Layout/__tests__/ShowOnDesktop.test.js +84 -0
  59. package/dist/components/Layout/__tests__/ShowOnMobile.test.d.ts +2 -0
  60. package/dist/components/Layout/__tests__/ShowOnMobile.test.d.ts.map +1 -0
  61. package/dist/components/Layout/__tests__/ShowOnMobile.test.js +80 -0
  62. package/dist/components/Layout/__tests__/Text.test.d.ts +2 -0
  63. package/dist/components/Layout/__tests__/Text.test.d.ts.map +1 -0
  64. package/dist/components/Layout/__tests__/Text.test.js +146 -0
  65. package/dist/components/Layout/__tests__/TwoColumn.test.d.ts +2 -0
  66. package/dist/components/Layout/__tests__/TwoColumn.test.d.ts.map +1 -0
  67. package/dist/components/Layout/__tests__/TwoColumn.test.js +129 -0
  68. package/dist/constants/validation.js +91 -91
  69. package/dist/constants/validation.spec.js +64 -64
  70. package/dist/datetime/__tests__/format.test.js +1 -1
  71. package/dist/datetime/__tests__/parse.test.js +1 -1
  72. package/dist/datetime/__tests__/timezone.test.js +1 -1
  73. package/dist/datetime/parse.js +1 -1
  74. package/dist/forms/createFormStore.svelte.js +1 -0
  75. package/dist/index.d.ts +1 -0
  76. package/dist/index.js +1 -0
  77. package/dist/patterns/data/DataGrid.svelte +45 -45
  78. package/dist/patterns/data/DataList.svelte +24 -24
  79. package/dist/patterns/data/DataTable.svelte +36 -36
  80. package/dist/patterns/forms/FormActions.spec.js +95 -95
  81. package/dist/patterns/forms/FormActions.stories.svelte +97 -97
  82. package/dist/patterns/forms/FormActions.svelte +46 -46
  83. package/dist/patterns/forms/FormGrid.svelte +33 -33
  84. package/dist/patterns/forms/FormSection.svelte +32 -32
  85. package/dist/patterns/forms/FormValidationSummary.stories.svelte +83 -83
  86. package/dist/patterns/forms/FormValidationSummary.svelte +74 -74
  87. package/dist/patterns/layout/Sidebar.svelte +39 -39
  88. package/dist/patterns/layout/index.d.ts +9 -0
  89. package/dist/patterns/layout/index.js +22 -0
  90. package/dist/patterns/navigation/BottomNav.stories.svelte +117 -117
  91. package/dist/patterns/navigation/BottomNav.svelte +74 -64
  92. package/dist/patterns/navigation/BottomNav.svelte.d.ts.map +1 -1
  93. package/dist/patterns/navigation/Header.stories.svelte +77 -77
  94. package/dist/patterns/navigation/Header.svelte +193 -193
  95. package/dist/patterns/page/PageHeader.svelte +18 -18
  96. package/dist/patterns/page/PageLayout.svelte +40 -40
  97. package/dist/patterns/page/PageLoader.spec.js +57 -57
  98. package/dist/patterns/page/PageLoader.stories.svelte +137 -137
  99. package/dist/patterns/page/PageLoader.svelte +24 -24
  100. package/dist/patterns/page/SectionHeader.svelte +29 -29
  101. package/dist/presets/badges.js +112 -112
  102. package/dist/presets/buttons.js +76 -76
  103. package/dist/presets/index.js +9 -9
  104. package/dist/primitives/Accordion/Accordion.stories.svelte +75 -75
  105. package/dist/primitives/Accordion/Accordion.svelte +42 -42
  106. package/dist/primitives/Accordion/AccordionItem.svelte +95 -95
  107. package/dist/primitives/Accordion/AccordionItemWrapper.test.svelte +107 -107
  108. package/dist/primitives/Accordion/AccordionItemWrapper.test.svelte.d.ts +2 -2
  109. package/dist/primitives/Accordion/AccordionItemWrapper.test.svelte.d.ts.map +1 -1
  110. package/dist/primitives/Alert/Alert.spec.js +173 -173
  111. package/dist/primitives/Alert/Alert.stories.svelte +88 -88
  112. package/dist/primitives/Alert/Alert.svelte +27 -27
  113. package/dist/primitives/Avatar/Avatar.stories.svelte +94 -94
  114. package/dist/primitives/Avatar/Avatar.svelte +66 -66
  115. package/dist/primitives/Badges/Badge.spec.js +144 -144
  116. package/dist/primitives/Badges/Badge.stories.svelte +86 -86
  117. package/dist/primitives/Badges/Badge.svelte +79 -79
  118. package/dist/primitives/BottomSheet/BottomSheet.spec.js +136 -136
  119. package/dist/primitives/BottomSheet/BottomSheet.stories.svelte +83 -83
  120. package/dist/primitives/BottomSheet/BottomSheet.svelte +100 -100
  121. package/dist/primitives/Breadcrumb/Breadcrumb.spec.js +122 -122
  122. package/dist/primitives/Breadcrumb/Breadcrumb.stories.svelte +23 -23
  123. package/dist/primitives/Breadcrumb/Breadcrumb.svelte +89 -89
  124. package/dist/primitives/Button/Button.spec.js +223 -223
  125. package/dist/primitives/Button/Button.stories.svelte +76 -76
  126. package/dist/primitives/Button/Button.svelte +270 -270
  127. package/dist/primitives/Button/ButtonSaveDemo.spec.js +146 -146
  128. package/dist/primitives/Button/ButtonSaveDemo.svelte +25 -25
  129. package/dist/primitives/Button/ButtonVariantShowcase.svelte +129 -129
  130. package/dist/primitives/Card.spec.js +49 -49
  131. package/dist/primitives/Card.stories.svelte +22 -22
  132. package/dist/primitives/Card.svelte +28 -28
  133. package/dist/primitives/Checkbox/Checkbox.stories.svelte +84 -84
  134. package/dist/primitives/Checkbox/Checkbox.svelte +88 -88
  135. package/dist/primitives/DarkModeToggle.spec.js +390 -390
  136. package/dist/primitives/DarkModeToggle.stories.svelte +57 -57
  137. package/dist/primitives/DarkModeToggle.svelte +136 -136
  138. package/dist/primitives/Drawer/Drawer.stories.svelte +80 -80
  139. package/dist/primitives/Drawer/Drawer.svelte +120 -120
  140. package/dist/primitives/Dropdown/Dropdown.stories.svelte +137 -137
  141. package/dist/primitives/Dropdown/Dropdown.svelte +14 -14
  142. package/dist/primitives/Dropdown/DropdownDivider.svelte +9 -0
  143. package/dist/primitives/Dropdown/DropdownDivider.svelte.d.ts +7 -0
  144. package/dist/primitives/Dropdown/DropdownDivider.svelte.d.ts.map +1 -0
  145. package/dist/primitives/Dropdown/DropdownItem.svelte +80 -80
  146. package/dist/primitives/Helper/Helper.svelte +33 -0
  147. package/dist/primitives/Helper/Helper.svelte.d.ts +18 -0
  148. package/dist/primitives/Helper/Helper.svelte.d.ts.map +1 -0
  149. package/dist/primitives/Icons/ArrowLeft.svelte +8 -8
  150. package/dist/primitives/Icons/ArrowRight.svelte +8 -8
  151. package/dist/primitives/Icons/Availability.svelte +14 -14
  152. package/dist/primitives/Icons/Back.svelte +14 -14
  153. package/dist/primitives/Icons/CheckCircle.svelte +6 -6
  154. package/dist/primitives/Icons/CheckCircleOutline.svelte +15 -15
  155. package/dist/primitives/Icons/ChevronLeft.svelte +4 -4
  156. package/dist/primitives/Icons/ChevronRight.svelte +4 -4
  157. package/dist/primitives/Icons/Copy.svelte +15 -15
  158. package/dist/primitives/Icons/Cross.svelte +5 -5
  159. package/dist/primitives/Icons/DownArrow.svelte +8 -8
  160. package/dist/primitives/Icons/ErrorCircle.svelte +6 -6
  161. package/dist/primitives/Icons/FacebookIcon.svelte +2 -2
  162. package/dist/primitives/Icons/Home.svelte +15 -15
  163. package/dist/primitives/Icons/Icon.spec.js +169 -169
  164. package/dist/primitives/Icons/Icon.stories.svelte +100 -100
  165. package/dist/primitives/Icons/Icon.svelte +52 -52
  166. package/dist/primitives/Icons/IconGallery.stories.svelte +235 -235
  167. package/dist/primitives/Icons/Info.svelte +7 -7
  168. package/dist/primitives/Icons/InstagramIcon.svelte +4 -4
  169. package/dist/primitives/Icons/LogoInstagram.svelte +2 -2
  170. package/dist/primitives/Icons/Message.svelte +15 -15
  171. package/dist/primitives/Icons/MoonIcon.svelte +5 -5
  172. package/dist/primitives/Icons/More.svelte +21 -21
  173. package/dist/primitives/Icons/MoreHori.spec.js +61 -61
  174. package/dist/primitives/Icons/MoreHori.svelte +22 -22
  175. package/dist/primitives/Icons/Notification.svelte +14 -14
  176. package/dist/primitives/Icons/Payment.svelte +14 -14
  177. package/dist/primitives/Icons/Profile.svelte +21 -21
  178. package/dist/primitives/Icons/Reload.svelte +29 -29
  179. package/dist/primitives/Icons/Shows.svelte +21 -21
  180. package/dist/primitives/Icons/Signout.svelte +21 -21
  181. package/dist/primitives/Icons/SunIcon.svelte +8 -8
  182. package/dist/primitives/Icons/TiktokIcon.svelte +2 -2
  183. package/dist/primitives/Icons/TwitterIcon.svelte +2 -2
  184. package/dist/primitives/Icons/WarningIcon.spec.js +18 -18
  185. package/dist/primitives/Icons/WarningIcon.svelte +5 -5
  186. package/dist/primitives/Input/Input.spec.js +573 -573
  187. package/dist/primitives/Input/Input.stories.svelte +139 -139
  188. package/dist/primitives/Input/Input.svelte +1 -2
  189. package/dist/primitives/Input/Input.svelte.d.ts +2 -4
  190. package/dist/primitives/Input/Input.svelte.d.ts.map +1 -1
  191. package/dist/primitives/Input/Select.spec.js +212 -212
  192. package/dist/primitives/Input/Select.stories.svelte +112 -112
  193. package/dist/primitives/Input/Select.svelte +128 -128
  194. package/dist/primitives/Input/Textarea.stories.svelte +137 -137
  195. package/dist/primitives/Input/Textarea.svelte +35 -35
  196. package/dist/primitives/Label/Label.svelte +37 -37
  197. package/dist/primitives/Modal/Modal.spec.js +99 -99
  198. package/dist/primitives/Modal/Modal.stories.svelte +86 -86
  199. package/dist/primitives/Modal/Modal.svelte +3 -4
  200. package/dist/primitives/Modal/Modal.svelte.d.ts +6 -8
  201. package/dist/primitives/Modal/Modal.svelte.d.ts.map +1 -1
  202. package/dist/primitives/NumberInput/NumberInput.svelte +0 -1
  203. package/dist/primitives/NumberInput/NumberInput.svelte.d.ts +0 -2
  204. package/dist/primitives/NumberInput/NumberInput.svelte.d.ts.map +1 -1
  205. package/dist/primitives/Pagination/Pagination.stories.svelte +76 -76
  206. package/dist/primitives/Pagination/Pagination.svelte +261 -261
  207. package/dist/primitives/Radio/Radio.stories.svelte +80 -80
  208. package/dist/primitives/Radio/Radio.svelte +67 -67
  209. package/dist/primitives/Skeleton/CardPlaceholder.svelte +87 -87
  210. package/dist/primitives/Skeleton/ImagePlaceholder.svelte +59 -59
  211. package/dist/primitives/Skeleton/ListPlaceholder.svelte +76 -76
  212. package/dist/primitives/Skeleton/Skeleton.stories.svelte +151 -151
  213. package/dist/primitives/Skeleton/Skeleton.svelte +26 -26
  214. package/dist/primitives/Spinner/Spinner.spec.js +71 -71
  215. package/dist/primitives/Spinner/Spinner.stories.svelte +29 -29
  216. package/dist/primitives/Spinner/Spinner.svelte +20 -20
  217. package/dist/primitives/Tabs/TabItem.svelte +49 -49
  218. package/dist/primitives/Tabs/Tabs.stories.svelte +112 -112
  219. package/dist/primitives/Tabs/Tabs.svelte +123 -123
  220. package/dist/primitives/Toggle.spec.js +143 -143
  221. package/dist/primitives/Toggle.stories.svelte +92 -92
  222. package/dist/primitives/Toggle.svelte +1 -2
  223. package/dist/primitives/Toggle.svelte.d.ts +2 -4
  224. package/dist/primitives/Toggle.svelte.d.ts.map +1 -1
  225. package/dist/primitives/Tooltip/Tooltip.svelte +83 -0
  226. package/dist/primitives/Tooltip/Tooltip.svelte.d.ts +15 -0
  227. package/dist/primitives/Tooltip/Tooltip.svelte.d.ts.map +1 -0
  228. package/dist/primitives/Typography/Typography.svelte +53 -53
  229. package/dist/primitives/ValidationError.spec.js +103 -103
  230. package/dist/primitives/ValidationError.stories.svelte +69 -69
  231. package/dist/primitives/ValidationError.svelte +29 -29
  232. package/dist/primitives/index.d.ts +3 -0
  233. package/dist/primitives/index.js +91 -84
  234. package/dist/recipes/CropImage/CropImage.spec.js +208 -208
  235. package/dist/recipes/CropImage/CropImage.stories.svelte +104 -104
  236. package/dist/recipes/CropImage/CropImage.svelte +238 -238
  237. package/dist/recipes/ImageUploader/ImageUploader.spec.js +6 -5
  238. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte +125 -125
  239. package/dist/recipes/ImageUploader/ImageUploader.svelte +804 -804
  240. package/dist/recipes/SuperLogin/SuperLogin.spec.js +17 -17
  241. package/dist/recipes/Toaster/Toaster.stories.svelte +62 -62
  242. package/dist/recipes/feedback/EmptyState/EmptyState.svelte +1 -1
  243. package/dist/recipes/feedback/ErrorDisplay.spec.js +69 -69
  244. package/dist/recipes/feedback/ErrorDisplay.stories.svelte +101 -101
  245. package/dist/recipes/feedback/ErrorDisplay.svelte +1 -1
  246. package/dist/recipes/feedback/StatusIndicator/StatusIndicator.spec.js +133 -133
  247. package/dist/recipes/feedback/StatusIndicator/StatusIndicator.svelte +157 -157
  248. package/dist/recipes/fields/CheckboxField.svelte +85 -85
  249. package/dist/recipes/fields/FormField.svelte +58 -58
  250. package/dist/recipes/fields/RadioGroup.svelte +95 -95
  251. package/dist/recipes/fields/SelectField.svelte +80 -80
  252. package/dist/recipes/fields/TextareaField.svelte +97 -97
  253. package/dist/recipes/fields/ToggleField.svelte +60 -60
  254. package/dist/recipes/fields/index.js +7 -7
  255. package/dist/recipes/inputs/MultiSelect.spec.js +258 -258
  256. package/dist/recipes/inputs/MultiSelect.stories.svelte +133 -133
  257. package/dist/recipes/inputs/MultiSelect.svelte +29 -8
  258. package/dist/recipes/inputs/MultiSelect.svelte.d.ts +54 -21
  259. package/dist/recipes/inputs/MultiSelect.svelte.d.ts.map +1 -1
  260. package/dist/recipes/inputs/OTPInput.spec.js +251 -251
  261. package/dist/recipes/inputs/OTPInput.stories.svelte +162 -162
  262. package/dist/recipes/inputs/OTPInput.svelte +29 -29
  263. package/dist/recipes/inputs/PasswordInput.svelte +22 -22
  264. package/dist/recipes/inputs/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte +117 -117
  265. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.spec.js +9 -4
  266. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.stories.svelte +123 -123
  267. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte +30 -25
  268. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts +12 -1
  269. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts.map +1 -1
  270. package/dist/recipes/inputs/Search.svelte +37 -37
  271. package/dist/recipes/inputs/SelectDropdown.svelte +57 -57
  272. package/dist/recipes/modals/AlertModal.svelte +130 -130
  273. package/dist/recipes/modals/ConfirmationModal.spec.js +206 -206
  274. package/dist/recipes/modals/ConfirmationModal.stories.svelte +119 -119
  275. package/dist/recipes/modals/ConfirmationModal.svelte +152 -152
  276. package/dist/recipes/modals/InputModal.svelte +182 -182
  277. package/dist/recipes/modals/ModalStateManager.spec.js +100 -100
  278. package/dist/recipes/modals/ModalStateManager.svelte +77 -77
  279. package/dist/recipes/modals/ModalTestWrapper.svelte +65 -65
  280. package/dist/recipes/modals/StatusModal.svelte +206 -206
  281. package/dist/services/EventService.js +75 -75
  282. package/dist/services/EventService.spec.js +217 -217
  283. package/dist/services/ShowService.spec.js +345 -345
  284. package/dist/stores/auth.js +44 -36
  285. package/dist/stores/auth.spec.js +139 -139
  286. package/dist/stores/auth.svelte.d.ts +39 -0
  287. package/dist/stores/auth.svelte.d.ts.map +1 -0
  288. package/dist/stores/auth.svelte.js +60 -0
  289. package/dist/stores/formDataStore.d.ts.map +1 -1
  290. package/dist/stores/formDataStore.js +8 -0
  291. package/dist/stores/formDataStore.svelte.d.ts +47 -0
  292. package/dist/stores/formDataStore.svelte.d.ts.map +1 -0
  293. package/dist/stores/formDataStore.svelte.js +84 -0
  294. package/dist/stores/formSave.d.ts.map +1 -1
  295. package/dist/stores/formSave.js +8 -0
  296. package/dist/stores/formSave.svelte.d.ts +33 -0
  297. package/dist/stores/formSave.svelte.d.ts.map +1 -0
  298. package/dist/stores/formSave.svelte.js +113 -0
  299. package/dist/stores/navigation.d.ts.map +1 -1
  300. package/dist/stores/navigation.js +8 -0
  301. package/dist/stores/navigation.svelte.d.ts +35 -0
  302. package/dist/stores/navigation.svelte.d.ts.map +1 -0
  303. package/dist/stores/navigation.svelte.js +69 -0
  304. package/dist/stores/toaster.js +13 -13
  305. package/dist/stories/ButtonAuditReview.stories.svelte +14 -14
  306. package/dist/stories/ButtonAuditReview.svelte +427 -427
  307. package/dist/stories/PatternsGallery.stories.svelte +19 -19
  308. package/dist/stories/PatternsGallery.svelte +206 -206
  309. package/dist/stories/PrimitivesGallery.stories.svelte +19 -19
  310. package/dist/stories/PrimitivesGallery.svelte +725 -725
  311. package/dist/stories/RecipesGallery.stories.svelte +19 -19
  312. package/dist/stories/RecipesGallery.svelte +271 -271
  313. package/dist/stories/button-audit-manifest.json +11186 -11186
  314. package/dist/tailwind/preset.cjs +82 -82
  315. package/dist/telemetry.js +405 -405
  316. package/dist/telemetry.server.spec.js +11 -8
  317. package/dist/telemetry.spec.js +1169 -1144
  318. package/dist/tokens/__tests__/typography-base.test.d.ts +2 -0
  319. package/dist/tokens/__tests__/typography-base.test.d.ts.map +1 -0
  320. package/dist/tokens/__tests__/typography-base.test.js +138 -0
  321. package/dist/tokens/tokens.css +87 -87
  322. package/dist/tokens/typography-base.css +163 -0
  323. package/dist/utils/apiConfig.spec.js +219 -219
  324. package/dist/utils/imageValidation.spec.js +62 -59
  325. package/dist/utils/logger.d.ts +19 -0
  326. package/dist/utils/logger.d.ts.map +1 -0
  327. package/dist/utils/logger.js +47 -0
  328. package/dist/utils/transitions.js +62 -62
  329. package/dist/utils/utils.js +354 -354
  330. package/package.json +21 -16
@@ -1,37 +1,37 @@
1
- <script lang="ts">
2
- import type { Snippet } from 'svelte';
3
-
4
- interface Props {
5
- color?: 'gray' | 'green' | 'red' | 'disabled';
6
- defaultClass?: string;
7
- show?: boolean;
8
- class?: string;
9
- children?: Snippet;
10
- [key: string]: unknown;
11
- }
12
-
13
- let {
14
- color = "gray",
15
- defaultClass = "text-sm rtl:text-right font-medium block",
16
- show = true,
17
- class: className = "",
18
- children,
19
- ...restProps
20
- }: Props = $props();
21
-
22
- const colorClasses = {
23
- gray: "text-gray-900 dark:text-gray-300",
24
- green: "text-green-700 dark:text-green-500",
25
- red: "text-red-700 dark:text-red-500",
26
- disabled: "text-gray-400 dark:text-gray-500"
27
- };
28
-
29
- let labelClass = $derived(`${defaultClass} ${colorClasses[color] || colorClasses.gray} ${className}`.trim());
30
- </script>
31
-
32
- {#if show}
33
- <!-- svelte-ignore a11y_label_has_associated_control -->
34
- <label {...restProps} class={labelClass}>{#if children}{@render children()}{/if}</label>
35
- {:else}
36
- {#if children}{@render children()}{/if}
37
- {/if}
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+
4
+ interface Props {
5
+ color?: 'gray' | 'green' | 'red' | 'disabled';
6
+ defaultClass?: string;
7
+ show?: boolean;
8
+ class?: string;
9
+ children?: Snippet;
10
+ [key: string]: unknown;
11
+ }
12
+
13
+ let {
14
+ color = "gray",
15
+ defaultClass = "text-sm rtl:text-right font-medium block",
16
+ show = true,
17
+ class: className = "",
18
+ children,
19
+ ...restProps
20
+ }: Props = $props();
21
+
22
+ const colorClasses = {
23
+ gray: "text-gray-900 dark:text-gray-300",
24
+ green: "text-green-700 dark:text-green-500",
25
+ red: "text-red-700 dark:text-red-500",
26
+ disabled: "text-gray-400 dark:text-gray-500"
27
+ };
28
+
29
+ let labelClass = $derived(`${defaultClass} ${colorClasses[color] || colorClasses.gray} ${className}`.trim());
30
+ </script>
31
+
32
+ {#if show}
33
+ <!-- svelte-ignore a11y_label_has_associated_control -->
34
+ <label {...restProps} class={labelClass}>{#if children}{@render children()}{/if}</label>
35
+ {:else}
36
+ {#if children}{@render children()}{/if}
37
+ {/if}
@@ -1,99 +1,99 @@
1
- import { render, screen, fireEvent } from '@testing-library/svelte';
2
- import userEvent from '@testing-library/user-event';
3
- import { expect, describe, test, vi } from 'vitest';
4
- import ModalTestWrapper from './ModalTestWrapper.svelte';
5
-
6
- function setupTest(args) {
7
- const user = userEvent.setup();
8
- const { component, rerender } = render(ModalTestWrapper, { props: { ...args } });
9
- return { user, component, rerender };
10
- }
11
-
12
- describe('Modal Component Tests', () => {
13
- // Note: Modal renders both mobile sheet and desktop centered versions
14
- // CSS hides one based on viewport, but in tests both are in DOM
15
- // Use getAllByText and check that at least one exists
16
-
17
- test('Renders Modal when show is true', () => {
18
- setupTest({
19
- show: true,
20
- title: 'Test Title',
21
- description: 'Test Description',
22
- warningText: 'Test Warning'
23
- });
24
- // Modal renders both mobile and desktop versions, so use getAllByText
25
- expect(screen.getAllByText((content, element) => content.includes('Test Title')).length).toBeGreaterThan(0);
26
- expect(screen.getAllByText((content, element) => content.includes('Test Description')).length).toBeGreaterThan(0);
27
- expect(screen.getAllByText((content, element) => content.includes('Test Warning')).length).toBeGreaterThan(0);
28
- expect(screen.getAllByRole('button', { name: /Cancel/i }).length).toBeGreaterThan(0);
29
- expect(screen.getAllByRole('button', { name: /Confirm/i }).length).toBeGreaterThan(0);
30
- });
31
-
32
- test('Does not render Modal when show is false', () => {
33
- setupTest({
34
- show: false,
35
- title: 'Test Title',
36
- description: 'Test Description',
37
- warningText: 'Test Warning'
38
- });
39
- expect(screen.queryByText('Test Title')).not.toBeInTheDocument();
40
- expect(screen.queryByText('Test Description')).not.toBeInTheDocument();
41
- expect(screen.queryByText('Test Warning')).not.toBeInTheDocument();
42
- });
43
-
44
- test('Displays the correct title, description, and warning text', () => {
45
- const title = 'Correct Title';
46
- const description = 'Correct Description';
47
- const warningText = 'Correct Warning';
48
- setupTest({
49
- show: true,
50
- title,
51
- description,
52
- warningText,
53
- });
54
- // Modal renders both mobile and desktop versions
55
- expect(screen.getAllByText((content) => content.includes(title)).length).toBeGreaterThan(0);
56
- expect(screen.getAllByText((content) => content.includes(description)).length).toBeGreaterThan(0);
57
- expect(screen.getAllByText((content) => content.includes(warningText)).length).toBeGreaterThan(0);
58
- });
59
-
60
- test('Dispatches cancel event on escape key press', async () => {
61
- // Create a mock function to track cancel calls
62
- const oncancel = vi.fn();
63
-
64
- const { user } = setupTest({
65
- show: true,
66
- title: 'Test Title',
67
- oncancel
68
- });
69
-
70
- // Verify modal is open
71
- expect(screen.getAllByText((content) => content.includes('Test Title')).length).toBeGreaterThan(0);
72
-
73
- // Press Escape key
74
- await fireEvent.keyDown(window, { key: 'Escape' });
75
-
76
- // Cancel callback should be called
77
- expect(oncancel).toHaveBeenCalled();
78
- });
79
-
80
- test('Prevents propagation of click events within modal', async () => {
81
- const { user } = setupTest({
82
- show: true,
83
- title: 'Test Title'
84
- });
85
-
86
- // Find the modal content (first instance)
87
- const modalElements = screen.getAllByText((content) => content.includes('Test Title'));
88
- expect(modalElements.length).toBeGreaterThan(0);
89
-
90
- const modalContent = modalElements[0].closest('.md\\:hidden, .hidden');
91
- if (modalContent) {
92
- const clickEvent = new MouseEvent('click', { bubbles: true });
93
- modalContent.dispatchEvent(clickEvent);
94
-
95
- // Modal should still be visible
96
- expect(screen.getAllByText((content) => content.includes('Test Title')).length).toBeGreaterThan(0);
97
- }
98
- });
99
- });
1
+ import { render, screen, fireEvent } from '@testing-library/svelte';
2
+ import userEvent from '@testing-library/user-event';
3
+ import { expect, describe, test, vi } from 'vitest';
4
+ import ModalTestWrapper from './ModalTestWrapper.svelte';
5
+
6
+ function setupTest(args) {
7
+ const user = userEvent.setup();
8
+ const { component, rerender } = render(ModalTestWrapper, { props: { ...args } });
9
+ return { user, component, rerender };
10
+ }
11
+
12
+ describe('Modal Component Tests', () => {
13
+ // Note: Modal renders both mobile sheet and desktop centered versions
14
+ // CSS hides one based on viewport, but in tests both are in DOM
15
+ // Use getAllByText and check that at least one exists
16
+
17
+ test('Renders Modal when show is true', () => {
18
+ setupTest({
19
+ show: true,
20
+ title: 'Test Title',
21
+ description: 'Test Description',
22
+ warningText: 'Test Warning'
23
+ });
24
+ // Modal renders both mobile and desktop versions, so use getAllByText
25
+ expect(screen.getAllByText((content, element) => content.includes('Test Title')).length).toBeGreaterThan(0);
26
+ expect(screen.getAllByText((content, element) => content.includes('Test Description')).length).toBeGreaterThan(0);
27
+ expect(screen.getAllByText((content, element) => content.includes('Test Warning')).length).toBeGreaterThan(0);
28
+ expect(screen.getAllByRole('button', { name: /Cancel/i }).length).toBeGreaterThan(0);
29
+ expect(screen.getAllByRole('button', { name: /Confirm/i }).length).toBeGreaterThan(0);
30
+ });
31
+
32
+ test('Does not render Modal when show is false', () => {
33
+ setupTest({
34
+ show: false,
35
+ title: 'Test Title',
36
+ description: 'Test Description',
37
+ warningText: 'Test Warning'
38
+ });
39
+ expect(screen.queryByText('Test Title')).not.toBeInTheDocument();
40
+ expect(screen.queryByText('Test Description')).not.toBeInTheDocument();
41
+ expect(screen.queryByText('Test Warning')).not.toBeInTheDocument();
42
+ });
43
+
44
+ test('Displays the correct title, description, and warning text', () => {
45
+ const title = 'Correct Title';
46
+ const description = 'Correct Description';
47
+ const warningText = 'Correct Warning';
48
+ setupTest({
49
+ show: true,
50
+ title,
51
+ description,
52
+ warningText,
53
+ });
54
+ // Modal renders both mobile and desktop versions
55
+ expect(screen.getAllByText((content) => content.includes(title)).length).toBeGreaterThan(0);
56
+ expect(screen.getAllByText((content) => content.includes(description)).length).toBeGreaterThan(0);
57
+ expect(screen.getAllByText((content) => content.includes(warningText)).length).toBeGreaterThan(0);
58
+ });
59
+
60
+ test('Dispatches cancel event on escape key press', async () => {
61
+ // Create a mock function to track cancel calls
62
+ const oncancel = vi.fn();
63
+
64
+ const { user } = setupTest({
65
+ show: true,
66
+ title: 'Test Title',
67
+ oncancel
68
+ });
69
+
70
+ // Verify modal is open
71
+ expect(screen.getAllByText((content) => content.includes('Test Title')).length).toBeGreaterThan(0);
72
+
73
+ // Press Escape key
74
+ await fireEvent.keyDown(window, { key: 'Escape' });
75
+
76
+ // Cancel callback should be called
77
+ expect(oncancel).toHaveBeenCalled();
78
+ });
79
+
80
+ test('Prevents propagation of click events within modal', async () => {
81
+ const { user } = setupTest({
82
+ show: true,
83
+ title: 'Test Title'
84
+ });
85
+
86
+ // Find the modal content (first instance)
87
+ const modalElements = screen.getAllByText((content) => content.includes('Test Title'));
88
+ expect(modalElements.length).toBeGreaterThan(0);
89
+
90
+ const modalContent = modalElements[0].closest('.md\\:hidden, .hidden');
91
+ if (modalContent) {
92
+ const clickEvent = new MouseEvent('click', { bubbles: true });
93
+ modalContent.dispatchEvent(clickEvent);
94
+
95
+ // Modal should still be visible
96
+ expect(screen.getAllByText((content) => content.includes('Test Title')).length).toBeGreaterThan(0);
97
+ }
98
+ });
99
+ });
@@ -1,86 +1,86 @@
1
- <script module>
2
- import { defineMeta } from "@storybook/addon-svelte-csf";
3
-
4
- import ModalProgress from "./Modal.svelte";
5
-
6
- const { Story } = defineMeta({
7
- title: "Components/Modal/ModalProgress",
8
- component: ModalProgress,
9
- });
10
- </script>
11
-
12
- <script>
13
- let show1 = $state(false);
14
- let show2 = $state(false);
15
- let show3 = $state(false);
16
- </script>
17
-
18
- <Story name="Basic Modal">
19
- <button
20
- onclick={() => (show1 = true)}
21
- class="px-4 py-2 bg-primary text-white rounded-lg"
22
- >
23
- Open Basic Modal
24
- </button>
25
- <ModalProgress bind:show={show1}>
26
- {#snippet header()}
27
- <h2 class="text-xl font-semibold mb-2">Modal Title</h2>
28
- {/snippet}
29
- {#snippet body()}
30
- <p class="text-gray-500 dark:text-gray-400">This is the modal body content.</p>
31
- {/snippet}
32
- {#snippet footer()}
33
- <button
34
- onclick={() => (show1 = false)}
35
- class="px-4 py-2 bg-gray-600 text-white rounded-lg"
36
- >
37
- Close
38
- </button>
39
- {/snippet}
40
- </ModalProgress>
41
- </Story>
42
-
43
- <Story name="Processing State">
44
- <button
45
- onclick={() => (show2 = true)}
46
- class="px-4 py-2 bg-primary text-white rounded-lg"
47
- >
48
- Open Processing Modal
49
- </button>
50
- <ModalProgress bind:show={show2} isProcessing={true}>
51
- {#snippet body()}
52
- <div class="flex flex-col items-center gap-4">
53
- <div
54
- class="animate-spin rounded-full h-12 w-12 border-b-2 border-blue-600"
55
- ></div>
56
- <p class="text-gray-500 dark:text-gray-400">Processing your request...</p>
57
- </div>
58
- {/snippet}
59
- </ModalProgress>
60
- </Story>
61
-
62
- <Story name="Success State">
63
- <button
64
- onclick={() => (show3 = true)}
65
- class="px-4 py-2 bg-green-600 text-white rounded-lg"
66
- >
67
- Open Success Modal
68
- </button>
69
- <ModalProgress bind:show={show3} isSuccess={true}>
70
- {#snippet body()}
71
- <div class="flex flex-col items-center gap-4 text-center">
72
- <div class="text-green-600 dark:text-green-400 text-5xl">✓</div>
73
- <h3 class="text-xl font-semibold">Success!</h3>
74
- <p class="text-gray-500 dark:text-gray-400">Your action was completed successfully.</p>
75
- </div>
76
- {/snippet}
77
- {#snippet footer()}
78
- <button
79
- onclick={() => (show3 = false)}
80
- class="px-4 py-2 bg-green-600 text-white rounded-lg"
81
- >
82
- Done
83
- </button>
84
- {/snippet}
85
- </ModalProgress>
86
- </Story>
1
+ <script module>
2
+ import { defineMeta } from "@storybook/addon-svelte-csf";
3
+
4
+ import ModalProgress from "./Modal.svelte";
5
+
6
+ const { Story } = defineMeta({
7
+ title: "Components/Modal/ModalProgress",
8
+ component: ModalProgress,
9
+ });
10
+ </script>
11
+
12
+ <script>
13
+ let show1 = $state(false);
14
+ let show2 = $state(false);
15
+ let show3 = $state(false);
16
+ </script>
17
+
18
+ <Story name="Basic Modal">
19
+ <button
20
+ onclick={() => (show1 = true)}
21
+ class="px-4 py-2 bg-primary text-white rounded-lg"
22
+ >
23
+ Open Basic Modal
24
+ </button>
25
+ <ModalProgress bind:show={show1}>
26
+ {#snippet header()}
27
+ <h2 class="text-xl font-semibold mb-2">Modal Title</h2>
28
+ {/snippet}
29
+ {#snippet body()}
30
+ <p class="text-gray-500 dark:text-gray-400">This is the modal body content.</p>
31
+ {/snippet}
32
+ {#snippet footer()}
33
+ <button
34
+ onclick={() => (show1 = false)}
35
+ class="px-4 py-2 bg-gray-600 text-white rounded-lg"
36
+ >
37
+ Close
38
+ </button>
39
+ {/snippet}
40
+ </ModalProgress>
41
+ </Story>
42
+
43
+ <Story name="Processing State">
44
+ <button
45
+ onclick={() => (show2 = true)}
46
+ class="px-4 py-2 bg-primary text-white rounded-lg"
47
+ >
48
+ Open Processing Modal
49
+ </button>
50
+ <ModalProgress bind:show={show2} isProcessing={true}>
51
+ {#snippet body()}
52
+ <div class="flex flex-col items-center gap-4">
53
+ <div
54
+ class="animate-spin rounded-full h-12 w-12 border-b-2 border-blue-600"
55
+ ></div>
56
+ <p class="text-gray-500 dark:text-gray-400">Processing your request...</p>
57
+ </div>
58
+ {/snippet}
59
+ </ModalProgress>
60
+ </Story>
61
+
62
+ <Story name="Success State">
63
+ <button
64
+ onclick={() => (show3 = true)}
65
+ class="px-4 py-2 bg-green-600 text-white rounded-lg"
66
+ >
67
+ Open Success Modal
68
+ </button>
69
+ <ModalProgress bind:show={show3} isSuccess={true}>
70
+ {#snippet body()}
71
+ <div class="flex flex-col items-center gap-4 text-center">
72
+ <div class="text-green-600 dark:text-green-400 text-5xl">✓</div>
73
+ <h3 class="text-xl font-semibold">Success!</h3>
74
+ <p class="text-gray-500 dark:text-gray-400">Your action was completed successfully.</p>
75
+ </div>
76
+ {/snippet}
77
+ {#snippet footer()}
78
+ <button
79
+ onclick={() => (show3 = false)}
80
+ class="px-4 py-2 bg-green-600 text-white rounded-lg"
81
+ >
82
+ Done
83
+ </button>
84
+ {/snippet}
85
+ </ModalProgress>
86
+ </Story>
@@ -15,11 +15,10 @@
15
15
  size?: 'default' | 'small' | 'large' | 'xlarge',
16
16
  persistent?: boolean,
17
17
  oncancel?: () => void,
18
- header?: any,
19
- body?: any,
20
- footer?: any,
18
+ header?: import('svelte').Snippet,
19
+ body?: import('svelte').Snippet,
20
+ footer?: import('svelte').Snippet,
21
21
  class?: string,
22
- [key: string]: any
23
22
  }} */
24
23
  let {
25
24
  show = $bindable(false),
@@ -2,30 +2,28 @@ export default Modal;
2
2
  type Modal = {
3
3
  $on?(type: string, callback: (e: any) => void): () => void;
4
4
  $set?(props: Partial<{
5
- [key: string]: any;
6
5
  show?: boolean | undefined;
7
6
  isProcessing?: boolean | undefined;
8
7
  isSuccess?: boolean | undefined;
9
8
  size?: "small" | "large" | "default" | "xlarge" | undefined;
10
9
  persistent?: boolean | undefined;
11
10
  oncancel?: (() => void) | undefined;
12
- header?: any;
13
- body?: any;
14
- footer?: any;
11
+ header?: Snippet<[]> | undefined;
12
+ body?: Snippet<[]> | undefined;
13
+ footer?: Snippet<[]> | undefined;
15
14
  class?: string | undefined;
16
15
  }>): void;
17
16
  };
18
17
  declare const Modal: import("svelte").Component<{
19
- [key: string]: any;
20
18
  show?: boolean;
21
19
  isProcessing?: boolean;
22
20
  isSuccess?: boolean;
23
21
  size?: "default" | "small" | "large" | "xlarge";
24
22
  persistent?: boolean;
25
23
  oncancel?: () => void;
26
- header?: any;
27
- body?: any;
28
- footer?: any;
24
+ header?: import("svelte").Snippet;
25
+ body?: import("svelte").Snippet;
26
+ footer?: import("svelte").Snippet;
29
27
  class?: string;
30
28
  }, {}, "show">;
31
29
  //# sourceMappingURL=Modal.svelte.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/primitives/Modal/Modal.svelte.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAqKA;;WAZW,OAAO;mBACC,OAAO;gBACV,OAAO;WACZ,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ;iBAClC,OAAO;eACT,MAAM,IAAI;aACZ,GAAG;WACL,GAAG;aACD,GAAG;YACJ,MAAM;eAGkC"}
1
+ {"version":3,"file":"Modal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/primitives/Modal/Modal.svelte.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAmKA;WAXW,OAAO;mBACC,OAAO;gBACV,OAAO;WACZ,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ;iBAClC,OAAO;eACT,MAAM,IAAI;aACZ,OAAO,QAAQ,EAAE,OAAO;WAC1B,OAAO,QAAQ,EAAE,OAAO;aACtB,OAAO,QAAQ,EAAE,OAAO;YACzB,MAAM;eAEkC"}
@@ -18,7 +18,6 @@
18
18
  disabled?: boolean,
19
19
  onchange?: (value: number) => void,
20
20
  class?: string,
21
- [key: string]: any
22
21
  }} */
23
22
  let {
24
23
  value = 0,
@@ -2,7 +2,6 @@ export default NumberInput;
2
2
  type NumberInput = {
3
3
  $on?(type: string, callback: (e: any) => void): () => void;
4
4
  $set?(props: Partial<{
5
- [key: string]: any;
6
5
  value?: number | undefined;
7
6
  min?: number | undefined;
8
7
  max?: number | undefined;
@@ -12,7 +11,6 @@ type NumberInput = {
12
11
  }>): void;
13
12
  };
14
13
  declare const NumberInput: import("svelte").Component<{
15
- [key: string]: any;
16
14
  value?: number;
17
15
  min?: number;
18
16
  max?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"NumberInput.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/primitives/NumberInput/NumberInput.svelte.js"],"names":[],"mappings":";;;;;;;;;;;;;AA+GA;;YARY,MAAM;UACR,MAAM;UACN,MAAM;eACD,OAAO;eACP,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;YAC1B,MAAM;WAGwC"}
1
+ {"version":3,"file":"NumberInput.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/primitives/NumberInput/NumberInput.svelte.js"],"names":[],"mappings":";;;;;;;;;;;;AA6GA;YAPY,MAAM;UACR,MAAM;UACN,MAAM;eACD,OAAO;eACP,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;YAC1B,MAAM;WAEwC"}