@getmicdrop/svelte-components 5.3.3 → 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 (194) 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 +19 -18
  4. package/dist/calendar/Calendar/MiniMonthCalendar.svelte.d.ts +6 -6
  5. package/dist/calendar/Calendar/MiniMonthCalendar.svelte.d.ts.map +1 -1
  6. package/dist/calendar/FAQs/FAQs.svelte +6 -5
  7. package/dist/calendar/FAQs/FAQs.svelte.d.ts.map +1 -1
  8. package/dist/calendar/MonthSwitcher/MonthSwitcher.svelte +3 -2
  9. package/dist/calendar/MonthSwitcher/MonthSwitcher.svelte.d.ts.map +1 -1
  10. package/dist/calendar/OrderSummary/OrderSummary.svelte +21 -20
  11. package/dist/calendar/OrderSummary/OrderSummary.svelte.d.ts +2 -2
  12. package/dist/calendar/OrderSummary/OrderSummary.svelte.d.ts.map +1 -1
  13. package/dist/calendar/PublicCard/PublicCard.svelte +9 -11
  14. package/dist/calendar/PublicCard/PublicCard.svelte.d.ts +2 -2
  15. package/dist/calendar/PublicCard/PublicCard.svelte.d.ts.map +1 -1
  16. package/dist/calendar/ShowCard/ShowCard.svelte +13 -12
  17. package/dist/calendar/ShowCard/ShowCard.svelte.d.ts +2 -2
  18. package/dist/calendar/ShowCard/ShowCard.svelte.d.ts.map +1 -1
  19. package/dist/calendar/ShowTimeCard/ShowTimeCard.svelte +5 -3
  20. package/dist/calendar/ShowTimeCard/ShowTimeCard.svelte.d.ts.map +1 -1
  21. package/dist/components/Layout/Section.svelte +4 -4
  22. package/dist/components/Layout/Section.svelte.d.ts.map +1 -1
  23. package/dist/index.d.ts +3 -0
  24. package/dist/index.js +9 -0
  25. package/dist/patterns/data/DataTable.svelte +4 -2
  26. package/dist/patterns/data/DataTable.svelte.d.ts.map +1 -1
  27. package/dist/patterns/forms/FormSection.svelte +4 -2
  28. package/dist/patterns/forms/FormSection.svelte.d.ts.map +1 -1
  29. package/dist/patterns/navigation/BottomNav.svelte +4 -3
  30. package/dist/patterns/navigation/BottomNav.svelte.d.ts.map +1 -1
  31. package/dist/patterns/navigation/Header.svelte +49 -37
  32. package/dist/patterns/navigation/Header.svelte.d.ts.map +1 -1
  33. package/dist/patterns/page/PageHeader.svelte +3 -2
  34. package/dist/patterns/page/PageHeader.svelte.d.ts.map +1 -1
  35. package/dist/patterns/page/PageLayout.svelte +3 -2
  36. package/dist/patterns/page/PageLayout.svelte.d.ts.map +1 -1
  37. package/dist/patterns/page/PageLoader.svelte +2 -1
  38. package/dist/patterns/page/PageLoader.svelte.d.ts.map +1 -1
  39. package/dist/patterns/page/SectionHeader.svelte +5 -3
  40. package/dist/patterns/page/SectionHeader.svelte.d.ts.map +1 -1
  41. package/dist/primitives/Accordion/Accordion.stories.svelte +75 -0
  42. package/dist/primitives/Accordion/Accordion.stories.svelte.d.ts +28 -0
  43. package/dist/primitives/Accordion/Accordion.stories.svelte.d.ts.map +1 -0
  44. package/dist/primitives/Accordion/Accordion.svelte +2 -1
  45. package/dist/primitives/Accordion/Accordion.svelte.d.ts.map +1 -1
  46. package/dist/primitives/Accordion/AccordionItem.svelte +5 -4
  47. package/dist/primitives/Accordion/AccordionItem.svelte.d.ts.map +1 -1
  48. package/dist/primitives/Alert/Alert.stories.svelte +88 -0
  49. package/dist/primitives/Alert/Alert.stories.svelte.d.ts +28 -0
  50. package/dist/primitives/Alert/Alert.stories.svelte.d.ts.map +1 -0
  51. package/dist/primitives/Avatar/Avatar.stories.svelte +94 -0
  52. package/dist/primitives/Avatar/Avatar.stories.svelte.d.ts +28 -0
  53. package/dist/primitives/Avatar/Avatar.stories.svelte.d.ts.map +1 -0
  54. package/dist/primitives/BottomSheet/BottomSheet.svelte +2 -1
  55. package/dist/primitives/BottomSheet/BottomSheet.svelte.d.ts.map +1 -1
  56. package/dist/primitives/Breadcrumb/Breadcrumb.svelte +7 -6
  57. package/dist/primitives/Breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
  58. package/dist/primitives/Button/Button.svelte +94 -43
  59. package/dist/primitives/Button/Button.svelte.d.ts +5 -3
  60. package/dist/primitives/Button/Button.svelte.d.ts.map +1 -1
  61. package/dist/primitives/Button/ButtonSaveDemo.svelte +2 -1
  62. package/dist/primitives/Button/ButtonSaveDemo.svelte.d.ts.map +1 -1
  63. package/dist/primitives/Card.svelte +1 -1
  64. package/dist/primitives/Checkbox/Checkbox.stories.svelte +84 -0
  65. package/dist/primitives/Checkbox/Checkbox.stories.svelte.d.ts +28 -0
  66. package/dist/primitives/Checkbox/Checkbox.stories.svelte.d.ts.map +1 -0
  67. package/dist/primitives/DarkModeToggle.svelte +43 -44
  68. package/dist/primitives/DarkModeToggle.svelte.d.ts.map +1 -1
  69. package/dist/primitives/Drawer/Drawer.stories.svelte +100 -0
  70. package/dist/primitives/Drawer/Drawer.stories.svelte.d.ts +28 -0
  71. package/dist/primitives/Drawer/Drawer.stories.svelte.d.ts.map +1 -0
  72. package/dist/primitives/Drawer/Drawer.svelte +121 -47
  73. package/dist/primitives/Drawer/Drawer.svelte.d.ts +4 -0
  74. package/dist/primitives/Drawer/Drawer.svelte.d.ts.map +1 -1
  75. package/dist/primitives/Dropdown/Dropdown.stories.svelte +137 -0
  76. package/dist/primitives/Dropdown/Dropdown.stories.svelte.d.ts +28 -0
  77. package/dist/primitives/Dropdown/Dropdown.stories.svelte.d.ts.map +1 -0
  78. package/dist/primitives/Dropdown/Dropdown.svelte +13 -15
  79. package/dist/primitives/Dropdown/Dropdown.svelte.d.ts.map +1 -1
  80. package/dist/primitives/Icons/Icon.svelte +2 -1
  81. package/dist/primitives/Icons/Icon.svelte.d.ts.map +1 -1
  82. package/dist/primitives/Input/Input.svelte +41 -80
  83. package/dist/primitives/Input/Input.svelte.d.ts +4 -6
  84. package/dist/primitives/Input/Input.svelte.d.ts.map +1 -1
  85. package/dist/primitives/Input/Select.stories.svelte +112 -0
  86. package/dist/primitives/Input/Select.stories.svelte.d.ts +28 -0
  87. package/dist/primitives/Input/Select.stories.svelte.d.ts.map +1 -0
  88. package/dist/primitives/Input/Select.svelte +66 -13
  89. package/dist/primitives/Input/Select.svelte.d.ts +2 -0
  90. package/dist/primitives/Input/Select.svelte.d.ts.map +1 -1
  91. package/dist/primitives/Input/Textarea.stories.svelte +137 -0
  92. package/dist/primitives/Input/Textarea.stories.svelte.d.ts +28 -0
  93. package/dist/primitives/Input/Textarea.stories.svelte.d.ts.map +1 -0
  94. package/dist/primitives/Input/Textarea.svelte +5 -3
  95. package/dist/primitives/Input/Textarea.svelte.d.ts.map +1 -1
  96. package/dist/primitives/Modal/Modal.svelte +13 -1
  97. package/dist/primitives/Modal/Modal.svelte.d.ts.map +1 -1
  98. package/dist/primitives/Pagination/Pagination.stories.svelte +76 -0
  99. package/dist/primitives/Pagination/Pagination.stories.svelte.d.ts +28 -0
  100. package/dist/primitives/Pagination/Pagination.stories.svelte.d.ts.map +1 -0
  101. package/dist/primitives/Pagination/Pagination.svelte +6 -5
  102. package/dist/primitives/Pagination/Pagination.svelte.d.ts +1 -1
  103. package/dist/primitives/Pagination/Pagination.svelte.d.ts.map +1 -1
  104. package/dist/primitives/Radio/Radio.stories.svelte +80 -0
  105. package/dist/primitives/Radio/Radio.stories.svelte.d.ts +28 -0
  106. package/dist/primitives/Radio/Radio.stories.svelte.d.ts.map +1 -0
  107. package/dist/primitives/Skeleton/Skeleton.stories.svelte +151 -0
  108. package/dist/primitives/Skeleton/Skeleton.stories.svelte.d.ts +28 -0
  109. package/dist/primitives/Skeleton/Skeleton.stories.svelte.d.ts.map +1 -0
  110. package/dist/primitives/Tabs/Tabs.stories.svelte +112 -0
  111. package/dist/primitives/Tabs/Tabs.stories.svelte.d.ts +28 -0
  112. package/dist/primitives/Tabs/Tabs.stories.svelte.d.ts.map +1 -0
  113. package/dist/primitives/Tabs/Tabs.svelte +5 -4
  114. package/dist/primitives/Tabs/Tabs.svelte.d.ts.map +1 -1
  115. package/dist/primitives/Toggle.svelte +4 -4
  116. package/dist/primitives/ValidationError.spec.js +25 -1
  117. package/dist/primitives/ValidationError.stories.svelte +24 -0
  118. package/dist/primitives/ValidationError.stories.svelte.d.ts.map +1 -1
  119. package/dist/primitives/ValidationError.svelte +8 -4
  120. package/dist/primitives/ValidationError.svelte.d.ts +2 -0
  121. package/dist/primitives/ValidationError.svelte.d.ts.map +1 -1
  122. package/dist/recipes/CropImage/CropImage.svelte +12 -7
  123. package/dist/recipes/CropImage/CropImage.svelte.d.ts.map +1 -1
  124. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte +125 -0
  125. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte.d.ts +28 -0
  126. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte.d.ts.map +1 -0
  127. package/dist/recipes/ImageUploader/ImageUploader.svelte +939 -0
  128. package/dist/recipes/ImageUploader/ImageUploader.svelte.d.ts +60 -0
  129. package/dist/recipes/ImageUploader/ImageUploader.svelte.d.ts.map +1 -0
  130. package/dist/recipes/SuperLogin/SuperLogin.svelte +71 -63
  131. package/dist/recipes/SuperLogin/SuperLogin.svelte.d.ts.map +1 -1
  132. package/dist/recipes/feedback/EmptyState/EmptyState.svelte +5 -3
  133. package/dist/recipes/feedback/EmptyState/EmptyState.svelte.d.ts.map +1 -1
  134. package/dist/recipes/fields/CheckboxField.svelte +3 -2
  135. package/dist/recipes/fields/CheckboxField.svelte.d.ts.map +1 -1
  136. package/dist/recipes/fields/FormField.svelte +12 -4
  137. package/dist/recipes/fields/FormField.svelte.d.ts +3 -1
  138. package/dist/recipes/fields/FormField.svelte.d.ts.map +1 -1
  139. package/dist/recipes/fields/RadioGroup.svelte +13 -4
  140. package/dist/recipes/fields/RadioGroup.svelte.d.ts +4 -1
  141. package/dist/recipes/fields/RadioGroup.svelte.d.ts.map +1 -1
  142. package/dist/recipes/fields/SelectField.svelte +12 -3
  143. package/dist/recipes/fields/SelectField.svelte.d.ts +4 -1
  144. package/dist/recipes/fields/SelectField.svelte.d.ts.map +1 -1
  145. package/dist/recipes/fields/TextareaField.svelte +2 -1
  146. package/dist/recipes/fields/TextareaField.svelte.d.ts.map +1 -1
  147. package/dist/recipes/fields/ToggleField.svelte +3 -2
  148. package/dist/recipes/fields/ToggleField.svelte.d.ts.map +1 -1
  149. package/dist/recipes/inputs/MultiSelect.svelte +8 -7
  150. package/dist/recipes/inputs/MultiSelect.svelte.d.ts.map +1 -1
  151. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte +9 -9
  152. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts.map +1 -1
  153. package/dist/recipes/inputs/Search.svelte +7 -6
  154. package/dist/recipes/inputs/Search.svelte.d.ts.map +1 -1
  155. package/dist/recipes/modals/AlertModal.svelte +3 -2
  156. package/dist/recipes/modals/AlertModal.svelte.d.ts.map +1 -1
  157. package/dist/recipes/modals/ConfirmationModal.svelte +4 -3
  158. package/dist/recipes/modals/ConfirmationModal.svelte.d.ts.map +1 -1
  159. package/dist/recipes/modals/InputModal.svelte +10 -8
  160. package/dist/recipes/modals/InputModal.svelte.d.ts.map +1 -1
  161. package/dist/recipes/modals/ModalStateManager.svelte +4 -3
  162. package/dist/recipes/modals/ModalStateManager.svelte.d.ts.map +1 -1
  163. package/dist/recipes/modals/StatusModal.svelte +5 -4
  164. package/dist/recipes/modals/StatusModal.svelte.d.ts.map +1 -1
  165. package/dist/stories/ButtonAuditReview.svelte +361 -397
  166. package/dist/stories/ButtonAuditReview.svelte.d.ts +24 -4
  167. package/dist/stories/ButtonAuditReview.svelte.d.ts.map +1 -1
  168. package/dist/stories/ComponentConsolidation.stories.svelte +276 -188
  169. package/dist/stories/ComponentConsolidation.stories.svelte.d.ts.map +1 -1
  170. package/dist/stories/PatternsGallery.stories.svelte +19 -0
  171. package/dist/stories/PatternsGallery.stories.svelte.d.ts +28 -0
  172. package/dist/stories/PatternsGallery.stories.svelte.d.ts.map +1 -0
  173. package/dist/stories/PatternsGallery.svelte +388 -0
  174. package/dist/stories/PatternsGallery.svelte.d.ts +4 -0
  175. package/dist/stories/PatternsGallery.svelte.d.ts.map +1 -0
  176. package/dist/stories/PrimitivesGallery.stories.svelte +19 -0
  177. package/dist/stories/PrimitivesGallery.stories.svelte.d.ts +28 -0
  178. package/dist/stories/PrimitivesGallery.stories.svelte.d.ts.map +1 -0
  179. package/dist/stories/PrimitivesGallery.svelte +752 -0
  180. package/dist/stories/PrimitivesGallery.svelte.d.ts +4 -0
  181. package/dist/stories/PrimitivesGallery.svelte.d.ts.map +1 -0
  182. package/dist/stories/RecipesGallery.stories.svelte +19 -0
  183. package/dist/stories/RecipesGallery.stories.svelte.d.ts +28 -0
  184. package/dist/stories/RecipesGallery.stories.svelte.d.ts.map +1 -0
  185. package/dist/stories/RecipesGallery.svelte +441 -0
  186. package/dist/stories/RecipesGallery.svelte.d.ts +4 -0
  187. package/dist/stories/RecipesGallery.svelte.d.ts.map +1 -0
  188. package/dist/tokens/index.d.ts +4 -8
  189. package/dist/tokens/index.d.ts.map +1 -1
  190. package/dist/tokens/index.js +4 -8
  191. package/dist/tokens/typography.d.ts +76 -169
  192. package/dist/tokens/typography.d.ts.map +1 -1
  193. package/dist/tokens/typography.js +93 -62
  194. package/package.json +6 -3
