@getmicdrop/svelte-components 5.3.6 → 5.3.10

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 (121) hide show
  1. package/dist/calendar/AboutShow/AboutShow.svelte +9 -8
  2. package/dist/calendar/AboutShow/AboutShow.svelte.d.ts.map +1 -1
  3. package/dist/calendar/Calendar/MiniMonthCalendar.svelte +9 -8
  4. package/dist/calendar/Calendar/MiniMonthCalendar.svelte.d.ts.map +1 -1
  5. package/dist/calendar/FAQs/FAQs.svelte +6 -5
  6. package/dist/calendar/FAQs/FAQs.svelte.d.ts.map +1 -1
  7. package/dist/calendar/MonthSwitcher/MonthSwitcher.svelte +3 -2
  8. package/dist/calendar/MonthSwitcher/MonthSwitcher.svelte.d.ts.map +1 -1
  9. package/dist/calendar/OrderSummary/OrderSummary.svelte +19 -18
  10. package/dist/calendar/OrderSummary/OrderSummary.svelte.d.ts.map +1 -1
  11. package/dist/calendar/PublicCard/PublicCard.svelte +7 -9
  12. package/dist/calendar/PublicCard/PublicCard.svelte.d.ts.map +1 -1
  13. package/dist/calendar/ShowCard/ShowCard.svelte +11 -10
  14. package/dist/calendar/ShowCard/ShowCard.svelte.d.ts.map +1 -1
  15. package/dist/calendar/ShowTimeCard/ShowTimeCard.svelte +5 -3
  16. package/dist/calendar/ShowTimeCard/ShowTimeCard.svelte.d.ts.map +1 -1
  17. package/dist/components/Layout/Section.svelte +4 -4
  18. package/dist/components/Layout/Section.svelte.d.ts.map +1 -1
  19. package/dist/index.d.ts +3 -0
  20. package/dist/index.js +9 -0
  21. package/dist/patterns/data/DataTable.svelte +4 -2
  22. package/dist/patterns/data/DataTable.svelte.d.ts.map +1 -1
  23. package/dist/patterns/forms/FormSection.svelte +4 -2
  24. package/dist/patterns/forms/FormSection.svelte.d.ts.map +1 -1
  25. package/dist/patterns/navigation/BottomNav.svelte +4 -3
  26. package/dist/patterns/navigation/BottomNav.svelte.d.ts.map +1 -1
  27. package/dist/patterns/navigation/Header.svelte +11 -10
  28. package/dist/patterns/navigation/Header.svelte.d.ts.map +1 -1
  29. package/dist/patterns/page/PageHeader.svelte +3 -2
  30. package/dist/patterns/page/PageHeader.svelte.d.ts.map +1 -1
  31. package/dist/patterns/page/PageLayout.svelte +2 -1
  32. package/dist/patterns/page/PageLayout.svelte.d.ts.map +1 -1
  33. package/dist/patterns/page/PageLoader.svelte +2 -1
  34. package/dist/patterns/page/PageLoader.svelte.d.ts.map +1 -1
  35. package/dist/patterns/page/SectionHeader.svelte +5 -3
  36. package/dist/patterns/page/SectionHeader.svelte.d.ts.map +1 -1
  37. package/dist/primitives/Accordion/Accordion.svelte +2 -1
  38. package/dist/primitives/Accordion/Accordion.svelte.d.ts.map +1 -1
  39. package/dist/primitives/Accordion/AccordionItem.svelte +5 -4
  40. package/dist/primitives/Accordion/AccordionItem.svelte.d.ts.map +1 -1
  41. package/dist/primitives/BottomSheet/BottomSheet.svelte +2 -1
  42. package/dist/primitives/BottomSheet/BottomSheet.svelte.d.ts.map +1 -1
  43. package/dist/primitives/Breadcrumb/Breadcrumb.svelte +6 -5
  44. package/dist/primitives/Breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
  45. package/dist/primitives/Button/Button.svelte +16 -8
  46. package/dist/primitives/Button/Button.svelte.d.ts.map +1 -1
  47. package/dist/primitives/Button/ButtonSaveDemo.svelte +2 -1
  48. package/dist/primitives/Button/ButtonSaveDemo.svelte.d.ts.map +1 -1
  49. package/dist/primitives/Card.svelte +1 -1
  50. package/dist/primitives/DarkModeToggle.svelte +43 -44
  51. package/dist/primitives/DarkModeToggle.svelte.d.ts.map +1 -1
  52. package/dist/primitives/Drawer/Drawer.svelte +121 -47
  53. package/dist/primitives/Drawer/Drawer.svelte.d.ts +4 -0
  54. package/dist/primitives/Drawer/Drawer.svelte.d.ts.map +1 -1
  55. package/dist/primitives/Input/Input.svelte +41 -80
  56. package/dist/primitives/Input/Input.svelte.d.ts +4 -6
  57. package/dist/primitives/Input/Input.svelte.d.ts.map +1 -1
  58. package/dist/primitives/Input/Select.svelte +66 -13
  59. package/dist/primitives/Input/Select.svelte.d.ts +2 -0
  60. package/dist/primitives/Input/Select.svelte.d.ts.map +1 -1
  61. package/dist/primitives/Input/Textarea.svelte +5 -3
  62. package/dist/primitives/Input/Textarea.svelte.d.ts.map +1 -1
  63. package/dist/primitives/Modal/Modal.svelte +13 -1
  64. package/dist/primitives/Modal/Modal.svelte.d.ts.map +1 -1
  65. package/dist/primitives/Pagination/Pagination.svelte +3 -2
  66. package/dist/primitives/Pagination/Pagination.svelte.d.ts.map +1 -1
  67. package/dist/primitives/Tabs/Tabs.svelte +4 -3
  68. package/dist/primitives/Tabs/Tabs.svelte.d.ts.map +1 -1
  69. package/dist/recipes/CropImage/CropImage.svelte +10 -5
  70. package/dist/recipes/CropImage/CropImage.svelte.d.ts.map +1 -1
  71. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte +125 -0
  72. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte.d.ts +28 -0
  73. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte.d.ts.map +1 -0
  74. package/dist/recipes/ImageUploader/ImageUploader.svelte +939 -0
  75. package/dist/recipes/ImageUploader/ImageUploader.svelte.d.ts +60 -0
  76. package/dist/recipes/ImageUploader/ImageUploader.svelte.d.ts.map +1 -0
  77. package/dist/recipes/SuperLogin/SuperLogin.svelte +37 -40
  78. package/dist/recipes/SuperLogin/SuperLogin.svelte.d.ts.map +1 -1
  79. package/dist/recipes/feedback/EmptyState/EmptyState.svelte +3 -2
  80. package/dist/recipes/feedback/EmptyState/EmptyState.svelte.d.ts.map +1 -1
  81. package/dist/recipes/fields/CheckboxField.svelte +3 -2
  82. package/dist/recipes/fields/CheckboxField.svelte.d.ts.map +1 -1
  83. package/dist/recipes/fields/FormField.svelte +12 -4
  84. package/dist/recipes/fields/FormField.svelte.d.ts +3 -1
  85. package/dist/recipes/fields/FormField.svelte.d.ts.map +1 -1
  86. package/dist/recipes/fields/RadioGroup.svelte +13 -4
  87. package/dist/recipes/fields/RadioGroup.svelte.d.ts +4 -1
  88. package/dist/recipes/fields/RadioGroup.svelte.d.ts.map +1 -1
  89. package/dist/recipes/fields/SelectField.svelte +12 -3
  90. package/dist/recipes/fields/SelectField.svelte.d.ts +4 -1
  91. package/dist/recipes/fields/SelectField.svelte.d.ts.map +1 -1
  92. package/dist/recipes/fields/TextareaField.svelte +2 -1
  93. package/dist/recipes/fields/TextareaField.svelte.d.ts.map +1 -1
  94. package/dist/recipes/fields/ToggleField.svelte +3 -2
  95. package/dist/recipes/fields/ToggleField.svelte.d.ts.map +1 -1
  96. package/dist/recipes/inputs/MultiSelect.svelte +8 -7
  97. package/dist/recipes/inputs/MultiSelect.svelte.d.ts.map +1 -1
  98. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte +9 -9
  99. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts.map +1 -1
  100. package/dist/recipes/inputs/Search.svelte +7 -6
  101. package/dist/recipes/inputs/Search.svelte.d.ts.map +1 -1
  102. package/dist/recipes/modals/AlertModal.svelte +3 -2
  103. package/dist/recipes/modals/AlertModal.svelte.d.ts.map +1 -1
  104. package/dist/recipes/modals/ConfirmationModal.svelte +4 -3
  105. package/dist/recipes/modals/ConfirmationModal.svelte.d.ts.map +1 -1
  106. package/dist/recipes/modals/InputModal.svelte +9 -8
  107. package/dist/recipes/modals/InputModal.svelte.d.ts.map +1 -1
  108. package/dist/recipes/modals/ModalStateManager.svelte +4 -3
  109. package/dist/recipes/modals/ModalStateManager.svelte.d.ts.map +1 -1
  110. package/dist/recipes/modals/StatusModal.svelte +5 -4
  111. package/dist/recipes/modals/StatusModal.svelte.d.ts.map +1 -1
  112. package/dist/stories/ButtonAuditReview.svelte +361 -397
  113. package/dist/stories/ButtonAuditReview.svelte.d.ts +24 -4
  114. package/dist/stories/ButtonAuditReview.svelte.d.ts.map +1 -1
  115. package/dist/tokens/index.d.ts +4 -8
  116. package/dist/tokens/index.d.ts.map +1 -1
  117. package/dist/tokens/index.js +4 -8
  118. package/dist/tokens/typography.d.ts +76 -169
  119. package/dist/tokens/typography.d.ts.map +1 -1
  120. package/dist/tokens/typography.js +93 -62
  121. package/package.json +4 -2
