@mozaic-ds/web-components 1.0.0 → 1.2.0

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 (326) hide show
  1. package/README.md +28 -106
  2. package/dist/Cross20.js +1 -1
  3. package/dist/Cross20.js.map +1 -1
  4. package/dist/Cross24.js +1 -1
  5. package/dist/CrossCircleFilled24.js +1 -1
  6. package/dist/attributes.js +1 -1
  7. package/dist/attributes.js.map +1 -1
  8. package/dist/bundle.d.ts +6 -5
  9. package/dist/bundle.d.ts.map +1 -1
  10. package/dist/bundle.js +6 -5
  11. package/dist/components/avatar/Avatar.js +2 -2
  12. package/dist/components/avatar/Avatar.js.map +1 -1
  13. package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
  14. package/dist/components/avatar/Avatar.stories.js +1 -3
  15. package/dist/components/avatar/Avatar.svelte +7 -7
  16. package/dist/components/avatar/Avatar.svelte.d.ts.map +1 -1
  17. package/dist/components/breadcrumb/Breadcrumb.js +2 -2
  18. package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
  19. package/dist/components/breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
  20. package/dist/components/breadcrumb/Breadcrumb.stories.js +1 -4
  21. package/dist/components/breadcrumb/Breadcrumb.svelte +2 -5
  22. package/dist/components/button/Button.js +3 -3
  23. package/dist/components/button/Button.js.map +1 -1
  24. package/dist/components/button/Button.svelte +3 -3
  25. package/dist/components/callout/Callout.js +2 -5
  26. package/dist/components/callout/Callout.js.map +1 -1
  27. package/dist/components/callout/Callout.stories.d.ts.map +1 -1
  28. package/dist/components/callout/Callout.svelte +9 -16
  29. package/dist/components/callout/Callout.svelte.d.ts.map +1 -1
  30. package/dist/components/checkbox/Checkbox.js +2 -2
  31. package/dist/components/checkbox/Checkbox.spec.js +1 -1
  32. package/dist/components/checkbox/Checkbox.svelte +2 -2
  33. package/dist/components/checkboxgroup/CheckboxGroup.js +3 -3
  34. package/dist/components/checkboxgroup/CheckboxGroup.js.map +1 -1
  35. package/dist/components/checkboxgroup/CheckboxGroup.spec.js +1 -3
  36. package/dist/components/checkboxgroup/CheckboxGroup.svelte +4 -10
  37. package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts.map +1 -1
  38. package/dist/components/circularprogressbar/CircularProgressbar.js +2 -2
  39. package/dist/components/circularprogressbar/CircularProgressbar.js.map +1 -1
  40. package/dist/components/circularprogressbar/CircularProgressbar.stories.js +2 -2
  41. package/dist/components/circularprogressbar/CircularProgressbar.svelte +4 -4
  42. package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts +1 -0
  43. package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts.map +1 -1
  44. package/dist/components/container/Container.js +14 -0
  45. package/dist/components/container/Container.js.map +1 -0
  46. package/dist/components/container/Container.spec.js +26 -0
  47. package/dist/components/container/Container.stories.d.ts +7 -0
  48. package/dist/components/container/Container.stories.d.ts.map +1 -0
  49. package/dist/components/container/Container.stories.js +23 -0
  50. package/dist/components/container/Container.svelte +60 -0
  51. package/dist/components/container/Container.svelte.d.ts +39 -0
  52. package/dist/components/container/Container.svelte.d.ts.map +1 -0
  53. package/dist/components/container/README.md +16 -0
  54. package/dist/components/datepicker/Datepicker.js +3 -3
  55. package/dist/components/datepicker/Datepicker.js.map +1 -1
  56. package/dist/components/datepicker/Datepicker.svelte +13 -22
  57. package/dist/components/datepicker/Datepicker.svelte.d.ts +1 -1
  58. package/dist/components/datepicker/Datepicker.svelte.d.ts.map +1 -1
  59. package/dist/components/datepicker/README.md +1 -1
  60. package/dist/components/divider/Divider.js +4 -0
  61. package/dist/components/divider/Divider.js.map +1 -0
  62. package/dist/components/divider/Divider.spec.js +50 -0
  63. package/dist/components/divider/Divider.stories.d.ts +9 -0
  64. package/dist/components/divider/Divider.stories.d.ts.map +1 -0
  65. package/dist/components/divider/Divider.stories.js +57 -0
  66. package/dist/components/divider/Divider.svelte +90 -0
  67. package/dist/components/divider/Divider.svelte.d.ts +47 -0
  68. package/dist/components/divider/Divider.svelte.d.ts.map +1 -0
  69. package/dist/components/divider/README.md +18 -0
  70. package/dist/components/drawer/Drawer.js +4 -4
  71. package/dist/components/drawer/Drawer.js.map +1 -1
  72. package/dist/components/drawer/Drawer.stories.d.ts.map +1 -1
  73. package/dist/components/drawer/Drawer.stories.js +1 -2
  74. package/dist/components/drawer/Drawer.svelte +20 -7
  75. package/dist/components/drawer/Drawer.svelte.d.ts +8 -0
  76. package/dist/components/drawer/Drawer.svelte.d.ts.map +1 -1
  77. package/dist/components/drawer/README.md +2 -0
  78. package/dist/components/field/Field.js +2 -2
  79. package/dist/components/field/Field.js.map +1 -1
  80. package/dist/components/field/Field.spec.js +56 -9
  81. package/dist/components/field/Field.stories.d.ts +1 -0
  82. package/dist/components/field/Field.stories.d.ts.map +1 -1
  83. package/dist/components/field/Field.stories.js +15 -0
  84. package/dist/components/field/Field.svelte +12 -6
  85. package/dist/components/field/Field.svelte.d.ts +4 -0
  86. package/dist/components/field/Field.svelte.d.ts.map +1 -1
  87. package/dist/components/field/README.md +1 -0
  88. package/dist/components/flag/Flag.js +2 -2
  89. package/dist/components/flag/Flag.js.map +1 -1
  90. package/dist/components/flag/Flag.stories.d.ts.map +1 -1
  91. package/dist/components/flag/Flag.stories.js +1 -4
  92. package/dist/components/flag/Flag.svelte +1 -1
  93. package/dist/components/iconbutton/IconButton.js +2 -2
  94. package/dist/components/iconbutton/IconButton.js.map +1 -1
  95. package/dist/components/iconbutton/IconButton.svelte +2 -2
  96. package/dist/components/kpiitem/KpiItem.js +5 -0
  97. package/dist/components/kpiitem/KpiItem.js.map +1 -0
  98. package/dist/components/kpiitem/KpiItem.spec.js +60 -0
  99. package/dist/components/kpiitem/KpiItem.stories.d.ts +8 -0
  100. package/dist/components/kpiitem/KpiItem.stories.d.ts.map +1 -0
  101. package/dist/components/kpiitem/KpiItem.stories.js +56 -0
  102. package/dist/components/kpiitem/KpiItem.svelte +231 -0
  103. package/dist/components/kpiitem/KpiItem.svelte.d.ts +34 -0
  104. package/dist/components/kpiitem/KpiItem.svelte.d.ts.map +1 -0
  105. package/dist/components/kpiitem/README.md +15 -0
  106. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js +2 -2
  107. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js.map +1 -1
  108. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte +3 -8
  109. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts.map +1 -1
  110. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js +2 -2
  111. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js.map +1 -1
  112. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte +3 -3
  113. package/dist/components/link/Link.js +1 -1
  114. package/dist/components/link/Link.js.map +1 -1
  115. package/dist/components/link/Link.svelte +1 -1
  116. package/dist/components/loader/Loader.js +1 -1
  117. package/dist/components/loader/Loader.js.map +1 -1
  118. package/dist/components/loader/Loader.spec.js +20 -1
  119. package/dist/components/loader/Loader.stories.js +1 -1
  120. package/dist/components/loader/Loader.svelte +8 -6
  121. package/dist/components/loader/Loader.svelte.d.ts +1 -1
  122. package/dist/components/loader/Loader.svelte.d.ts.map +1 -1
  123. package/dist/components/loader/README.md +1 -1
  124. package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts +1 -1
  125. package/dist/components/loadingoverlay/LoadingOverlay.stories.js +1 -1
  126. package/dist/components/modal/Modal.js +3 -3
  127. package/dist/components/modal/Modal.js.map +1 -1
  128. package/dist/components/modal/Modal.stories.d.ts.map +1 -1
  129. package/dist/components/modal/Modal.stories.js +2 -4
  130. package/dist/components/modal/Modal.svelte +4 -4
  131. package/dist/components/numberbadge/NumberBadge.js +1 -1
  132. package/dist/components/numberbadge/NumberBadge.js.map +1 -1
  133. package/dist/components/numberbadge/NumberBadge.svelte +2 -8
  134. package/dist/components/numberbadge/NumberBadge.svelte.d.ts.map +1 -1
  135. package/dist/components/overlay/Overlay.stories.d.ts.map +1 -1
  136. package/dist/components/overlay/Overlay.stories.js +1 -4
  137. package/dist/components/pagination/Pagination.js +6 -6
  138. package/dist/components/pagination/Pagination.js.map +1 -1
  139. package/dist/components/pagination/Pagination.spec.js +2 -2
  140. package/dist/components/pagination/Pagination.svelte +10 -28
  141. package/dist/components/passwordinput/PasswordInput.js +3 -3
  142. package/dist/components/passwordinput/PasswordInput.js.map +1 -1
  143. package/dist/components/passwordinput/PasswordInput.spec.js +1 -1
  144. package/dist/components/passwordinput/PasswordInput.svelte +10 -14
  145. package/dist/components/passwordinput/PasswordInput.svelte.d.ts +1 -1
  146. package/dist/components/passwordinput/PasswordInput.svelte.d.ts.map +1 -1
  147. package/dist/components/passwordinput/README.md +1 -1
  148. package/dist/components/pincode/Pincode.js +2 -2
  149. package/dist/components/pincode/Pincode.js.map +1 -1
  150. package/dist/components/pincode/Pincode.svelte +9 -21
  151. package/dist/components/pincode/Pincode.svelte.d.ts.map +1 -1
  152. package/dist/components/quantityselector/QuantitySelector.js +3 -3
  153. package/dist/components/quantityselector/QuantitySelector.js.map +1 -1
  154. package/dist/components/quantityselector/QuantitySelector.stories.d.ts +0 -1
  155. package/dist/components/quantityselector/QuantitySelector.stories.d.ts.map +1 -1
  156. package/dist/components/quantityselector/QuantitySelector.stories.js +0 -6
  157. package/dist/components/quantityselector/QuantitySelector.svelte +11 -19
  158. package/dist/components/quantityselector/QuantitySelector.svelte.d.ts.map +1 -1
  159. package/dist/components/radio/Radio.js +2 -2
  160. package/dist/components/radio/Radio.js.map +1 -1
  161. package/dist/components/radio/Radio.svelte +3 -10
  162. package/dist/components/radio/Radio.svelte.d.ts.map +1 -1
  163. package/dist/components/radiogroup/RadioGroup.js +3 -3
  164. package/dist/components/radiogroup/RadioGroup.js.map +1 -1
  165. package/dist/components/radiogroup/RadioGroup.svelte +4 -10
  166. package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -1
  167. package/dist/components/segmentedcontrol/README.md +19 -0
  168. package/dist/components/segmentedcontrol/SegmentedControl.js +4 -0
  169. package/dist/components/segmentedcontrol/SegmentedControl.js.map +1 -0
  170. package/dist/components/segmentedcontrol/SegmentedControl.spec.js +52 -0
  171. package/dist/components/segmentedcontrol/SegmentedControl.stories.d.ts +8 -0
  172. package/dist/components/segmentedcontrol/SegmentedControl.stories.d.ts.map +1 -0
  173. package/dist/components/segmentedcontrol/SegmentedControl.stories.js +54 -0
  174. package/dist/components/segmentedcontrol/SegmentedControl.svelte +125 -0
  175. package/dist/components/segmentedcontrol/SegmentedControl.svelte.d.ts +32 -0
  176. package/dist/components/segmentedcontrol/SegmentedControl.svelte.d.ts.map +1 -0
  177. package/dist/components/select/README.md +1 -1
  178. package/dist/components/select/Select.js +3 -3
  179. package/dist/components/select/Select.js.map +1 -1
  180. package/dist/components/select/Select.svelte +7 -7
  181. package/dist/components/select/Select.svelte.d.ts +1 -1
  182. package/dist/components/select/Select.svelte.d.ts.map +1 -1
  183. package/dist/components/statusbadge/StatusBadge.js +2 -2
  184. package/dist/components/statusbadge/StatusBadge.js.map +1 -1
  185. package/dist/components/statusbadge/StatusBadge.svelte +9 -9
  186. package/dist/components/statusdot/StatusDot.js +1 -1
  187. package/dist/components/statusdot/StatusDot.js.map +1 -1
  188. package/dist/components/statusdot/StatusDot.spec.js +1 -7
  189. package/dist/components/statusdot/StatusDot.svelte +3 -9
  190. package/dist/components/statusdot/StatusDot.svelte.d.ts.map +1 -1
  191. package/dist/components/statusmessage/README.md +11 -0
  192. package/dist/components/statusmessage/StatusMessage.js +4 -0
  193. package/dist/components/statusmessage/StatusMessage.js.map +1 -0
  194. package/dist/components/statusmessage/StatusMessage.spec.js +47 -0
  195. package/dist/components/statusmessage/StatusMessage.stories.d.ts +11 -0
  196. package/dist/components/statusmessage/StatusMessage.stories.d.ts.map +1 -0
  197. package/dist/components/statusmessage/StatusMessage.stories.js +37 -0
  198. package/dist/components/statusmessage/StatusMessage.svelte +84 -0
  199. package/dist/components/statusmessage/StatusMessage.svelte.d.ts +17 -0
  200. package/dist/components/statusmessage/StatusMessage.svelte.d.ts.map +1 -0
  201. package/dist/components/statusnotification/StatusNotification.js +2 -6
  202. package/dist/components/statusnotification/StatusNotification.js.map +1 -1
  203. package/dist/components/statusnotification/StatusNotification.stories.d.ts.map +1 -1
  204. package/dist/components/statusnotification/StatusNotification.svelte +14 -23
  205. package/dist/components/steppercompact/README.md +13 -0
  206. package/dist/components/steppercompact/StepperCompact.js +4 -0
  207. package/dist/components/steppercompact/StepperCompact.js.map +1 -0
  208. package/dist/components/steppercompact/StepperCompact.spec.js +119 -0
  209. package/dist/components/steppercompact/StepperCompact.stories.d.ts +6 -0
  210. package/dist/components/steppercompact/StepperCompact.stories.d.ts.map +1 -0
  211. package/dist/components/steppercompact/StepperCompact.stories.js +28 -0
  212. package/dist/components/steppercompact/StepperCompact.svelte +123 -0
  213. package/dist/components/steppercompact/StepperCompact.svelte.d.ts +25 -0
  214. package/dist/components/steppercompact/StepperCompact.svelte.d.ts.map +1 -0
  215. package/dist/components/tab/Tab.js +2 -2
  216. package/dist/components/tab/Tab.js.map +1 -1
  217. package/dist/components/tab/Tab.svelte +2 -8
  218. package/dist/components/tab/Tab.svelte.d.ts.map +1 -1
  219. package/dist/components/tabs/Tabs.svelte +1 -1
  220. package/dist/components/tag/README.md +30 -0
  221. package/dist/components/tag/Tag.js +4 -0
  222. package/dist/components/tag/Tag.js.map +1 -0
  223. package/dist/components/tag/Tag.stories.d.ts +12 -0
  224. package/dist/components/tag/Tag.stories.d.ts.map +1 -0
  225. package/dist/components/tag/Tag.stories.js +70 -0
  226. package/dist/components/{tags/TagRemovable.svelte → tag/Tag.svelte} +107 -32
  227. package/dist/components/tag/Tag.svelte.d.ts +65 -0
  228. package/dist/components/tag/Tag.svelte.d.ts.map +1 -0
  229. package/dist/components/textarea/Textarea.js +2 -2
  230. package/dist/components/textarea/Textarea.js.map +1 -1
  231. package/dist/components/textarea/Textarea.svelte +6 -8
  232. package/dist/components/textinput/README.md +1 -1
  233. package/dist/components/textinput/Textinput.js +5 -5
  234. package/dist/components/textinput/Textinput.js.map +1 -1
  235. package/dist/components/textinput/Textinput.stories.d.ts +1 -1
  236. package/dist/components/textinput/Textinput.stories.js +1 -1
  237. package/dist/components/textinput/Textinput.svelte +10 -18
  238. package/dist/components/textinput/Textinput.svelte.d.ts +1 -1
  239. package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -1
  240. package/dist/components/toaster/README.md +1 -0
  241. package/dist/components/toaster/Toaster.js +3 -7
  242. package/dist/components/toaster/Toaster.js.map +1 -1
  243. package/dist/components/toaster/Toaster.svelte +20 -23
  244. package/dist/components/toaster/Toaster.svelte.d.ts +4 -0
  245. package/dist/components/toaster/Toaster.svelte.d.ts.map +1 -1
  246. package/dist/components/toggle/Toggle.js +2 -2
  247. package/dist/components/toggle/Toggle.js.map +1 -1
  248. package/dist/components/toggle/Toggle.svelte +4 -18
  249. package/dist/components/toggle/Toggle.svelte.d.ts.map +1 -1
  250. package/dist/components/togglegroup/ToggleGroup.js +2 -2
  251. package/dist/components/togglegroup/ToggleGroup.js.map +1 -1
  252. package/dist/components/togglegroup/ToggleGroup.spec.js +1 -1
  253. package/dist/components/togglegroup/ToggleGroup.svelte +3 -3
  254. package/dist/components/tooltip/Tooltip.js +1 -1
  255. package/dist/components/tooltip/Tooltip.js.map +1 -1
  256. package/dist/components/tooltip/Tooltip.spec.js +1 -1
  257. package/dist/components/tooltip/Tooltip.svelte +3 -7
  258. package/dist/components/tooltip/Tooltip.svelte.d.ts.map +1 -1
  259. package/dist/custom-element-forward-events.js +1 -1
  260. package/dist/custom-element-forward-events.js.map +1 -1
  261. package/dist/custom-element.js +3 -3
  262. package/dist/custom-element.js.map +1 -1
  263. package/dist/documentation/Introduction.mdx +13 -4
  264. package/dist/documentation/Svelte/Introduction.mdx +1 -1
  265. package/dist/documentation/Svelte/usingPresets.mdx +7 -9
  266. package/dist/documentation/WebComponents/Introduction.mdx +0 -1
  267. package/dist/documentation/WebComponents/usingIcons.mdx +2 -3
  268. package/dist/documentation/WebComponents/usingPresets.mdx +5 -7
  269. package/dist/each.js +1 -1
  270. package/dist/each.js.map +1 -1
  271. package/dist/if.js +1 -1
  272. package/dist/if.js.map +1 -1
  273. package/dist/input.js +1 -1
  274. package/dist/input.js.map +1 -1
  275. package/dist/legacy.js +1 -1
  276. package/dist/main.d.ts +8 -6
  277. package/dist/main.d.ts.map +1 -1
  278. package/dist/main.js +8 -6
  279. package/dist/slot.js +1 -1
  280. package/dist/slot.js.map +1 -1
  281. package/dist/svelte-component.js +2 -0
  282. package/dist/svelte-component.js.map +1 -0
  283. package/dist/this.js +1 -1
  284. package/dist/this.js.map +1 -1
  285. package/dist/utils/custom-element-forward-events.d.ts.map +1 -1
  286. package/package.json +34 -35
  287. package/dist/components/tags/README.md +0 -9
  288. package/dist/components/tags/Tag.js +0 -4
  289. package/dist/components/tags/Tag.js.map +0 -1
  290. package/dist/components/tags/Tag.svelte +0 -218
  291. package/dist/components/tags/Tag.svelte.d.ts +0 -9
  292. package/dist/components/tags/Tag.svelte.d.ts.map +0 -1
  293. package/dist/components/tags/TagContextualised.js +0 -4
  294. package/dist/components/tags/TagContextualised.js.map +0 -1
  295. package/dist/components/tags/TagContextualised.svelte +0 -239
  296. package/dist/components/tags/TagContextualised.svelte.d.ts +0 -11
  297. package/dist/components/tags/TagContextualised.svelte.d.ts.map +0 -1
  298. package/dist/components/tags/TagInteractive.js +0 -4
  299. package/dist/components/tags/TagInteractive.js.map +0 -1
  300. package/dist/components/tags/TagInteractive.svelte +0 -223
  301. package/dist/components/tags/TagInteractive.svelte.d.ts +0 -10
  302. package/dist/components/tags/TagInteractive.svelte.d.ts.map +0 -1
  303. package/dist/components/tags/TagRemovable.js +0 -4
  304. package/dist/components/tags/TagRemovable.js.map +0 -1
  305. package/dist/components/tags/TagRemovable.svelte.d.ts +0 -11
  306. package/dist/components/tags/TagRemovable.svelte.d.ts.map +0 -1
  307. package/dist/components/tags/TagSelectable.js +0 -4
  308. package/dist/components/tags/TagSelectable.js.map +0 -1
  309. package/dist/components/tags/TagSelectable.svelte +0 -247
  310. package/dist/components/tags/TagSelectable.svelte.d.ts +0 -13
  311. package/dist/components/tags/TagSelectable.svelte.d.ts.map +0 -1
  312. package/dist/components/tags/Tags.stories.d.ts +0 -5
  313. package/dist/components/tags/Tags.stories.d.ts.map +0 -1
  314. package/dist/components/tags/Tags.stories.js +0 -41
  315. package/dist/components/tags/TagsContextualised.stories.d.ts +0 -5
  316. package/dist/components/tags/TagsContextualised.stories.d.ts.map +0 -1
  317. package/dist/components/tags/TagsContextualised.stories.js +0 -57
  318. package/dist/components/tags/TagsInteractive.stories.d.ts +0 -5
  319. package/dist/components/tags/TagsInteractive.stories.d.ts.map +0 -1
  320. package/dist/components/tags/TagsInteractive.stories.js +0 -61
  321. package/dist/components/tags/TagsRemovable.stories.d.ts +0 -5
  322. package/dist/components/tags/TagsRemovable.stories.d.ts.map +0 -1
  323. package/dist/components/tags/TagsRemovable.stories.js +0 -62
  324. package/dist/components/tags/TagsSelectable.stories.d.ts +0 -5
  325. package/dist/components/tags/TagsSelectable.stories.d.ts.map +0 -1
  326. package/dist/components/tags/TagsSelectable.stories.js +0 -76
