@mozaic-ds/web-components 1.0.0-beta.6 → 1.0.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 (482) hide show
  1. package/README.md +36 -68
  2. package/dist/Cross20.js +1 -1
  3. package/dist/Cross20.js.map +1 -1
  4. package/dist/Cross24.js +1 -1
  5. package/dist/Cross24.js.map +1 -1
  6. package/dist/CrossCircleFilled24.js +1 -1
  7. package/dist/CrossCircleFilled24.js.map +1 -1
  8. package/dist/attributes.js +1 -1
  9. package/dist/attributes.js.map +1 -1
  10. package/dist/bundle.d.ts +24 -23
  11. package/dist/bundle.d.ts.map +1 -1
  12. package/dist/bundle.js +24 -23
  13. package/dist/components/avatar/Avatar.js +2 -5
  14. package/dist/components/avatar/Avatar.js.map +1 -1
  15. package/dist/components/avatar/Avatar.spec.js +17 -0
  16. package/dist/components/avatar/Avatar.stories.d.ts.map +1 -1
  17. package/dist/components/avatar/Avatar.stories.js +3 -29
  18. package/dist/components/avatar/Avatar.svelte +9 -10
  19. package/dist/components/avatar/Avatar.svelte.d.ts +2 -0
  20. package/dist/components/avatar/Avatar.svelte.d.ts.map +1 -1
  21. package/dist/components/avatar/README.md +16 -0
  22. package/dist/components/breadcrumb/Breadcrumb.js +6 -9
  23. package/dist/components/breadcrumb/Breadcrumb.js.map +1 -1
  24. package/dist/components/breadcrumb/Breadcrumb.spec.js +42 -0
  25. package/dist/components/breadcrumb/Breadcrumb.stories.d.ts.map +1 -1
  26. package/dist/components/breadcrumb/Breadcrumb.stories.js +6 -35
  27. package/dist/components/breadcrumb/Breadcrumb.svelte +26 -34
  28. package/dist/components/breadcrumb/Breadcrumb.svelte.d.ts.map +1 -1
  29. package/dist/components/breadcrumb/README.md +11 -0
  30. package/dist/components/button/Button.js +3 -6
  31. package/dist/components/button/Button.js.map +1 -1
  32. package/dist/components/button/Button.spec.js +74 -0
  33. package/dist/components/button/Button.stories.d.ts +9 -13
  34. package/dist/components/button/Button.stories.d.ts.map +1 -1
  35. package/dist/components/button/Button.stories.js +46 -146
  36. package/dist/components/button/Button.svelte +186 -168
  37. package/dist/components/button/Button.svelte.d.ts +36 -8
  38. package/dist/components/button/Button.svelte.d.ts.map +1 -1
  39. package/dist/components/button/README.md +26 -0
  40. package/dist/components/callout/Callout.js +2 -5
  41. package/dist/components/callout/Callout.js.map +1 -1
  42. package/dist/components/callout/Callout.spec.js +33 -0
  43. package/dist/components/callout/Callout.stories.d.ts.map +1 -1
  44. package/dist/components/callout/Callout.stories.js +2 -55
  45. package/dist/components/callout/Callout.svelte +15 -14
  46. package/dist/components/callout/Callout.svelte.d.ts +4 -0
  47. package/dist/components/callout/Callout.svelte.d.ts.map +1 -1
  48. package/dist/components/callout/README.md +20 -0
  49. package/dist/components/checkbox/Checkbox.js +3 -6
  50. package/dist/components/checkbox/Checkbox.js.map +1 -1
  51. package/dist/components/checkbox/Checkbox.spec.js +70 -0
  52. package/dist/components/checkbox/Checkbox.stories.d.ts +11 -16
  53. package/dist/components/checkbox/Checkbox.stories.d.ts.map +1 -1
  54. package/dist/components/checkbox/Checkbox.stories.js +67 -124
  55. package/dist/components/checkbox/Checkbox.svelte +75 -58
  56. package/dist/components/checkbox/Checkbox.svelte.d.ts +31 -6
  57. package/dist/components/checkbox/Checkbox.svelte.d.ts.map +1 -1
  58. package/dist/components/checkbox/README.md +17 -0
  59. package/dist/components/checkboxgroup/CheckboxGroup.js +4 -7
  60. package/dist/components/checkboxgroup/CheckboxGroup.js.map +1 -1
  61. package/dist/components/checkboxgroup/CheckboxGroup.spec.js +113 -0
  62. package/dist/components/checkboxgroup/CheckboxGroup.stories.d.ts +5 -13
  63. package/dist/components/checkboxgroup/CheckboxGroup.stories.d.ts.map +1 -1
  64. package/dist/components/checkboxgroup/CheckboxGroup.stories.js +56 -140
  65. package/dist/components/checkboxgroup/CheckboxGroup.svelte +89 -81
  66. package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts +30 -6
  67. package/dist/components/checkboxgroup/CheckboxGroup.svelte.d.ts.map +1 -1
  68. package/dist/components/checkboxgroup/README.md +14 -0
  69. package/dist/components/circularprogressbar/CircularProgressbar.js +4 -7
  70. package/dist/components/circularprogressbar/CircularProgressbar.js.map +1 -1
  71. package/dist/components/circularprogressbar/CircularProgressbar.spec.js +74 -0
  72. package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts +6 -6
  73. package/dist/components/circularprogressbar/CircularProgressbar.stories.d.ts.map +1 -1
  74. package/dist/components/circularprogressbar/CircularProgressbar.stories.js +29 -68
  75. package/dist/components/circularprogressbar/CircularProgressbar.svelte +46 -30
  76. package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts +18 -0
  77. package/dist/components/circularprogressbar/CircularProgressbar.svelte.d.ts.map +1 -1
  78. package/dist/components/circularprogressbar/README.md +14 -0
  79. package/dist/components/datepicker/Datepicker.js +3 -6
  80. package/dist/components/datepicker/Datepicker.js.map +1 -1
  81. package/dist/components/datepicker/Datepicker.spec.js +95 -0
  82. package/dist/components/datepicker/Datepicker.stories.d.ts +7 -6
  83. package/dist/components/datepicker/Datepicker.stories.d.ts.map +1 -1
  84. package/dist/components/datepicker/Datepicker.stories.js +58 -75
  85. package/dist/components/datepicker/Datepicker.svelte +103 -79
  86. package/dist/components/datepicker/Datepicker.svelte.d.ts +30 -1
  87. package/dist/components/datepicker/Datepicker.svelte.d.ts.map +1 -1
  88. package/dist/components/datepicker/README.md +18 -0
  89. package/dist/components/drawer/Drawer.js +12 -15
  90. package/dist/components/drawer/Drawer.js.map +1 -1
  91. package/dist/components/drawer/Drawer.spec.js +101 -0
  92. package/dist/components/drawer/Drawer.stories.d.ts +29 -8
  93. package/dist/components/drawer/Drawer.stories.d.ts.map +1 -1
  94. package/dist/components/drawer/Drawer.stories.js +86 -87
  95. package/dist/components/drawer/Drawer.svelte +185 -161
  96. package/dist/components/drawer/Drawer.svelte.d.ts +26 -3
  97. package/dist/components/drawer/Drawer.svelte.d.ts.map +1 -1
  98. package/dist/components/drawer/README.md +29 -0
  99. package/dist/components/field/Field.js +3 -6
  100. package/dist/components/field/Field.js.map +1 -1
  101. package/dist/components/field/Field.spec.js +51 -0
  102. package/dist/components/field/Field.stories.d.ts +9 -15
  103. package/dist/components/field/Field.stories.d.ts.map +1 -1
  104. package/dist/components/field/Field.stories.js +86 -142
  105. package/dist/components/field/Field.svelte +63 -30
  106. package/dist/components/field/Field.svelte.d.ts +38 -7
  107. package/dist/components/field/Field.svelte.d.ts.map +1 -1
  108. package/dist/components/field/README.md +24 -0
  109. package/dist/components/flag/Flag.js +2 -5
  110. package/dist/components/flag/Flag.js.map +1 -1
  111. package/dist/components/flag/Flag.spec.js +30 -0
  112. package/dist/components/flag/Flag.stories.d.ts +8 -18
  113. package/dist/components/flag/Flag.stories.d.ts.map +1 -1
  114. package/dist/components/flag/Flag.stories.js +28 -106
  115. package/dist/components/flag/Flag.svelte +23 -24
  116. package/dist/components/flag/Flag.svelte.d.ts +10 -28
  117. package/dist/components/flag/Flag.svelte.d.ts.map +1 -1
  118. package/dist/components/flag/README.md +11 -0
  119. package/dist/components/iconbutton/IconButton.js +2 -5
  120. package/dist/components/iconbutton/IconButton.js.map +1 -1
  121. package/dist/components/iconbutton/IconButton.stories.d.ts +11 -11
  122. package/dist/components/iconbutton/IconButton.stories.d.ts.map +1 -1
  123. package/dist/components/iconbutton/IconButton.stories.js +51 -67
  124. package/dist/components/iconbutton/IconButton.svelte +157 -152
  125. package/dist/components/iconbutton/IconButton.svelte.d.ts +28 -7
  126. package/dist/components/iconbutton/IconButton.svelte.d.ts.map +1 -1
  127. package/dist/components/iconbutton/README.md +21 -0
  128. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js +2 -5
  129. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.js.map +1 -1
  130. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.spec.js +28 -0
  131. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts +5 -7
  132. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.d.ts.map +1 -1
  133. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.stories.js +18 -49
  134. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte +19 -12
  135. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts +10 -1
  136. package/dist/components/linearprogressbarbuffer/LinearProgressbarBuffer.svelte.d.ts.map +1 -1
  137. package/dist/components/linearprogressbarbuffer/README.md +11 -0
  138. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js +2 -5
  139. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.js.map +1 -1
  140. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.spec.js +26 -0
  141. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts +4 -5
  142. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.d.ts.map +1 -1
  143. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.stories.js +15 -33
  144. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte +19 -16
  145. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts +6 -0
  146. package/dist/components/linearprogressbarpercentage/LinearProgressbarPercentage.svelte.d.ts.map +1 -1
  147. package/dist/components/linearprogressbarpercentage/README.md +10 -0
  148. package/dist/components/link/Link.js +2 -5
  149. package/dist/components/link/Link.js.map +1 -1
  150. package/dist/components/link/Link.spec.js +51 -0
  151. package/dist/components/link/Link.stories.d.ts +12 -12
  152. package/dist/components/link/Link.stories.d.ts.map +1 -1
  153. package/dist/components/link/Link.stories.js +61 -74
  154. package/dist/components/link/Link.svelte +54 -52
  155. package/dist/components/link/Link.svelte.d.ts +29 -8
  156. package/dist/components/link/Link.svelte.d.ts.map +1 -1
  157. package/dist/components/link/README.md +23 -0
  158. package/dist/components/loader/Loader.js +7 -10
  159. package/dist/components/loader/Loader.js.map +1 -1
  160. package/dist/components/loader/Loader.spec.js +54 -0
  161. package/dist/components/loader/Loader.stories.d.ts +8 -10
  162. package/dist/components/loader/Loader.stories.d.ts.map +1 -1
  163. package/dist/components/loader/Loader.stories.js +27 -43
  164. package/dist/components/loader/Loader.svelte +42 -43
  165. package/dist/components/loader/Loader.svelte.d.ts +14 -3
  166. package/dist/components/loader/Loader.svelte.d.ts.map +1 -1
  167. package/dist/components/loader/README.md +12 -0
  168. package/dist/components/loadingoverlay/LoadingOverlay.js +4 -0
  169. package/dist/components/loadingoverlay/LoadingOverlay.js.map +1 -0
  170. package/dist/components/loadingoverlay/LoadingOverlay.spec.js +38 -0
  171. package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts +7 -0
  172. package/dist/components/loadingoverlay/LoadingOverlay.stories.d.ts.map +1 -0
  173. package/dist/components/loadingoverlay/LoadingOverlay.stories.js +39 -0
  174. package/dist/components/loadingoverlay/LoadingOverlay.svelte +50 -0
  175. package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts +17 -0
  176. package/dist/components/loadingoverlay/LoadingOverlay.svelte.d.ts.map +1 -0
  177. package/dist/components/loadingoverlay/README.md +11 -0
  178. package/dist/components/modal/Modal.js +14 -17
  179. package/dist/components/modal/Modal.js.map +1 -1
  180. package/dist/components/modal/Modal.spec.js +50 -0
  181. package/dist/components/modal/Modal.stories.d.ts +36 -9
  182. package/dist/components/modal/Modal.stories.d.ts.map +1 -1
  183. package/dist/components/modal/Modal.stories.js +54 -83
  184. package/dist/components/modal/Modal.svelte +167 -166
  185. package/dist/components/modal/Modal.svelte.d.ts +22 -5
  186. package/dist/components/modal/Modal.svelte.d.ts.map +1 -1
  187. package/dist/components/modal/README.md +28 -0
  188. package/dist/components/numberbadge/NumberBadge.js +2 -5
  189. package/dist/components/numberbadge/NumberBadge.js.map +1 -1
  190. package/dist/components/numberbadge/NumberBadge.spec.js +28 -0
  191. package/dist/components/numberbadge/NumberBadge.stories.d.ts +9 -13
  192. package/dist/components/numberbadge/NumberBadge.stories.d.ts.map +1 -1
  193. package/dist/components/numberbadge/NumberBadge.stories.js +28 -56
  194. package/dist/components/numberbadge/NumberBadge.svelte +36 -35
  195. package/dist/components/numberbadge/NumberBadge.svelte.d.ts +15 -4
  196. package/dist/components/numberbadge/NumberBadge.svelte.d.ts.map +1 -1
  197. package/dist/components/numberbadge/README.md +12 -0
  198. package/dist/components/overlay/Overlay.js +2 -5
  199. package/dist/components/overlay/Overlay.js.map +1 -1
  200. package/dist/components/overlay/Overlay.spec.js +29 -0
  201. package/dist/components/overlay/Overlay.stories.d.ts +5 -7
  202. package/dist/components/overlay/Overlay.stories.d.ts.map +1 -1
  203. package/dist/components/overlay/Overlay.stories.js +32 -40
  204. package/dist/components/overlay/Overlay.svelte +21 -12
  205. package/dist/components/overlay/Overlay.svelte.d.ts +11 -0
  206. package/dist/components/overlay/Overlay.svelte.d.ts.map +1 -1
  207. package/dist/components/overlay/README.md +17 -0
  208. package/dist/components/pagination/Pagination.js +8 -11
  209. package/dist/components/pagination/Pagination.js.map +1 -1
  210. package/dist/components/pagination/Pagination.spec.js +65 -0
  211. package/dist/components/pagination/Pagination.stories.d.ts +8 -11
  212. package/dist/components/pagination/Pagination.stories.d.ts.map +1 -1
  213. package/dist/components/pagination/Pagination.stories.js +37 -91
  214. package/dist/components/pagination/Pagination.svelte +53 -35
  215. package/dist/components/pagination/Pagination.svelte.d.ts +27 -4
  216. package/dist/components/pagination/Pagination.svelte.d.ts.map +1 -1
  217. package/dist/components/pagination/README.md +16 -0
  218. package/dist/components/passwordinput/PasswordInput.js +4 -9
  219. package/dist/components/passwordinput/PasswordInput.js.map +1 -1
  220. package/dist/components/passwordinput/PasswordInput.spec.js +84 -0
  221. package/dist/components/passwordinput/PasswordInput.stories.d.ts +10 -13
  222. package/dist/components/passwordinput/PasswordInput.stories.d.ts.map +1 -1
  223. package/dist/components/passwordinput/PasswordInput.stories.js +67 -124
  224. package/dist/components/passwordinput/PasswordInput.svelte +424 -60
  225. package/dist/components/passwordinput/PasswordInput.svelte.d.ts +34 -2
  226. package/dist/components/passwordinput/PasswordInput.svelte.d.ts.map +1 -1
  227. package/dist/components/passwordinput/README.md +19 -0
  228. package/dist/components/pincode/Pincode.js +4 -7
  229. package/dist/components/pincode/Pincode.js.map +1 -1
  230. package/dist/components/pincode/Pincode.spec.js +99 -0
  231. package/dist/components/pincode/Pincode.stories.d.ts +9 -13
  232. package/dist/components/pincode/Pincode.stories.d.ts.map +1 -1
  233. package/dist/components/pincode/Pincode.stories.js +62 -127
  234. package/dist/components/pincode/Pincode.svelte +72 -60
  235. package/dist/components/pincode/Pincode.svelte.d.ts +30 -24
  236. package/dist/components/pincode/Pincode.svelte.d.ts.map +1 -1
  237. package/dist/components/pincode/README.md +22 -0
  238. package/dist/components/quantityselector/QuantitySelector.js +3 -7
  239. package/dist/components/quantityselector/QuantitySelector.js.map +1 -1
  240. package/dist/components/quantityselector/QuantitySelector.spec.js +104 -0
  241. package/dist/components/quantityselector/QuantitySelector.stories.d.ts +11 -15
  242. package/dist/components/quantityselector/QuantitySelector.stories.d.ts.map +1 -1
  243. package/dist/components/quantityselector/QuantitySelector.stories.js +77 -145
  244. package/dist/components/quantityselector/QuantitySelector.svelte +136 -112
  245. package/dist/components/quantityselector/QuantitySelector.svelte.d.ts +49 -17
  246. package/dist/components/quantityselector/QuantitySelector.svelte.d.ts.map +1 -1
  247. package/dist/components/quantityselector/README.md +21 -0
  248. package/dist/components/radio/README.md +15 -0
  249. package/dist/components/radio/Radio.js +2 -5
  250. package/dist/components/radio/Radio.js.map +1 -1
  251. package/dist/components/radio/Radio.spec.js +60 -0
  252. package/dist/components/radio/Radio.stories.d.ts +9 -13
  253. package/dist/components/radio/Radio.stories.d.ts.map +1 -1
  254. package/dist/components/radio/Radio.stories.js +54 -70
  255. package/dist/components/radio/Radio.svelte +58 -39
  256. package/dist/components/radio/Radio.svelte.d.ts +27 -5
  257. package/dist/components/radio/Radio.svelte.d.ts.map +1 -1
  258. package/dist/components/radiogroup/README.md +14 -0
  259. package/dist/components/radiogroup/RadioGroup.js +4 -7
  260. package/dist/components/radiogroup/RadioGroup.js.map +1 -1
  261. package/dist/components/radiogroup/RadioGroup.spec.js +65 -0
  262. package/dist/components/radiogroup/RadioGroup.stories.d.ts +5 -12
  263. package/dist/components/radiogroup/RadioGroup.stories.d.ts.map +1 -1
  264. package/dist/components/radiogroup/RadioGroup.stories.js +56 -151
  265. package/dist/components/radiogroup/RadioGroup.svelte +81 -77
  266. package/dist/components/radiogroup/RadioGroup.svelte.d.ts +28 -9
  267. package/dist/components/radiogroup/RadioGroup.svelte.d.ts.map +1 -1
  268. package/dist/components/select/README.md +18 -0
  269. package/dist/components/select/Select.js +3 -6
  270. package/dist/components/select/Select.js.map +1 -1
  271. package/dist/components/select/Select.spec.js +76 -0
  272. package/dist/components/select/Select.stories.d.ts +10 -14
  273. package/dist/components/select/Select.stories.d.ts.map +1 -1
  274. package/dist/components/select/Select.stories.js +87 -92
  275. package/dist/components/select/Select.svelte +77 -67
  276. package/dist/components/select/Select.svelte.d.ts +41 -10
  277. package/dist/components/select/Select.svelte.d.ts.map +1 -1
  278. package/dist/components/statusbadge/README.md +11 -0
  279. package/dist/components/statusbadge/StatusBadge.js +2 -5
  280. package/dist/components/statusbadge/StatusBadge.js.map +1 -1
  281. package/dist/components/statusbadge/StatusBadge.spec.js +31 -0
  282. package/dist/components/statusbadge/StatusBadge.stories.d.ts +9 -12
  283. package/dist/components/statusbadge/StatusBadge.stories.d.ts.map +1 -1
  284. package/dist/components/statusbadge/StatusBadge.stories.js +21 -44
  285. package/dist/components/statusbadge/StatusBadge.svelte +34 -29
  286. package/dist/components/statusbadge/StatusBadge.svelte.d.ts +13 -28
  287. package/dist/components/statusbadge/StatusBadge.svelte.d.ts.map +1 -1
  288. package/dist/components/statusdot/README.md +11 -0
  289. package/dist/components/statusdot/StatusDot.js +2 -5
  290. package/dist/components/statusdot/StatusDot.js.map +1 -1
  291. package/dist/components/statusdot/StatusDot.spec.js +42 -0
  292. package/dist/components/statusdot/StatusDot.stories.d.ts.map +1 -1
  293. package/dist/components/statusdot/StatusDot.stories.js +9 -37
  294. package/dist/components/statusdot/StatusDot.svelte +15 -16
  295. package/dist/components/statusdot/StatusDot.svelte.d.ts +2 -2
  296. package/dist/components/statusdot/StatusDot.svelte.d.ts.map +1 -1
  297. package/dist/components/statusnotification/README.md +25 -0
  298. package/dist/components/statusnotification/StatusNotification.js +3 -6
  299. package/dist/components/statusnotification/StatusNotification.js.map +1 -1
  300. package/dist/components/statusnotification/StatusNotification.spec.js +54 -0
  301. package/dist/components/statusnotification/StatusNotification.stories.d.ts +16 -14
  302. package/dist/components/statusnotification/StatusNotification.stories.d.ts.map +1 -1
  303. package/dist/components/statusnotification/StatusNotification.stories.js +53 -86
  304. package/dist/components/statusnotification/StatusNotification.svelte +186 -187
  305. package/dist/components/statusnotification/StatusNotification.svelte.d.ts +21 -18
  306. package/dist/components/statusnotification/StatusNotification.svelte.d.ts.map +1 -1
  307. package/dist/components/tab/README.md +20 -0
  308. package/dist/components/tab/Tab.js +4 -0
  309. package/dist/components/tab/Tab.js.map +1 -0
  310. package/dist/components/tab/Tab.spec.js +58 -0
  311. package/dist/components/tab/Tab.svelte +154 -0
  312. package/dist/components/{tabs → tab}/Tab.svelte.d.ts +20 -3
  313. package/dist/components/tab/Tab.svelte.d.ts.map +1 -0
  314. package/dist/components/tabs/README.md +18 -0
  315. package/dist/components/tabs/Tabs.js +2 -5
  316. package/dist/components/tabs/Tabs.js.map +1 -1
  317. package/dist/components/tabs/Tabs.spec.js +51 -0
  318. package/dist/components/tabs/Tabs.stories.d.ts +9 -6
  319. package/dist/components/tabs/Tabs.stories.d.ts.map +1 -1
  320. package/dist/components/tabs/Tabs.stories.js +59 -115
  321. package/dist/components/tabs/Tabs.svelte +46 -29
  322. package/dist/components/tabs/Tabs.svelte.d.ts +21 -7
  323. package/dist/components/tabs/Tabs.svelte.d.ts.map +1 -1
  324. package/dist/components/tags/README.md +9 -0
  325. package/dist/components/tags/Tag.js +2 -5
  326. package/dist/components/tags/Tag.js.map +1 -1
  327. package/dist/components/tags/Tag.svelte +35 -38
  328. package/dist/components/tags/TagContextualised.js +2 -5
  329. package/dist/components/tags/TagContextualised.js.map +1 -1
  330. package/dist/components/tags/TagContextualised.svelte +35 -38
  331. package/dist/components/tags/TagInteractive.js +2 -5
  332. package/dist/components/tags/TagInteractive.js.map +1 -1
  333. package/dist/components/tags/TagInteractive.svelte +35 -38
  334. package/dist/components/tags/TagRemovable.js +2 -5
  335. package/dist/components/tags/TagRemovable.js.map +1 -1
  336. package/dist/components/tags/TagRemovable.svelte +35 -38
  337. package/dist/components/tags/TagSelectable.js +2 -5
  338. package/dist/components/tags/TagSelectable.js.map +1 -1
  339. package/dist/components/tags/TagSelectable.svelte +35 -38
  340. package/dist/components/tags/Tags.stories.d.ts.map +1 -1
  341. package/dist/components/tags/Tags.stories.js +7 -1
  342. package/dist/components/tags/TagsContextualised.stories.d.ts.map +1 -1
  343. package/dist/components/tags/TagsContextualised.stories.js +7 -1
  344. package/dist/components/tags/TagsInteractive.stories.d.ts.map +1 -1
  345. package/dist/components/tags/TagsInteractive.stories.js +7 -1
  346. package/dist/components/tags/TagsRemovable.stories.d.ts.map +1 -1
  347. package/dist/components/tags/TagsRemovable.stories.js +7 -1
  348. package/dist/components/tags/TagsSelectable.stories.d.ts.map +1 -1
  349. package/dist/components/tags/TagsSelectable.stories.js +7 -1
  350. package/dist/components/textarea/README.md +19 -0
  351. package/dist/components/textarea/Textarea.js +2 -8
  352. package/dist/components/textarea/Textarea.js.map +1 -1
  353. package/dist/components/textarea/Textarea.spec.js +67 -0
  354. package/dist/components/textarea/Textarea.stories.d.ts +9 -13
  355. package/dist/components/textarea/Textarea.stories.d.ts.map +1 -1
  356. package/dist/components/textarea/Textarea.stories.js +61 -92
  357. package/dist/components/textarea/Textarea.svelte +70 -117
  358. package/dist/components/textarea/Textarea.svelte.d.ts +43 -13
  359. package/dist/components/textarea/Textarea.svelte.d.ts.map +1 -1
  360. package/dist/components/textinput/README.md +26 -0
  361. package/dist/components/textinput/Textinput.js +5 -9
  362. package/dist/components/textinput/Textinput.js.map +1 -1
  363. package/dist/components/textinput/Textinput.spec.js +89 -0
  364. package/dist/components/textinput/Textinput.stories.d.ts +11 -12
  365. package/dist/components/textinput/Textinput.stories.d.ts.map +1 -1
  366. package/dist/components/textinput/Textinput.stories.js +78 -137
  367. package/dist/components/textinput/Textinput.svelte +107 -148
  368. package/dist/components/textinput/Textinput.svelte.d.ts +46 -22
  369. package/dist/components/textinput/Textinput.svelte.d.ts.map +1 -1
  370. package/dist/components/toaster/README.md +28 -0
  371. package/dist/components/toaster/Toaster.js +5 -8
  372. package/dist/components/toaster/Toaster.js.map +1 -1
  373. package/dist/components/toaster/Toaster.spec.js +100 -0
  374. package/dist/components/toaster/Toaster.stories.d.ts.map +1 -1
  375. package/dist/components/toaster/Toaster.stories.js +5 -73
  376. package/dist/components/toaster/Toaster.svelte +157 -146
  377. package/dist/components/toaster/Toaster.svelte.d.ts +3 -0
  378. package/dist/components/toaster/Toaster.svelte.d.ts.map +1 -1
  379. package/dist/components/toggle/README.md +15 -0
  380. package/dist/components/toggle/Toggle.js +2 -5
  381. package/dist/components/toggle/Toggle.js.map +1 -1
  382. package/dist/components/toggle/Toggle.spec.js +69 -0
  383. package/dist/components/toggle/Toggle.stories.d.ts +9 -14
  384. package/dist/components/toggle/Toggle.stories.d.ts.map +1 -1
  385. package/dist/components/toggle/Toggle.stories.js +55 -64
  386. package/dist/components/toggle/Toggle.svelte +59 -48
  387. package/dist/components/toggle/Toggle.svelte.d.ts +26 -7
  388. package/dist/components/toggle/Toggle.svelte.d.ts.map +1 -1
  389. package/dist/components/togglegroup/README.md +13 -0
  390. package/dist/components/togglegroup/ToggleGroup.js +3 -6
  391. package/dist/components/togglegroup/ToggleGroup.js.map +1 -1
  392. package/dist/components/togglegroup/ToggleGroup.spec.js +50 -0
  393. package/dist/components/togglegroup/ToggleGroup.stories.d.ts +5 -13
  394. package/dist/components/togglegroup/ToggleGroup.stories.d.ts.map +1 -1
  395. package/dist/components/togglegroup/ToggleGroup.stories.js +56 -104
  396. package/dist/components/togglegroup/ToggleGroup.svelte +91 -97
  397. package/dist/components/togglegroup/ToggleGroup.svelte.d.ts +25 -14
  398. package/dist/components/togglegroup/ToggleGroup.svelte.d.ts.map +1 -1
  399. package/dist/components/tooltip/README.md +19 -0
  400. package/dist/components/tooltip/Tooltip.js +4 -7
  401. package/dist/components/tooltip/Tooltip.js.map +1 -1
  402. package/dist/components/tooltip/Tooltip.spec.js +38 -0
  403. package/dist/components/tooltip/Tooltip.stories.d.ts +6 -7
  404. package/dist/components/tooltip/Tooltip.stories.d.ts.map +1 -1
  405. package/dist/components/tooltip/Tooltip.stories.js +45 -59
  406. package/dist/components/tooltip/Tooltip.svelte +31 -25
  407. package/dist/components/tooltip/Tooltip.svelte.d.ts +17 -0
  408. package/dist/components/tooltip/Tooltip.svelte.d.ts.map +1 -1
  409. package/dist/custom-element-forward-events.js.map +1 -1
  410. package/dist/custom-element.js +3 -3
  411. package/dist/custom-element.js.map +1 -1
  412. package/dist/documentation/Contributing.mdx +1 -1
  413. package/dist/documentation/Introduction.mdx +45 -11
  414. package/dist/documentation/SupportAndOnboarding.mdx +2 -2
  415. package/dist/each.js +1 -1
  416. package/dist/each.js.map +1 -1
  417. package/dist/if.js +1 -1
  418. package/dist/if.js.map +1 -1
  419. package/dist/input.js +1 -1
  420. package/dist/input.js.map +1 -1
  421. package/dist/legacy.js +1 -1
  422. package/dist/legacy.js.map +1 -1
  423. package/dist/main.d.ts +24 -23
  424. package/dist/main.d.ts.map +1 -1
  425. package/dist/main.js +24 -23
  426. package/dist/slot.js +1 -1
  427. package/dist/slot.js.map +1 -1
  428. package/dist/this.js +2 -0
  429. package/dist/this.js.map +1 -0
  430. package/package.json +12 -4
  431. package/dist/components/button/button.types.d.ts +0 -13
  432. package/dist/components/button/button.types.d.ts.map +0 -1
  433. package/dist/components/button/button.types.js +0 -1
  434. package/dist/components/checkboxgroup/checkboxgroup.types.d.ts +0 -9
  435. package/dist/components/checkboxgroup/checkboxgroup.types.d.ts.map +0 -1
  436. package/dist/components/checkboxgroup/checkboxgroup.types.js +0 -1
  437. package/dist/components/link/link.types.d.ts +0 -4
  438. package/dist/components/link/link.types.d.ts.map +0 -1
  439. package/dist/components/link/link.types.js +0 -1
  440. package/dist/components/loader/loader.types.d.ts +0 -3
  441. package/dist/components/loader/loader.types.d.ts.map +0 -1
  442. package/dist/components/loader/loader.types.js +0 -1
  443. package/dist/components/numberbadge/NumberBadge.types.d.ts +0 -3
  444. package/dist/components/numberbadge/NumberBadge.types.d.ts.map +0 -1
  445. package/dist/components/numberbadge/NumberBadge.types.js +0 -1
  446. package/dist/components/overlayloader/OverlayLoader.js +0 -30
  447. package/dist/components/overlayloader/OverlayLoader.js.map +0 -1
  448. package/dist/components/overlayloader/OverlayLoader.stories.d.ts +0 -8
  449. package/dist/components/overlayloader/OverlayLoader.stories.d.ts.map +0 -1
  450. package/dist/components/overlayloader/OverlayLoader.stories.js +0 -50
  451. package/dist/components/overlayloader/OverlayLoader.svelte +0 -159
  452. package/dist/components/overlayloader/OverlayLoader.svelte.d.ts +0 -9
  453. package/dist/components/overlayloader/OverlayLoader.svelte.d.ts.map +0 -1
  454. package/dist/components/quantityselector/quantitySelector.types.d.ts +0 -2
  455. package/dist/components/quantityselector/quantitySelector.types.d.ts.map +0 -1
  456. package/dist/components/quantityselector/quantitySelector.types.js +0 -1
  457. package/dist/components/radiogroup/radioGroup.types.d.ts +0 -9
  458. package/dist/components/radiogroup/radioGroup.types.d.ts.map +0 -1
  459. package/dist/components/radiogroup/radioGroup.types.js +0 -1
  460. package/dist/components/select/select.types.d.ts +0 -9
  461. package/dist/components/select/select.types.d.ts.map +0 -1
  462. package/dist/components/select/select.types.js +0 -1
  463. package/dist/components/statusbadge/StatusBadge.types.d.ts +0 -2
  464. package/dist/components/statusbadge/StatusBadge.types.d.ts.map +0 -1
  465. package/dist/components/statusbadge/StatusBadge.types.js +0 -1
  466. package/dist/components/statusdot/StatusDot.types.d.ts +0 -3
  467. package/dist/components/statusdot/StatusDot.types.d.ts.map +0 -1
  468. package/dist/components/statusdot/StatusDot.types.js +0 -1
  469. package/dist/components/tabs/Tab.js +0 -7
  470. package/dist/components/tabs/Tab.js.map +0 -1
  471. package/dist/components/tabs/Tab.svelte +0 -137
  472. package/dist/components/tabs/Tab.svelte.d.ts.map +0 -1
  473. package/dist/components/textinput/textinput.types.d.ts +0 -3
  474. package/dist/components/textinput/textinput.types.d.ts.map +0 -1
  475. package/dist/components/textinput/textinput.types.js +0 -1
  476. package/dist/components/toggle/toggle.types.d.ts +0 -2
  477. package/dist/components/toggle/toggle.types.d.ts.map +0 -1
  478. package/dist/components/toggle/toggle.types.js +0 -1
  479. package/dist/index-client.js +0 -2
  480. package/dist/index-client.js.map +0 -1
  481. package/dist/snippet.js +0 -2
  482. package/dist/snippet.js.map +0 -1
