@mozaic-ds/web-components 1.0.0-beta.3 → 1.0.0-beta.6

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 (423) hide show
  1. package/dist/Cross20.js +2 -0
  2. package/dist/Cross20.js.map +1 -0
  3. package/dist/Cross24.js +1 -1
  4. package/dist/CrossCircleFilled24.js +2 -0
  5. package/dist/CrossCircleFilled24.js.map +1 -0
  6. package/dist/attributes.js +1 -1
  7. package/dist/attributes.js.map +1 -1
  8. package/dist/bundle.d.ts +43 -0
  9. package/dist/bundle.d.ts.map +1 -0
  10. package/dist/bundle.js +14 -5
  11. package/dist/components/avatar/Avatar.js +7 -0
  12. package/dist/components/avatar/Avatar.js.map +1 -0
  13. package/dist/components/avatar/Avatar.stories.d.ts +9 -0
  14. package/dist/components/avatar/Avatar.stories.d.ts.map +1 -0
  15. package/dist/components/avatar/Avatar.stories.js +67 -0
  16. package/dist/components/avatar/Avatar.svelte +63 -0
  17. package/dist/components/avatar/Avatar.svelte.d.ts +37 -0
  18. package/dist/components/avatar/Avatar.svelte.d.ts.map +1 -0
  19. package/dist/components/breadcrumb/Breadcrumb.js +9 -6
  20. package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
  21. package/dist/components/breadcrumb/Breadcrumb.stories.d.ts +7 -0
  22. package/dist/components/breadcrumb/Breadcrumb.stories.d.ts.map +1 -0
  23. package/dist/components/breadcrumb/Breadcrumb.stories.js +75 -0
  24. package/dist/components/breadcrumb/Breadcrumb.svelte +45 -29
  25. package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts +24 -7
  26. package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
  27. package/dist/components/button/Button.js +6 -3
  28. package/dist/components/button/Button.js.map +1 -1
  29. package/dist/{stories → components}/button/Button.stories.d.ts +5 -5
  30. package/dist/components/button/Button.stories.d.ts.map +1 -0
  31. package/dist/{stories → components}/button/Button.stories.js +1 -0
  32. package/dist/components/button/Button.svelte +105 -102
  33. package/dist/components/button/Button.svelte.d.ts.map +1 -1
  34. package/dist/components/callout/Callout.js +10 -0
  35. package/dist/components/callout/Callout.js.map +1 -0
  36. package/dist/components/callout/Callout.stories.d.ts +18 -0
  37. package/dist/components/callout/Callout.stories.d.ts.map +1 -0
  38. package/dist/components/callout/Callout.stories.js +122 -0
  39. package/dist/components/callout/Callout.svelte +112 -0
  40. package/dist/components/callout/Callout.svelte.d.ts +49 -0
  41. package/dist/components/callout/Callout.svelte.d.ts.map +1 -0
  42. package/dist/components/checkbox/Checkbox.js +6 -3
  43. package/dist/components/checkbox/Checkbox.js.map +1 -1
  44. package/dist/{stories → components}/checkbox/Checkbox.stories.d.ts +7 -6
  45. package/dist/components/checkbox/Checkbox.stories.d.ts.map +1 -0
  46. package/dist/{stories → components}/checkbox/Checkbox.stories.js +15 -0
  47. package/dist/components/checkbox/Checkbox.svelte +48 -33
  48. package/dist/components/checkbox/Checkbox.svelte.d.ts +3 -0
  49. package/dist/components/checkbox/Checkbox.svelte.d.ts.map +1 -1
  50. package/dist/components/checkboxgroup/CheckboxGroup.js +7 -4
  51. package/dist/components/checkboxgroup/CheckboxGroup.js.map +1 -1
  52. package/dist/{stories/checkbox-group/Checkbox-group.stories.d.ts → components/checkboxgroup/CheckboxGroup.stories.d.ts} +5 -5
  53. package/dist/components/checkboxgroup/CheckboxGroup.stories.d.ts.map +1 -0
  54. package/dist/{stories/checkbox-group/Checkbox-group.stories.js → components/checkboxgroup/CheckboxGroup.stories.js} +1 -1
  55. package/dist/components/checkboxgroup/CheckboxGroup.svelte +39 -33
  56. package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts.map +1 -1
  57. package/dist/components/circularprogressbar/CircularProgressbar.js +9 -0
  58. package/dist/components/circularprogressbar/CircularProgressbar.js.map +1 -0
  59. package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts +9 -0
  60. package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts.map +1 -0
  61. package/dist/components/circularprogressbar/CircularProgressbar.stories.js +86 -0
  62. package/dist/components/circularprogressbar/CircularProgressbar.svelte +163 -0
  63. package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts +11 -0
  64. package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts.map +1 -0
  65. package/dist/components/datepicker/Datepicker.js +10 -0
  66. package/dist/components/datepicker/Datepicker.js.map +1 -0
  67. package/dist/components/datepicker/Datepicker.stories.d.ts +10 -0
  68. package/dist/components/datepicker/Datepicker.stories.d.ts.map +1 -0
  69. package/dist/components/datepicker/Datepicker.stories.js +97 -0
  70. package/dist/components/datepicker/Datepicker.svelte +315 -0
  71. package/dist/components/datepicker/Datepicker.svelte.d.ts +16 -0
  72. package/dist/components/datepicker/Datepicker.svelte.d.ts.map +1 -0
  73. package/dist/components/drawer/Drawer.js +15 -12
  74. package/dist/components/drawer/Drawer.js.map +1 -1
  75. package/dist/components/drawer/Drawer.stories.d.ts.map +1 -0
  76. package/dist/components/drawer/Drawer.svelte +113 -110
  77. package/dist/components/drawer/Drawer.svelte.d.ts.map +1 -1
  78. package/dist/components/field/Field.js +6 -3
  79. package/dist/components/field/Field.js.map +1 -1
  80. package/dist/{stories → components}/field/Field.stories.d.ts +7 -7
  81. package/dist/components/field/Field.stories.d.ts.map +1 -0
  82. package/dist/components/field/Field.svelte +18 -15
  83. package/dist/components/field/Field.svelte.d.ts.map +1 -1
  84. package/dist/components/flag/Flag.js +7 -0
  85. package/dist/components/flag/Flag.js.map +1 -0
  86. package/dist/components/flag/Flag.stories.d.ts +19 -0
  87. package/dist/components/flag/Flag.stories.d.ts.map +1 -0
  88. package/dist/components/flag/Flag.stories.js +113 -0
  89. package/dist/components/flag/Flag.svelte +55 -0
  90. package/dist/components/flag/Flag.svelte.d.ts +35 -0
  91. package/dist/components/flag/Flag.svelte.d.ts.map +1 -0
  92. package/dist/components/iconbutton/IconButton.js +7 -0
  93. package/dist/components/iconbutton/IconButton.js.map +1 -0
  94. package/dist/{stories/button → components/iconbutton}/IconButton.stories.d.ts +4 -4
  95. package/dist/components/iconbutton/IconButton.stories.d.ts.map +1 -0
  96. package/dist/{stories/button → components/iconbutton}/IconButton.stories.js +1 -1
  97. package/dist/components/iconbutton/IconButton.svelte +399 -0
  98. package/dist/components/{button → iconbutton}/IconButton.svelte.d.ts +1 -1
  99. package/dist/components/iconbutton/IconButton.svelte.d.ts.map +1 -0
  100. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js +7 -0
  101. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js.map +1 -0
  102. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts +9 -0
  103. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts.map +1 -0
  104. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.js +61 -0
  105. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte +55 -0
  106. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts +8 -0
  107. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts.map +1 -0
  108. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js +7 -0
  109. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js.map +1 -0
  110. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts +7 -0
  111. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts.map +1 -0
  112. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.js +40 -0
  113. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte +82 -0
  114. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts +7 -0
  115. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts.map +1 -0
  116. package/dist/components/link/Link.js +5 -2
  117. package/dist/components/link/Link.js.map +1 -1
  118. package/dist/{stories → components}/link/Link.stories.d.ts +4 -4
  119. package/dist/components/link/Link.stories.d.ts.map +1 -0
  120. package/dist/components/link/Link.svelte +12 -9
  121. package/dist/components/link/Link.svelte.d.ts.map +1 -1
  122. package/dist/components/loader/Loader.js +10 -7
  123. package/dist/components/loader/Loader.js.map +1 -1
  124. package/dist/{stories → components}/loader/Loader.stories.d.ts +4 -4
  125. package/dist/components/loader/Loader.stories.d.ts.map +1 -0
  126. package/dist/components/loader/Loader.svelte +9 -6
  127. package/dist/components/loader/Loader.svelte.d.ts +1 -1
  128. package/dist/components/loader/Loader.svelte.d.ts.map +1 -1
  129. package/dist/components/modal/Modal.js +17 -14
  130. package/dist/components/modal/Modal.js.map +1 -1
  131. package/dist/components/modal/Modal.stories.d.ts.map +1 -0
  132. package/dist/{stories → components}/modal/Modal.stories.js +1 -0
  133. package/dist/components/modal/Modal.svelte +115 -111
  134. package/dist/components/modal/Modal.svelte.d.ts.map +1 -1
  135. package/dist/components/numberbadge/NumberBadge.js +7 -0
  136. package/dist/components/numberbadge/NumberBadge.js.map +1 -0
  137. package/dist/{stories/number-badge → components/numberbadge}/NumberBadge.stories.d.ts +5 -5
  138. package/dist/components/numberbadge/NumberBadge.stories.d.ts.map +1 -0
  139. package/dist/components/{number-badge → numberbadge}/NumberBadge.svelte +16 -13
  140. package/dist/components/{number-badge → numberbadge}/NumberBadge.svelte.d.ts +1 -1
  141. package/dist/components/numberbadge/NumberBadge.svelte.d.ts.map +1 -0
  142. package/dist/components/{number-badge/number-badge.types.d.ts → numberbadge/NumberBadge.types.d.ts} +1 -1
  143. package/dist/components/numberbadge/NumberBadge.types.d.ts.map +1 -0
  144. package/dist/components/overlay/Overlay.js +5 -2
  145. package/dist/components/overlay/Overlay.js.map +1 -1
  146. package/dist/{stories → components}/overlay/Overlay.stories.d.ts +2 -2
  147. package/dist/components/overlay/Overlay.stories.d.ts.map +1 -0
  148. package/dist/components/overlay/Overlay.svelte +5 -2
  149. package/dist/components/overlay/Overlay.svelte.d.ts.map +1 -1
  150. package/dist/components/overlayloader/OverlayLoader.js +30 -0
  151. package/dist/components/overlayloader/OverlayLoader.js.map +1 -0
  152. package/dist/{stories/overlay → components/overlayloader}/OverlayLoader.stories.d.ts +2 -2
  153. package/dist/components/overlayloader/OverlayLoader.stories.d.ts.map +1 -0
  154. package/dist/components/{overlay → overlayloader}/OverlayLoader.svelte +9 -6
  155. package/dist/components/overlayloader/OverlayLoader.svelte.d.ts.map +1 -0
  156. package/dist/components/pagination/Pagination.js +11 -8
  157. package/dist/components/pagination/Pagination.js.map +1 -1
  158. package/dist/{stories → components}/pagination/Pagination.stories.d.ts +4 -4
  159. package/dist/components/pagination/Pagination.stories.d.ts.map +1 -0
  160. package/dist/components/pagination/Pagination.svelte +24 -21
  161. package/dist/components/pagination/Pagination.svelte.d.ts.map +1 -1
  162. package/dist/components/passwordinput/PasswordInput.js +8 -5
  163. package/dist/components/passwordinput/PasswordInput.js.map +1 -1
  164. package/dist/{stories → components}/passwordinput/PasswordInput.stories.d.ts +4 -4
  165. package/dist/components/passwordinput/PasswordInput.stories.d.ts.map +1 -0
  166. package/dist/components/passwordinput/PasswordInput.svelte +32 -29
  167. package/dist/components/passwordinput/PasswordInput.svelte.d.ts.map +1 -1
  168. package/dist/components/pincode/Pincode.js +9 -0
  169. package/dist/components/pincode/Pincode.js.map +1 -0
  170. package/dist/components/pincode/Pincode.stories.d.ts +14 -0
  171. package/dist/components/pincode/Pincode.stories.d.ts.map +1 -0
  172. package/dist/components/pincode/Pincode.stories.js +140 -0
  173. package/dist/components/pincode/Pincode.svelte +174 -0
  174. package/dist/components/pincode/Pincode.svelte.d.ts +33 -0
  175. package/dist/components/pincode/Pincode.svelte.d.ts.map +1 -0
  176. package/dist/components/quantityselector/QuantitySelector.js +6 -3
  177. package/dist/components/quantityselector/QuantitySelector.js.map +1 -1
  178. package/dist/{stories → components}/quantityselector/QuantitySelector.stories.d.ts +6 -4
  179. package/dist/components/quantityselector/QuantitySelector.stories.d.ts.map +1 -0
  180. package/dist/{stories → components}/quantityselector/QuantitySelector.stories.js +39 -8
  181. package/dist/components/quantityselector/QuantitySelector.svelte +67 -33
  182. package/dist/components/quantityselector/QuantitySelector.svelte.d.ts +9 -2
  183. package/dist/components/quantityselector/QuantitySelector.svelte.d.ts.map +1 -1
  184. package/dist/components/quantityselector/quantitySelector.types.d.ts +2 -0
  185. package/dist/components/quantityselector/quantitySelector.types.d.ts.map +1 -0
  186. package/dist/components/radio/Radio.js +5 -2
  187. package/dist/components/radio/Radio.js.map +1 -1
  188. package/dist/{stories → components}/radio/Radio.stories.d.ts +5 -5
  189. package/dist/components/radio/Radio.stories.d.ts.map +1 -0
  190. package/dist/components/radio/Radio.svelte +19 -16
  191. package/dist/components/radio/Radio.svelte.d.ts.map +1 -1
  192. package/dist/components/radiogroup/RadioGroup.js +7 -4
  193. package/dist/components/radiogroup/RadioGroup.js.map +1 -1
  194. package/dist/{stories/radio-group/Radio-group.stories.d.ts → components/radiogroup/RadioGroup.stories.d.ts} +5 -5
  195. package/dist/components/radiogroup/RadioGroup.stories.d.ts.map +1 -0
  196. package/dist/{stories/radio-group/Radio-group.stories.js → components/radiogroup/RadioGroup.stories.js} +9 -1
  197. package/dist/components/radiogroup/RadioGroup.svelte +43 -41
  198. package/dist/components/radiogroup/RadioGroup.svelte.d.ts +4 -2
  199. package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -1
  200. package/dist/components/select/Select.js +6 -3
  201. package/dist/components/select/Select.js.map +1 -1
  202. package/dist/{stories → components}/select/Select.stories.d.ts +6 -5
  203. package/dist/components/select/Select.stories.d.ts.map +1 -0
  204. package/dist/{stories → components}/select/Select.stories.js +13 -0
  205. package/dist/components/select/Select.svelte +40 -25
  206. package/dist/components/select/Select.svelte.d.ts +4 -1
  207. package/dist/components/select/Select.svelte.d.ts.map +1 -1
  208. package/dist/components/statusbadge/StatusBadge.js +5 -2
  209. package/dist/components/statusbadge/StatusBadge.js.map +1 -1
  210. package/dist/{stories/status-badge → components/statusbadge}/StatusBadge.stories.d.ts +5 -5
  211. package/dist/components/statusbadge/StatusBadge.stories.d.ts.map +1 -0
  212. package/dist/{stories/status-badge → components/statusbadge}/StatusBadge.stories.js +1 -1
  213. package/dist/components/statusbadge/StatusBadge.svelte +26 -23
  214. package/dist/components/statusbadge/StatusBadge.svelte.d.ts +2 -2
  215. package/dist/components/statusbadge/StatusBadge.svelte.d.ts.map +1 -1
  216. package/dist/components/statusbadge/StatusBadge.types.d.ts +2 -0
  217. package/dist/components/statusbadge/StatusBadge.types.d.ts.map +1 -0
  218. package/dist/components/statusbadge/StatusBadge.types.js +1 -0
  219. package/dist/components/statusdot/StatusDot.js +7 -0
  220. package/dist/components/statusdot/StatusDot.js.map +1 -0
  221. package/dist/components/statusdot/StatusDot.stories.d.ts +11 -0
  222. package/dist/components/statusdot/StatusDot.stories.d.ts.map +1 -0
  223. package/dist/components/statusdot/StatusDot.stories.js +66 -0
  224. package/dist/components/statusdot/StatusDot.svelte +59 -0
  225. package/dist/components/statusdot/StatusDot.svelte.d.ts +17 -0
  226. package/dist/components/statusdot/StatusDot.svelte.d.ts.map +1 -0
  227. package/dist/components/statusdot/StatusDot.types.d.ts +3 -0
  228. package/dist/components/statusdot/StatusDot.types.d.ts.map +1 -0
  229. package/dist/components/statusdot/StatusDot.types.js +1 -0
  230. package/dist/components/statusnotification/StatusNotification.js +6 -2
  231. package/dist/components/statusnotification/StatusNotification.js.map +1 -1
  232. package/dist/{stories/status-notification → components/statusnotification}/StatusNotification.stories.d.ts +6 -6
  233. package/dist/components/statusnotification/StatusNotification.stories.d.ts.map +1 -0
  234. package/dist/{stories/status-notification → components/statusnotification}/StatusNotification.stories.js +11 -5
  235. package/dist/components/statusnotification/StatusNotification.svelte +384 -57
  236. package/dist/components/statusnotification/StatusNotification.svelte.d.ts +14 -3
  237. package/dist/components/statusnotification/StatusNotification.svelte.d.ts.map +1 -1
  238. package/dist/components/tabs/Tab.js +5 -2
  239. package/dist/components/tabs/Tab.js.map +1 -1
  240. package/dist/components/tabs/Tab.svelte +14 -11
  241. package/dist/components/tabs/Tab.svelte.d.ts.map +1 -1
  242. package/dist/components/tabs/Tabs.js +5 -2
  243. package/dist/components/tabs/Tabs.js.map +1 -1
  244. package/dist/components/tabs/Tabs.stories.d.ts +7 -0
  245. package/dist/components/tabs/Tabs.stories.d.ts.map +1 -0
  246. package/dist/{stories → components}/tabs/Tabs.stories.js +1 -0
  247. package/dist/components/tabs/Tabs.svelte +22 -19
  248. package/dist/components/tabs/Tabs.svelte.d.ts.map +1 -1
  249. package/dist/components/tags/Tag.js +5 -2
  250. package/dist/components/tags/Tag.js.map +1 -1
  251. package/dist/components/tags/Tag.svelte +38 -35
  252. package/dist/components/tags/Tag.svelte.d.ts.map +1 -1
  253. package/dist/components/tags/TagContextualised.js +5 -2
  254. package/dist/components/tags/TagContextualised.js.map +1 -1
  255. package/dist/components/tags/TagContextualised.svelte +39 -36
  256. package/dist/components/tags/TagContextualised.svelte.d.ts.map +1 -1
  257. package/dist/components/tags/TagInteractive.js +5 -2
  258. package/dist/components/tags/TagInteractive.js.map +1 -1
  259. package/dist/components/tags/TagInteractive.svelte +38 -35
  260. package/dist/components/tags/TagInteractive.svelte.d.ts.map +1 -1
  261. package/dist/components/tags/TagRemovable.js +5 -2
  262. package/dist/components/tags/TagRemovable.js.map +1 -1
  263. package/dist/components/tags/TagRemovable.svelte +38 -35
  264. package/dist/components/tags/TagRemovable.svelte.d.ts.map +1 -1
  265. package/dist/components/tags/TagSelectable.js +5 -2
  266. package/dist/components/tags/TagSelectable.js.map +1 -1
  267. package/dist/components/tags/TagSelectable.svelte +38 -35
  268. package/dist/components/tags/TagSelectable.svelte.d.ts.map +1 -1
  269. package/dist/components/tags/Tags.stories.d.ts.map +1 -0
  270. package/dist/components/tags/TagsContextualised.stories.d.ts.map +1 -0
  271. package/dist/components/tags/TagsInteractive.stories.d.ts.map +1 -0
  272. package/dist/components/tags/TagsRemovable.stories.d.ts.map +1 -0
  273. package/dist/components/tags/TagsSelectable.stories.d.ts.map +1 -0
  274. package/dist/components/textarea/Textarea.js +6 -3
  275. package/dist/components/textarea/Textarea.js.map +1 -1
  276. package/dist/{stories → components}/textarea/Textarea.stories.d.ts +5 -5
  277. package/dist/components/textarea/Textarea.stories.d.ts.map +1 -0
  278. package/dist/components/textarea/Textarea.svelte +48 -35
  279. package/dist/components/textarea/Textarea.svelte.d.ts +4 -0
  280. package/dist/components/textarea/Textarea.svelte.d.ts.map +1 -1
  281. package/dist/components/textinput/Textinput.js +8 -5
  282. package/dist/components/textinput/Textinput.js.map +1 -1
  283. package/dist/{stories → components}/textinput/Textinput.stories.d.ts +4 -4
  284. package/dist/components/textinput/Textinput.stories.d.ts.map +1 -0
  285. package/dist/{stories → components}/textinput/Textinput.stories.js +12 -0
  286. package/dist/components/textinput/Textinput.svelte +60 -46
  287. package/dist/components/textinput/Textinput.svelte.d.ts +7 -2
  288. package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -1
  289. package/dist/components/toaster/Toaster.js +13 -0
  290. package/dist/components/toaster/Toaster.js.map +1 -0
  291. package/dist/components/toaster/Toaster.stories.d.ts +20 -0
  292. package/dist/components/toaster/Toaster.stories.d.ts.map +1 -0
  293. package/dist/components/toaster/Toaster.stories.js +156 -0
  294. package/dist/components/toaster/Toaster.svelte +640 -0
  295. package/dist/components/toaster/Toaster.svelte.d.ts +54 -0
  296. package/dist/components/toaster/Toaster.svelte.d.ts.map +1 -0
  297. package/dist/components/toggle/Toggle.js +5 -2
  298. package/dist/components/toggle/Toggle.js.map +1 -1
  299. package/dist/{stories → components}/toggle/Toggle.stories.d.ts +5 -5
  300. package/dist/components/toggle/Toggle.stories.d.ts.map +1 -0
  301. package/dist/components/toggle/Toggle.svelte +41 -35
  302. package/dist/components/toggle/Toggle.svelte.d.ts +4 -19
  303. package/dist/components/toggle/Toggle.svelte.d.ts.map +1 -1
  304. package/dist/components/togglegroup/ToggleGroup.js +6 -3
  305. package/dist/components/togglegroup/ToggleGroup.js.map +1 -1
  306. package/dist/{stories/toggle-group/Toggle-group.stories.d.ts → components/togglegroup/ToggleGroup.stories.d.ts} +5 -5
  307. package/dist/components/togglegroup/ToggleGroup.stories.d.ts.map +1 -0
  308. package/dist/{stories/toggle-group/Toggle-group.stories.js → components/togglegroup/ToggleGroup.stories.js} +1 -1
  309. package/dist/components/togglegroup/ToggleGroup.svelte +39 -36
  310. package/dist/components/togglegroup/ToggleGroup.svelte.d.ts.map +1 -1
  311. package/dist/components/tooltip/Tooltip.js +9 -0
  312. package/dist/components/tooltip/Tooltip.js.map +1 -0
  313. package/dist/components/tooltip/Tooltip.stories.d.ts +11 -0
  314. package/dist/components/tooltip/Tooltip.stories.d.ts.map +1 -0
  315. package/dist/components/tooltip/Tooltip.stories.js +73 -0
  316. package/dist/components/tooltip/Tooltip.svelte +163 -0
  317. package/dist/components/tooltip/Tooltip.svelte.d.ts +34 -0
  318. package/dist/components/tooltip/Tooltip.svelte.d.ts.map +1 -0
  319. package/dist/custom-element.js +3 -3
  320. package/dist/custom-element.js.map +1 -1
  321. package/dist/documentation/Migration.mdx +419 -0
  322. package/dist/documentation/Svelte/Introduction.mdx +1 -5
  323. package/dist/documentation/Svelte/usingPresets.mdx +7 -12
  324. package/dist/documentation/WebComponents/Introduction.mdx +2 -5
  325. package/dist/documentation/WebComponents/usingPresets.mdx +7 -11
  326. package/dist/each.js +1 -1
  327. package/dist/each.js.map +1 -1
  328. package/dist/if.js +1 -1
  329. package/dist/index-client.js +2 -0
  330. package/dist/index-client.js.map +1 -0
  331. package/dist/input.js +1 -1
  332. package/dist/input.js.map +1 -1
  333. package/dist/legacy.js +1 -1
  334. package/dist/main.d.ts +14 -4
  335. package/dist/main.d.ts.map +1 -1
  336. package/dist/main.js +14 -4
  337. package/dist/slot.js +1 -1
  338. package/dist/snippet.js +2 -0
  339. package/dist/snippet.js.map +1 -0
  340. package/package.json +13 -17
  341. package/dist/components/button/IconButton.js +0 -4
  342. package/dist/components/button/IconButton.js.map +0 -1
  343. package/dist/components/button/IconButton.svelte +0 -396
  344. package/dist/components/button/IconButton.svelte.d.ts.map +0 -1
  345. package/dist/components/number-badge/NumberBadge.js +0 -4
  346. package/dist/components/number-badge/NumberBadge.js.map +0 -1
  347. package/dist/components/number-badge/NumberBadge.svelte.d.ts.map +0 -1
  348. package/dist/components/number-badge/number-badge.types.d.ts.map +0 -1
  349. package/dist/components/overlay/OverlayLoader.js +0 -27
  350. package/dist/components/overlay/OverlayLoader.js.map +0 -1
  351. package/dist/components/overlay/OverlayLoader.svelte.d.ts.map +0 -1
  352. package/dist/components/statusbadge/StatusDot.js +0 -4
  353. package/dist/components/statusbadge/StatusDot.js.map +0 -1
  354. package/dist/components/statusbadge/StatusDot.svelte +0 -49
  355. package/dist/components/statusbadge/StatusDot.svelte.d.ts +0 -9
  356. package/dist/components/statusbadge/StatusDot.svelte.d.ts.map +0 -1
  357. package/dist/components/statusbadge/badge.types.d.ts +0 -3
  358. package/dist/components/statusbadge/badge.types.d.ts.map +0 -1
  359. package/dist/icons-storybook.js +0 -88
  360. package/dist/stories/breadcrumb/Breadcrumb.stories.d.ts +0 -6
  361. package/dist/stories/breadcrumb/Breadcrumb.stories.d.ts.map +0 -1
  362. package/dist/stories/breadcrumb/Breadcrumb.stories.js +0 -78
  363. package/dist/stories/button/Button.stories.d.ts.map +0 -1
  364. package/dist/stories/button/IconButton.stories.d.ts.map +0 -1
  365. package/dist/stories/checkbox/Checkbox.stories.d.ts.map +0 -1
  366. package/dist/stories/checkbox-group/Checkbox-group.stories.d.ts.map +0 -1
  367. package/dist/stories/drawer/Drawer.stories.d.ts.map +0 -1
  368. package/dist/stories/field/Field.stories.d.ts.map +0 -1
  369. package/dist/stories/link/Link.stories.d.ts.map +0 -1
  370. package/dist/stories/loader/Loader.stories.d.ts.map +0 -1
  371. package/dist/stories/modal/Modal.stories.d.ts.map +0 -1
  372. package/dist/stories/number-badge/NumberBadge.stories.d.ts.map +0 -1
  373. package/dist/stories/overlay/Overlay.stories.d.ts.map +0 -1
  374. package/dist/stories/overlay/OverlayLoader.stories.d.ts.map +0 -1
  375. package/dist/stories/pagination/Pagination.stories.d.ts.map +0 -1
  376. package/dist/stories/passwordinput/PasswordInput.stories.d.ts.map +0 -1
  377. package/dist/stories/quantityselector/QuantitySelector.stories.d.ts.map +0 -1
  378. package/dist/stories/radio/Radio.stories.d.ts.map +0 -1
  379. package/dist/stories/radio-group/Radio-group.stories.d.ts.map +0 -1
  380. package/dist/stories/select/Select.stories.d.ts.map +0 -1
  381. package/dist/stories/status-badge/StatusBadge.stories.d.ts.map +0 -1
  382. package/dist/stories/status-dot/StatusDot.stories.d.ts +0 -14
  383. package/dist/stories/status-dot/StatusDot.stories.d.ts.map +0 -1
  384. package/dist/stories/status-dot/StatusDot.stories.js +0 -60
  385. package/dist/stories/status-notification/StatusNotification.stories.d.ts.map +0 -1
  386. package/dist/stories/tabs/Tabs.stories.d.ts +0 -7
  387. package/dist/stories/tabs/Tabs.stories.d.ts.map +0 -1
  388. package/dist/stories/tags/Tags.stories.d.ts.map +0 -1
  389. package/dist/stories/tags/TagsContextualised.stories.d.ts.map +0 -1
  390. package/dist/stories/tags/TagsInteractive.stories.d.ts.map +0 -1
  391. package/dist/stories/tags/TagsRemovable.stories.d.ts.map +0 -1
  392. package/dist/stories/tags/TagsSelectable.stories.d.ts.map +0 -1
  393. package/dist/stories/textarea/Textarea.stories.d.ts.map +0 -1
  394. package/dist/stories/textinput/Textinput.stories.d.ts.map +0 -1
  395. package/dist/stories/toggle/Toggle.stories.d.ts.map +0 -1
  396. package/dist/stories/toggle-group/Toggle-group.stories.d.ts.map +0 -1
  397. /package/dist/{stories → components}/drawer/Drawer.stories.d.ts +0 -0
  398. /package/dist/{stories → components}/drawer/Drawer.stories.js +0 -0
  399. /package/dist/{stories → components}/field/Field.stories.js +0 -0
  400. /package/dist/{stories → components}/link/Link.stories.js +0 -0
  401. /package/dist/{stories → components}/loader/Loader.stories.js +0 -0
  402. /package/dist/{stories → components}/modal/Modal.stories.d.ts +0 -0
  403. /package/dist/{stories/number-badge → components/numberbadge}/NumberBadge.stories.js +0 -0
  404. /package/dist/components/{number-badge/number-badge.types.js → numberbadge/NumberBadge.types.js} +0 -0
  405. /package/dist/{stories → components}/overlay/Overlay.stories.js +0 -0
  406. /package/dist/{stories/overlay → components/overlayloader}/OverlayLoader.stories.js +0 -0
  407. /package/dist/components/{overlay → overlayloader}/OverlayLoader.svelte.d.ts +0 -0
  408. /package/dist/{stories → components}/pagination/Pagination.stories.js +0 -0
  409. /package/dist/{stories → components}/passwordinput/PasswordInput.stories.js +0 -0
  410. /package/dist/components/{statusbadge/badge.types.js → quantityselector/quantitySelector.types.js} +0 -0
  411. /package/dist/{stories → components}/radio/Radio.stories.js +0 -0
  412. /package/dist/{stories → components}/tags/Tags.stories.d.ts +0 -0
  413. /package/dist/{stories → components}/tags/Tags.stories.js +0 -0
  414. /package/dist/{stories → components}/tags/TagsContextualised.stories.d.ts +0 -0
  415. /package/dist/{stories → components}/tags/TagsContextualised.stories.js +0 -0
  416. /package/dist/{stories → components}/tags/TagsInteractive.stories.d.ts +0 -0
  417. /package/dist/{stories → components}/tags/TagsInteractive.stories.js +0 -0
  418. /package/dist/{stories → components}/tags/TagsRemovable.stories.d.ts +0 -0
  419. /package/dist/{stories → components}/tags/TagsRemovable.stories.js +0 -0
  420. /package/dist/{stories → components}/tags/TagsSelectable.stories.d.ts +0 -0
  421. /package/dist/{stories → components}/tags/TagsSelectable.stories.js +0 -0
  422. /package/dist/{stories → components}/textarea/Textarea.stories.js +0 -0
  423. /package/dist/{stories → components}/toggle/Toggle.stories.js +0 -0
