@getmicdrop/svelte-components 5.21.0 → 5.21.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 (428) hide show
  1. package/dist/calendar/AboutShow/AboutShow.spec.js +10 -10
  2. package/dist/calendar/AboutShow/AboutShow.svelte +191 -191
  3. package/dist/calendar/Calendar/MiniMonthCalendar.spec.js +9 -8
  4. package/dist/calendar/Calendar/MiniMonthCalendar.svelte +800 -803
  5. package/dist/calendar/Calendar/MiniMonthCalendar.svelte.d.ts.map +1 -1
  6. package/dist/calendar/FAQs/FAQs.spec.js +6 -6
  7. package/dist/calendar/FAQs/FAQs.svelte +88 -88
  8. package/dist/calendar/MonthSwitcher/MonthSwitcher.svelte +136 -140
  9. package/dist/calendar/OrderSummary/OrderSummary.svelte +461 -461
  10. package/dist/calendar/PublicCard/PublicCard.spec.js +3 -3
  11. package/dist/calendar/PublicCard/PublicCard.svelte +164 -164
  12. package/dist/calendar/ShowCard/ShowCard.spec.js +8 -8
  13. package/dist/calendar/ShowCard/ShowCard.svelte +180 -180
  14. package/dist/calendar/ShowTimeCard/ShowTimeCard.spec.js +4 -4
  15. package/dist/calendar/ShowTimeCard/ShowTimeCard.svelte +80 -80
  16. package/dist/calendar/index.js +15 -15
  17. package/dist/components/Heading.spec.js +89 -89
  18. package/dist/components/Heading.svelte +66 -66
  19. package/dist/components/Layout/AppShell.svelte +104 -104
  20. package/dist/components/Layout/ContentSection.svelte +80 -80
  21. package/dist/components/Layout/Grid.svelte +101 -101
  22. package/dist/components/Layout/Heading.svelte +81 -81
  23. package/dist/components/Layout/PageContainer.svelte +69 -69
  24. package/dist/components/Layout/Responsive.svelte +75 -75
  25. package/dist/components/Layout/Section.spec.js +4 -4
  26. package/dist/components/Layout/Section.svelte +80 -80
  27. package/dist/components/Layout/ShowOnDesktop.svelte +37 -37
  28. package/dist/components/Layout/ShowOnMobile.svelte +37 -37
  29. package/dist/components/Layout/Sidebar.svelte +108 -108
  30. package/dist/components/Layout/Stack.spec.js +1 -1
  31. package/dist/components/Layout/Stack.svelte +52 -52
  32. package/dist/components/Layout/Text.svelte +87 -87
  33. package/dist/components/Layout/TwoColumn.svelte +108 -108
  34. package/dist/components/Layout/__tests__/AppShell.test.js +5 -5
  35. package/dist/components/Layout/__tests__/ContentSection.test.js +1 -1
  36. package/dist/components/Layout/__tests__/Heading.test.js +3 -3
  37. package/dist/components/Layout/__tests__/PageContainer.test.js +4 -4
  38. package/dist/components/Layout/__tests__/Text.test.js +9 -9
  39. package/dist/components/Text.spec.js +89 -89
  40. package/dist/components/Text.svelte +64 -64
  41. package/dist/config.js +160 -160
  42. package/dist/config.spec.js +29 -29
  43. package/dist/constants/formOptions.js +48 -48
  44. package/dist/constants/validation.js +91 -91
  45. package/dist/constants/validation.spec.js +64 -64
  46. package/dist/datetime/README.md +323 -323
  47. package/dist/datetime/__tests__/format.test.js +1 -1
  48. package/dist/datetime/__tests__/parse.test.js +1 -1
  49. package/dist/datetime/__tests__/timezone.test.js +1 -1
  50. package/dist/datetime/parse.js +1 -1
  51. package/dist/forms/createFormStore.svelte.js +1 -0
  52. package/dist/forms/createFormStore.svelte.spec.js +1 -0
  53. package/dist/index.js +85 -85
  54. package/dist/index.spec.js +369 -369
  55. package/dist/patterns/chat/ChatActivityNotice.spec.js +59 -59
  56. package/dist/patterns/chat/ChatActivityNotice.svelte +41 -41
  57. package/dist/patterns/chat/ChatBubble.spec.js +91 -91
  58. package/dist/patterns/chat/ChatBubble.svelte +103 -103
  59. package/dist/patterns/chat/ChatContainer.spec.js +30 -30
  60. package/dist/patterns/chat/ChatContainer.svelte +46 -46
  61. package/dist/patterns/chat/ChatDateDivider.spec.js +30 -30
  62. package/dist/patterns/chat/ChatDateDivider.svelte +27 -27
  63. package/dist/patterns/chat/ChatInvitationBubble.spec.js +46 -46
  64. package/dist/patterns/chat/ChatInvitationBubble.svelte +46 -46
  65. package/dist/patterns/chat/ChatInvitationNotice.spec.js +32 -32
  66. package/dist/patterns/chat/ChatInvitationNotice.svelte +36 -36
  67. package/dist/patterns/chat/ChatMessageGroup.spec.js +58 -58
  68. package/dist/patterns/chat/ChatMessageGroup.svelte +57 -57
  69. package/dist/patterns/chat/ChatSlotUpdate.spec.js +65 -65
  70. package/dist/patterns/chat/ChatSlotUpdate.svelte +46 -46
  71. package/dist/patterns/chat/ChatStatusBadge.spec.js +79 -79
  72. package/dist/patterns/chat/ChatStatusBadge.svelte +91 -91
  73. package/dist/patterns/chat/ChatStatusTransition.spec.js +81 -81
  74. package/dist/patterns/chat/ChatStatusTransition.svelte +64 -64
  75. package/dist/patterns/chat/ChatTextBubble.spec.js +35 -35
  76. package/dist/patterns/chat/ChatTextBubble.svelte +41 -41
  77. package/dist/patterns/chat/index.js +22 -22
  78. package/dist/patterns/data/DataGrid.svelte +45 -45
  79. package/dist/patterns/data/DataList.spec.js +5 -5
  80. package/dist/patterns/data/DataList.svelte +24 -24
  81. package/dist/patterns/data/DataTable.spec.js +18 -18
  82. package/dist/patterns/data/DataTable.svelte +45 -45
  83. package/dist/patterns/data/index.js +4 -4
  84. package/dist/patterns/forms/FormActions.spec.js +95 -95
  85. package/dist/patterns/forms/FormActions.stories.svelte +97 -97
  86. package/dist/patterns/forms/FormActions.svelte +46 -46
  87. package/dist/patterns/forms/FormGrid.svelte +33 -33
  88. package/dist/patterns/forms/FormSection.spec.js +4 -4
  89. package/dist/patterns/forms/FormSection.svelte +33 -33
  90. package/dist/patterns/forms/FormValidationSummary.spec.js +2 -2
  91. package/dist/patterns/forms/FormValidationSummary.stories.svelte +97 -97
  92. package/dist/patterns/forms/FormValidationSummary.svelte +82 -82
  93. package/dist/patterns/forms/index.js +5 -5
  94. package/dist/patterns/index.js +21 -21
  95. package/dist/patterns/layout/Sidebar.svelte +39 -39
  96. package/dist/patterns/layout/SidebarTestWrapper.svelte +34 -34
  97. package/dist/patterns/layout/Stack.svelte +61 -61
  98. package/dist/patterns/layout/index.js +29 -29
  99. package/dist/patterns/navigation/BottomNav.stories.svelte +117 -117
  100. package/dist/patterns/navigation/BottomNav.svelte +82 -82
  101. package/dist/patterns/navigation/Header.spec.js +9 -9
  102. package/dist/patterns/navigation/Header.stories.svelte +77 -77
  103. package/dist/patterns/navigation/Header.svelte +261 -263
  104. package/dist/patterns/navigation/Header.svelte.d.ts.map +1 -1
  105. package/dist/patterns/navigation/index.js +3 -3
  106. package/dist/patterns/page/PageHeader.svelte +49 -49
  107. package/dist/patterns/page/PageLayout.spec.js +5 -5
  108. package/dist/patterns/page/PageLayout.svelte +40 -40
  109. package/dist/patterns/page/PageLoader.spec.js +57 -57
  110. package/dist/patterns/page/PageLoader.stories.svelte +137 -137
  111. package/dist/patterns/page/PageLoader.svelte +62 -62
  112. package/dist/patterns/page/SectionHeader.spec.js +8 -8
  113. package/dist/patterns/page/SectionHeader.svelte +51 -51
  114. package/dist/patterns/page/index.js +5 -5
  115. package/dist/presets/badges.js +112 -112
  116. package/dist/presets/buttons.js +76 -76
  117. package/dist/presets/buttons.spec.js +4 -4
  118. package/dist/presets/index.js +9 -9
  119. package/dist/primitives/Accordion/Accordion.spec.js +5 -5
  120. package/dist/primitives/Accordion/Accordion.stories.svelte +75 -75
  121. package/dist/primitives/Accordion/Accordion.svelte +62 -62
  122. package/dist/primitives/Accordion/AccordionItem.spec.js +19 -28
  123. package/dist/primitives/Accordion/AccordionItem.svelte +103 -103
  124. package/dist/primitives/Accordion/AccordionItemWrapper.test.svelte +107 -107
  125. package/dist/primitives/Accordion/AccordionToggleWrapper.test.svelte +28 -28
  126. package/dist/primitives/Alert/Alert.spec.js +173 -173
  127. package/dist/primitives/Alert/Alert.stories.svelte +88 -88
  128. package/dist/primitives/Alert/Alert.svelte +72 -72
  129. package/dist/primitives/Avatar/Avatar.spec.js +11 -11
  130. package/dist/primitives/Avatar/Avatar.stories.svelte +95 -94
  131. package/dist/primitives/Avatar/Avatar.stories.svelte.d.ts.map +1 -1
  132. package/dist/primitives/Avatar/Avatar.svelte +66 -66
  133. package/dist/primitives/AvatarButton/AvatarButton.svelte +57 -57
  134. package/dist/primitives/Badges/Badge.spec.js +144 -144
  135. package/dist/primitives/Badges/Badge.stories.svelte +86 -86
  136. package/dist/primitives/Badges/Badge.svelte +99 -99
  137. package/dist/primitives/BottomSheet/BottomSheet.spec.js +238 -238
  138. package/dist/primitives/BottomSheet/BottomSheet.stories.svelte +83 -83
  139. package/dist/primitives/BottomSheet/BottomSheet.svelte +115 -115
  140. package/dist/primitives/BottomSheet/BottomSheetWithActions.test.svelte +20 -20
  141. package/dist/primitives/Breadcrumb/Breadcrumb.spec.js +125 -123
  142. package/dist/primitives/Breadcrumb/Breadcrumb.stories.svelte +23 -23
  143. package/dist/primitives/Breadcrumb/Breadcrumb.svelte +107 -107
  144. package/dist/primitives/Button/Button.spec.js +225 -225
  145. package/dist/primitives/Button/Button.stories.svelte +76 -76
  146. package/dist/primitives/Button/Button.svelte +278 -278
  147. package/dist/primitives/Button/ButtonGroup.spec.js +44 -44
  148. package/dist/primitives/Button/ButtonGroup.svelte +50 -50
  149. package/dist/primitives/Button/ButtonSaveDemo.spec.js +146 -146
  150. package/dist/primitives/Button/ButtonSaveDemo.svelte +25 -25
  151. package/dist/primitives/Button/ButtonVariantShowcase.spec.js +1 -1
  152. package/dist/primitives/Button/ButtonVariantShowcase.svelte +129 -129
  153. package/dist/primitives/Card.spec.js +49 -49
  154. package/dist/primitives/Card.stories.svelte +22 -22
  155. package/dist/primitives/Card.svelte +28 -28
  156. package/dist/primitives/CardAction/CardAction.svelte +68 -68
  157. package/dist/primitives/Checkbox/Checkbox.spec.js +16 -16
  158. package/dist/primitives/Checkbox/Checkbox.stories.svelte +84 -84
  159. package/dist/primitives/Checkbox/Checkbox.svelte +88 -88
  160. package/dist/primitives/DarkModeToggle.spec.js +390 -390
  161. package/dist/primitives/DarkModeToggle.stories.svelte +57 -57
  162. package/dist/primitives/DarkModeToggle.svelte +147 -147
  163. package/dist/primitives/Drawer/Drawer.spec.js +4 -4
  164. package/dist/primitives/Drawer/Drawer.stories.svelte +100 -100
  165. package/dist/primitives/Drawer/Drawer.svelte +224 -224
  166. package/dist/primitives/Drawer/DrawerTestWrapper.svelte +86 -86
  167. package/dist/primitives/Dropdown/Dropdown.spec.js +9 -9
  168. package/dist/primitives/Dropdown/Dropdown.stories.svelte +137 -137
  169. package/dist/primitives/Dropdown/Dropdown.svelte +179 -179
  170. package/dist/primitives/Dropdown/DropdownDivider.spec.js +30 -30
  171. package/dist/primitives/Dropdown/DropdownDivider.svelte +9 -9
  172. package/dist/primitives/Dropdown/DropdownItem.spec.js +8 -15
  173. package/dist/primitives/Dropdown/DropdownItem.svelte +80 -80
  174. package/dist/primitives/Dropdown/DropdownItemTestWrapper.svelte +43 -43
  175. package/dist/primitives/Helper/Helper.spec.js +57 -57
  176. package/dist/primitives/Helper/Helper.svelte +33 -33
  177. package/dist/primitives/Icons/ArrowLeft.svelte +21 -21
  178. package/dist/primitives/Icons/ArrowRight.svelte +21 -21
  179. package/dist/primitives/Icons/Availability.svelte +27 -27
  180. package/dist/primitives/Icons/Back.svelte +27 -27
  181. package/dist/primitives/Icons/CheckCircle.svelte +19 -19
  182. package/dist/primitives/Icons/CheckCircleOutline.svelte +28 -28
  183. package/dist/primitives/Icons/ChevronLeft.svelte +17 -17
  184. package/dist/primitives/Icons/ChevronRight.svelte +17 -17
  185. package/dist/primitives/Icons/Copy.svelte +28 -28
  186. package/dist/primitives/Icons/Cross.svelte +18 -18
  187. package/dist/primitives/Icons/DownArrow.svelte +21 -21
  188. package/dist/primitives/Icons/ErrorCircle.svelte +19 -19
  189. package/dist/primitives/Icons/FacebookIcon.svelte +15 -15
  190. package/dist/primitives/Icons/Home.svelte +28 -28
  191. package/dist/primitives/Icons/Icon.spec.js +175 -175
  192. package/dist/primitives/Icons/Icon.stories.svelte +100 -100
  193. package/dist/primitives/Icons/Icon.svelte +79 -79
  194. package/dist/primitives/Icons/IconGallery.stories.svelte +235 -235
  195. package/dist/primitives/Icons/Icons.spec.js +3 -3
  196. package/dist/primitives/Icons/ImageOutline.svelte +21 -21
  197. package/dist/primitives/Icons/Info.svelte +20 -20
  198. package/dist/primitives/Icons/InstagramIcon.svelte +21 -21
  199. package/dist/primitives/Icons/LogoInstagram.svelte +15 -15
  200. package/dist/primitives/Icons/Message.svelte +28 -28
  201. package/dist/primitives/Icons/MoonIcon.svelte +18 -18
  202. package/dist/primitives/Icons/More.svelte +34 -34
  203. package/dist/primitives/Icons/MoreHori.spec.js +67 -67
  204. package/dist/primitives/Icons/MoreHori.svelte +35 -35
  205. package/dist/primitives/Icons/Notification.svelte +27 -27
  206. package/dist/primitives/Icons/Payment.svelte +27 -27
  207. package/dist/primitives/Icons/Profile.svelte +34 -34
  208. package/dist/primitives/Icons/Reload.svelte +42 -42
  209. package/dist/primitives/Icons/Shows.svelte +34 -34
  210. package/dist/primitives/Icons/Signout.svelte +34 -34
  211. package/dist/primitives/Icons/SunIcon.svelte +21 -21
  212. package/dist/primitives/Icons/TiktokIcon.svelte +15 -15
  213. package/dist/primitives/Icons/TrashBinOutline.svelte +21 -21
  214. package/dist/primitives/Icons/TwitterIcon.svelte +15 -15
  215. package/dist/primitives/Icons/WarningIcon.spec.js +30 -30
  216. package/dist/primitives/Icons/WarningIcon.svelte +24 -24
  217. package/dist/primitives/Input/Input.spec.js +1237 -1237
  218. package/dist/primitives/Input/Input.stories.svelte +139 -139
  219. package/dist/primitives/Input/Input.svelte +444 -444
  220. package/dist/primitives/Input/Select.spec.js +632 -632
  221. package/dist/primitives/Input/Select.stories.svelte +112 -112
  222. package/dist/primitives/Input/Select.svelte +252 -252
  223. package/dist/primitives/Input/Textarea.spec.js +8 -8
  224. package/dist/primitives/Input/Textarea.stories.svelte +137 -137
  225. package/dist/primitives/Input/Textarea.svelte +105 -105
  226. package/dist/primitives/Label/Label.spec.js +20 -21
  227. package/dist/primitives/Label/Label.svelte +37 -37
  228. package/dist/primitives/LandingButton/LandingButton.spec.js +61 -61
  229. package/dist/primitives/LandingButton/LandingButton.svelte +92 -92
  230. package/dist/primitives/MenuItem/MenuItem.spec.js +130 -130
  231. package/dist/primitives/MenuItem/MenuItem.svelte +85 -85
  232. package/dist/primitives/Modal/Modal.spec.js +314 -314
  233. package/dist/primitives/Modal/Modal.stories.svelte +86 -86
  234. package/dist/primitives/Modal/Modal.svelte +181 -181
  235. package/dist/primitives/NavItem/NavItem.spec.js +97 -97
  236. package/dist/primitives/NavItem/NavItem.svelte +75 -75
  237. package/dist/primitives/NumberInput/NumberInput.spec.js +17 -17
  238. package/dist/primitives/NumberInput/NumberInput.svelte +113 -113
  239. package/dist/primitives/Pagination/DotIndicator.svelte +66 -66
  240. package/dist/primitives/Pagination/Pagination.spec.js +6 -6
  241. package/dist/primitives/Pagination/Pagination.stories.svelte +76 -76
  242. package/dist/primitives/Pagination/Pagination.svelte +275 -275
  243. package/dist/primitives/Radio/Radio.spec.js +19 -19
  244. package/dist/primitives/Radio/Radio.stories.svelte +80 -80
  245. package/dist/primitives/Radio/Radio.svelte +67 -67
  246. package/dist/primitives/SearchResultItem/SearchResultItem.spec.js +78 -78
  247. package/dist/primitives/SearchResultItem/SearchResultItem.svelte +109 -109
  248. package/dist/primitives/SidebarToggle/SidebarToggle.spec.js +61 -61
  249. package/dist/primitives/SidebarToggle/SidebarToggle.svelte +55 -55
  250. package/dist/primitives/Skeleton/CardPlaceholder.spec.js +1 -1
  251. package/dist/primitives/Skeleton/CardPlaceholder.svelte +96 -96
  252. package/dist/primitives/Skeleton/ImagePlaceholder.spec.js +2 -2
  253. package/dist/primitives/Skeleton/ImagePlaceholder.svelte +68 -68
  254. package/dist/primitives/Skeleton/ListPlaceholder.spec.js +2 -2
  255. package/dist/primitives/Skeleton/ListPlaceholder.svelte +85 -85
  256. package/dist/primitives/Skeleton/Skeleton.spec.js +7 -7
  257. package/dist/primitives/Skeleton/Skeleton.stories.svelte +151 -151
  258. package/dist/primitives/Skeleton/Skeleton.svelte +55 -55
  259. package/dist/primitives/Spinner/Spinner.spec.js +83 -84
  260. package/dist/primitives/Spinner/Spinner.stories.svelte +29 -29
  261. package/dist/primitives/Spinner/Spinner.svelte +52 -52
  262. package/dist/primitives/Tabs/TabItem.svelte +52 -52
  263. package/dist/primitives/Tabs/Tabs.spec.js +14 -14
  264. package/dist/primitives/Tabs/Tabs.stories.svelte +112 -112
  265. package/dist/primitives/Tabs/Tabs.svelte +137 -137
  266. package/dist/primitives/Toggle.spec.js +219 -221
  267. package/dist/primitives/Toggle.stories.svelte +92 -92
  268. package/dist/primitives/Toggle.svelte +141 -141
  269. package/dist/primitives/ToggleTestWrapper.svelte +30 -30
  270. package/dist/primitives/Tooltip/Tooltip.spec.js +126 -126
  271. package/dist/primitives/Tooltip/Tooltip.svelte +83 -83
  272. package/dist/primitives/Typography/Typography.svelte +53 -53
  273. package/dist/primitives/ValidationError.spec.js +103 -103
  274. package/dist/primitives/ValidationError.stories.svelte +112 -112
  275. package/dist/primitives/ValidationError.svelte +29 -29
  276. package/dist/primitives/index.js +114 -114
  277. package/dist/recipes/CropImage/CropImage.spec.js +208 -208
  278. package/dist/recipes/CropImage/CropImage.stories.svelte +104 -104
  279. package/dist/recipes/CropImage/CropImage.svelte +241 -241
  280. package/dist/recipes/ImageUploader/ImageUploader.spec.js +1 -1
  281. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte +125 -125
  282. package/dist/recipes/ImageUploader/ImageUploader.svelte +972 -994
  283. package/dist/recipes/SuperLogin/SuperLogin.svelte +24 -24
  284. package/dist/recipes/Toaster/Toaster.stories.svelte +62 -62
  285. package/dist/recipes/feedback/EmptyState/EmptyState.svelte +75 -75
  286. package/dist/recipes/feedback/ErrorDisplay.spec.js +69 -69
  287. package/dist/recipes/feedback/ErrorDisplay.stories.svelte +113 -113
  288. package/dist/recipes/feedback/ErrorDisplay.svelte +67 -67
  289. package/dist/recipes/feedback/StatusIndicator/StatusIndicator.spec.js +133 -133
  290. package/dist/recipes/feedback/StatusIndicator/StatusIndicator.svelte +176 -176
  291. package/dist/recipes/feedback/index.js +4 -4
  292. package/dist/recipes/fields/CheckboxField.spec.js +2 -2
  293. package/dist/recipes/fields/CheckboxField.svelte +85 -85
  294. package/dist/recipes/fields/FormField.spec.js +4 -4
  295. package/dist/recipes/fields/FormField.svelte +58 -58
  296. package/dist/recipes/fields/RadioGroup.spec.js +1 -1
  297. package/dist/recipes/fields/RadioGroup.svelte +95 -95
  298. package/dist/recipes/fields/SelectField.spec.js +2 -2
  299. package/dist/recipes/fields/SelectField.svelte +82 -82
  300. package/dist/recipes/fields/TextareaField.spec.js +2 -2
  301. package/dist/recipes/fields/TextareaField.svelte +101 -101
  302. package/dist/recipes/fields/ToggleField.spec.js +2 -2
  303. package/dist/recipes/fields/ToggleField.svelte +60 -60
  304. package/dist/recipes/fields/index.js +7 -7
  305. package/dist/recipes/index.js +24 -24
  306. package/dist/recipes/inputs/MultiSelect.spec.js +263 -263
  307. package/dist/recipes/inputs/MultiSelect.stories.svelte +133 -133
  308. package/dist/recipes/inputs/MultiSelect.svelte +291 -291
  309. package/dist/recipes/inputs/OTPInput.spec.js +251 -251
  310. package/dist/recipes/inputs/OTPInput.stories.svelte +162 -162
  311. package/dist/recipes/inputs/OTPInput.svelte +128 -128
  312. package/dist/recipes/inputs/PasswordInput.spec.js +2 -2
  313. package/dist/recipes/inputs/PasswordInput.svelte +130 -130
  314. package/dist/recipes/inputs/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.js +14 -14
  315. package/dist/recipes/inputs/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte +142 -142
  316. package/dist/recipes/inputs/PasswordStrengthIndicator/TestWrapper.svelte +2 -2
  317. package/dist/recipes/inputs/PhoneInput.svelte +254 -254
  318. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.spec.js +10 -10
  319. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.stories.svelte +170 -170
  320. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte +346 -349
  321. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts.map +1 -1
  322. package/dist/recipes/inputs/Search.spec.js +3 -3
  323. package/dist/recipes/inputs/Search.svelte +110 -110
  324. package/dist/recipes/inputs/index.js +8 -8
  325. package/dist/recipes/inputs/phoneInput/CountrySelector.svelte +240 -240
  326. package/dist/recipes/modals/AlertModal.spec.js +36 -36
  327. package/dist/recipes/modals/AlertModal.svelte +139 -139
  328. package/dist/recipes/modals/ConfirmationModal.spec.js +396 -396
  329. package/dist/recipes/modals/ConfirmationModal.stories.svelte +119 -119
  330. package/dist/recipes/modals/ConfirmationModal.svelte +169 -169
  331. package/dist/recipes/modals/FeedbackModal.svelte +205 -205
  332. package/dist/recipes/modals/InputModal.spec.js +17 -17
  333. package/dist/recipes/modals/InputModal.svelte +194 -194
  334. package/dist/recipes/modals/ModalStateManager.spec.js +100 -100
  335. package/dist/recipes/modals/ModalStateManager.svelte +77 -77
  336. package/dist/recipes/modals/ModalTestWrapper.svelte +65 -65
  337. package/dist/recipes/modals/StatusModal.spec.js +7 -7
  338. package/dist/recipes/modals/StatusModal.svelte +216 -216
  339. package/dist/recipes/modals/index.js +8 -8
  340. package/dist/schemas/__tests__/order.test.js +1 -1
  341. package/dist/schemas/auth.d.ts +107 -17
  342. package/dist/schemas/auth.d.ts.map +1 -1
  343. package/dist/schemas/common.d.ts +41 -13
  344. package/dist/schemas/common.d.ts.map +1 -1
  345. package/dist/schemas/common.js +1 -1
  346. package/dist/schemas/event.d.ts +147 -41
  347. package/dist/schemas/event.d.ts.map +1 -1
  348. package/dist/schemas/event.js +1 -1
  349. package/dist/schemas/order.d.ts +208 -51
  350. package/dist/schemas/order.d.ts.map +1 -1
  351. package/dist/schemas/order.js +1 -0
  352. package/dist/schemas/performer.d.ts +199 -44
  353. package/dist/schemas/performer.d.ts.map +1 -1
  354. package/dist/schemas/performer.js +1 -1
  355. package/dist/schemas/promo.d.ts +221 -55
  356. package/dist/schemas/promo.d.ts.map +1 -1
  357. package/dist/schemas/promo.js +2 -2
  358. package/dist/schemas/ticket.d.ts +187 -61
  359. package/dist/schemas/ticket.d.ts.map +1 -1
  360. package/dist/schemas/ticket.js +1 -1
  361. package/dist/schemas/user.d.ts +114 -54
  362. package/dist/schemas/user.d.ts.map +1 -1
  363. package/dist/schemas/user.js +2 -1
  364. package/dist/schemas/venue.d.ts +238 -20
  365. package/dist/schemas/venue.d.ts.map +1 -1
  366. package/dist/services/show.service.d.ts +46 -46
  367. package/dist/stores/auth.d.ts +8 -8
  368. package/dist/stores/auth.svelte.spec.js +1 -1
  369. package/dist/stores/index.js +9 -9
  370. package/dist/stores/toaster.d.ts +3 -3
  371. package/dist/stores/toaster.js +13 -13
  372. package/dist/stores/toaster.spec.js +59 -59
  373. package/dist/stories/ButtonAuditDashboard.spec.js +12 -12
  374. package/dist/stories/ButtonAuditDashboard.svelte +55 -55
  375. package/dist/stories/ButtonAuditReview.spec.js +8 -8
  376. package/dist/stories/ButtonAuditReview.stories.svelte +14 -14
  377. package/dist/stories/ButtonAuditReview.svelte +427 -427
  378. package/dist/stories/ButtonGridView.spec.js +27 -27
  379. package/dist/stories/ButtonGridView.svelte +22 -22
  380. package/dist/stories/ButtonShowcase.spec.js +4 -4
  381. package/dist/stories/ButtonShowcase.svelte +119 -119
  382. package/dist/stories/ComponentConsolidation.stories.svelte +453 -453
  383. package/dist/stories/DesignSystemAudit.stories.svelte +127 -127
  384. package/dist/stories/PatternsGallery.spec.js +3 -3
  385. package/dist/stories/PatternsGallery.stories.svelte +19 -19
  386. package/dist/stories/PatternsGallery.svelte +399 -399
  387. package/dist/stories/PrimitivesGallery.spec.js +9 -9
  388. package/dist/stories/PrimitivesGallery.stories.svelte +19 -19
  389. package/dist/stories/PrimitivesGallery.svelte +756 -756
  390. package/dist/stories/RecipesGallery.stories.svelte +19 -19
  391. package/dist/stories/RecipesGallery.svelte +454 -454
  392. package/dist/stories/button-audit-manifest.json +11186 -11186
  393. package/dist/tailwind/preset.cjs +87 -87
  394. package/dist/telemetry.js +401 -401
  395. package/dist/telemetry.server.js +212 -212
  396. package/dist/telemetry.server.spec.js +437 -437
  397. package/dist/telemetry.spec.js +1273 -1273
  398. package/dist/tokens/__tests__/typography-base.test.js +5 -5
  399. package/dist/tokens/__tests__/typography.test.js +32 -36
  400. package/dist/tokens/__tests__/variants.test.js +63 -78
  401. package/dist/tokens/tokens.css +87 -87
  402. package/dist/tokens/typography-base.css +163 -163
  403. package/dist/tokens/typography.d.ts +29 -29
  404. package/dist/tokens/typography.js +29 -29
  405. package/dist/tokens/utilities.css +418 -430
  406. package/dist/tokens/variants.d.ts +32 -32
  407. package/dist/tokens/variants.js +32 -32
  408. package/dist/utils/__tests__/auth.test.js +431 -431
  409. package/dist/utils/apiConfig.d.ts +29 -29
  410. package/dist/utils/apiConfig.js +142 -142
  411. package/dist/utils/auth.d.ts +46 -46
  412. package/dist/utils/auth.js +195 -195
  413. package/dist/utils/greetings.js +187 -187
  414. package/dist/utils/greetings.spec.js +337 -337
  415. package/dist/utils/haptic.spec.js +1 -1
  416. package/dist/utils/imageValidation.js +121 -121
  417. package/dist/utils/imageValidation.spec.js +223 -223
  418. package/dist/utils/portal.d.ts +11 -11
  419. package/dist/utils/portal.js +25 -25
  420. package/dist/utils/portal.spec.js +143 -143
  421. package/dist/utils/transitions.js +16 -16
  422. package/dist/utils/utils/utils.d.ts +2 -2
  423. package/dist/utils/utils/utils.js +3 -3
  424. package/dist/utils/utils/utils.spec.js +698 -698
  425. package/dist/utils/utils.d.ts +41 -41
  426. package/dist/utils/utils.js +59 -59
  427. package/dist/utils/utils.spec.js +643 -643
  428. package/package.json +306 -306
