@mozaic-ds/web-components 1.2.0 → 1.4.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 (564) hide show
  1. package/dist/Condition20.js +2 -0
  2. package/dist/Condition20.js.map +1 -0
  3. package/dist/accordion-list.state.svelte.js +2 -0
  4. package/dist/accordion-list.state.svelte.js.map +1 -0
  5. package/dist/attributes.js +1 -1
  6. package/dist/attributes.js.map +1 -1
  7. package/dist/bundle.d.ts +11 -0
  8. package/dist/bundle.d.ts.map +1 -1
  9. package/dist/bundle.js +11 -0
  10. package/dist/components/accordionlist/AccordionList.js +50 -0
  11. package/dist/components/accordionlist/AccordionList.js.map +1 -0
  12. package/dist/components/accordionlist/AccordionList.spec.js +40 -0
  13. package/dist/components/accordionlist/AccordionList.stories.d.ts +15 -0
  14. package/dist/components/accordionlist/AccordionList.stories.d.ts.map +1 -0
  15. package/dist/components/accordionlist/AccordionList.stories.js +141 -0
  16. package/dist/components/accordionlist/AccordionList.svelte +441 -0
  17. package/dist/components/accordionlist/AccordionList.svelte.d.ts +47 -0
  18. package/dist/components/accordionlist/AccordionList.svelte.d.ts.map +1 -0
  19. package/dist/components/accordionlist/README.md +18 -0
  20. package/dist/components/accordionlist/accordion-list.state.svelte.d.ts +5 -0
  21. package/dist/components/accordionlist/accordion-list.state.svelte.d.ts.map +1 -0
  22. package/dist/components/accordionlist/accordion-list.state.svelte.js +6 -0
  23. package/dist/components/accordionlistItem/AccordionListItem.js +50 -0
  24. package/dist/components/accordionlistItem/AccordionListItem.js.map +1 -0
  25. package/dist/components/accordionlistItem/AccordionListItem.spec.js +75 -0
  26. package/dist/components/accordionlistItem/AccordionListItem.svelte +463 -0
  27. package/dist/components/accordionlistItem/AccordionListItem.svelte.d.ts +50 -0
  28. package/dist/components/accordionlistItem/AccordionListItem.svelte.d.ts.map +1 -0
  29. package/dist/components/accordionlistItem/README.md +29 -0
  30. package/dist/components/actionbottombar/ActionBottomBar.js +12 -0
  31. package/dist/components/actionbottombar/ActionBottomBar.js.map +1 -0
  32. package/dist/components/actionbottombar/ActionBottomBar.spec.js +20 -0
  33. package/dist/components/actionbottombar/ActionBottomBar.stories.d.ts +19 -0
  34. package/dist/components/actionbottombar/ActionBottomBar.stories.d.ts.map +1 -0
  35. package/dist/components/actionbottombar/ActionBottomBar.stories.js +131 -0
  36. package/dist/components/actionbottombar/ActionBottomBar.svelte +113 -0
  37. package/dist/components/actionbottombar/ActionBottomBar.svelte.d.ts +43 -0
  38. package/dist/components/actionbottombar/ActionBottomBar.svelte.d.ts.map +1 -0
  39. package/dist/components/actionbottombar/README.md +19 -0
  40. package/dist/components/actionlistbox/ActionListbox.js +10 -0
  41. package/dist/components/actionlistbox/ActionListbox.js.map +1 -0
  42. package/dist/components/actionlistbox/ActionListbox.spec.js +20 -0
  43. package/dist/components/actionlistbox/ActionListbox.stories.d.ts +12 -0
  44. package/dist/components/actionlistbox/ActionListbox.stories.d.ts.map +1 -0
  45. package/dist/components/actionlistbox/ActionListbox.stories.js +49 -0
  46. package/dist/components/actionlistbox/ActionListbox.svelte +213 -0
  47. package/dist/components/actionlistbox/ActionListbox.svelte.d.ts +37 -0
  48. package/dist/components/actionlistbox/ActionListbox.svelte.d.ts.map +1 -0
  49. package/dist/components/actionlistbox/README.md +23 -0
  50. package/dist/components/actionlistboxitem/ActionListboxItem.js +4 -0
  51. package/dist/components/actionlistboxitem/ActionListboxItem.js.map +1 -0
  52. package/dist/components/actionlistboxitem/ActionListboxItem.spec.js +37 -0
  53. package/dist/components/actionlistboxitem/ActionListboxItem.svelte +136 -0
  54. package/dist/components/actionlistboxitem/ActionListboxItem.svelte.d.ts +43 -0
  55. package/dist/components/actionlistboxitem/ActionListboxItem.svelte.d.ts.map +1 -0
  56. package/dist/components/actionlistboxitem/README.md +20 -0
  57. package/dist/components/avatar/Avatar.js +2 -2
  58. package/dist/components/avatar/Avatar.js.map +1 -1
  59. package/dist/components/avatar/Avatar.stories.d.ts +2 -1
  60. package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
  61. package/dist/components/avatar/Avatar.stories.js +3 -2
  62. package/dist/components/avatar/Avatar.svelte +14 -4
  63. package/dist/components/avatar/Avatar.svelte.d.ts +7 -1
  64. package/dist/components/avatar/Avatar.svelte.d.ts.map +1 -1
  65. package/dist/components/avatar/README.md +2 -1
  66. package/dist/components/breadcrumb/Breadcrumb.js +2 -2
  67. package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
  68. package/dist/components/breadcrumb/Breadcrumb.stories.d.ts +1 -0
  69. package/dist/components/breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
  70. package/dist/components/breadcrumb/Breadcrumb.stories.js +1 -0
  71. package/dist/components/breadcrumb/Breadcrumb.svelte +3 -2
  72. package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts +1 -0
  73. package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
  74. package/dist/components/builtinmenu/BuiltInMenu.js +4 -0
  75. package/dist/components/builtinmenu/BuiltInMenu.js.map +1 -0
  76. package/dist/components/builtinmenu/BuiltInMenu.stories.d.ts +11 -0
  77. package/dist/components/builtinmenu/BuiltInMenu.stories.d.ts.map +1 -0
  78. package/dist/components/builtinmenu/BuiltInMenu.stories.js +61 -0
  79. package/dist/components/builtinmenu/BuiltInMenu.svelte +142 -0
  80. package/dist/components/builtinmenu/BuiltInMenu.svelte.d.ts +41 -0
  81. package/dist/components/builtinmenu/BuiltInMenu.svelte.d.ts.map +1 -0
  82. package/dist/components/builtinmenu/BuiltinMenu.spec.js +19 -0
  83. package/dist/components/builtinmenu/README.md +18 -0
  84. package/dist/components/builtinmenuitem/BuiltInMenuItem.js +8 -0
  85. package/dist/components/builtinmenuitem/BuiltInMenuItem.js.map +1 -0
  86. package/dist/components/builtinmenuitem/BuiltInMenuItem.spec.js +36 -0
  87. package/dist/components/builtinmenuitem/BuiltInMenuItem.svelte +165 -0
  88. package/dist/components/builtinmenuitem/BuiltInMenuItem.svelte.d.ts +50 -0
  89. package/dist/components/builtinmenuitem/BuiltInMenuItem.svelte.d.ts.map +1 -0
  90. package/dist/components/builtinmenuitem/README.md +20 -0
  91. package/dist/components/button/Button.js +2 -2
  92. package/dist/components/button/Button.js.map +1 -1
  93. package/dist/components/button/Button.stories.d.ts +14 -1
  94. package/dist/components/button/Button.stories.d.ts.map +1 -1
  95. package/dist/components/button/Button.stories.js +146 -6
  96. package/dist/components/button/Button.svelte +43 -16
  97. package/dist/components/button/Button.svelte.d.ts +9 -0
  98. package/dist/components/button/Button.svelte.d.ts.map +1 -1
  99. package/dist/components/button/README.md +2 -2
  100. package/dist/components/callout/Callout.js +2 -2
  101. package/dist/components/callout/Callout.js.map +1 -1
  102. package/dist/components/callout/Callout.spec.js +4 -1
  103. package/dist/components/callout/Callout.stories.d.ts +5 -2
  104. package/dist/components/callout/Callout.stories.d.ts.map +1 -1
  105. package/dist/components/callout/Callout.stories.js +5 -2
  106. package/dist/components/callout/Callout.svelte +40 -5
  107. package/dist/components/callout/Callout.svelte.d.ts +14 -0
  108. package/dist/components/callout/Callout.svelte.d.ts.map +1 -1
  109. package/dist/components/callout/README.md +3 -0
  110. package/dist/components/carousel/Carousel.js +4 -0
  111. package/dist/components/carousel/Carousel.js.map +1 -0
  112. package/dist/components/carousel/Carousel.spec.js +49 -0
  113. package/dist/components/carousel/Carousel.stories.d.ts +9 -0
  114. package/dist/components/carousel/Carousel.stories.d.ts.map +1 -0
  115. package/dist/components/carousel/Carousel.stories.js +73 -0
  116. package/dist/components/carousel/Carousel.svelte +211 -0
  117. package/dist/components/carousel/Carousel.svelte.d.ts +56 -0
  118. package/dist/components/carousel/Carousel.svelte.d.ts.map +1 -0
  119. package/dist/components/carousel/README.md +20 -0
  120. package/dist/components/checkbox/Checkbox.js +3 -3
  121. package/dist/components/checkbox/Checkbox.js.map +1 -1
  122. package/dist/components/checkbox/Checkbox.stories.d.ts +1 -0
  123. package/dist/components/checkbox/Checkbox.stories.d.ts.map +1 -1
  124. package/dist/components/checkbox/Checkbox.stories.js +6 -5
  125. package/dist/components/checkbox/Checkbox.svelte +7 -0
  126. package/dist/components/checkbox/Checkbox.svelte.d.ts +1 -0
  127. package/dist/components/checkbox/Checkbox.svelte.d.ts.map +1 -1
  128. package/dist/components/checkboxgroup/CheckboxGroup.js +4 -4
  129. package/dist/components/checkboxgroup/CheckboxGroup.js.map +1 -1
  130. package/dist/components/checkboxgroup/CheckboxGroup.stories.d.ts +1 -0
  131. package/dist/components/checkboxgroup/CheckboxGroup.stories.d.ts.map +1 -1
  132. package/dist/components/checkboxgroup/CheckboxGroup.stories.js +3 -2
  133. package/dist/components/checkboxgroup/CheckboxGroup.svelte +5 -2
  134. package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts +1 -0
  135. package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts.map +1 -1
  136. package/dist/components/checklistmenu/CheckListMenu.js +4 -0
  137. package/dist/components/checklistmenu/CheckListMenu.js.map +1 -0
  138. package/dist/components/checklistmenu/CheckListMenu.spec.js +33 -0
  139. package/dist/components/checklistmenu/CheckListMenu.stories.d.ts +8 -0
  140. package/dist/components/checklistmenu/CheckListMenu.stories.d.ts.map +1 -0
  141. package/dist/components/checklistmenu/CheckListMenu.stories.js +32 -0
  142. package/dist/components/checklistmenu/CheckListMenu.svelte +79 -0
  143. package/dist/components/checklistmenu/CheckListMenu.svelte.d.ts +27 -0
  144. package/dist/components/checklistmenu/CheckListMenu.svelte.d.ts.map +1 -0
  145. package/dist/components/checklistmenu/README.md +12 -0
  146. package/dist/components/circularprogressbar/CircularProgressbar.js +2 -2
  147. package/dist/components/circularprogressbar/CircularProgressbar.js.map +1 -1
  148. package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts +1 -0
  149. package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts.map +1 -1
  150. package/dist/components/circularprogressbar/CircularProgressbar.stories.js +1 -0
  151. package/dist/components/container/Container.js +2 -2
  152. package/dist/components/container/Container.js.map +1 -1
  153. package/dist/components/container/Container.stories.d.ts +1 -0
  154. package/dist/components/container/Container.stories.d.ts.map +1 -1
  155. package/dist/components/container/Container.stories.js +2 -3
  156. package/dist/components/container/Container.svelte +19 -3
  157. package/dist/components/container/Container.svelte.d.ts +5 -0
  158. package/dist/components/container/Container.svelte.d.ts.map +1 -1
  159. package/dist/components/container/README.md +1 -0
  160. package/dist/components/datepicker/Datepicker.js +3 -3
  161. package/dist/components/datepicker/Datepicker.js.map +1 -1
  162. package/dist/components/datepicker/Datepicker.stories.d.ts +1 -0
  163. package/dist/components/datepicker/Datepicker.stories.d.ts.map +1 -1
  164. package/dist/components/datepicker/Datepicker.stories.js +6 -4
  165. package/dist/components/datepicker/Datepicker.svelte +17 -3
  166. package/dist/components/datepicker/Datepicker.svelte.d.ts +1 -0
  167. package/dist/components/datepicker/Datepicker.svelte.d.ts.map +1 -1
  168. package/dist/components/divider/Divider.js +2 -2
  169. package/dist/components/divider/Divider.js.map +1 -1
  170. package/dist/components/divider/Divider.stories.d.ts +1 -0
  171. package/dist/components/divider/Divider.stories.d.ts.map +1 -1
  172. package/dist/components/divider/Divider.stories.js +1 -0
  173. package/dist/components/divider/Divider.svelte +19 -3
  174. package/dist/components/divider/Divider.svelte.d.ts +6 -0
  175. package/dist/components/divider/Divider.svelte.d.ts.map +1 -1
  176. package/dist/components/divider/README.md +1 -0
  177. package/dist/components/drawer/Drawer.js +2 -2
  178. package/dist/components/drawer/Drawer.js.map +1 -1
  179. package/dist/components/drawer/Drawer.stories.d.ts +2 -0
  180. package/dist/components/drawer/Drawer.stories.d.ts.map +1 -1
  181. package/dist/components/drawer/Drawer.stories.js +5 -3
  182. package/dist/components/drawer/Drawer.svelte +47 -9
  183. package/dist/components/drawer/Drawer.svelte.d.ts +10 -0
  184. package/dist/components/drawer/Drawer.svelte.d.ts.map +1 -1
  185. package/dist/components/drawer/README.md +2 -0
  186. package/dist/components/field/Field.js +2 -2
  187. package/dist/components/field/Field.js.map +1 -1
  188. package/dist/components/field/Field.stories.d.ts +2 -0
  189. package/dist/components/field/Field.stories.d.ts.map +1 -1
  190. package/dist/components/field/Field.stories.js +5 -3
  191. package/dist/components/field/Field.svelte +16 -1
  192. package/dist/components/field/Field.svelte.d.ts +5 -0
  193. package/dist/components/field/Field.svelte.d.ts.map +1 -1
  194. package/dist/components/field/README.md +1 -0
  195. package/dist/components/fileuploader/FileUploader.js +4 -0
  196. package/dist/components/fileuploader/FileUploader.js.map +1 -0
  197. package/dist/components/fileuploader/FileUploader.spec.js +134 -0
  198. package/dist/components/fileuploader/FileUploader.stories.d.ts +17 -0
  199. package/dist/components/fileuploader/FileUploader.stories.d.ts.map +1 -0
  200. package/dist/components/fileuploader/FileUploader.stories.js +172 -0
  201. package/dist/components/fileuploader/FileUploader.svelte +816 -0
  202. package/dist/components/fileuploader/FileUploader.svelte.d.ts +125 -0
  203. package/dist/components/fileuploader/FileUploader.svelte.d.ts.map +1 -0
  204. package/dist/components/fileuploader/README.md +42 -0
  205. package/dist/components/fileuploaderitem/FileUploaderItem.js +5 -0
  206. package/dist/components/fileuploaderitem/FileUploaderItem.js.map +1 -0
  207. package/dist/components/fileuploaderitem/FileUploaderItem.spec.js +41 -0
  208. package/dist/components/fileuploaderitem/FileUploaderItem.svelte +298 -0
  209. package/dist/components/fileuploaderitem/FileUploaderItem.svelte.d.ts +62 -0
  210. package/dist/components/fileuploaderitem/FileUploaderItem.svelte.d.ts.map +1 -0
  211. package/dist/components/fileuploaderitem/README.md +24 -0
  212. package/dist/components/flag/Flag.js +2 -2
  213. package/dist/components/flag/Flag.js.map +1 -1
  214. package/dist/components/flag/Flag.stories.d.ts +1 -0
  215. package/dist/components/flag/Flag.stories.d.ts.map +1 -1
  216. package/dist/components/flag/Flag.stories.js +1 -0
  217. package/dist/components/flag/Flag.svelte +3 -2
  218. package/dist/components/flag/Flag.svelte.d.ts +1 -0
  219. package/dist/components/flag/Flag.svelte.d.ts.map +1 -1
  220. package/dist/components/iconbutton/IconButton.js +2 -2
  221. package/dist/components/iconbutton/IconButton.js.map +1 -1
  222. package/dist/components/iconbutton/IconButton.stories.d.ts +14 -6
  223. package/dist/components/iconbutton/IconButton.stories.d.ts.map +1 -1
  224. package/dist/components/iconbutton/IconButton.stories.js +114 -9
  225. package/dist/components/iconbutton/IconButton.svelte +34 -2
  226. package/dist/components/iconbutton/IconButton.svelte.d.ts +9 -0
  227. package/dist/components/iconbutton/IconButton.svelte.d.ts.map +1 -1
  228. package/dist/components/iconbutton/README.md +2 -0
  229. package/dist/components/kpiitem/KpiItem.js +2 -2
  230. package/dist/components/kpiitem/KpiItem.js.map +1 -1
  231. package/dist/components/kpiitem/KpiItem.stories.d.ts +1 -0
  232. package/dist/components/kpiitem/KpiItem.stories.d.ts.map +1 -1
  233. package/dist/components/kpiitem/KpiItem.stories.js +2 -0
  234. package/dist/components/kpiitem/KpiItem.svelte +4 -5
  235. package/dist/components/kpiitem/KpiItem.svelte.d.ts +1 -0
  236. package/dist/components/kpiitem/KpiItem.svelte.d.ts.map +1 -1
  237. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js +2 -2
  238. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js.map +1 -1
  239. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts +1 -0
  240. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts.map +1 -1
  241. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.js +1 -0
  242. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte +3 -1
  243. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts +1 -0
  244. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts.map +1 -1
  245. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js +2 -2
  246. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js.map +1 -1
  247. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts +1 -0
  248. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts.map +1 -1
  249. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.js +1 -0
  250. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte +3 -1
  251. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts +1 -0
  252. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts.map +1 -1
  253. package/dist/components/link/Link.js +2 -2
  254. package/dist/components/link/Link.js.map +1 -1
  255. package/dist/components/link/Link.stories.d.ts +3 -0
  256. package/dist/components/link/Link.stories.d.ts.map +1 -1
  257. package/dist/components/link/Link.stories.js +6 -3
  258. package/dist/components/link/Link.svelte +40 -8
  259. package/dist/components/link/Link.svelte.d.ts +10 -0
  260. package/dist/components/link/Link.svelte.d.ts.map +1 -1
  261. package/dist/components/link/README.md +2 -1
  262. package/dist/components/loader/Loader.js +2 -2
  263. package/dist/components/loader/Loader.js.map +1 -1
  264. package/dist/components/loader/Loader.stories.d.ts +1 -0
  265. package/dist/components/loader/Loader.stories.d.ts.map +1 -1
  266. package/dist/components/loader/Loader.stories.js +1 -0
  267. package/dist/components/loader/Loader.svelte +3 -1
  268. package/dist/components/loader/Loader.svelte.d.ts +1 -0
  269. package/dist/components/loader/Loader.svelte.d.ts.map +1 -1
  270. package/dist/components/loadingoverlay/LoadingOverlay.js +2 -2
  271. package/dist/components/loadingoverlay/LoadingOverlay.js.map +1 -1
  272. package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts +1 -0
  273. package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts.map +1 -1
  274. package/dist/components/loadingoverlay/LoadingOverlay.stories.js +2 -1
  275. package/dist/components/loadingoverlay/LoadingOverlay.svelte +11 -3
  276. package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts +1 -0
  277. package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts.map +1 -1
  278. package/dist/components/modal/Modal.js +2 -2
  279. package/dist/components/modal/Modal.js.map +1 -1
  280. package/dist/components/modal/Modal.stories.d.ts +5 -2
  281. package/dist/components/modal/Modal.stories.d.ts.map +1 -1
  282. package/dist/components/modal/Modal.stories.js +7 -4
  283. package/dist/components/modal/Modal.svelte +63 -8
  284. package/dist/components/modal/Modal.svelte.d.ts +18 -0
  285. package/dist/components/modal/Modal.svelte.d.ts.map +1 -1
  286. package/dist/components/modal/README.md +4 -0
  287. package/dist/components/numberbadge/NumberBadge.js +2 -2
  288. package/dist/components/numberbadge/NumberBadge.js.map +1 -1
  289. package/dist/components/numberbadge/NumberBadge.stories.d.ts +1 -0
  290. package/dist/components/numberbadge/NumberBadge.stories.d.ts.map +1 -1
  291. package/dist/components/numberbadge/NumberBadge.stories.js +1 -0
  292. package/dist/components/numberbadge/NumberBadge.svelte +6 -2
  293. package/dist/components/numberbadge/NumberBadge.svelte.d.ts +1 -0
  294. package/dist/components/numberbadge/NumberBadge.svelte.d.ts.map +1 -1
  295. package/dist/components/overlay/Overlay.js +2 -2
  296. package/dist/components/overlay/Overlay.js.map +1 -1
  297. package/dist/components/overlay/Overlay.stories.d.ts +1 -0
  298. package/dist/components/overlay/Overlay.stories.d.ts.map +1 -1
  299. package/dist/components/overlay/Overlay.stories.js +2 -1
  300. package/dist/components/overlay/Overlay.svelte +19 -3
  301. package/dist/components/overlay/Overlay.svelte.d.ts +5 -0
  302. package/dist/components/overlay/Overlay.svelte.d.ts.map +1 -1
  303. package/dist/components/overlay/README.md +1 -0
  304. package/dist/components/pagination/Pagination.js +8 -8
  305. package/dist/components/pagination/Pagination.js.map +1 -1
  306. package/dist/components/pagination/Pagination.stories.d.ts +1 -0
  307. package/dist/components/pagination/Pagination.stories.d.ts.map +1 -1
  308. package/dist/components/pagination/Pagination.stories.js +2 -1
  309. package/dist/components/pagination/Pagination.svelte +16 -6
  310. package/dist/components/pagination/Pagination.svelte.d.ts.map +1 -1
  311. package/dist/components/passwordinput/PasswordInput.js +4 -3
  312. package/dist/components/passwordinput/PasswordInput.js.map +1 -1
  313. package/dist/components/passwordinput/PasswordInput.stories.d.ts +1 -0
  314. package/dist/components/passwordinput/PasswordInput.stories.d.ts.map +1 -1
  315. package/dist/components/passwordinput/PasswordInput.stories.js +5 -4
  316. package/dist/components/passwordinput/PasswordInput.svelte +9 -0
  317. package/dist/components/passwordinput/PasswordInput.svelte.d.ts +1 -0
  318. package/dist/components/passwordinput/PasswordInput.svelte.d.ts.map +1 -1
  319. package/dist/components/phonenumber/PhoneNumber.js +22 -0
  320. package/dist/components/phonenumber/PhoneNumber.js.map +1 -0
  321. package/dist/components/phonenumber/PhoneNumber.spec.js +103 -0
  322. package/dist/components/phonenumber/PhoneNumber.stories.d.ts +14 -0
  323. package/dist/components/phonenumber/PhoneNumber.stories.d.ts.map +1 -0
  324. package/dist/components/phonenumber/PhoneNumber.stories.js +122 -0
  325. package/dist/components/phonenumber/PhoneNumber.svelte +905 -0
  326. package/dist/components/phonenumber/PhoneNumber.svelte.d.ts +61 -0
  327. package/dist/components/phonenumber/PhoneNumber.svelte.d.ts.map +1 -0
  328. package/dist/components/phonenumber/README.md +27 -0
  329. package/dist/components/pincode/Pincode.js +2 -2
  330. package/dist/components/pincode/Pincode.js.map +1 -1
  331. package/dist/components/pincode/Pincode.stories.d.ts +1 -0
  332. package/dist/components/pincode/Pincode.stories.d.ts.map +1 -1
  333. package/dist/components/pincode/Pincode.stories.js +4 -3
  334. package/dist/components/pincode/Pincode.svelte +12 -2
  335. package/dist/components/pincode/Pincode.svelte.d.ts.map +1 -1
  336. package/dist/components/quantityselector/QuantitySelector.js +2 -2
  337. package/dist/components/quantityselector/QuantitySelector.js.map +1 -1
  338. package/dist/components/quantityselector/QuantitySelector.stories.d.ts +1 -0
  339. package/dist/components/quantityselector/QuantitySelector.stories.d.ts.map +1 -1
  340. package/dist/components/quantityselector/QuantitySelector.stories.js +4 -3
  341. package/dist/components/quantityselector/QuantitySelector.svelte +11 -2
  342. package/dist/components/quantityselector/QuantitySelector.svelte.d.ts +1 -0
  343. package/dist/components/quantityselector/QuantitySelector.svelte.d.ts.map +1 -1
  344. package/dist/components/radio/Radio.js +2 -2
  345. package/dist/components/radio/Radio.js.map +1 -1
  346. package/dist/components/radio/Radio.stories.d.ts +1 -0
  347. package/dist/components/radio/Radio.stories.d.ts.map +1 -1
  348. package/dist/components/radio/Radio.stories.js +4 -3
  349. package/dist/components/radio/Radio.svelte +13 -1
  350. package/dist/components/radio/Radio.svelte.d.ts +1 -0
  351. package/dist/components/radio/Radio.svelte.d.ts.map +1 -1
  352. package/dist/components/radiogroup/RadioGroup.js +2 -2
  353. package/dist/components/radiogroup/RadioGroup.js.map +1 -1
  354. package/dist/components/radiogroup/RadioGroup.stories.d.ts +1 -0
  355. package/dist/components/radiogroup/RadioGroup.stories.d.ts.map +1 -1
  356. package/dist/components/radiogroup/RadioGroup.stories.js +3 -2
  357. package/dist/components/radiogroup/RadioGroup.svelte +2 -0
  358. package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -1
  359. package/dist/components/segmentedcontrol/SegmentedControl.js +2 -2
  360. package/dist/components/segmentedcontrol/SegmentedControl.js.map +1 -1
  361. package/dist/components/segmentedcontrol/SegmentedControl.stories.d.ts +1 -0
  362. package/dist/components/segmentedcontrol/SegmentedControl.stories.d.ts.map +1 -1
  363. package/dist/components/segmentedcontrol/SegmentedControl.stories.js +3 -1
  364. package/dist/components/segmentedcontrol/SegmentedControl.svelte +8 -1
  365. package/dist/components/segmentedcontrol/SegmentedControl.svelte.d.ts.map +1 -1
  366. package/dist/components/select/Select.js +2 -2
  367. package/dist/components/select/Select.js.map +1 -1
  368. package/dist/components/select/Select.stories.d.ts +1 -0
  369. package/dist/components/select/Select.stories.d.ts.map +1 -1
  370. package/dist/components/select/Select.stories.js +4 -3
  371. package/dist/components/select/Select.svelte +6 -0
  372. package/dist/components/select/Select.svelte.d.ts +1 -0
  373. package/dist/components/select/Select.svelte.d.ts.map +1 -1
  374. package/dist/components/starrating/README.md +22 -0
  375. package/dist/components/starrating/StarRating.js +4 -0
  376. package/dist/components/starrating/StarRating.js.map +1 -0
  377. package/dist/components/starrating/StarRating.spec.js +108 -0
  378. package/dist/components/starrating/StarRating.stories.d.ts +14 -0
  379. package/dist/components/starrating/StarRating.stories.d.ts.map +1 -0
  380. package/dist/components/starrating/StarRating.stories.js +83 -0
  381. package/dist/components/starrating/StarRating.svelte +230 -0
  382. package/dist/components/starrating/StarRating.svelte.d.ts +47 -0
  383. package/dist/components/starrating/StarRating.svelte.d.ts.map +1 -0
  384. package/dist/components/statusbadge/StatusBadge.js +2 -2
  385. package/dist/components/statusbadge/StatusBadge.js.map +1 -1
  386. package/dist/components/statusbadge/StatusBadge.stories.d.ts +1 -0
  387. package/dist/components/statusbadge/StatusBadge.stories.d.ts.map +1 -1
  388. package/dist/components/statusbadge/StatusBadge.stories.js +1 -0
  389. package/dist/components/statusbadge/StatusBadge.svelte +3 -2
  390. package/dist/components/statusbadge/StatusBadge.svelte.d.ts +1 -0
  391. package/dist/components/statusbadge/StatusBadge.svelte.d.ts.map +1 -1
  392. package/dist/components/statusdot/StatusDot.js +2 -2
  393. package/dist/components/statusdot/StatusDot.js.map +1 -1
  394. package/dist/components/statusdot/StatusDot.stories.d.ts +1 -0
  395. package/dist/components/statusdot/StatusDot.stories.d.ts.map +1 -1
  396. package/dist/components/statusdot/StatusDot.stories.js +1 -0
  397. package/dist/components/statusdot/StatusDot.svelte +6 -2
  398. package/dist/components/statusdot/StatusDot.svelte.d.ts +1 -0
  399. package/dist/components/statusdot/StatusDot.svelte.d.ts.map +1 -1
  400. package/dist/components/statusmessage/StatusMessage.js +2 -2
  401. package/dist/components/statusmessage/StatusMessage.js.map +1 -1
  402. package/dist/components/statusmessage/StatusMessage.stories.d.ts +1 -0
  403. package/dist/components/statusmessage/StatusMessage.stories.d.ts.map +1 -1
  404. package/dist/components/statusmessage/StatusMessage.stories.js +1 -0
  405. package/dist/components/statusmessage/StatusMessage.svelte +12 -9
  406. package/dist/components/statusmessage/StatusMessage.svelte.d.ts +1 -0
  407. package/dist/components/statusmessage/StatusMessage.svelte.d.ts.map +1 -1
  408. package/dist/components/statusnotification/README.md +1 -0
  409. package/dist/components/statusnotification/StatusNotification.js +2 -2
  410. package/dist/components/statusnotification/StatusNotification.js.map +1 -1
  411. package/dist/components/statusnotification/StatusNotification.stories.d.ts +4 -0
  412. package/dist/components/statusnotification/StatusNotification.stories.d.ts.map +1 -1
  413. package/dist/components/statusnotification/StatusNotification.stories.js +5 -1
  414. package/dist/components/statusnotification/StatusNotification.svelte +35 -15
  415. package/dist/components/statusnotification/StatusNotification.svelte.d.ts +6 -0
  416. package/dist/components/statusnotification/StatusNotification.svelte.d.ts.map +1 -1
  417. package/dist/components/stepperbottombar/README.md +24 -0
  418. package/dist/components/stepperbottombar/StepperBottomBar.js +12 -0
  419. package/dist/components/stepperbottombar/StepperBottomBar.js.map +1 -0
  420. package/dist/components/stepperbottombar/StepperBottomBar.spec.js +106 -0
  421. package/dist/components/stepperbottombar/StepperBottomBar.stories.d.ts +9 -0
  422. package/dist/components/stepperbottombar/StepperBottomBar.stories.d.ts.map +1 -0
  423. package/dist/components/stepperbottombar/StepperBottomBar.stories.js +74 -0
  424. package/dist/components/stepperbottombar/StepperBottomBar.svelte +532 -0
  425. package/dist/components/stepperbottombar/StepperBottomBar.svelte.d.ts +41 -0
  426. package/dist/components/stepperbottombar/StepperBottomBar.svelte.d.ts.map +1 -0
  427. package/dist/components/steppercompact/StepperCompact.js +2 -2
  428. package/dist/components/steppercompact/StepperCompact.js.map +1 -1
  429. package/dist/components/steppercompact/StepperCompact.stories.d.ts +1 -0
  430. package/dist/components/steppercompact/StepperCompact.stories.d.ts.map +1 -1
  431. package/dist/components/steppercompact/StepperCompact.stories.js +1 -0
  432. package/dist/components/stepperinline/README.md +11 -0
  433. package/dist/components/stepperinline/StepperInline.js +16 -0
  434. package/dist/components/stepperinline/StepperInline.js.map +1 -0
  435. package/dist/components/stepperinline/StepperInline.spec.js +83 -0
  436. package/dist/components/stepperinline/StepperInline.stories.d.ts +7 -0
  437. package/dist/components/stepperinline/StepperInline.stories.d.ts.map +1 -0
  438. package/dist/components/stepperinline/StepperInline.stories.js +23 -0
  439. package/dist/components/stepperinline/StepperInline.svelte +176 -0
  440. package/dist/components/stepperinline/StepperInline.svelte.d.ts +27 -0
  441. package/dist/components/stepperinline/StepperInline.svelte.d.ts.map +1 -0
  442. package/dist/components/tab/README.md +3 -1
  443. package/dist/components/tab/Tab.js +2 -2
  444. package/dist/components/tab/Tab.js.map +1 -1
  445. package/dist/components/tab/Tab.svelte +48 -16
  446. package/dist/components/tab/Tab.svelte.d.ts +9 -0
  447. package/dist/components/tab/Tab.svelte.d.ts.map +1 -1
  448. package/dist/components/tabs/README.md +1 -0
  449. package/dist/components/tabs/Tabs.js +2 -2
  450. package/dist/components/tabs/Tabs.js.map +1 -1
  451. package/dist/components/tabs/Tabs.stories.d.ts +3 -0
  452. package/dist/components/tabs/Tabs.stories.d.ts.map +1 -1
  453. package/dist/components/tabs/Tabs.stories.js +5 -2
  454. package/dist/components/tabs/Tabs.svelte +21 -4
  455. package/dist/components/tabs/Tabs.svelte.d.ts +5 -0
  456. package/dist/components/tabs/Tabs.svelte.d.ts.map +1 -1
  457. package/dist/components/tag/README.md +1 -0
  458. package/dist/components/tag/Tag.js +2 -2
  459. package/dist/components/tag/Tag.js.map +1 -1
  460. package/dist/components/tag/Tag.stories.d.ts +1 -0
  461. package/dist/components/tag/Tag.stories.d.ts.map +1 -1
  462. package/dist/components/tag/Tag.stories.js +3 -2
  463. package/dist/components/tag/Tag.svelte +46 -13
  464. package/dist/components/tag/Tag.svelte.d.ts +6 -0
  465. package/dist/components/tag/Tag.svelte.d.ts.map +1 -1
  466. package/dist/components/textarea/Textarea.js +2 -2
  467. package/dist/components/textarea/Textarea.js.map +1 -1
  468. package/dist/components/textarea/Textarea.stories.d.ts +1 -0
  469. package/dist/components/textarea/Textarea.stories.d.ts.map +1 -1
  470. package/dist/components/textarea/Textarea.stories.js +4 -3
  471. package/dist/components/textarea/Textarea.svelte +14 -1
  472. package/dist/components/textarea/Textarea.svelte.d.ts +1 -0
  473. package/dist/components/textarea/Textarea.svelte.d.ts.map +1 -1
  474. package/dist/components/textinput/README.md +1 -0
  475. package/dist/components/textinput/Textinput.js +2 -2
  476. package/dist/components/textinput/Textinput.js.map +1 -1
  477. package/dist/components/textinput/Textinput.spec.js +4 -1
  478. package/dist/components/textinput/Textinput.stories.d.ts +1 -0
  479. package/dist/components/textinput/Textinput.stories.d.ts.map +1 -1
  480. package/dist/components/textinput/Textinput.stories.js +5 -4
  481. package/dist/components/textinput/Textinput.svelte +26 -2
  482. package/dist/components/textinput/Textinput.svelte.d.ts +6 -0
  483. package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -1
  484. package/dist/components/toaster/README.md +1 -0
  485. package/dist/components/toaster/Toaster.js +2 -2
  486. package/dist/components/toaster/Toaster.js.map +1 -1
  487. package/dist/components/toaster/Toaster.stories.d.ts +3 -0
  488. package/dist/components/toaster/Toaster.stories.d.ts.map +1 -1
  489. package/dist/components/toaster/Toaster.stories.js +4 -1
  490. package/dist/components/toaster/Toaster.svelte +34 -11
  491. package/dist/components/toaster/Toaster.svelte.d.ts +6 -0
  492. package/dist/components/toaster/Toaster.svelte.d.ts.map +1 -1
  493. package/dist/components/toggle/Toggle.js +2 -2
  494. package/dist/components/toggle/Toggle.js.map +1 -1
  495. package/dist/components/toggle/Toggle.stories.d.ts +1 -0
  496. package/dist/components/toggle/Toggle.stories.d.ts.map +1 -1
  497. package/dist/components/toggle/Toggle.stories.js +3 -2
  498. package/dist/components/toggle/Toggle.svelte +20 -2
  499. package/dist/components/toggle/Toggle.svelte.d.ts +1 -0
  500. package/dist/components/toggle/Toggle.svelte.d.ts.map +1 -1
  501. package/dist/components/togglegroup/ToggleGroup.js +2 -2
  502. package/dist/components/togglegroup/ToggleGroup.js.map +1 -1
  503. package/dist/components/togglegroup/ToggleGroup.stories.d.ts +1 -0
  504. package/dist/components/togglegroup/ToggleGroup.stories.d.ts.map +1 -1
  505. package/dist/components/togglegroup/ToggleGroup.stories.js +2 -1
  506. package/dist/components/togglegroup/ToggleGroup.svelte +1 -0
  507. package/dist/components/togglegroup/ToggleGroup.svelte.d.ts.map +1 -1
  508. package/dist/components/tooltip/README.md +1 -0
  509. package/dist/components/tooltip/Tooltip.js +2 -2
  510. package/dist/components/tooltip/Tooltip.js.map +1 -1
  511. package/dist/components/tooltip/Tooltip.stories.d.ts +1 -0
  512. package/dist/components/tooltip/Tooltip.stories.d.ts.map +1 -1
  513. package/dist/components/tooltip/Tooltip.stories.js +2 -1
  514. package/dist/components/tooltip/Tooltip.svelte +21 -3
  515. package/dist/components/tooltip/Tooltip.svelte.d.ts +6 -0
  516. package/dist/components/tooltip/Tooltip.svelte.d.ts.map +1 -1
  517. package/dist/custom-element.js +3 -3
  518. package/dist/custom-element.js.map +1 -1
  519. package/dist/documentation/{WebComponents/usingPresets.mdx → BrandPresets.mdx} +2 -24
  520. package/dist/documentation/Changelog.mdx +19 -0
  521. package/dist/documentation/Color.mdx +224 -0
  522. package/dist/documentation/Contributing.mdx +11 -5
  523. package/dist/documentation/GettingStarted.mdx +76 -0
  524. package/dist/documentation/Icon.stories.d.ts +10 -0
  525. package/dist/documentation/Icon.stories.d.ts.map +1 -0
  526. package/dist/documentation/Icon.stories.js +138 -0
  527. package/dist/documentation/Migration.mdx +5 -5
  528. package/dist/documentation/Welcome.mdx +52 -0
  529. package/dist/each.js +1 -1
  530. package/dist/each.js.map +1 -1
  531. package/dist/if.js +1 -1
  532. package/dist/if.js.map +1 -1
  533. package/dist/index-client.js +2 -0
  534. package/dist/index-client.js.map +1 -0
  535. package/dist/input.js +1 -1
  536. package/dist/input.js.map +1 -1
  537. package/dist/main.d.ts +11 -1
  538. package/dist/main.d.ts.map +1 -1
  539. package/dist/main.js +11 -1
  540. package/dist/slot.js +1 -1
  541. package/dist/slot.js.map +1 -1
  542. package/dist/snippet.js +2 -0
  543. package/dist/snippet.js.map +1 -0
  544. package/dist/svelte-component.js +1 -1
  545. package/dist/svelte-element.js +2 -0
  546. package/dist/svelte-element.js.map +1 -0
  547. package/dist/this.js +1 -1
  548. package/dist/this.js.map +1 -1
  549. package/package.json +22 -22
  550. package/dist/Cross20.js +0 -2
  551. package/dist/Cross20.js.map +0 -1
  552. package/dist/Cross24.js +0 -2
  553. package/dist/Cross24.js.map +0 -1
  554. package/dist/CrossCircleFilled24.js +0 -2
  555. package/dist/CrossCircleFilled24.js.map +0 -1
  556. package/dist/documentation/Introduction.mdx +0 -109
  557. package/dist/documentation/SupportAndOnboarding.mdx +0 -70
  558. package/dist/documentation/Svelte/Introduction.mdx +0 -76
  559. package/dist/documentation/Svelte/usingIcons.mdx +0 -98
  560. package/dist/documentation/Svelte/usingPresets.mdx +0 -134
  561. package/dist/documentation/WebComponents/Introduction.mdx +0 -52
  562. package/dist/documentation/WebComponents/usingIcons.mdx +0 -81
  563. package/dist/legacy.js +0 -2
  564. package/dist/legacy.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","sources":["../../../src/components/tabs/Tabs.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-tabs' }} />\n\n<script lang=\"ts\">\n /**\n * Tabs are a navigation component that allows users to switch between different sections within the same context. They help organize content efficiently by displaying only one section at a time, reducing clutter and improving accessibility. Tabs can include icons, labels, and notification badges to provide additional context. They are commonly used in dashboards, product management, and settings interfaces.\n *\n * @slot tab - use this slot to insert `m-tab` components.\n */\n interface Props {\n /**\n * A description indicating the purpose of the set of tabs. Useful for improving the accessibility of the component.\n */\n description?: string;\n /**\n * If `true`, the divider will appear.\n */\n divider?: boolean;\n /**\n * If `true`, the tabs of the component will be centered.\n */\n centered?: boolean;\n }\n\n let { description, divider = true, centered }: Props = $props();\n</script>\n\n<nav class={['mc-tabs', centered && 'mc-tabs--centered']}>\n <ul class=\"mc-tabs__list\" role=\"tablist\" aria-label={description}>\n <slot name=\"tab\" />\n </ul>\n {#if divider}\n <div class=\"mc-divider-horizontal\"></div>\n {/if}\n</nav>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tabs';\n @use '@mozaic-ds/styles/components/divider';\n</style>\n"],"names":["description","$.prop","$$props","divider","centered","$$render","consequent"],"mappings":";;yeAAA,oBAuBQA,EAAWC,EAAAC,EAAA,cAAA,CAAA,EAAEC,kBAAU,EAAI,EAAEC,EAAQH,EAAAC,EAAA,WAAA,CAAA,4GAAd,GAAI,4JAO5BC,EAAO,GAAAE,EAAAC,CAAA,gCAJD,UAAWF,KAAY,mBAAmB,CAAA,EAAA,eAAA,mBACAJ,GAAW,eAHlE"}