@@ -10,93 +10,81 @@
10
10
 
11
11
  <script lang="ts">
12
12
  import { customElementForwardEvents } from '../../utils';
13
-
14
- interface ToggleGroupOption {
15
- value: string;
16
- id?: string;
17
- label?: string;
18
- disabled?: boolean;
19
- indeterminate?: boolean;
20
- isinvalid?: boolean;
21
- size?: 's' | 'm';
22
- }
23
-
13
+ /**
14
+ * A toggle is a switch component that allows users to enable or disable a setting, representing a binary state such as on/off or active/inactive. It provides a quick and intuitive way to control preferences or system settings. Toggles are commonly used in settings menus, dark mode switches, and feature activations, offering an alternative to checkboxes for immediate visual feedback.
15
+ */
24
16
  interface Props {
25
- options: Array<ToggleGroupOption>;
17
+ /**
18
+ * The name attribute for the toggle element, typically used for form submission.
19
+ */
26
20
  name: string;
27
- id?: string;
28
- legend?: string;
29
- values?: Array<string | number>;
21
+ /**
22
+ * The current value of the toggle group.
23
+ */
24
+ value?: Array<string>;
25
+ /**
26
+ * List of properties of each toggle of the toggle group.
27
+ */
28
+ options: Array<{
29
+ id: string;
30
+ label: string;
31
+ value: string;
32
+ disabled?: boolean;
33
+ size?: 's' | 'm';
34
+ }>;
35
+ /**
36
+ * If `true`, make the form element of the group inline.
37
+ */
38
+ inline?: boolean;
30
39
  }