@@ -133,7 +133,7 @@ describe('ButtonAuditDashboard', () => {
133
133
  it('should have proper background color', () => {
134
134
  const { container } = render(ButtonAuditDashboard);
135
135
  const mainContainer = container.querySelector('.min-h-screen');
136
- expect(mainContainer).toHaveClass('bg-gray-50', 'dark:bg-gray-900');
136
+ expect(mainContainer).toHaveClass('bg-bg-secondary');
137
137
  });
138
138
  });
139
139
 
@@ -655,8 +655,8 @@ describe('ButtonAuditDashboard', () => {
655
655
  const { container } = render(ButtonAuditDashboard);
656
656
 
657
657
  // Check for specific color classes
658
- expect(container.querySelector('.bg-blue-100.text-blue-800')).toBeInTheDocument();
659
- expect(container.querySelector('.bg-gray-100.text-gray-800')).toBeInTheDocument();
658
+ expect(container.querySelector('.bg-status-info-bg.text-status-info-text')).toBeInTheDocument();
659
+ expect(container.querySelector('.bg-muted.text-text-primary')).toBeInTheDocument();
660
660
  });
661
661
 
662
662
  it('should render in grid layout', () => {
@@ -698,9 +698,9 @@ describe('ButtonAuditDashboard', () => {
698
698
  const { container } = render(ButtonAuditDashboard);
699
699
 
700
700
  // Check that variant distribution section has color classes
701
- expect(container.querySelector('.bg-blue-100')).toBeInTheDocument();
702
- expect(container.querySelector('.bg-red-100')).toBeInTheDocument();
703
- expect(container.querySelector('.bg-purple-100')).toBeInTheDocument();
701
+ expect(container.querySelector('.bg-status-info-bg')).toBeInTheDocument();
702
+ expect(container.querySelector('.bg-status-error-bg')).toBeInTheDocument();
703
+ expect(container.querySelector('.bg-status-info-bg')).toBeInTheDocument();
704
704
  });
705
705
  });