1
+ {"version":3,"file":"Tabs.js","sources":["../../../src/components/tabs/Tabs.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-tabs',\n props: {\n divider: { reflect: true, type: 'Boolean', attribute: 'divider' },\n centered: { reflect: true, type: 'Boolean', attribute: 'centered' },\n },\n }}\n/>\n\n<script lang=\"ts\">\n import type { Snippet } from 'svelte';\n /**\n * Tabs are a navigation component that allows users to switch between different sections within the same context. They help organize content efficiently by displaying only one section at a time, reducing clutter and improving accessibility. Tabs can include icons, labels, and notification badges to provide additional context. They are commonly used in dashboards, product management, and settings interfaces.\n *\n * @slot tab - use this slot to insert `m-tab` components.\n */\n interface Props {\n /**\n * A description indicating the purpose of the set of tabs. Useful for improving the accessibility of the component.\n */\n description?: string;\n /**\n * If `true`, the divider will appear.\n */\n divider?: boolean;\n /**\n * If `true`, the tabs of the component will be centered.\n */\n centered?: boolean;\n /**\n * use this snippet to insert `m-tab` components.\n */\n children?: Snippet;\n }\n\n let { description, divider = true, centered, children }: Props = $props();\n</script>\n\n<nav class={['mc-tabs', centered && 'mc-tabs--centered']}>\n <ul class=\"mc-tabs__list\" role=\"tablist\" aria-label={description}>\n {#if children}\n {@render children()}\n {:else}\n <slot name=\"tab\" />\n {/if}\n </ul>\n {#if divider}\n <div class=\"mc-divider-horizontal\"></div>\n {/if}\n</nav>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tabs';\n @use '@mozaic-ds/styles/components/divider';\n</style>\n"],"names":["description","$.prop","$$props","divider","centered","children","nav","root","ul","$$render","consequent","alternate","div","root_3","consequent_1","$.set_class","$.clsx","$.set_attribute"],"mappings":";;mgBAUA,oBA0BQA,EAAWC,EAAAC,EAAA,cAAA,CAAA,EAAEC,kBAAU,EAAI,EAAEC,EAAQH,EAAAC,EAAA,WAAA,CAAA,EAAEG,EAAQJ,EAAAC,EAAA,WAAA,CAAA,4GAAxB,GAAI,sHAGlCI,EAAGC,EAAA,EACDC,IADFF,CAAG,MACDE,CAAE,kCAEUH,CAAQ,sEADdA,EAAQ,EAAAI,EAAAC,CAAA,EAAAD,EAAAE,EAAA,EAAA,MADdH,CAAE,UAAFA,EAAE,CAAA,iBAQAI,EAAGC,EAAA,MAAHD,CAAG,WADDT,EAAO,GAAAM,EAAAK,CAAA,aARbR,CAAG,SAAHS,EAAAT,EAAG,EAAAU,EAAA,CAAS,UAAWZ,KAAY,mBAAmB,CAAA,EAAA,eAAA,EACpDa,EAAAT,eAAoDR,GAAW,QADjEM,CAAG,MAFI"}
@@ -1,4 +1,7 @@
1
1
  import type { Meta, StoryObj } from '@storybook/web-components-vite';