@@ -100,6 +100,9 @@
100
100
  <style>/**
101
101
  * Do not edit directly, this file was auto-generated.
102
102
  */
103
+ /**
104
+ * Do not edit directly, this file was auto-generated.
105
+ */
103
106
  .mc-password-input .mc-button {
104
107
  min-width: 4rem;
105
108
  margin: 0.5rem;
@@ -108,11 +111,11 @@
108
111
  /* stylelint-disable string-no-newline */
109
112
  .mc-text-input {
110
113
  transition: box-shadow 200ms ease;
111
- background-color: var(--forms-color-background-default, #ffffff);
112
- border: var(--border-s, 1px) solid var(--forms-color-border-default, #666666);
113
- border-radius: var(--forms-radius-border, 0.25rem);
114
+ background-color: #ffffff;
115
+ border: 1px solid #666666;
116
+ border-radius: 0.25rem;
114
117
  transition: all ease 200ms;
115
- color: var(--forms-color-text-default, #000000);
118
+ color: #000000;
116
119
  display: block;
117
120
  width: 100%;
118
121
  height: 3rem;
@@ -127,9 +130,9 @@
127
130
  font-family: inherit;
128
131
  outline: none;
129
132
  padding: 0.75rem 0.6875rem;
130
- font-size: var(--font-size-150, 1rem);
131
- line-height: var(--line-height-s, 1.3);
132
- font-weight: var(--font-weight-regular, 400);
133
+ font-size: 1rem;
134
+ line-height: 1.3;
135
+ font-weight: 400;
133
136
  flex-grow: 1;
134
137
  }
135
138
  .mc-text-input__control[type=number] {
@@ -145,33 +148,33 @@
145
148
  appearance: none;
146
149
  }
147
150
  .mc-text-input__control::placeholder {
148
- color: var(--forms-color-placeholder, #666666);
151
+ color: #666666;
149
152
  }
150
153
  .mc-text-input__icon {
151
- fill: var(--forms-color-icon-default, #666666);
154
+ fill: #666666;
152
155
  height: 1.5rem;
153
156
  width: 1.5rem;
154
157
  flex-shrink: 0;
155
158
  }
156
159
  .mc-text-input:focus-within {
157
- box-shadow: 0 0 0 0.125rem var(--focus-color-mid, var(--focus-color-outline-mid, #ffffff)), 0 0 0 0.25rem var(--focus-color-outer, var(--focus-color-outline-outer, #000000));
160
+ box-shadow: 0 0 0 0.125rem var(--focus-color-mid, #ffffff), 0 0 0 0.25rem var(--focus-color-outer, #000000);
158
161
  outline: 0.125rem solid transparent;
159
162
  outline-offset: 0.125rem;
160
163
  }
161
164
  .mc-text-input:hover:not(:focus-within) {
162
- border-color: var(--forms-color-border-hover, #4d4d4d);
163
- box-shadow: 0 0 0 var(--border-s, 1px) var(--forms-color-border-hover, #4d4d4d);
165
+ border-color: #4d4d4d;
166
+ box-shadow: 0 0 0 1px #4d4d4d;
164
167
  }
165
168
  .mc-text-input:has(input:disabled) {
166
- background-color: var(--forms-color-background-disabled, #d9d9d9);
169
+ background-color: #d9d9d9;
167
170
  cursor: not-allowed;
168
171
  border-color: transparent;
169
172
  box-shadow: none;
170
- color: var(--forms-color-text-disabled, #737373);
173
+ color: #737373;
171
174
  pointer-events: none;
172
175
  }
173
176
  .mc-text-input:has(input[readonly]) {
174
- border-color: var(--forms-color-border-read-only, #cccccc);
177
+ border-color: #cccccc;
175
178
  pointer-events: none;
176
179
  }
177
180
  .mc-text-input:has(.mc-text-input__icon) {
@@ -191,8 +194,8 @@
191
194
  }
192
195
  .mc-text-input--s .mc-text-input__control {
193
196
  padding: 0.375rem 0.6875rem;
194
- font-size: var(--font-size-100, 0.875rem);
195
- line-height: var(--line-height-s, 1.3);
197
+ font-size: 0.875rem;
198
+ line-height: 1.3;
196
199
  }
197
200
  .mc-text-input--s:has(.mc-text-input__icon) {
198
201
  padding-inline-start: 0.4375rem;
@@ -201,12 +204,12 @@
201
204
  padding-inline-end: 0.4375rem;
202
205
  }
203
206
  .mc-text-input.is-invalid {
204
- border-color: var(--forms-color-border-invalid, #ea302d);
205
- box-shadow: 0 0 0 var(--border-s, 1px) var(--forms-color-border-invalid, #ea302d);
207
+ border-color: #ea302d;
208
+ box-shadow: 0 0 0 1px #ea302d;
206
209
  }
207
210
  .mc-text-input.is-invalid:hover:not(:focus-within) {
208
- border-color: var(--forms-color-border-invalid-hover, #c61112);
209
- box-shadow: 0 0 0 var(--border-s, 1px) var(--forms-color-border-invalid-hover, #c61112);
211
+ border-color: #c61112;
212
+ box-shadow: 0 0 0 1px #c61112;
210
213
  }
211
214
  .mc-text-input * {
212
215
  box-sizing: border-box;
@@ -228,18 +231,18 @@
228
231
  appearance: none;
229
232
  cursor: pointer;
230
233
  padding: 0;
231
- border-radius: var(--radius-full, 100%);
234
+ border-radius: 100%;
232
235
  }
233
236
  .mc-controls-options__button:hover .mc-controls-options__icon {
234
- fill: var(--forms-color-icon-clear-hover, #4d4d4d);
237
+ fill: #4d4d4d;
235
238
  }
236
239
  .mc-controls-options__button:focus-visible {
237
- box-shadow: 0 0 0 0.125rem var(--focus-color-mid, var(--focus-color-outline-mid, #ffffff)), 0 0 0 0.25rem var(--focus-color-outer, var(--focus-color-outline-outer, #000000));
240
+ box-shadow: 0 0 0 0.125rem var(--focus-color-mid, #ffffff), 0 0 0 0.25rem var(--focus-color-outer, #000000);
238
241
  outline: 0.125rem solid transparent;
239
242
  outline-offset: 0.125rem;
240
243
  }
241
244
  .mc-controls-options__icon {
242
- fill: var(--forms-color-icon-clear, #666666);
245
+ fill: #666666;
243
246
  }
244
247
  .mc-controls-options__button, .mc-controls-options__icon {
245
248
  height: 1.5rem;
@@ -256,8 +259,8 @@
256
259
  width: 1px;
257
260
  }
258
261
  .mc-controls-options__unit {
259
- font-size: var(--font-size-150, 1rem);
260
- line-height: var(--line-height-s, 1.3);
261
- font-weight: var(--font-weight-semi-bold, 600);
262
- color: var(--forms-color-text-default, #000000);
262
+ font-size: 1rem;
263
+ line-height: 1.3;
264
+ font-weight: 600;
265
+ color: #000000;
263
266
  }</style>
@@ -1 +1 @@
1
- {"version":3,"file":"PasswordInput.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/passwordinput/PasswordInput.svelte.ts"],"names":[],"mappings":"AAKE,UAAU,KAAK;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AA4DH,QAAA,MAAM,aAAa,gDAAsC,CAAC;AAC1D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"PasswordInput.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/passwordinput/PasswordInput.svelte.ts"],"names":[],"mappings":"AAKE,UAAU,KAAK;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AA4DH,QAAA,MAAM,aAAa,gDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
@@ -0,0 +1,9 @@
1
+ import{x as T,$ as K,y as R,a0 as Y,a1 as F,c as G,p as H,a as J,b as p,v as S,l as E,m as s,z as N,a2 as Q,w as L,f as q,D as U,o as A,h as j,i as V,j as g,r as W,t as X,e as Z}from"../../custom-element.js";import{c as $}from"../../index-client.js";import{e as ee,i as te}from"../../each.js";import{b as ne,C as ae,r as se,s as z,e as re}from"../../attributes.js";function M(a,n){return a===n||(a==null?void 0:a[F])===n}function ie(a={},n,d,f){return T(()=>{var l,o;return K(()=>{l=o,o=(f==null?void 0:f())||[],R(()=>{a!==d(...o)&&(n(a,...o),l&&M(d(...l),a)&&n(null,...l))})}),()=>{Y(()=>{o&&M(d(...o),a)&&n(null,...o)})}}),a}function oe(a){return function(...n){var d=n[0];return d.preventDefault(),a==null?void 0:a.apply(this,n)}}var le=q('<input type="text" inputmode="numeric" maxlength="1" pattern="\\d*" autocomplete="one-time-code"/>'),ce=q("<div></div>");const de={hash:"svelte-kgmgk5",code:`/**
2
+ * Do not edit directly, this file was auto-generated.
3
+ */
4
+ /**
5
+ * Do not edit directly, this file was auto-generated.
6
+ */.mc-pincode-input.svelte-kgmgk5 {display:inline-flex;column-gap:0.5rem;}
7
+ @media screen and (width <= 1024px) {.mc-pincode-input.svelte-kgmgk5 {flex-wrap:wrap;row-gap:0.75rem;}
8
+ }.mc-pincode-input__control.svelte-kgmgk5 {font-size:1.75rem;transition:box-shadow 200ms ease;background-color:#ffffff;border:1px solid #666666;border-radius:0.25rem;transition:all ease 200ms;color:#000000;display:block;width:3rem;box-sizing:border-box;height:4rem;text-align:center;line-height:1.3;}.mc-pincode-input__control.svelte-kgmgk5::placeholder {color:#666666;}.mc-pincode-input__control.svelte-kgmgk5:focus-within {box-shadow:0 0 0 0.125rem var(--focus-color-mid, #ffffff), 0 0 0 0.25rem var(--focus-color-outer, #000000);outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-pincode-input__control.svelte-kgmgk5:hover:not(:focus-within) {border-color:#4d4d4d;box-shadow:0 0 0 1px #4d4d4d;}.mc-pincode-input__control.svelte-kgmgk5:disabled {background-color:#d9d9d9;cursor:not-allowed;border-color:transparent;box-shadow:none;color:#737373;pointer-events:none;}.mc-pincode-input__control.is-invalid.svelte-kgmgk5 {border-color:#ea302d;box-shadow:0 0 0 1px #ea302d;}.mc-pincode-input__control.is-invalid.svelte-kgmgk5:hover:not(:focus-within) {border-color:#c61112;box-shadow:0 0 0 1px #c61112;}`};function ue(a,n){H(n,!0),J(a,de);const d=$();let f=p(n,"id",7),l=p(n,"length",7,6),o=p(n,"name",7),w=p(n,"value",7,""),k=p(n,"isInvalid",7,!1),_=p(n,"disabled",7,!1),D=p(n,"readonly",7,!1),B=U(n,["$$slots","$$events","$$legacy","$$host","id","length","name","value","isInvalid","disabled","readonly"]);const u=N(()=>typeof l()=="string"?parseInt(l(),10)||6:l());let m=S(E(Array(s(u)).fill(""))),x=S(E([]));Q(()=>{const e=String(w()??"");L(m,Array.from({length:s(u)},(t,i)=>e[i]??""),!0)});function v(e){queueMicrotask(()=>{var t,i;return(i=(t=s(x))==null?void 0:t[e])==null?void 0:i.focus()})}function I(){const e=s(m).join("");d("input",{value:e}),d("change",{value:e})}function C(e,t){const r=e.target.value.replace(/\D/g,"").slice(0,1);s(m)[t]=r,I(),r&&t+1<s(u)&&v(t+1)}function O(e,t){e.key==="ArrowLeft"&&t>0?(e.preventDefault(),v(t-1)):e.key==="ArrowRight"&&t<s(u)-1?(e.preventDefault(),v(t+1)):e.key==="Backspace"&&s(m)[t]===""&&t>0&&(s(m)[t-1]="",I(),v(t-1))}function P(e){var i;e.preventDefault();const t=(((i=e.clipboardData)==null?void 0:i.getData("text"))??"").replace(/\D/g,"").slice(0,s(u));L(m,Array.from({length:s(u)},(r,b)=>t[b]??""),!0),I(),v(Math.min(t.length,s(u)-1))}var h=ce();return ne(h,e=>({class:"mc-pincode-input",...B,[ae]:e}),[()=>({"is-invalid":k()})],void 0,"svelte-kgmgk5"),ee(h,21,()=>Array(s(u)),te,(e,t,i)=>{var r=le();se(r),z(r,"id",`pincodeItem${i}`);let b;ie(r,(c,y)=>s(x)[y]=c,c=>{var y;return(y=s(x))==null?void 0:y[c]},()=>[i]),X(c=>{b=Z(r,1,"mc-pincode-input__control svelte-kgmgk5",null,b,c),z(r,"name",o()??`pincode-${f()}`),r.disabled=_(),r.readOnly=D(),re(r,s(m)[i])},[()=>({"is-invalid":k()})]),A("input",r,c=>C(c,i)),A("keydown",r,c=>O(c,i)),j(e,r)}),W(h),A("paste",h,oe(P)),j(a,h),V({get id(){return f()},set id(e){f(e),g()},get length(){return l()},set length(e=6){l(e),g()},get name(){return o()},set name(e){o(e),g()},get value(){return w()},set value(e=""){w(e),g()},get isInvalid(){return k()},set isInvalid(e=!1){k(e),g()},get disabled(){return _()},set disabled(e=!1){_(e),g()},get readonly(){return D()},set readonly(e=!1){D(e),g()}})}customElements.define("m-pincode",G(ue,{id:{},length:{},name:{},value:{},isInvalid:{},disabled:{},readonly:{}},[],[],!0));
9
+ //# sourceMappingURL=Pincode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pincode.js","sources":["../../../node_modules/svelte/src/internal/client/dom/elements/bindings/this.js","../../../node_modules/svelte/src/internal/client/dom/legacy/event-modifiers.js","../../../src/components/pincode/Pincode.svelte"],"sourcesContent":["import { STATE_SYMBOL } from '#client/constants';\nimport { effect, render_effect } from '../../../reactivity/effects.js';\nimport { untrack } from '../../../runtime.js';\nimport { queue_micro_task } from '../../task.js';\n\n/**\n * @param {any} bound_value\n * @param {Element} element_or_component\n * @returns {boolean}\n */\nfunction is_bound_this(bound_value, element_or_component) {\n\treturn (\n\t\tbound_value === element_or_component || bound_value?.[STATE_SYMBOL] === element_or_component\n\t);\n}\n\n/**\n * @param {any} element_or_component\n * @param {(value: unknown, ...parts: unknown[]) => void} update\n * @param {(...parts: unknown[]) => unknown} get_value\n * @param {() => unknown[]} [get_parts] Set if the this binding is used inside an each block,\n * \t\t\t\t\t\t\t\t\t\treturns all the parts of the each block context that are used in the expression\n * @returns {void}\n */\nexport function bind_this(element_or_component = {}, update, get_value, get_parts) {\n\teffect(() => {\n\t\t/** @type {unknown[]} */\n\t\tvar old_parts;\n\n\t\t/** @type {unknown[]} */\n\t\tvar parts;\n\n\t\trender_effect(() => {\n\t\t\told_parts = parts;\n\t\t\t// We only track changes to the parts, not the value itself to avoid unnecessary reruns.\n\t\t\tparts = get_parts?.() || [];\n\n\t\t\tuntrack(() => {\n\t\t\t\tif (element_or_component !== get_value(...parts)) {\n\t\t\t\t\tupdate(element_or_component, ...parts);\n\t\t\t\t\t// If this is an effect rerun (cause: each block context changes), then nullfiy the binding at\n\t\t\t\t\t// the previous position if it isn't already taken over by a different effect.\n\t\t\t\t\tif (old_parts && is_bound_this(get_value(...old_parts), element_or_component)) {\n\t\t\t\t\t\tupdate(null, ...old_parts);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\treturn () => {\n\t\t\t// We cannot use effects in the teardown phase, we we use a microtask instead.\n\t\t\tqueue_micro_task(() => {\n\t\t\t\tif (parts && is_bound_this(get_value(...parts), element_or_component)) {\n\t\t\t\t\tupdate(null, ...parts);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\t});\n\n\treturn element_or_component;\n}\n","import { noop } from '../../../shared/utils.js';\nimport { user_pre_effect } from '../../reactivity/effects.js';\nimport { on } from '../elements/events.js';\n\n/**\n * Substitute for the `trusted` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function trusted(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tif (event.isTrusted) {\n\t\t\t// @ts-ignore\n\t\t\tfn?.apply(this, args);\n\t\t}\n\t};\n}\n\n/**\n * Substitute for the `self` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function self(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\t// @ts-ignore\n\t\tif (event.target === this) {\n\t\t\t// @ts-ignore\n\t\t\tfn?.apply(this, args);\n\t\t}\n\t};\n}\n\n/**\n * Substitute for the `stopPropagation` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function stopPropagation(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tevent.stopPropagation();\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `once` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function once(fn) {\n\tvar ran = false;\n\n\treturn function (...args) {\n\t\tif (ran) return;\n\t\tran = true;\n\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `stopImmediatePropagation` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function stopImmediatePropagation(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tevent.stopImmediatePropagation();\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `preventDefault` event modifier\n * @deprecated\n * @param {(event: Event, ...args: Array<unknown>) => void} fn\n * @returns {(event: Event, ...args: unknown[]) => void}\n */\nexport function preventDefault(fn) {\n\treturn function (...args) {\n\t\tvar event = /** @type {Event} */ (args[0]);\n\t\tevent.preventDefault();\n\t\t// @ts-ignore\n\t\treturn fn?.apply(this, args);\n\t};\n}\n\n/**\n * Substitute for the `passive` event modifier, implemented as an action\n * @deprecated\n * @param {HTMLElement} node\n * @param {[event: string, handler: () => EventListener]} options\n */\nexport function passive(node, [event, handler]) {\n\tuser_pre_effect(() => {\n\t\treturn on(node, event, handler() ?? noop, {\n\t\t\tpassive: true\n\t\t});\n\t});\n}\n\n/**\n * Substitute for the `nonpassive` event modifier, implemented as an action\n * @deprecated\n * @param {HTMLElement} node\n * @param {[event: string, handler: () => EventListener]} options\n */\nexport function nonpassive(node, [event, handler]) {\n\tuser_pre_effect(() => {\n\t\treturn on(node, event, handler() ?? noop, {\n\t\t\tpassive: false\n\t\t});\n\t});\n}\n","<svelte:options customElement={{ tag: 'm-pincode' }} />\n\n<script lang=\"ts\">\n import { createEventDispatcher } from 'svelte';\n\n type PincodeLen = 4 | 5 | 6;\n interface Props {\n id: string;\n length?: PincodeLen | string; // <- peut arriver en string via l'attribut\n name?: string;\n value?: string | number;\n isInvalid?: boolean;\n disabled?: boolean;\n readonly?: boolean;\n [key: string]: any;\n }\n\n const dispatch = createEventDispatcher();\n\n let {\n id,\n length = 6,\n name,\n value = '',\n isInvalid = false,\n disabled = false,\n readonly = false,\n ...attrsAndEvents\n }: Props = $props();\n\n // Normalisation: length numérique (ex. \"6\" -> 6)\n const L = $derived(\n typeof length === 'string' ? parseInt(length, 10) || 6 : length,\n );\n\n // État minimal\n let otp = $state<string[]>(Array(L).fill(''));\n let inputs = $state<HTMLInputElement[]>([]);\n\n // Sync depuis props (value/length normalisé)\n $effect(() => {\n const incoming = String(value ?? '');\n otp = Array.from({ length: L }, (_, i) => incoming[i] ?? '');\n });\n\n function focusInput(i: number) {\n queueMicrotask(() => inputs?.[i]?.focus());\n }\n\n function emit() {\n const joined = otp.join('');\n dispatch('input', { value: joined });\n dispatch('change', { value: joined });\n }\n\n function onInput(e: Event, index: number) {\n const el = e.target as HTMLInputElement;\n const digit = el.value.replace(/\\D/g, '').slice(0, 1);\n otp[index] = digit;\n emit();\n if (digit && index + 1 < L) focusInput(index + 1);\n }\n\n function onKeyDown(e: KeyboardEvent, index: number) {\n if (e.key === 'ArrowLeft' && index > 0) {\n e.preventDefault();\n focusInput(index - 1);\n } else if (e.key === 'ArrowRight' && index < L - 1) {\n e.preventDefault();\n focusInput(index + 1);\n } else if (e.key === 'Backspace' && otp[index] === '' && index > 0) {\n otp[index - 1] = '';\n emit();\n focusInput(index - 1);\n }\n }\n\n function onPaste(e: ClipboardEvent) {\n e.preventDefault();\n const pasted = (e.clipboardData?.getData('text') ?? '')\n .replace(/\\D/g, '')\n .slice(0, L);\n otp = Array.from({ length: L }, (_, i) => pasted[i] ?? '');\n emit();\n focusInput(Math.min(pasted.length, L - 1));\n }\n</script>\n\n<div\n class=\"mc-pincode-input\"\n on:paste|preventDefault={onPaste}\n class:is-invalid={isInvalid}\n {...attrsAndEvents}\n>\n {#each Array(L) as _, i}\n <input\n id={`pincodeItem${i}`}\n bind:this={inputs[i]}\n class=\"mc-pincode-input__control\"\n class:is-invalid={isInvalid}\n type=\"text\"\n inputmode=\"numeric\"\n maxlength=\"1\"\n pattern=\"\\d*\"\n autocomplete=\"one-time-code\"\n name={name ?? `pincode-${id}`}\n {disabled}\n {readonly}\n value={otp[i]}\n on:input={(e) => onInput(e, i)}\n on:keydown={(e) => onKeyDown(e as KeyboardEvent, i)}\n />\n {/each}\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/pincode-input';\n</style>\n"],"names":["is_bound_this","bound_value","element_or_component","STATE_SYMBOL","bind_this","update","get_value","get_parts","effect","old_parts","parts","render_effect","untrack","queue_micro_task","preventDefault","fn","args","event","dispatch","createEventDispatcher","id","$.prop","$$props","length","name","value","isInvalid","disabled","readonly","attrsAndEvents","$.rest_props","L","$.derived","otp","$.get","inputs","$.state","$.proxy","$.user_effect","incoming","$.set","_","focusInput","i","emit","joined","onInput","index","digit","onKeyDown","onPaste","pasted","_a","$.attribute_effect","div","$0","$.index","$$anchor","$$value","$.set_attribute","input","$.set_value","$.event","e"],"mappings":"6WAUA,SAASA,EAAcC,EAAaC,EAAsB,CACzD,OACCD,IAAgBC,IAAwBD,GAAA,YAAAA,EAAcE,MAAkBD,CAE1E,CAUO,SAASE,GAAUF,EAAuB,CAAA,EAAIG,EAAQC,EAAWC,EAAW,CAClF,OAAAC,EAAO,IAAM,CAEZ,IAAIC,EAGAC,EAEJ,OAAAC,EAAc,IAAM,CACnBF,EAAYC,EAEZA,GAAQH,GAAA,YAAAA,MAAiB,CAAE,EAE3BK,EAAQ,IAAM,CACTV,IAAyBI,EAAU,GAAGI,CAAK,IAC9CL,EAAOH,EAAsB,GAAGQ,CAAK,EAGjCD,GAAaT,EAAcM,EAAU,GAAGG,CAAS,EAAGP,CAAoB,GAC3EG,EAAO,KAAM,GAAGI,CAAS,EAG/B,CAAI,CACJ,CAAG,EAEM,IAAM,CAEZI,EAAiB,IAAM,CAClBH,GAASV,EAAcM,EAAU,GAAGI,CAAK,EAAGR,CAAoB,GACnEG,EAAO,KAAM,GAAGK,CAAK,CAE1B,CAAI,CACD,CACH,CAAE,EAEMR,CACR,CC+BO,SAASY,GAAeC,EAAI,CAClC,OAAO,YAAaC,EAAM,CACzB,IAAIC,EAA8BD,EAAK,CAAC,EACxC,OAAAC,EAAM,eAAgB,EAEfF,GAAA,YAAAA,EAAI,MAAM,KAAMC,EACvB,CACF;;;;;;;6mCClGA,iBAiBQ,MAAAE,EAAWC,EAAqB,MAGpCC,EAAEC,EAAAC,EAAA,KAAA,CAAA,EACFC,iBAAS,CAAC,EACVC,EAAIH,EAAAC,EAAA,OAAA,CAAA,EACJG,gBAAQ,EAAE,EACVC,oBAAY,EAAK,EACjBC,mBAAW,EAAK,EAChBC,mBAAW,EAAK,EACbC,EAAAC,EAAAR,EAAA,2GAIC,MAAAS,EACGC,EAAA,IAAA,OAAAT,EAAW,GAAA,SAAW,SAASA,EAAQ,EAAA,EAAE,GAAK,EAAIA,EAAM,CAAA,EAI7D,IAAAU,MAAuB,MAAKC,EAACH,CAAC,CAAE,EAAA,KAAK,EAAE,CAAA,CAAA,EACvCI,EAAMC,EAAAC,EAAA,CAAA,CAAA,CAAA,EAGVC,EAAc,IAAA,CACN,MAAAC,EAAW,OAAOd,EAAK,GAAI,EAAE,EACnCe,EAAAP,EAAM,MAAM,KAAI,CAAG,OAAQC,EAAAH,CAAC,CAAK,EAAA,CAAAU,EAAG,IAAMF,EAAS,CAAC,GAAK,EAAE,EAAA,EAAA,EAC5D,WAEQG,EAAWC,EAAW,CAC7B,eAAqB,IAAAT,SAAAA,OAAAA,GAAAA,EAAAA,EAAAC,CAAM,IAAND,YAAAA,EAASS,KAATT,YAAAA,EAAa,QAAK,CACzC,CAES,SAAAU,GAAO,CACR,MAAAC,EAASX,EAAAD,CAAG,EAAC,KAAK,EAAE,EAC1Bf,EAAS,QAAW,CAAA,MAAO2B,CAAM,CAAA,EACjC3B,EAAS,SAAY,CAAA,MAAO2B,CAAM,CAAA,CACpC,CAES,SAAAC,EAAQ,EAAUC,EAAe,CAElC,MAAAC,EADK,EAAE,OACI,MAAM,QAAQ,MAAO,EAAE,EAAE,MAAM,EAAG,CAAC,IACpDf,CAAG,EAACc,CAAK,EAAIC,EACbJ,EAAI,EACAI,GAASD,EAAQ,EAACb,EAAGH,CAAC,GAAEW,EAAWK,EAAQ,CAAC,CAClD,CAES,SAAAE,EAAU,EAAkBF,EAAe,CAC9C,EAAE,MAAQ,aAAeA,EAAQ,GACnC,EAAE,eAAc,EAChBL,EAAWK,EAAQ,CAAC,GACX,EAAE,MAAQ,cAAgBA,EAAQb,EAAAH,CAAC,EAAG,GAC/C,EAAE,eAAc,EAChBW,EAAWK,EAAQ,CAAC,GACX,EAAE,MAAQ,aAAeb,EAAAD,CAAG,EAACc,CAAK,IAAM,IAAMA,EAAQ,IAC/Db,EAAAD,CAAG,EAACc,EAAQ,CAAC,EAAI,GACjBH,EAAI,EACJF,EAAWK,EAAQ,CAAC,EAExB,UAESG,EAAQ,EAAmB,OAClC,EAAE,eAAc,QACVC,KAAUC,EAAA,EAAE,gBAAF,YAAAA,EAAiB,QAAQ,UAAW,IACjD,QAAQ,MAAO,EAAE,EACjB,MAAM,EAAClB,EAAEH,CAAC,CAAA,EACbS,EAAAP,EAAM,MAAM,KAAI,CAAG,OAAQC,EAAAH,CAAC,CAAK,EAAA,CAAAU,EAAGE,IAAMQ,EAAOR,CAAC,GAAK,EAAE,EAAA,EAAA,EACzDC,EAAI,EACJF,EAAW,KAAK,IAAIS,EAAO,OAAMjB,EAAEH,CAAC,EAAG,CAAC,CAAA,CAC1C,YAOIsB,OAAAA,GAAAC,EAAAC,IAAA,CAAA,MAAA,mBAAA,GAAA1B,+BADcH,EAAS,CAAA,EAAA,EAAA,OAAA,eAAA,cAGpB,MAAKQ,EAACH,CAAC,CAAA,EAAAyB,GAAA,CAAAC,EAAKhB,EAAC,IAAA,yCAEE,CAAC,EAAA,gBACDE,IAACT,EAARC,CAAM,EAACQ,CAAC,EAAAe,EAADf,GAACT,OAAAA,OAAAA,EAAAA,EAARC,CAAM,IAAED,YAAAA,EAADS,IAAC,IAAA,CAAD,CAAC,CAAA,oEAQbgB,EAAAC,EAAA,OAAApC,EAAI,cAAeJ,EAAE,CAAA,EAAA,gCAGpByC,GAAAD,EAAA1B,EAAAD,CAAG,EAAC,CAAC,CAAA,uBATMP,EAAS,GAAA,GAUhBoC,EAAA,QAAAF,EAAAG,GAAMjB,EAAQiB,EAAG,CAAC,CAAA,EAChBD,EAAA,UAAAF,EAAAG,GAAMd,EAAUc,EAAoB,CAAC,CAAA,+BApB7Bb,CAAO,CAAA,2FArErB,EAAC,4FAEF,GAAE,uDACE,GAAK,qDACN,GAAK,qDACL,GAAK,YA4DpB","x_google_ignoreList":[0,1]}
@@ -0,0 +1,14 @@
1
+ import type { Meta } from '@storybook/html-vite';
2
+ /**
3
+ * The `MPincode` component is the **Svelte / WebComponent** implementation
4
+ * of the Mozaic Pincode Input.
5
+ */
6
+ declare const _default: Meta;
7
+ export default _default;
8
+ export declare const Default: any;
9
+ export declare const FourDigits: any;
10
+ export declare const WithInitialValue: any;
11
+ export declare const Disabled: any;
12
+ export declare const Readonly: any;
13
+ export declare const Invalid: any;
14
+ //# sourceMappingURL=Pincode.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pincode.stories.d.ts","sourceRoot":"","sources":["../../../src/components/pincode/Pincode.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAI1D;;;GAGG;wBA2DE,IAAI;AAzDT,wBAyDU;AAqBV,eAAO,MAAM,OAAO,KAAoB,CAAC;AAoBzC,eAAO,MAAM,UAAU,KAAoB,CAAC;AAe5C,eAAO,MAAM,gBAAgB,KAAoB,CAAC;AAclD,eAAO,MAAM,QAAQ,KAAoB,CAAC;AAW1C,eAAO,MAAM,QAAQ,KAAoB,CAAC;AAW1C,eAAO,MAAM,OAAO,KAAoB,CAAC"}
@@ -0,0 +1,140 @@
1
+ import { userEvent, expect, within } from 'storybook/test';
2
+ import { action } from 'storybook/actions';
3
+ /**
4
+ * The `MPincode` component is the **Svelte / WebComponent** implementation
5
+ * of the Mozaic Pincode Input.
6
+ */
7
+ export default {
8
+ title: 'Form Elements/Pincode',
9
+ tags: ['autodocs', 'beta', 'version:2.0.0'],
10
+ context: 'sidebar',
11
+ args: {
12
+ id: 'pincode-demo',
13
+ name: 'otp',
14
+ length: 6,
15
+ value: '',
16
+ isInvalid: false,
17
+ disabled: false,
18
+ readonly: false,
19
+ },
20
+ argTypes: {
21
+ id: {
22
+ description: 'Identifiant unique du pincode',
23
+ control: 'text',
24
+ },
25
+ name: {
26
+ description: 'Attribut name pour la soumission de formulaire',
27
+ control: 'text',
28
+ },
29
+ length: {
30
+ description: 'Nombre de cases du pincode',
31
+ control: { type: 'radio' },
32
+ options: [4, 5, 6],
33
+ },
34
+ value: {
35
+ description: 'Valeur initiale/contrôlée du pincode',
36
+ control: 'text',
37
+ },
38
+ isInvalid: {
39
+ description: 'Applique l’état invalide',
40
+ control: 'boolean',
41
+ table: { category: 'State' },
42
+ },
43
+ disabled: {
44
+ description: 'Désactive le pincode',
45
+ control: 'boolean',
46
+ table: { category: 'State' },
47
+ },
48
+ readonly: {
49
+ description: 'Lecture seule',
50
+ control: 'boolean',
51
+ table: { category: 'State' },
52
+ },
53
+ input: {
54
+ description: 'Émis à la saisie (CustomEvent<{ value: string }>)',
55
+ table: { category: 'Events' },
56
+ action: 'input',
57
+ },
58
+ change: {
59
+ description: 'Émis à chaque changement (CustomEvent<{ value: string }>)',
60
+ table: { category: 'Events' },
61
+ action: 'change',
62
+ },
63
+ },
64
+ };
65
+ const Template = (args) => {
66
+ const el = document.createElement('m-pincode');
67
+ // Attributs (kebab-case pour WC)
68
+ if (args.id)
69
+ el.setAttribute('id', args.id);
70
+ if (args.name)
71
+ el.setAttribute('name', args.name);
72
+ if (args.length)
73
+ el.setAttribute('length', String(args.length));
74
+ if (args.value)
75
+ el.setAttribute('value', String(args.value));
76
+ if (args.isInvalid)
77
+ el.setAttribute('isinvalid', 'true');
78
+ if (args.disabled)
79
+ el.setAttribute('disabled', 'true');
80
+ if (args.readonly)
81
+ el.setAttribute('readonly', 'true');
82
+ // Actions Storybook
83
+ el.addEventListener('input', action('input'));
84
+ el.addEventListener('change', action('change'));
85
+ return el;
86
+ };
87
+ export const Default = Template.bind({});
88
+ Default.args = {};
89
+ Default.play = async ({ canvasElement }) => {
90
+ const host = canvasElement.querySelector('m-pincode');
91
+ const root = host.shadowRoot;
92
+ const inputs = root.querySelectorAll('.mc-pincode-input__control');
93
+ expect(inputs.length).toBe(6);
94
+ await userEvent.click(inputs[0]);
95
+ await userEvent.type(inputs[0], '123456');
96
+ const joined = Array.from(inputs)
97
+ .map((i) => i.value)
98
+ .join('');
99
+ expect(joined).toBe('123456');
100
+ };
101
+ export const FourDigits = Template.bind({});
102
+ FourDigits.args = { length: 4 };
103
+ FourDigits.play = async ({ canvasElement }) => {
104
+ const host = canvasElement.querySelector('m-pincode');
105
+ const vals = Array.from(host.shadowRoot.querySelectorAll('.mc-pincode-input__control'));
106
+ expect(vals.length).toBe(4);
107
+ await userEvent.type(vals[0], '9876');
108
+ expect(vals.map((i) => i.value).join('')).toBe('9876');
109
+ };
110
+ export const WithInitialValue = Template.bind({});
111
+ WithInitialValue.args = { length: 4, value: '2468' };
112
+ WithInitialValue.play = async ({ canvasElement }) => {
113
+ const host = canvasElement.querySelector('m-pincode');
114
+ const inputs = host.shadowRoot.querySelectorAll('.mc-pincode-input__control');
115
+ const joined = Array.from(inputs)
116
+ .map((i) => i.value)
117
+ .join('');
118
+ expect(joined).toBe('2468'.padEnd(inputs.length, ''));
119
+ };
120
+ export const Disabled = Template.bind({});
121
+ Disabled.args = { disabled: true };
122
+ Disabled.play = async ({ canvasElement }) => {
123
+ const host = canvasElement.querySelector('m-pincode');
124
+ const inputs = host.shadowRoot.querySelectorAll('.mc-pincode-input__control');
125
+ inputs.forEach((i) => expect(i.disabled).toBe(true));
126
+ };
127
+ export const Readonly = Template.bind({});
128
+ Readonly.args = { readonly: true, length: 4, value: '2468' };
129
+ Readonly.play = async ({ canvasElement }) => {
130
+ const host = canvasElement.querySelector('m-pincode');
131
+ const inputs = host.shadowRoot.querySelectorAll('.mc-pincode-input__control');
132
+ inputs.forEach((i) => expect(i.readOnly).toBe(true));
133
+ };
134
+ export const Invalid = Template.bind({});
135
+ Invalid.args = { isInvalid: true };
136
+ Invalid.play = async ({ canvasElement }) => {
137
+ const host = canvasElement.querySelector('m-pincode');
138
+ const container = host.shadowRoot.querySelector('.mc-pincode-input');
139
+ expect(container.classList.contains('is-invalid')).toBe(true);
140
+ };
@@ -0,0 +1,174 @@
1
+ <svelte:options customElement={{ tag: 'm-pincode' }} />
2
+
3
+ <script lang="ts">
4
+ import { createEventDispatcher } from 'svelte';
5
+
6
+ type PincodeLen = 4 | 5 | 6;
7
+ interface Props {
8
+ id: string;
9
+ length?: PincodeLen | string; // <- peut arriver en string via l'attribut
10
+ name?: string;
11
+ value?: string | number;
12
+ isInvalid?: boolean;
13
+ disabled?: boolean;
14
+ readonly?: boolean;
15
+ [key: string]: any;
16
+ }
17
+
18
+ const dispatch = createEventDispatcher();
19
+
20
+ let {
21
+ id,
22
+ length = 6,
23
+ name,
24
+ value = '',
25
+ isInvalid = false,
26
+ disabled = false,
27
+ readonly = false,
28
+ ...attrsAndEvents
29
+ }: Props = $props();
30
+
31
+ // Normalisation: length numérique (ex. "6" -> 6)
32
+ const L = $derived(
33
+ typeof length === 'string' ? parseInt(length, 10) || 6 : length,
34
+ );
35
+
36
+ // État minimal
37
+ let otp = $state<string[]>(Array(L).fill(''));
38
+ let inputs = $state<HTMLInputElement[]>([]);
39
+
40
+ // Sync depuis props (value/length normalisé)
41
+ $effect(() => {
42
+ const incoming = String(value ?? '');
43
+ otp = Array.from({ length: L }, (_, i) => incoming[i] ?? '');
44
+ });
45
+
46
+ function focusInput(i: number) {
47
+ queueMicrotask(() => inputs?.[i]?.focus());
48
+ }
49
+
50
+ function emit() {
51
+ const joined = otp.join('');
52
+ dispatch('input', { value: joined });
53
+ dispatch('change', { value: joined });
54
+ }
55
+
56
+ function onInput(e: Event, index: number) {
57
+ const el = e.target as HTMLInputElement;
58
+ const digit = el.value.replace(/\D/g, '').slice(0, 1);
59
+ otp[index] = digit;
60
+ emit();
61
+ if (digit && index + 1 < L) focusInput(index + 1);
62
+ }
63
+
64
+ function onKeyDown(e: KeyboardEvent, index: number) {
65
+ if (e.key === 'ArrowLeft' && index > 0) {
66
+ e.preventDefault();
67
+ focusInput(index - 1);
68
+ } else if (e.key === 'ArrowRight' && index < L - 1) {
69
+ e.preventDefault();
70
+ focusInput(index + 1);
71
+ } else if (e.key === 'Backspace' && otp[index] === '' && index > 0) {
72
+ otp[index - 1] = '';
73
+ emit();
74
+ focusInput(index - 1);
75
+ }
76
+ }
77
+
78
+ function onPaste(e: ClipboardEvent) {
79
+ e.preventDefault();
80
+ const pasted = (e.clipboardData?.getData('text') ?? '')
81
+ .replace(/\D/g, '')
82
+ .slice(0, L);
83
+ otp = Array.from({ length: L }, (_, i) => pasted[i] ?? '');
84
+ emit();
85
+ focusInput(Math.min(pasted.length, L - 1));
86
+ }
87
+ </script>
88
+
89
+ <div
90
+ class="mc-pincode-input"
91
+ on:paste|preventDefault={onPaste}
92
+ class:is-invalid={isInvalid}
93
+ {...attrsAndEvents}
94
+ >
95
+ {#each Array(L) as _, i}
96
+ <input
97
+ id={`pincodeItem${i}`}
98
+ bind:this={inputs[i]}
99
+ class="mc-pincode-input__control"
100
+ class:is-invalid={isInvalid}
101
+ type="text"
102
+ inputmode="numeric"
103
+ maxlength="1"
104
+ pattern="\d*"
105
+ autocomplete="one-time-code"
106
+ name={name ?? `pincode-${id}`}
107
+ {disabled}
108
+ {readonly}
109
+ value={otp[i]}
110
+ on:input={(e) => onInput(e, i)}
111
+ on:keydown={(e) => onKeyDown(e as KeyboardEvent, i)}
112
+ />
113
+ {/each}
114
+ </div>
115
+
116
+ <style>/**
117
+ * Do not edit directly, this file was auto-generated.
118
+ */
119
+ /**
120
+ * Do not edit directly, this file was auto-generated.
121
+ */
122
+ .mc-pincode-input {
123
+ display: inline-flex;
124
+ column-gap: 0.5rem;
125
+ }
126
+ @media screen and (width <= 1024px) {
127
+ .mc-pincode-input {
128
+ flex-wrap: wrap;
129
+ row-gap: 0.75rem;
130
+ }
131
+ }
132
+ .mc-pincode-input__control {
133
+ font-size: 1.75rem;
134
+ transition: box-shadow 200ms ease;
135
+ background-color: #ffffff;
136
+ border: 1px solid #666666;
137
+ border-radius: 0.25rem;
138
+ transition: all ease 200ms;
139
+ color: #000000;
140
+ display: block;
141
+ width: 3rem;
142
+ box-sizing: border-box;
143
+ height: 4rem;
144
+ text-align: center;
145
+ line-height: 1.3;
146
+ }
147
+ .mc-pincode-input__control::placeholder {
148
+ color: #666666;
149
+ }
150
+ .mc-pincode-input__control:focus-within {
151
+ box-shadow: 0 0 0 0.125rem var(--focus-color-mid, #ffffff), 0 0 0 0.25rem var(--focus-color-outer, #000000);
152
+ outline: 0.125rem solid transparent;
153
+ outline-offset: 0.125rem;
154
+ }
155
+ .mc-pincode-input__control:hover:not(:focus-within) {
156
+ border-color: #4d4d4d;
157
+ box-shadow: 0 0 0 1px #4d4d4d;
158
+ }
159
+ .mc-pincode-input__control:disabled {
160
+ background-color: #d9d9d9;
161
+ cursor: not-allowed;
162
+ border-color: transparent;
163
+ box-shadow: none;
164
+ color: #737373;
165
+ pointer-events: none;
166
+ }
167
+ .mc-pincode-input__control.is-invalid {
168
+ border-color: #ea302d;
169
+ box-shadow: 0 0 0 1px #ea302d;
170
+ }
171
+ .mc-pincode-input__control.is-invalid:hover:not(:focus-within) {
172
+ border-color: #c61112;
173
+ box-shadow: 0 0 0 1px #c61112;
174
+ }</style>
@@ -0,0 +1,33 @@
1
+ type PincodeLen = 4 | 5 | 6;
2
+ interface Props {
3
+ id: string;
4
+ length?: PincodeLen | string;
5
+ name?: string;
6
+ value?: string | number;
7
+ isInvalid?: boolean;
8
+ disabled?: boolean;
9
+ readonly?: boolean;
10
+ [key: string]: any;
11
+ }
12
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
13
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
14
+ $$bindings?: Bindings;
15
+ } & Exports;
16
+ (internal: unknown, props: Props & {
17
+ $$events?: Events;
18
+ $$slots?: Slots;
19
+ }): Exports & {
20
+ $set?: any;
21
+ $on?: any;
22
+ };
23
+ z_$$bindings?: Bindings;
24
+ }
25
+ declare const Pincode: $$__sveltets_2_IsomorphicComponent<Props, {
26
+ input: CustomEvent<any>;
27
+ change: CustomEvent<any>;
28
+ } & {
29
+ [evt: string]: CustomEvent<any>;
30
+ }, {}, {}, "">;
31
+ type Pincode = InstanceType<typeof Pincode>;
32
+ export default Pincode;
33
+ //# sourceMappingURL=Pincode.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pincode.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/pincode/Pincode.svelte.ts"],"names":[],"mappings":"AAME,KAAK,UAAU,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC5B,UAAU,KAAK;IACb,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAyFH,UAAU,kCAAkC,CAAC,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,OAAO,GAAG,EAAE,EAAE,QAAQ,GAAG,MAAM;IACpM,KAAK,OAAO,EAAE,OAAO,QAAQ,EAAE,2BAA2B,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG;QAAE,UAAU,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;IACjK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,GAAG;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,KAAK,CAAA;KAAC,GAAG,OAAO,GAAG;QAAE,IAAI,CAAC,EAAE,GAAG,CAAC;QAAC,GAAG,CAAC,EAAE,GAAG,CAAA;KAAE,CAAC;IAC9G,YAAY,CAAC,EAAE,QAAQ,CAAC;CAC3B;AAKD,QAAA,MAAM,OAAO;;;;;cAA+E,CAAC;AAC3E,KAAK,OAAO,GAAG,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC;AAC9C,eAAe,OAAO,CAAC"}
@@ -1,6 +1,9 @@
1
- import{c as S,a as E,d as n,A as K,t as I,j as M,l as Q,m as l,i as j,B as L,u as T,b as U,f as X,g as v,s as k,k as G,r as f}from"../../custom-element.js";import{s as d,c as V,r as Y}from"../../attributes.js";import{a as Z}from"../../input.js";import"../../legacy.js";var $=K('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px" height="24px"><path fill-rule="evenodd" d="M6 12a1 1 0 0 1 1-1h10a1 1 0 1 1 0 2H7a1 1 0 0 1-1-1"></path></svg>');function W(m,e){E(e,!1);let s=n(e,"id",12,void 0),r=n(e,"style",12,void 0),i=n(e,"className",12,void 0),c=n(e,"fill",12,void 0),b=n(e,"size",12,"1.5rem");var o=$();return I(()=>{d(o,"id",s()),V(o,r()),j(o,0,L(i())),d(o,"fill",c())}),M(m,o),Q({get id(){return s()},set id(a){s(a),l()},get style(){return r()},set style(a){r(a),l()},get className(){return i()},set className(a){i(a),l()},get fill(){return c()},set fill(a){c(a),l()},get size(){return b()},set size(a){b(a),l()}})}customElements.define("less-24",S(W,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));var ee=K('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px" height="24px"><path fill-rule="evenodd" d="M13 5a1 1 0 1 0-2 0v6H5a1 1 0 1 0 0 2h6v6a1 1 0 1 0 2 0v-6h6a1 1 0 1 0 0-2h-6z"></path></svg>');function C(m,e){E(e,!1);let s=n(e,"id",12,void 0),r=n(e,"style",12,void 0),i=n(e,"className",12,void 0),c=n(e,"fill",12,void 0),b=n(e,"size",12,"1.5rem");var o=ee();return I(()=>{d(o,"id",s()),V(o,r()),j(o,0,L(i())),d(o,"fill",c())}),M(m,o),Q({get id(){return s()},set id(a){s(a),l()},get style(){return r()},set style(a){r(a),l()},get className(){return i()},set className(a){i(a),l()},get fill(){return c()},set fill(a){c(a),l()},get size(){return b()},set size(a){b(a),l()}})}customElements.define("more-24",S(C,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));function te(m,e,s,r,i){e()>s()&&e(s()),e()<r()&&e(r()),i()(e())}function re(m,e,s,r,i){e()-Number(s())>r()&&e(e()-Number(s())),i()(e())}function ne(m,e,s,r,i){e()+Number(s())<r()&&e(e()+Number(s())),i()(e())}var le=X('<div><input type="number" class="mc-quantity-selector__control svelte-1k0p008" spellcheck="false"/> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--increase svelte-1k0p008" tabindex="-1"><span class="mc-quantity-selector__icon svelte-1k0p008"><!></span> <span class="mc-quantity-selector__label svelte-1k0p008"> </span></button> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--decrease svelte-1k0p008" tabindex="-1"><span class="mc-quantity-selector__icon svelte-1k0p008"><!></span> <span class="mc-quantity-selector__label svelte-1k0p008"> </span></button></div>');const ae={hash:"svelte-1k0p008",code:`/**
1
+ import{c as F,p as H,b as n,q as J,t as C,h as G,i as K,j as i,e as L,u as O,n as ee,a as te,f as ne,d as f,s as w,g as A,o as ie,r as v}from"../../custom-element.js";import{s as d,a as P,r as re}from"../../attributes.js";import{c as se}from"../../input.js";import"../../legacy.js";var le=J('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px" height="24px"><path fill-rule="evenodd" d="M6 12a1 1 0 0 1 1-1h10a1 1 0 1 1 0 2H7a1 1 0 0 1-1-1"></path></svg>');function R(b,e){H(e,!1);let l=n(e,"id",12,void 0),r=n(e,"style",12,void 0),o=n(e,"className",12,void 0),a=n(e,"fill",12,void 0),m=n(e,"size",12,"1.5rem");var c=le();return C(()=>{d(c,"id",l()),P(c,r()),L(c,0,O(o())),d(c,"fill",a())}),G(b,c),K({get id(){return l()},set id(s){l(s),i()},get style(){return r()},set style(s){r(s),i()},get className(){return o()},set className(s){o(s),i()},get fill(){return a()},set fill(s){a(s),i()},get size(){return m()},set size(s){m(s),i()}})}customElements.define("less-24",F(R,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));var ae=J('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24px" height="24px"><path fill-rule="evenodd" d="M13 5a1 1 0 1 0-2 0v6H5a1 1 0 1 0 0 2h6v6a1 1 0 1 0 2 0v-6h6a1 1 0 1 0 0-2h-6z"></path></svg>');function T(b,e){H(e,!1);let l=n(e,"id",12,void 0),r=n(e,"style",12,void 0),o=n(e,"className",12,void 0),a=n(e,"fill",12,void 0),m=n(e,"size",12,"1.5rem");var c=ae();return C(()=>{d(c,"id",l()),P(c,r()),L(c,0,O(o())),d(c,"fill",a())}),G(b,c),K({get id(){return l()},set id(s){l(s),i()},get style(){return r()},set style(s){r(s),i()},get className(){return o()},set className(s){o(s),i()},get fill(){return a()},set fill(s){a(s),i()},get size(){return m()},set size(s){m(s),i()}})}customElements.define("more-24",F(T,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));function oe(b,e,l,r,o,a){var m,c;e()>l()&&e(l()),e()<r()&&e(r()),(m=o())==null||m(e()),(c=a())==null||c(b)}function ce(b,e,l,r,o){var a;e()-Number(l())>r()&&e(e()-Number(l())),(a=o())==null||a(e())}function ue(b,e,l,r,o){var a;e()+Number(l())<r()&&e(e()+Number(l())),(a=o())==null||a(e())}var de=ne('<div><input type="number" class="mc-quantity-selector__control svelte-529exj" spellcheck="false"/> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--increase svelte-529exj" tabindex="-1"><span class="mc-quantity-selector__icon svelte-529exj"><!></span> <span class="mc-quantity-selector__label svelte-529exj"> </span></button> <button type="button" class="mc-quantity-selector__button mc-quantity-selector__button--decrease svelte-529exj" tabindex="-1"><span class="mc-quantity-selector__icon svelte-529exj"><!></span> <span class="mc-quantity-selector__label svelte-529exj"> </span></button></div>');const me={hash:"svelte-529exj",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
- */.mc-quantity-selector.svelte-1k0p008 {background-color:var(--forms-color-background-default, #ffffff);border:var(--border-s, 1px) solid var(--forms-color-border-default, #666666);border-radius:var(--forms-radius-border, 0.25rem);transition:all ease 200ms;color:var(--forms-color-text-default, #000000);display:block;width:100%;height:3rem;border-radius:var(--radius-s, 0.25rem);box-sizing:border-box;display:flex;gap:0.25rem;padding:0.1875rem;position:relative;}.mc-quantity-selector__control.svelte-1k0p008 {background-color:transparent;border-width:0;color:inherit;font-family:inherit;outline:none;padding:0;font-size:inherit;font-size:var(--font-size-150, 1rem);line-height:var(--line-height-m, 1.5);font-weight:var(--font-weight-semi-bold, 600);cursor:inherit;text-align:center;flex-grow:1;}.mc-quantity-selector__control[type=number].svelte-1k0p008 {
3
+ */
4
+ /**
5
+ * Do not edit directly, this file was auto-generated.
6
+ */.mc-quantity-selector.svelte-529exj {background-color:#ffffff;border:1px solid #666666;border-radius:0.25rem;transition:all ease 200ms;color:#000000;display:block;width:100%;height:3rem;border-radius:0.25rem;box-sizing:border-box;display:flex;gap:0.25rem;padding:0.1875rem;position:relative;}.mc-quantity-selector__control.svelte-529exj {background-color:transparent;border-width:0;color:inherit;font-family:inherit;outline:none;padding:0;font-size:inherit;font-size:1rem;line-height:1.5;font-weight:600;cursor:inherit;text-align:center;flex-grow:1;}.mc-quantity-selector__control[type=number].svelte-529exj {
4
7
  /* For Blink & WebKit rendering engines */
5
- /* For Gecko rendering engine */appearance:textfield;}.mc-quantity-selector__control[type=number].svelte-1k0p008::-webkit-inner-spin-button, .mc-quantity-selector__control[type=number].svelte-1k0p008::-webkit-outer-spin-button {appearance:none;margin:0;}.mc-quantity-selector__control.svelte-1k0p008::placeholder {color:var(--forms-color-placeholder, #666666);}.mc-quantity-selector__button.svelte-1k0p008 {background-color:transparent;border-width:0;color:initial;font-family:inherit;outline:none;appearance:none;cursor:pointer;padding:0;height:2.5rem;width:2.5rem;border-radius:var(--radius-full, 100%);color:var(--quantity-selector-color-button-text-default, #242938);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}.mc-quantity-selector__button.svelte-1k0p008:disabled {color:var(--quantity-selector-color-button-text-disabled, #d9d9d9);cursor:not-allowed;}.mc-quantity-selector__button.svelte-1k0p008:hover:not(:disabled) {background-color:var(--quantity-selector-color-button-background-hover, rgba(255, 255, 255, 0.1));}.mc-quantity-selector__button--decrease.svelte-1k0p008 {order:-1;}.mc-quantity-selector__icon.svelte-1k0p008 {height:1.5rem;width:1.5rem;fill:currentcolor;}.mc-quantity-selector__label.svelte-1k0p008 {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-quantity-selector.svelte-1k0p008::after {transition:box-shadow 200ms ease;border-radius:var(--radius-s, 0.25rem);content:"";position:absolute;inset:-0.125rem var(--inset-x, 3rem);pointer-events:none;display:block;}.mc-quantity-selector.svelte-1k0p008:hover:not(:focus-within) {border-color:var(--forms-color-border-hover, #4d4d4d);box-shadow:0 0 0 var(--border-s, 1px) var(--forms-color-border-hover, #4d4d4d);}.mc-quantity-selector.svelte-1k0p008:has(input:where(.svelte-1k0p008):disabled) {background-color:var(--forms-color-background-disabled, #d9d9d9);cursor:not-allowed;border-color:transparent;box-shadow:none;color:var(--forms-color-text-disabled, #737373);pointer-events:none;}.mc-quantity-selector.svelte-1k0p008:has(input:where(.svelte-1k0p008):disabled) .mc-quantity-selector__button:where(.svelte-1k0p008):disabled {color:var(--forms-color-icon-disabled, #737373);}.mc-quantity-selector.svelte-1k0p008:has(input:where(.svelte-1k0p008):focus)::after {box-shadow:0 0 0 0.125rem var(--focus-color-mid, var(--focus-color-outline-mid, #ffffff)), 0 0 0 0.25rem var(--focus-color-outer, var(--focus-color-outline-outer, #000000));outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-quantity-selector--s.svelte-1k0p008 {--inset-x: 2rem;height:2rem;}.mc-quantity-selector--s.svelte-1k0p008 .mc-quantity-selector__button:where(.svelte-1k0p008) {height:1.5rem;width:1.5rem;}.mc-quantity-selector--s.svelte-1k0p008 .mc-quantity-selector__icon:where(.svelte-1k0p008) {height:1.25rem;width:1.25rem;}.mc-quantity-selector.svelte-1k0p008 :where(.svelte-1k0p008) {box-sizing:border-box;}`};function se(m,e){E(e,!0),U(m,ae);let s=n(e,"id",7,void 0),r=n(e,"quantity",15,1),i=n(e,"min",7,1),c=n(e,"max",7,100),b=n(e,"small",7,!1),o=n(e,"decrementlabel",7,"Decrement"),a=n(e,"inputarialabel",7,"Quantity Selector"),x=n(e,"incrementlabel",7,"Increment"),h=n(e,"disabled",7,!1),w=n(e,"name",7,"quantity-selector-input"),_=n(e,"step",7,1),q=n(e,"increment",7),z=n(e,"decrement",7),N=n(e,"inputqty",7);var y=le();let F;var u=v(y);Y(u),u.__input=[te,r,c,i,N];var p=k(u,2);p.__click=[ne,r,_,c,q];var B=v(p),J=v(B);C(J,{}),f(B);var H=k(B,2),O=v(H,!0);f(H),f(p);var g=k(p,2);g.__click=[re,r,_,i,z];var D=v(g),P=v(D);W(P,{}),f(D);var A=k(D,2),R=v(A,!0);return f(A),f(g),f(y),I(t=>{F=j(y,1,"mc-quantity-selector svelte-1k0p008",null,F,t),d(u,"id",s()),d(u,"name",w()),d(u,"aria-label",a()),d(u,"aria-valuemin",i()),d(u,"aria-valuemax",c()),d(u,"aria-valuenow",r()),u.disabled=h(),d(p,"aria-controls",s()),p.disabled=r()===c()||h(),G(O,o()),d(g,"aria-controls",s()),g.disabled=r()===i()||h(),G(R,x())},[()=>({"mc-quantity-selector--s":b()})]),Z(u,r),M(m,y),Q({get id(){return s()},set id(t=void 0){s(t),l()},get quantity(){return r()},set quantity(t=1){r(t),l()},get min(){return i()},set min(t=1){i(t),l()},get max(){return c()},set max(t=100){c(t),l()},get small(){return b()},set small(t=!1){b(t),l()},get decrementlabel(){return o()},set decrementlabel(t="Decrement"){o(t),l()},get inputarialabel(){return a()},set inputarialabel(t="Quantity Selector"){a(t),l()},get incrementlabel(){return x()},set incrementlabel(t="Increment"){x(t),l()},get disabled(){return h()},set disabled(t=!1){h(t),l()},get name(){return w()},set name(t="quantity-selector-input"){w(t),l()},get step(){return _()},set step(t=1){_(t),l()},get increment(){return q()},set increment(t){q(t),l()},get decrement(){return z()},set decrement(t){z(t),l()},get inputqty(){return N()},set inputqty(t){N(t),l()}})}T(["input","click"]);customElements.define("m-quantityselector",S(se,{id:{},quantity:{},min:{},max:{},small:{},decrementlabel:{},inputarialabel:{},incrementlabel:{},disabled:{},name:{},step:{},increment:{},decrement:{},inputqty:{}},[],[],!0));
8
+ /* For Gecko rendering engine */appearance:textfield;}.mc-quantity-selector__control[type=number].svelte-529exj::-webkit-inner-spin-button, .mc-quantity-selector__control[type=number].svelte-529exj::-webkit-outer-spin-button {appearance:none;margin:0;}.mc-quantity-selector__control.svelte-529exj::placeholder {color:#666666;}.mc-quantity-selector__button.svelte-529exj {background-color:transparent;border-width:0;color:initial;font-family:inherit;outline:none;appearance:none;cursor:pointer;padding:0;height:2.5rem;width:2.5rem;border-radius:100%;color:#242938;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}.mc-quantity-selector__button.svelte-529exj:disabled {color:#d9d9d9;cursor:not-allowed;}.mc-quantity-selector__button.svelte-529exj:hover:not(:disabled) {background-color:rgba(255, 255, 255, 0.1);}.mc-quantity-selector__button--decrease.svelte-529exj {order:-1;}.mc-quantity-selector__icon.svelte-529exj {height:1.5rem;width:1.5rem;fill:currentcolor;}.mc-quantity-selector__label.svelte-529exj {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-quantity-selector.svelte-529exj::after {transition:box-shadow 200ms ease;border-radius:0.25rem;content:"";position:absolute;inset:-0.125rem var(--inset-x, 3rem);pointer-events:none;display:block;}.mc-quantity-selector.svelte-529exj:hover:not(:focus-within) {border-color:#4d4d4d;box-shadow:0 0 0 1px #4d4d4d;}.mc-quantity-selector.svelte-529exj:has(input:where(.svelte-529exj):disabled) {background-color:#d9d9d9;cursor:not-allowed;border-color:transparent;box-shadow:none;color:#737373;pointer-events:none;}.mc-quantity-selector.svelte-529exj:has(input:where(.svelte-529exj):disabled) .mc-quantity-selector__button:where(.svelte-529exj):disabled {color:#737373;}.mc-quantity-selector.svelte-529exj:has(input:where(.svelte-529exj):focus)::after {box-shadow:0 0 0 0.125rem var(--focus-color-mid, #ffffff), 0 0 0 0.25rem var(--focus-color-outer, #000000);outline:0.125rem solid transparent;outline-offset:0.125rem;}.mc-quantity-selector--s.svelte-529exj {--inset-x: 2rem;height:2rem;}.mc-quantity-selector--s.svelte-529exj .mc-quantity-selector__button:where(.svelte-529exj) {height:1.5rem;width:1.5rem;}.mc-quantity-selector--s.svelte-529exj .mc-quantity-selector__icon:where(.svelte-529exj) {height:1.25rem;width:1.25rem;}.mc-quantity-selector.is-invalid.svelte-529exj {border-color:#ea302d;box-shadow:0 0 0 1px #ea302d;}.mc-quantity-selector.is-invalid.svelte-529exj:hover:not(:focus-within) {border-color:#c61112;box-shadow:0 0 0 1px #c61112;}.mc-quantity-selector.svelte-529exj :where(.svelte-529exj) {box-sizing:border-box;}`};function be(b,e){H(e,!0),te(b,me);let l=n(e,"id",7,void 0),r=n(e,"quantity",15,1),o=n(e,"min",7,1),a=n(e,"max",7,100),m=n(e,"size",7,"m"),c=n(e,"decrementlabel",7,"Decrement"),s=n(e,"inputarialabel",7,"Quantity Selector"),j=n(e,"incrementlabel",7,"Increment"),x=n(e,"disabled",7,!1),_=n(e,"isinvalid",7,!1),z=n(e,"required",7,!1),k=n(e,"name",7,"quantity-selector-input"),y=n(e,"step",7,1),N=n(e,"increment",7),D=n(e,"decrement",7),S=n(e,"inputqty",7),B=n(e,"oninput",7),E=n(e,"onblur",7);function U(t,q){const Q=["mc-quantity-selector"];return t&&Q.push("is-invalid"),q==="s"&&Q.push("mc-quantity-selector--s"),Q.join(" ")}var p=de(),u=f(p);re(u),u.__input=[oe,r,a,o,S,B];var h=w(u,2);h.__click=[ue,r,y,a,N];var I=f(h),X=f(I);T(X,{}),v(I);var V=w(I,2),Y=f(V,!0);v(V),v(h);var g=w(h,2);g.__click=[ce,r,y,o,D];var M=f(g),Z=f(M);R(Z,{}),v(M);var W=w(M,2),$=f(W,!0);return v(W),v(g),v(p),C(t=>{L(p,1,t,"svelte-529exj"),d(u,"id",l()),d(u,"name",k()),d(u,"aria-label",s()),d(u,"aria-valuemin",o()),d(u,"aria-valuemax",a()),d(u,"aria-valuenow",r()),d(u,"aria-invalid",_()),u.disabled=x(),u.required=z(),d(h,"aria-controls",l()),h.disabled=r()===a()||x(),A(Y,c()),d(g,"aria-controls",l()),g.disabled=r()===o()||x(),A($,j())},[()=>U(_(),m())]),ie("blur",u,function(...t){var q;(q=E())==null||q.apply(this,t)}),se(u,r),G(b,p),K({get id(){return l()},set id(t=void 0){l(t),i()},get quantity(){return r()},set quantity(t=1){r(t),i()},get min(){return o()},set min(t=1){o(t),i()},get max(){return a()},set max(t=100){a(t),i()},get size(){return m()},set size(t="m"){m(t),i()},get decrementlabel(){return c()},set decrementlabel(t="Decrement"){c(t),i()},get inputarialabel(){return s()},set inputarialabel(t="Quantity Selector"){s(t),i()},get incrementlabel(){return j()},set incrementlabel(t="Increment"){j(t),i()},get disabled(){return x()},set disabled(t=!1){x(t),i()},get isinvalid(){return _()},set isinvalid(t=!1){_(t),i()},get required(){return z()},set required(t=!1){z(t),i()},get name(){return k()},set name(t="quantity-selector-input"){k(t),i()},get step(){return y()},set step(t=1){y(t),i()},get increment(){return N()},set increment(t){N(t),i()},get decrement(){return D()},set decrement(t){D(t),i()},get inputqty(){return S()},set inputqty(t){S(t),i()},get oninput(){return B()},set oninput(t){B(t),i()},get onblur(){return E()},set onblur(t){E(t),i()}})}ee(["input","click"]);customElements.define("m-quantityselector",F(be,{id:{},quantity:{},min:{},max:{},size:{},decrementlabel:{},inputarialabel:{},incrementlabel:{},disabled:{},isinvalid:{},required:{},name:{},step:{},increment:{},decrement:{},inputqty:{},oninput:{},onblur:{}},[],[],!0));
6
9
  //# sourceMappingURL=QuantitySelector.js.map