706
706
 
@@ -771,12 +771,12 @@ describe('ButtonAuditDashboard', () => {
771
771
  });
772
772
 
773
773
  describe('Dark Mode Support', () => {
774
- it('should have dark mode classes on elements', () => {
774
+ it('should use token-based classes for theming', () => {
775
775
  const { container } = render(ButtonAuditDashboard);
776
776
 
777
- // Check for dark: prefixed classes
778
- const darkModeElements = container.querySelectorAll('[class*="dark:"]');
779
- expect(darkModeElements.length).toBeGreaterThan(0);
777
+ // Check for token-based classes (dark mode handled by CSS custom properties)
778
+ const tokenElements = container.querySelectorAll('[class*="bg-bg-secondary"], [class*="text-text-primary"]');
779
+ expect(tokenElements.length).toBeGreaterThan(0);
780
780
  });
781
781
 
782
782
  it('should toggle dark classes on html element', async () => {
@@ -794,11 +794,11 @@ describe('ButtonAuditDashboard', () => {
794
794
  render(ButtonAuditDashboard);
795
795
  const darkModeButton = screen.getByRole('button', { name: /Dark/ });
796
796
 
797
- expect(darkModeButton).toHaveClass('bg-gray-800');
797
+ expect(darkModeButton).toHaveClass('bg-bg-secondary');
798
798
 
799
799
  await user.click(darkModeButton);
800
800
  const lightModeButton = screen.getByRole('button', { name: /Light/ });
801
- expect(lightModeButton).toHaveClass('bg-yellow-500');
801
+ expect(lightModeButton).toHaveClass('bg-accent-warning');
802
802
  });
803
803
  });
804
804
 
@@ -93,16 +93,16 @@
93
93
  // Get variant badge color
94
94
  function getVariantColor(variant) {
95
95
  switch (variant) {
96
- case 'blue-solid': return 'bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200';
97
- case 'gray-outline': return 'bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-gray-200';
98
- case 'blue-outline': return 'bg-blue-50 text-blue-700 dark:bg-blue-900/50 dark:text-blue-300';
99
- case 'gray-text': return 'bg-gray-50 text-gray-600 dark:bg-gray-800 dark:text-gray-400';
100
- case 'red-solid': return 'bg-red-100 text-red-800 dark:bg-red-900 dark:text-red-200';
101
- case 'red-outline': return 'bg-red-50 text-red-700 dark:bg-red-900/50 dark:text-red-300';
102
- case 'green-solid': return 'bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200';
103
- case 'icon': return 'bg-purple-100 text-purple-800 dark:bg-purple-900 dark:text-purple-200';
104
- case 'ghost': return 'bg-yellow-100 text-yellow-800 dark:bg-yellow-900 dark:text-yellow-200';
105
- default: return 'bg-gray-100 text-gray-800 dark:bg-gray-700 dark:text-gray-200';
96
+ case 'blue-solid': return 'bg-status-info-bg text-status-info-text';
97
+ case 'gray-outline': return 'bg-muted text-text-primary';
98
+ case 'blue-outline': return 'bg-status-info-bg text-brand-primary';
99
+ case 'gray-text': return 'bg-bg-secondary text-text-secondary';
100
+ case 'red-solid': return 'bg-status-error-bg text-status-error-text';
101
+ case 'red-outline': return 'bg-status-error-bg text-status-error-text';
102
+ case 'green-solid': return 'bg-status-success-bg text-status-success-text';
103
+ case 'icon': return 'bg-status-info-bg text-brand-primary';
104
+ case 'ghost': return 'bg-status-warning-bg text-status-warning-text';
105
+ default: return 'bg-muted text-text-primary';
106
106
  }
107
107
  }
108
108
 
@@ -159,14 +159,14 @@
159
159
  .sort((a, b) => b.buttonCount - a.buttonCount);
160
160
  </script>
161
161
 
162
- <div class="min-h-screen bg-gray-50 dark:bg-gray-900 transition-colors">
162
+ <div class="min-h-screen bg-bg-secondary transition-colors">
163
163
  <!-- Sticky Header -->
164
- <div class="sticky top-0 z-50 bg-white dark:bg-gray-800 border-b border-gray-200 dark:border-gray-700 shadow">
164
+ <div class="sticky top-0 z-50 bg-card border-b border-border shadow">
165
165
  <div class="max-w-7xl mx-auto px-4 py-4">
166
166
  <div class="flex flex-wrap items-center justify-between gap-4">
167
167
  <div>
168
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">Button Audit Dashboard</h1>
169
- <p class="text-sm text-gray-500 dark:text-gray-400">
168
+ <h1 class="text-2xl font-bold text-text-primary">Button Audit Dashboard</h1>
169
+ <p class="text-sm text-muted-foreground">
170
170
  {filteredStats.shown} of {filteredStats.total} buttons from micdrop-frontend
171
171
  <span class="text-xs ml-2">Generated: {new Date(manifest.generated).toLocaleString()}</span>
172
172
  </p>
@@ -176,13 +176,13 @@
176
176
  <!-- Expand/Collapse All -->
177
177
  <button
178
178
  onclick={expandAll}
179
- class="px-3 py-1.5 text-sm rounded-lg border border-gray-300 dark:border-gray-600 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300"
179
+ class="px-3 py-1.5 text-sm rounded-lg border border-stroke-primary hover:bg-muted text-text-secondary"
180
180
  >
181
181
  Expand All
182
182
  </button>
183
183
  <button
184
184
  onclick={collapseAll}
185
- class="px-3 py-1.5 text-sm rounded-lg border border-gray-300 dark:border-gray-600 hover:bg-gray-100 dark:hover:bg-gray-700 text-gray-700 dark:text-gray-300"
185
+ class="px-3 py-1.5 text-sm rounded-lg border border-stroke-primary hover:bg-muted text-text-secondary"
186
186
  >
187
187
  Collapse All
188
188
  </button>
@@ -191,8 +191,8 @@
191
191
  <button
192
192
  onclick={toggleDarkMode}
193
193
  class="px-4 py-2 rounded-lg font-medium transition-all {isDark
194
- ? 'bg-yellow-500 text-black hover:bg-yellow-400'
195
- : 'bg-gray-800 text-white hover:bg-gray-700'}"
194
+ ? 'bg-accent-warning text-text-primary hover:bg-accent-warning'
195
+ : 'bg-bg-secondary text-white hover:bg-bg-secondary'}"
196
196
  >
197
197
  {#if isDark}
198
198
  ☀️ Light
@@ -211,14 +211,14 @@
211
211
  type="text"
212
212
  bind:value={searchQuery}
213
213
  placeholder="Search button text..."
214
- class="w-full px-3 py-2 rounded-lg border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white placeholder-gray-400"
214
+ class="w-full px-3 py-2 rounded-lg border border-stroke-primary bg-card text-text-primary placeholder-gray-400"
215
215
  />
216
216
  </div>
217
217
 
218
218
  <!-- Variant Filter -->
219
219
  <select
220
220
  bind:value={variantFilter}
221
- class="px-3 py-2 rounded-lg border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white"
221
+ class="px-3 py-2 rounded-lg border border-stroke-primary bg-card text-text-primary"
222
222
  >
223
223
  <option value="all">All Variants</option>
224
224
  {#each allVariants as variant}
@@ -229,7 +229,7 @@
229
229
  <!-- Size Filter -->
230
230
  <select
231
231
  bind:value={sizeFilter}
232
- class="px-3 py-2 rounded-lg border border-gray-300 dark:border-gray-600 bg-white dark:bg-gray-700 text-gray-900 dark:text-white"
232
+ class="px-3 py-2 rounded-lg border border-stroke-primary bg-card text-text-primary"
233
233
  >
234
234
  <option value="all">All Sizes</option>
235
235
  {#each allSizes as size}
@@ -249,19 +249,19 @@
249
249
 
250
250
  {#if visibleButtons.length > 0}
251
251
  <!-- Category Section -->
252
- <div class="bg-white dark:bg-gray-800 rounded-xl border border-gray-200 dark:border-gray-700 overflow-hidden">
252
+ <div class="bg-card rounded-xl border border-border overflow-hidden">
253
253
  <!-- Category Header -->
254
254
  <button
255
255
  onclick={() => toggleCategory(category.name)}
256
- class="w-full flex items-center justify-between px-4 py-3 hover:bg-gray-50 dark:hover:bg-gray-700/50 transition-colors"
256
+ class="w-full flex items-center justify-between px-4 py-3 hover:bg-bg-secondary transition-colors"
257
257
  >
258
258
  <div class="flex items-center gap-3">
259
259
  <span class="text-xl">{expandedCategories.has(category.name) ? '▼' : '▶'}</span>
260
- <h2 class="text-lg font-semibold text-gray-900 dark:text-white">{category.name}</h2>
261
- <span class="px-2 py-0.5 text-xs font-medium rounded-full bg-blue-100 text-blue-800 dark:bg-blue-900 dark:text-blue-200">
260
+ <h2 class="text-lg font-semibold text-text-primary">{category.name}</h2>
261
+ <span class="px-2 py-0.5 text-xs font-medium rounded-full bg-status-info-bg text-status-info-text">
262
262
  {visibleButtons.length} buttons
263
263
  </span>
264
- <span class="text-sm text-gray-500 dark:text-gray-400">
264
+ <span class="text-sm text-muted-foreground">
265
265
  in {category.routes.length} files
266
266
  </span>
267
267
  </div>
@@ -269,24 +269,24 @@
269
269
 
270
270
  <!-- Category Content -->
271
271
  {#if expandedCategories.has(category.name)}
272
- <div class="border-t border-gray-200 dark:border-gray-700">
272
+ <div class="border-t border-border">
273
273
  {#each category.routes as route}
274
274
  {@const routeVisibleButtons = route.buttons.filter(shouldShowButton)}
275
275
 
276
276
  {#if routeVisibleButtons.length > 0}
277
277
  <!-- File Section -->
278
- <div class="border-b border-gray-100 dark:border-gray-700/50 last:border-b-0">
278
+ <div class="border-b border-border last:border-b-0">
279
279
  <button
280
280
  onclick={() => toggleFile(route.fullPath)}
281
- class="w-full flex items-center justify-between px-6 py-2 hover:bg-gray-50 dark:hover:bg-gray-700/30 transition-colors text-left"
281
+ class="w-full flex items-center justify-between px-6 py-2 hover:bg-bg-secondary transition-colors text-left"
282
282
  >
283
283
  <div class="flex items-center gap-2 min-w-0">
284
- <span class="text-gray-400">{expandedFiles.has(route.fullPath) ? '▾' : '▸'}</span>
285
- <code class="text-sm text-gray-600 dark:text-gray-300 truncate">{route.file}</code>
284
+ <span class="text-muted-foreground">{expandedFiles.has(route.fullPath) ? '▾' : '▸'}</span>
285
+ <code class="text-sm text-text-secondary truncate">{route.file}</code>
286
286
  <a
287
287
  href={getVSCodeLink(route.fullPath, 1)}
288
288
  onclick={(e) => e.stopPropagation()}
289
- class="text-xs text-blue-500 hover:text-blue-700 dark:text-blue-400 hover:underline"
289
+ class="text-xs text-brand-primary hover:text-brand-primary hover:underline"
290
290
  title="Open in VS Code"
291
291
  >
292
292
  📂 Open
@@ -301,13 +301,13 @@
301
301
  tabindex="0"
302
302
  onclick={(e) => { e.stopPropagation(); openPreview(route.route, route.file); }}
303
303
  onkeydown={(e) => { if (e.key === 'Enter' || e.key === ' ') { e.stopPropagation(); openPreview(route.route, route.file); }}}
304
- class="px-2 py-0.5 text-xs rounded bg-green-100 text-green-700 hover:bg-green-200 dark:bg-green-900 dark:text-green-300 dark:hover:bg-green-800 cursor-pointer"
304
+ class="px-2 py-0.5 text-xs rounded bg-status-success-bg text-status-success-text hover:bg-status-success-bg/80 cursor-pointer"
305
305
  title="Preview this page"
306
306
  >
307
307
  👁️ Preview
308
308
  </span>
309
309
  {/if}
310
- <span class="text-xs text-gray-500 dark:text-gray-400">
310
+ <span class="text-xs text-muted-foreground">
311
311
  {routeVisibleButtons.length} buttons
312
312
  </span>
313
313
  </div>
@@ -315,12 +315,12 @@
315
315
 
316
316
  <!-- Buttons Grid -->
317
317
  {#if expandedFiles.has(route.fullPath)}
318
- <div class="px-6 py-4 bg-gray-50 dark:bg-gray-900/50">
318
+ <div class="px-6 py-4 bg-bg-secondary">
319
319
  <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4">
320
320
  {#each routeVisibleButtons as button, idx}
321
- <div class="bg-white dark:bg-gray-800 rounded-lg p-4 border border-gray-200 dark:border-gray-600 space-y-3">
321
+ <div class="bg-card rounded-lg p-4 border border-border space-y-3">
322
322
  <!-- Button Preview -->
323
- <div class="flex items-center justify-center p-4 bg-gray-100 dark:bg-gray-700 rounded-lg min-h-[60px]">
323
+ <div class="flex items-center justify-center p-4 bg-muted rounded-lg min-h-[60px]">
324
324
  <Button
325
325
  variant={button.variant}
326
326
  size={button.size}
@@ -339,32 +339,32 @@
339
339
  <span class="px-2 py-0.5 text-xs font-medium rounded {getVariantColor(button.variant)}">
340
340
  {button.variant}
341
341
  </span>
342
- <span class="px-2 py-0.5 text-xs font-medium rounded bg-gray-100 text-gray-700 dark:bg-gray-700 dark:text-gray-300">
342
+ <span class="px-2 py-0.5 text-xs font-medium rounded bg-muted text-text-secondary">
343
343
  {button.size}
344
344
  </span>
345
345
  {#if button.loading}
346
- <span class="px-2 py-0.5 text-xs font-medium rounded bg-orange-100 text-orange-700 dark:bg-orange-900 dark:text-orange-200">loading</span>
346
+ <span class="px-2 py-0.5 text-xs font-medium rounded bg-status-warning-bg text-accent-warning">loading</span>
347
347
  {/if}
348
348
  {#if button.disabled}
349
- <span class="px-2 py-0.5 text-xs font-medium rounded bg-gray-200 text-gray-600 dark:bg-gray-600 dark:text-gray-300">disabled</span>
349
+ <span class="px-2 py-0.5 text-xs font-medium rounded bg-bg-tertiary text-text-secondary">disabled</span>
350
350
  {/if}
351
351
  {#if button.danger}
352
- <span class="px-2 py-0.5 text-xs font-medium rounded bg-red-100 text-red-700 dark:bg-red-900 dark:text-red-200">danger</span>
352
+ <span class="px-2 py-0.5 text-xs font-medium rounded bg-status-error-bg text-status-error-text">danger</span>
353
353
  {/if}
354
354
  </div>
355
355
 
356
356
  <div class="flex items-center justify-between text-xs">
357
- <span class="text-gray-500 dark:text-gray-400">Line {button.line}</span>
357
+ <span class="text-muted-foreground">Line {button.line}</span>
358
358
  <a
359
359
  href={getVSCodeLink(route.fullPath, button.line)}
360
- class="text-blue-500 hover:text-blue-700 dark:text-blue-400 hover:underline"
360
+ class="text-brand-primary hover:text-brand-primary hover:underline"
361
361
  >
362
362
  Open in Code →
363
363
  </a>
364
364
  </div>
365
365
 
366
366
  {#if button.text !== '(no text)' && button.text.length > 0}
367
- <p class="text-xs text-gray-600 dark:text-gray-400 truncate" title={button.text}>
367
+ <p class="text-xs text-text-secondary truncate" title={button.text}>
368
368
  "{button.text}"
369
369
  </p>
370
370
  {/if}
@@ -386,8 +386,8 @@
386
386
 
387
387
  <!-- Footer Stats -->
388
388
  <div class="max-w-7xl mx-auto px-4 py-8">
389
- <div class="bg-white dark:bg-gray-800 rounded-xl border border-gray-200 dark:border-gray-700 p-6">
390
- <h3 class="text-lg font-semibold text-gray-900 dark:text-white mb-4">Variant Distribution</h3>
389
+ <div class="bg-card rounded-xl border border-border p-6">
390
+ <h3 class="text-lg font-semibold text-text-primary mb-4">Variant Distribution</h3>
391
391
  <div class="grid grid-cols-2 md:grid-cols-4 lg:grid-cols-6 gap-4">
392
392
  {#each allVariants as variant}
393
393
  {@const count = Object.values(manifest.categories)
@@ -395,7 +395,7 @@
395
395
  .filter(b => b.variant === variant).length}
396
396
  <div class="flex items-center gap-2">
397
397
  <span class="px-2 py-1 text-xs font-medium rounded {getVariantColor(variant)}">{variant}</span>
398
- <span class="text-sm text-gray-600 dark:text-gray-400">{count}</span>
398
+ <span class="text-sm text-text-secondary">{count}</span>
399
399
  </div>
400
400
  {/each}
401
401
  </div>
@@ -404,26 +404,26 @@
404
404
 
405
405
  <!-- Preview Modal -->
406
406
  {#if previewModal.open}
407
- <div class="fixed inset-0 z-[100] flex items-center justify-center p-4 bg-black/50 backdrop-blur-xs">
408
- <div class="relative w-full max-w-6xl h-[85vh] bg-white dark:bg-gray-800 rounded-xl shadow-2xl overflow-hidden flex flex-col">
407
+ <div class="fixed inset-0 z-[100] flex items-center justify-center p-4 bg-overlay-bg backdrop-blur-xs">
408
+ <div class="relative w-full max-w-6xl h-[85vh] bg-card rounded-xl shadow-2xl overflow-hidden flex flex-col">
409
409
  <!-- Modal Header -->
410
- <div class="flex items-center justify-between px-4 py-3 bg-gray-100 dark:bg-gray-700 border-b border-gray-200 dark:border-gray-600">
410
+ <div class="flex items-center justify-between px-4 py-3 bg-muted border-b border-border">
411
411
  <div class="flex items-center gap-3">
412
- <span class="text-lg font-semibold text-gray-900 dark:text-white">{previewModal.title}</span>
413
- <code class="text-sm text-gray-500 dark:text-gray-400">{previewModal.file}</code>
412
+ <span class="text-lg font-semibold text-text-primary">{previewModal.title}</span>
413
+ <code class="text-sm text-muted-foreground">{previewModal.file}</code>
414
414
  </div>
415
415
  <div class="flex items-center gap-2">
416
416
  <a
417
417
  href={previewModal.url}
418
418
  target="_blank"
419
419
  rel="noopener"
420
- class="px-3 py-1.5 text-sm rounded-lg bg-blue-100 text-blue-700 hover:bg-blue-200 dark:bg-blue-900 dark:text-blue-300"
420
+ class="px-3 py-1.5 text-sm rounded-lg bg-status-info-bg text-brand-primary hover:bg-status-info-bg/80"
421
421
  >
422
422
  Open in new tab ↗
423
423
  </a>
424
424
  <button
425
425
  onclick={closePreview}
426
- class="p-2 rounded-lg hover:bg-gray-200 dark:hover:bg-gray-600 text-gray-500 dark:text-gray-400"
426
+ class="p-2 rounded-lg hover:bg-bg-tertiary text-muted-foreground"
427
427
  >
428
428
 
429
429
  </button>
@@ -440,7 +440,7 @@
440
440
  </div>
441
441
 
442
442
  <!-- Modal Footer -->
443
- <div class="px-4 py-2 bg-gray-50 dark:bg-gray-700/50 border-t border-gray-200 dark:border-gray-600 text-xs text-gray-500 dark:text-gray-400">
443
+ <div class="px-4 py-2 bg-bg-secondary border-t border-border text-xs text-muted-foreground">
444
444
  ⚠️ Preview requires micdrop-frontend dev server running at {FRONTEND_DEV_URL}
445
445
  </div>
446
446
  </div>
@@ -42,7 +42,7 @@ describe('ButtonAuditReview', () => {
42
42
  const { container } = render(ButtonAuditReview);
43
43
  expect(screen.getByText('Recent Fix Sessions')).toBeInTheDocument();
44
44
  // Check the green card has the count 4
45
- const greenCard = container.querySelector('.bg-green-50.border-green-400');
45
+ const greenCard = container.querySelector('.bg-status-success-bg.border-accent-success');
46
46
  expect(greenCard?.textContent).toContain('4');
47
47
  });
48
48
 
@@ -50,7 +50,7 @@ describe('ButtonAuditReview', () => {
50
50
  const { container } = render(ButtonAuditReview);
51
51
  expect(screen.getByText('Valid Variants')).toBeInTheDocument();
52
52
  // Check the blue card has the count 15
53
- const blueCards = container.querySelectorAll('.bg-blue-50.border-blue-400');
53
+ const blueCards = container.querySelectorAll('.bg-status-info-bg.border-brand-primary');
54
54
  const summaryBlueCard = blueCards[0];
55
55
  expect(summaryBlueCard?.textContent).toContain('15');
56
56
  });
@@ -127,13 +127,13 @@ describe('ButtonAuditReview', () => {
127
127
 
128
128
  it('should render "Needs Fix" badge for incorrect categories', () => {
129
129
  const { container } = render(ButtonAuditReview);
130
- const needsFixBadges = container.querySelectorAll('.bg-red-100.text-red-700');
130
+ const needsFixBadges = container.querySelectorAll('.bg-status-error-bg.text-status-error-text');
131
131
  expect(needsFixBadges.length).toBeGreaterThan(0);
132
132
  });
133
133
 
134
134
  it('should render "Correct" badge for correct categories', () => {
135
135
  const { container } = render(ButtonAuditReview);
136
- const correctBadges = container.querySelectorAll('.bg-green-100.text-green-700');
136
+ const correctBadges = container.querySelectorAll('.bg-status-success-bg.text-status-success-text');
137
137
  expect(correctBadges.length).toBeGreaterThan(0);
138
138
  });
139
139
 
@@ -309,25 +309,25 @@ describe('ButtonAuditReview', () => {
309
309
  describe('Color Coding and Visual Indicators', () => {
310
310
  it('should use yellow theme for buttons without variant section', () => {
311
311
  const { container } = render(ButtonAuditReview);
312
- const yellowSection = container.querySelector('.bg-yellow-50.border-yellow-400');
312
+ const yellowSection = container.querySelector('.bg-status-warning-bg.border-status-warning-border');
313
313
  expect(yellowSection).toBeInTheDocument();
314
314
  });
315
315
 
316
316
  it('should use orange theme for visual comparison section', () => {
317
317
  const { container } = render(ButtonAuditReview);
318
- const orangeSection = container.querySelector('.bg-orange-50.border-orange-400');
318
+ const orangeSection = container.querySelector('.bg-status-warning-bg.border-accent-warning');
319
319
  expect(orangeSection).toBeInTheDocument();
320
320
  });
321
321
 
322
322
  it('should use green theme for recent fixes section', () => {
323
323
  const { container } = render(ButtonAuditReview);
324
- const greenSection = container.querySelector('.bg-green-50.border-green-400');
324
+ const greenSection = container.querySelector('.bg-status-success-bg.border-accent-success');
325
325
  expect(greenSection).toBeInTheDocument();
326
326
  });
327
327
 
328
328
  it('should use blue theme for decision guide section', () => {
329
329
  const { container } = render(ButtonAuditReview);
330
- const blueSection = container.querySelector('.bg-blue-50.border-blue-400');
330
+ const blueSection = container.querySelector('.bg-status-info-bg.border-brand-primary');
331
331
  expect(blueSection).toBeInTheDocument();
332
332
  });
333
333
  });
@@ -1,14 +1,14 @@
1
- <script module>
2
- import { defineMeta } from "@storybook/addon-svelte-csf";
3
- import ButtonAuditReview from "./ButtonAuditReview.svelte";
4
-
5
- const { Story } = defineMeta({
6
- title: "Design System/Button Audit Review",
7
- component: ButtonAuditReview,
8
- parameters: {
9
- layout: 'fullscreen',
10
- }
11
- });
12
- </script>
13
-
14
- <Story name="All Issues" />
1
+ <script module>
2
+ import { defineMeta } from "@storybook/addon-svelte-csf";
3
+ import ButtonAuditReview from "./ButtonAuditReview.svelte";
4
+
5
+ const { Story } = defineMeta({
6
+ title: "Design System/Button Audit Review",
7
+ component: ButtonAuditReview,
8
+ parameters: {
9
+ layout: 'fullscreen',
10
+ }
11
+ });
12
+ </script>
13
+
14
+ <Story name="All Issues" />