31
40
 
32
- const uid = $props.id();
33
- let {
34
- name,
35
- id = uid,
36
- options,
37
- legend,
38
- values = $bindable([]),
39
- }: Props = $props();
40
-
41
- function getOptionId(index: number): string {
42
- return options[index]?.id ?? `${id}-${index}`;
43
- }
41
+ let { name, value = $bindable([]), options, inline }: Props = $props();
44
42
  </script>
45
43
 
46
- <fieldset class="mc-field mc-field--group">
47
- {#if legend}
48
- <legend class="mc-field__legend">
49
- {legend}
50
- </legend>
51
- {/if}
52
- <div {id} class="mc-field__container">
53
- {#each options as opt, index (getOptionId(index))}
54
- <div
55
- class="mc-toggle mc-field__item {!opt.label
56
- ? ' mc-toggle--hide-label'
57
- : ''} {opt.size === 'm' ? ' mc-toggle--m' : ''}"
58
- >
59
- <label class="mc-toggle__container">
60
- <input
61
- class="mc-toggle__input"
62
- id={name}
63
- {name}
64
- type="checkbox"
65
- bind:group={values}
66
- value={opt.value}
67
- disabled={opt.disabled}
68
- />
69
- {#if opt.label}
70
- <span class="mc-toggle__label">{opt.label}</span>
71
- {/if}
72
- </label>
73
- </div>
74
- {/each}
75
- </div>
76
- </fieldset>
44
+ <div class={['mc-field__content', inline && 'mc-field__content--inline']}>
45
+ {#each options as option}
46
+ <div
47
+ class="mc-toggle mc-field__item {!option.label
48
+ ? ' mc-toggle--hide-label'
49
+ : ''} {option.size === 'm' ? ' mc-toggle--m' : ''}"
50
+ >
51
+ <label class="mc-toggle__container">
52
+ <input
53
+ class="mc-toggle__input"
54
+ id={option.id}
55
+ {name}
56
+ type="checkbox"
57
+ bind:group={value}
58
+ value={option.value}
59
+ disabled={option.disabled}
60
+ />
61
+ {#if option.label}
62
+ <span class="mc-toggle__label">{option.label}</span>
63
+ {/if}
64
+ </label>
65
+ </div>
66
+ {/each}
67
+ </div>
77
68
 
78
69
  <style>/**
79
70
  * Do not edit directly, this file was auto-generated.
80
71
  */
81
- /**
82
- * Do not edit directly, this file was auto-generated.
83
- */
84
72
  /* stylelint-disable string-no-newline */
85
73
  .mc-field__label, .mc-field__legend {
86
- font-size: 0.875rem;
87
- line-height: 1.3;
88
- font-weight: 400;
89
- color: #000000;
74
+ font-size: var(--font-size-100, 0.875rem);
75
+ line-height: var(--line-height-s, 1.3);
76
+ font-weight: var(--font-weight-regular, 400);
77
+ color: var(--field-color-label, #000000);
90
78
  }
91
79
  .mc-field__legend {
92
80
  padding-inline: 0;
93
81
  }
94
82
  .mc-field__requirement, .mc-field__help {
95
- font-size: 0.75rem;
96
- line-height: 1.5;
97
- font-weight: 400;
83
+ font-size: var(--font-size-50, 0.75rem);
84
+ line-height: var(--line-height-m, 1.5);
85
+ font-weight: var(--font-weight-regular, 400);
98
86
  vertical-align: top;
99
- color: #666666;
87
+ color: var(--field-color-requirement, #666666);
100
88
  }
101
89
  .mc-field__help {
102
90
  display: block;
@@ -106,8 +94,8 @@
106
94
  margin-top: 0.5rem;
107
95
  }
108
96
  .mc-field__validation-message {
109
- font-size: 0.875rem;
110
- line-height: 1.5;
97
+ font-size: var(--font-size-100, 0.875rem);
98
+ line-height: var(--line-height-m, 1.5);
111
99
  display: inline-flex;
112
100
  gap: 0.25rem;
113
101
  margin-top: 0.25rem;
@@ -118,19 +106,19 @@
118
106
  width: 1.25rem;
119
107
  }
120
108
  .mc-field__validation-message.is-valid {
121
- color: #117f03;
109
+ color: var(--field-color-validation-valid, #117f03);
122
110
  }
123
111
  .mc-field__validation-message.is-valid::before {
124
- 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='%23117f03' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M3.25 10c0-3.72792 3.02208-6.75 6.75-6.75 3.7279 0 6.75 3.02208 6.75 6.75 0 3.7279-3.0221 6.75-6.75 6.75-3.72792 0-6.75-3.0221-6.75-6.75ZM10 1.75c-4.55635 0-8.25 3.69365-8.25 8.25 0 4.5563 3.69365 8.25 8.25 8.25 4.5563 0 8.25-3.6937 8.25-8.25 0-4.55635-3.6937-8.25-8.25-8.25Zm4.2803 6.697c.2929-.2929.2929-.76777 0-1.06066-.2929-.2929-.7677-.2929-1.0606 0L9.16667 11.4393 7.197 9.46967c-.2929-.29289-.76777-.29289-1.06066 0-.2929.29289-.2929.76773 0 1.06063l2.5 2.5c.29289.2929.76776.2929 1.06066 0l4.5833-4.5833Z'/%3E%3C/svg%3E");
112
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--field-color-validation-valid, %23117f03)' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M3.25 10c0-3.72792 3.02208-6.75 6.75-6.75 3.7279 0 6.75 3.02208 6.75 6.75 0 3.7279-3.0221 6.75-6.75 6.75-3.72792 0-6.75-3.0221-6.75-6.75ZM10 1.75c-4.55635 0-8.25 3.69365-8.25 8.25 0 4.5563 3.69365 8.25 8.25 8.25 4.5563 0 8.25-3.6937 8.25-8.25 0-4.55635-3.6937-8.25-8.25-8.25Zm4.2803 6.697c.2929-.2929.2929-.76777 0-1.06066-.2929-.2929-.7677-.2929-1.0606 0L9.16667 11.4393 7.197 9.46967c-.2929-.29289-.76777-.29289-1.06066 0-.2929.29289-.2929.76773 0 1.06063l2.5 2.5c.29289.2929.76776.2929 1.06066 0l4.5833-4.5833Z'/%3E%3C/svg%3E");
125
113
  }
126
114
  .mc-field__validation-message.is-invalid {
127
- color: #c61112;
115
+ color: var(--field-color-validation-invalid, #c61112);
128
116
  }
129
117
  .mc-field__validation-message.is-invalid::before {
130
- 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='%23c61112' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M10 3.25c-3.72792 0-6.75 3.02208-6.75 6.75 0 3.7279 3.02208 6.75 6.75 6.75 3.7279 0 6.75-3.0221 6.75-6.75 0-3.72792-3.0221-6.75-6.75-6.75ZM1.75 10c0-4.55635 3.69365-8.25 8.25-8.25 4.5563 0 8.25 3.69365 8.25 8.25 0 4.5563-3.6937 8.25-8.25 8.25-4.55635 0-8.25-3.6937-8.25-8.25ZM10 5.91667c.4142 0 .75.33578.75.75v4.16663c0 .4142-.3358.75-.75.75-.41421 0-.75-.3358-.75-.75V6.66667c0-.41422.33579-.75.75-.75Zm0 8.25003c.4602 0 .8333-.3731.8333-.8334 0-.4602-.3731-.8333-.8333-.8333-.46024 0-.83333.3731-.83333.8333 0 .4603.37309.8334.83333.8334Z'/%3E%3C/svg%3E");
118
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.25rem' width='1.25rem' fill='var(--field-color-validation-invalid, %23c61112)' viewBox='0 0 20 20'%3E%3Cpath fill-rule='evenodd' d='M10 3.25c-3.72792 0-6.75 3.02208-6.75 6.75 0 3.7279 3.02208 6.75 6.75 6.75 3.7279 0 6.75-3.0221 6.75-6.75 0-3.72792-3.0221-6.75-6.75-6.75ZM1.75 10c0-4.55635 3.69365-8.25 8.25-8.25 4.5563 0 8.25 3.69365 8.25 8.25 0 4.5563-3.6937 8.25-8.25 8.25-4.55635 0-8.25-3.6937-8.25-8.25ZM10 5.91667c.4142 0 .75.33578.75.75v4.16663c0 .4142-.3358.75-.75.75-.41421 0-.75-.3358-.75-.75V6.66667c0-.41422.33579-.75.75-.75Zm0 8.25003c.4602 0 .8333-.3731.8333-.8334 0-.4602-.3731-.8333-.8333-.8333-.46024 0-.83333.3731-.83333.8333 0 .4603.37309.8334.83333.8334Z'/%3E%3C/svg%3E");
131
119
  }
132
120
  .mc-field__validation-message.is-loading {
133
- color: #666666;
121
+ color: var(--field-color-validation-loading, #666666);
134
122
  }
135
123
  .mc-field--group {
136
124
  border-width: 0;
@@ -167,16 +155,16 @@
167
155
  transition: box-shadow 200ms ease;
168
156
  height: 1.5rem;
169
157
  width: 2.5rem;
170
- background-color: #666666;
171
- border-radius: 1rem;
158
+ background-color: var(--forms-color-background-unchecked, #666666);
159
+ border-radius: var(--radius-l, 1rem);
172
160
  flex-shrink: 0;
173
161
  }
174
162
  .mc-toggle__container::after {
175
163
  height: 1.25rem;
176
164
  width: 1.25rem;
177
- background-color: #ffffff;
178
- 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='%23666666' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.364a.75.75 0 1 0-1.06-1.061L10 8.939 6.364 5.303a.75.75 0 0 0-1.06 1.06L8.94 10l-3.637 3.636a.75.75 0 1 0 1.06 1.06L10 11.062l3.636 3.636a.75.75 0 0 0 1.061-1.06L11.061 10z'/%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");
179
- border-radius: 100%;
165
+ background-color: var(--forms-color-icon-inverse, #ffffff);
166
+ 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(--forms-color-background-unchecked, %23666666)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.364a.75.75 0 1 0-1.06-1.061L10 8.939 6.364 5.303a.75.75 0 0 0-1.06 1.06L8.94 10l-3.637 3.636a.75.75 0 1 0 1.06 1.06L10 11.062l3.636 3.636a.75.75 0 0 0 1.061-1.06L11.061 10z'/%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");
167
+ border-radius: var(--radius-full, 100%);
180
168
  background-position: center;
181
169
  left: 0.375rem;
182
170
  position: absolute;
@@ -194,36 +182,36 @@
194
182
  width: 1px;
195
183
  }
196
184
  .mc-toggle__label {
197
- color: #000000;
198
- font-size: 1rem;
199
- font-weight: 400;
200
- line-height: 1.5;
185
+ color: var(--forms-color-text-default, #000000);
186
+ font-size: var(--font-size-150, 1rem);
187
+ font-weight: var(--font-weight-regular, 400);
188
+ line-height: var(--line-height-m, 1.5);
201
189
  }
202
190
  .mc-toggle:has(:checked) .mc-toggle__container::before {
203
- background-color: #117f03;
191
+ background-color: var(--forms-color-background-checked, #117f03);
204
192
  }
205
193
  .mc-toggle:has(:checked) .mc-toggle__container::after {
206
- 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='%23117f03' 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");
194
+ 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(--forms-color-background-checked, %23117f03)' 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");
207
195
  transform: translate(1rem, -50%);
208
196
  }
209
197
  .mc-toggle:has(:disabled) .mc-toggle__container {
210
198
  cursor: not-allowed;
211
199
  }
212
200
  .mc-toggle:has(:disabled) .mc-toggle__container::before {
213
- background-color: #d9d9d9;
201
+ background-color: var(--forms-color-background-disabled, #d9d9d9);
214
202
  }
215
203
  .mc-toggle:has(:disabled) .mc-toggle__container::after {
216
- background-color: #737373;
217
- 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='%23d9d9d9' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.364a.75.75 0 1 0-1.06-1.061L10 8.939 6.364 5.303a.75.75 0 0 0-1.06 1.06L8.94 10l-3.637 3.636a.75.75 0 1 0 1.06 1.06L10 11.062l3.636 3.636a.75.75 0 0 0 1.061-1.06L11.061 10z'/%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");
204
+ background-color: var(--forms-color-icon-disabled, #737373);
205
+ 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(--forms-color-background-disabled, %23d9d9d9)' viewBox='0 0 20 20'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M14.697 6.364a.75.75 0 1 0-1.06-1.061L10 8.939 6.364 5.303a.75.75 0 0 0-1.06 1.06L8.94 10l-3.637 3.636a.75.75 0 1 0 1.06 1.06L10 11.062l3.636 3.636a.75.75 0 0 0 1.061-1.06L11.061 10z'/%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");
218
206
  }
219
207
  .mc-toggle:has(:disabled) .mc-toggle__label {
220
- color: #737373;
208
+ color: var(--forms-color-text-disabled, #737373);
221
209
  }
222
210
  .mc-toggle:has(:disabled:checked) .mc-toggle__container::after {
223
- 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='%23d9d9d9' 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");
211
+ 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(--forms-color-background-disabled, %23d9d9d9)' 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");
224
212
  }
225
213
  .mc-toggle:has(:focus-visible) .mc-toggle__container::before {
226
- box-shadow: 0 0 0 0.125rem var(--focus-color-mid, #ffffff), 0 0 0 0.25rem var(--focus-color-outer, #000000);
214
+ 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));
227
215
  outline: 0.125rem solid transparent;
228
216
  outline-offset: 0.125rem;
229
217
  }
@@ -234,18 +222,18 @@
234
222
  .mc-toggle--m .mc-toggle__container::after {
235
223
  height: 1.5rem;
236
224
  width: 1.5rem;
237
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='%23666666' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.707a1 1 0 0 0-1.414-1.414L12 10.586 7.707 6.293a1 1 0 0 0-1.414 1.414L10.586 12l-4.293 4.293a1 1 0 1 0 1.414 1.414L12 13.414l4.293 4.293a1 1 0 0 0 1.414-1.414L13.414 12z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
225
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-unchecked, %23666666)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.707a1 1 0 0 0-1.414-1.414L12 10.586 7.707 6.293a1 1 0 0 0-1.414 1.414L10.586 12l-4.293 4.293a1 1 0 1 0 1.414 1.414L12 13.414l4.293 4.293a1 1 0 0 0 1.414-1.414L13.414 12z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
238
226
  left: 0.5rem;
239
227
  }
240
228
  .mc-toggle--m:has(:checked) .mc-toggle__container::after {
241
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='%23117f03' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.793a1 1 0 0 1 0 1.414l-7 7a1 1 0 0 1-1.414 0l-3-3a1 1 0 1 1 1.414-1.414L10 14.086l6.293-6.293a1 1 0 0 1 1.414 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
229
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-checked, %23117f03)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.793a1 1 0 0 1 0 1.414l-7 7a1 1 0 0 1-1.414 0l-3-3a1 1 0 1 1 1.414-1.414L10 14.086l6.293-6.293a1 1 0 0 1 1.414 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
242
230
  transform: translate(1.5rem, -50%);
243
231
  }
244
232
  .mc-toggle--m:has(:disabled) .mc-toggle__container::after {
245
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='%23d9d9d9' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.707a1 1 0 0 0-1.414-1.414L12 10.586 7.707 6.293a1 1 0 0 0-1.414 1.414L10.586 12l-4.293 4.293a1 1 0 1 0 1.414 1.414L12 13.414l4.293 4.293a1 1 0 0 0 1.414-1.414L13.414 12z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
233
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-disabled, %23d9d9d9)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.707a1 1 0 0 0-1.414-1.414L12 10.586 7.707 6.293a1 1 0 0 0-1.414 1.414L10.586 12l-4.293 4.293a1 1 0 1 0 1.414 1.414L12 13.414l4.293 4.293a1 1 0 0 0 1.414-1.414L13.414 12z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
246
234
  }
247
235
  .mc-toggle--m:has(:disabled:checked) .mc-toggle__container::after {
248
- background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='%23d9d9d9' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.793a1 1 0 0 1 0 1.414l-7 7a1 1 0 0 1-1.414 0l-3-3a1 1 0 1 1 1.414-1.414L10 14.086l6.293-6.293a1 1 0 0 1 1.414 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
236
+ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='1.5rem' width='1.5rem' fill='var(--forms-color-background-disabled, %23d9d9d9)' viewBox='0 0 24 24'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill-rule='evenodd' d='M17.707 7.793a1 1 0 0 1 0 1.414l-7 7a1 1 0 0 1-1.414 0l-3-3a1 1 0 1 1 1.414-1.414L10 14.086l6.293-6.293a1 1 0 0 1 1.414 0'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 0h24v24H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
249
237
  }
250
238
  .mc-toggle--hide-label .mc-toggle__label {
251
239
  clip-path: inset(100%);
@@ -256,4 +244,10 @@
256
244
  white-space: nowrap;
257
245
  padding: 0;
258
246
  width: 1px;
247
+ }
248
+
249
+ .mc-field__content:where(.mc-field__content--inline) {
250
+ display: flex;
251
+ flex-flow: row wrap;
252
+ gap: 0.25rem 1rem;
259
253
  }</style>
@@ -1,20 +1,31 @@
1
- interface ToggleGroupOption {
2
- value: string;
3
- id?: string;
4
- label?: string;
5
- disabled?: boolean;
6
- indeterminate?: boolean;
7
- isinvalid?: boolean;
8
- size?: 's' | 'm';
9
- }
1
+ /**
2
+ * A toggle is a switch component that allows users to enable or disable a setting, representing a binary state such as on/off or active/inactive. It provides a quick and intuitive way to control preferences or system settings. Toggles are commonly used in settings menus, dark mode switches, and feature activations, offering an alternative to checkboxes for immediate visual feedback.
3
+ */
10
4
  interface Props {
11
- options: Array<ToggleGroupOption>;
5
+ /**
6
+ * The name attribute for the toggle element, typically used for form submission.
7
+ */
12
8
  name: string;
13
- id?: string;
14
- legend?: string;
15
- values?: Array<string | number>;
9
+ /**
10
+ * The current value of the toggle group.
11
+ */
12
+ value?: Array<string>;
13
+ /**
14
+ * List of properties of each toggle of the toggle group.
15
+ */
16
+ options: Array<{
17
+ id: string;
18
+ label: string;
19
+ value: string;
20
+ disabled?: boolean;
21
+ size?: 's' | 'm';
22
+ }>;
23
+ /**
24
+ * If `true`, make the form element of the group inline.
25
+ */
26
+ inline?: boolean;
16
27
  }
17
- declare const ToggleGroup: import("svelte").Component<Props, {}, "values">;
28
+ declare const ToggleGroup: import("svelte").Component<Props, {}, "value">;
18
29
  type ToggleGroup = ReturnType<typeof ToggleGroup>;
19
30
  export default ToggleGroup;
20
31
  //# sourceMappingURL=ToggleGroup.svelte.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroup.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/togglegroup/ToggleGroup.svelte.ts"],"names":[],"mappings":"AAME,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;CAClB;AAED,UAAU,KAAK;IACb,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CACjC;AAsDH,QAAA,MAAM,WAAW,iDAAwC,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"ToggleGroup.svelte.d.ts","sourceRoot":"","sources":["../../../src/components/togglegroup/ToggleGroup.svelte.ts"],"names":[],"mappings":"AAKE;;GAEG;AACH,UAAU,KAAK;IACb;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB;;OAEG;IACH,OAAO,EAAE,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;KAClB,CAAC,CAAC;IACH;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAmCH,QAAA,MAAM,WAAW,gDAAwC,CAAC;AAC1D,KAAK,WAAW,GAAG,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;AAClD,eAAe,WAAW,CAAC"}
@@ -0,0 +1,19 @@
1
+ # `m-tooltip`
2
+
3
+ A tooltip is a small, contextual message that appears when users hover over, focus on, or tap an element, providing additional information or guidance without cluttering the interface. Tooltips are commonly used to explain icons, abbreviations, or complex actions. They typically disappear automatically when the user moves away from the trigger element.
4
+
5
+ ## Props
6
+
7
+ | Name | Description | Type | Default |
8
+ |------|-------------|------|---------|
9
+ | `id*` | A unique identifier for the tooltip, used to describe the tooltip. | `string` | |
10
+ | `text*` | Content of the tooltip. | `string` | |
11
+ | `position` | Determines the position of the tooltip. | `'top'` `'bottom'` `'left'` `'right'` | `top` |
12
+ | `pointer` | If `true`, the tooltip display a pointer. | `boolean` | `true` |
13
+
14
+ ## Slots
15
+
16
+ | Name | Description |
17
+ |------|-------------|
18
+ | `default` | The tooltip will point to the content of the slot. |
19
+
@@ -1,9 +1,6 @@
1
- import{c as f,p as _,a as z,b as i,f as b,d as x,s as g,r as d,t as u,e as w,g as y,h as E,i as C,j as n}from"../../custom-element.js";import{s as B}from"../../slot.js";import{s as h}from"../../attributes.js";var D=b('<div><!> <span class="mc-tooltip__content svelte-zvx9k5" role="tooltip"> </span></div>');const M={hash:"svelte-zvx9k5",code:`/**
1
+ import{c as z,p as _,a as b,b as s,f as g,d as m,s as u,r as d,t as w,e as x,g as k,h as E,i as C,j as B,k as l}from"../../custom-element.js";import{s as M}from"../../slot.js";import{s as h}from"../../attributes.js";var j=g('<div><!> <span class="mc-tooltip__content svelte-11vyzsr" role="tooltip"> </span></div>');const D={hash:"svelte-11vyzsr",code:`/**
2
2
  * Do not edit directly, this file was auto-generated.
3
- */
4
- /**
5
- * Do not edit directly, this file was auto-generated.
6
- */.mc-tooltip.svelte-zvx9k5 {display:inline-flex;position:relative;}.mc-tooltip.svelte-zvx9k5:focus, .mc-tooltip.svelte-zvx9k5:hover {cursor:help;}.mc-tooltip.svelte-zvx9k5:focus .mc-tooltip__content:where(.svelte-zvx9k5), .mc-tooltip.svelte-zvx9k5:hover .mc-tooltip__content:where(.svelte-zvx9k5) {visibility:visible;}.mc-tooltip__content.svelte-zvx9k5 {font-size:0.875rem;border-radius:0.25rem;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;align-items:center;max-width:16rem;min-width:4rem;background-color:#242938;box-sizing:border-box;color:#ffffff;position:absolute;text-align:center;visibility:hidden;z-index:var(--tooltip-z-index, 1);border:1px solid #636d88;word-break:break-all;padding:0.375rem 0.5rem;}
7
- @supports (width: max-content) {.mc-tooltip__content.svelte-zvx9k5 {width:max-content;}
8
- }.mc-tooltip__content.svelte-zvx9k5::before {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='0.5rem' width='0.5rem' viewBox='0 0 8 8'%3E%3Cpath fill='%23636d88' d='M1.79 3.11l6.21-3.11v8l-6.21-3.11a1 1 0 0 1-.45-1.34 1 1 0 0 1 .45-.44z'/%3E%3C/svg%3E");background-color:transparent;background-repeat:no-repeat;background-size:0.625rem;content:"";height:0.625rem;position:absolute;width:0.625rem;}.mc-tooltip__content.svelte-zvx9k5::after {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='0.5rem' width='0.5rem' viewBox='0 0 8 8'%3E%3Cpath fill='%23242938' d='M1.79 3.11l6.21-3.11v8l-6.21-3.11a1 1 0 0 1-.45-1.34 1 1 0 0 1 .45-.44z'/%3E%3C/svg%3E");background-color:transparent;background-repeat:no-repeat;background-size:0.5rem;content:"";height:0.5rem;position:absolute;width:0.5rem;}.mc-tooltip--top.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5) {top:0;left:50%;transform:translate(-50%, calc(-100% - 1rem));}.mc-tooltip--top.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::after, .mc-tooltip--top.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {bottom:0;left:50%;transform:translate(-50%, 100%) rotate(-90deg);}.mc-tooltip--top.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {bottom:-1px;}.mc-tooltip--right.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5) {top:50%;right:0;transform:translate(calc(100% + 1rem), -50%);}.mc-tooltip--right.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::after, .mc-tooltip--right.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {top:50%;left:0;transform:translate(-99%, -50%);}.mc-tooltip--right.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {left:-1px;}.mc-tooltip--left.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5) {left:0;top:50%;transform:translate(calc(-100% - 1rem), -50%);}.mc-tooltip--left.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::after, .mc-tooltip--left.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {top:50%;right:0;transform:translate(99%, -50%) rotate(180deg);}.mc-tooltip--left.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {right:-1px;}.mc-tooltip--bottom.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5) {bottom:0;left:50%;transform:translate(-50%, calc(100% + 1rem));}.mc-tooltip--bottom.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::after, .mc-tooltip--bottom.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {top:0;left:50%;transform:translate(-50%, -100%) rotate(90deg);}.mc-tooltip--bottom.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {top:-1px;}.mc-tooltip--no-pointer.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::after, .mc-tooltip--no-pointer.svelte-zvx9k5 .mc-tooltip__content:where(.svelte-zvx9k5)::before {background:none;}`};function j(v,e){_(e,!0),z(v,M);let r=i(e,"id",7),s=i(e,"text",7),o=i(e,"position",7,"top"),a=i(e,"pointer",7,!0);var l=D();let p;var m=x(l);B(m,e,"default",{});var c=g(m,2),k=x(c,!0);return d(c),d(l),u(t=>{p=w(l,1,"mc-tooltip svelte-zvx9k5",null,p,t),h(l,"aria-describedby",r()),h(c,"id",r()),y(k,s())},[()=>({"mc-tooltip--no-pointer":!a(),"mc-tooltip--top":o()==="top","mc-tooltip--bottom":o()==="bottom","mc-tooltip--left":o()==="left","mc-tooltip--right":o()==="right"})]),E(v,l),C({get id(){return r()},set id(t){r(t),n()},get text(){return s()},set text(t){s(t),n()},get position(){return o()},set position(t="top"){o(t),n()},get pointer(){return a()},set pointer(t=!0){a(t),n()}})}customElements.define("m-tooltip",f(j,{options:{attribute:"pointer",reflect:!0,type:"Boolean"},id:{},text:{},position:{},pointer:{}},["default"],[],!0));
3
+ */.mc-tooltip.svelte-11vyzsr {display:inline-flex;position:relative;}.mc-tooltip.svelte-11vyzsr:focus, .mc-tooltip.svelte-11vyzsr:hover {cursor:help;}.mc-tooltip.svelte-11vyzsr:focus .mc-tooltip__content:where(.svelte-11vyzsr), .mc-tooltip.svelte-11vyzsr:hover .mc-tooltip__content:where(.svelte-11vyzsr) {visibility:visible;}.mc-tooltip__content.svelte-11vyzsr {font-size:var(--font-size-100, 0.875rem);border-radius:var(--radius-s, 0.25rem);line-height:var(--line-height-s, 1.3);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;align-items:center;max-width:16rem;min-width:4rem;background-color:var(--tooltip-color-background, #242938);box-sizing:border-box;color:var(--tooltip-color-text, #ffffff);position:absolute;text-align:center;visibility:hidden;z-index:var(--tooltip-z-index, 1);border:var(--border-s, 1px) solid var(--tooltip-color-border, #636d88);word-break:break-all;padding:0.375rem 0.5rem;}
4
+ @supports (width: max-content) {.mc-tooltip__content.svelte-11vyzsr {width:max-content;}
5
+ }.mc-tooltip__content.svelte-11vyzsr::before {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='0.5rem' width='0.5rem' viewBox='0 0 8 8'%3E%3Cpath fill='var(--tooltip-color-border, %23636d88)' d='M1.79 3.11l6.21-3.11v8l-6.21-3.11a1 1 0 0 1-.45-1.34 1 1 0 0 1 .45-.44z'/%3E%3C/svg%3E");background-color:transparent;background-repeat:no-repeat;background-size:0.625rem;content:"";height:0.625rem;position:absolute;width:0.625rem;}.mc-tooltip__content.svelte-11vyzsr::after {background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' height='0.5rem' width='0.5rem' viewBox='0 0 8 8'%3E%3Cpath fill='var(--tooltip-color-background, %23242938)' d='M1.79 3.11l6.21-3.11v8l-6.21-3.11a1 1 0 0 1-.45-1.34 1 1 0 0 1 .45-.44z'/%3E%3C/svg%3E");background-color:transparent;background-repeat:no-repeat;background-size:0.5rem;content:"";height:0.5rem;position:absolute;width:0.5rem;}.mc-tooltip--top.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr) {top:0;left:50%;transform:translate(-50%, calc(-100% - 1rem));}.mc-tooltip--top.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::after, .mc-tooltip--top.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {bottom:0;left:50%;transform:translate(-50%, 100%) rotate(-90deg);}.mc-tooltip--top.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {bottom:-1px;}.mc-tooltip--right.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr) {top:50%;right:0;transform:translate(calc(100% + 1rem), -50%);}.mc-tooltip--right.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::after, .mc-tooltip--right.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {top:50%;left:0;transform:translate(-99%, -50%);}.mc-tooltip--right.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {left:-1px;}.mc-tooltip--left.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr) {left:0;top:50%;transform:translate(calc(-100% - 1rem), -50%);}.mc-tooltip--left.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::after, .mc-tooltip--left.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {top:50%;right:0;transform:translate(99%, -50%) rotate(180deg);}.mc-tooltip--left.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {right:-1px;}.mc-tooltip--bottom.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr) {bottom:0;left:50%;transform:translate(-50%, calc(100% + 1rem));}.mc-tooltip--bottom.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::after, .mc-tooltip--bottom.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {top:0;left:50%;transform:translate(-50%, -100%) rotate(90deg);}.mc-tooltip--bottom.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {top:-1px;}.mc-tooltip--no-pointer.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::after, .mc-tooltip--no-pointer.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr)::before {background:none;}.mc-tooltip--standalone.svelte-11vyzsr {cursor:help;}.mc-tooltip--standalone.svelte-11vyzsr .mc-tooltip__content:where(.svelte-11vyzsr) {visibility:visible;position:relative;transform:none;top:0;left:0;}`};function S(c,e){_(e,!0),b(c,D);let r=s(e,"id",7),i=s(e,"text",7),n=s(e,"position",7,"top"),a=s(e,"pointer",7,!0);var f={get id(){return r()},set id(t){r(t),l()},get text(){return i()},set text(t){i(t),l()},get position(){return n()},set position(t="top"){n(t),l()},get pointer(){return a()},set pointer(t=!0){a(t),l()}},o=j(),p=m(o);M(p,e,"default",{});var v=u(p,2),y=m(v,!0);return d(v),d(o),w(()=>{x(o,1,k(["mc-tooltip",!a()&&"mc-tooltip--no-pointer",`mc-tooltip--${n()}`]),"svelte-11vyzsr"),h(o,"aria-describedby",r()),h(v,"id",r()),E(y,i())}),C(c,o),B(f)}customElements.define("m-tooltip",z(S,{id:{},text:{},position:{},pointer:{}},["default"],[],!0));
9
6
  //# sourceMappingURL=Tooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","sources":["../../../src/components/tooltip/Tooltip.svelte"],"sourcesContent":["<svelte:options\n customElement={{\n tag: 'm-tooltip',\n props: {\n options: { reflect: true, type: 'Boolean', attribute: 'pointer' },\n },\n }}\n/>\n\n<script lang=\"ts\">\n interface Props {\n id: string;\n text: string;\n position?: 'top' | 'bottom' | 'left' | 'right';\n pointer?: boolean;\n }\n\n let { id, text, position = 'top', pointer = true }: Props = $props();\n</script>\n\n<div\n class=\"mc-tooltip\"\n class:mc-tooltip--no-pointer={!pointer}\n class:mc-tooltip--top={position === 'top'}\n class:mc-tooltip--bottom={position === 'bottom'}\n class:mc-tooltip--left={position === 'left'}\n class:mc-tooltip--right={position === 'right'}\n aria-describedby={id}\n>\n <slot />\n <span {id} class=\"mc-tooltip__content\" role=\"tooltip\">\n {text}\n </span>\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tooltip';\n</style>\n"],"names":["id","$.prop","$$props","text","position","pointer"],"mappings":";;;;;;;85FAAA,oBAiBQA,EAAEC,EAAAC,EAAA,KAAA,CAAA,EAAEC,EAAIF,EAAAC,EAAA,OAAA,CAAA,EAAEE,mBAAW,KAAK,EAAEC,kBAAU,EAAI,mKAU9BL,GAAE,oBAIjBG,GAAI,oCATwBE,EAAO,EACf,kBAAAD,EAAQ,IAAK,MACV,qBAAAA,EAAQ,IAAK,SACf,mBAAAA,EAAQ,IAAK,OACZ,oBAAAA,EAAQ,IAAK,sJATX,MAAK,mDAAY,GAAI,YAClD"}
1
+ {"version":3,"file":"Tooltip.js","sources":["../../../src/components/tooltip/Tooltip.svelte"],"sourcesContent":["<svelte:options customElement={{ tag: 'm-tooltip' }} />\n\n<script lang=\"ts\">\n /**\n * A tooltip is a small, contextual message that appears when users hover over, focus on, or tap an element, providing additional information or guidance without cluttering the interface. Tooltips are commonly used to explain icons, abbreviations, or complex actions. They typically disappear automatically when the user moves away from the trigger element.\n *\n * @slot default - The tooltip will point to the content of the slot.\n */\n interface Props {\n /**\n * A unique identifier for the tooltip, used to describe the tooltip.\n */\n id: string;\n /**\n * Content of the tooltip.\n */\n text: string;\n /**\n * Determines the position of the tooltip.\n */\n position?: 'top' | 'bottom' | 'left' | 'right';\n /**\n * If `true`, the tooltip display a pointer.\n */\n pointer?: boolean;\n }\n\n let { id, text, position = 'top', pointer = true }: Props = $props();\n</script>\n\n<div\n class={[\n 'mc-tooltip',\n !pointer && 'mc-tooltip--no-pointer',\n `mc-tooltip--${position}`,\n ]}\n aria-describedby={id}\n>\n <slot />\n <span {id} class=\"mc-tooltip__content\" role=\"tooltip\">\n {text}\n </span>\n</div>\n\n<style lang=\"scss\">\n @use '@mozaic-ds/styles/components/tooltip';\n</style>\n"],"names":["id","$.prop","$$props","text","position","pointer"],"mappings":";;;;6sGAAA,oBA2BQA,EAAEC,EAAAC,EAAA,KAAA,CAAA,EAAEC,EAAIF,EAAAC,EAAA,OAAA,CAAA,EAAEE,mBAAW,KAAK,EAAEC,kBAAU,EAAI,yIAArB,MAAK,mDAAY,GAAI,qGAK9C,aACC,CAAAA,EAAO,GAAI,wCACGD,GAAQ,8CAEPJ,GAAE,oBAIjBG,GAAI,eAZT"}
@@ -0,0 +1,38 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { render } from '@testing-library/svelte';
3
+ import Tooltip from './Tooltip.svelte';
4
+ describe('m-tooltip component', () => {
5
+ it('renders with default props and displays text', () => {
6
+ const { container, getByRole } = render(Tooltip, {
7
+ props: {
8
+ id: 'tooltip-id',
9
+ text: 'This is a tooltip',
10
+ },
11
+ });
12
+ const tooltip = container.querySelector('.mc-tooltip');
13
+ expect(tooltip).toBeTruthy();
14
+ expect(tooltip.classList.contains('mc-tooltip--top')).toBe(true);
15
+ });
16
+ it('applies the correct position class', () => {
17
+ const { container } = render(Tooltip, {
18
+ props: {
19
+ id: 'tooltip-id',
20
+ text: 'Tooltip content',
21
+ position: 'bottom',
22
+ },
23
+ });
24
+ const tooltip = container.querySelector('.mc-tooltip');
25
+ expect(tooltip.classList.contains('mc-tooltip--bottom')).toBe(true);
26
+ });
27
+ it('hides pointer when pointer prop is false', () => {
28
+ const { container } = render(Tooltip, {
29
+ props: {
30
+ id: 'tooltip-id',
31
+ text: 'Tooltip content',
32
+ pointer: false,
33
+ },
34
+ });
35
+ const tooltip = container.querySelector('.mc-tooltip');
36
+ expect(tooltip.classList.contains('mc-tooltip--no-pointer')).toBe(true);
37
+ });
38
+ });
@@ -1,11 +1,10 @@
1
- import type { Meta, StoryObj } from '@storybook/html-vite';
2
- declare const _default: Meta;
3
- export default _default;
1
+ import type { Meta, StoryObj } from '@storybook/web-components-vite';
2
+ declare const meta: Meta;
3
+ export default meta;
4
4
  type Story = StoryObj;
5
5
  export declare const Default: Story;
6
- export declare const NoPointer: Story;
7
- export declare const Top: Story;
8
- export declare const Bottom: Story;
9
- export declare const Left: Story;
6
+ export declare const Pointer: Story;
10
7
  export declare const Right: Story;
8
+ export declare const Left: Story;
9
+ export declare const Bottom: Story;
11
10
  //# sourceMappingURL=Tooltip.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/Tooltip.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;wBAmBtD,IAAI;AAhBT,wBAgBU;AAEV,KAAK,KAAK,GAAG,QAAQ,CAAC;AAqBtB,eAAO,MAAM,OAAO,EAAE,KAarB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAUvB,CAAC;AAEF,eAAO,MAAM,GAAG,EAAE,KAGjB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAGpB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAGlB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAGnB,CAAC"}
1
+ {"version":3,"file":"Tooltip.stories.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/Tooltip.stories.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAKrE,QAAA,MAAM,IAAI,EAAE,IAiCX,CAAC;AACF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC;AAEtB,eAAO,MAAM,OAAO,EAAE,KAAU,CAAC;AAEjC,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,KAInB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,KAIlB,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,KAIpB,CAAC"}
@@ -1,73 +1,59 @@
1
- import { userEvent, within, waitFor, expect } from 'storybook/test';
2
- export default {
1
+ import { html } from 'lit';
2
+ import { ifDefined } from 'lit-html/directives/if-defined.js';
3
+ import { unsafeHTML } from 'lit/directives/unsafe-html.js';
4
+ const meta = {
3
5
  title: 'Overlay/Tooltip',
4
- tags: ['autodocs', 'beta'],
6
+ component: 'm-tooltip',
5
7
  args: {
6
- id: 'tooltip-id',
7
- text: 'Tooltip content',
8
- position: 'top',
9
- pointer: true,
10
- trigger: '<div id="trigger">Hover me</div>',
8
+ id: 'tooltipId',
9
+ text: 'Keep the tooltip text concise.',
10
+ default: 'Tooltip on the top',
11
11
  },
12
12
  argTypes: {
13
- trigger: {
14
- table: { category: 'Slots' },
15
- control: 'text',
13
+ position: {
14
+ control: 'radio',
15
+ options: ['top', 'bottom', 'left', 'right'],
16
+ },
17
+ '--tooltip-z-index': {
18
+ description: 'Customise the z-index of the tooltip',
19
+ control: false,
20
+ table: {
21
+ category: 'Custom Properties',
22
+ type: { summary: 'number' },
23
+ defaultValue: { summary: '1' },
24
+ },
16
25
  },
17
26
  },
18
- };
19
- const Template = (args) => {
20
- const wrapper = document.createElement('div');
21
- wrapper.setAttribute('style', 'padding:3rem 8rem;');
22
- const tooltip = document.createElement('m-tooltip');
23
- tooltip.setAttribute('id', args.id);
24
- tooltip.setAttribute('text', args.text);
25
- if (args.position)
26
- tooltip.setAttribute('position', args.position);
27
- tooltip.pointer = args.pointer;
28
- // Inject slot content (e.g., a button)
29
- const trigger = document.createElement('span');
30
- trigger.innerHTML = args.trigger ?? '<span>Hover me</span>';
31
- tooltip.appendChild(trigger);
32
- wrapper.appendChild(tooltip);
33
- return wrapper;
34
- };
35
- export const Default = {
36
- render: Template,
37
- play: async ({ canvasElement }) => {
38
- const canvas = within(canvasElement);
39
- const tooltipHost = canvasElement.querySelector('m-tooltip');
40
- const button = tooltipHost?.querySelector('div');
41
- const tooltip = tooltipHost?.shadowRoot?.querySelector('.mc-tooltip') ||
42
- tooltipHost?.querySelector('.mc-tooltip');
43
- expect(button).not.toBeNull();
44
- expect(tooltip).not.toBeNull();
45
- },
46
- };
47
- export const NoPointer = {
27
+ render: (args) => html `
28
+ <m-tooltip
29
+ id=${ifDefined(args.id)}
30
+ text=${ifDefined(args.text)}
31
+ position=${ifDefined(args.position)}
32
+ pointer=${ifDefined(args.pointer)}
33
+ >
34
+ ${unsafeHTML(ifDefined(args.default))}
35
+ </m-tooltip>
36
+ `,
37
+ };
38
+ export default meta;
39
+ export const Default = {};
40
+ export const Pointer = {
48
41
  args: {
49
42
  pointer: false,
50
43
  },
51
- render: Template,
52
- play: async ({ canvasElement }) => {
53
- const tooltip = canvasElement.querySelector('m-tooltip');
54
- const el = tooltip?.shadowRoot?.querySelector('.mc-tooltip');
55
- expect(el?.classList.contains('mc-tooltip--no-pointer')).toBe(true);
56
- },
57
- };
58
- export const Top = {
59
- args: { position: 'top' },
60
- render: Template,
61
44
  };
62
- export const Bottom = {
63
- args: { position: 'bottom' },
64
- render: Template,
45
+ export const Right = {
46
+ args: {
47
+ position: 'right',
48
+ },
65
49
  };
66
50
  export const Left = {
67
- args: { position: 'left' },
68
- render: Template,
51
+ args: {
52
+ position: 'left',
53
+ },
69
54
  };
70
- export const Right = {
71
- args: { position: 'right' },
72
- render: Template,
55
+ export const Bottom = {
56
+ args: {
57
+ position: 'bottom',
58
+ },
73
59
  };