@getmicdrop/svelte-components 1.0.2 → 1.0.4

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 (517) hide show
  1. package/README.md +98 -98
  2. package/dist/components/Alert/Alert.spec.d.ts +2 -0
  3. package/dist/components/Alert/Alert.spec.d.ts.map +1 -0
  4. package/dist/components/Alert/Alert.spec.js +170 -0
  5. package/dist/components/Alert/Alert.svelte +54 -0
  6. package/dist/components/Alert/Alert.svelte.d.ts +40 -0
  7. package/dist/components/Alert/Alert.svelte.d.ts.map +1 -0
  8. package/dist/components/Alert/AlertAudit.stories.svelte +241 -0
  9. package/dist/components/Alert/AlertAudit.stories.svelte.d.ts +31 -0
  10. package/dist/components/Alert/AlertAudit.stories.svelte.d.ts.map +1 -0
  11. package/dist/components/Badges/Badge.spec.d.ts +2 -0
  12. package/dist/components/Badges/Badge.spec.d.ts.map +1 -0
  13. package/dist/components/Badges/Badge.spec.js +103 -0
  14. package/dist/components/Badges/Badge.stories.svelte +87 -0
  15. package/dist/components/Badges/Badge.stories.svelte.d.ts +47 -0
  16. package/dist/components/Badges/Badge.stories.svelte.d.ts.map +1 -0
  17. package/dist/components/Badges/Badge.svelte +182 -0
  18. package/dist/components/Badges/Badge.svelte.d.ts +38 -0
  19. package/dist/components/Badges/Badge.svelte.d.ts.map +1 -0
  20. package/dist/components/Badges/BadgeAudit.stories.svelte +238 -0
  21. package/dist/components/Badges/BadgeAudit.stories.svelte.d.ts +31 -0
  22. package/dist/components/Badges/BadgeAudit.stories.svelte.d.ts.map +1 -0
  23. package/dist/components/BottomSheet/BottomSheet.spec.d.ts +2 -0
  24. package/dist/components/BottomSheet/BottomSheet.spec.d.ts.map +1 -0
  25. package/dist/components/BottomSheet/BottomSheet.spec.js +127 -0
  26. package/dist/components/BottomSheet/BottomSheet.stories.svelte +91 -0
  27. package/dist/components/BottomSheet/BottomSheet.stories.svelte.d.ts +45 -0
  28. package/dist/components/BottomSheet/BottomSheet.stories.svelte.d.ts.map +1 -0
  29. package/dist/components/BottomSheet/BottomSheet.svelte +171 -0
  30. package/dist/components/BottomSheet/BottomSheet.svelte.d.ts +40 -0
  31. package/dist/components/BottomSheet/BottomSheet.svelte.d.ts.map +1 -0
  32. package/dist/components/Breadcrumb/Breadcrumb.spec.d.ts +2 -0
  33. package/dist/components/Breadcrumb/Breadcrumb.spec.d.ts.map +1 -0
  34. package/dist/components/Breadcrumb/Breadcrumb.spec.js +120 -0
  35. package/dist/components/Breadcrumb/Breadcrumb.stories.svelte +24 -0
  36. package/dist/components/Breadcrumb/Breadcrumb.stories.svelte.d.ts +36 -0
  37. package/dist/components/Breadcrumb/Breadcrumb.stories.svelte.d.ts.map +1 -0
  38. package/dist/components/Breadcrumb/Breadcrumb.svelte +50 -0
  39. package/dist/components/Breadcrumb/Breadcrumb.svelte.d.ts +30 -0
  40. package/dist/components/Breadcrumb/Breadcrumb.svelte.d.ts.map +1 -0
  41. package/dist/components/Button/Button.spec.d.ts +2 -0
  42. package/dist/components/Button/Button.spec.d.ts.map +1 -0
  43. package/dist/components/Button/Button.spec.js +211 -0
  44. package/dist/components/Button/Button.stories.svelte +111 -0
  45. package/dist/components/Button/Button.stories.svelte.d.ts +59 -0
  46. package/dist/components/Button/Button.stories.svelte.d.ts.map +1 -0
  47. package/dist/components/Button/Button.svelte +642 -0
  48. package/dist/components/Button/Button.svelte.d.ts +68 -0
  49. package/dist/components/Button/Button.svelte.d.ts.map +1 -0
  50. package/dist/components/Button/ButtonAudit.stories.svelte +333 -0
  51. package/dist/components/Button/ButtonAudit.stories.svelte.d.ts +33 -0
  52. package/dist/components/Button/ButtonAudit.stories.svelte.d.ts.map +1 -0
  53. package/dist/components/Button/ButtonSaveDemo.spec.d.ts +2 -0
  54. package/dist/components/Button/ButtonSaveDemo.spec.d.ts.map +1 -0
  55. package/dist/components/Button/ButtonSaveDemo.spec.js +48 -0
  56. package/dist/components/Button/ButtonSaveDemo.svelte +24 -0
  57. package/dist/components/Button/ButtonSaveDemo.svelte.d.ts +26 -0
  58. package/dist/components/Button/ButtonSaveDemo.svelte.d.ts.map +1 -0
  59. package/dist/components/Calendar/Calendar.spec.d.ts +2 -0
  60. package/dist/components/Calendar/Calendar.spec.d.ts.map +1 -0
  61. package/dist/components/Calendar/Calendar.spec.js +131 -0
  62. package/dist/components/Calendar/Calendar.svelte +1115 -0
  63. package/dist/components/Calendar/Calendar.svelte.d.ts +52 -0
  64. package/dist/components/Calendar/Calendar.svelte.d.ts.map +1 -0
  65. package/dist/components/Calendar/QuarterView.spec.d.ts +2 -0
  66. package/dist/components/Calendar/QuarterView.spec.d.ts.map +1 -0
  67. package/dist/components/Calendar/QuarterView.spec.js +394 -0
  68. package/dist/components/Calendar/QuarterView.stories.svelte +134 -0
  69. package/dist/components/Calendar/QuarterView.stories.svelte.d.ts +40 -0
  70. package/dist/components/Calendar/QuarterView.stories.svelte.d.ts.map +1 -0
  71. package/dist/components/Calendar/QuarterView.svelte +736 -0
  72. package/dist/components/Calendar/QuarterView.svelte.d.ts +30 -0
  73. package/dist/components/Calendar/QuarterView.svelte.d.ts.map +1 -0
  74. package/dist/components/Card.spec.d.ts +2 -0
  75. package/dist/components/Card.spec.d.ts.map +1 -0
  76. package/dist/components/Card.spec.js +47 -0
  77. package/dist/components/Card.stories.svelte +26 -0
  78. package/dist/components/Card.stories.svelte.d.ts +36 -0
  79. package/dist/components/Card.stories.svelte.d.ts.map +1 -0
  80. package/dist/components/Card.svelte +9 -0
  81. package/dist/components/Card.svelte.d.ts +30 -0
  82. package/dist/components/Card.svelte.d.ts.map +1 -0
  83. package/dist/components/CardAudit.stories.svelte +175 -0
  84. package/dist/components/CardAudit.stories.svelte.d.ts +31 -0
  85. package/dist/components/CardAudit.stories.svelte.d.ts.map +1 -0
  86. package/dist/components/CropImage/CropImage.spec.d.ts +2 -0
  87. package/dist/components/CropImage/CropImage.spec.d.ts.map +1 -0
  88. package/dist/components/CropImage/CropImage.spec.js +216 -0
  89. package/dist/components/CropImage/CropImage.stories.svelte +133 -0
  90. package/dist/components/CropImage/CropImage.stories.svelte.d.ts +40 -0
  91. package/dist/components/CropImage/CropImage.stories.svelte.d.ts.map +1 -0
  92. package/dist/components/CropImage/CropImage.svelte +311 -0
  93. package/dist/components/CropImage/CropImage.svelte.d.ts +34 -0
  94. package/dist/components/CropImage/CropImage.svelte.d.ts.map +1 -0
  95. package/dist/components/DarkModeToggle.spec.d.ts +2 -0
  96. package/dist/components/DarkModeToggle.spec.d.ts.map +1 -0
  97. package/dist/components/DarkModeToggle.spec.js +357 -0
  98. package/dist/components/DarkModeToggle.stories.svelte +55 -0
  99. package/dist/components/DarkModeToggle.stories.svelte.d.ts +32 -0
  100. package/dist/components/DarkModeToggle.stories.svelte.d.ts.map +1 -0
  101. package/dist/components/DarkModeToggle.svelte +245 -0
  102. package/dist/components/DarkModeToggle.svelte.d.ts +26 -0
  103. package/dist/components/DarkModeToggle.svelte.d.ts.map +1 -0
  104. package/dist/components/ErrorDisplay.spec.d.ts +2 -0
  105. package/dist/components/ErrorDisplay.spec.d.ts.map +1 -0
  106. package/dist/components/ErrorDisplay.spec.js +69 -0
  107. package/dist/components/ErrorDisplay.stories.svelte +115 -0
  108. package/dist/components/ErrorDisplay.stories.svelte.d.ts +62 -0
  109. package/dist/components/ErrorDisplay.stories.svelte.d.ts.map +1 -0
  110. package/dist/components/ErrorDisplay.svelte +58 -0
  111. package/dist/components/ErrorDisplay.svelte.d.ts +36 -0
  112. package/dist/components/ErrorDisplay.svelte.d.ts.map +1 -0
  113. package/dist/components/FormActions.spec.d.ts +2 -0
  114. package/dist/components/FormActions.spec.d.ts.map +1 -0
  115. package/dist/components/FormActions.spec.js +88 -0
  116. package/dist/components/FormActions.stories.svelte +98 -0
  117. package/dist/components/FormActions.stories.svelte.d.ts +57 -0
  118. package/dist/components/FormActions.stories.svelte.d.ts.map +1 -0
  119. package/dist/components/FormActions.svelte +67 -0
  120. package/dist/components/FormActions.svelte.d.ts +48 -0
  121. package/dist/components/FormActions.svelte.d.ts.map +1 -0
  122. package/dist/components/FormValidationSummary.spec.d.ts +2 -0
  123. package/dist/components/FormValidationSummary.spec.d.ts.map +1 -0
  124. package/dist/components/FormValidationSummary.spec.js +203 -0
  125. package/dist/components/FormValidationSummary.stories.svelte +95 -0
  126. package/dist/components/FormValidationSummary.stories.svelte.d.ts +32 -0
  127. package/dist/components/FormValidationSummary.stories.svelte.d.ts.map +1 -0
  128. package/dist/components/FormValidationSummary.svelte +83 -0
  129. package/dist/components/FormValidationSummary.svelte.d.ts +32 -0
  130. package/dist/components/FormValidationSummary.svelte.d.ts.map +1 -0
  131. package/dist/components/Icons/ArrowLeft.svelte +21 -0
  132. package/dist/components/Icons/ArrowLeft.svelte.d.ts +28 -0
  133. package/dist/components/Icons/ArrowLeft.svelte.d.ts.map +1 -0
  134. package/dist/components/Icons/ArrowRight.svelte +21 -0
  135. package/dist/components/Icons/ArrowRight.svelte.d.ts +28 -0
  136. package/dist/components/Icons/ArrowRight.svelte.d.ts.map +1 -0
  137. package/dist/components/Icons/Availability.svelte +28 -0
  138. package/dist/components/Icons/Availability.svelte.d.ts +28 -0
  139. package/dist/components/Icons/Availability.svelte.d.ts.map +1 -0
  140. package/dist/components/Icons/Back.svelte +28 -0
  141. package/dist/components/Icons/Back.svelte.d.ts +28 -0
  142. package/dist/components/Icons/Back.svelte.d.ts.map +1 -0
  143. package/dist/components/Icons/CheckCircle.svelte +20 -0
  144. package/dist/components/Icons/CheckCircle.svelte.d.ts +28 -0
  145. package/dist/components/Icons/CheckCircle.svelte.d.ts.map +1 -0
  146. package/dist/components/Icons/CheckCircleOutline.svelte +28 -0
  147. package/dist/components/Icons/CheckCircleOutline.svelte.d.ts +28 -0
  148. package/dist/components/Icons/CheckCircleOutline.svelte.d.ts.map +1 -0
  149. package/dist/components/Icons/ChevronLeft.svelte +18 -0
  150. package/dist/components/Icons/ChevronLeft.svelte.d.ts +28 -0
  151. package/dist/components/Icons/ChevronLeft.svelte.d.ts.map +1 -0
  152. package/dist/components/Icons/ChevronRight.svelte +18 -0
  153. package/dist/components/Icons/ChevronRight.svelte.d.ts +28 -0
  154. package/dist/components/Icons/ChevronRight.svelte.d.ts.map +1 -0
  155. package/dist/components/Icons/Copy.svelte +28 -0
  156. package/dist/components/Icons/Copy.svelte.d.ts +28 -0
  157. package/dist/components/Icons/Copy.svelte.d.ts.map +1 -0
  158. package/dist/components/Icons/Cross.svelte +18 -0
  159. package/dist/components/Icons/Cross.svelte.d.ts +28 -0
  160. package/dist/components/Icons/Cross.svelte.d.ts.map +1 -0
  161. package/dist/components/Icons/DownArrow.svelte +21 -0
  162. package/dist/components/Icons/DownArrow.svelte.d.ts +28 -0
  163. package/dist/components/Icons/DownArrow.svelte.d.ts.map +1 -0
  164. package/dist/components/Icons/ErrorCircle.svelte +20 -0
  165. package/dist/components/Icons/ErrorCircle.svelte.d.ts +28 -0
  166. package/dist/components/Icons/ErrorCircle.svelte.d.ts.map +1 -0
  167. package/dist/components/Icons/FacebookIcon.svelte +14 -0
  168. package/dist/components/Icons/FacebookIcon.svelte.d.ts +28 -0
  169. package/dist/components/Icons/FacebookIcon.svelte.d.ts.map +1 -0
  170. package/dist/components/Icons/Home.svelte +29 -0
  171. package/dist/components/Icons/Home.svelte.d.ts +28 -0
  172. package/dist/components/Icons/Home.svelte.d.ts.map +1 -0
  173. package/dist/components/Icons/Icon.spec.d.ts +2 -0
  174. package/dist/components/Icons/Icon.spec.d.ts.map +1 -0
  175. package/dist/components/Icons/Icon.spec.js +175 -0
  176. package/dist/components/Icons/Icon.stories.svelte +101 -0
  177. package/dist/components/Icons/Icon.stories.svelte.d.ts +44 -0
  178. package/dist/components/Icons/Icon.stories.svelte.d.ts.map +1 -0
  179. package/dist/components/Icons/Icon.svelte +66 -0
  180. package/dist/components/Icons/Icon.svelte.d.ts +30 -0
  181. package/dist/components/Icons/Icon.svelte.d.ts.map +1 -0
  182. package/dist/components/Icons/IconGallery.stories.svelte +233 -0
  183. package/dist/components/Icons/IconGallery.stories.svelte.d.ts +30 -0
  184. package/dist/components/Icons/IconGallery.stories.svelte.d.ts.map +1 -0
  185. package/dist/components/Icons/Info.svelte +20 -0
  186. package/dist/components/Icons/Info.svelte.d.ts +28 -0
  187. package/dist/components/Icons/Info.svelte.d.ts.map +1 -0
  188. package/dist/components/Icons/InstagramIcon.svelte +20 -0
  189. package/dist/components/Icons/InstagramIcon.svelte.d.ts +28 -0
  190. package/dist/components/Icons/InstagramIcon.svelte.d.ts.map +1 -0
  191. package/dist/components/Icons/Message.svelte +28 -0
  192. package/dist/components/Icons/Message.svelte.d.ts +28 -0
  193. package/dist/components/Icons/Message.svelte.d.ts.map +1 -0
  194. package/dist/components/Icons/MoonIcon.svelte +17 -0
  195. package/dist/components/Icons/MoonIcon.svelte.d.ts +28 -0
  196. package/dist/components/Icons/MoonIcon.svelte.d.ts.map +1 -0
  197. package/dist/components/Icons/More.svelte +35 -0
  198. package/dist/components/Icons/More.svelte.d.ts +28 -0
  199. package/dist/components/Icons/More.svelte.d.ts.map +1 -0
  200. package/dist/components/Icons/MoreHori.spec.d.ts +2 -0
  201. package/dist/components/Icons/MoreHori.spec.d.ts.map +1 -0
  202. package/dist/components/Icons/MoreHori.spec.js +67 -0
  203. package/dist/components/Icons/MoreHori.svelte +35 -0
  204. package/dist/components/Icons/MoreHori.svelte.d.ts +28 -0
  205. package/dist/components/Icons/MoreHori.svelte.d.ts.map +1 -0
  206. package/dist/components/Icons/Notification.svelte +28 -0
  207. package/dist/components/Icons/Notification.svelte.d.ts +28 -0
  208. package/dist/components/Icons/Notification.svelte.d.ts.map +1 -0
  209. package/dist/components/Icons/Payment.svelte +28 -0
  210. package/dist/components/Icons/Payment.svelte.d.ts +28 -0
  211. package/dist/components/Icons/Payment.svelte.d.ts.map +1 -0
  212. package/dist/components/Icons/Profile.svelte +35 -0
  213. package/dist/components/Icons/Profile.svelte.d.ts +28 -0
  214. package/dist/components/Icons/Profile.svelte.d.ts.map +1 -0
  215. package/dist/components/Icons/Reload.svelte +42 -0
  216. package/dist/components/Icons/Reload.svelte.d.ts +28 -0
  217. package/dist/components/Icons/Reload.svelte.d.ts.map +1 -0
  218. package/dist/components/Icons/Shows.svelte +35 -0
  219. package/dist/components/Icons/Shows.svelte.d.ts +28 -0
  220. package/dist/components/Icons/Shows.svelte.d.ts.map +1 -0
  221. package/dist/components/Icons/Signout.svelte +35 -0
  222. package/dist/components/Icons/Signout.svelte.d.ts +28 -0
  223. package/dist/components/Icons/Signout.svelte.d.ts.map +1 -0
  224. package/dist/components/Icons/SunIcon.svelte +20 -0
  225. package/dist/components/Icons/SunIcon.svelte.d.ts +28 -0
  226. package/dist/components/Icons/SunIcon.svelte.d.ts.map +1 -0
  227. package/dist/components/Icons/TiktokIcon.svelte +14 -0
  228. package/dist/components/Icons/TiktokIcon.svelte.d.ts +28 -0
  229. package/dist/components/Icons/TiktokIcon.svelte.d.ts.map +1 -0
  230. package/dist/components/Icons/TwitterIcon.svelte +14 -0
  231. package/dist/components/Icons/TwitterIcon.svelte.d.ts +28 -0
  232. package/dist/components/Icons/TwitterIcon.svelte.d.ts.map +1 -0
  233. package/dist/components/Icons/WarningIcon.spec.d.ts +2 -0
  234. package/dist/components/Icons/WarningIcon.spec.d.ts.map +1 -0
  235. package/dist/components/Icons/WarningIcon.spec.js +30 -0
  236. package/dist/components/Icons/WarningIcon.svelte +24 -0
  237. package/dist/components/Icons/WarningIcon.svelte.d.ts +26 -0
  238. package/dist/components/Icons/WarningIcon.svelte.d.ts.map +1 -0
  239. package/dist/components/Input/Input.spec.d.ts +2 -0
  240. package/dist/components/Input/Input.spec.d.ts.map +1 -0
  241. package/dist/components/Input/Input.spec.js +573 -0
  242. package/dist/components/Input/Input.stories.svelte +140 -0
  243. package/dist/components/Input/Input.stories.svelte.d.ts +80 -0
  244. package/dist/components/Input/Input.stories.svelte.d.ts.map +1 -0
  245. package/dist/components/Input/Input.svelte +721 -0
  246. package/dist/components/Input/Input.svelte.d.ts +96 -0
  247. package/dist/components/Input/Input.svelte.d.ts.map +1 -0
  248. package/dist/components/Input/InputAudit.stories.svelte +483 -0
  249. package/dist/components/Input/InputAudit.stories.svelte.d.ts +31 -0
  250. package/dist/components/Input/InputAudit.stories.svelte.d.ts.map +1 -0
  251. package/dist/components/Input/MultiSelect.spec.d.ts +2 -0
  252. package/dist/components/Input/MultiSelect.spec.d.ts.map +1 -0
  253. package/dist/components/Input/MultiSelect.spec.js +257 -0
  254. package/dist/components/Input/MultiSelect.stories.svelte +138 -0
  255. package/dist/components/Input/MultiSelect.stories.svelte.d.ts +32 -0
  256. package/dist/components/Input/MultiSelect.stories.svelte.d.ts.map +1 -0
  257. package/dist/components/Input/MultiSelect.svelte +557 -0
  258. package/dist/components/Input/MultiSelect.svelte.d.ts +50 -0
  259. package/dist/components/Input/MultiSelect.svelte.d.ts.map +1 -0
  260. package/dist/components/Input/OTPInput.spec.d.ts +2 -0
  261. package/dist/components/Input/OTPInput.spec.d.ts.map +1 -0
  262. package/dist/components/Input/OTPInput.spec.js +238 -0
  263. package/dist/components/Input/OTPInput.stories.svelte +167 -0
  264. package/dist/components/Input/OTPInput.stories.svelte.d.ts +48 -0
  265. package/dist/components/Input/OTPInput.stories.svelte.d.ts.map +1 -0
  266. package/dist/components/Input/OTPInput.svelte +117 -0
  267. package/dist/components/Input/OTPInput.svelte.d.ts +42 -0
  268. package/dist/components/Input/OTPInput.svelte.d.ts.map +1 -0
  269. package/dist/components/Input/Select.spec.d.ts +2 -0
  270. package/dist/components/Input/Select.spec.d.ts.map +1 -0
  271. package/dist/components/Input/Select.spec.js +218 -0
  272. package/dist/components/Input/Select.svelte +385 -0
  273. package/dist/components/Input/Select.svelte.d.ts +48 -0
  274. package/dist/components/Input/Select.svelte.d.ts.map +1 -0
  275. package/dist/components/Input/SelectAudit.stories.svelte +364 -0
  276. package/dist/components/Input/SelectAudit.stories.svelte.d.ts +31 -0
  277. package/dist/components/Input/SelectAudit.stories.svelte.d.ts.map +1 -0
  278. package/dist/components/Layout/BottomNav.spec.d.ts +2 -0
  279. package/dist/components/Layout/BottomNav.spec.d.ts.map +1 -0
  280. package/dist/components/Layout/BottomNav.spec.js +130 -0
  281. package/dist/components/Layout/BottomNav.stories.svelte +115 -0
  282. package/dist/components/Layout/BottomNav.stories.svelte.d.ts +32 -0
  283. package/dist/components/Layout/BottomNav.stories.svelte.d.ts.map +1 -0
  284. package/dist/components/Layout/BottomNav.svelte +120 -0
  285. package/dist/components/Layout/BottomNav.svelte.d.ts +26 -0
  286. package/dist/components/Layout/BottomNav.svelte.d.ts.map +1 -0
  287. package/dist/components/Layout/Header.spec.d.ts +2 -0
  288. package/dist/components/Layout/Header.spec.d.ts.map +1 -0
  289. package/dist/components/Layout/Header.spec.js +203 -0
  290. package/dist/components/Layout/Header.stories.svelte +78 -0
  291. package/dist/components/Layout/Header.stories.svelte.d.ts +47 -0
  292. package/dist/components/Layout/Header.stories.svelte.d.ts.map +1 -0
  293. package/dist/components/Layout/Header.svelte +528 -0
  294. package/dist/components/Layout/Header.svelte.d.ts +42 -0
  295. package/dist/components/Layout/Header.svelte.d.ts.map +1 -0
  296. package/dist/components/Modal/ConfirmationModal.spec.d.ts +2 -0
  297. package/dist/components/Modal/ConfirmationModal.spec.d.ts.map +1 -0
  298. package/dist/components/Modal/ConfirmationModal.spec.js +191 -0
  299. package/dist/components/Modal/ConfirmationModal.stories.svelte +124 -0
  300. package/dist/components/Modal/ConfirmationModal.stories.svelte.d.ts +45 -0
  301. package/dist/components/Modal/ConfirmationModal.stories.svelte.d.ts.map +1 -0
  302. package/dist/components/Modal/ConfirmationModal.svelte +105 -0
  303. package/dist/components/Modal/ConfirmationModal.svelte.d.ts +38 -0
  304. package/dist/components/Modal/ConfirmationModal.svelte.d.ts.map +1 -0
  305. package/dist/components/Modal/Modal.spec.d.ts +2 -0
  306. package/dist/components/Modal/Modal.spec.d.ts.map +1 -0
  307. package/dist/components/Modal/Modal.spec.js +95 -0
  308. package/dist/components/Modal/Modal.stories.svelte +83 -0
  309. package/dist/components/Modal/Modal.stories.svelte.d.ts +31 -0
  310. package/dist/components/Modal/Modal.stories.svelte.d.ts.map +1 -0
  311. package/dist/components/Modal/Modal.svelte +234 -0
  312. package/dist/components/Modal/Modal.svelte.d.ts +46 -0
  313. package/dist/components/Modal/Modal.svelte.d.ts.map +1 -0
  314. package/dist/components/Modal/ModalAudit.stories.svelte +329 -0
  315. package/dist/components/Modal/ModalAudit.stories.svelte.d.ts +31 -0
  316. package/dist/components/Modal/ModalAudit.stories.svelte.d.ts.map +1 -0
  317. package/dist/components/Modal/ModalStateManager.spec.d.ts +2 -0
  318. package/dist/components/Modal/ModalStateManager.spec.d.ts.map +1 -0
  319. package/dist/components/Modal/ModalStateManager.spec.js +100 -0
  320. package/dist/components/Modal/ModalStateManager.svelte +67 -0
  321. package/dist/components/Modal/ModalStateManager.svelte.d.ts +48 -0
  322. package/dist/components/Modal/ModalStateManager.svelte.d.ts.map +1 -0
  323. package/dist/components/Modal/ModalTestWrapper.svelte +21 -0
  324. package/dist/components/Modal/ModalTestWrapper.svelte.d.ts +36 -0
  325. package/dist/components/Modal/ModalTestWrapper.svelte.d.ts.map +1 -0
  326. package/dist/components/PageLoader.spec.d.ts +2 -0
  327. package/dist/components/PageLoader.spec.d.ts.map +1 -0
  328. package/dist/components/PageLoader.spec.js +54 -0
  329. package/dist/components/PageLoader.stories.svelte +145 -0
  330. package/dist/components/PageLoader.stories.svelte.d.ts +53 -0
  331. package/dist/components/PageLoader.stories.svelte.d.ts.map +1 -0
  332. package/dist/components/PageLoader.svelte +52 -0
  333. package/dist/components/PageLoader.svelte.d.ts +42 -0
  334. package/dist/components/PageLoader.svelte.d.ts.map +1 -0
  335. package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.d.ts +2 -0
  336. package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.d.ts.map +1 -0
  337. package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.js +173 -0
  338. package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte +101 -0
  339. package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte.d.ts +36 -0
  340. package/dist/components/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte.d.ts.map +1 -0
  341. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.spec.d.ts +2 -0
  342. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.spec.d.ts.map +1 -0
  343. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.spec.js +300 -0
  344. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.stories.svelte +168 -0
  345. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.stories.svelte.d.ts +60 -0
  346. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.stories.svelte.d.ts.map +1 -0
  347. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.svelte +431 -0
  348. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts +29 -0
  349. package/dist/components/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts.map +1 -0
  350. package/dist/components/Spinner/Spinner.spec.d.ts +2 -0
  351. package/dist/components/Spinner/Spinner.spec.d.ts.map +1 -0
  352. package/dist/components/Spinner/Spinner.spec.js +75 -0
  353. package/dist/components/Spinner/Spinner.stories.svelte +30 -0
  354. package/dist/components/Spinner/Spinner.stories.svelte.d.ts +31 -0
  355. package/dist/components/Spinner/Spinner.stories.svelte.d.ts.map +1 -0
  356. package/dist/components/Spinner/Spinner.svelte +19 -0
  357. package/dist/components/Spinner/Spinner.svelte.d.ts +26 -0
  358. package/dist/components/Spinner/Spinner.svelte.d.ts.map +1 -0
  359. package/dist/components/StatusIndicator/StatusIndicator.spec.d.ts +2 -0
  360. package/dist/components/StatusIndicator/StatusIndicator.spec.d.ts.map +1 -0
  361. package/dist/components/StatusIndicator/StatusIndicator.spec.js +129 -0
  362. package/dist/components/StatusIndicator/StatusIndicator.svelte +206 -0
  363. package/dist/components/StatusIndicator/StatusIndicator.svelte.d.ts +28 -0
  364. package/dist/components/StatusIndicator/StatusIndicator.svelte.d.ts.map +1 -0
  365. package/dist/components/Toaster/Toaster.stories.svelte +61 -0
  366. package/dist/components/Toaster/Toaster.stories.svelte.d.ts +29 -0
  367. package/dist/components/Toaster/Toaster.stories.svelte.d.ts.map +1 -0
  368. package/dist/components/Toggle.spec.d.ts +2 -0
  369. package/dist/components/Toggle.spec.d.ts.map +1 -0
  370. package/dist/components/Toggle.spec.js +158 -0
  371. package/dist/components/Toggle.stories.svelte +93 -0
  372. package/dist/components/Toggle.stories.svelte.d.ts +41 -0
  373. package/dist/components/Toggle.stories.svelte.d.ts.map +1 -0
  374. package/dist/components/Toggle.svelte +79 -0
  375. package/dist/components/Toggle.svelte.d.ts +32 -0
  376. package/dist/components/Toggle.svelte.d.ts.map +1 -0
  377. package/dist/components/ValidationError.spec.d.ts +2 -0
  378. package/dist/components/ValidationError.spec.d.ts.map +1 -0
  379. package/dist/components/ValidationError.spec.js +79 -0
  380. package/dist/components/ValidationError.stories.svelte +88 -0
  381. package/dist/components/ValidationError.stories.svelte.d.ts +41 -0
  382. package/dist/components/ValidationError.stories.svelte.d.ts.map +1 -0
  383. package/dist/components/ValidationError.svelte +19 -0
  384. package/dist/components/ValidationError.svelte.d.ts +28 -0
  385. package/dist/components/ValidationError.svelte.d.ts.map +1 -0
  386. package/dist/components/pages/performers/AvailabilityCalendarModal.spec.d.ts +2 -0
  387. package/dist/components/pages/performers/AvailabilityCalendarModal.spec.d.ts.map +1 -0
  388. package/dist/components/pages/performers/AvailabilityCalendarModal.spec.js +606 -0
  389. package/dist/components/pages/performers/AvailabilityCalendarModal.svelte +632 -0
  390. package/dist/components/pages/performers/AvailabilityCalendarModal.svelte.d.ts +36 -0
  391. package/dist/components/pages/performers/AvailabilityCalendarModal.svelte.d.ts.map +1 -0
  392. package/dist/components/pages/performers/ModalShowInfo.spec.d.ts +2 -0
  393. package/dist/components/pages/performers/ModalShowInfo.spec.d.ts.map +1 -0
  394. package/dist/components/pages/performers/ModalShowInfo.spec.js +124 -0
  395. package/dist/components/pages/performers/ModalShowInfo.svelte +88 -0
  396. package/dist/components/pages/performers/ModalShowInfo.svelte.d.ts +34 -0
  397. package/dist/components/pages/performers/ModalShowInfo.svelte.d.ts.map +1 -0
  398. package/dist/components/pages/performers/PageBackButton.spec.d.ts +2 -0
  399. package/dist/components/pages/performers/PageBackButton.spec.d.ts.map +1 -0
  400. package/dist/components/pages/performers/PageBackButton.spec.js +89 -0
  401. package/dist/components/pages/performers/PageBackButton.stories.svelte +72 -0
  402. package/dist/components/pages/performers/PageBackButton.stories.svelte.d.ts +36 -0
  403. package/dist/components/pages/performers/PageBackButton.stories.svelte.d.ts.map +1 -0
  404. package/dist/components/pages/performers/PageBackButton.svelte +13 -0
  405. package/dist/components/pages/performers/PageBackButton.svelte.d.ts +26 -0
  406. package/dist/components/pages/performers/PageBackButton.svelte.d.ts.map +1 -0
  407. package/dist/components/pages/performers/SectionHeader.spec.d.ts +2 -0
  408. package/dist/components/pages/performers/SectionHeader.spec.d.ts.map +1 -0
  409. package/dist/components/pages/performers/SectionHeader.spec.js +75 -0
  410. package/dist/components/pages/performers/SectionHeader.stories.svelte +100 -0
  411. package/dist/components/pages/performers/SectionHeader.stories.svelte.d.ts +41 -0
  412. package/dist/components/pages/performers/SectionHeader.stories.svelte.d.ts.map +1 -0
  413. package/dist/components/pages/performers/SectionHeader.svelte +9 -0
  414. package/dist/components/pages/performers/SectionHeader.svelte.d.ts +28 -0
  415. package/dist/components/pages/performers/SectionHeader.svelte.d.ts.map +1 -0
  416. package/dist/components/pages/performers/ShowDetails.spec.d.ts +2 -0
  417. package/dist/components/pages/performers/ShowDetails.spec.d.ts.map +1 -0
  418. package/dist/components/pages/performers/ShowDetails.spec.js +166 -0
  419. package/dist/components/pages/performers/ShowDetails.stories.svelte +140 -0
  420. package/dist/components/pages/performers/ShowDetails.stories.svelte.d.ts +37 -0
  421. package/dist/components/pages/performers/ShowDetails.stories.svelte.d.ts.map +1 -0
  422. package/dist/components/pages/performers/ShowDetails.svelte +73 -0
  423. package/dist/components/pages/performers/ShowDetails.svelte.d.ts +44 -0
  424. package/dist/components/pages/performers/ShowDetails.svelte.d.ts.map +1 -0
  425. package/dist/components/pages/performers/ShowItemCard.spec.d.ts +2 -0
  426. package/dist/components/pages/performers/ShowItemCard.spec.d.ts.map +1 -0
  427. package/dist/components/pages/performers/ShowItemCard.spec.js +793 -0
  428. package/dist/components/pages/performers/ShowItemCard.stories.svelte +250 -0
  429. package/dist/components/pages/performers/ShowItemCard.stories.svelte.d.ts +43 -0
  430. package/dist/components/pages/performers/ShowItemCard.stories.svelte.d.ts.map +1 -0
  431. package/dist/components/pages/performers/ShowItemCard.svelte +886 -0
  432. package/dist/components/pages/performers/ShowItemCard.svelte.d.ts +54 -0
  433. package/dist/components/pages/performers/ShowItemCard.svelte.d.ts.map +1 -0
  434. package/dist/components/pages/performers/SwitchOption.spec.d.ts +2 -0
  435. package/dist/components/pages/performers/SwitchOption.spec.d.ts.map +1 -0
  436. package/dist/components/pages/performers/SwitchOption.spec.js +127 -0
  437. package/dist/components/pages/performers/SwitchOption.stories.svelte +211 -0
  438. package/dist/components/pages/performers/SwitchOption.stories.svelte.d.ts +40 -0
  439. package/dist/components/pages/performers/SwitchOption.stories.svelte.d.ts.map +1 -0
  440. package/dist/components/pages/performers/SwitchOption.svelte +24 -0
  441. package/dist/components/pages/performers/SwitchOption.svelte.d.ts +30 -0
  442. package/dist/components/pages/performers/SwitchOption.svelte.d.ts.map +1 -0
  443. package/dist/components/pages/performers/VenueInfo.spec.d.ts +2 -0
  444. package/dist/components/pages/performers/VenueInfo.spec.d.ts.map +1 -0
  445. package/dist/components/pages/performers/VenueInfo.spec.js +167 -0
  446. package/dist/components/pages/performers/VenueInfo.svelte +90 -0
  447. package/dist/components/pages/performers/VenueInfo.svelte.d.ts +32 -0
  448. package/dist/components/pages/performers/VenueInfo.svelte.d.ts.map +1 -0
  449. package/dist/components/pages/performers/VenueItemCard.spec.d.ts +2 -0
  450. package/dist/components/pages/performers/VenueItemCard.spec.d.ts.map +1 -0
  451. package/dist/components/pages/performers/VenueItemCard.spec.js +763 -0
  452. package/dist/components/pages/performers/VenueItemCard.stories.svelte +301 -0
  453. package/dist/components/pages/performers/VenueItemCard.stories.svelte.d.ts +37 -0
  454. package/dist/components/pages/performers/VenueItemCard.stories.svelte.d.ts.map +1 -0
  455. package/dist/components/pages/performers/VenueItemCard.svelte +192 -0
  456. package/dist/components/pages/performers/VenueItemCard.svelte.d.ts +66 -0
  457. package/dist/components/pages/performers/VenueItemCard.svelte.d.ts.map +1 -0
  458. package/dist/components/pages/profile/profile-form.spec.d.ts +2 -0
  459. package/dist/components/pages/profile/profile-form.spec.d.ts.map +1 -0
  460. package/dist/components/pages/profile/profile-form.spec.js +9 -0
  461. package/dist/components/pages/profile/profile-form.stories.svelte +279 -0
  462. package/dist/components/pages/profile/profile-form.stories.svelte.d.ts +48 -0
  463. package/dist/components/pages/profile/profile-form.stories.svelte.d.ts.map +1 -0
  464. package/dist/components/pages/profile/profile-form.svelte +445 -0
  465. package/dist/components/pages/profile/profile-form.svelte.d.ts +36 -0
  466. package/dist/components/pages/profile/profile-form.svelte.d.ts.map +1 -0
  467. package/dist/components/pages/profile/profile-photos.stories.svelte +69 -0
  468. package/dist/components/pages/profile/profile-photos.stories.svelte.d.ts +31 -0
  469. package/dist/components/pages/profile/profile-photos.stories.svelte.d.ts.map +1 -0
  470. package/dist/components/pages/profile/profile-photos.svelte +26 -0
  471. package/dist/components/pages/profile/profile-photos.svelte.d.ts +26 -0
  472. package/dist/components/pages/profile/profile-photos.svelte.d.ts.map +1 -0
  473. package/dist/components/pages/settings/tabs/CustomImageDropzone.stories.svelte +166 -0
  474. package/dist/components/pages/settings/tabs/CustomImageDropzone.stories.svelte.d.ts +49 -0
  475. package/dist/components/pages/settings/tabs/CustomImageDropzone.stories.svelte.d.ts.map +1 -0
  476. package/dist/components/pages/settings/tabs/CustomImageDropzone.svelte +241 -0
  477. package/dist/components/pages/settings/tabs/CustomImageDropzone.svelte.d.ts +38 -0
  478. package/dist/components/pages/settings/tabs/CustomImageDropzone.svelte.d.ts.map +1 -0
  479. package/dist/components/pages/shows/ShowList.spec.d.ts +2 -0
  480. package/dist/components/pages/shows/ShowList.spec.d.ts.map +1 -0
  481. package/dist/components/pages/shows/ShowList.spec.js +33 -0
  482. package/dist/components/pages/shows/ShowList.stories.svelte +258 -0
  483. package/dist/components/pages/shows/ShowList.stories.svelte.d.ts +41 -0
  484. package/dist/components/pages/shows/ShowList.stories.svelte.d.ts.map +1 -0
  485. package/dist/components/pages/shows/ShowList.svelte +12 -0
  486. package/dist/components/pages/shows/ShowList.svelte.d.ts +28 -0
  487. package/dist/components/pages/shows/ShowList.svelte.d.ts.map +1 -0
  488. package/dist/components/pages/shows/TabContent.spec.d.ts +2 -0
  489. package/dist/components/pages/shows/TabContent.spec.d.ts.map +1 -0
  490. package/dist/components/pages/shows/TabContent.spec.js +90 -0
  491. package/dist/components/pages/shows/TabContent.stories.svelte +254 -0
  492. package/dist/components/pages/shows/TabContent.stories.svelte.d.ts +45 -0
  493. package/dist/components/pages/shows/TabContent.stories.svelte.d.ts.map +1 -0
  494. package/dist/components/pages/shows/TabContent.svelte +94 -0
  495. package/dist/components/pages/shows/TabContent.svelte.d.ts +32 -0
  496. package/dist/components/pages/shows/TabContent.svelte.d.ts.map +1 -0
  497. package/dist/components/pages/shows/TabNavigation.spec.d.ts +2 -0
  498. package/dist/components/pages/shows/TabNavigation.spec.d.ts.map +1 -0
  499. package/dist/components/pages/shows/TabNavigation.spec.js +143 -0
  500. package/dist/components/pages/shows/TabNavigation.stories.svelte +177 -0
  501. package/dist/components/pages/shows/TabNavigation.stories.svelte.d.ts +41 -0
  502. package/dist/components/pages/shows/TabNavigation.stories.svelte.d.ts.map +1 -0
  503. package/dist/components/pages/shows/TabNavigation.svelte +64 -0
  504. package/dist/components/pages/shows/TabNavigation.svelte.d.ts +32 -0
  505. package/dist/components/pages/shows/TabNavigation.svelte.d.ts.map +1 -0
  506. package/dist/config.js +5 -5
  507. package/dist/config.spec.js +29 -29
  508. package/dist/constants/formOptions.js +25 -25
  509. package/dist/constants/formOptions.spec.js +88 -88
  510. package/dist/index.d.ts +80 -0
  511. package/dist/index.d.ts.map +1 -0
  512. package/dist/index.js +111 -0
  513. package/dist/telemetry.js +357 -357
  514. package/dist/telemetry.server.js +211 -211
  515. package/dist/telemetry.server.spec.js +434 -434
  516. package/dist/telemetry.spec.js +660 -660
  517. package/package.json +159 -152