@@ -1,5 +1,6 @@
1
1
  <script>
2
2
  import { CloseOutline, LogoInstagram } from '../../primitives/Icons';
3
+ import { typography } from '../../tokens/typography';
3
4
 
4
5
  let {
5
6
  performers = [],
@@ -42,7 +43,7 @@
42
43
 
43
44
  <div class="flex flex-col gap-3">
44
45
  {#if showTitle}
45
- <h2 class="font-medium text-xl text-gray-900 dark:text-white">{title}</h2>
46
+ <h2 class="{typography.h2} text-xl">{title}</h2>
46
47
  {/if}
47
48
 
48
49
  {#if ShowImage && description}
@@ -53,22 +54,22 @@
53
54
 
54
55
  {#if description}
55
56
  {#if showFullDescription || description.length <= characterLimit || !showReadMore}
56
- <p class="text-sm leading-relaxed whitespace-pre-line text-gray-600 dark:text-gray-300">{description}</p>
57
+ <p class={`${typography.sm} leading-relaxed whitespace-pre-line`}>{description}</p>
57
58
  {#if showReadMore && description.length > characterLimit}
58
59
  <button
59
60
  onclick={toggleDescription}
60
- class="text-sm font-medium text-left hover:underline text-blue-700 dark:text-blue-500"
61
+ class={`${typography.label} text-left hover:underline text-blue-700 dark:text-blue-500`}
61
62
  >
62
63
  Show less
63
64
  </button>
64
65
  {/if}
65
66
  {:else}
66
- <p class="text-sm leading-relaxed whitespace-pre-line text-gray-600 dark:text-gray-300">
67
+ <p class={`${typography.sm} leading-relaxed whitespace-pre-line`}>
67
68
  {description.slice(0, characterLimit)}...
68
69
  </p>
69
70
  <button
70
71
  onclick={toggleDescription}
71
- class="text-sm font-medium text-left hover:underline text-blue-700 dark:text-blue-500"
72
+ class={`${typography.label} text-left hover:underline text-blue-700 dark:text-blue-500`}
72
73
  >
73
74
  Show more
74
75
  </button>
@@ -110,12 +111,12 @@
110
111
  <CloseOutline class="w-5 h-5" />
111
112
  </button>
112
113
 
113
- <p class="text-sm leading-relaxed pr-6 text-gray-600 dark:text-gray-300">
114
+ <p class="{typography.sm} leading-relaxed pr-6">
114
115
  {profile?.biography || ''}
115
116
  </p>
116
117
 
117
118
  {#if profile?.instagram || profile?.twitter}
118
- <div class="flex gap-2 items-center text-sm mt-3 pt-3 text-gray-500 dark:text-gray-400 border-t border-gray-200 dark:border-gray-600">
119
+ <div class="flex gap-2 items-center {typography.smMuted} mt-3 pt-3 border-t border-gray-200 dark:border-gray-600">
119
120
  <span>Follow {firstName}:</span>
120
121
  {#if profile?.instagram}
121
122
  <a
@@ -157,7 +158,7 @@
157
158
  alt={displayName || 'Performer'}
158
159
  class="size-16 rounded object-cover {!profile?.profileImage || performer.shouldBeHidden ? 'bg-gray-50 dark:bg-gray-700' : ''}"
159
160
  />
160
- <p class="text-xs text-center leading-tight line-clamp-2 text-gray-600 dark:text-gray-300">
161
+ <p class="{typography.xs} text-center leading-tight line-clamp-2">
161
162
  {#if !performer.shouldBeHidden}
162
163
  {displayName}
163
164
  {/if}
@@ -1 +1 @@
1
- {"version":3,"file":"AboutShow.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/AboutShow/AboutShow.svelte.js"],"names":[],"mappings":";;;;;AAiJA;iBAzIkC,GAAG,EAAE;gBAAc,MAAM;kBAAgB,MAAM;gBAAc,OAAO;YAAU,MAAM;mBAAiB,OAAO;;WAyItF;wBAzIrC;IAAE,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,WAAU;CAAE"}
1
+ {"version":3,"file":"AboutShow.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/AboutShow/AboutShow.svelte.js"],"names":[],"mappings":";;;;;AAmJA;iBAzIkC,GAAG,EAAE;gBAAc,MAAM;kBAAgB,MAAM;gBAAc,OAAO;YAAU,MAAM;mBAAiB,OAAO;;WAyItF;wBAzIrC;IAAE,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,WAAU;CAAE"}
@@ -1,6 +1,7 @@
1
1
  <script>
2
2
  import { ChevronLeftOutline, ChevronRightOutline, CheckCircleSolid } from '../../primitives/Icons';
3
3
  import Spinner from '../../primitives/Spinner/Spinner.svelte';
4
+ import { typography } from '../../tokens/typography';
4
5
 
5
6
  let {
6
7
  variant = 'availability',
@@ -13,9 +14,9 @@
13
14
  readOnly = false,
14
15
  showPartialPreview = true,
15
16
  disablePastNavigation = false,
16
- ondateSelect,
17
- ondayClick,
18
- onmonthChange,
17
+ onDateSelect,
18
+ onDayClick,
19
+ onMonthChange,
19
20
  } = $props();
20
21
 
21
22
  let currentDate = new Date();
@@ -193,15 +194,15 @@
193
194
 
194
195
  if (isSelected) {
195
196
  triggerHaptic('medium');
196
- ondateSelect?.({ date: day.dateStr, selected: false });
197
+ onDateSelect?.({ date: day.dateStr, selected: false });
197
198
  } else {
198
199
  triggerHaptic('light');
199
- ondateSelect?.({ date: day.dateStr, selected: true });
200
+ onDateSelect?.({ date: day.dateStr, selected: true });
200
201
  }
201
202
  } else if (variant === 'display' || variant === 'public') {
202
203
  if (day.hasEvents) {
203
204
  triggerHaptic('light');
204
- ondayClick?.({ date: day.dateStr, events: day.events });
205
+ onDayClick?.({ date: day.dateStr, events: day.events });
205
206
  }
206
207
  }
207
208
  }
@@ -218,15 +219,15 @@
218
219
 
219
220
  if (isSelected) {
220
221
  triggerHaptic('medium');
221
- ondateSelect?.({ date: day.dateStr, selected: false });
222
+ onDateSelect?.({ date: day.dateStr, selected: false });
222
223
  } else {
223
224
  triggerHaptic('light');
224
- ondateSelect?.({ date: day.dateStr, selected: true });
225
+ onDateSelect?.({ date: day.dateStr, selected: true });
225
226
  }
226
227
  } else if (variant === 'display' || variant === 'public') {
227
228
  if (day.hasEvents) {
228
229
  triggerHaptic('light');
229
- ondayClick?.({ date: day.dateStr, events: day.events });
230
+ onDayClick?.({ date: day.dateStr, events: day.events });
230
231
  }
231
232
  }
232
233
  }
@@ -279,7 +280,7 @@
279
280
  }
280
281
  }
281
282
  triggerHaptic('medium');
282
- onmonthChange?.({ year: currentYear, month: currentMonth });
283
+ onMonthChange?.({ year: currentYear, month: currentMonth });
283
284
  return;
284
285
  }