@@ -0,0 +1,50 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { render } from '@testing-library/svelte';
3
+ import Divider from './Divider.svelte';
4
+ describe('m-divider component', () => {
5
+ it('renders with default classes', () => {
6
+ const { container } = render(Divider, {
7
+ props: {},
8
+ });
9
+ const wrapper = container.querySelector('.mc-divider');
10
+ const divider = wrapper.querySelector('div');
11
+ expect(wrapper).toBeTruthy();
12
+ expect(divider).toBeTruthy();
13
+ expect(divider.classList.contains('mc-divider-horizontal--primary')).toBe(true);
14
+ expect(divider.classList.contains('mc-divider-horizontal--s')).toBe(true);
15
+ expect(divider.classList.contains('mc-divider-vertical')).toBe(false);
16
+ });
17
+ it('applies correct classes for vertical orientation', () => {
18
+ const { container } = render(Divider, {
19
+ props: {
20
+ orientation: 'vertical',
21
+ },
22
+ });
23
+ const divider = container.querySelector('.mc-divider > div');
24
+ expect(divider.classList.contains('mc-divider-vertical')).toBe(true);
25
+ });
26
+ it('applies correct classes for appearance and size props', () => {
27
+ const { container } = render(Divider, {
28
+ props: {
29
+ appearance: 'secondary',
30
+ size: 'l',
31
+ },
32
+ });
33
+ const divider = container.querySelector('.mc-divider > div');
34
+ expect(divider.classList.contains('mc-divider-horizontal--secondary')).toBe(true);
35
+ expect(divider.classList.contains('mc-divider-horizontal--l')).toBe(true);
36
+ });
37
+ it('combines all prop-driven classes correctly', () => {
38
+ const { container } = render(Divider, {
39
+ props: {
40
+ orientation: 'vertical',
41
+ appearance: 'tertiary',
42
+ size: 'm',
43
+ },
44
+ });
45
+ const divider = container.querySelector('.mc-divider > div');
46
+ expect(divider.classList.contains('mc-divider-vertical')).toBe(true);
47
+ expect(divider.classList.contains('mc-divider-horizontal--tertiary')).toBe(true);
48
+ expect(divider.classList.contains('mc-divider-horizontal--m')).toBe(true);
49
+ });
50
+ });
@@ -0,0 +1,9 @@
1
+ import type { Meta, StoryObj } from '@storybook/web-components-vite';
2
+ declare const meta: Meta;
3
+ export default meta;
4
+ type Story = StoryObj;
5
+ export declare const Standard: Story;
6
+ export declare const Vertical: Story;
7
+ export declare const Size: Story;
8
+ export declare const Secondary: Story;
9
+ //# sourceMappingURL=Divider.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Divider.stories.d.ts","sourceRoot":"","sources":["../../../src/components/divider/Divider.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,QAAA,MAAM,IAAI,EAAE,IA6BX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,QAAQ,EAAE,KAAU,CAAC;AAElC,eAAO,MAAM,QAAQ,EAAE,KAetB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAElB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAEvB,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { html } from 'lit';
2
+ import { ifDefined } from 'lit-html/directives/if-defined.js';
3
+ import { unsafeHTML } from 'lit/directives/unsafe-html.js';
4
+ const meta = {
5
+ title: 'Structure/Divider',
6
+ component: 'm-divider',
7
+ tags: ['v2'],
8
+ argTypes: {
9
+ size: {
10
+ control: 'inline-radio',
11
+ options: ['s', 'm', 'l'],
12
+ },
13
+ orientation: {
14
+ control: 'radio',
15
+ options: ['vertical', 'horizontal'],
16
+ },
17
+ appearance: {
18
+ control: 'radio',
19
+ options: ['primary', 'secondary', 'tertiary', 'inverse'],
20
+ },
21
+ },
22
+ render: (args) => html `
23
+ <div>
24
+ <m-divider
25
+ orientation=${ifDefined(args.orientation)}
26
+ appearance=${ifDefined(args.appearance)}
27
+ size=${ifDefined(args.size)}
28
+ >${unsafeHTML(ifDefined(args.default))}</m-divider
29
+ >
30
+ <p style="padding: 1rem">Horizontal Divider</p>
31
+ </div>
32
+ `,
33
+ };
34
+ export default meta;
35
+ export const Standard = {};
36
+ export const Vertical = {
37
+ args: {
38
+ orientation: 'vertical',
39
+ default: `<p style="padding: 1rem">Vertical Divider</p>`,
40
+ },
41
+ render: (args) => html `
42
+ <div>
43
+ <m-divider
44
+ orientation=${ifDefined(args.orientation)}
45
+ appearance=${ifDefined(args.appearance)}
46
+ size=${ifDefined(args.size)}
47
+ >${unsafeHTML(ifDefined(args.default))}</m-divider
48
+ >
49
+ </div>
50
+ `,
51
+ };
52
+ export const Size = {
53
+ args: { size: 'm' },
54
+ };
55
+ export const Secondary = {
56
+ args: { appearance: 'secondary' },
57
+ };
@@ -0,0 +1,90 @@
1
+ <svelte:options customElement={{ tag: 'm-divider' }} />
2
+
3
+ <script lang="ts">
4
+ /**
5
+ * A divider is a visual element used to separate content or sections within an interface. It helps improve readability and organization by creating clear distinctions between groups of information. Dividers can be thin lines, thick separators, or even styled with spacing variations, adapting to different layouts. They are commonly used in menus, lists, forms, and content blocks to create a structured visual hierarchy.
6
+ *
7
+ * @slot default - Use this slot to insert the content who need a vertical divider
8
+ */
9
+ interface Props {
10
+ /**
11
+ * Determines the orientation of the divider.
12
+ */
13
+ orientation?: 'vertical' | 'horizontal';
14
+ /**
15
+ * Determines the appearance of the divider.
16
+ */
17
+ appearance?: 'primary' | 'secondary' | 'tertiary' | 'inverse';
18
+ /**
19
+ * Determines the size of the divider.
20
+ */
21
+ size?: 's' | 'm' | 'l';
22
+ }
23
+
24
+ let { orientation = 'horizontal', appearance = 'primary', size = 's' }: Props = $props();
25
+ </script>
26
+
27
+ <div class="mc-divider">
28
+ <div
29
+ class={[
30
+ `mc-divider-${orientation}`,
31
+ `mc-divider-horizontal--${appearance}`,
32
+ `mc-divider-horizontal--${size}`,
33
+ ]}
34
+ ></div>
35
+ <slot />
36
+ </div>
37
+
38
+ <style>/**
39
+ * Do not edit directly, this file was auto-generated.
40
+ */
41
+ .mc-divider {
42
+ position: relative;
43
+ }
44
+ .mc-divider-horizontal {
45
+ background: var(--divider-color-primary, #cccccc);
46
+ height: 0.0625rem;
47
+ }
48
+ .mc-divider-horizontal--secondary {
49
+ background: var(--divider-color-secondary, #999999);
50
+ }
51
+ .mc-divider-horizontal--tertiary {
52
+ background: var(--divider-color-tertiary, #333333);
53
+ }
54
+ .mc-divider-horizontal--inverse {
55
+ background: var(--divider-color-inverse, #ffffff);
56
+ }
57
+ .mc-divider-horizontal--m {
58
+ height: 0.25rem;
59
+ }
60
+ .mc-divider-horizontal--l {
61
+ height: 0.5rem;
62
+ }
63
+ .mc-divider-vertical {
64
+ background: var(--divider-color-primary, #cccccc);
65
+ width: 0.0625rem;
66
+ }
67
+ .mc-divider-vertical--secondary {
68
+ background: var(--divider-color-secondary, #999999);
69
+ }
70
+ .mc-divider-vertical--tertiary {
71
+ background: var(--divider-color-tertiary, #333333);
72
+ }
73
+ .mc-divider-vertical--inverse {
74
+ background: var(--divider-color-inverse, #ffffff);
75
+ }
76
+ .mc-divider-vertical--m {
77
+ height: 0.25rem;
78
+ }
79
+ .mc-divider-vertical--l {
80
+ height: 0.5rem;
81
+ }
82
+
83
+ .mc-divider-vertical {
84
+ content: "";
85
+ display: block;
86
+ height: 100%;
87
+ position: absolute;
88
+ top: 50%;
89
+ transform: translateY(-50%);
90
+ }</style>
@@ -0,0 +1,47 @@
1
+ /**
2
+ * A divider is a visual element used to separate content or sections within an interface. It helps improve readability and organization by creating clear distinctions between groups of information. Dividers can be thin lines, thick separators, or even styled with spacing variations, adapting to different layouts. They are commonly used in menus, lists, forms, and content blocks to create a structured visual hierarchy.
3
+ *
4
+ * @slot default - Use this slot to insert the content who need a vertical divider
5
+ */
6
+ interface Props {
7
+ /**
8
+ * Determines the orientation of the divider.
9
+ */
10
+ orientation?: 'vertical' | 'horizontal';
11
+ /**
12
+ * Determines the appearance of the divider.
13
+ */
14
+ appearance?: 'primary' | 'secondary' | 'tertiary' | 'inverse';
15
+ /**
16
+ * Determines the size of the divider.
17
+ */
18
+ size?: 's' | 'm' | 'l';
19
+ }
20
+ 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> {
21
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
22
+ $$bindings?: Bindings;
23
+ } & Exports;
24
+ (internal: unknown, props: Props & {
25
+ $$events?: Events;
26
+ $$slots?: Slots;
27
+ }): Exports & {
28
+ $set?: any;
29
+ $on?: any;
30
+ };
31
+ z_$$bindings?: Bindings;
32
+ }
33
+ type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
34
+ default: any;
35
+ } ? Props extends Record<string, never> ? any : {
36
+ children?: any;
37
+ } : {});
38
+ declare const Divider: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<Props, {
39
+ default: {};
40
+ }>, {
41
+ [evt: string]: CustomEvent<any>;
42
+ }, {
43
+ default: {};
44
+ }, {}, "">;
45
+ type Divider = InstanceType<typeof Divider>;
46
+ export default Divider;
47
+ //# sourceMappingURL=Divider.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Divider.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/divider/Divider.svelte.ts"],"names":[],"mappings":"AAGE;;;;GAIG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,WAAW,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACxC;;OAEG;IACH,UAAU,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;IAC9D;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;CACxB;AAsBH,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;AACD,KAAK,gCAAgC,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,GACvD,CAAC,KAAK,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GACzB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACnC,GAAG,GACH;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,GAClB,EAAE,CAAC,CAAC;AAId,QAAA,MAAM,OAAO;;;;;;UAAqF,CAAC;AACjF,KAAK,OAAO,GAAG,YAAY,CAAC,OAAO,OAAO,CAAC,CAAC;AAC9C,eAAe,OAAO,CAAC"}
@@ -0,0 +1,18 @@
1
+ # `m-divider`
2
+
3
+ A divider is a visual element used to separate content or sections within an interface. It helps improve readability and organization by creating clear distinctions between groups of information. Dividers can be thin lines, thick separators, or even styled with spacing variations, adapting to different layouts. They are commonly used in menus, lists, forms, and content blocks to create a structured visual hierarchy.
4
+
5
+ ## Props
6
+
7
+ | Name | Description | Type | Default |
8
+ |------|-------------|------|---------|
9
+ | `orientation` | Determines the orientation of the divider. | `'vertical'` `'horizontal'` | `horizontal` |
10
+ | `appearance` | Determines the appearance of the divider. | `'primary'` `'secondary'` `'tertiary'` `'inverse'` | `primary` |
11
+ | `size` | Determines the size of the divider. | `'s'` `'m'` `'l'` | `s` |
12
+
13
+ ## Slots
14
+
15
+ | Name | Description |
16
+ |------|-------------|
17
+ | `default` | Use this slot to insert the content who need a vertical divider |
18
+
@@ -1,14 +1,14 @@
1
- import{c as L,p as M,b as d,A as X,t as T,i as k,j as S,k as a,e as q,g as F,v as Y,a as Z,f as E,d as c,s as h,r as l,h as D}from"../../custom-element.js";import{i as H}from"../../if.js";import{s as O}from"../../slot.js";import{s as j,a as $}from"../../attributes.js";import{b as oo}from"../../this.js";import"../../legacy.js";import{C as to}from"../../Cross24.js";import{O as eo}from"../overlay/Overlay.js";var ro=X('<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="M8.707 6.293a1 1 0 0 1 0 1.414L5.414 11H21a1 1 0 1 1 0 2H5.414l3.293 3.293a1 1 0 1 1-1.414 1.414l-5-5a1 1 0 0 1 0-1.414l5-5a1 1 0 0 1 1.414 0"></path></svg>');function G(f,t){M(t,!1);let e=d(t,"id",12,void 0),i=d(t,"style",12,void 0),u=d(t,"className",12,void 0),v=d(t,"fill",12,void 0),m=d(t,"size",12,"1.5rem");var g={get id(){return e()},set id(r){e(r),a()},get style(){return i()},set style(r){i(r),a()},get className(){return u()},set className(r){u(r),a()},get fill(){return v()},set fill(r){v(r),a()},get size(){return m()},set size(r){m(r),a()}},n=ro();return T(()=>{j(n,"id",e()),$(n,i()),q(n,0,F(u())),j(n,"fill",v())}),k(f,n),S(g)}customElements.define("arrow-back-24",L(G,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));var ao=(f,t)=>f.key==="Escape"&&t(),no=E('<button class="mc-drawer__back mc-button mc-button--icon-button mc-button--ghost svelte-1d2fooj" aria-label="Back"><!></button>'),co=E('<h2 class="mc-drawer__content__title svelte-1d2fooj"> </h2>'),lo=E('<div role="dialog" aria-labelledby="drawerTitle" tabindex="-1"><div class="mc-drawer__dialog svelte-1d2fooj" role="document"><div class="mc-drawer__header svelte-1d2fooj"><!> <h2 class="mc-drawer__title svelte-1d2fooj" id="drawerTitle"> </h2> <button class="mc-drawer__close mc-button mc-button--icon-button mc-button--ghost svelte-1d2fooj" aria-label="Close"><!></button></div> <div class="mc-drawer__body svelte-1d2fooj"><div class="mc-drawer__content svelte-1d2fooj"><!> <!></div></div> <div class="mc-drawer__footer svelte-1d2fooj"><!></div></div> <!></div>');const so={hash:"svelte-1d2fooj",code:`/**
1
+ import{c as M,p as S,b as d,z as Z,t as T,i as j,j as q,k as a,e as F,g as G,v as $,a as oo,f as C,d as n,s as g,r as c,h as H}from"../../custom-element.js";import{i as A}from"../../if.js";import{s as L}from"../../slot.js";import{s as w,a as to}from"../../attributes.js";import{b as eo}from"../../this.js";import"../../legacy.js";import{C as ro}from"../../Cross24.js";import{O as ao}from"../overlay/Overlay.js";var no=Z('<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="M8.707 6.293a1 1 0 0 1 0 1.414L5.414 11H21a1 1 0 1 1 0 2H5.414l3.293 3.293a1 1 0 1 1-1.414 1.414l-5-5a1 1 0 0 1 0-1.414l5-5a1 1 0 0 1 1.414 0"></path></svg>');function I(h,t){S(t,!1);let e=d(t,"id",12,void 0),i=d(t,"style",12,void 0),u=d(t,"className",12,void 0),v=d(t,"fill",12,void 0),f=d(t,"size",12,"1.5rem");var m={get id(){return e()},set id(r){e(r),a()},get style(){return i()},set style(r){i(r),a()},get className(){return u()},set className(r){u(r),a()},get fill(){return v()},set fill(r){v(r),a()},get size(){return f()},set size(r){f(r),a()}},l=no();return T(()=>{w(l,"id",e()),to(l,i()),F(l,0,G(u())),w(l,"fill",v())}),j(h,l),q(m)}customElements.define("arrow-back-24",M(I,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));var co=C('<button class="mc-drawer__back mc-button mc-button--icon-button mc-button--ghost svelte-1d2fooj" aria-label="Back"><!></button>'),lo=C('<h2 class="mc-drawer__content__title svelte-1d2fooj"> </h2>'),so=C('<div role="dialog" aria-labelledby="drawerTitle" tabindex="-1"><div class="mc-drawer__dialog svelte-1d2fooj" role="document"><div class="mc-drawer__header svelte-1d2fooj"><!> <h2 class="mc-drawer__title svelte-1d2fooj" id="drawerTitle"> </h2> <button class="mc-drawer__close mc-button mc-button--icon-button mc-button--ghost svelte-1d2fooj" aria-label="Close"><!></button></div> <div class="mc-drawer__body svelte-1d2fooj"><div class="mc-drawer__content svelte-1d2fooj"><!> <!></div></div> <div class="mc-drawer__footer svelte-1d2fooj"><!></div></div> <!></div>');const bo={hash:"svelte-1d2fooj",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
3
  */.mc-drawer.svelte-1d2fooj {box-sizing:border-box;inset:0;outline:0;pointer-events:none;position:fixed;display:flex;overflow:hidden;padding:0.5rem;justify-content:flex-end;}
4
4
  @media (width >= 680px) {.mc-drawer.svelte-1d2fooj {padding:1rem;}
5
5
  }.mc-drawer--left.svelte-1d2fooj {justify-content:flex-start;}.mc-drawer--left.svelte-1d2fooj .mc-drawer__dialog:where(.svelte-1d2fooj) {transform:translate3d(-100%, 0, 0);}
6
6
  @media (width >= 680px) {.mc-drawer--extend.svelte-1d2fooj .mc-drawer__dialog:where(.svelte-1d2fooj) {max-width:39rem;}
7
- }.mc-drawer__dialog.svelte-1d2fooj {background:var(--drawer-color-background, #ffffff);display:flex;flex-direction:column;height:100%;max-width:100%;transform:translate3d(100%, 0, 0);transition:visibility 0s linear 0.4s, transform 0.4s;visibility:hidden;width:100%;z-index:var(--drawer-z-index, 3);border-radius:var(--radius-l, 1rem);}
7
+ }.mc-drawer__dialog.svelte-1d2fooj {background:var(--drawer-color-background, #ffffff);display:flex;flex-direction:column;height:100%;max-width:100%;transform:translate3d(100%, 0, 0);transition:visibility 0s linear 0.4s, transform 0.4s;visibility:hidden;width:100%;z-index:var(--drawer-z-index, 3);border-radius:var(--border-radius-l, 1rem);}
8
8
  @media (width >= 680px) {.mc-drawer__dialog.svelte-1d2fooj {max-width:25rem;}
9
9
  }.mc-drawer__header.svelte-1d2fooj {display:flex;align-items:center;justify-content:center;height:4rem;}.mc-drawer__icon.svelte-1d2fooj {height:1.5rem;margin-right:0.75rem;width:1.5rem;}.mc-drawer__title.svelte-1d2fooj {font-size:var(--font-body-s, 0.875rem);font-weight:var(--font-weight-semi-bold, 600);color:var(--drawer-color-title, #666666);margin-bottom:0;margin-top:0;text-align:center;flex-grow:1;}.mc-drawer__title.svelte-1d2fooj:first-child {padding-left:4rem;}.mc-drawer__back.svelte-1d2fooj, .mc-drawer__close.svelte-1d2fooj {margin:0.5rem;}.mc-drawer__body.svelte-1d2fooj {flex:1 1;overflow:hidden;}.mc-drawer__body.svelte-1d2fooj:last-child {margin-bottom:1.5rem;padding-bottom:1.5rem;}.mc-drawer__content.svelte-1d2fooj {max-height:100%;overflow:hidden auto;padding:0.5rem 1rem 0;color:var(--drawer-color-paragraph, #000000);}
10
10
  @media (width >= 680px) {.mc-drawer__content.svelte-1d2fooj {padding:1.5rem;}
11
- }.mc-drawer__content__title.svelte-1d2fooj {font-size:var(--font-title-m, 1.5rem);margin:0 0 0.5rem;}.mc-drawer__footer.svelte-1d2fooj {display:flex;flex-direction:column;gap:1rem;padding:1rem 1.5rem;border-top:var(--border-s, 1px) solid var(--divider-color-primary, #cccccc);}
11
+ }.mc-drawer__content__title.svelte-1d2fooj {font-size:var(--font-title-m, 1.5rem);margin:0 0 0.5rem;}.mc-drawer__footer.svelte-1d2fooj {display:flex;flex-direction:column;gap:1rem;padding:1rem 1.5rem;border-top:var(--border-width-s, 0.0625rem) solid var(--divider-color-primary, #cccccc);}
12
12
  @media (width >= 680px) {.mc-drawer__footer.svelte-1d2fooj {justify-content:center;flex-direction:row;}
13
- }.mc-drawer-open.svelte-1d2fooj {overflow:hidden;}.mc-drawer.is-open.svelte-1d2fooj .mc-drawer__dialog:where(.svelte-1d2fooj) {pointer-events:all;transform:translate3d(0, 0, 0);transition:visibility 0s linear 0s, transform 0.4s;visibility:visible;}.mc-button.svelte-1d2fooj {color:var(--button-color-filled-standard-font, #ffffff);background-color:var(--button-color-filled-standard-background, #464e63);}.mc-button.svelte-1d2fooj:hover {background-color:var(--button-color-filled-standard-hover-background, #343b4c);}.mc-button.svelte-1d2fooj:active {background-color:var(--button-color-filled-standard-active-background, #242938);}.mc-button.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1d2fooj {font-weight:var(--font-weight-semi-bold, 600);padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button.svelte-1d2fooj {display:inline-flex;justify-content:center;vertical-align:middle;text-align:center;border:2px solid transparent;border-radius:var(--button-radius, 0.25rem);transition:all ease 200ms;transition:box-shadow 200ms ease;align-items:center;box-sizing:border-box;font-family:inherit;fill:currentcolor;gap:0.25rem;cursor:pointer;}.mc-button__label.svelte-1d2fooj {font-size:var(--font-size-150, 1rem);}.mc-button__icon.svelte-1d2fooj {flex-shrink:0;width:1.5rem;height:1.5rem;}.mc-button.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1d2fooj:focus-visible {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-button--s.svelte-1d2fooj {padding:0 calc(0.75rem - 0.125rem);min-height:2rem;min-width:2rem;}.mc-button--m.svelte-1d2fooj {padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button--l.svelte-1d2fooj {padding:0 calc(1.25rem - 0.125rem);min-height:4rem;min-width:4rem;}.mc-button--icon-only.svelte-1d2fooj {padding:0.25rem;}.mc-button--outlined.svelte-1d2fooj {color:var(--button-color-outlined-standard-font, #242938);border-color:var(--button-color-outlined-standard-border, #8891aa);background-color:var(--button-color-outlined-standard-background, #ffffff);}.mc-button--outlined.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-standard-hover-background, #eff1f6);}.mc-button--outlined.svelte-1d2fooj:active {background-color:var(--button-color-outlined-standard-active-background, #c9d0de);}.mc-button--outlined.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.svelte-1d2fooj {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.svelte-1d2fooj:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--accent.svelte-1d2fooj {color:var(--button-color-filled-accent-font, #ffffff);background-color:var(--button-color-filled-accent-background, #117f03);}.mc-button--accent.svelte-1d2fooj:hover {background-color:var(--button-color-filled-accent-hover-background, #006902);}.mc-button--accent.svelte-1d2fooj:active {background-color:var(--button-color-filled-accent-active-background, #035010);}.mc-button--accent.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--danger.svelte-1d2fooj {color:var(--button-color-filled-danger-font, #ffffff);background-color:var(--button-color-filled-danger-background, #c61112);}.mc-button--danger.svelte-1d2fooj:hover {background-color:var(--button-color-filled-danger-hover-background, #8c0003);}.mc-button--danger.svelte-1d2fooj:active {background-color:var(--button-color-filled-danger-active-background, #530000);}.mc-button--danger.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--inverse.svelte-1d2fooj {--focus-color-mid: var(--focus-color-outline-outer, #000000);--focus-color-outer: var(--focus-color-outline-mid, #ffffff);color:var(--button-color-filled-inverse-font, #242938);background-color:var(--button-color-filled-inverse-background, #ffffff);}.mc-button--inverse.svelte-1d2fooj:hover {background-color:var(--button-color-filled-inverse-hover-background, #e6e6e6);}.mc-button--inverse.svelte-1d2fooj:active {background-color:var(--button-color-filled-inverse-active-background, #cccccc);}.mc-button--inverse.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--icon-button.svelte-1d2fooj {border-radius:var(--radius-full, 100%);padding:0;}.mc-button--outlined.mc-button--standard.svelte-1d2fooj {color:var(--button-color-outlined-standard-font, #242938);border-color:var(--button-color-outlined-standard-border, #8891aa);background-color:var(--button-color-outlined-standard-background, #ffffff);}.mc-button--outlined.mc-button--standard.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-standard-hover-background, #eff1f6);}.mc-button--outlined.mc-button--standard.svelte-1d2fooj:active {background-color:var(--button-color-outlined-standard-active-background, #c9d0de);}.mc-button--outlined.mc-button--standard.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--outlined.mc-button--accent.svelte-1d2fooj {color:var(--button-color-outlined-accent-font, #117f03);border-color:var(--button-color-outlined-accent-border, #78be20);background-color:var(--button-color-outlined-accent-background, #ffffff);}.mc-button--outlined.mc-button--accent.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-accent-hover-background, #ebf5de);}.mc-button--outlined.mc-button--accent.svelte-1d2fooj:active {background-color:var(--button-color-outlined-accent-active-background, #c5e39e);}.mc-button--outlined.mc-button--accent.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--outlined.mc-button--danger.svelte-1d2fooj {color:var(--button-color-outlined-danger-font, #c61112);border-color:var(--button-color-outlined-danger-border, #ef5f5c);background-color:var(--button-color-outlined-danger-background, #ffffff);}.mc-button--outlined.mc-button--danger.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-danger-hover-background, #fdeaea);}.mc-button--outlined.mc-button--danger.svelte-1d2fooj:active {background-color:var(--button-color-outlined-danger-active-background, #f8bcbb);}.mc-button--outlined.mc-button--danger.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj {color:var(--button-color-outlined-inverse-font, #ffffff);border-color:var(--button-color-outlined-inverse-border, #ffffff);background-color:var(--button-color-outlined-inverse-background, rgba(255, 255, 255, 0.01));}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-inverse-hover-background, rgba(255, 255, 255, 0.1));}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj:active {background-color:var(--button-color-outlined-inverse-active-background, rgba(255, 255, 255, 0.2));}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--standard.svelte-1d2fooj {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--standard.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.mc-button--standard.svelte-1d2fooj:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.mc-button--standard.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--accent.svelte-1d2fooj {color:var(--button-color-ghost-accent-font, #117f03);background-color:var(--button-color-ghost-accent-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--accent.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-accent-hover-background, rgba(17, 127, 3, 0.1));}.mc-button--ghost.mc-button--accent.svelte-1d2fooj:active {background-color:var(--button-color-ghost-accent-active-background, rgba(17, 127, 3, 0.2));}.mc-button--ghost.mc-button--accent.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--danger.svelte-1d2fooj {color:var(--button-color-ghost-danger-font, #c61112);background-color:var(--button-color-ghost-danger-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--danger.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-danger-hover-background, rgba(198, 17, 18, 0.1));}.mc-button--ghost.mc-button--danger.svelte-1d2fooj:active {background-color:var(--button-color-ghost-danger-active-background, rgba(198, 17, 18, 0.2));}.mc-button--ghost.mc-button--danger.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj {color:var(--button-color-ghost-inverse-font, #ffffff);background-color:var(--button-color-ghost-inverse-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-inverse-hover-background, rgba(255, 255, 255, 0.1));}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj:active {background-color:var(--button-color-ghost-inverse-active-background, rgba(255, 255, 255, 0.2));}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}`};function bo(f,t){M(t,!0),Z(f,so);let e=d(t,"open",7),i=d(t,"position",7),u=d(t,"extended",7),v=d(t,"back",7),m=d(t,"title",7),g=d(t,"contentTitle",7),n;const r=()=>{e(!1);const o=new CustomEvent("update:open",{detail:e(),bubbles:!0,composed:!0});n.dispatchEvent(o)},I=()=>{const o=new CustomEvent("back",{bubbles:!0,composed:!0});n.dispatchEvent(o)};var J={get open(){return e()},set open(o){e(o),a()},get position(){return i()},set position(o){i(o),a()},get extended(){return u()},set extended(o){u(o),a()},get back(){return v()},set back(o){v(o),a()},get title(){return m()},set title(o){m(o),a()},get contentTitle(){return g()},set contentTitle(o){g(o),a()}},s=lo();s.__keydown=[ao,r];var w=c(s),_=c(w),C=c(_);{var K=o=>{var b=no();b.__click=I;var z=c(b);G(z,{"aria-hidden":"true"}),l(b),k(o,b)};H(C,o=>{v()&&o(K)})}var p=h(C,2),P=c(p,!0);l(p);var x=h(p,2);x.__click=r;var Q=c(x);to(Q,{"aria-hidden":"true"}),l(x),l(_);var y=h(_,2),N=c(y),B=c(N);{var R=o=>{var b=co(),z=c(b,!0);l(b),T(()=>D(z,g())),k(o,b)};H(B,o=>{g()&&o(R)})}var U=h(B,2);O(U,t,"default",{}),l(N),l(y);var A=h(y,2),V=c(A);O(V,t,"footer",{}),l(A),l(w);var W=h(w,2);return eo(W,{get isvisible(){return e()},dialoglabel:"drawerTitle"}),l(s),oo(s,o=>n=o,()=>n),T(()=>{q(s,1,F(["mc-drawer",`mc-drawer--${i()}`,e()&&"is-open",u()&&"mc-drawer--extend"]),"svelte-1d2fooj"),j(s,"aria-modal",e()?"true":"false"),j(s,"aria-hidden",!e()),D(P,m())}),k(f,s),S(J)}Y(["keydown","click"]);customElements.define("m-drawer",L(bo,{open:{},position:{},extended:{},back:{},title:{},contentTitle:{}},["default","footer"],[],!0));
13
+ }.mc-drawer-open.svelte-1d2fooj {overflow:hidden;}.mc-drawer.is-open.svelte-1d2fooj .mc-drawer__dialog:where(.svelte-1d2fooj) {pointer-events:all;transform:translate3d(0, 0, 0);transition:visibility 0s linear 0s, transform 0.4s;visibility:visible;}.mc-button.svelte-1d2fooj {color:var(--button-color-filled-standard-font, #ffffff);background-color:var(--button-color-filled-standard-background, #464e63);}.mc-button.svelte-1d2fooj:hover {background-color:var(--button-color-filled-standard-hover-background, #343b4c);}.mc-button.svelte-1d2fooj:active {background-color:var(--button-color-filled-standard-active-background, #242938);}.mc-button.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1d2fooj {font-weight:var(--font-weight-semi-bold, 600);padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button.svelte-1d2fooj {display:inline-flex;justify-content:center;vertical-align:middle;text-align:center;border:2px solid transparent;border-radius:var(--button-border-radius-s, 0.25rem);transition:all ease 200ms;transition:box-shadow 200ms ease;align-items:center;box-sizing:border-box;font-family:inherit;fill:currentcolor;gap:0.25rem;cursor:pointer;}.mc-button__label.svelte-1d2fooj {font-size:var(--font-size-150, 1rem);}.mc-button__icon.svelte-1d2fooj {flex-shrink:0;width:1.5rem;height:1.5rem;}.mc-button.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button.svelte-1d2fooj:focus-visible {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-button--s.svelte-1d2fooj {padding:0 calc(0.75rem - 0.125rem);min-height:2rem;min-width:2rem;}.mc-button--m.svelte-1d2fooj {padding:0 calc(1rem - 0.125rem);min-height:3rem;min-width:3rem;}.mc-button--l.svelte-1d2fooj {padding:0 calc(1.25rem - 0.125rem);min-height:4rem;min-width:4rem;}.mc-button--icon-only.svelte-1d2fooj {padding:0.25rem;}.mc-button--outlined.svelte-1d2fooj {color:var(--button-color-outlined-standard-font, #242938);border-color:var(--button-color-outlined-standard-border, #8891aa);background-color:var(--button-color-outlined-standard-background, #ffffff);}.mc-button--outlined.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-standard-hover-background, #eff1f6);}.mc-button--outlined.svelte-1d2fooj:active {background-color:var(--button-color-outlined-standard-active-background, #c9d0de);}.mc-button--outlined.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.svelte-1d2fooj {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.svelte-1d2fooj:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--accent.svelte-1d2fooj {color:var(--button-color-filled-accent-font, #ffffff);background-color:var(--button-color-filled-accent-background, #117f03);}.mc-button--accent.svelte-1d2fooj:hover {background-color:var(--button-color-filled-accent-hover-background, #006902);}.mc-button--accent.svelte-1d2fooj:active {background-color:var(--button-color-filled-accent-active-background, #035010);}.mc-button--accent.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--danger.svelte-1d2fooj {color:var(--button-color-filled-danger-font, #ffffff);background-color:var(--button-color-filled-danger-background, #c61112);}.mc-button--danger.svelte-1d2fooj:hover {background-color:var(--button-color-filled-danger-hover-background, #8c0003);}.mc-button--danger.svelte-1d2fooj:active {background-color:var(--button-color-filled-danger-active-background, #530000);}.mc-button--danger.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--inverse.svelte-1d2fooj {--focus-color-mid: var(--focus-color-outline-outer, #000000);--focus-color-outer: var(--focus-color-outline-mid, #ffffff);color:var(--button-color-filled-inverse-font, #242938);background-color:var(--button-color-filled-inverse-background, #ffffff);}.mc-button--inverse.svelte-1d2fooj:hover {background-color:var(--button-color-filled-inverse-hover-background, #e6e6e6);}.mc-button--inverse.svelte-1d2fooj:active {background-color:var(--button-color-filled-inverse-active-background, #cccccc);}.mc-button--inverse.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--icon-button.svelte-1d2fooj {border-radius:var(--border-radius-full, 100%);padding:0;}.mc-button--outlined.mc-button--standard.svelte-1d2fooj {color:var(--button-color-outlined-standard-font, #242938);border-color:var(--button-color-outlined-standard-border, #8891aa);background-color:var(--button-color-outlined-standard-background, #ffffff);}.mc-button--outlined.mc-button--standard.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-standard-hover-background, #eff1f6);}.mc-button--outlined.mc-button--standard.svelte-1d2fooj:active {background-color:var(--button-color-outlined-standard-active-background, #c9d0de);}.mc-button--outlined.mc-button--standard.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--outlined.mc-button--accent.svelte-1d2fooj {color:var(--button-color-outlined-accent-font, #117f03);border-color:var(--button-color-outlined-accent-border, #78be20);background-color:var(--button-color-outlined-accent-background, #ffffff);}.mc-button--outlined.mc-button--accent.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-accent-hover-background, #ebf5de);}.mc-button--outlined.mc-button--accent.svelte-1d2fooj:active {background-color:var(--button-color-outlined-accent-active-background, #c5e39e);}.mc-button--outlined.mc-button--accent.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--outlined.mc-button--danger.svelte-1d2fooj {color:var(--button-color-outlined-danger-font, #c61112);border-color:var(--button-color-outlined-danger-border, #ef5f5c);background-color:var(--button-color-outlined-danger-background, #ffffff);}.mc-button--outlined.mc-button--danger.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-danger-hover-background, #fdeaea);}.mc-button--outlined.mc-button--danger.svelte-1d2fooj:active {background-color:var(--button-color-outlined-danger-active-background, #f8bcbb);}.mc-button--outlined.mc-button--danger.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj {color:var(--button-color-outlined-inverse-font, #ffffff);border-color:var(--button-color-outlined-inverse-border, #ffffff);background-color:var(--button-color-outlined-inverse-background, rgba(255, 255, 255, 0.01));}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj:hover {background-color:var(--button-color-outlined-inverse-hover-background, rgba(255, 255, 255, 0.1));}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj:active {background-color:var(--button-color-outlined-inverse-active-background, rgba(255, 255, 255, 0.2));}.mc-button--outlined.mc-button--inverse.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--standard.svelte-1d2fooj {color:var(--button-color-ghost-standard-font, #242938);background-color:var(--button-color-ghost-standard-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--standard.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-standard-hover-background, rgba(70, 78, 99, 0.1));}.mc-button--ghost.mc-button--standard.svelte-1d2fooj:active {background-color:var(--button-color-ghost-standard-active-background, rgba(70, 78, 99, 0.2));}.mc-button--ghost.mc-button--standard.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--accent.svelte-1d2fooj {color:var(--button-color-ghost-accent-font, #117f03);background-color:var(--button-color-ghost-accent-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--accent.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-accent-hover-background, rgba(17, 127, 3, 0.1));}.mc-button--ghost.mc-button--accent.svelte-1d2fooj:active {background-color:var(--button-color-ghost-accent-active-background, rgba(17, 127, 3, 0.2));}.mc-button--ghost.mc-button--accent.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--danger.svelte-1d2fooj {color:var(--button-color-ghost-danger-font, #c61112);background-color:var(--button-color-ghost-danger-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--danger.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-danger-hover-background, rgba(198, 17, 18, 0.1));}.mc-button--ghost.mc-button--danger.svelte-1d2fooj:active {background-color:var(--button-color-ghost-danger-active-background, rgba(198, 17, 18, 0.2));}.mc-button--ghost.mc-button--danger.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj {color:var(--button-color-ghost-inverse-font, #ffffff);background-color:var(--button-color-ghost-inverse-background, rgba(255, 255, 255, 0.01));}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj:hover {background-color:var(--button-color-ghost-inverse-hover-background, rgba(255, 255, 255, 0.1));}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj:active {background-color:var(--button-color-ghost-inverse-active-background, rgba(255, 255, 255, 0.2));}.mc-button--ghost.mc-button--inverse.svelte-1d2fooj:disabled {background-color:var(--button-state-disabled-background, #d9d9d9);border-color:transparent;color:var(--button-state-disabled-color, #737373);cursor:not-allowed;}`};function io(h,t){S(t,!0),oo(h,bo);let e=d(t,"open",7),i=d(t,"position",7),u=d(t,"extended",7),v=d(t,"back",7),f=d(t,"title",7),m=d(t,"contentTitle",7),l=d(t,"onUpdateOpen",7),r=d(t,"onBack",7),k;const E=()=>{e(!1),l()?.(e());const o=new CustomEvent("update:open",{detail:e(),bubbles:!0,composed:!0});k.dispatchEvent(o)},J=()=>{r()?.();const o=new CustomEvent("back",{bubbles:!0,composed:!0});k.dispatchEvent(o)};var K={get open(){return e()},set open(o){e(o),a()},get position(){return i()},set position(o){i(o),a()},get extended(){return u()},set extended(o){u(o),a()},get back(){return v()},set back(o){v(o),a()},get title(){return f()},set title(o){f(o),a()},get contentTitle(){return m()},set contentTitle(o){m(o),a()},get onUpdateOpen(){return l()},set onUpdateOpen(o){l(o),a()},get onBack(){return r()},set onBack(o){r(o),a()}},s=so();s.__keydown=o=>o.key==="Escape"&&E();var _=n(s),p=n(_),O=n(p);{var P=o=>{var b=co();b.__click=J;var B=n(b);I(B,{"aria-hidden":"true"}),c(b),j(o,b)};A(O,o=>{v()&&o(P)})}var x=g(O,2),Q=n(x,!0);c(x);var y=g(x,2);y.__click=E;var R=n(y);ro(R,{"aria-hidden":"true"}),c(y),c(p);var z=g(p,2),N=n(z),U=n(N);{var V=o=>{var b=lo(),B=n(b,!0);c(b),T(()=>H(B,m())),j(o,b)};A(U,o=>{m()&&o(V)})}var W=g(U,2);L(W,t,"default",{}),c(N),c(z);var D=g(z,2),X=n(D);L(X,t,"footer",{}),c(D),c(_);var Y=g(_,2);return ao(Y,{get isvisible(){return e()},dialoglabel:"drawerTitle"}),c(s),eo(s,o=>k=o,()=>k),T(()=>{F(s,1,G(["mc-drawer",`mc-drawer--${i()}`,e()&&"is-open",u()&&"mc-drawer--extend"]),"svelte-1d2fooj"),w(s,"aria-modal",e()?"true":"false"),w(s,"aria-hidden",!e()),H(Q,f())}),j(h,s),q(K)}$(["keydown","click"]);customElements.define("m-drawer",M(io,{open:{},position:{},extended:{},back:{},title:{},contentTitle:{},onUpdateOpen:{},onBack:{}},["default","footer"],[],!0));
14
14
  //# sourceMappingURL=Drawer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.js","sources":["../../../node_modules/@mozaic-ds/icons-svelte/dist/components/ArrowBack24/ArrowBack24.svelte","../../../src/components/drawer/Drawer.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'arrow-back-24', shadow: 'none' }} />\n<script>\n export let id = undefined;\n export let style = undefined;\n export let className = undefined;\n export let fill = undefined;\n export let size = \"1.5rem\";\n</script>\n\n<svg aria-hidden=\"true\" id={id} style={style} class={className} fill={fill} xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\"><path fill-rule=\"evenodd\" d=\"M8.707 6.293a1 1 0 0 1 0 1.414L5.414 11H21a1 1 0 1 1 0 2H5.414l3.293 3.293a1 1 0 1 1-1.414 1.414l-5-5a1 1 0 0 1 0-1.414l5-5a1 1 0 0 1 1.414 0\"/></svg>","<svelte:options customElement={{ tag: 'm-drawer' }} />\n\n<script lang=\"ts\">\n import ArrowBack24 from '@mozaic-ds/icons-svelte/svelte/ArrowBack24/ArrowBack24.svelte';\n import Cross24 from '@mozaic-ds/icons-svelte/svelte/Cross24/Cross24.svelte';\n import MOverlay from '../overlay/Overlay.svelte';\n /**\n * A drawer is a sliding panel that appears from the side of the screen, providing additional content, settings, or actions without disrupting the main view. It is often used for filtering options, or contextual details. It enhances usability by keeping interfaces clean while offering expandable functionality.\n *\n * @slot default - Use this slot to insert the content of the drawer\n * @slot footer - Use this slot to insert buttons in the footer\n * @event update:open {CustomEvent<boolean>} - Emits when the drawer open state changes.\n * @event back {CustomEvent<void>} - Emits when click back button of the drawer.\n */\n interface Props {\n /**\n * If `true`, display the drawer.\n */\n open?: boolean;\n /**\n * Position of the drawer.\n */\n position?: 'left' | 'right';\n /**\n * If `true`, the drawer have a bigger width.\n */\n extended?: boolean;\n /**\n * If `true`, display the back button.\n */\n back?: boolean;\n /**\n * Title of the drawer.\n */\n title: string;\n /**\n * Title of the content of the drawer.\n */\n contentTitle?: string;\n }\n\n let { open, position, extended, back, title, contentTitle }: Props = $props();\n let element: HTMLElement;\n\n const onClose = () => {\n open = false;\n\n const event = new CustomEvent('update:open', {\n detail: open,\n bubbles: true,\n composed: true,\n });\n element.dispatchEvent(event);\n };\n\n const onBack = () => {\n const event = new CustomEvent('back', {\n bubbles: true,\n composed: true,\n });\n element.dispatchEvent(event);\n };\n</script>\n\n<div\n class={[\n 'mc-drawer',\n `mc-drawer--${position}`,\n open && 'is-open',\n extended && 'mc-drawer--extend',\n ]}\n role=\"dialog\"\n aria-labelledby=\"drawerTitle\"\n aria-modal={open ? 'true' : 'false'}\n tabindex=\"-1\"\n aria-hidden={!open}\n onkeydown={(e) => e.key === 'Escape' && onClose()}\n bind:this={element}\n>\n <div class=\"mc-drawer__dialog\" role=\"document\">\n <div class=\"mc-drawer__header\">\n {#if back}\n <button\n class=\"mc-drawer__back mc-button mc-button--icon-button mc-button--ghost\"\n aria-label=\"Back\"\n onclick={onBack}\n >\n <ArrowBack24 aria-hidden=\"true\" />\n </button>\n {/if}\n <h2 class=\"mc-drawer__title\" id=\"drawerTitle\">{title}</h2>\n <button\n class=\"mc-drawer__close mc-button mc-button--icon-button mc-button--ghost\"\n aria-label=\"Close\"\n onclick={onClose}\n >\n <Cross24 aria-hidden=\"true\" />\n </button>\n </div>\n\n <div class=\"mc-drawer__body\">\n <div class=\"mc-drawer__content\">\n {#if contentTitle}\n <h2 class=\"mc-drawer__content__title\">{contentTitle}</h2>\n {/if}\n <slot />\n </div>\n </div>\n\n <div class=\"mc-drawer__footer\">\n <slot name=\"footer\" />\n </div>\n </div>\n <MOverlay isvisible={open} dialoglabel=\"drawerTitle\" />\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/drawer';\n @use '@mozaic-ds/styles/components/button';\n</style>\n"],"names":["id","style","className","fill","size","on_keydown","e","onClose","open","$.prop","$$props","position","extended","back","title","contentTitle","element","event","onBack","$$render","consequent","consequent_1","$.bind_this","div","$$value"],"mappings":"wtBAAA,SAEa,IAAAA,cAAK,MAAS,EACdC,iBAAQ,MAAS,EACjBC,qBAAY,MAAS,EACrBC,gBAAO,MAAS,EAChBC,gBAAO,QAAQ,iRAGAJ,GAAE,MAAUC,GAAK,UAASC,EAAS,CAAA,CAAA,aAAQC,GAAI,eAF3E,oGCqEc,IAAAE,GAAA,CAAAC,MAAMA,EAAE,MAAQ,UAAYC,EAAO;;;;;;;;;;;;86WA5EjD,qBAyCQC,EAAIC,EAAAC,EAAA,OAAA,CAAA,EAAEC,EAAQF,EAAAC,EAAA,WAAA,CAAA,EAAEE,EAAQH,EAAAC,EAAA,WAAA,CAAA,EAAEG,EAAIJ,EAAAC,EAAA,OAAA,CAAA,EAAEI,EAAKL,EAAAC,EAAA,QAAA,CAAA,EAAEK,EAAYN,EAAAC,EAAA,eAAA,CAAA,EACrDM,EAEE,MAAAT,EAAO,IAAS,CACpBC,EAAO,EAAK,EAEN,MAAAS,EAAK,IAAO,YAAY,eAC5B,OAAQT,EAAI,EACZ,QAAS,GACT,SAAU,EAAI,CAAA,EAEhBQ,EAAQ,cAAcC,CAAK,CAC7B,EAEMC,EAAM,IAAS,OACbD,EAAK,IAAO,YAAY,OAAM,CAClC,QAAS,GACT,SAAU,GAAI,EAEhBD,EAAQ,cAAcC,CAAK,CAC7B,6YAwBiBC,8DAJRL,EAAI,GAAAM,EAAAC,CAAA,uDAaEb,8HASgCQ,EAAY,CAAA,CAAA,kBADhDA,EAAY,GAAAI,EAAAE,CAAA,iJAWFb,EAAI,oCApCdc,GAAAC,EAAAC,GAAAR,QAAAA,CAAO,kBAXhB,0BACcL,EAAQ,CAAA,GACtBH,EAAI,GAAI,UACRI,KAAY,yDAIFJ,EAAI,EAAG,OAAS,OAAO,qBAErBA,EAAI,CAAA,MAeiCM,GAAK,eA5B1D","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"Drawer.js","sources":["../../../node_modules/@mozaic-ds/icons-svelte/dist/components/ArrowBack24/ArrowBack24.svelte","../../../src/components/drawer/Drawer.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'arrow-back-24', shadow: 'none' }} />\n<script>\n export let id = undefined;\n export let style = undefined;\n export let className = undefined;\n export let fill = undefined;\n export let size = \"1.5rem\";\n</script>\n\n<svg aria-hidden=\"true\" id={id} style={style} class={className} fill={fill} xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" width=\"24px\" height=\"24px\"><path fill-rule=\"evenodd\" d=\"M8.707 6.293a1 1 0 0 1 0 1.414L5.414 11H21a1 1 0 1 1 0 2H5.414l3.293 3.293a1 1 0 1 1-1.414 1.414l-5-5a1 1 0 0 1 0-1.414l5-5a1 1 0 0 1 1.414 0\"/></svg>","<svelte:options customElement={{ tag: 'm-drawer' }} />\n\n<script lang=\"ts\">\n import ArrowBack24 from '@mozaic-ds/icons-svelte/svelte/ArrowBack24/ArrowBack24.svelte';\n import Cross24 from '@mozaic-ds/icons-svelte/svelte/Cross24/Cross24.svelte';\n import MOverlay from '../overlay/Overlay.svelte';\n /**\n * A drawer is a sliding panel that appears from the side of the screen, providing additional content, settings, or actions without disrupting the main view. It is often used for filtering options, or contextual details. It enhances usability by keeping interfaces clean while offering expandable functionality.\n *\n * @slot default - Use this slot to insert the content of the drawer\n * @slot footer - Use this slot to insert buttons in the footer\n * @event update:open {CustomEvent<boolean>} - Emits when the drawer open state changes.\n * @event back {CustomEvent<void>} - Emits when click back button of the drawer.\n */\n interface Props {\n /**\n * If `true`, display the drawer.\n */\n open?: boolean;\n /**\n * Position of the drawer.\n */\n position?: 'left' | 'right';\n /**\n * If `true`, the drawer have a bigger width.\n */\n extended?: boolean;\n /**\n * If `true`, display the back button.\n */\n back?: boolean;\n /**\n * Title of the drawer.\n */\n title: string;\n /**\n * Title of the content of the drawer.\n */\n contentTitle?: string;\n /**\n * Callback fired when the drawer open state changes.\n */\n onUpdateOpen?: (open: boolean) => void;\n /**\n * Callback fired when the back button is clicked.\n */\n onBack?: () => void;\n }\n\n let { open, position, extended, back, title, contentTitle, onUpdateOpen, onBack }: Props =\n $props();\n let element: HTMLElement;\n\n const onClose = () => {\n open = false;\n\n onUpdateOpen?.(open);\n\n const event = new CustomEvent('update:open', {\n detail: open,\n bubbles: true,\n composed: true,\n });\n element.dispatchEvent(event);\n };\n\n const onClickBack = () => {\n onBack?.();\n\n const event = new CustomEvent('back', {\n bubbles: true,\n composed: true,\n });\n element.dispatchEvent(event);\n };\n</script>\n\n<div\n class={[\n 'mc-drawer',\n `mc-drawer--${position}`,\n open && 'is-open',\n extended && 'mc-drawer--extend',\n ]}\n role=\"dialog\"\n aria-labelledby=\"drawerTitle\"\n aria-modal={open ? 'true' : 'false'}\n tabindex=\"-1\"\n aria-hidden={!open}\n onkeydown={(e) => e.key === 'Escape' && onClose()}\n bind:this={element}\n>\n <div class=\"mc-drawer__dialog\" role=\"document\">\n <div class=\"mc-drawer__header\">\n {#if back}\n <button\n class=\"mc-drawer__back mc-button mc-button--icon-button mc-button--ghost\"\n aria-label=\"Back\"\n onclick={onClickBack}\n >\n <ArrowBack24 aria-hidden=\"true\" />\n </button>\n {/if}\n <h2 class=\"mc-drawer__title\" id=\"drawerTitle\">{title}</h2>\n <button\n class=\"mc-drawer__close mc-button mc-button--icon-button mc-button--ghost\"\n aria-label=\"Close\"\n onclick={onClose}\n >\n <Cross24 aria-hidden=\"true\" />\n </button>\n </div>\n\n <div class=\"mc-drawer__body\">\n <div class=\"mc-drawer__content\">\n {#if contentTitle}\n <h2 class=\"mc-drawer__content__title\">{contentTitle}</h2>\n {/if}\n <slot />\n </div>\n </div>\n\n <div class=\"mc-drawer__footer\">\n <slot name=\"footer\" />\n </div>\n </div>\n <MOverlay isvisible={open} dialoglabel=\"drawerTitle\" />\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/drawer';\n @use '@mozaic-ds/styles/components/button';\n</style>\n"],"names":["id","style","className","fill","size","open","$.prop","$$props","position","extended","back","title","contentTitle","onUpdateOpen","onBack","element","onClose","event","onClickBack","div","e","$$render","consequent","consequent_1","$.bind_this","$$value"],"mappings":"0tBAAA,SAEa,IAAAA,cAAK,MAAS,EACdC,iBAAQ,MAAS,EACjBC,qBAAY,MAAS,EACrBC,gBAAO,MAAS,EAChBC,gBAAO,QAAQ,iRAGAJ,GAAE,OAAUC,GAAK,UAASC,EAAS,CAAA,CAAA,aAAQC,GAAI,eAF3E;;;;;;;;;;;;87WCPA,sBAiDQE,EAAIC,EAAAC,EAAA,OAAA,CAAA,EAAEC,EAAQF,EAAAC,EAAA,WAAA,CAAA,EAAEE,EAAQH,EAAAC,EAAA,WAAA,CAAA,EAAEG,EAAIJ,EAAAC,EAAA,OAAA,CAAA,EAAEI,EAAKL,EAAAC,EAAA,QAAA,CAAA,EAAEK,EAAYN,EAAAC,EAAA,eAAA,CAAA,EAAEM,EAAYP,EAAAC,EAAA,eAAA,CAAA,EAAEO,EAAMR,EAAAC,EAAA,SAAA,CAAA,EAE3EQ,EAEE,MAAAC,EAAO,IAAS,CACpBX,EAAO,EAAK,EAEZQ,EAAY,IAAGR,GAAI,EAEb,MAAAY,EAAK,IAAO,YAAY,eAC5B,OAAQZ,EAAI,EACZ,QAAS,GACT,SAAU,EAAI,CAAA,EAEhBU,EAAQ,cAAcE,CAAK,CAC7B,EAEMC,EAAW,IAAS,CACxBJ,MAAM,QAEAG,EAAK,IAAO,YAAY,OAAM,CAClC,QAAS,GACT,SAAU,GAAI,EAEhBF,EAAQ,cAAcE,CAAK,CAC7B,+aAeYE,EAAA,UAAAC,GAAMA,EAAE,MAAQ,UAAYJ,EAAO,2DAS9BE,8DAJRR,EAAI,GAAAW,EAAAC,CAAA,uDAaEN,8HASgCJ,EAAY,CAAA,CAAA,kBADhDA,EAAY,GAAAS,EAAAE,CAAA,iJAWFlB,EAAI,oCApCdmB,GAAAL,EAAAM,GAAAV,QAAAA,CAAO,kBAXhB,0BACcP,EAAQ,CAAA,GACtBH,EAAI,GAAI,UACRI,KAAY,yDAIFJ,EAAI,EAAG,OAAS,OAAO,qBAErBA,EAAI,CAAA,MAeiCM,GAAK,eA5B1D","x_google_ignoreList":[0]}
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.stories.d.ts","sourceRoot":"","sources":["../../../src/components/drawer/Drawer.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAMrE,QAAA,MAAM,IAAI,EAAE,IA2EX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KASrB,CAAC;AAEF,eAAO,MAAM,IAAI;;;;CAIhB,CAAC;AAEF,eAAO,MAAM,IAAI;;;;CAIhB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;CAM1B,CAAC;AAEF,eAAO,MAAM,UAAU;;;;CAOtB,CAAC;AAEF,eAAO,MAAM,MAAM;;;;;CASlB,CAAC"}
1
+ {"version":3,"file":"Drawer.stories.d.ts","sourceRoot":"","sources":["../../../src/components/drawer/Drawer.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAMrE,QAAA,MAAM,IAAI,EAAE,IA0EX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KASrB,CAAC;AAEF,eAAO,MAAM,IAAI;;;;CAIhB,CAAC;AAEF,eAAO,MAAM,IAAI;;;;CAIhB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;CAM1B,CAAC;AAEF,eAAO,MAAM,UAAU;;;;CAOtB,CAAC;AAEF,eAAO,MAAM,MAAM;;;;;CASlB,CAAC"}
@@ -71,8 +71,7 @@ const meta = {
71
71
  @update:open=${handleUpdateOpen}
72
72
  @back=${onBack}
73
73
  >
74
- ${unsafeHTML(ifDefined(args.default))}
75
- ${unsafeHTML(ifDefined(args.footer))}
74
+ ${unsafeHTML(ifDefined(args.default))} ${unsafeHTML(ifDefined(args.footer))}
76
75
  </m-drawer>
77
76
  `;
78
77
  },
@@ -37,14 +37,25 @@
37
37
  * Title of the content of the drawer.
38
38
  */
39
39
  contentTitle?: string;
40
+ /**
41
+ * Callback fired when the drawer open state changes.
42
+ */
43
+ onUpdateOpen?: (open: boolean) => void;
44
+ /**
45
+ * Callback fired when the back button is clicked.
46
+ */
47
+ onBack?: () => void;
40
48
  }
41
49
 
42
- let { open, position, extended, back, title, contentTitle }: Props = $props();
50
+ let { open, position, extended, back, title, contentTitle, onUpdateOpen, onBack }: Props =
51
+ $props();
43
52
  let element: HTMLElement;
44
53
 
45
54
  const onClose = () => {
46
55
  open = false;
47
56
 
57
+ onUpdateOpen?.(open);
58
+
48
59
  const event = new CustomEvent('update:open', {
49
60
  detail: open,
50
61
  bubbles: true,
@@ -53,7 +64,9 @@
53
64
  element.dispatchEvent(event);
54
65
  };
55
66
 
56
- const onBack = () => {
67
+ const onClickBack = () => {
68
+ onBack?.();
69
+
57
70
  const event = new CustomEvent('back', {
58
71
  bubbles: true,
59
72
  composed: true,
@@ -83,7 +96,7 @@
83
96
  <button
84
97
  class="mc-drawer__back mc-button mc-button--icon-button mc-button--ghost"
85
98
  aria-label="Back"
86
- onclick={onBack}
99
+ onclick={onClickBack}
87
100
  >
88
101
  <ArrowBack24 aria-hidden="true" />
89
102
  </button>
@@ -155,7 +168,7 @@
155
168
  visibility: hidden;
156
169
  width: 100%;
157
170
  z-index: var(--drawer-z-index, 3);
158
- border-radius: var(--radius-l, 1rem);
171
+ border-radius: var(--border-radius-l, 1rem);
159
172
  }
160
173
  @media (width >= 680px) {
161
174
  .mc-drawer__dialog {
@@ -216,7 +229,7 @@
216
229
  flex-direction: column;
217
230
  gap: 1rem;
218
231
  padding: 1rem 1.5rem;
219
- border-top: var(--border-s, 1px) solid var(--divider-color-primary, #cccccc);
232
+ border-top: var(--border-width-s, 0.0625rem) solid var(--divider-color-primary, #cccccc);
220
233
  }
221
234
  @media (width >= 680px) {
222
235
  .mc-drawer__footer {
@@ -265,7 +278,7 @@
265
278
  vertical-align: middle;
266
279
  text-align: center;
267
280
  border: 2px solid transparent;
268
- border-radius: var(--button-radius, 0.25rem);
281
+ border-radius: var(--button-border-radius-s, 0.25rem);
269
282
  transition: all ease 200ms;
270
283
  transition: box-shadow 200ms ease;
271
284
  align-items: center;
@@ -429,7 +442,7 @@
429
442
  cursor: not-allowed;
430
443
  }
431
444
  .mc-button--icon-button {
432
- border-radius: var(--radius-full, 100%);
445
+ border-radius: var(--border-radius-full, 100%);
433
446
  padding: 0;
434
447
  }
435
448
  .mc-button--loading .mc-button__loader {
@@ -31,6 +31,14 @@ interface Props {
31
31
  * Title of the content of the drawer.
32
32
  */
33
33
  contentTitle?: string;
34
+ /**
35
+ * Callback fired when the drawer open state changes.
36
+ */
37
+ onUpdateOpen?: (open: boolean) => void;
38
+ /**
39
+ * Callback fired when the back button is clicked.
40
+ */
41
+ onBack?: () => void;
34
42
  }
35
43
  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> {
36
44
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -1 +1 @@
1
- {"version":3,"file":"Drawer.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/drawer/Drawer.svelte.ts"],"names":[],"mappings":"AAOE;;;;;;;GAOG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAuEH,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;AACD,KAAK,gCAAgC,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,GACvD,CAAC,KAAK,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GACzB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACnC,GAAG,GACH;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,GAClB,EAAE,CAAC,CAAC;AAId,QAAA,MAAM,MAAM;;;;;;;;UAAqF,CAAC;AAChF,KAAK,MAAM,GAAG,YAAY,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Drawer.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/drawer/Drawer.svelte.ts"],"names":[],"mappings":"AAOE;;;;;;;GAOG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AA4EH,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;AACD,KAAK,gCAAgC,CAAC,KAAK,EAAE,KAAK,IAAI,KAAK,GACvD,CAAC,KAAK,SAAS;IAAE,OAAO,EAAE,GAAG,CAAA;CAAE,GACzB,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACnC,GAAG,GACH;IAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;CAAE,GAClB,EAAE,CAAC,CAAC;AAId,QAAA,MAAM,MAAM;;;;;;;;UAAqF,CAAC;AAChF,KAAK,MAAM,GAAG,YAAY,CAAC,OAAO,MAAM,CAAC,CAAC;AAC5C,eAAe,MAAM,CAAC"}
@@ -12,6 +12,8 @@ A drawer is a sliding panel that appears from the side of the screen, providing
12
12
  | `back` | If `true`, display the back button. | `boolean` | |
13
13
  | `title*` | Title of the drawer. | `string` | |
14
14
  | `contentTitle` | Title of the content of the drawer. | `string` | |
15
+ | `onUpdateOpen` | Callback fired when the drawer open state changes. | `(open: boolean) => void` | |
16
+ | `onBack` | Callback fired when the back button is clicked. | `() => void` | |
15
17
 
16
18
  ## Slots
17
19
 
@@ -1,7 +1,7 @@
1
- import{c as A,p as G,a as H,b as t,f as w,s as f,d as s,t as _,i as h,j as I,k as a,r,h as u,e as J,g as K}from"../../custom-element.js";import{i as Z}from"../../if.js";import{s as N}from"../../slot.js";import{s as z}from"../../attributes.js";var O=w('<span class="mc-field__requirement svelte-19i2lwv" aria-hidden="true"> </span>'),P=w('<span class="mc-field__help svelte-19i2lwv"> </span>'),Q=w("<span> </span>"),R=w('<div class="mc-field"><label class="mc-field__label svelte-19i2lwv"> <!></label> <!> <div class="mc-field__content svelte-19i2lwv"><!></div> <!></div>');const T={hash:"svelte-19i2lwv",code:`/**
1
+ import{c as J,p as K,a as N,b as t,f as x,s as d,d as r,t as h,i as u,j as O,k as a,r as v,h as w,e as P,g as Q}from"../../custom-element.js";import{i as p}from"../../if.js";import{s as R}from"../../slot.js";import{s as k}from"../../attributes.js";import{L as T}from"../loader/Loader.js";var U=x('<span class="mc-field__requirement svelte-19i2lwv" aria-hidden="true"> </span>'),W=x('<span class="mc-field__help svelte-19i2lwv"> </span>'),X=x("<span><!> </span>"),Y=x('<div class="mc-field"><label class="mc-field__label svelte-19i2lwv"> <!></label> <!> <div class="mc-field__content svelte-19i2lwv"><!></div> <!></div>');const $={hash:"svelte-19i2lwv",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
3
  */
4
4
  /* stylelint-disable string-no-newline */.mc-field__label.svelte-19i2lwv {font-size:var(--font-size-100, 0.875rem);line-height:var(--line-height-s, 1.3);font-weight:var(--font-weight-regular, 400);color:var(--field-color-label, #000000);}.mc-field__requirement.svelte-19i2lwv, .mc-field__help.svelte-19i2lwv {font-size:var(--font-size-50, 0.75rem);line-height:var(--line-height-m, 1.5);font-weight:var(--font-weight-regular, 400);vertical-align:top;color:var(--field-color-requirement, #666666);}.mc-field__help.svelte-19i2lwv {display:block;margin-top:0.125rem;}.mc-field__content.svelte-19i2lwv {margin-top:0.5rem;}.mc-field__validation-message.svelte-19i2lwv {font-size:var(--font-size-100, 0.875rem);line-height:var(--line-height-m, 1.5);display:inline-flex;gap:0.25rem;margin-top:0.25rem;}.mc-field__validation-message.is-valid.svelte-19i2lwv::before, .mc-field__validation-message.is-invalid.svelte-19i2lwv::before {content:"";height:1.25rem;width:1.25rem;}.mc-field__validation-message.is-valid.svelte-19i2lwv {color:var(--field-color-validation-valid, #117f03);}.mc-field__validation-message.is-valid.svelte-19i2lwv::before {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--field-color-validation-valid, %23117f03)' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M3.25 10c0-3.72792 3.02208-6.75 6.75-6.75 3.7279 0 6.75 3.02208 6.75 6.75 0 3.7279-3.0221 6.75-6.75 6.75-3.72792 0-6.75-3.0221-6.75-6.75ZM10 1.75c-4.55635 0-8.25 3.69365-8.25 8.25 0 4.5563 3.69365 8.25 8.25 8.25 4.5563 0 8.25-3.6937 8.25-8.25 0-4.55635-3.6937-8.25-8.25-8.25Zm4.2803 6.697c.2929-.2929.2929-.76777 0-1.06066-.2929-.2929-.7677-.2929-1.0606 0L9.16667 11.4393 7.197 9.46967c-.2929-.29289-.76777-.29289-1.06066 0-.2929.29289-.2929.76773 0 1.06063l2.5 2.5c.29289.2929.76776.2929 1.06066 0l4.5833-4.5833Z'/%3E%3C/svg%3E");}.mc-field__validation-message.is-invalid.svelte-19i2lwv {color:var(--field-color-validation-invalid, #c61112);}.mc-field__validation-message.is-invalid.svelte-19i2lwv::before {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--field-color-validation-invalid, %23c61112)' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M10 3.25c-3.72792 0-6.75 3.02208-6.75 6.75 0 3.7279 3.02208 6.75 6.75 6.75 3.7279 0 6.75-3.0221 6.75-6.75 0-3.72792-3.0221-6.75-6.75-6.75ZM1.75 10c0-4.55635 3.69365-8.25 8.25-8.25 4.5563 0 8.25 3.69365 8.25 8.25 0 4.5563-3.6937 8.25-8.25 8.25-4.55635 0-8.25-3.6937-8.25-8.25ZM10 5.91667c.4142 0 .75.33578.75.75v4.16663c0 .4142-.3358.75-.75.75-.41421 0-.75-.3358-.75-.75V6.66667c0-.41422.33579-.75.75-.75Zm0 8.25003c.4602 0 .8333-.3731.8333-.8334 0-.4602-.3731-.8333-.8333-.8333-.46024 0-.83333.3731-.83333.8333 0 .4603.37309.8334.83333.8334Z'/%3E%3C/svg%3E");}
5
5
 
6
- /* stylelint-enable string-no-newline */`};function U(C,l){G(l,!0),H(C,T);let p=t(l,"id",7),b=t(l,"label",7),d=t(l,"requirementtext",7),n=t(l,"helpid",7),m=t(l,"helptext",7),x=t(l,"messageid",7),q=t(l,"message",7),o=t(l,"isinvalid",7),g=t(l,"isvalid",7);var B={get id(){return p()},set id(e){p(e),a()},get label(){return b()},set label(e){b(e),a()},get requirementtext(){return d()},set requirementtext(e){d(e),a()},get helpid(){return n()},set helpid(e){n(e),a()},get helptext(){return m()},set helptext(e){m(e),a()},get messageid(){return x()},set messageid(e){x(e),a()},get message(){return q()},set message(e){q(e),a()},get isinvalid(){return o()},set isinvalid(e){o(e),a()},get isvalid(){return g()},set isvalid(e){g(e),a()}},y=R(),c=s(y),k=s(c),j=f(k);{var D=e=>{var i=O(),v=s(i,!0);r(i),_(()=>u(v,d())),h(e,i)};Z(j,e=>{d()&&e(D)})}r(c);var M=f(c,2);{var F=e=>{var i=P(),v=s(i,!0);r(i),_(()=>{z(i,"id",n()),u(v,m())}),h(e,i)};Z(M,e=>{n()&&m()&&e(F)})}var E=f(M,2),L=s(E);N(L,l,"default",{}),r(E);var S=f(E,2);{var V=e=>{var i=Q(),v=s(i,!0);r(i),_(()=>{z(i,"id",x()),J(i,1,K(["mc-field__validation-message",g()&&"is-valid",o()&&"is-invalid"]),"svelte-19i2lwv"),u(v,q())}),h(e,i)};Z(S,e=>{(o()||g())&&e(V)})}return r(y),_(()=>{z(c,"for",p()),u(k,`${b()??""} `)}),h(C,y),I(B)}customElements.define("m-field",A(U,{id:{},label:{},requirementtext:{},helpid:{},helptext:{},messageid:{},message:{},isinvalid:{},isvalid:{}},["default"],[],!0));
6
+ /* stylelint-enable string-no-newline */`};function ee(M,l){K(l,!0),N(M,$);let b=t(l,"id",7),q=t(l,"label",7),n=t(l,"requirementtext",7),o=t(l,"helpid",7),m=t(l,"helptext",7),y=t(l,"messageid",7),z=t(l,"message",7),g=t(l,"isinvalid",7),c=t(l,"isvalid",7),f=t(l,"isloading",7);var j={get id(){return b()},set id(e){b(e),a()},get label(){return q()},set label(e){q(e),a()},get requirementtext(){return n()},set requirementtext(e){n(e),a()},get helpid(){return o()},set helpid(e){o(e),a()},get helptext(){return m()},set helptext(e){m(e),a()},get messageid(){return y()},set messageid(e){y(e),a()},get message(){return z()},set message(e){z(e),a()},get isinvalid(){return g()},set isinvalid(e){g(e),a()},get isvalid(){return c()},set isvalid(e){c(e),a()},get isloading(){return f()},set isloading(e){f(e),a()}},E=Y(),_=r(E),L=r(_),D=d(L);{var F=e=>{var i=U(),s=r(i,!0);v(i),h(()=>w(s,n())),u(e,i)};p(D,e=>{n()&&e(F)})}v(_);var B=d(_,2);{var S=e=>{var i=W(),s=r(i,!0);v(i),h(()=>{k(i,"id",o()),w(s,m())}),u(e,i)};p(B,e=>{o()&&m()&&e(S)})}var Z=d(B,2),V=r(Z);R(V,l,"default",{}),v(Z);var A=d(Z,2);{var G=e=>{var i=X(),s=r(i);{var H=C=>{T(C,{size:"xs"})};p(s,C=>{f()&&C(H)})}var I=d(s);v(i),h(()=>{k(i,"id",y()),P(i,1,Q(["mc-field__validation-message",c()&&"is-valid",g()&&"is-invalid"]),"svelte-19i2lwv"),w(I,` ${z()??""}`)}),u(e,i)};p(A,e=>{(g()||c()||f())&&e(G)})}return v(E),h(()=>{k(_,"for",b()),w(L,`${q()??""} `)}),u(M,E),O(j)}customElements.define("m-field",J(ee,{id:{},label:{},requirementtext:{},helpid:{},helptext:{},messageid:{},message:{},isinvalid:{},isvalid:{},isloading:{}},["default"],[],!0));
7
7
  //# sourceMappingURL=Field.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Field.js","sources":["../../../src/components/field/Field.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-field',\n }}\n/>\n\n<script lang=\"ts\">\n /**\n * A field label is a text element that identifies the purpose of an input field, providing users with clear guidance on what information to enter. It is typically placed above the input field and may include indicators for required or optional fields. Field Labels improve form usability, accessibility, and data entry accuracy by ensuring users understand the expected input.\n *\n * @slot default - Use this slot to insert the form element of your choice\n */\n interface Props {\n /**\n * A unique identifier for the form field, used to associate the label with the form element.\n */\n id: string;\n /**\n * The text displayed as the label for the form field.\n */\n label: string;\n /**\n * Additional text displayed alongside the label, typically used to indicate if the form field is required or optional\n */\n requirementtext?: string;\n /**\n * Text shown below the form field to provide additional context or instructions for the user.\n */\n helptext?: string;\n /**\n * The value of the `id` attribute set on the **helpText** element. _This value is mandatory when using a helpText in order to guarantee the accessibility of the component._\n */\n helpid?: string;\n /**\n * If `true`, applies a valid state to the form field.\n */\n isvalid?: boolean;\n /**\n * If `true`, applies an invalid state to the form field.\n */\n isinvalid?: boolean;\n /**\n * The value of the `id` attribute set on the **validationMessage** element. _This value is mandatory when using a validationMessage in order to guarantee the accessibility of the component._\n */\n messageid?: string;\n /**\n * message displayed when the form field has a valid or invalid state, usually indicating validation or errors.\n */\n message?: string;\n }\n\n let {\n id,\n label,\n requirementtext,\n helpid,\n helptext,\n messageid,\n message,\n isinvalid,\n isvalid,\n }: Props = $props();\n</script>\n\n<div class=\"mc-field\">\n <label for={id} class=\"mc-field__label\">\n {label}\n {#if requirementtext}\n <span class=\"mc-field__requirement\" aria-hidden=\"true\">\n {requirementtext}\n </span>\n {/if}\n </label>\n\n {#if helpid && helptext}\n <span id={helpid} class=\"mc-field__help\">\n {helptext}\n </span>\n {/if}\n\n <div class=\"mc-field__content\">\n <slot />\n </div>\n\n {#if isinvalid || isvalid}\n <span\n id={messageid}\n class={[\n 'mc-field__validation-message',\n isvalid && 'is-valid',\n isinvalid && 'is-invalid',\n ]}\n >\n {message}\n </span>\n {/if}\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/field';\n</style>\n"],"names":["id","$.prop","$$props","label","requirementtext","helpid","helptext","messageid","message","isinvalid","isvalid","$$render","consequent","consequent_1","consequent_2"],"mappings":";;;;;0DAAA,oBAoDIA,EAAEC,EAAAC,EAAA,KAAA,CAAA,EACFC,EAAKF,EAAAC,EAAA,QAAA,CAAA,EACLE,EAAeH,EAAAC,EAAA,kBAAA,CAAA,EACfG,EAAMJ,EAAAC,EAAA,SAAA,CAAA,EACNI,EAAQL,EAAAC,EAAA,WAAA,CAAA,EACRK,EAASN,EAAAC,EAAA,YAAA,CAAA,EACTM,EAAOP,EAAAC,EAAA,UAAA,CAAA,EACPO,EAASR,EAAAC,EAAA,YAAA,CAAA,EACTQ,EAAOT,EAAAC,EAAA,UAAA,CAAA,wiBASFE,EAAe,CAAA,CAAA,kBAFfA,EAAe,GAAAO,EAAAC,CAAA,0EAQVP,GAAM,MACbC,GAAQ,oBAFRD,EAAM,GAAIC,KAAQK,EAAAE,CAAA,kHAYfN,GAAS,WAEX,+BACAG,EAAO,GAAI,WACXD,KAAa,qCAGdD,GAAO,qBATPC,EAAS,GAAIC,MAAOC,EAAAG,CAAA,iCAnBbd,GAAE,SACXG,EAAK,GAAA,EAAA,GAAA,eAJV"}
1
+ {"version":3,"file":"Field.js","sources":["../../../src/components/field/Field.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-field',\n }}\n/>\n\n<script lang=\"ts\">\n import Loader from '../loader/Loader.svelte';\n\n /**\n * A field label is a text element that identifies the purpose of an input field, providing users with clear guidance on what information to enter. It is typically placed above the input field and may include indicators for required or optional fields. Field Labels improve form usability, accessibility, and data entry accuracy by ensuring users understand the expected input.\n *\n * @slot default - Use this slot to insert the form element of your choice\n */\n interface Props {\n /**\n * A unique identifier for the form field, used to associate the label with the form element.\n */\n id: string;\n /**\n * The text displayed as the label for the form field.\n */\n label: string;\n /**\n * Additional text displayed alongside the label, typically used to indicate if the form field is required or optional\n */\n requirementtext?: string;\n /**\n * Text shown below the form field to provide additional context or instructions for the user.\n */\n helptext?: string;\n /**\n * The value of the `id` attribute set on the **helpText** element. _This value is mandatory when using a helpText in order to guarantee the accessibility of the component._\n */\n helpid?: string;\n /**\n * If `true`, applies a valid state to the form field.\n */\n isvalid?: boolean;\n /**\n * If `true`, applies an invalid state to the form field.\n */\n isinvalid?: boolean;\n /**\n * If `true`, applies a loading state to the form field.\n */\n isloading?: boolean;\n /**\n * The value of the `id` attribute set on the **validationMessage** element. _This value is mandatory when using a validationMessage in order to guarantee the accessibility of the component._\n */\n messageid?: string;\n /**\n * message displayed when the form field has a valid or invalid state, usually indicating validation or errors.\n */\n message?: string;\n }\n\n let {\n id,\n label,\n requirementtext,\n helpid,\n helptext,\n messageid,\n message,\n isinvalid,\n isvalid,\n isloading,\n }: Props = $props();\n</script>\n\n<div class=\"mc-field\">\n <label for={id} class=\"mc-field__label\">\n {label}\n {#if requirementtext}\n <span class=\"mc-field__requirement\" aria-hidden=\"true\">\n {requirementtext}\n </span>\n {/if}\n </label>\n\n {#if helpid && helptext}\n <span id={helpid} class=\"mc-field__help\">\n {helptext}\n </span>\n {/if}\n\n <div class=\"mc-field__content\">\n <slot />\n </div>\n\n {#if isinvalid || isvalid || isloading}\n <span\n id={messageid}\n class={['mc-field__validation-message', isvalid && 'is-valid', isinvalid && 'is-invalid']}\n >\n {#if isloading}\n <Loader size=\"xs\" />\n {/if}\n {message}\n </span>\n {/if}\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/field';\n</style>\n"],"names":["id","$.prop","$$props","label","requirementtext","helpid","helptext","messageid","message","isinvalid","isvalid","isloading","$$render","consequent","consequent_1","consequent_2","consequent_3"],"mappings":";;;;;2DAAA,oBA0DIA,EAAEC,EAAAC,EAAA,KAAA,CAAA,EACFC,EAAKF,EAAAC,EAAA,QAAA,CAAA,EACLE,EAAeH,EAAAC,EAAA,kBAAA,CAAA,EACfG,EAAMJ,EAAAC,EAAA,SAAA,CAAA,EACNI,EAAQL,EAAAC,EAAA,WAAA,CAAA,EACRK,EAASN,EAAAC,EAAA,YAAA,CAAA,EACTM,EAAOP,EAAAC,EAAA,UAAA,CAAA,EACPO,EAASR,EAAAC,EAAA,YAAA,CAAA,EACTQ,EAAOT,EAAAC,EAAA,UAAA,CAAA,EACPS,EAASV,EAAAC,EAAA,YAAA,CAAA,+lBASJE,EAAe,CAAA,CAAA,kBAFfA,EAAe,GAAAQ,EAAAC,CAAA,0EAQVR,GAAM,MACbC,GAAQ,oBAFRD,EAAM,GAAIC,KAAQM,EAAAE,CAAA,+HAedH,EAAS,GAAAC,EAAAG,CAAA,oCAHVR,GAAS,WACL,+BAAgCG,EAAO,GAAI,WAAYD,KAAa,yCAK3ED,EAAO,GAAA,EAAA,EAAA,qBARPC,EAAS,GAAIC,EAAO,GAAIC,EAAS,IAAAC,EAAAI,CAAA,iCAnB1BhB,GAAE,SACXG,EAAK,GAAA,EAAA,GAAA,eAJV"}