@@ -1,6 +1,7 @@
1
1
  <script lang="ts">
2
2
  import Toggle from '../../primitives/Toggle.svelte';
3
3
  import ValidationError from '../../primitives/ValidationError.svelte';
4
+ import { typography } from '../../tokens/typography';
4
5
 
5
6
  interface Props {
6
7
  /** Whether the toggle is checked */
@@ -38,12 +39,12 @@
38
39
  {#if label || description}
39
40
  <div class="flex flex-col">
40
41
  {#if label}
41
- <span class="text-sm font-medium text-gray-900 dark:text-white {error ? 'text-red-500' : ''}">
42
+ <span class={`${typography.label} ${error ? 'text-red-500' : ''}`}>
42
43
  {label}
43
44
  </span>
44
45
  {/if}
45
46
  {#if description}
46
- <span class="text-sm text-gray-500 dark:text-gray-400">{description}</span>
47
+ <span class={typography.smMuted}>{description}</span>
47
48
  {/if}
48
49
  </div>
49
50
  {/if}
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleField.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/fields/ToggleField.svelte.ts"],"names":[],"mappings":"AAOE,UAAU,KAAK;IACb,oCAAoC;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;CACnD;AAwCH,QAAA,MAAM,WAAW,kDAAwC,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"ToggleField.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/fields/ToggleField.svelte.ts"],"names":[],"mappings":"AAQE,UAAU,KAAK;IACb,oCAAoC;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,8CAA8C;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;CACnD;AAyCH,QAAA,MAAM,WAAW,kDAAwC,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}
@@ -1,5 +1,6 @@
1
1
  <script>
2
2
  import { CloseOutline, ChevronDownOutline } from "../../primitives/Icons";
3
+ import { typography } from '../../tokens/typography';
3
4
 
4
5
  // Props matching old Flowbite wrapper for drop-in replacement
5
6
  let {
@@ -139,7 +140,7 @@
139
140
  <div class="flex flex-col gap-2 w-full">
140
141
  {#if label}
141
142
  <div class="flex justify-start items-center gap-1">
142
- <label for={id || name} class="text-sm font-medium text-gray-900 dark:text-white leading-tight">
143
+ <label for={id || name} class={`${typography.label} leading-tight`}>
143
144
  {label}{#if required}<span class="text-red-500 font-medium text-sm ml-0.5">*</span>{/if}
144
145
  </label>
145
146
  </div>
@@ -165,8 +166,8 @@
165
166
  {#if hasSelection}
166
167
  <div class="flex flex-wrap gap-1.5">
167
168
  {#each selectedItems as item}
168
- <span class="inline-flex items-center px-2 py-1 text-sm font-medium bg-blue-100 rounded dark:bg-blue-900">
169
- <span class="overflow-hidden text-ellipsis whitespace-nowrap text-gray-900 dark:text-white" style="color-scheme: light dark;">{item.name}</span>
169
+ <span class="inline-flex items-center px-2 py-1 bg-blue-100 rounded dark:bg-blue-900">
170
+ <span class={`${typography.sm} overflow-hidden text-ellipsis whitespace-nowrap`} style="color-scheme: light dark;">{item.name}</span>
170
171
  <button
171
172
  type="button"
172
173
  class="inline-flex items-center p-0.5 ms-1.5 text-sm text-blue-400 bg-transparent rounded-sm hover:bg-blue-200 hover:text-blue-900 dark:hover:bg-blue-800 dark:hover:text-blue-300"
@@ -179,7 +180,7 @@
179
180
  {/each}
180
181
  </div>
181
182
  {:else}
182
- <span class="text-gray-500 dark:text-gray-400 font-medium text-sm">{placeholder}</span>
183
+ <span class={typography.smMuted}>{placeholder}</span>
183
184
  {/if}
184
185
  </div>
185
186
 
@@ -194,7 +195,7 @@
194
195
  <CloseOutline class="w-3.5 h-3.5" />
195
196
  </button>
196
197
  {/if}
197
- <ChevronDownOutline class="w-4 h-4 shrink-0 text-gray-500 dark:text-gray-400 transition-transform duration-200 {isOpen ? 'rotate-180' : ''}" />
198
+ <ChevronDownOutline class={`w-4 h-4 shrink-0 ${typography.iconMuted} transition-transform duration-200 ${isOpen ? 'rotate-180' : ''}`} />
198
199
  </div>
199
200
  </button>
200
201
 
@@ -214,7 +215,7 @@
214
215
  <!-- svelte-ignore a11y_click_events_have_key_events -->
215
216
  <li
216
217
  id="{id || name}-option-{index}"
217
- class="flex items-center gap-2 px-3 py-2 cursor-pointer text-sm text-gray-900 dark:text-white transition-colors
218
+ class="flex items-center gap-2 px-3 py-2 cursor-pointer transition-colors {typography.sm}
218
219
  {index === focusedIndex || value.includes(item.value) ? 'bg-gray-100 dark:bg-gray-600' : 'hover:bg-gray-100 dark:hover:bg-gray-600'}"
219
220
  role="option"
220
221
  aria-selected={value.includes(item.value)}
@@ -238,6 +239,6 @@
238
239
  </div>
239
240
 
240
241
  {#if error}
241
- <p class="text-sm text-red-500 dark:text-red-400">{error}</p>
242
+ <p class={`${typography.sm} text-red-500 dark:text-red-400`}>{error}</p>
242
243
  {/if}
243
244
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"MultiSelect.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/inputs/MultiSelect.svelte.js"],"names":[],"mappings":";;;;;AAiNA;YAxM6B,GAAG,EAAE;YAAU,GAAG,EAAE;kBAAgB,MAAM;YAAU,MAAM;eAAa,OAAO;eAAa,OAAO;YAAU,MAAM;gBAAc,OAAO;qBAAmB,OAAO;WAAS,MAAM;SAAO,MAAM;WAAS,MAAM;cAAY,GAAG;gBAwM9L;wBAxMvC;IAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE"}
1
+ {"version":3,"file":"MultiSelect.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/inputs/MultiSelect.svelte.js"],"names":[],"mappings":";;;;;AAmNA;YAxM6B,GAAG,EAAE;YAAU,GAAG,EAAE;kBAAgB,MAAM;YAAU,MAAM;eAAa,OAAO;eAAa,OAAO;YAAU,MAAM;gBAAc,OAAO;qBAAmB,OAAO;WAAS,MAAM;SAAO,MAAM;WAAS,MAAM;cAAY,GAAG;gBAwM9L;wBAxMvC;IAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE"}
@@ -2,6 +2,7 @@
2
2
  import { SearchOutline } from "../../../primitives/Icons";
3
3
  import * as GMaps from '@googlemaps/js-api-loader';
4
4
  import { PUBLIC_GOOGLE_MAPS_API_KEY } from '../../../config.js';
5
+ import { typography } from '../../../tokens/typography';
5
6
  const { Loader } = GMaps;
6
7
 
7
8
  interface Props {
@@ -277,19 +278,19 @@
277
278
  class="relative rounded-lg {shouldAnimate ? 'transition-transform duration-200 focus-within:scale-[1.01]' : ''}"
278
279
  >
279
280
  <div class="pointer-events-none absolute inset-y-0 left-0 flex items-center pl-3 z-10">
280
- <SearchOutline class="w-5 h-5 text-gray-500 dark:text-gray-400" />
281
+ <SearchOutline class={`w-5 h-5 ${typography.iconMuted}`} />
281
282
  </div>
282
283
 
283
284
  <input
284
285
  bind:this={inputRef}
285
286
  type="text"
286
287
  name="location"
287
- class="block w-full h-10 pl-10 pr-2.5 py-2.5 bg-gray-50 border border-gray-300 text-gray-900 text-sm font-medium rounded-lg
288
+ class="block w-full h-10 pl-10 pr-2.5 py-2.5 bg-gray-50 border border-gray-300 rounded-lg {typography.label}
288
289
  focus:ring-blue-500 focus:border-blue-500 focus:outline-none
289
290
  hover:border-blue-500
290
291
  disabled:opacity-50 disabled:cursor-not-allowed
291
292
  placeholder:text-gray-500
292
- dark:bg-gray-700 dark:border-gray-600 dark:text-white dark:placeholder-gray-400
293
+ dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400
293
294
  dark:focus:ring-blue-500 dark:focus:border-blue-500
294
295
  dark:hover:border-blue-500"
295
296
  {placeholder}
@@ -303,9 +304,9 @@
303
304
 
304
305
  {#if results.length > 0}
305
306
  <div class="absolute inset-y-0 right-0 hidden md:flex items-center p-1.5 gap-1">
306
- <kbd class="inline-flex items-center justify-center px-1 border border-gray-300 rounded text-xs text-gray-500 bg-white dark:bg-gray-800 dark:border-gray-600 dark:text-gray-400">Esc</kbd>
307
- <kbd class="inline-flex items-center justify-center w-6 border border-gray-300 rounded text-xs text-gray-500 bg-white dark:bg-gray-800 dark:border-gray-600 dark:text-gray-400">&uArr;</kbd>
308
- <kbd class="inline-flex items-center justify-center w-6 border border-gray-300 rounded text-xs text-gray-500 bg-white dark:bg-gray-800 dark:border-gray-600 dark:text-gray-400">&dArr;</kbd>
307
+ <kbd class="inline-flex items-center justify-center px-1 border border-gray-300 rounded {typography.xsMuted} bg-white dark:bg-gray-800 dark:border-gray-600">Esc</kbd>
308
+ <kbd class="inline-flex items-center justify-center w-6 border border-gray-300 rounded {typography.xsMuted} bg-white dark:bg-gray-800 dark:border-gray-600">&uArr;</kbd>
309
+ <kbd class="inline-flex items-center justify-center w-6 border border-gray-300 rounded {typography.xsMuted} bg-white dark:bg-gray-800 dark:border-gray-600">&dArr;</kbd>
309
310
  </div>
310
311
 
311
312
  <ul
@@ -315,14 +316,13 @@
315
316
  >
316
317
  {#each results as place, i}
317
318
  <li
318
- class="cursor-pointer text-gray-900 transition-colors duration-100
319
- dark:text-white
319
+ class="cursor-pointer transition-colors duration-100 {typography.body}
320
320
  {i === currentSuggestion ? 'bg-gray-100 dark:bg-gray-700' : 'hover:bg-gray-100 dark:hover:bg-gray-700'}"
321
321
  id="option-{i + 1}"
322
322
  >
323
323
  <button
324
324
  type="button"
325
- class="block w-full text-left px-4 py-3 text-sm bg-transparent border-none cursor-pointer
325
+ class="block w-full text-left px-4 py-3 bg-transparent border-none cursor-pointer {typography.sm}
326
326
  focus:outline-none focus:bg-gray-100 dark:focus:bg-gray-700"
327
327
  tabindex={i + 1}
328
328
  onclick={() => onPlaceSelected(place.to_place, place.text)}
@@ -1 +1 @@
1
- {"version":3,"file":"PlaceAutocomplete.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.ts"],"names":[],"mappings":"AAQE,UAAU,KAAK;IACb,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA8SH,QAAA,MAAM,iBAAiB,sDAAwC,CAAC;AAChE,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC9D,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"PlaceAutocomplete.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.ts"],"names":[],"mappings":"AASE,UAAU,KAAK;IACb,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAC5B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA8SH,QAAA,MAAM,iBAAiB,sDAAwC,CAAC;AAChE,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC9D,eAAe,iBAAiB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  <script>
2
2
  import { SearchOutline } from "../../primitives/Icons";
3
+ import { typography } from '../../tokens/typography';
3
4
 
4
5
  // API compatible with flowbite-svelte Search
5
6
  let {
@@ -23,9 +24,9 @@
23
24
  } = $props();
24
25
 
25
26
  const sizes = {
26
- sm: { icon: "w-3.5 h-3.5", input: "h-8 text-xs pl-8", wrapper: "h-8" },
27
- md: { icon: "w-4 h-4", input: "h-10 text-sm pl-9", wrapper: "h-10" },
28
- lg: { icon: "w-5 h-5", input: "h-11 text-sm pl-10", wrapper: "h-11" }
27
+ sm: { icon: "w-3.5 h-3.5", input: `h-8 ${typography.xs} pl-8`, wrapper: "h-8" },
28
+ md: { icon: "w-4 h-4", input: `h-10 ${typography.sm} pl-9`, wrapper: "h-10" },
29
+ lg: { icon: "w-5 h-5", input: `h-11 ${typography.sm} pl-10`, wrapper: "h-11" }
29
30
  };
30
31
 
31
32
  let sizeConfig = $derived(sizes[size] || sizes.lg);
@@ -58,7 +59,7 @@
58
59
 
59
60
  <div class="relative w-full {sizeConfig.wrapper} {className}">
60
61
  <div class="absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none">
61
- <SearchOutline class="text-gray-500 dark:text-gray-400 {sizeConfig.icon}" />
62
+ <SearchOutline class={`${typography.iconMuted} ${sizeConfig.icon}`} />
62
63
  </div>
63
64
  <input
64
65
  type="search"
@@ -66,7 +67,7 @@
66
67
  {name}
67
68
  {placeholder}
68
69
  {disabled}
69
- class="w-full pr-3 bg-gray-50 dark:bg-gray-700 text-gray-900 dark:text-white font-medium border border-gray-300 dark:border-gray-600 rounded-lg transition-colors focus:outline-none focus:ring-4 focus:ring-blue-300 dark:focus:ring-blue-800 focus:border-blue-500 hover:border-blue-500 placeholder-gray-500 dark:placeholder-gray-400 [&::-webkit-search-cancel-button]:appearance-none {sizeConfig.input} {disabled ? 'opacity-50 cursor-not-allowed' : ''}"
70
+ class="w-full pr-3 bg-gray-50 dark:bg-gray-700 font-medium border border-gray-300 dark:border-gray-600 rounded-lg transition-colors focus:outline-none focus:ring-4 focus:ring-blue-300 dark:focus:ring-blue-800 focus:border-blue-500 hover:border-blue-500 placeholder-gray-500 dark:placeholder-gray-400 [&::-webkit-search-cancel-button]:appearance-none {sizeConfig.input} {disabled ? 'opacity-50 cursor-not-allowed' : ''}"
70
71
  bind:value
71
72
  oninput={handleInput}
72
73
  onchange={handleChange}
@@ -77,7 +78,7 @@
77
78
  {...restProps}
78
79
  />
79
80
  {#if children}
80
- <div class="absolute inset-y-0 right-0 flex items-center text-gray-500 dark:text-gray-400">
81
+ <div class={`absolute inset-y-0 right-0 flex items-center ${typography.iconMuted}`}>
81
82
  {@render children()}
82
83
  </div>
83
84
  {/if}
@@ -1 +1 @@
1
- {"version":3,"file":"Search.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/inputs/Search.svelte.js"],"names":[],"mappings":";;;;;AA6EA;YApE6B,MAAM;kBAAgB,MAAM;WAAS,MAAM;eAAa,OAAO;SAAO,MAAM;WAAS,MAAM;YAAU,MAAM;aAAW,GAAG;cAAY,GAAG;eAAa,GAAG;aAAW,GAAG;aAAW,GAAG;YAAU,GAAG;cAAY,GAAG;sCAoExL;wBApElC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC"}
1
+ {"version":3,"file":"Search.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/inputs/Search.svelte.js"],"names":[],"mappings":";;;;;AA+EA;YApE6B,MAAM;kBAAgB,MAAM;WAAS,MAAM;eAAa,OAAO;SAAO,MAAM;WAAS,MAAM;YAAU,MAAM;aAAW,GAAG;cAAY,GAAG;eAAa,GAAG;aAAW,GAAG;aAAW,GAAG;YAAU,GAAG;cAAY,GAAG;sCAoExL;wBApElC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC"}
@@ -17,6 +17,7 @@
17
17
  import Modal from '../../primitives/Modal/Modal.svelte';
18
18
  import Button from '../../primitives/Button/Button.svelte';
19
19
  import { CheckOutline, CloseOutline, ExclamationTriangleOutline, InfoCircleOutline } from '../../primitives/Icons';
20
+ import { typography } from '../../tokens/typography';
20
21
 
21
22
  let {
22
23
  /** Whether the modal is visible */
@@ -102,7 +103,7 @@
102
103
  </div>
103
104
  </div>
104
105
  {#if title}
105
- <h2 class="text-xl font-medium text-gray-900 dark:text-white mt-4">{title}</h2>
106
+ <h2 class={`${typography.h2} mt-4`}>{title}</h2>
106
107
  {/if}
107
108
  </div>
108
109
  {/snippet}
@@ -110,7 +111,7 @@
110
111
  {#snippet body()}
111
112
  <div class="text-center mt-4">
112
113
  {#if message}
113
- <p class="text-sm leading-relaxed text-gray-500 dark:text-gray-400">{message}</p>
114
+ <p class={`${typography.smMuted} leading-relaxed`}>{message}</p>
114
115
  {/if}
115
116
  </div>
116
117
  {/snippet}
@@ -1 +1 @@
1
- {"version":3,"file":"AlertModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/AlertModal.svelte.js"],"names":[],"mappings":";;;;;AAwIA;WA5G4B,OAAO;cAAY,MAAM;YAAU,MAAM;cAAY,MAAM;iBAAe,MAAM;gBAAc,MAAM;WAAS,MAAM;aAAW,GAAG;eAAa,GAAG;eA4GpH;wBA5GtC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,SAAS,EAAE,GAAG,CAAA;CAAE"}
1
+ {"version":3,"file":"AlertModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/AlertModal.svelte.js"],"names":[],"mappings":";;;;;AA0IA;WA5G4B,OAAO;cAAY,MAAM;YAAU,MAAM;cAAY,MAAM;iBAAe,MAAM;gBAAc,MAAM;WAAS,MAAM;aAAW,GAAG;eAAa,GAAG;eA4GpH;wBA5GtC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC;IAAC,SAAS,EAAE,GAAG,CAAA;CAAE"}
@@ -2,6 +2,7 @@
2
2
  import Button from "../../primitives/Button/Button.svelte";
3
3
  import Cancel from "../../assets/svg/cancel.svg";
4
4
  import Modal from "../../primitives/Modal/Modal.svelte";
5
+ import { typography } from '../../tokens/typography';
5
6
 
6
7
  let {
7
8
  show = $bindable(false),
@@ -111,7 +112,7 @@
111
112
  </div>
112
113
  {/if}
113
114
  {#if title}
114
- <h2 class="text-xl font-medium text-gray-900 dark:text-white">{title}</h2>
115
+ <h2 class={typography.h2}>{title}</h2>
115
116
  {/if}
116
117
  </div>
117
118
  {/snippet}
@@ -119,12 +120,12 @@
119
120
  {#snippet body()}
120
121
  <div class="text-center mt-4">
121
122
  {#if description}
122
- <p class="text-sm text-gray-500 dark:text-gray-400 leading-relaxed">
123
+ <p class={`${typography.smMuted} leading-relaxed`}>
123
124
  {description}
124
125
  </p>
125
126
  {/if}
126
127
  {#if warningText}
127
- <p class="mt-3 text-sm font-medium text-red-600 dark:text-red-400">
128
+ <p class={`${typography.label} text-red-600 dark:text-red-400 mt-3`}>
128
129
  {warningText}
129
130
  </p>
130
131
  {/if}
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmationModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/ConfirmationModal.svelte.js"],"names":[],"mappings":";;;;;AAyJA;WA7I4B,OAAO;WAAS,MAAM;YAAU,MAAM;kBAAgB,MAAM;kBAAgB,MAAM;cAAY,GAAG,EAAE;WAAS,GAAG;iBAAe,GAAG;eAAa,OAAO;wBAAsB,MAAM;0BAAwB,MAAM;cAAY,MAAM;cAAY,OAAO;eAAa,OAAO;eAAa,GAAG;cAAY,GAAG;aAAW,GAAG;qCA6IjR;wBA7I7C;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,UAAU,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC"}
1
+ {"version":3,"file":"ConfirmationModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/ConfirmationModal.svelte.js"],"names":[],"mappings":";;;;;AA2JA;WA7I4B,OAAO;WAAS,MAAM;YAAU,MAAM;kBAAgB,MAAM;kBAAgB,MAAM;cAAY,GAAG,EAAE;WAAS,GAAG;iBAAe,GAAG;eAAa,OAAO;wBAAsB,MAAM;0BAAwB,MAAM;cAAY,MAAM;cAAY,OAAO;eAAa,OAAO;eAAa,GAAG;cAAY,GAAG;aAAW,GAAG;qCA6IjR;wBA7I7C;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAAC,UAAU,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC"}
@@ -3,6 +3,7 @@
3
3
  import Button from "../../primitives/Button/Button.svelte";
4
4
  import Cancel from "../../assets/svg/cancel.svg";
5
5
  import Modal from "../../primitives/Modal/Modal.svelte";
6
+ import { typography } from '../../tokens/typography';
6
7
 
7
8
  let {
8
9
  show = $bindable(false),
@@ -88,7 +89,7 @@
88
89
  </div>
89
90
  {/if}
90
91
  {#if title}
91
- <h3 class="text-xl font-medium text-gray-900 dark:text-white">{title}</h3>
92
+ <h3 class={typography.h2}>{title}</h3>
92
93
  {/if}
93
94
  </div>
94
95
  {/snippet}
@@ -96,7 +97,7 @@
96
97
  {#snippet body()}
97
98
  <div class="text-left mt-4">
98
99
  {#if description}
99
- <p class="text-sm text-gray-500 dark:text-gray-400 leading-relaxed mb-4">
100
+ <p class={`${typography.smMuted} leading-relaxed mb-4`}>
100
101
  {description}
101
102
  </p>
102
103
  {/if}
@@ -105,7 +106,7 @@
105
106
  {#if inputLabel}
106
107
  <label
107
108
  for="modal-input"
108
- class="block text-sm font-medium text-gray-900 dark:text-white mb-2"
109
+ class={`${typography.label} block mb-2`}
109
110
  >
110
111
  {inputLabel}
111
112
  </label>
@@ -117,7 +118,7 @@
117
118
  bind:value={inputValue}
118
119
  placeholder={inputPlaceholder}
119
120
  rows={inputRows}
120
- class="w-full px-3 py-2 border {hasError ? 'border-red-500' : 'border-gray-300 dark:border-gray-600'} bg-gray-50 dark:bg-gray-700 text-gray-900 dark:text-white rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent resize-none"
121
+ class="w-full px-3 py-2 border {hasError ? 'border-red-500' : 'border-gray-300 dark:border-gray-600'} bg-gray-50 dark:bg-gray-700 {typography.body} rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent resize-none"
121
122
  disabled={disabled || loading}
122
123
  ></textarea>
123
124
  {:else}
@@ -125,7 +126,7 @@
125
126
  {#if inputIcon}
126
127
  {@const InputIconComponent = inputIcon}
127
128
  <div class="absolute inset-y-0 left-0 flex items-center pl-3 pointer-events-none">
128
- <InputIconComponent class="w-5 h-5 text-gray-500 dark:text-gray-400" />
129
+ <InputIconComponent class={`w-5 h-5 ${typography.iconMuted}`} />
129
130
  </div>
130
131
  {/if}
131
132
  <input
@@ -135,18 +136,18 @@
135
136
  placeholder={inputPlaceholder}
136
137
  required={inputRequired}
137
138
  disabled={disabled || loading}
138
- class="w-full {inputIcon ? 'pl-10' : 'px-3'} py-2 border {hasError ? 'border-red-500' : 'border-gray-300 dark:border-gray-600'} rounded-lg text-gray-900 dark:text-white bg-white dark:bg-gray-700 focus:ring-2 focus:ring-blue-500 focus:border-transparent disabled:opacity-50 disabled:cursor-not-allowed"
139
+ class="w-full {inputIcon ? 'pl-10' : 'px-3'} py-2 border {hasError ? 'border-red-500' : 'border-gray-300 dark:border-gray-600'} rounded-lg {typography.body} bg-white dark:bg-gray-700 focus:ring-2 focus:ring-blue-500 focus:border-transparent disabled:opacity-50 disabled:cursor-not-allowed"
139
140
  />
140
141
  </div>
141
142
  {/if}
142
143
 
143
144
  {#if hasError && (errorMessage || emailError)}
144
- <p class="mt-2 text-sm text-red-600 dark:text-red-400 font-medium flex items-center gap-1">
145
+ <p class={`${typography.label} text-red-600 dark:text-red-400 mt-2 flex items-center gap-1`}>
145
146
  <ExclamationTriangleOutline class="w-4 h-4" />
146
147
  {emailError ? "Please enter a valid email address" : errorMessage}
147
148
  </p>
148
149
  {:else if helpText && !hasError}
149
- <p class="text-xs font-normal text-gray-500 dark:text-gray-400 pt-2">
150
+ <p class={`${typography.xsMuted} pt-2`}>
150
151
  {helpText}
151
152
  </p>
152
153
  {/if}
@@ -1 +1 @@
1
- {"version":3,"file":"InputModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/InputModal.svelte.js"],"names":[],"mappings":";;;;;AAmKA;WArJ4B,OAAO;WAAS,MAAM;YAAU,MAAM;kBAAgB,MAAM;eAAa,OAAO;iBAAe,OAAO;iBAAe,MAAM;uBAAqB,MAAM;gBAAc,MAAM;iBAAe,MAAM;oBAAkB,OAAO;gBAAc,MAAM;gBAAc,GAAG;eAAa,MAAM;mBAAiB,MAAM;gBAAc,OAAO;oBAAkB,OAAO;wBAAsB,MAAM;0BAAwB,MAAM;2BAAyB,MAAM;eAAa,OAAO;cAAY,OAAO;eAAa,GAAG;cAAY,GAAG;aAAW,GAAG;8BAqJre;wBArJtC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE"}
1
+ {"version":3,"file":"InputModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/InputModal.svelte.js"],"names":[],"mappings":";;;;;AAqKA;WArJ4B,OAAO;WAAS,MAAM;YAAU,MAAM;kBAAgB,MAAM;eAAa,OAAO;iBAAe,OAAO;iBAAe,MAAM;uBAAqB,MAAM;gBAAc,MAAM;iBAAe,MAAM;oBAAkB,OAAO;gBAAc,MAAM;gBAAc,GAAG;eAAa,MAAM;mBAAiB,MAAM;gBAAc,OAAO;oBAAkB,OAAO;wBAAsB,MAAM;0BAAwB,MAAM;2BAAyB,MAAM;eAAa,OAAO;cAAY,OAAO;eAAa,GAAG;cAAY,GAAG;aAAW,GAAG;8BAqJre;wBArJtC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,QAAQ,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE"}
@@ -2,6 +2,7 @@
2
2
  import type { Snippet } from 'svelte';
3
3
  import Icon from "../../primitives/Icons/Icon.svelte";
4
4
  import Button from "../../primitives/Button/Button.svelte";
5
+ import { typography } from '../../tokens/typography';
5
6
 
6
7
  type IconName = "Home" | "Shows" | "Availability" | "Profile" | "Payment" | "Notification" | "More" | "MoreHori" | "Info" | "ChevronLeft" | "ChevronRight" | "Signout" | "CheckCircle" | "CheckCircleOutline" | "ErrorCircle" | "ArrowLeft" | "ArrowRight" | "Back" | "DownArrow" | "Message" | "Reload" | "Copy" | "Cross";
7
8
 
@@ -54,18 +55,18 @@
54
55
  <Icon name="Reload" size="20" />
55
56
  </span>
56
57
  </div>
57
- <p class="text-gray-900 dark:text-white text-center font-medium">{processingMessage}</p>
58
+ <p class={`${typography.body} text-center font-medium`}>{processingMessage}</p>
58
59
  </div>
59
60
  {:else if isSuccess}
60
61
  <div class="py-6 px-4 flex flex-col items-center justify-center gap-4">
61
62
  <div class={successIconColor}>
62
63
  <Icon name={successIcon} size="48" />
63
64
  </div>
64
- <h2 class="text-xl font-semibold text-gray-900 dark:text-white text-center">
65
+ <h2 class={`${typography.h2} text-center`}>
65
66
  {successTitle}
66
67
  </h2>
67
68
  {#if successMessage}
68
- <p class="text-gray-500 dark:text-gray-400 text-center text-sm">{successMessage}</p>
69
+ <p class={`${typography.smMuted} text-center`}>{successMessage}</p>
69
70
  {/if}
70
71
  <Button variant="default" size="full" onclick={onSuccessClose}>
71
72
  {successButtonText}
@@ -1 +1 @@
1
- {"version":3,"file":"ModalStateManager.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/ModalStateManager.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAKpC,KAAK,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,aAAa,GAAG,cAAc,GAAG,SAAS,GAAG,aAAa,GAAG,oBAAoB,GAAG,aAAa,GAAG,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAE5T,UAAU,KAAK;IACb,0DAA0D;IAC1D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gDAAgD;IAChD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oDAAoD;IACpD,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,sCAAsC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yCAAyC;IACzC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAqDH,QAAA,MAAM,iBAAiB,2CAAwC,CAAC;AAChE,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC9D,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"ModalStateManager.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/ModalStateManager.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAMpC,KAAK,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,aAAa,GAAG,cAAc,GAAG,SAAS,GAAG,aAAa,GAAG,oBAAoB,GAAG,aAAa,GAAG,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;AAE5T,UAAU,KAAK;IACb,0DAA0D;IAC1D,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gDAAgD;IAChD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oDAAoD;IACpD,WAAW,CAAC,EAAE,QAAQ,CAAC;IACvB,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oCAAoC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,sCAAsC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yCAAyC;IACzC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mCAAmC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAsDH,QAAA,MAAM,iBAAiB,2CAAwC,CAAC;AAChE,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC9D,eAAe,iBAAiB,CAAC"}
@@ -3,6 +3,7 @@
3
3
  import Button from "../../primitives/Button/Button.svelte";
4
4
  import Cancel from "../../assets/svg/cancel.svg";
5
5
  import Modal from "../../primitives/Modal/Modal.svelte";
6
+ import { typography } from '../../tokens/typography';
6
7
 
7
8
  let {
8
9
  show = $bindable(false),
@@ -130,10 +131,10 @@
130
131
  </div>
131
132
  <div class="mt-4">
132
133
  {#if title}
133
- <h2 class="text-xl font-medium text-gray-900 dark:text-white">{title}</h2>
134
+ <h2 class={typography.h2}>{title}</h2>
134
135
  {/if}
135
136
  {#if subtitle}
136
- <p class="text-sm text-gray-500 dark:text-gray-400 mt-1">{subtitle}</p>
137
+ <p class={`${typography.smMuted} mt-1`}>{subtitle}</p>
137
138
  {/if}
138
139
  </div>
139
140
  {:else}
@@ -157,7 +158,7 @@
157
158
  {/if}
158
159
  </div>
159
160
  {#if title}
160
- <h2 class="text-xl font-medium text-gray-900 dark:text-white mt-4">{title}</h2>
161
+ <h2 class={`${typography.h2} mt-4`}>{title}</h2>
161
162
  {/if}
162
163
  {/if}
163
164
  </div>
@@ -166,7 +167,7 @@
166
167
  {#snippet body()}
167
168
  <div class="text-center mt-4">
168
169
  {#if description}
169
- <p class="text-sm leading-relaxed {isProfileMode ? 'text-gray-900 dark:text-white font-medium' : 'text-gray-500 dark:text-gray-400'}">
170
+ <p class={`leading-relaxed ${isProfileMode ? `${typography.label}` : `${typography.smMuted}`}`}>
170
171
  {description}
171
172
  </p>
172
173
  {/if}
@@ -1 +1 @@
1
- {"version":3,"file":"StatusModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/StatusModal.svelte.js"],"names":[],"mappings":";;;;;AAwMA;WA1L4B,OAAO;WAAS,MAAM;YAAU,MAAM;eAAa,MAAM;kBAAgB,MAAM;iBAAe,MAAM;eAAa,MAAM;iBAAe,GAAG;YAAU,GAAG;eAAa,OAAO;cAAY,OAAO;cAAY,GAAG;cAAY,GAAG,EAAE;eAAa,OAAO;eAAa,GAAG;aAAW,GAAG;qCA0LjP;wBA1LvC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,GAAG,CAAC;IAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC"}
1
+ {"version":3,"file":"StatusModal.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/recipes/modals/StatusModal.svelte.js"],"names":[],"mappings":";;;;;AA0MA;WA1L4B,OAAO;WAAS,MAAM;YAAU,MAAM;eAAa,MAAM;kBAAgB,MAAM;iBAAe,MAAM;eAAa,MAAM;iBAAe,GAAG;YAAU,GAAG;eAAa,OAAO;cAAY,OAAO;cAAY,GAAG;cAAY,GAAG,EAAE;eAAa,OAAO;eAAa,GAAG;aAAW,GAAG;qCA0LjP;wBA1LvC;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,GAAG,CAAC;IAAC,KAAK,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,GAAG,CAAC;IAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,GAAG,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC"}