2
+ import './Tabs.svelte';
3
+ import '../tab/Tab.svelte';
4
+ import '@mozaic-ds/icons-svelte/components/ChevronRight24/ChevronRight24.svelte';
2
5
  declare const meta: Meta;
3
6
  export default meta;
4
7
  type Story = StoryObj;
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,QAAA,MAAM,IAAI,EAAE,IAsBX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,KAAK,EAAE,KAqBnB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAEvB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAStB,CAAC"}
1
+ {"version":3,"file":"Tabs.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,eAAe,CAAC;AACvB,OAAO,mBAAmB,CAAC;AAC3B,OAAO,yEAAyE,CAAC;AAEjF,QAAA,MAAM,IAAI,EAAE,IAsBX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,KAAK,EAAE,KAqBnB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAEtB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAEvB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAStB,CAAC"}
@@ -1,6 +1,9 @@
1
1
  import { html } from 'lit';
2
2
  import { ifDefined } from 'lit-html/directives/if-defined.js';
3
3
  import { unsafeHTML } from 'lit/directives/unsafe-html.js';
4
+ import './Tabs.svelte';
5
+ import '../tab/Tab.svelte';
6
+ import '@mozaic-ds/icons-svelte/components/ChevronRight24/ChevronRight24.svelte';
4
7
  const meta = {
5
8
  title: 'Navigation/Tabs',
6
9
  component: 'm-tabs',
@@ -16,8 +19,8 @@ const meta = {
16
19
  render: (args) => html `
17
20
  <m-tabs
18
21
  description=${ifDefined(args.description)}
19
- centered=${ifDefined(args.centered)}
20
- divider=${ifDefined(args.divider)}
22
+ ?centered=${args.centered}
23
+ ?divider=${args.divider}
21
24
  value=${ifDefined(args.value)}
22
25
  >
23
26
  ${unsafeHTML(ifDefined(args.tab))}
@@ -1,6 +1,15 @@
1
- <svelte:options customElement={{ tag: 'm-tabs' }} />
1
+ <svelte:options
2
+ customElement={{
3
+ tag: 'm-tabs',
4
+ props: {
5
+ divider: { reflect: true, type: 'Boolean', attribute: 'divider' },
6
+ centered: { reflect: true, type: 'Boolean', attribute: 'centered' },
7
+ },
8
+ }}
9
+ />
2
10
 
3
11
  <script lang="ts">
12
+ import type { Snippet } from 'svelte';
4
13
  /**
5
14
  * Tabs are a navigation component that allows users to switch between different sections within the same context. They help organize content efficiently by displaying only one section at a time, reducing clutter and improving accessibility. Tabs can include icons, labels, and notification badges to provide additional context. They are commonly used in dashboards, product management, and settings interfaces.
6
15
  *
@@ -19,14 +28,22 @@
19
28
  * If `true`, the tabs of the component will be centered.
20
29
  */
21
30
  centered?: boolean;
31
+ /**
32
+ * use this snippet to insert `m-tab` components.
33
+ */
34
+ children?: Snippet;
22
35
  }
23
36
 
24
- let { description, divider = true, centered }: Props = $props();
37
+ let { description, divider = true, centered, children }: Props = $props();
25
38
  </script>
26
39
 
27
40
  <nav class={['mc-tabs', centered && 'mc-tabs--centered']}>
28
41
  <ul class="mc-tabs__list" role="tablist" aria-label={description}>
29
- <slot name="tab" />
42
+ {#if children}
43
+ {@render children()}
44
+ {:else}
45
+ <slot name="tab" />
46
+ {/if}
30
47
  </ul>
31
48
  {#if divider}
32
49
  <div class="mc-divider-horizontal"></div>
@@ -48,7 +65,7 @@
48
65
  margin-block: 0;
49
66
  display: flex;
50
67
  gap: 0.5rem;
51
- padding: 0.5rem 0.25rem;
68
+ padding: var(--tabs-list-padding, 0.5rem 0.25rem);
52
69
  }
53
70
  .mc-tabs__tab {
54
71
  font-size: var(--font-size-100, 0.875rem);
@@ -1,3 +1,4 @@
1
+ import type { Snippet } from 'svelte';
1
2
  /**
2
3
  * Tabs are a navigation component that allows users to switch between different sections within the same context. They help organize content efficiently by displaying only one section at a time, reducing clutter and improving accessibility. Tabs can include icons, labels, and notification badges to provide additional context. They are commonly used in dashboards, product management, and settings interfaces.
3
4
  *
@@ -16,6 +17,10 @@ interface Props {
16
17
  * If `true`, the tabs of the component will be centered.
17
18
  */
18
19
  centered?: boolean;
20
+ /**
21
+ * use this snippet to insert `m-tab` components.
22
+ */
23
+ children?: Snippet;
19
24
  }
20
25
  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
26
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.svelte.ts"],"names":[],"mappings":"AAGE;;;;GAIG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;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;AAUD,QAAA,MAAM,IAAI;;;;UAAqF,CAAC;AAC9E,KAAK,IAAI,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Tabs.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tabs.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;GAIG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAiCH,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;AAUD,QAAA,MAAM,IAAI;;;;UAAqF,CAAC;AAC9E,KAAK,IAAI,GAAG,YAAY,CAAC,OAAO,IAAI,CAAC,CAAC;AACxC,eAAe,IAAI,CAAC"}
@@ -15,6 +15,7 @@ A Tag is a UI element used to filter data, categorize, select or deselect an opt
15
15
  | `disabled` | If `true`, disables the tag, making it non-interactive. Applicable to selectable, interactive, and contextualised types. | `boolean` | |
16
16
  | `contextualisednumber` | A number displayed in the badge when the tag is contextualised. | `number` | `99` |
17
17
  | `removablelabel` | Accessible label text for the remove button in removable tags. | `string` | |
18
+ | `icon` | Use this snippet to insert an icon in the tag. | `Snippet` | |
18
19
 
19
20
  ## Slots
20
21
 
@@ -1,4 +1,4 @@
1
- import{c as Z,p as $,b as r,z as ce,t as L,i as v,j as ee,k as l,e as P,g as F,v as me,a as fe,A as j,B as A,f as R,d,s as N,r as i,h as M,m as ge,C as ue}from"../../custom-element.js";import{i as B}from"../../if.js";import{s as Y}from"../../slot.js";import{s as D,a as be,r as he}from"../../attributes.js";import{a as pe}from"../../input.js";import{b as _e}from"../../this.js";import{C as we}from"../../CrossCircleFilled24.js";import"../../legacy.js";import{N as xe}from"../numberbadge/NumberBadge.js";var ke=ce('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" width="20px" height="20px"><path fill-rule="evenodd" d="M10 1.75a8.25 8.25 0 1 0 0 16.5 8.25 8.25 0 0 0 0-16.5M6.97 6.97a.75.75 0 0 1 1.06 0L10 8.94l1.97-1.97a.75.75 0 1 1 1.06 1.06L11.06 10l1.97 1.97a.75.75 0 1 1-1.06 1.06L10 11.06l-1.97 1.97a.75.75 0 0 1-1.06-1.06L8.94 10 6.97 8.03a.75.75 0 0 1 0-1.06"></path></svg>');function te(S,t){$(t,!1);let a=r(t,"id",12,void 0),o=r(t,"style",12,void 0),g=r(t,"className",12,void 0),k=r(t,"fill",12,void 0),c=r(t,"size",12,"1.25rem");var E={get id(){return a()},set id(s){a(s),l()},get style(){return o()},set style(s){o(s),l()},get className(){return g()},set className(s){g(s),l()},get fill(){return k()},set fill(s){k(s),l()},get size(){return c()},set size(s){c(s),l()}},n=ke();return L(()=>{D(n,"id",a()),be(n,o()),P(n,0,F(g())),D(n,"fill",k())}),v(S,n),ee(E)}customElements.define("cross-circle-filled-20",Z(te,{id:{},style:{},className:{},fill:{},size:{}},[],[],!1));var Ce=R('<label><!> <input type="checkbox" class="mc-tag__input svelte-1f9dt2v"/> <span class="mc-tag__label svelte-1f9dt2v"> </span></label>'),Ee=R('<button type="button"><!> <span class="mc-tag__label svelte-1f9dt2v"> </span></button>'),ze=R('<button type="button"><!> <span class="mc-tag__label svelte-1f9dt2v"> </span></button>'),ye=R('<span><span class="mc-tag__label svelte-1f9dt2v"> </span> <button class="mc-tag-removable__remove svelte-1f9dt2v" type="button"><span class="mc-tag-removable__icon svelte-1f9dt2v"><!></span> <span class="mc-tag-removable__text svelte-1f9dt2v"> </span></button></span>'),Ne=R('<span><span class="mc-tag__label svelte-1f9dt2v"> </span></span>');const Me={hash:"svelte-1f9dt2v",code:`/**
1
+ import{u as ne,c as ce,p as me,a as fe,b as m,k as h,l as p,f as o,g as ge,j as f,d as l,s as P,r as s,t as q,e as F,h as D,i as be,q as V,x as ue,v as he,n as pe,o as _e,w as we}from"../../custom-element.js";import{s as Z}from"../../snippet.js";import{i as C}from"../../if.js";import{s as $}from"../../slot.js";import{a as A,r as xe,s as ee}from"../../attributes.js";import{a as ke}from"../../input.js";import{b as Ce}from"../../this.js";import{c as Ee,d as ye}from"../../Condition20.js";import{N as ze}from"../numberbadge/NumberBadge.js";var Be=D('<label><!> <input type="checkbox" class="mc-tag__input svelte-1f9dt2v"/> <span class="mc-tag__label svelte-1f9dt2v"> </span></label>'),Me=D('<button><!> <span class="mc-tag__label svelte-1f9dt2v"> </span></button>'),Pe=D('<button><!> <span class="mc-tag__label svelte-1f9dt2v"> </span></button>'),Fe=D('<span><span class="mc-tag__label svelte-1f9dt2v"> </span> <button class="mc-tag-removable__remove svelte-1f9dt2v" type="button"><span class="mc-tag-removable__icon svelte-1f9dt2v"><!></span> <span class="mc-tag-removable__text svelte-1f9dt2v"> </span></button></span>'),He=D('<span><span class="mc-tag__label svelte-1f9dt2v"> </span></span>');const Ne={hash:"svelte-1f9dt2v",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
- */.mc-tag.svelte-1f9dt2v {font-size:var(--font-size-100, 0.875rem);border-radius:2rem;height:2rem;padding-inline:0.75rem;box-sizing:border-box;display:inline-flex;align-items:center;background:var(--tag-color-background-standard, #ffffff);color:var(--tag-color-text-standard, #242938);border:var(--border-width-s, 0.0625rem) solid var(--tag-color-border, #999999);}.mc-tag--s.svelte-1f9dt2v {font-size:var(--font-size-50, 0.75rem);border-radius:1.5rem;height:1.5rem;padding-inline:0.5rem;}.mc-tag--l.svelte-1f9dt2v {font-size:var(--font-size-100, 0.875rem);border-radius:2.5rem;height:2.5rem;padding-inline:1rem;}.mc-tag.is-disabled.svelte-1f9dt2v, .mc-tag.svelte-1f9dt2v:disabled {cursor:not-allowed;background:var(--color-background-disabled, #d9d9d9);color:var(--color-text-disabled, #737373);border-color:var(--color-background-disabled, #d9d9d9);box-shadow:none;}.mc-tag-interactive.svelte-1f9dt2v {text-decoration:none;outline:none;cursor:pointer;font-weight:var(--font-weight-semi-bold, 600);}.mc-tag-interactive.svelte-1f9dt2v:not(:disabled):hover {box-shadow:inset 0 0 0 var(--border-width-s, 0.0625rem) var(--tag-color-border, #999999);}.mc-tag-interactive.svelte-1f9dt2v: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-tag-contextualised.svelte-1f9dt2v {gap:0.25rem;text-decoration:none;outline:none;color:var(--tag-color-text-inverse, #ffffff);border:none;background:var(--tag-color-background-selected, #117f03);cursor:pointer;font-weight:var(--font-weight-semi-bold, 600);padding-inline-end:1rem;padding-inline-start:0.5rem;}.mc-tag-contextualised.svelte-1f9dt2v:not(:disabled):hover {background:var(--tag-color-background-selected-hover, #006902);}.mc-tag-contextualised.svelte-1f9dt2v: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-tag-contextualised.mc-tag--s.svelte-1f9dt2v {padding-inline-end:0.5rem;padding-inline-start:0.25rem;}.mc-tag-removable.svelte-1f9dt2v {padding:0 0 0 1rem;background:var(--tag-color-background-inverse, #242938);color:var(--tag-color-text-inverse, #ffffff);border:none;}.mc-tag-removable__remove.svelte-1f9dt2v {width:2rem;height:2rem;background-size:1.5rem;background:transparent;border:none;margin:0 0 0 0.125rem;padding:0.25rem;display:block;cursor:pointer;border-radius:var(--border-radius-full, 100%);}.mc-tag-removable__remove.svelte-1f9dt2v:hover {background:var(--tag-color-background-inverse-hover, #343b4c);}.mc-tag-removable__remove.svelte-1f9dt2v: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-tag-removable__icon.svelte-1f9dt2v {fill:var(--tag-color-delete-icon, #c9d0de);width:1.5rem;height:1.5rem;}.mc-tag-removable__text.svelte-1f9dt2v {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-tag-removable.mc-tag--s.svelte-1f9dt2v {padding:0 0 0 0.5rem;}.mc-tag-removable.mc-tag--s.svelte-1f9dt2v .mc-tag-removable__remove:where(.svelte-1f9dt2v) {width:1.5rem;height:1.5rem;padding:0.125rem;}.mc-tag-removable.mc-tag--s.svelte-1f9dt2v .mc-tag-removable__icon:where(.svelte-1f9dt2v) {width:1.25rem;height:1.25rem;}.mc-tag-removable.mc-tag--l.svelte-1f9dt2v .mc-tag-removable__remove:where(.svelte-1f9dt2v) {width:2.5rem;height:2.5rem;}.mc-tag-removable.mc-tag--l.svelte-1f9dt2v .mc-tag-removable__icon:where(.svelte-1f9dt2v) {width:2rem;height:2rem;}.mc-tag-selectable.svelte-1f9dt2v {gap:0.25rem;white-space:nowrap;cursor:pointer;padding-inline-start:0.5rem;font-weight:var(--font-weight-semi-bold, 600);}.mc-tag-selectable.svelte-1f9dt2v:hover {box-shadow:inset 0 0 0 var(--border-width-s, 0.0625rem) var(--tag-color-border, #999999);}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):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-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):checked) {background:var(--tag-color-background-selected, #117f03);color:var(--tag-color-text-inverse, #ffffff);border:none;}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):checked)::before {display:inline-block;content:"";height:1.25rem;width:1.25rem;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(--tag-color-text-inverse, %23ffffff)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.553a.75.75 0 0 1 0 1.06l-5.833 5.834a.75.75 0 0 1-1.06 0l-2.5-2.5a.75.75 0 0 1 1.06-1.06l1.97 1.97 5.303-5.304a.75.75 0 0 1 1.06 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):checked):not(:has(:disabled)):hover {background:var(--tag-color-background-selected-hover, #006902);border-color:var(--tag-color-background-selected-hover, #006902);box-shadow:none;}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):disabled) {cursor:not-allowed;background:var(--color-background-disabled, #d9d9d9);color:var(--color-text-disabled, #737373);border-color:var(--color-background-disabled, #d9d9d9);box-shadow:none;}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):disabled)::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(--color-text-disabled, %23737373)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.553a.75.75 0 0 1 0 1.06l-5.833 5.834a.75.75 0 0 1-1.06 0l-2.5-2.5a.75.75 0 0 1 1.06-1.06l1.97 1.97 5.303-5.304a.75.75 0 0 1 1.06 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-tag-selectable.svelte-1f9dt2v .mc-tag__input:where(.svelte-1f9dt2v) {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-tag-selectable.svelte-1f9dt2v .mc-tag__label:where(.svelte-1f9dt2v) {user-select:none;}.mc-tag-selectable.mc-tag--s.svelte-1f9dt2v {padding-inline-start:0.25rem;gap:0.125rem;}.mc-tag-selectable.mc-tag--l.svelte-1f9dt2v {padding-inline-start:0.75rem;}.mc-tag-interactive.svelte-1f9dt2v {gap:0.25rem;}`};function Be(S,t){$(t,!0),fe(S,Me);let a=r(t,"type",7,"informative"),o=r(t,"size",7,"m"),g=r(t,"id",7),k=r(t,"name",7),c=r(t,"label",7),E=r(t,"checked",15),n=r(t,"disabled",7),s=r(t,"contextualisednumber",7,99),I=r(t,"removablelabel",7),J;const ae=()=>{const e=new CustomEvent("remove-tag",{detail:g(),bubbles:!0,composed:!0});J.dispatchEvent(e)};var re={get type(){return a()},set type(e="informative"){a(e),l()},get size(){return o()},set size(e="m"){o(e),l()},get id(){return g()},set id(e){g(e),l()},get name(){return k()},set name(e){k(e),l()},get label(){return c()},set label(e){c(e),l()},get checked(){return E()},set checked(e){E(e),l()},get disabled(){return n()},set disabled(e){n(e),l()},get contextualisednumber(){return s()},set contextualisednumber(e=99){s(e),l()},get removablelabel(){return I()},set removablelabel(e){I(e),l()}},W=j(),le=A(W);{var oe=e=>{var b=Ce(),T=d(b);{var K=p=>{var C=j(),H=A(C);Y(H,t,"icon",{}),v(p,C)};B(T,p=>{E()||p(K)})}var h=N(T,2);he(h);var u=N(h,2),m=d(u,!0);i(u),i(b),L(()=>{D(b,"for",g()),P(b,1,F(["mc-tag",`mc-tag-${a()}`,`mc-tag--${o()}`]),"svelte-1f9dt2v"),D(h,"id",g()),D(h,"name",k()),h.disabled=n(),M(m,c())}),pe(h,E),v(e,b)},se=e=>{var b=j(),T=A(b);{var K=u=>{var m=Ee(),p=d(m);Y(p,t,"icon",{});var C=N(p,2),H=d(C,!0);i(C),i(m),L(()=>{P(m,1,F(["mc-tag",`mc-tag-${a()}`,`mc-tag--${o()}`]),"svelte-1f9dt2v"),m.disabled=n(),M(H,c())}),v(u,m)},h=u=>{var m=j(),p=A(m);{var C=z=>{var _=ze(),q=d(_);{let w=ue(()=>o()==="l"?"m":void 0);xe(q,{appearance:"inverse",get label(){return s()},get size(){return ge(w)}})}var G=N(q,2),O=d(G,!0);i(G),i(_),L(()=>{P(_,1,F(["mc-tag",`mc-tag-${a()}`,`mc-tag--${o()}`]),"svelte-1f9dt2v"),_.disabled=n(),M(O,c())}),v(z,_)},H=z=>{var _=j(),q=A(_);{var G=w=>{var f=ye(),y=d(f),Q=d(y,!0);i(y);var U=N(y,2);U.__click=ae;var V=d(U),de=d(V);{var ie=x=>{te(x,{"aria-hidden":"true"})},ne=x=>{we(x,{"aria-hidden":"true"})};B(de,x=>{o()==="s"?x(ie):x(ne,!1)})}i(V);var X=N(V,2),ve=d(X,!0);i(X),i(U),i(f),_e(f,x=>J=x,()=>J),L(()=>{P(f,1,F(["mc-tag",`mc-tag-${a()}`,`mc-tag--${o()}`]),"svelte-1f9dt2v"),M(Q,c()),M(ve,I())}),v(w,f)},O=w=>{var f=Ne(),y=d(f),Q=d(y,!0);i(y),i(f),L(()=>{P(f,1,F(["mc-tag",`mc-tag-${a()}`,`mc-tag--${o()}`]),"svelte-1f9dt2v"),M(Q,c())}),v(w,f)};B(q,w=>{a()==="removable"?w(G):w(O,!1)},!0)}v(z,_)};B(p,z=>{a()==="contextualised"?z(C):z(H,!1)},!0)}v(u,m)};B(T,u=>{a()==="interactive"?u(K):u(h,!1)},!0)}v(e,b)};B(le,e=>{a()==="selectable"?e(oe):e(se,!1)})}return v(S,W),ee(re)}me(["click"]);customElements.define("m-tag",Z(Be,{type:{},size:{},id:{},name:{},label:{},checked:{},disabled:{},contextualisednumber:{},removablelabel:{}},["icon"],[],!0));
3
+ */.mc-tag.svelte-1f9dt2v {font-size:var(--font-size-100, 0.875rem);border-radius:2rem;height:2rem;padding-inline:0.75rem;box-sizing:border-box;display:inline-flex;align-items:center;background:var(--tag-color-background-standard, #ffffff);color:var(--tag-color-text-standard, #242938);border:var(--border-width-s, 0.0625rem) solid var(--tag-color-border, #999999);}.mc-tag--s.svelte-1f9dt2v {font-size:var(--font-size-50, 0.75rem);border-radius:1.5rem;height:1.5rem;padding-inline:0.5rem;}.mc-tag--l.svelte-1f9dt2v {font-size:var(--font-size-100, 0.875rem);border-radius:2.5rem;height:2.5rem;padding-inline:1rem;}.mc-tag.is-disabled.svelte-1f9dt2v, .mc-tag.svelte-1f9dt2v:disabled {cursor:not-allowed;background:var(--color-background-disabled, #d9d9d9);color:var(--color-text-disabled, #737373);border-color:var(--color-background-disabled, #d9d9d9);box-shadow:none;}.mc-tag-interactive.svelte-1f9dt2v {text-decoration:none;outline:none;cursor:pointer;font-weight:var(--font-weight-semi-bold, 600);}.mc-tag-interactive.svelte-1f9dt2v:not(:disabled):hover {box-shadow:inset 0 0 0 var(--border-width-s, 0.0625rem) var(--tag-color-border, #999999);}.mc-tag-interactive.svelte-1f9dt2v: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-tag-contextualised.svelte-1f9dt2v {gap:0.25rem;text-decoration:none;outline:none;color:var(--tag-color-text-inverse, #ffffff);border:none;background:var(--tag-color-background-selected, #117f03);cursor:pointer;font-weight:var(--font-weight-semi-bold, 600);padding-inline-end:1rem;padding-inline-start:0.5rem;}.mc-tag-contextualised.svelte-1f9dt2v:not(:disabled):hover {background:var(--tag-color-background-selected-hover, #006902);}.mc-tag-contextualised.svelte-1f9dt2v: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-tag-contextualised.mc-tag--s.svelte-1f9dt2v {padding-inline-end:0.5rem;padding-inline-start:0.25rem;}.mc-tag-removable.svelte-1f9dt2v {padding:0 0 0 1rem;background:var(--tag-color-background-inverse, #242938);color:var(--tag-color-text-inverse, #ffffff);border:none;}.mc-tag-removable__remove.svelte-1f9dt2v {width:2rem;height:2rem;background-size:1.5rem;background:transparent;border:none;margin:0 0 0 0.125rem;padding:0.25rem;display:block;cursor:pointer;border-radius:var(--border-radius-full, 100%);}.mc-tag-removable__remove.svelte-1f9dt2v:hover {background:var(--tag-color-background-inverse-hover, #343b4c);}.mc-tag-removable__remove.svelte-1f9dt2v: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-tag-removable__icon.svelte-1f9dt2v {fill:var(--tag-color-delete-icon, #c9d0de);width:1.5rem;height:1.5rem;}.mc-tag-removable__text.svelte-1f9dt2v {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-tag-removable.mc-tag--s.svelte-1f9dt2v {padding:0 0 0 0.5rem;}.mc-tag-removable.mc-tag--s.svelte-1f9dt2v .mc-tag-removable__remove:where(.svelte-1f9dt2v) {width:1.5rem;height:1.5rem;padding:0.125rem;}.mc-tag-removable.mc-tag--s.svelte-1f9dt2v .mc-tag-removable__icon:where(.svelte-1f9dt2v) {width:1.25rem;height:1.25rem;}.mc-tag-removable.mc-tag--l.svelte-1f9dt2v .mc-tag-removable__remove:where(.svelte-1f9dt2v) {width:2.5rem;height:2.5rem;}.mc-tag-removable.mc-tag--l.svelte-1f9dt2v .mc-tag-removable__icon:where(.svelte-1f9dt2v) {width:2rem;height:2rem;}.mc-tag-selectable.svelte-1f9dt2v {gap:0.25rem;white-space:nowrap;cursor:pointer;padding-inline-start:0.5rem;font-weight:var(--font-weight-semi-bold, 600);}.mc-tag-selectable.svelte-1f9dt2v:hover {box-shadow:inset 0 0 0 var(--border-width-s, 0.0625rem) var(--tag-color-border, #999999);}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):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-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):checked) {background:var(--tag-color-background-selected, #117f03);color:var(--tag-color-text-inverse, #ffffff);border:none;}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):checked)::before {display:inline-block;content:"";height:1.25rem;width:1.25rem;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(--tag-color-text-inverse, %23ffffff)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.553a.75.75 0 0 1 0 1.06l-5.833 5.834a.75.75 0 0 1-1.06 0l-2.5-2.5a.75.75 0 0 1 1.06-1.06l1.97 1.97 5.303-5.304a.75.75 0 0 1 1.06 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):checked):not(:has(:disabled)):hover {background:var(--tag-color-background-selected-hover, #006902);border-color:var(--tag-color-background-selected-hover, #006902);box-shadow:none;}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):disabled) {cursor:not-allowed;background:var(--color-background-disabled, #d9d9d9);color:var(--color-text-disabled, #737373);border-color:var(--color-background-disabled, #d9d9d9);box-shadow:none;}.mc-tag-selectable.svelte-1f9dt2v:has(:where(.svelte-1f9dt2v):disabled)::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(--color-text-disabled, %23737373)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.553a.75.75 0 0 1 0 1.06l-5.833 5.834a.75.75 0 0 1-1.06 0l-2.5-2.5a.75.75 0 0 1 1.06-1.06l1.97 1.97 5.303-5.304a.75.75 0 0 1 1.06 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h20v20H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");}.mc-tag-selectable.svelte-1f9dt2v .mc-tag__input:where(.svelte-1f9dt2v) {clip-path:inset(100%);clip:rect(1px, 1px, 1px, 1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;padding:0;width:1px;}.mc-tag-selectable.svelte-1f9dt2v .mc-tag__label:where(.svelte-1f9dt2v) {user-select:none;}.mc-tag-selectable.mc-tag--s.svelte-1f9dt2v {padding-inline-start:0.25rem;gap:0.125rem;}.mc-tag-selectable.mc-tag--l.svelte-1f9dt2v {padding-inline-start:0.75rem;}.mc-tag-interactive.svelte-1f9dt2v {gap:0.25rem;}`};function je(W,r){me(r,!0),fe(W,Ne);let d=m(r,"type",7,"informative"),g=m(r,"size",7,"m"),H=m(r,"id",7),G=m(r,"name",7),E=m(r,"label",7),R=m(r,"checked",15),N=m(r,"disabled",7),I=m(r,"contextualisednumber",7,99),J=m(r,"removablelabel",7),z=m(r,"icon",7),S=be(r,["$$slots","$$events","$$legacy","$$host","type","size","id","name","label","checked","disabled","contextualisednumber","removablelabel","icon"]),K=we(null);const te=()=>{const e=new CustomEvent("remove-tag",{detail:H(),bubbles:!0,composed:!0});V(K)?.dispatchEvent(e)};var ae={get type(){return d()},set type(e="informative"){d(e),f()},get size(){return g()},set size(e="m"){g(e),f()},get id(){return H()},set id(e){H(e),f()},get name(){return G()},set name(e){G(e),f()},get label(){return E()},set label(e){E(e),f()},get checked(){return R()},set checked(e){R(e),f()},get disabled(){return N()},set disabled(e){N(e),f()},get contextualisednumber(){return I()},set contextualisednumber(e=99){I(e),f()},get removablelabel(){return J()},set removablelabel(e){J(e),f()},get icon(){return z()},set icon(e){z(e),f()}},X=h(),re=p(X);{var oe=e=>{var y=Be();A(y,()=>({for:H(),class:["mc-tag",`mc-tag-${d()}`,`mc-tag--${g()}`],...S}),void 0,void 0,void 0,"svelte-1f9dt2v");var T=l(y);{var L=w=>{var B=h(),j=p(B);{var i=t=>{var a=h(),n=p(a);Z(n,z),o(t,a)},v=t=>{var a=h(),n=p(a);$(n,r,"icon",{},null),o(t,a)};C(j,t=>{z()?t(i):t(v,!1)})}o(w,B)};C(T,w=>{R()||w(L)})}var _=P(T,2);xe(_);var b=P(_,2),u=l(b,!0);s(b),s(y),q(()=>{ee(_,"id",H()),ee(_,"name",G()),_.disabled=N(),F(u,E())}),ke(_,R),o(e,y)},le=e=>{var y=h(),T=p(y);{var L=b=>{var u=Me();A(u,()=>({class:["mc-tag",`mc-tag-${d()}`,`mc-tag--${g()}`],type:"button",disabled:N(),...S}),void 0,void 0,void 0,"svelte-1f9dt2v");var w=l(u);{var B=t=>{var a=h(),n=p(a);Z(n,z),o(t,a)},j=t=>{var a=h(),n=p(a);$(n,r,"icon",{},null),o(t,a)};C(w,t=>{z()?t(B):t(j,!1)})}var i=P(w,2),v=l(i,!0);s(i),s(u),q(()=>F(v,E())),o(b,u)},_=b=>{var u=h(),w=p(u);{var B=i=>{var v=Pe();A(v,()=>({class:["mc-tag",`mc-tag-${d()}`,`mc-tag--${g()}`],type:"button",disabled:N(),...S}),void 0,void 0,void 0,"svelte-1f9dt2v");var t=l(v);{let x=ue(()=>g()==="l"?"m":void 0);ze(t,{appearance:"inverse",get label(){return I()},get size(){return V(x)}})}var a=P(t,2),n=l(a,!0);s(a),s(v),q(()=>F(n,E())),o(i,v)},j=i=>{var v=h(),t=p(v);{var a=x=>{var c=Fe();A(c,()=>({class:["mc-tag",`mc-tag-${d()}`,`mc-tag--${g()}`],...S}),void 0,void 0,void 0,"svelte-1f9dt2v");var M=l(c),O=l(M,!0);s(M);var Q=P(M,2);Q.__click=te;var U=l(Q),se=l(U);{var de=k=>{Ee(k,{})},ie=k=>{ye(k,{})};C(se,k=>{g()==="s"?k(de):k(ie,!1)})}s(U);var Y=P(U,2),ve=l(Y,!0);s(Y),s(Q),s(c),Ce(c,k=>he(K,k),()=>V(K)),q(()=>{F(O,E()),F(ve,J())}),o(x,c)},n=x=>{var c=He(),M=l(c),O=l(M,!0);s(M),s(c),q(()=>{pe(c,1,_e(["mc-tag",`mc-tag-${d()}`,`mc-tag--${g()}`]),"svelte-1f9dt2v"),F(O,E())}),o(x,c)};C(t,x=>{d()==="removable"?x(a):x(n,!1)},!0)}o(i,v)};C(w,i=>{d()==="contextualised"?i(B):i(j,!1)},!0)}o(b,u)};C(T,b=>{d()==="interactive"?b(L):b(_,!1)},!0)}o(e,y)};C(re,e=>{d()==="selectable"?e(oe):e(le,!1)})}return o(W,X),ge(ae)}ne(["click"]);customElements.define("m-tag",ce(je,{checked:{attribute:"checked",reflect:!0,type:"Boolean"},disabled:{attribute:"disabled",reflect:!0,type:"Boolean"},type:{},size:{},id:{},name:{},label:{},contextualisednumber:{},removablelabel:{},icon:{}},["icon"],[],!0));
4
4
  //# sourceMappingURL=Tag.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.js","sources":["../../../node_modules/@mozaic-ds/icons-svelte/dist/components/CrossCircleFilled20/CrossCircleFilled20.svelte","../../../src/components/tag/Tag.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'cross-circle-filled-20', 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.25rem\";\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 20 20\" width=\"20px\" height=\"20px\"><path fill-rule=\"evenodd\" d=\"M10 1.75a8.25 8.25 0 1 0 0 16.5 8.25 8.25 0 0 0 0-16.5M6.97 6.97a.75.75 0 0 1 1.06 0L10 8.94l1.97-1.97a.75.75 0 1 1 1.06 1.06L11.06 10l1.97 1.97a.75.75 0 1 1-1.06 1.06L10 11.06l-1.97 1.97a.75.75 0 0 1-1.06-1.06L8.94 10 6.97 8.03a.75.75 0 0 1 0-1.06\"/></svg>","<svelte:options customElement={{ tag: 'm-tag' }} />\n\n<script lang=\"ts\">\n import CrossCircleFilled24 from '@mozaic-ds/icons-svelte/svelte/CrossCircleFilled24/CrossCircleFilled24.svelte';\n import CrossCircleFilled20 from '@mozaic-ds/icons-svelte/svelte/CrossCircleFilled20/CrossCircleFilled20.svelte';\n import NumberBadge from '../numberbadge/NumberBadge.svelte';\n /**\n * A Tag is a UI element used to filter data, categorize, select or deselect an option. It can appear standalone, in a group, or embedded within other components. Depending on its use, a tag can be interactive (clickable, removable, selectable) or static (serving as a visual indicator).\n *\n * @event remove-tag {CustomEvent<string>} - Emits when the remove button of a tag is clicked, passing the tag's ID.\n * @slot icon - Use this slot to insert an icon in the tag.\n */\n interface Props {\n /**\n * Defines the behavior and layout of the tag.\n */\n type?: 'informative' | 'interactive' | 'contextualised' | 'removable' | 'selectable';\n /**\n * Determines the size of the tag.\n */\n size?: 's' | 'm' | 'l';\n /**\n * A unique identifier for the tag, used to associate the label with the form element. **Required** when type is 'selectable' or 'removable'.\n */\n id?: string;\n /**\n * The name attribute for the tag element, typically used for form submission. (only relevant for type: 'selectable').\n */\n name?: string;\n /**\n * The text label displayed next to the tag.\n */\n label: string;\n /**\n * The tag's checked state. Used only for type: 'selectable'.\n */\n checked?: boolean;\n /**\n * If `true`, disables the tag, making it non-interactive. Applicable to selectable, interactive, and contextualised types.\n */\n disabled?: boolean;\n /**\n * A number displayed in the badge when the tag is contextualised.\n */\n contextualisednumber?: number;\n /**\n * Accessible label text for the remove button in removable tags.\n */\n removablelabel?: string;\n }\n\n let {\n type = 'informative',\n size = 'm',\n id,\n name,\n label,\n checked = $bindable(),\n disabled,\n contextualisednumber = 99,\n removablelabel,\n }: Props = $props();\n let element: HTMLElement;\n\n const onRemove = () => {\n const event = new CustomEvent('remove-tag', {\n detail: id,\n bubbles: true,\n composed: true,\n });\n element.dispatchEvent(event);\n };\n</script>\n\n{#if type === 'selectable'}\n <label for={id} class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}>\n {#if !checked}\n <slot name=\"icon\" />\n {/if}\n <input type=\"checkbox\" class=\"mc-tag__input\" {id} {name} {disabled} bind:checked />\n <span class=\"mc-tag__label\">{label}</span>\n </label>\n{:else if type === 'interactive'}\n <button class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} type=\"button\" {disabled}>\n <slot name=\"icon\" />\n <span class=\"mc-tag__label\">{label}</span>\n </button>\n{:else if type === 'contextualised'}\n <button class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} type=\"button\" {disabled}>\n <NumberBadge\n appearance=\"inverse\"\n label={contextualisednumber}\n size={size === 'l' ? 'm' : undefined}\n />\n <span class=\"mc-tag__label\">{label}</span>\n </button>\n{:else if type === 'removable'}\n <span class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} bind:this={element}>\n <span class=\"mc-tag__label\">{label}</span>\n <button class=\"mc-tag-removable__remove\" type=\"button\" onclick={onRemove}>\n <span class=\"mc-tag-removable__icon\">\n {#if size === 's'}\n <CrossCircleFilled20 aria-hidden=\"true\" />\n {:else}\n <CrossCircleFilled24 aria-hidden=\"true\" />\n {/if}\n </span>\n <span class=\"mc-tag-removable__text\">{removablelabel}</span>\n </button>\n </span>\n{:else}\n <span class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}>\n <span class=\"mc-tag__label\">{label}</span>\n </span>\n{/if}\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tag';\n\n .mc-tag-interactive {\n gap: 0.25rem;\n }\n</style>\n"],"names":["id","style","className","fill","size","type","$.prop","$$props","name","label","checked","disabled","contextualisednumber","removablelabel","element","onRemove","event","$$render","consequent","$0","$.derived","consequent_4","alternate","$.bind_this","span_3","$$value","consequent_5","alternate_1","consequent_3","alternate_2","consequent_2","alternate_3","consequent_1","alternate_4"],"mappings":"m6BAAA,SAEa,IAAAA,cAAK,MAAS,EACdC,iBAAQ,MAAS,EACjBC,qBAAY,MAAS,EACrBC,gBAAO,MAAS,EAChBC,gBAAO,SAAS,iRAGDJ,GAAE,OAAUC,GAAK,UAASC,EAAS,CAAA,CAAA,aAAQC,GAAI,gBAF3E;;u2NCPA,kBAoDI,IAAAE,eAAO,aAAa,EACpBD,eAAO,GAAG,EACVJ,EAAEM,EAAAC,EAAA,KAAA,CAAA,EACFC,EAAIF,EAAAC,EAAA,OAAA,CAAA,EACJE,EAAKH,EAAAC,EAAA,QAAA,CAAA,EACLG,EAAOJ,EAAAC,EAAA,UAAA,EAAA,EACPI,EAAQL,EAAAC,EAAA,WAAA,CAAA,EACRK,+BAAuB,EAAE,EACzBC,EAAcP,EAAAC,EAAA,iBAAA,CAAA,EAEZO,EAEE,MAAAC,GAAQ,IAAS,CACf,MAAAC,EAAK,IAAO,YAAY,cAC5B,OAAQhB,EAAE,EACV,QAAS,GACT,SAAU,EAAI,CAAA,EAEhBc,EAAQ,cAAcE,CAAK,CAC7B,4CAnBS,cAAa,6CACb,IAAG,0TAMa,GAAE,sLAiBnBN,EAAO,GAAAO,EAAAC,CAAA,yEADHlB,GAAE,WAAU,SAAQ,UAAYK,EAAI,CAAA,GAAA,WAAeD,EAAI,CAAA,EAAA,CAAA,EAAA,gBAAA,mDAKpCK,GAAK,2IAGpB,SAAQ,UAAYJ,EAAI,CAAA,GAAA,WAAeD,EAAI,CAAA,EAAA,CAAA,EAAA,gBAAA,qBAE5BK,GAAK,iEAO1B,IAAAU,EAAAC,GAAA,IAAAhB,EAAI,IAAK,IAAM,IAAM,MAAS,gDAD7BQ,EAAoB,+EAHf,SAAQ,UAAYP,EAAI,CAAA,GAAA,WAAeD,EAAI,CAAA,EAAA,CAAA,EAAA,gBAAA,qBAM5BK,GAAK,sGAK8BM,8GAEvDX,EAAI,IAAK,IAAGa,EAAAI,EAAA,EAAAJ,EAAAK,GAAA,EAAA,gDAJkDC,GAAAC,EAAAC,GAAAX,QAAAA,CAAO,kBAAlE,SAAQ,UAAYT,EAAI,CAAA,GAAA,WAAeD,EAAI,CAAA,EAAA,CAAA,EAAA,gBAAA,MAC1BK,GAAK,OASMI,GAAc,wEAI1C,SAAQ,UAAYR,EAAI,CAAA,GAAA,WAAeD,EAAI,CAAA,EAAA,CAAA,EAAA,gBAAA,MAC1BK,GAAK,oBAhB5BJ,EAAI,IAAK,YAAWY,EAAAS,CAAA,EAAAT,EAAAU,EAAA,EAAA,uBATpBtB,EAAI,IAAK,iBAAgBY,EAAAW,CAAA,EAAAX,EAAAY,EAAA,EAAA,uBALzBxB,EAAI,IAAK,cAAaY,EAAAa,CAAA,EAAAb,EAAAc,EAAA,EAAA,wBAR3B1B,EAAI,IAAK,aAAYY,EAAAe,EAAA,EAAAf,EAAAgB,GAAA,EAAA,wBAF1B","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"Tag.js","sources":["../../../src/components/tag/Tag.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-tag',\n props: {\n checked: { reflect: true, type: 'Boolean', attribute: 'checked' },\n disabled: { reflect: true, type: 'Boolean', attribute: 'disabled' },\n },\n }}\n/>\n\n<script lang=\"ts\">\n import type { Snippet } from 'svelte';\n import { CrossCircleFilled24, CrossCircleFilled20 } from '@mozaic-ds/icons-svelte';\n import NumberBadge from '../numberbadge/NumberBadge.svelte';\n /**\n * A Tag is a UI element used to filter data, categorize, select or deselect an option. It can appear standalone, in a group, or embedded within other components. Depending on its use, a tag can be interactive (clickable, removable, selectable) or static (serving as a visual indicator).\n *\n * @event remove-tag {CustomEvent<string>} - Emits when the remove button of a tag is clicked, passing the tag's ID.\n * @slot icon - Use this slot to insert an icon in the tag.\n */\n interface Props {\n [key: string]: any;\n /**\n * Defines the behavior and layout of the tag.\n */\n type?: 'informative' | 'interactive' | 'contextualised' | 'removable' | 'selectable';\n /**\n * Determines the size of the tag.\n */\n size?: 's' | 'm' | 'l';\n /**\n * A unique identifier for the tag, used to associate the label with the form element. **Required** when type is 'selectable' or 'removable'.\n */\n id?: string;\n /**\n * The name attribute for the tag element, typically used for form submission. (only relevant for type: 'selectable').\n */\n name?: string;\n /**\n * The text label displayed next to the tag.\n */\n label: string;\n /**\n * The tag's checked state. Used only for type: 'selectable'.\n */\n checked?: boolean;\n /**\n * If `true`, disables the tag, making it non-interactive. Applicable to selectable, interactive, and contextualised types.\n */\n disabled?: boolean;\n /**\n * A number displayed in the badge when the tag is contextualised.\n */\n contextualisednumber?: number;\n /**\n * Accessible label text for the remove button in removable tags.\n */\n removablelabel?: string;\n /**\n * Use this snippet to insert an icon in the tag.\n */\n icon?: Snippet;\n }\n\n let {\n type = 'informative',\n size = 'm',\n id,\n name,\n label,\n checked = $bindable(),\n disabled,\n contextualisednumber = 99,\n removablelabel,\n icon,\n ...attrs\n }: Props = $props();\n let element = $state<HTMLElement | null>(null);\n\n const onRemove = () => {\n const event = new CustomEvent('remove-tag', {\n detail: id,\n bubbles: true,\n composed: true,\n });\n element?.dispatchEvent(event);\n };\n</script>\n\n{#if type === 'selectable'}\n <label for={id} class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} {...attrs}>\n {#if !checked}\n {#if icon}\n {@render icon()}\n {:else}\n <slot name=\"icon\" />\n {/if}\n {/if}\n <input type=\"checkbox\" class=\"mc-tag__input\" {id} {name} {disabled} bind:checked />\n <span class=\"mc-tag__label\">{label}</span>\n </label>\n{:else if type === 'interactive'}\n <button\n class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}\n type=\"button\"\n {disabled}\n {...attrs}\n >\n {#if icon}\n {@render icon()}\n {:else}\n <slot name=\"icon\" />\n {/if}\n <span class=\"mc-tag__label\">{label}</span>\n </button>\n{:else if type === 'contextualised'}\n <button\n class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}\n type=\"button\"\n {disabled}\n {...attrs}\n >\n <NumberBadge\n appearance=\"inverse\"\n label={contextualisednumber}\n size={size === 'l' ? 'm' : undefined}\n />\n <span class=\"mc-tag__label\">{label}</span>\n </button>\n{:else if type === 'removable'}\n <span class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} bind:this={element} {...attrs}>\n <span class=\"mc-tag__label\">{label}</span>\n <button class=\"mc-tag-removable__remove\" type=\"button\" onclick={onRemove}>\n <span class=\"mc-tag-removable__icon\">\n {#if size === 's'}\n <CrossCircleFilled20 />\n {:else}\n <CrossCircleFilled24 />\n {/if}\n </span>\n <span class=\"mc-tag-removable__text\">{removablelabel}</span>\n </button>\n </span>\n{:else}\n <span class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}>\n <span class=\"mc-tag__label\">{label}</span>\n </span>\n{/if}\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tag';\n\n .mc-tag-interactive {\n gap: 0.25rem;\n }\n</style>\n"],"names":["type","size","id","$.prop","$$props","name","label","checked","disabled","contextualisednumber","removablelabel","icon","attrs","$.rest_props","element","$.state","onRemove","event","label_1","root_1","$$render","consequent","alternate","consequent_1","input","$.sibling","node_1","span","$.set_attribute","button","root_6","node_6","$.child","consequent_3","alternate_1","span_1","$.reset","$.append","$$anchor","button_1","root_10","node_10","$0","$.derived","NumberBadge","span_2","span_3","root_12","span_4","button_2","span_5","CrossCircleFilled20","CrossCircleFilled24","consequent_6","alternate_2","span_6","$$value","$.set","$.get","span_7","root_15","span_8","$.set_class","$.clsx","consequent_7","alternate_3","consequent_5","alternate_4","consequent_4","alternate_5","consequent_2","alternate_6"],"mappings":";;u2NAUA,mBAuDI,IAAAA,eAAO,aAAa,EACpBC,eAAO,GAAG,EACVC,EAAEC,EAAAC,EAAA,KAAA,CAAA,EACFC,EAAIF,EAAAC,EAAA,OAAA,CAAA,EACJE,EAAKH,EAAAC,EAAA,QAAA,CAAA,EACLG,EAAOJ,EAAAC,EAAA,UAAA,EAAA,EACPI,EAAQL,EAAAC,EAAA,WAAA,CAAA,EACRK,+BAAuB,EAAE,EACzBC,EAAcP,EAAAC,EAAA,iBAAA,CAAA,EACdO,EAAIR,EAAAC,EAAA,OAAA,CAAA,EACDQ,EAAAC,GAAAT,EAAA,kJAEDU,EAAUC,GAA2B,IAAI,EAEvC,MAAAC,GAAQ,IAAS,CACf,MAAAC,EAAK,IAAO,YAAY,cAC5B,OAAQf,EAAE,EACV,QAAS,GACT,SAAU,EAAI,CAAA,IAEhBY,CAAO,GAAE,cAAcG,CAAK,CAC9B,4CArBS,cAAa,6CACb,IAAG,0TAMa,GAAE,wJAkB1BC,EAAKC,GAAA,IAALD,YAAWhB,EAAE,SAAU,SAAQ,UAAYF,EAAI,CAAA,GAAA,WAAeC,EAAI,CAAA,EAAA,KAASW,mDAA3EM,CAAK,8DAGSP,CAAI,uEADVA,EAAI,EAAAS,EAAAC,CAAA,EAAAD,EAAAE,EAAA,EAAA,oBADLf,EAAO,GAAAa,EAAAG,CAAA,QAOZC,EAAKC,EAAAC,EAAA,CAAA,KAALF,CAAK,EACL,IAAAG,IADAH,EAAK,CAAA,MACLG,EAAI,EAAA,IAAJA,CAAI,IATNT,CAAK,SAQHU,GAAAJ,OAA6CtB,GAAE,EAA/C0B,GAAAJ,SAAkDnB,GAAI,EAAtDmB,WAAyDhB,EAAQ,MACrCF,GAAK,OADjCkB,EAAKjB,CAAA,MARPW,CAAK,sCAYL,IAAAW,EAAAC,GAAA,IAAAD,eACS,SAAQ,UAAY7B,EAAI,CAAA,GAAA,WAAeC,EAAI,CAAA,EAAA,yBAElDO,EAAQ,KACLI,2CAJL,IAAAmB,EAAAC,EAAAH,CAAA,kCAOYlB,CAAI,uEADVA,EAAI,EAAAS,EAAAa,CAAA,EAAAb,EAAAc,EAAA,EAAA,QAKRC,EAAIV,EAAAM,EAAA,CAAA,MAAJI,EAAI,EAAA,IAAJA,CAAI,EAXNC,EAAAP,CAAA,YAW8BvB,EAAK,CAAA,CAAA,EAXnC+B,EAAAC,EAAAT,CAAA,qCAcA,IAAAU,EAAAC,GAAA,IAAAD,eACS,SAAQ,UAAYvC,EAAI,CAAA,GAAA,WAAeC,EAAI,CAAA,EAAA,yBAElDO,EAAQ,KACLI,2CAJL,IAAA6B,EAAAT,EAAAO,CAAA,GASS,IAAAG,EAAAC,GAAA,IAAA1C,EAAI,IAAK,IAAM,IAAM,MAAS,EAHrC2C,GAAAH,EAAA,yCAEQhC,EAAoB,iCAG5BoC,EAAIpB,EAAAgB,EAAA,CAAA,MAAJI,EAAI,EAAA,IAAJA,CAAI,EAXNT,EAAAG,CAAA,YAW8BjC,EAAK,CAAA,CAAA,EAXnC+B,EAAAC,EAAAC,CAAA,yCAcAO,EAAIC,GAAA,IAAJD,eAAa,SAAQ,UAAY9C,EAAI,CAAA,GAAA,WAAeC,EAAI,CAAA,EAAA,KAA6BW,2CACnF,IAAAoC,IADFF,CAAI,MACFE,EAAI,EAAA,IAAJA,CAAI,EACJ,IAAAC,IADAD,EAAI,CAAA,EACJC,EAAsD,QAASjC,GAC7D,IAAAkC,IADFD,CAAM,OACJC,CAAI,cAEAC,GAAmBb,EAAA,EAAA,UAEnBc,GAAmBd,EAAA,EAAA,YAHjBrC,EAAI,IAAK,IAAGmB,EAAAiC,EAAA,EAAAjC,EAAAkC,GAAA,EAAA,MADlBJ,CAAI,EAOJ,IAAAK,IAPAL,EAAI,CAAA,OAOJK,EAAI,EAAA,IAAJA,CAAI,IARNN,CAAM,IAFRH,CAAI,KAAJA,EAAIU,GAAAC,GAAoE3C,EAAO0C,CAAA,EAAA,IAAAE,EAAP5C,CAAO,CAAA,aACjDR,GAAK,OASMI,GAAc,QAVvDoC,CAAI,aAcJa,EAAIC,GAAA,EACFC,IADFF,CAAI,MACFE,EAAI,EAAA,IAAJA,CAAI,IADNF,CAAI,SAAJG,GAAAH,EAAI,EAAAI,GAAA,CAAS,SAAQ,UAAY/D,EAAI,eAAeC,EAAI,CAAA,EAAA,CAAA,EAAA,gBAAA,MAC1BK,GAAK,QADnCqD,CAAI,WAfG3D,EAAI,IAAK,YAAWoB,EAAA4C,CAAA,EAAA5C,EAAA6C,EAAA,EAAA,uBAdpBjE,EAAI,IAAK,iBAAgBoB,EAAA8C,CAAA,EAAA9C,EAAA+C,EAAA,EAAA,uBAdzBnE,EAAI,IAAK,cAAaoB,EAAAgD,CAAA,EAAAhD,EAAAiD,EAAA,EAAA,wBAZ3BrE,EAAI,IAAK,aAAYoB,EAAAkD,EAAA,EAAAlD,EAAAmD,GAAA,EAAA,wBAFlB"}
@@ -1,4 +1,5 @@
1
1
  import type { Meta, StoryObj } from '@storybook/web-components-vite';
2
+ import './Tag.svelte';
2
3
  declare const meta: Meta;
3
4
  export default meta;
4
5
  type Story = StoryObj;
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tag/Tag.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAMrE,QAAA,MAAM,IAAI,EAAE,IAkCX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,IAAI,EAAE,KAElB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAEzB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAK5B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAKvB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAC"}
1
+ {"version":3,"file":"Tag.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tag/Tag.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,OAAO,cAAc,CAAC;AAEtB,QAAA,MAAM,IAAI,EAAE,IAkCX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,IAAI,EAAE,KAElB,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAEzB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAK5B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAKvB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAKxB,CAAC"}
@@ -2,6 +2,7 @@ import { html } from 'lit';
2
2
  import { ifDefined } from 'lit-html/directives/if-defined.js';
3
3
  import { unsafeHTML } from 'lit/directives/unsafe-html.js';
4
4
  import { action } from 'storybook/actions';
5
+ import './Tag.svelte';
5
6
  const meta = {
6
7
  title: 'Indicators/Tag',
7
8
  component: 'm-tag',
@@ -27,8 +28,8 @@ const meta = {
27
28
  id=${ifDefined(args.id)}
28
29
  name=${ifDefined(args.name)}
29
30
  label=${ifDefined(args.label)}
30
- checked=${ifDefined(args.checked)}
31
- disabled=${ifDefined(args.disabled)}
31
+ ?checked=${args.checked}
32
+ ?disabled=${args.disabled}
32
33
  contextualisednumber=${ifDefined(args.contextualisednumber)}
33
34
  removablelabel=${ifDefined(args.removablelabel)}
34
35
  @remove-tag=${action('remove-tag')}
@@ -1,8 +1,16 @@
1
- <svelte:options customElement={{ tag: 'm-tag' }} />
1
+ <svelte:options
2
+ customElement={{
3
+ tag: 'm-tag',
4
+ props: {
5
+ checked: { reflect: true, type: 'Boolean', attribute: 'checked' },
6
+ disabled: { reflect: true, type: 'Boolean', attribute: 'disabled' },
7
+ },
8
+ }}
9
+ />
2
10
 
3
11
  <script lang="ts">
4
- import CrossCircleFilled24 from '@mozaic-ds/icons-svelte/svelte/CrossCircleFilled24/CrossCircleFilled24.svelte';
5
- import CrossCircleFilled20 from '@mozaic-ds/icons-svelte/svelte/CrossCircleFilled20/CrossCircleFilled20.svelte';
12
+ import type { Snippet } from 'svelte';
13
+ import { CrossCircleFilled24, CrossCircleFilled20 } from '@mozaic-ds/icons-svelte';
6
14
  import NumberBadge from '../numberbadge/NumberBadge.svelte';
7
15
  /**
8
16
  * A Tag is a UI element used to filter data, categorize, select or deselect an option. It can appear standalone, in a group, or embedded within other components. Depending on its use, a tag can be interactive (clickable, removable, selectable) or static (serving as a visual indicator).
@@ -11,6 +19,7 @@
11
19
  * @slot icon - Use this slot to insert an icon in the tag.
12
20
  */
13
21
  interface Props {
22
+ [key: string]: any;
14
23
  /**
15
24
  * Defines the behavior and layout of the tag.
16
25
  */
@@ -47,6 +56,10 @@
47
56
  * Accessible label text for the remove button in removable tags.
48
57
  */
49
58
  removablelabel?: string;
59
+ /**
60
+ * Use this snippet to insert an icon in the tag.
61
+ */
62
+ icon?: Snippet;
50
63
  }
51
64
 
52
65
  let {
@@ -59,8 +72,10 @@
59
72
  disabled,
60
73
  contextualisednumber = 99,
61
74
  removablelabel,
75
+ icon,
76
+ ...attrs
62
77
  }: Props = $props();
63
- let element: HTMLElement;
78
+ let element = $state<HTMLElement | null>(null);
64
79
 
65
80
  const onRemove = () => {
66
81
  const event = new CustomEvent('remove-tag', {
@@ -68,25 +83,43 @@
68
83
  bubbles: true,
69
84
  composed: true,
70
85
  });
71
- element.dispatchEvent(event);
86
+ element?.dispatchEvent(event);
72
87
  };
73
88
  </script>
74
89
 
75
90
  {#if type === 'selectable'}
76
- <label for={id} class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}>
91
+ <label for={id} class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} {...attrs}>
77
92
  {#if !checked}
78
- <slot name="icon" />
93
+ {#if icon}
94
+ {@render icon()}
95
+ {:else}
96
+ <slot name="icon" />
97
+ {/if}
79
98
  {/if}
80
99
  <input type="checkbox" class="mc-tag__input" {id} {name} {disabled} bind:checked />
81
100
  <span class="mc-tag__label">{label}</span>
82
101
  </label>
83
102
  {:else if type === 'interactive'}
84
- <button class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} type="button" {disabled}>
85
- <slot name="icon" />
103
+ <button
104
+ class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}
105
+ type="button"
106
+ {disabled}
107
+ {...attrs}
108
+ >
109
+ {#if icon}
110
+ {@render icon()}
111
+ {:else}
112
+ <slot name="icon" />
113
+ {/if}
86
114
  <span class="mc-tag__label">{label}</span>
87
115
  </button>
88
116
  {:else if type === 'contextualised'}
89
- <button class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} type="button" {disabled}>
117
+ <button
118
+ class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]}
119
+ type="button"
120
+ {disabled}
121
+ {...attrs}
122
+ >
90
123
  <NumberBadge
91
124
  appearance="inverse"
92
125
  label={contextualisednumber}
@@ -95,14 +128,14 @@
95
128
  <span class="mc-tag__label">{label}</span>
96
129
  </button>
97
130
  {:else if type === 'removable'}
98
- <span class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} bind:this={element}>
131
+ <span class={['mc-tag', `mc-tag-${type}`, `mc-tag--${size}`]} bind:this={element} {...attrs}>
99
132
  <span class="mc-tag__label">{label}</span>
100
133
  <button class="mc-tag-removable__remove" type="button" onclick={onRemove}>
101
134
  <span class="mc-tag-removable__icon">
102
135
  {#if size === 's'}
103
- <CrossCircleFilled20 aria-hidden="true" />
136
+ <CrossCircleFilled20 />
104
137
  {:else}
105
- <CrossCircleFilled24 aria-hidden="true" />
138
+ <CrossCircleFilled24 />
106
139
  {/if}
107
140
  </span>
108
141
  <span class="mc-tag-removable__text">{removablelabel}</span>
@@ -1,3 +1,4 @@
1
+ import type { Snippet } from 'svelte';
1
2
  /**
2
3
  * A Tag is a UI element used to filter data, categorize, select or deselect an option. It can appear standalone, in a group, or embedded within other components. Depending on its use, a tag can be interactive (clickable, removable, selectable) or static (serving as a visual indicator).
3
4
  *
@@ -5,6 +6,7 @@
5
6
  * @slot icon - Use this slot to insert an icon in the tag.
6
7
  */
7
8
  interface Props {
9
+ [key: string]: any;
8
10
  /**
9
11
  * Defines the behavior and layout of the tag.
10
12
  */
@@ -41,6 +43,10 @@ interface Props {
41
43
  * Accessible label text for the remove button in removable tags.
42
44
  */
43
45
  removablelabel?: string;
46
+ /**
47
+ * Use this snippet to insert an icon in the tag.
48
+ */
49
+ icon?: Snippet;
44
50
  }
45
51
  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> {
46
52
  new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
@@ -1 +1 @@
1
- {"version":3,"file":"Tag.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tag/Tag.svelte.ts"],"names":[],"mappings":"AAOE;;;;;GAKG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,gBAAgB,GAAG,WAAW,GAAG,YAAY,CAAC;IACrF;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACvB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AA0EH,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;AAUD,QAAA,MAAM,GAAG;;;;iBAAqF,CAAC;AAC7E,KAAK,GAAG,GAAG,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;AACtC,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"Tag.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/tag/Tag.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAIpC;;;;;GAKG;AACH,UAAU,KAAK;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,aAAa,GAAG,aAAa,GAAG,gBAAgB,GAAG,WAAW,GAAG,YAAY,CAAC;IACrF;;OAEG;IACH,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACvB;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AA0FH,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;AAUD,QAAA,MAAM,GAAG;;;;iBAAqF,CAAC;AAC7E,KAAK,GAAG,GAAG,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;AACtC,eAAe,GAAG,CAAC"}
@@ -1,4 +1,4 @@
1
- import{c as x,p as w,a as y,b as o,f as z,t as j,i as q,j as _,k as t,y as p,e as k,g as E}from"../../custom-element.js";import{s as l}from"../../attributes.js";import{c as D}from"../../input.js";import{c as F}from"../../custom-element-forward-events.js";var O=z("<textarea></textarea>");const S={hash:"svelte-1qbzujl",code:`/**
1
+ import{c as x,p as w,a as y,b as a,f as p,g as z,h as j,i as q,j as o,y as _}from"../../custom-element.js";import{a as k}from"../../attributes.js";import{c as B}from"../../input.js";import{c as E}from"../../custom-element-forward-events.js";var D=j("<textarea></textarea>");const F={hash:"svelte-1qbzujl",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
- */.mc-textarea.svelte-1qbzujl {font-family:inherit;transition:box-shadow 200ms ease;background-color:var(--forms-color-background-default, #ffffff);border:var(--border-width-s, 0.0625rem) solid var(--forms-color-border-default, #666666);border-radius:var(--forms-border-radius, 0.25rem);transition:all ease 200ms;color:var(--forms-color-text-default, #000000);display:block;width:100%;font-size:var(--font-size-150, 1rem);line-height:var(--line-height-m, 1.5);min-height:4rem;padding:0.5rem 0.75rem;}.mc-textarea.svelte-1qbzujl::placeholder {color:var(--forms-color-placeholder, #666666);}.mc-textarea.svelte-1qbzujl:hover {border-color:var(--forms-color-border-hover, #4d4d4d);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-hover, #4d4d4d);}.mc-textarea.svelte-1qbzujl:focus {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-textarea.svelte-1qbzujl:disabled {background-color:var(--forms-color-background-disabled, #d9d9d9);cursor:not-allowed;border-color:transparent;box-shadow:none;color:var(--forms-color-text-disabled, #737373);}.mc-textarea[readonly].svelte-1qbzujl {border-color:var(--forms-color-border-read-only, #cccccc);pointer-events:none;}.mc-textarea.is-invalid.svelte-1qbzujl {border-color:var(--forms-color-border-invalid, #ea302d);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid, #ea302d);}.mc-textarea.is-invalid.svelte-1qbzujl:hover {border-color:var(--forms-color-border-invalid-hover, #c61112);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid-hover, #c61112);}`};function T(h,a){w(a,!0),y(h,S);let s=o(a,"id",7),i=o(a,"name",7),n=o(a,"value",7),m=o(a,"placeholder",7),d=o(a,"isinvalid",7),c=o(a,"disabled",7),v=o(a,"rows",7,2),u=o(a,"minlength",7),b=o(a,"maxlength",7),f=o(a,"readonly",7);var g={get id(){return s()},set id(e){s(e),t()},get name(){return i()},set name(e){i(e),t()},get value(){return n()},set value(e){n(e),t()},get placeholder(){return m()},set placeholder(e){m(e),t()},get isinvalid(){return d()},set isinvalid(e){d(e),t()},get disabled(){return c()},set disabled(e){c(e),t()},get rows(){return v()},set rows(e=2){v(e),t()},get minlength(){return u()},set minlength(e){u(e),t()},get maxlength(){return b()},set maxlength(e){b(e),t()},get readonly(){return f()},set readonly(e){f(e),t()}},r=O();return p(r),j(()=>{k(r,1,E(["mc-textarea",d()&&"is-invalid"]),"svelte-1qbzujl"),l(r,"aria-invalid",d()),l(r,"name",i()),l(r,"id",s()),l(r,"placeholder",m()),l(r,"rows",v()),r.disabled=c(),l(r,"minlength",u()),l(r,"maxlength",b()),r.readOnly=f()}),D(r,n),q(h,r),_(g)}customElements.define("m-textarea",x(T,{id:{},name:{},value:{},placeholder:{},isinvalid:{},disabled:{},rows:{},minlength:{},maxlength:{},readonly:{}},[],[],!0,F));
3
+ */.mc-textarea.svelte-1qbzujl {font-family:inherit;transition:box-shadow 200ms ease;background-color:var(--forms-color-background-default, #ffffff);border:var(--border-width-s, 0.0625rem) solid var(--forms-color-border-default, #666666);border-radius:var(--forms-border-radius, 0.25rem);transition:all ease 200ms;color:var(--forms-color-text-default, #000000);display:block;width:100%;font-size:var(--font-size-150, 1rem);line-height:var(--line-height-m, 1.5);min-height:4rem;padding:0.5rem 0.75rem;}.mc-textarea.svelte-1qbzujl::placeholder {color:var(--forms-color-placeholder, #666666);}.mc-textarea.svelte-1qbzujl:hover {border-color:var(--forms-color-border-hover, #4d4d4d);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-hover, #4d4d4d);}.mc-textarea.svelte-1qbzujl:focus {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-textarea.svelte-1qbzujl:disabled {background-color:var(--forms-color-background-disabled, #d9d9d9);cursor:not-allowed;border-color:transparent;box-shadow:none;color:var(--forms-color-text-disabled, #737373);}.mc-textarea[readonly].svelte-1qbzujl {border-color:var(--forms-color-border-read-only, #cccccc);pointer-events:none;}.mc-textarea.is-invalid.svelte-1qbzujl {border-color:var(--forms-color-border-invalid, #ea302d);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid, #ea302d);}.mc-textarea.is-invalid.svelte-1qbzujl:hover {border-color:var(--forms-color-border-invalid-hover, #c61112);box-shadow:0 0 0 var(--border-width-s, 0.0625rem) var(--forms-color-border-invalid-hover, #c61112);}`};function S(f,r){w(r,!0),y(f,F);let d=a(r,"id",7),s=a(r,"name",7),i=a(r,"value",7),n=a(r,"placeholder",7),t=a(r,"isinvalid",7),c=a(r,"disabled",7),m=a(r,"rows",7,2),v=a(r,"minlength",7),u=a(r,"maxlength",7),b=a(r,"readonly",7),h=q(r,["$$slots","$$events","$$legacy","$$host","id","name","value","placeholder","isinvalid","disabled","rows","minlength","maxlength","readonly"]);var g={get id(){return d()},set id(e){d(e),o()},get name(){return s()},set name(e){s(e),o()},get value(){return i()},set value(e){i(e),o()},get placeholder(){return n()},set placeholder(e){n(e),o()},get isinvalid(){return t()},set isinvalid(e){t(e),o()},get disabled(){return c()},set disabled(e){c(e),o()},get rows(){return m()},set rows(e=2){m(e),o()},get minlength(){return v()},set minlength(e){v(e),o()},get maxlength(){return u()},set maxlength(e){u(e),o()},get readonly(){return b()},set readonly(e){b(e),o()}},l=D();return _(l),k(l,()=>({class:["mc-textarea",t()&&"is-invalid"],"aria-invalid":t(),name:s(),id:d(),placeholder:n(),rows:m(),disabled:c(),minlength:v(),maxlength:u(),readonly:b(),...h}),void 0,void 0,void 0,"svelte-1qbzujl"),B(l,i),p(f,l),z(g)}customElements.define("m-textarea",x(S,{isinvalid:{attribute:"isinvalid",reflect:!0,type:"Boolean"},disabled:{attribute:"disabled",reflect:!0,type:"Boolean"},readonly:{attribute:"readonly",reflect:!0,type:"Boolean"},id:{},name:{},value:{},placeholder:{},rows:{},minlength:{},maxlength:{}},[],[],!0,E));
4
4
  //# sourceMappingURL=Textarea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":["../../../src/components/textarea/Textarea.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-textarea', extend: customElementForwardEvents }} />\n\n<script lang=\"ts\">\n import { customElementForwardEvents } from '../../utils';\n /**\n * A text area is an input designed for multi-line text entry, allowing users to input longer content compared to a standard text input. It is commonly used for comments, feedback, descriptions, and messaging. Text areas can be resizable or fixed in height, depending on the context, and often include placeholder text, character limits, and validation messages to guide users.\n */\n interface Props {\n /**\n * A unique identifier for the textarea, used to associate the label with the form element.\n */\n id: string;\n /**\n * The name attribute for the textarea element, used for form submission.\n */\n name?: string;\n /**\n * The current value of the textarea field.\n */\n value?: string | number;\n /**\n * Text displayed when the textarea is empty.\n */\n placeholder?: string;\n /**\n * If `true`, the textarea is marked as invalid.\n */\n isinvalid?: boolean;\n /**\n * If `true`, the textarea is disabled and non-interactive.\n */\n disabled?: boolean;\n /**\n * The number of visible text lines in the textarea.\n */\n rows?: number;\n /**\n * Minimum number of characters required for the textarea.\n */\n minlength?: number;\n /**\n * Maximum number of characters allowed in the textarea.\n */\n maxlength?: number;\n /**\n * If `true`, the textarea is read-only (cannot be edited).\n */\n readonly?: boolean;\n }\n\n let {\n id,\n name,\n value,\n placeholder,\n isinvalid,\n disabled,\n rows = 2,\n minlength,\n maxlength,\n readonly,\n }: Props = $props();\n</script>\n\n<textarea\n bind:value\n class={['mc-textarea', isinvalid && 'is-invalid']}\n aria-invalid={isinvalid}\n {name}\n {id}\n {placeholder}\n {rows}\n {disabled}\n {minlength}\n {maxlength}\n {readonly}\n></textarea>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/textarea';\n</style>\n"],"names":["id","$.prop","$$props","name","value","placeholder","isinvalid","disabled","rows","minlength","maxlength","readonly","customElementForwardEvents"],"mappings":";;yvDAAA,oBAmDIA,EAAEC,EAAAC,EAAA,KAAA,CAAA,EACFC,EAAIF,EAAAC,EAAA,OAAA,CAAA,EACJE,EAAKH,EAAAC,EAAA,QAAA,CAAA,EACLG,EAAWJ,EAAAC,EAAA,cAAA,CAAA,EACXI,EAASL,EAAAC,EAAA,YAAA,CAAA,EACTK,EAAQN,EAAAC,EAAA,WAAA,CAAA,EACRM,eAAO,CAAC,EACRC,EAASR,EAAAC,EAAA,YAAA,CAAA,EACTQ,EAAST,EAAAC,EAAA,YAAA,CAAA,EACTS,EAAQV,EAAAC,EAAA,WAAA,CAAA,uVAHD,EAAC,iNASF,cAAeI,KAAa,YAAY,CAAA,EAAA,gBAAA,qBAClCA,GAAS,mKALzB,gKA9D4DM"}
1
+ {"version":3,"file":"Textarea.js","sources":["../../../src/components/textarea/Textarea.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-textarea',\n props: {\n isinvalid: { reflect: true, type: 'Boolean', attribute: 'isinvalid' },\n disabled: { reflect: true, type: 'Boolean', attribute: 'disabled' },\n readonly: { reflect: true, type: 'Boolean', attribute: 'readonly' },\n },\n extend: customElementForwardEvents,\n }}\n/>\n\n<script lang=\"ts\">\n import { customElementForwardEvents } from '../../utils';\n /**\n * A text area is an input designed for multi-line text entry, allowing users to input longer content compared to a standard text input. It is commonly used for comments, feedback, descriptions, and messaging. Text areas can be resizable or fixed in height, depending on the context, and often include placeholder text, character limits, and validation messages to guide users.\n */\n interface Props {\n [key: string]: any;\n /**\n * A unique identifier for the textarea, used to associate the label with the form element.\n */\n id: string;\n /**\n * The name attribute for the textarea element, used for form submission.\n */\n name?: string;\n /**\n * The current value of the textarea field.\n */\n value?: string | number;\n /**\n * Text displayed when the textarea is empty.\n */\n placeholder?: string;\n /**\n * If `true`, the textarea is marked as invalid.\n */\n isinvalid?: boolean;\n /**\n * If `true`, the textarea is disabled and non-interactive.\n */\n disabled?: boolean;\n /**\n * The number of visible text lines in the textarea.\n */\n rows?: number;\n /**\n * Minimum number of characters required for the textarea.\n */\n minlength?: number;\n /**\n * Maximum number of characters allowed in the textarea.\n */\n maxlength?: number;\n /**\n * If `true`, the textarea is read-only (cannot be edited).\n */\n readonly?: boolean;\n }\n\n let {\n id,\n name,\n value,\n placeholder,\n isinvalid,\n disabled,\n rows = 2,\n minlength,\n maxlength,\n readonly,\n ...attrs\n }: Props = $props();\n</script>\n\n<textarea\n bind:value\n class={['mc-textarea', isinvalid && 'is-invalid']}\n aria-invalid={isinvalid}\n {name}\n {id}\n {placeholder}\n {rows}\n {disabled}\n {minlength}\n {maxlength}\n {readonly}\n {...attrs}\n></textarea>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/textarea';\n</style>\n"],"names":["id","$.prop","$$props","name","value","placeholder","isinvalid","disabled","rows","minlength","maxlength","readonly","attrs","$.rest_props","textarea","root","$.remove_textarea_child","$.bind_value","$.append","$$anchor","customElementForwardEvents"],"mappings":";;yvDAYA,oBAkDIA,EAAEC,EAAAC,EAAA,KAAA,CAAA,EACFC,EAAIF,EAAAC,EAAA,OAAA,CAAA,EACJE,EAAKH,EAAAC,EAAA,QAAA,CAAA,EACLG,EAAWJ,EAAAC,EAAA,cAAA,CAAA,EACXI,EAASL,EAAAC,EAAA,YAAA,CAAA,EACTK,EAAQN,EAAAC,EAAA,WAAA,CAAA,EACRM,eAAO,CAAC,EACRC,EAASR,EAAAC,EAAA,YAAA,CAAA,EACTQ,EAAST,EAAAC,EAAA,YAAA,CAAA,EACTS,EAAQV,EAAAC,EAAA,WAAA,CAAA,EACLU,EAAAC,EAAAX,EAAA,oeAJI,EAAC,+KAQXY,EAAAC,EAAA,EAAAC,OAAAA,EAAAF,CAAA,IAAAA,eAES,cAAeR,EAAS,GAAI,YAAY,iBAClCA,EAAS,OACtBH,EAAI,KACJH,EAAE,cACFK,EAAW,OACXG,EAAI,WACJD,EAAQ,YACRE,EAAS,YACTC,EAAS,WACTC,EAAQ,KACLC,2CAZLK,EAAAH,EAAAV,CAAA,EAAAc,EAAAC,EAAAL,CAAA,MAFO,2SAlEIM"}
@@ -1,4 +1,5 @@
1
1
  import type { Meta, StoryObj } from '@storybook/web-components-vite';
2
+ import './Textarea.svelte';
2
3
  declare const meta: Meta;
3
4
  export default meta;
4
5
  type Story = StoryObj;
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.stories.d.ts","sourceRoot":"","sources":["../../../src/components/textarea/Textarea.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,QAAA,MAAM,IAAI,EAAE,IAwCX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,SAAS,EAAE,KAKvB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC"}
1
+ {"version":3,"file":"Textarea.stories.d.ts","sourceRoot":"","sources":["../../../src/components/textarea/Textarea.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,mBAAmB,CAAC;AAE3B,QAAA,MAAM,IAAI,EAAE,IAwCX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,SAAS,EAAE,KAKvB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,KAKtB,CAAC;AAEF,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { html } from 'lit';
2
2
  import { ifDefined } from 'lit-html/directives/if-defined.js';
3
3
  import { action } from 'storybook/actions';
4
+ import './Textarea.svelte';
4
5
  const meta = {
5
6
  title: 'Form Elements/Textarea',
6
7
  component: 'm-textarea',
@@ -19,12 +20,12 @@ const meta = {
19
20
  name=${ifDefined(args.name)}
20
21
  value=${ifDefined(args.value)}
21
22
  placeholder=${ifDefined(args.placeholder)}
22
- isinvalid=${ifDefined(args.isinvalid)}
23
- disabled=${ifDefined(args.disabled)}
23
+ ?isinvalid=${args.isinvalid}
24
+ ?disabled=${args.disabled}
24
25
  rows=${ifDefined(args.rows)}
25
26
  minlength=${ifDefined(args.minlength)}
26
27
  maxlength=${ifDefined(args.maxlength)}
27
- readonly=${ifDefined(args.readonly)}
28
+ ?readonly=${args.readonly}
28
29
  @input=${(event) => {
29
30
  onInput(event);
30
31
  }}
@@ -1,4 +1,14 @@
1
- <svelte:options customElement={{ tag: 'm-textarea', extend: customElementForwardEvents }} />
1
+ <svelte:options
2
+ customElement={{
3
+ tag: 'm-textarea',
4
+ props: {
5
+ isinvalid: { reflect: true, type: 'Boolean', attribute: 'isinvalid' },
6
+ disabled: { reflect: true, type: 'Boolean', attribute: 'disabled' },
7
+ readonly: { reflect: true, type: 'Boolean', attribute: 'readonly' },
8
+ },
9
+ extend: customElementForwardEvents,
10
+ }}
11
+ />
2
12
 
3
13
  <script lang="ts">
4
14
  import { customElementForwardEvents } from '../../utils';
@@ -6,6 +16,7 @@
6
16
  * A text area is an input designed for multi-line text entry, allowing users to input longer content compared to a standard text input. It is commonly used for comments, feedback, descriptions, and messaging. Text areas can be resizable or fixed in height, depending on the context, and often include placeholder text, character limits, and validation messages to guide users.
7
17
  */
8
18
  interface Props {
19
+ [key: string]: any;
9
20
  /**
10
21
  * A unique identifier for the textarea, used to associate the label with the form element.
11
22
  */
@@ -59,6 +70,7 @@
59
70
  minlength,
60
71
  maxlength,
61
72
  readonly,
73
+ ...attrs
62
74
  }: Props = $props();
63
75
  </script>
64
76
 
@@ -74,6 +86,7 @@
74
86
  {minlength}
75
87
  {maxlength}
76
88
  {readonly}
89
+ {...attrs}
77
90
  ></textarea>
78
91
 
79
92
  <style>/**
@@ -2,6 +2,7 @@
2
2
  * A text area is an input designed for multi-line text entry, allowing users to input longer content compared to a standard text input. It is commonly used for comments, feedback, descriptions, and messaging. Text areas can be resizable or fixed in height, depending on the context, and often include placeholder text, character limits, and validation messages to guide users.
3
3
  */
4
4
  interface Props {
5
+ [key: string]: any;
5
6
  /**
6
7
  * A unique identifier for the textarea, used to associate the label with the form element.
7
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/textarea/Textarea.svelte.ts"],"names":[],"mappings":"AAKE;;GAEG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AA2BH,QAAA,MAAM,QAAQ,2CAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Textarea.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/textarea/Textarea.svelte.ts"],"names":[],"mappings":"AAKE;;GAEG;AACH,UAAU,KAAK;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;IACnB;;OAEG;IACH,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAoCH,QAAA,MAAM,QAAQ,2CAAwC,CAAC;AACvD,KAAK,QAAQ,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC;AAC5C,eAAe,QAAQ,CAAC"}
@@ -17,6 +17,7 @@ A text input is a single-line input that allows users to enter and edit short te
17
17
  | `readonly` | If `true`, the input is read-only (cannot be edited). | `boolean` | |
18
18
  | `isclearable` | If `true`, a clear button will appear when the input has a value. | `boolean` | |
19
19
  | `clearlabel` | The label text for the clear button. | `string` | `Clear content` |
20
+ | `icon` | Use this snippet to insert an icon in the input. | `Snippet` | |
20
21
 
21
22
  ## Slots
22
23