285
286
 
@@ -627,7 +628,7 @@
627
628
  {#if showNavigation}
628
629
  <header class="flex items-center justify-between mb-4 select-none">
629
630
  <div class="flex items-center gap-2" bind:this={monthDisplayEl}>
630
- <h2 class="text-3xl font-semibold text-gray-900 dark:text-white leading-tight m-0">{MONTH_NAMES[currentMonth]}</h2>
631
+ <h2 class={typography.h2}>{MONTH_NAMES[currentMonth]}</h2>
631
632
  {#if saveStatus && variant === 'availability'}
632
633
  <span class="flex items-center justify-center ml-1">
633
634
  {#if saveStatus === 'saving'}
@@ -709,7 +710,7 @@
709
710
  >
710
711
  {#each DAY_NAMES as dayName, i}
711
712
  <div
712
- class="flex items-end justify-center pb-1 text-xs font-normal text-gray-500 dark:text-gray-400 overflow-hidden leading-none sm:pb-2 sm:pt-1 sm:justify-end sm:pr-2 sm:text-lg sm:text-gray-900 sm:dark:text-white sm:border-b sm:border-gray-200 sm:dark:border-gray-700"
713
+ class="flex items-end justify-center pb-1 {typography.xsMuted} overflow-hidden leading-none sm:pb-2 sm:pt-1 sm:justify-end sm:pr-2 sm:text-lg sm:text-gray-900 sm:dark:text-white sm:border-b sm:border-gray-200 sm:dark:border-gray-700"
713
714
  role="columnheader"
714
715
  aria-label={["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"][i]}
715
716
  >
@@ -720,7 +721,7 @@
720
721
 
721
722
  {#each prevMonthPreviewDays as previewDay}
722
723
  <div class="flex flex-col items-center justify-start px-1 py-0.5 min-h-[56px] sm:min-h-[60px] md:min-h-[70px] lg:min-h-[80px] pointer-events-none bg-transparent shadow-[inset_0_-1px_0_0_rgb(229_231_235)] dark:shadow-[inset_0_-1px_0_0_rgb(55_65_81)] sm:shadow-none sm:p-2 sm:border-t sm:border-l sm:border-gray-200 sm:dark:border-gray-700 last:sm:border-r" role="gridcell" aria-disabled="true">
723
- <span class="text-sm font-medium text-gray-300 dark:text-gray-600 w-full text-center sm:text-lg sm:font-normal sm:text-right sm:mb-2">{previewDay.day}</span>
724
+ <span class="{typography.sm} text-gray-300 dark:text-gray-600 w-full text-center sm:text-lg sm:font-normal sm:text-right sm:mb-2">{previewDay.day}</span>
724
725
  </div>
725
726
  {/each}
726
727
 
@@ -745,8 +746,8 @@
745
746
  ontouchend={(e) => { e.preventDefault(); handleDayTap(e, day); }}
746
747
  onkeydown={(e) => handleDayKeydown(e, day)}
747
748
  >
748
- <span class="text-sm font-medium w-full text-center transition-transform duration-100 ease-out sm:text-lg sm:font-normal sm:text-right sm:mb-2
749
- {day.isPast ? 'text-gray-400 dark:text-gray-500' : 'text-gray-900 dark:text-white'}
749
+ <span class="{typography.sm} w-full text-center transition-transform duration-100 ease-out sm:text-lg sm:font-normal sm:text-right sm:mb-2
750
+ {day.isPast ? 'text-gray-400 dark:text-gray-500' : ''}
750
751
  {day.isSelected && !day.isPast && variant === 'availability' ? 'text-white font-semibold' : ''}">{day.day}</span>
751
752
  {#if variant !== 'availability' && day.hasEvents}
752
753
  <div class="flex gap-0.5 mt-0.5">
@@ -760,7 +761,7 @@
760
761
 
761
762
  {#each nextMonthPreviewDays as previewDay}
762
763
  <div class="flex flex-col items-center justify-start px-1 py-0.5 min-h-[56px] sm:min-h-[60px] md:min-h-[70px] lg:min-h-[80px] pointer-events-none bg-transparent shadow-[inset_0_-1px_0_0_rgb(229_231_235)] dark:shadow-[inset_0_-1px_0_0_rgb(55_65_81)] sm:shadow-none sm:p-2 sm:border-t sm:border-l sm:border-gray-200 sm:dark:border-gray-700 sm:border-b last:sm:border-r" role="gridcell" aria-disabled="true">
763
- <span class="text-sm font-medium text-gray-300 dark:text-gray-600 w-full text-center sm:text-lg sm:font-normal sm:text-right sm:mb-2">{previewDay.day}</span>
764
+ <span class="{typography.sm} text-gray-300 dark:text-gray-600 w-full text-center sm:text-lg sm:font-normal sm:text-right sm:mb-2">{previewDay.day}</span>
764
765
  </div>
765
766
  {/each}
766
767
  </div>
@@ -770,11 +771,11 @@
770
771
  <div class="flex items-center justify-center gap-6 pt-4">
771
772
  <div class="flex items-center gap-2">
772
773
  <span class="w-5 h-5 rounded bg-blue-700 dark:bg-blue-600 border border-blue-700 dark:border-blue-600"></span>
773
- <span class="text-sm text-gray-900 dark:text-white">Available</span>
774
+ <span class="{typography.sm}">Available</span>
774
775
  </div>
775
776
  <div class="flex items-center gap-2">
776
777
  <span class="w-5 h-5 rounded bg-gray-50 dark:bg-gray-700 border-2 border-gray-400 dark:border-gray-500"></span>
777
- <span class="text-sm text-gray-900 dark:text-white">Unavailable</span>
778
+ <span class="{typography.sm}">Unavailable</span>
778
779
  </div>
779
780
  </div>
780
781
  {/if}
@@ -14,9 +14,9 @@ declare const MiniMonthCalendar: import("svelte").Component<{
14
14
  readOnly?: boolean;
15
15
  showPartialPreview?: boolean;
16
16
  disablePastNavigation?: boolean;
17
- ondateSelect: any;
18
- ondayClick: any;
19
- onmonthChange: any;
17
+ onDateSelect: any;
18
+ onDayClick: any;
19
+ onMonthChange: any;
20
20
  }, {}, "selectedDates">;
21
21
  type $$ComponentProps = {
22
22
  variant?: string;
@@ -29,8 +29,8 @@ type $$ComponentProps = {
29
29
  readOnly?: boolean;
30
30
  showPartialPreview?: boolean;
31
31
  disablePastNavigation?: boolean;
32
- ondateSelect: any;
33
- ondayClick: any;
34
- onmonthChange: any;
32
+ onDateSelect: any;
33
+ onDayClick: any;
34
+ onMonthChange: any;
35
35
  };
36
36
  //# sourceMappingURL=MiniMonthCalendar.svelte.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MiniMonthCalendar.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/Calendar/MiniMonthCalendar.svelte.js"],"names":[],"mappings":";;;;;AA+sBA;cArsB+B,MAAM;oBAAkB,GAAG,EAAE;aAAW,GAAG,EAAE;iBAAe,MAAM;iBAAe,OAAO;qBAAmB,OAAO;sBAAoB,OAAO;eAAa,OAAO;yBAAuB,OAAO;4BAA0B,OAAO;kBAAgB,GAAG;gBAAc,GAAG;mBAAiB,GAAG;wBAqsBvP;wBArsB7C;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,GAAG,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC;IAAC,aAAa,EAAE,GAAG,CAAA;CAAE"}
1
+ {"version":3,"file":"MiniMonthCalendar.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/Calendar/MiniMonthCalendar.svelte.js"],"names":[],"mappings":";;;;;AAitBA;cArsB+B,MAAM;oBAAkB,GAAG,EAAE;aAAW,GAAG,EAAE;iBAAe,MAAM;iBAAe,OAAO;qBAAmB,OAAO;sBAAoB,OAAO;eAAa,OAAO;yBAAuB,OAAO;4BAA0B,OAAO;kBAAgB,GAAG;gBAAc,GAAG;mBAAiB,GAAG;wBAqsBvP;wBArsB7C;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,GAAG,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC;IAAC,aAAa,EAAE,GAAG,CAAA;CAAE"}
@@ -1,5 +1,6 @@
1
1
  <script>
2
2
  import { ChevronUpOutline } from "../../primitives/Icons";
3
+ import { typography } from '../../tokens/typography';
3
4
 
4
5
  let {
5
6
  faqs = [],
@@ -21,7 +22,7 @@
21
22
 
22
23
  <div class="flex flex-col gap-3">
23
24
  {#if showTitle}
24
- <h2 class="text-xl font-medium text-gray-900 dark:text-white">{title}</h2>
25
+ <h2 class={typography.h2}>{title}</h2>
25
26
  {/if}
26
27
 
27
28
  {#if items.length}
@@ -50,7 +51,7 @@
50
51
  aria-labelledby="accordion-heading-{index}"
51
52
  >
52
53
  <div class="p-5 border-b border-gray-200 dark:border-gray-700 {index === items.length - 1 ? 'border-b-0 rounded-b-lg' : ''}">
53
- <p class="text-sm text-gray-500 dark:text-gray-400 leading-relaxed">{answer}</p>
54
+ <p class="{typography.smMuted} leading-relaxed">{answer}</p>
54
55
  </div>
55
56
  </div>
56
57
  </div>
@@ -61,14 +62,14 @@
61
62
  {#each items as { question, answer }}
62
63
  <div>
63
64
  {#if question}
64
- <p class="text-sm font-medium text-gray-900 dark:text-white mb-1">{question}</p>
65
+ <p class="{typography.label} mb-1">{question}</p>
65
66
  {/if}
66
- <p class="text-sm text-gray-600 dark:text-gray-400 leading-relaxed">{answer}</p>
67
+ <p class="{typography.smMuted} leading-relaxed">{answer}</p>
67
68
  </div>
68
69
  {/each}
69
70
  </div>
70
71
  {/if}
71
72
  {:else}
72
- <p class="text-sm text-gray-500 dark:text-gray-400">No FAQs available.</p>
73
+ <p class="{typography.smMuted}">No FAQs available.</p>
73
74
  {/if}
74
75
  </div>
@@ -1 +1 @@
1
- {"version":3,"file":"FAQs.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/FAQs/FAQs.svelte.js"],"names":[],"mappings":";;;;;AAwEA;WAhE4B,GAAG,EAAE;YAAU,MAAM;gBAAc,OAAO;gBAAc,OAAO;WAgExC;wBAhEhC;IAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE"}
1
+ {"version":3,"file":"FAQs.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/FAQs/FAQs.svelte.js"],"names":[],"mappings":";;;;;AA0EA;WAhE4B,GAAG,EAAE;YAAU,MAAM;gBAAc,OAAO;gBAAc,OAAO;WAgExC;wBAhEhC;IAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE"}
@@ -1,5 +1,6 @@
1
1
  <script>
2
2
  import { ChevronLeftOutline, ChevronRightOutline } from '../../primitives/Icons';
3
+ import { typography } from '../../tokens/typography';
3
4
 
4
5
  const today = new Date();
5
6
  const todayLocalMonth = today.getMonth();
@@ -61,7 +62,7 @@
61
62
  </script>
62
63
 
63
64
  <header class="w-full flex items-center justify-between select-none">
64
- <h2 class="text-3xl font-semibold text-gray-900 dark:text-white">
65
+ <h2 class="{typography.h1} text-3xl">
65
66
  {new Intl.DateTimeFormat("en", {
66
67
  month: "long",
67
68
  }).format(new Date(currentYear, currentMonth, 1))}
@@ -87,7 +88,7 @@
87
88
  <ChevronLeftOutline class="w-5 h-5" />
88
89
  </button>
89
90
  <button
90
- class="text-sm font-medium px-3 py-1 border border-gray-300 dark:border-gray-600 rounded-lg bg-transparent text-gray-900 dark:text-white cursor-pointer select-none transition-transform duration-100 ease-out hover:bg-blue-700 hover:text-white hover:border-blue-700 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 focus-visible:ring-offset-2 disabled:opacity-40 disabled:cursor-not-allowed disabled:text-gray-500 dark:disabled:text-gray-400"
91
+ class="{`${typography.label} px-3 py-1 border border-gray-300 dark:border-gray-600 rounded-lg bg-transparent cursor-pointer select-none transition-transform duration-100 ease-out hover:bg-blue-700 hover:text-white hover:border-blue-700 focus:outline-none focus-visible:ring-2 focus-visible:ring-blue-600 focus-visible:ring-offset-2 disabled:opacity-40 disabled:cursor-not-allowed disabled:text-gray-500 dark:disabled:text-gray-400`}"
91
92
  class:scale-95={todayPressed}
92
93
  class:bg-blue-700={todayPressed}
93
94
  class:text-white={todayPressed}
@@ -1 +1 @@
1
- {"version":3,"file":"MonthSwitcher.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/MonthSwitcher/MonthSwitcher.svelte.js"],"names":[],"mappings":";;;;;AAwFA;;;;;;4BA5E+L,OAAO;WA4E1I;wBA5EzC;IAAE,WAAW,CAAC,SAAwB;IAAC,YAAY,CAAC,SAAyB;IAAC,UAAU,CAAC,WAAW;IAAC,UAAU,CAAC,WAAW;IAAC,WAAW,CAAC,WAAW;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAE"}
1
+ {"version":3,"file":"MonthSwitcher.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/MonthSwitcher/MonthSwitcher.svelte.js"],"names":[],"mappings":";;;;;AA0FA;;;;;;4BA5E+L,OAAO;WA4E1I;wBA5EzC;IAAE,WAAW,CAAC,SAAwB;IAAC,YAAY,CAAC,SAAyB;IAAC,UAAU,CAAC,WAAW;IAAC,UAAU,CAAC,WAAW;IAAC,WAAW,CAAC,WAAW;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAE"}
@@ -3,6 +3,7 @@
3
3
  import { cubicOut } from 'svelte/easing';
4
4
  import { ChevronDownOutline, CloseOutline } from '../../primitives/Icons';
5
5
  import Spinner from '../../primitives/Spinner/Spinner.svelte';
6
+ import { typography } from '../../tokens/typography';
6
7
 
7
8
  let {
8
9
  loading = false,
@@ -23,7 +24,7 @@
23
24
  maxServiceFeeCents: 0,
24
25
  taxPercentage: 0,
25
26
  },
26
- onpriceUpdate,
27
+ onPriceUpdate,
27
28
  } = $props();
28
29
 
29
30
  let showOrderSummaryOnMobile = $state(false);
@@ -101,7 +102,7 @@
101
102
  let total = $derived(Math.max(0, subtotal + fees + taxes - (promoApplied && !currentPromoRule?.provideDiscount ? promoDiscount : 0)));
102
103
 
103
104
  $effect(() => {
104
- onpriceUpdate?.({ subtotal, fees, taxes, total, promoSavings });
105
+ onPriceUpdate?.({ subtotal, fees, taxes, total, promoSavings });
105
106
  });
106
107
  </script>
107
108
 
@@ -110,15 +111,15 @@
110
111
  class="hidden min-[872px]:block h-fit rounded-lg bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600"
111
112
  >
112
113
  <div class="px-5 py-4 border-b border-gray-200 dark:border-gray-600">
113
- <h2 class="text-lg font-semibold text-gray-900 dark:text-white">
114
+ <h3 class={typography.h3}>
114
115
  Order summary
115
- </h2>
116
+ </h3>
116
117
  </div>
117
118
 
118
119
  <div class="px-5 pb-5">
119
120
  {#if totalQuantity === 0}
120
121
  <div class="py-8 text-center">
121
- <p class="text-gray-500 dark:text-gray-400 text-sm">Select tickets to continue</p>
122
+ <p class="{typography.smMuted}">Select tickets to continue</p>
122
123
  </div>
123
124
  {:else}
124
125
  {#each Object.keys(quantities) as key}
@@ -127,8 +128,8 @@
127
128
  {#if ticket.ID == key}
128
129
  <div class="flex justify-between py-3 border-b border-gray-200/50 dark:border-gray-600/50">
129
130
  <div>
130
- <p class="font-medium text-gray-900 dark:text-white">{ticket.name}</p>
131
- <p class="text-sm text-gray-500 dark:text-gray-400">
131
+ <p class="{typography.label}">{ticket.name}</p>
132
+ <p class="{typography.smMuted}">
132
133
  {#if ticket.price === 0}
133
134
  Free x {quantities[key]}
134
135
  {:else}
@@ -136,7 +137,7 @@
136
137
  {/if}
137
138
  </p>
138
139
  </div>
139
- <div class="font-medium text-gray-900 dark:text-white">
140
+ <div class="{typography.label}">
140
141
  {ticket.price === 0
141
142
  ? 'Free'
142
143
  : `$${(ticket.price * quantities[key]).toFixed(2)}`}
@@ -147,7 +148,7 @@
147
148
  {/if}
148
149
  {/each}
149
150
 
150
- <div class="flex flex-col py-3 gap-2 text-sm">
151
+ <div class="{`${typography.sm} flex flex-col py-3 gap-2`}">
151
152
  {#if promoSavings > 0 || (promoDiscount > 0 && !currentPromoRule?.provideDiscount)}
152
153
  <div class="flex justify-between text-gray-600 dark:text-gray-300">
153
154
  <span>Full Price</span><span>${subtotalWithoutDiscount.toFixed(2)}</span>
@@ -173,13 +174,13 @@
173
174
  </div>
174
175
  </div>
175
176
 
176
- <div class="flex justify-between font-semibold text-gray-900 dark:text-white py-4 text-lg border-t border-gray-200 dark:border-gray-600">
177
+ <div class="flex justify-between {typography.h3} py-4 text-lg border-t border-gray-200 dark:border-gray-600">
177
178
  <span>Total</span><span>${total.toFixed(2)}</span>
178
179
  </div>
179
180
  {/if}
180
181
 
181
182
  {#if totalQuantity > 0 && btnText === 'Place order'}
182
- <p class="text-xs text-gray-500 dark:text-gray-400 text-center mb-3">
183
+ <p class="{typography.xsMuted} text-center mb-3">
183
184
  By selecting Place order, I agree to the <a href="https://get-micdrop.com/tos" class="text-blue-700 dark:text-blue-500 underline hover:opacity-80" target="_blank" rel="noopener noreferrer">terms of service</a>
184
185
  </p>
185
186
  {/if}
@@ -218,7 +219,7 @@
218
219
  class="min-[872px]:hidden fixed bottom-0 left-0 w-full overflow-x-hidden overflow-y-auto z-50 max-h-[80vh] rounded-t-lg shadow-xl bg-white dark:bg-gray-800"
219
220
  >
220
221
  <div class="flex flex-row justify-between items-center px-5 py-4 border-b border-gray-200 dark:border-gray-600">
221
- <h2 class="text-xl font-semibold text-gray-900 dark:text-white">
222
+ <h2 class="{typography.h2} text-xl">
222
223
  Order summary
223
224
  </h2>
224
225
  <button
@@ -237,8 +238,8 @@
237
238
  {#if ticket.ID == key}
238
239
  <div class="flex justify-between py-4 border-b border-gray-200 dark:border-gray-600">
239
240
  <div>
240
- <p class="font-semibold text-gray-900 dark:text-white">{ticket.name}</p>
241
- <p class="text-sm text-gray-500 dark:text-gray-400">
241
+ <p class="{typography.h5}">{ticket.name}</p>
242
+ <p class="{typography.smMuted}">
242
243
  {#if ticket.price === 0}
243
244
  Free x {quantities[key]}
244
245
  {:else}
@@ -246,7 +247,7 @@
246
247
  {/if}
247
248
  </p>
248
249
  </div>
249
- <div class="font-semibold text-gray-900 dark:text-white">
250
+ <div class="{typography.h5}">
250
251
  {ticket.price === 0
251
252
  ? 'Free'
252
253
  : `$${(ticket.price * quantities[key]).toFixed(2)}`}
@@ -283,7 +284,7 @@
283
284
  </div>
284
285
  </div>
285
286
 
286
- <div class="flex justify-between font-bold text-gray-900 dark:text-white py-5 border-t border-gray-200 dark:border-gray-600">
287
+ <div class="flex justify-between {typography.h3} py-5 border-t border-gray-200 dark:border-gray-600">
287
288
  <span>Total</span><span>${total.toFixed(2)}</span>
288
289
  </div>
289
290
  </div>
@@ -297,15 +298,15 @@
297
298
  >
298
299
  <div class="flex items-stretch gap-3">
299
300
  <button class="flex flex-col justify-between items-start shrink-0 whitespace-nowrap bg-transparent border-none p-0 cursor-pointer touch-manipulation" onclick={makeOrderSummaryVisible}>
300
- <span class="flex items-center gap-1 text-sm font-normal text-gray-600 dark:text-gray-300">
301
+ <span class="{`${typography.sm} flex items-center gap-1 text-gray-600 dark:text-gray-300`}">
301
302
  {totalQuantity} {totalQuantity > 1 ? 'tickets' : 'ticket'}
302
- <ChevronDownOutline class="w-4 h-4 text-gray-500 dark:text-gray-400 transition-transform duration-200 {showOrderSummaryOnMobile ? 'rotate-180' : ''}" />
303
+ <ChevronDownOutline class={`w-4 h-4 ${typography.iconMuted} transition-transform duration-200 ${showOrderSummaryOnMobile ? 'rotate-180' : ''}`} />
303
304
  </span>
304
- <span class="text-xl font-bold text-gray-900 dark:text-white">${total.toFixed(2)}</span>
305
+ <span class="{typography.h2} text-xl">${total.toFixed(2)}</span>
305
306
  </button>
306
307
 
307
308
  <button
308
- class="flex-1 min-w-36 h-12 rounded-lg text-sm font-semibold touch-manipulation flex items-center justify-center {totalQuantity === 0 || !isAgreed ? 'bg-gray-200 dark:bg-gray-700 text-gray-500 dark:text-gray-400 cursor-not-allowed' : 'bg-blue-700 dark:bg-blue-600 text-white hover:bg-blue-800 dark:hover:bg-blue-700'}"
309
+ class="{`${typography.label} flex-1 min-w-36 h-12 rounded-lg touch-manipulation flex items-center justify-center ${totalQuantity === 0 || !isAgreed ? 'bg-gray-200 dark:bg-gray-700 text-gray-500 dark:text-gray-400 cursor-not-allowed' : 'bg-blue-700 dark:bg-blue-600 text-white hover:bg-blue-800 dark:hover:bg-blue-700'}`}"
309
310
  onclick={() => {
310
311
  if (executePurchase) {
311
312
  executePurchase(elements);
@@ -16,7 +16,7 @@ declare const OrderSummary: import("svelte").Component<{
16
16
  executePurchase?: any;
17
17
  elements?: any;
18
18
  venueServiceCharge?: Record<string, any>;
19
- onpriceUpdate: any;
19
+ onPriceUpdate: any;
20
20
  }, {}, "">;
21
21
  type $$ComponentProps = {
22
22
  loading?: boolean;
@@ -31,6 +31,6 @@ type $$ComponentProps = {
31
31
  executePurchase?: any;
32
32
  elements?: any;
33
33
  venueServiceCharge?: Record<string, any>;
34
- onpriceUpdate: any;
34
+ onPriceUpdate: any;
35
35
  };
36
36
  //# sourceMappingURL=OrderSummary.svelte.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrderSummary.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/OrderSummary/OrderSummary.svelte.js"],"names":[],"mappings":";;;;;AAkTA;cApS+B,OAAO;iBAAe,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;mBAAiB,GAAG,EAAE;qBAAmB,GAAG;eAAa,OAAO;cAAY,MAAM;mBAAiB,OAAO;oBAAkB,MAAM;uBAAqB,GAAG;sBAAoB,GAAG;eAAa,GAAG;yBAAuB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;mBAAiB,GAAG;WAoS5Q;wBApSxC;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,cAAc,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC;IAAC,eAAe,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,aAAa,EAAE,GAAG,CAAA;CAAE"}
1
+ {"version":3,"file":"OrderSummary.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/OrderSummary/OrderSummary.svelte.js"],"names":[],"mappings":";;;;;AAoTA;cApS+B,OAAO;iBAAe,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;mBAAiB,GAAG,EAAE;qBAAmB,GAAG;eAAa,OAAO;cAAY,MAAM;mBAAiB,OAAO;oBAAkB,MAAM;uBAAqB,GAAG;sBAAoB,GAAG;eAAa,GAAG;yBAAuB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;mBAAiB,GAAG;WAoS5Q;wBApSxC;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,cAAc,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC;IAAC,eAAe,CAAC,EAAE,GAAG,CAAC;IAAC,QAAQ,CAAC,EAAE,GAAG,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,aAAa,EAAE,GAAG,CAAA;CAAE"}
@@ -1,9 +1,11 @@
1
1
  <script>
2
+ import { typography } from '../../tokens/typography';
3
+
2
4
  let {
3
5
  events = [],
4
6
  view = "row",
5
7
  placeholderImage = null,
6
- oneventClick,
8
+ onEventClick,
7
9
  } = $props();
8
10
 
9
11
  let isSmallScreen = $state(false);
@@ -33,7 +35,7 @@
33
35
  });
34
36
 
35
37
  function handleEventClick(event) {
36
- oneventClick?.(event);
38
+ onEventClick?.(event);
37
39
  }
38
40
 
39
41
  function handleKeydown(e, event) {
@@ -111,16 +113,12 @@
111
113
  </span>
112
114
  {/if}
113
115
 
114
- <h3
115
- class="font-semibold text-gray-900 dark:text-white leading-tight line-clamp-2 {view === 'col'
116
- ? 'text-sm sm:text-base'
117
- : 'text-sm sm:text-lg'}"
118
- >
116
+ <h4 class="{typography.h4} leading-tight line-clamp-2">
119
117
  {event.name}
120
- </h3>
118
+ </h4>
121
119
 
122
120
  <div
123
- class="text-gray-600 dark:text-gray-400 {view === 'col' ? 'text-xs' : 'text-xs sm:text-sm'}"
121
+ class="{typography.textMuted} {view === 'col' ? 'text-xs' : 'text-xs sm:text-sm'}"
124
122
  >
125
123
  <span class="font-medium">
126
124
  {formatEventDate(event.date)}
@@ -132,13 +130,13 @@
132
130
  </div>
133
131
 
134
132
  {#if view === "row" && event.description}
135
- <p class="text-gray-500 dark:text-gray-400 text-xs sm:text-sm line-clamp-2 mt-1">
133
+ <p class="{typography.xsMuted} text-xs sm:text-sm line-clamp-2 mt-1">
136
134
  {event.description}
137
135
  </p>
138
136
  {/if}
139
137
 
140
138
  {#if event.doorsTimeline && view === "row"}
141
- <div class="text-xs text-gray-500 dark:text-gray-400">
139
+ <div class="{typography.xsMuted} text-xs">
142
140
  {event.doorsTimeline}
143
141
  </div>
144
142
  {/if}
@@ -7,12 +7,12 @@ declare const PublicCard: import("svelte").Component<{
7
7
  events?: any[];
8
8
  view?: string;
9
9
  placeholderImage?: any;
10
- oneventClick: any;
10
+ onEventClick: any;
11
11
  }, {}, "">;
12
12
  type $$ComponentProps = {
13
13
  events?: any[];
14
14
  view?: string;
15
15
  placeholderImage?: any;
16
- oneventClick: any;
16
+ onEventClick: any;
17
17
  };
18
18
  //# sourceMappingURL=PublicCard.svelte.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PublicCard.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/PublicCard/PublicCard.svelte.js"],"names":[],"mappings":";;;;;AAiIA;aA7H8B,GAAG,EAAE;WAAS,MAAM;uBAAqB,GAAG;kBAAgB,GAAG;WA6HpC;wBA7HtC;IAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC;IAAC,YAAY,EAAE,GAAG,CAAA;CAAE"}
1
+ {"version":3,"file":"PublicCard.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/calendar/PublicCard/PublicCard.svelte.js"],"names":[],"mappings":";;;;;AAmIA;aA3H8B,GAAG,EAAE;WAAS,MAAM;uBAAqB,GAAG;kBAAgB,GAAG;WA2HpC;wBA3HtC;IAAE,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC;IAAC,YAAY,EAAE,GAAG,CAAA;CAAE"}
@@ -1,6 +1,7 @@
1
1
  <script>
2
2
  import { ShareOutline, CheckOutline } from '../../primitives/Icons';
3
3
  import ShowTimeCard from '../ShowTimeCard/ShowTimeCard.svelte';
4
+ import { typography } from '../../tokens/typography';
4
5
 
5
6
  let {
6
7
  event = {},
@@ -31,7 +32,7 @@
31
32
  }
32
33
  return timeStr;
33
34
  },
34
- onshowtimeSelect,
35
+ onShowtimeSelect,
35
36
  } = $props();
36
37
 
37
38
  let selectedDate = $state(null);
@@ -39,7 +40,7 @@
39
40
 
40
41
  function handleSelect(e) {
41
42
  selectedDate = e.date;
42
- onshowtimeSelect?.({ date: e.date, ...e });
43
+ onShowtimeSelect?.({ date: e.date, ...e });
43
44
  }
44
45
 
45
46
  async function handleShare() {
@@ -78,9 +79,9 @@
78
79
  <div class="h-fit rounded-lg sm:px-5 py-4 md:border md:border-gray-200 md:dark:border-gray-700 bg-white dark:bg-gray-800">
79
80
  {#if showTitle}
80
81
  <div class="flex justify-between items-start gap-2 mb-4">
81
- <h1 class="flex-1 text-left font-semibold text-xl leading-tight text-gray-900 dark:text-white">
82
+ <h2 class="{typography.h2} flex-1 text-left">
82
83
  {event.name || ''}
83
- </h1>
84
+ </h2>
84
85
  <button
85
86
  class="flex-shrink-0 p-2 rounded-lg transition-colors hover:bg-gray-100 dark:hover:bg-gray-700 relative"
86
87
  aria-label="Share event"
@@ -95,19 +96,19 @@
95
96
  </div>
96
97
  {/if}
97
98
 
98
- <div class="space-y-1 text-sm">
99
- <p class="font-medium text-gray-900 dark:text-white">{formatDateTime(event.startDateTime)}</p>
99
+ <div class="space-y-1">
100
+ <p class="{typography.label}">{formatDateTime(event.startDateTime)}</p>
100
101
  {#if event.displayStartTime && event.doorsOpenTime}
101
- <p class="text-gray-600 dark:text-gray-400">Doors open {formatTimeline(event.doorsOpenTime)}</p>
102
+ <p class="{typography.smMuted}">Doors open {formatTimeline(event.doorsOpenTime)}</p>
102
103
  {/if}
103
104
  {#if event.displayEndTime && event.endDateTime}
104
- <p class="text-gray-600 dark:text-gray-400">Ends {formatTimeline(event.endDateTime)}</p>
105
+ <p class="{typography.smMuted}">Ends {formatTimeline(event.endDateTime)}</p>
105
106
  {/if}
106
107
  </div>
107
108
 
108
109
  {#if showtimes && showtimes.length > 1}
109
110
  <div class="mt-4 pt-4 border-t border-gray-200 dark:border-gray-700">
110
- <p class="text-sm mb-2 text-gray-500 dark:text-gray-400">More showtimes</p>
111
+ <p class="{typography.smMuted} mb-2">More showtimes</p>
111
112
  <div class="flex flex-wrap gap-2">
112
113
  {#each showtimes as showtime}
113
114
  <div class="w-24">
@@ -132,16 +133,16 @@
132
133
  rel="noopener noreferrer"
133
134
  class="group block"
134
135
  >
135
- <p class="text-sm font-medium transition-colors text-gray-900 dark:text-white group-hover:text-blue-700 dark:group-hover:text-blue-500">
136
+ <p class="{typography.label} transition-colors group-hover:text-blue-700 dark:group-hover:text-blue-500">
136
137
  {event.venue.name}
137
138
  </p>
138
- <p class="text-sm transition-colors text-gray-500 dark:text-gray-400 group-hover:text-blue-700 dark:group-hover:text-blue-500">
139
+ <p class="{typography.smMuted} transition-colors group-hover:text-blue-700 dark:group-hover:text-blue-500">
139
140
  {event.venue.address || ''}
140
141
  </p>
141
142
  </a>
142
143
 
143
144
  {#if event.hasAgeRestriction || event.ageRequirement || event.minimumAge}
144
- <p class="text-sm mt-2 text-gray-500 dark:text-gray-400">
145
+ <p class="{typography.smMuted} mt-2">
145
146
  {#if event.ageRequirement != null}
146
147
  {event.ageRequirement <= 1 ? 'All ages' : `${event.ageRequirement}+`}
147
148
  {:else if event.minimumAge != null}