@@ -0,0 +1,364 @@
1
+ <script context="module">
2
+ import Select from "./Select.svelte";
3
+ import MultiSelect from "./MultiSelect.svelte";
4
+ import { GENDER_OPTIONS, ETHNICITY_OPTIONS } from "../../constants/formOptions";
5
+
6
+ export const meta = {
7
+ title: "Audit/Select & Dropdown Variants",
8
+ component: Select,
9
+ };
10
+ </script>
11
+
12
+ <script>
13
+ import { Story } from "@storybook/addon-svelte-csf";
14
+
15
+ let singleValue = "";
16
+ let multiValue = [];
17
+ let genderValue = "";
18
+ let ethnicityValue = [];
19
+
20
+ const countryItems = [
21
+ { value: "us", name: "United States" },
22
+ { value: "ca", name: "Canada" },
23
+ { value: "uk", name: "United Kingdom" },
24
+ { value: "au", name: "Australia" },
25
+ ];
26
+
27
+ const roleItems = [
28
+ { value: "host", name: "Host" },
29
+ { value: "headliner", name: "Headliner" },
30
+ { value: "feature", name: "Feature" },
31
+ { value: "opener", name: "Opener" },
32
+ ];
33
+
34
+ const genreItems = [
35
+ { value: "standup", name: "Stand-up Comedy" },
36
+ { value: "improv", name: "Improv" },
37
+ { value: "sketch", name: "Sketch Comedy" },
38
+ { value: "musical", name: "Musical Comedy" },
39
+ ];
40
+ </script>
41
+
42
+ <Story name="All Select Variants">
43
+ <div class="performer-portal p-6 space-y-8 bg-BG-Primary min-h-screen">
44
+ <div class="max-w-2xl mx-auto">
45
+ <h1 class="text-2xl font-bold text-Text-Primary mb-2">Select & Dropdown Component Audit</h1>
46
+ <p class="text-Text-Tartiary mb-8">All dropdown/select variants across the performers portal</p>
47
+
48
+ <!-- SECTION: Base Select -->
49
+ <section class="mb-10">
50
+ <h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
51
+ Select Component (Single Selection)
52
+ </h2>
53
+
54
+ <div class="space-y-4">
55
+ <div class="p-4 bg-BG-Secondary rounded-lg">
56
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
57
+ Basic Select with label
58
+ </div>
59
+ <Select
60
+ bind:value={singleValue}
61
+ items={countryItems}
62
+ label="Country"
63
+ placeholder="Select a country"
64
+ />
65
+ </div>
66
+
67
+ <div class="p-4 bg-BG-Secondary rounded-lg">
68
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
69
+ Required Select
70
+ </div>
71
+ <Select
72
+ bind:value={singleValue}
73
+ items={roleItems}
74
+ label="Role"
75
+ placeholder="Select your role"
76
+ required
77
+ />
78
+ </div>
79
+
80
+ <div class="p-4 bg-BG-Secondary rounded-lg">
81
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
82
+ Select with error
83
+ </div>
84
+ <Select
85
+ bind:value={singleValue}
86
+ items={countryItems}
87
+ label="Country"
88
+ placeholder="Select a country"
89
+ error="Please select a country"
90
+ />
91
+ </div>
92
+
93
+ <div class="p-4 bg-BG-Secondary rounded-lg">
94
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
95
+ Disabled Select
96
+ </div>
97
+ <Select
98
+ value="us"
99
+ items={countryItems}
100
+ label="Country"
101
+ disabled
102
+ />
103
+ </div>
104
+ </div>
105
+ </section>
106
+
107
+ <!-- SECTION: MultiSelect -->
108
+ <section class="mb-10">
109
+ <h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
110
+ MultiSelect Component (Multiple Selection)
111
+ </h2>
112
+
113
+ <div class="space-y-4">
114
+ <div class="p-4 bg-BG-Secondary rounded-lg">
115
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
116
+ Basic MultiSelect
117
+ </div>
118
+ <MultiSelect
119
+ bind:value={multiValue}
120
+ items={genreItems}
121
+ label="Genres"
122
+ placeholder="Select genres"
123
+ />
124
+ </div>
125
+
126
+ <div class="p-4 bg-BG-Secondary rounded-lg">
127
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
128
+ MultiSelect with hideClear=true
129
+ </div>
130
+ <MultiSelect
131
+ bind:value={multiValue}
132
+ items={genreItems}
133
+ label="Genres (No Clear Button)"
134
+ placeholder="Select genres"
135
+ hideClear
136
+ />
137
+ </div>
138
+
139
+ <div class="p-4 bg-BG-Secondary rounded-lg">
140
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
141
+ Required MultiSelect with error
142
+ </div>
143
+ <MultiSelect
144
+ bind:value={multiValue}
145
+ items={genreItems}
146
+ label="Genres"
147
+ placeholder="Select at least one"
148
+ required
149
+ error="Please select at least one genre"
150
+ />
151
+ </div>
152
+ </div>
153
+ </section>
154
+
155
+ <!-- SECTION: Using Constants for Options -->
156
+ <section class="mb-10">
157
+ <h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
158
+ Using Shared Constants for Options
159
+ </h2>
160
+ <p class="text-sm text-Text-Tartiary mb-4">
161
+ Instead of wrapper components, use Select/MultiSelect with constants from <code>$lib/constants/formOptions</code>.
162
+ </p>
163
+
164
+ <div class="space-y-4">
165
+ <div class="p-4 bg-BG-Secondary rounded-lg">
166
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
167
+ Select with GENDER_OPTIONS constant
168
+ </div>
169
+ <Select
170
+ bind:value={genderValue}
171
+ items={GENDER_OPTIONS}
172
+ label="Gender"
173
+ placeholder="Select gender"
174
+ />
175
+ <div class="mt-2 text-xs text-Text-Tartiary">
176
+ <strong>Options:</strong> Male (1), Female (2), Non-Binary (3)
177
+ </div>
178
+ </div>
179
+
180
+ <div class="p-4 bg-BG-Secondary rounded-lg">
181
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
182
+ MultiSelect with ETHNICITY_OPTIONS constant
183
+ </div>
184
+ <MultiSelect
185
+ bind:value={ethnicityValue}
186
+ items={ETHNICITY_OPTIONS}
187
+ label="Ethnicity"
188
+ placeholder="Select ethnicity"
189
+ hideClear
190
+ />
191
+ <div class="mt-2 text-xs text-Text-Tartiary">
192
+ <strong>Options:</strong> American Indian, Asian, Black, Hispanic, Middle Eastern, Native Hawaiian, White
193
+ </div>
194
+ </div>
195
+ </div>
196
+ </section>
197
+
198
+ <!-- SECTION: Real Usage Examples -->
199
+ <section class="mb-10">
200
+ <h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
201
+ Real Usage Examples
202
+ </h2>
203
+
204
+ <div class="space-y-4">
205
+ <div class="p-4 bg-BG-Secondary rounded-lg">
206
+ <div class="text-xs text-primary-700 font-semibold mb-1">profile-form.svelte - Gender field</div>
207
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
208
+ &lt;Select items=&#123;GENDER_OPTIONS&#125; bind:value=&#123;formData.gender&#125; /&gt;
209
+ </div>
210
+ <Select
211
+ value=""
212
+ items={GENDER_OPTIONS}
213
+ label="Gender"
214
+ placeholder="Select gender"
215
+ />
216
+ </div>
217
+
218
+ <div class="p-4 bg-BG-Secondary rounded-lg">
219
+ <div class="text-xs text-primary-700 font-semibold mb-1">profile-form.svelte - Ethnicity field</div>
220
+ <div class="text-xs text-Text-Tartiary mb-2 font-mono">
221
+ &lt;MultiSelect items=&#123;ETHNICITY_OPTIONS&#125; bind:value=&#123;formData.ethnicity&#125; hideClear /&gt;
222
+ </div>
223
+ <MultiSelect
224
+ value={[]}
225
+ items={ETHNICITY_OPTIONS}
226
+ label="Ethnicity"
227
+ placeholder="Select ethnicity"
228
+ hideClear
229
+ />
230
+ </div>
231
+ </div>
232
+ </section>
233
+
234
+ <!-- SECTION: Props Summary -->
235
+ <section class="mb-10">
236
+ <h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
237
+ Props Summary
238
+ </h2>
239
+
240
+ <div class="bg-BG-Secondary rounded-lg p-4 text-sm mb-4">
241
+ <h3 class="font-semibold text-Text-Primary mb-2">Select</h3>
242
+ <table class="w-full text-left">
243
+ <thead>
244
+ <tr class="border-b border-stroke-Primary">
245
+ <th class="py-2 text-Text-Primary">Prop</th>
246
+ <th class="py-2 text-Text-Primary">Type</th>
247
+ <th class="py-2 text-Text-Primary">Description</th>
248
+ </tr>
249
+ </thead>
250
+ <tbody class="text-Text-Tartiary">
251
+ <tr class="border-b border-stroke-Secondary">
252
+ <td class="py-2 font-mono text-xs">value</td>
253
+ <td class="py-2 text-xs">any</td>
254
+ <td class="py-2 text-xs">Selected value (bindable)</td>
255
+ </tr>
256
+ <tr class="border-b border-stroke-Secondary">
257
+ <td class="py-2 font-mono text-xs">items</td>
258
+ <td class="py-2 text-xs">array</td>
259
+ <td class="py-2 text-xs">Options: &#123;value, name&#125;</td>
260
+ </tr>
261
+ <tr class="border-b border-stroke-Secondary">
262
+ <td class="py-2 font-mono text-xs">label</td>
263
+ <td class="py-2 text-xs">string</td>
264
+ <td class="py-2 text-xs">Label text above select</td>
265
+ </tr>
266
+ <tr class="border-b border-stroke-Secondary">
267
+ <td class="py-2 font-mono text-xs">placeholder</td>
268
+ <td class="py-2 text-xs">string</td>
269
+ <td class="py-2 text-xs">Placeholder text</td>
270
+ </tr>
271
+ <tr class="border-b border-stroke-Secondary">
272
+ <td class="py-2 font-mono text-xs">required</td>
273
+ <td class="py-2 text-xs">boolean</td>
274
+ <td class="py-2 text-xs">Shows * indicator</td>
275
+ </tr>
276
+ <tr class="border-b border-stroke-Secondary">
277
+ <td class="py-2 font-mono text-xs">disabled</td>
278
+ <td class="py-2 text-xs">boolean</td>
279
+ <td class="py-2 text-xs">Disables interaction</td>
280
+ </tr>
281
+ <tr>
282
+ <td class="py-2 font-mono text-xs">error</td>
283
+ <td class="py-2 text-xs">string</td>
284
+ <td class="py-2 text-xs">Error message</td>
285
+ </tr>
286
+ </tbody>
287
+ </table>
288
+ </div>
289
+
290
+ <div class="bg-BG-Secondary rounded-lg p-4 text-sm">
291
+ <h3 class="font-semibold text-Text-Primary mb-2">MultiSelect (same as Select, plus:)</h3>
292
+ <table class="w-full text-left">
293
+ <thead>
294
+ <tr class="border-b border-stroke-Primary">
295
+ <th class="py-2 text-Text-Primary">Prop</th>
296
+ <th class="py-2 text-Text-Primary">Type</th>
297
+ <th class="py-2 text-Text-Primary">Description</th>
298
+ </tr>
299
+ </thead>
300
+ <tbody class="text-Text-Tartiary">
301
+ <tr>
302
+ <td class="py-2 font-mono text-xs">hideClear</td>
303
+ <td class="py-2 text-xs">boolean</td>
304
+ <td class="py-2 text-xs">Hides the clear/X button</td>
305
+ </tr>
306
+ </tbody>
307
+ </table>
308
+ </div>
309
+ </section>
310
+
311
+ <!-- SECTION: Consolidation Status -->
312
+ <section class="mb-10">
313
+ <h2 class="text-lg font-semibold text-Text-Primary mb-4 pb-2 border-b border-stroke-Primary">
314
+ Consolidation Status
315
+ </h2>
316
+
317
+ <div class="space-y-4 text-sm text-Text-Tartiary">
318
+ <div class="p-4 bg-green-50 dark:bg-green-900/20 rounded-lg border border-green-200 dark:border-green-800">
319
+ <h3 class="font-semibold text-green-700 dark:text-green-400 mb-2">Completed</h3>
320
+ <ul class="list-disc list-inside space-y-1">
321
+ <li><strong>Removed GenderInput</strong> - was just wrapping Select with hardcoded items</li>
322
+ <li><strong>Removed EthnicityDropdown</strong> - was just wrapping MultiSelect with hardcoded items</li>
323
+ <li><strong>Created constants file</strong> - GENDER_OPTIONS and ETHNICITY_OPTIONS in <code>$lib/constants/formOptions.js</code></li>
324
+ <li><strong>Updated profile-form.svelte</strong> - now uses Select/MultiSelect directly with constants</li>
325
+ </ul>
326
+ </div>
327
+
328
+ <div class="p-4 bg-green-50 dark:bg-green-900/20 rounded-lg border border-green-200 dark:border-green-800">
329
+ <h3 class="font-semibold text-green-700 dark:text-green-400 mb-2">Current State</h3>
330
+ <ul class="list-disc list-inside space-y-1">
331
+ <li>Select and MultiSelect are the only dropdown components needed</li>
332
+ <li>Pass items as props - no need for wrapper components</li>
333
+ <li>Consistent API across both components</li>
334
+ <li>Error handling and label display work well</li>
335
+ </ul>
336
+ </div>
337
+
338
+ <div class="p-4 bg-blue-50 dark:bg-blue-900/20 rounded-lg border border-blue-200 dark:border-blue-800">
339
+ <h3 class="font-semibold text-blue-700 dark:text-blue-400 mb-2">Usage Pattern</h3>
340
+ <pre class="bg-gray-100 dark:bg-gray-800 p-2 rounded text-xs overflow-x-auto">
341
+ {`import { GENDER_OPTIONS, ETHNICITY_OPTIONS } from "../../constants/formOptions";
342
+
343
+ // Gender dropdown
344
+ <Select
345
+ items={GENDER_OPTIONS}
346
+ bind:value={formData.gender}
347
+ label="Gender"
348
+ placeholder="Select gender"
349
+ />
350
+
351
+ // Ethnicity multi-select
352
+ <MultiSelect
353
+ items={ETHNICITY_OPTIONS}
354
+ bind:value={formData.ethnicity}
355
+ label="Ethnicity"
356
+ hideClear
357
+ />`}
358
+ </pre>
359
+ </div>
360
+ </div>
361
+ </section>
362
+ </div>
363
+ </div>
364
+ </Story>
@@ -0,0 +1,31 @@
1
+ export namespace meta {
2
+ export let title: string;
3
+ export { Select as component };
4
+ }
5
+ /** @typedef {typeof __propDef.props} SelectAuditProps */
6
+ /** @typedef {typeof __propDef.events} SelectAuditEvents */
7
+ /** @typedef {typeof __propDef.slots} SelectAuditSlots */
8
+ export default class SelectAudit extends SvelteComponent<{
9
+ [x: string]: never;
10
+ }, {
11
+ [evt: string]: CustomEvent<any>;
12
+ }, {}> {
13
+ }
14
+ export type SelectAuditProps = typeof __propDef.props;
15
+ export type SelectAuditEvents = typeof __propDef.events;
16
+ export type SelectAuditSlots = typeof __propDef.slots;
17
+ import Select from "./Select.svelte";
18
+ import { SvelteComponent } from "svelte";
19
+ declare const __propDef: {
20
+ props: {
21
+ [x: string]: never;
22
+ };
23
+ events: {
24
+ [evt: string]: CustomEvent<any>;
25
+ };
26
+ slots: {};
27
+ exports?: undefined;
28
+ bindings?: undefined;
29
+ };
30
+ export {};
31
+ //# sourceMappingURL=SelectAudit.stories.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectAudit.stories.svelte.d.ts","sourceRoot":"","sources":["../../../src/lib/components/Input/SelectAudit.stories.svelte.js"],"names":[],"mappings":";;;;AAwTA,0DAA0D;AAC1D,4DAA4D;AAC5D,0DAA0D;AAE1D;;;;;CACC;+BALa,OAAO,SAAS,CAAC,KAAK;gCACtB,OAAO,SAAS,CAAC,MAAM;+BACvB,OAAO,SAAS,CAAC,KAAK;mBAvTf,iBAAiB;gCAHN,QAAQ;AAuTxC;;;;;;;;;;EAAgF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=BottomNav.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BottomNav.spec.d.ts","sourceRoot":"","sources":["../../../src/lib/components/Layout/BottomNav.spec.js"],"names":[],"mappings":""}
@@ -0,0 +1,130 @@
1
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
2
+ import { render, screen } from '@testing-library/svelte';
3
+ import BottomNav from './BottomNav.svelte';
4
+
5
+ // Mock fetch for API calls
6
+ global.fetch = vi.fn(() =>
7
+ Promise.resolve({
8
+ ok: true,
9
+ json: () => Promise.resolve([]),
10
+ })
11
+ );
12
+
13
+ // Mock SvelteKit modules
14
+ vi.mock('$app/stores', () => ({
15
+ page: {
16
+ subscribe: (fn) => {
17
+ fn({ url: { pathname: '/shows' } });
18
+ return () => {};
19
+ }
20
+ }
21
+ }));
22
+
23
+ vi.mock('$app/paths', () => ({
24
+ base: '/performers'
25
+ }));
26
+
27
+ describe('BottomNav', () => {
28
+ const defaultLinks = [
29
+ { label: 'Home', href: '/', icon: 'home' },
30
+ { label: 'Shows', href: '/shows', icon: 'shows' },
31
+ { label: 'Availability', href: '/availability', icon: 'availability' },
32
+ { label: 'Profile', href: '/profile', icon: 'profile' }
33
+ ];
34
+
35
+ beforeEach(() => {
36
+ vi.clearAllMocks();
37
+ global.fetch.mockImplementation(() =>
38
+ Promise.resolve({
39
+ ok: true,
40
+ json: () => Promise.resolve([]),
41
+ })
42
+ );
43
+ });
44
+
45
+ describe('basic rendering', () => {
46
+ it('renders all navigation links', () => {
47
+ const { container } = render(BottomNav, { links: defaultLinks });
48
+ const navItems = container.querySelectorAll('.bottom-nav-item');
49
+ expect(navItems.length).toBe(4);
50
+ });
51
+
52
+ it('renders link labels as aria-label', () => {
53
+ const { container } = render(BottomNav, { links: defaultLinks });
54
+ const homeLink = container.querySelector('[aria-label="Home"]');
55
+ expect(homeLink).toBeTruthy();
56
+ });
57
+
58
+ it('renders icons for each link', () => {
59
+ const { container } = render(BottomNav, { links: defaultLinks });
60
+ const icons = container.querySelectorAll('.bottom-nav-icon');
61
+ expect(icons.length).toBe(4);
62
+ });
63
+ });
64
+
65
+ describe('active state', () => {
66
+ it('marks current path as active', () => {
67
+ const { container } = render(BottomNav, { links: defaultLinks });
68
+ const showsLink = container.querySelector('a[href="/shows"]');
69
+ expect(showsLink.classList.contains('active')).toBe(true);
70
+ });
71
+
72
+ it('non-current paths are not active', () => {
73
+ const { container } = render(BottomNav, { links: defaultLinks });
74
+ const homeLink = container.querySelector('a[href="/"]');
75
+ expect(homeLink.classList.contains('active')).toBe(false);
76
+ });
77
+ });
78
+
79
+ describe('notification dot', () => {
80
+ it('shows notification dot when there are invitations', async () => {
81
+ global.fetch.mockImplementationOnce(() =>
82
+ Promise.resolve({
83
+ ok: true,
84
+ json: () => Promise.resolve([{ acceptedState: 0 }]),
85
+ })
86
+ );
87
+
88
+ const { container } = render(BottomNav, { links: defaultLinks });
89
+
90
+ // Wait for the fetch to complete
91
+ await vi.waitFor(() => {
92
+ const dot = container.querySelector('.notification-dot');
93
+ return dot !== null;
94
+ }, { timeout: 1000 }).catch(() => null);
95
+ });
96
+
97
+ it('does not show notification dot when no invitations', () => {
98
+ const { container } = render(BottomNav, { links: defaultLinks });
99
+ const dot = container.querySelector('.notification-dot');
100
+ expect(dot).toBeFalsy();
101
+ });
102
+ });
103
+
104
+ describe('empty links', () => {
105
+ it('renders nothing when links array is empty', () => {
106
+ const { container } = render(BottomNav, { links: [] });
107
+ const navItems = container.querySelectorAll('.bottom-nav-item');
108
+ expect(navItems.length).toBe(0);
109
+ });
110
+ });
111
+
112
+ describe('API error handling', () => {
113
+ it('handles fetch error gracefully', async () => {
114
+ const consoleSpy = vi.spyOn(console, 'error').mockImplementation(() => {});
115
+ global.fetch.mockImplementationOnce(() =>
116
+ Promise.resolve({
117
+ ok: false,
118
+ })
119
+ );
120
+
121
+ const { container } = render(BottomNav, { links: defaultLinks });
122
+
123
+ // Component should still render despite fetch error
124
+ const navItems = container.querySelectorAll('.bottom-nav-item');
125
+ expect(navItems.length).toBe(4);
126
+
127
+ consoleSpy.mockRestore();
128
+ });
129
+ });
130
+ });
@@ -0,0 +1,115 @@
1
+ <script context="module">
2
+ import BottomNav from './BottomNav.svelte';
3
+
4
+ export const meta = {
5
+ title: 'Components/Layout/BottomNav',
6
+ component: BottomNav,
7
+ tags: ['autodocs'],
8
+ };
9
+ </script>
10
+
11
+ <script>
12
+ import { Story } from '@storybook/addon-svelte-csf';
13
+
14
+ const defaultLinks = [
15
+ { label: 'Home', href: '/', icon: 'Home' },
16
+ { label: 'Shows', href: '/shows', icon: 'Shows' },
17
+ { label: 'Availability', href: '/availability', icon: 'Availability' },
18
+ { label: 'Profile', href: '/profile', icon: 'Profile' },
19
+ ];
20
+
21
+ const extendedLinks = [
22
+ { label: 'Home', href: '/', icon: 'Home' },
23
+ { label: 'Shows', href: '/shows', icon: 'Shows' },
24
+ { label: 'Availability', href: '/availability', icon: 'Availability' },
25
+ { label: 'Messages', href: '/messages', icon: 'Message' },
26
+ { label: 'Profile', href: '/profile', icon: 'Profile' },
27
+ ];
28
+ </script>
29
+
30
+ <Story name="Default (4 Tabs)">
31
+ <div class="bg-gray-100 p-4">
32
+ <p class="text-sm text-gray-600 mb-4">Mobile Bottom Navigation (4 tabs)</p>
33
+ <div class="max-w-md mx-auto bg-white rounded-lg shadow-lg overflow-hidden">
34
+ <div class="h-64 bg-gradient-to-br from-blue-50 to-blue-100 flex items-center justify-center">
35
+ <p class="text-gray-500">Page Content Area</p>
36
+ </div>
37
+ <div class="flex border-t bg-white">
38
+ <BottomNav links={defaultLinks} />
39
+ </div>
40
+ </div>
41
+ </div>
42
+ </Story>
43
+
44
+ <Story name="With 5 Tabs">
45
+ <div class="bg-gray-100 p-4">
46
+ <p class="text-sm text-gray-600 mb-4">Extended Navigation (5 tabs)</p>
47
+ <div class="max-w-md mx-auto bg-white rounded-lg shadow-lg overflow-hidden">
48
+ <div class="h-64 bg-gradient-to-br from-purple-50 to-purple-100 flex items-center justify-center">
49
+ <p class="text-gray-500">Page Content Area</p>
50
+ </div>
51
+ <div class="flex border-t bg-white">
52
+ <BottomNav links={extendedLinks} />
53
+ </div>
54
+ </div>
55
+ </div>
56
+ </Story>
57
+
58
+ <Story name="Different Icon Set">
59
+ <div class="bg-gray-100 p-4">
60
+ <p class="text-sm text-gray-600 mb-4">Custom Icons</p>
61
+ <div class="max-w-md mx-auto bg-white rounded-lg shadow-lg overflow-hidden">
62
+ <div class="h-64 bg-gradient-to-br from-green-50 to-green-100 flex items-center justify-center">
63
+ <p class="text-gray-500">Page Content Area</p>
64
+ </div>
65
+ <div class="flex border-t bg-white">
66
+ <BottomNav
67
+ links={[
68
+ { label: 'Dashboard', href: '/', icon: 'Home' },
69
+ { label: 'Events', href: '/events', icon: 'Shows' },
70
+ { label: 'Notifications', href: '/notifications', icon: 'Notification' },
71
+ { label: 'Settings', href: '/settings', icon: 'Profile' },
72
+ ]}
73
+ />
74
+ </div>
75
+ </div>
76
+ </div>
77
+ </Story>
78
+
79
+ <Story name="Mobile Viewport">
80
+ <div class="max-w-[375px] mx-auto bg-white shadow-2xl rounded-3xl overflow-hidden">
81
+ <!-- Mock iPhone screen -->
82
+ <div class="h-[667px] flex flex-col">
83
+ <!-- Status bar -->
84
+ <div class="h-6 bg-black flex items-center justify-between px-4">
85
+ <span class="text-white text-xs">9:41</span>
86
+ <span class="text-white text-xs">100%</span>
87
+ </div>
88
+
89
+ <!-- Content area -->
90
+ <div class="flex-1 bg-gradient-to-br from-blue-50 to-purple-50 p-4">
91
+ <h1 class="text-2xl font-bold mb-2">Home</h1>
92
+ <p class="text-gray-600">This is a mobile viewport simulation</p>
93
+ </div>
94
+
95
+ <!-- Bottom navigation -->
96
+ <div class="flex border-t bg-white safe-bottom">
97
+ <BottomNav links={defaultLinks} />
98
+ </div>
99
+ </div>
100
+ </div>
101
+ </Story>
102
+
103
+ <Story name="Dark Mode">
104
+ <div class="dark bg-gray-900 p-4 min-h-screen">
105
+ <p class="text-sm text-gray-400 mb-4">Dark Mode Bottom Navigation</p>
106
+ <div class="max-w-md mx-auto bg-gray-800 rounded-lg shadow-2xl overflow-hidden">
107
+ <div class="h-64 bg-gradient-to-br from-gray-900 to-gray-800 flex items-center justify-center">
108
+ <p class="text-gray-400">Dark Mode Content</p>
109
+ </div>
110
+ <div class="flex border-t border-gray-700 bg-gray-800">
111
+ <BottomNav links={defaultLinks} />
112
+ </div>
113
+ </div>
114
+ </div>
115
+ </Story>
@@ -0,0 +1,32 @@
1
+ export namespace meta {
2
+ export let title: string;
3
+ export { BottomNav as component };
4
+ export let tags: string[];
5
+ }
6
+ /** @typedef {typeof __propDef.props} BottomNavProps */
7
+ /** @typedef {typeof __propDef.events} BottomNavEvents */
8
+ /** @typedef {typeof __propDef.slots} BottomNavSlots */
9
+ export default class BottomNav extends SvelteComponent<{
10
+ [x: string]: never;
11
+ }, {
12
+ [evt: string]: CustomEvent<any>;
13
+ }, {}> {
14
+ }
15
+ export type BottomNavProps = typeof __propDef.props;
16
+ export type BottomNavEvents = typeof __propDef.events;
17
+ export type BottomNavSlots = typeof __propDef.slots;
18
+ import BottomNav from './BottomNav.svelte';
19
+ import { SvelteComponent } from "svelte";
20
+ declare const __propDef: {
21
+ props: {
22
+ [x: string]: never;
23
+ };
24
+ events: {
25
+ [evt: string]: CustomEvent<any>;
26
+ };
27
+ slots: {};
28
+ exports?: undefined;
29
+ bindings?: undefined;
30
+ };
31
+ export {};
32
+ //# sourceMappingURL=BottomNav.stories.svelte.d.ts.map