@mattilsynet/design 3.3.10 → 3.4.1

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 (191) hide show
  1. package/mtds/_virtual/_rolldown/runtime.js +17 -0
  2. package/mtds/ai/card.stories.tsx +54 -77
  3. package/mtds/ai/layout.mdx +37 -1
  4. package/mtds/ai/layout.stories.tsx +126 -1
  5. package/mtds/ai/print.mdx +1 -1
  6. package/mtds/ai/print.stories.tsx +1 -2
  7. package/mtds/alert/alert.js +16 -11
  8. package/mtds/alert/alert.js.map +1 -1
  9. package/mtds/analytics/analytics.js +118 -118
  10. package/mtds/analytics/analytics.js.map +1 -1
  11. package/mtds/app/app-observer.js +31 -36
  12. package/mtds/app/app-observer.js.map +1 -1
  13. package/mtds/app/app-toggle.js +12 -26
  14. package/mtds/app/app-toggle.js.map +1 -1
  15. package/mtds/app/app-toggle2.js +6 -11
  16. package/mtds/app/app-toggle2.js.map +1 -1
  17. package/mtds/app/app.js +66 -60
  18. package/mtds/app/app.js.map +1 -1
  19. package/mtds/atlas/atlas-element.js +83 -93
  20. package/mtds/atlas/atlas-element.js.map +1 -1
  21. package/mtds/atlas/atlas-marker.js +63 -52
  22. package/mtds/atlas/atlas-marker.js.map +1 -1
  23. package/mtds/atlas/atlas-matgeo.js +67 -61
  24. package/mtds/atlas/atlas-matgeo.js.map +1 -1
  25. package/mtds/atlas/atlas-wms.js +33 -28
  26. package/mtds/atlas/atlas-wms.js.map +1 -1
  27. package/mtds/atlas/atlas.js +6 -38
  28. package/mtds/atlas/atlas.js.map +1 -1
  29. package/mtds/atlas/atlas2.js +39 -0
  30. package/mtds/atlas/atlas2.js.map +1 -0
  31. package/mtds/atlas/cluster.js +759 -1149
  32. package/mtds/atlas/cluster.js.map +1 -1
  33. package/mtds/atlas.iife.js +3 -4
  34. package/mtds/atlas.js +6 -14
  35. package/mtds/avatar/avatar.js +14 -10
  36. package/mtds/avatar/avatar.js.map +1 -1
  37. package/mtds/badge/badge.js +15 -10
  38. package/mtds/badge/badge.js.map +1 -1
  39. package/mtds/breadcrumbs/breadcrumbs.js +15 -19
  40. package/mtds/breadcrumbs/breadcrumbs.js.map +1 -1
  41. package/mtds/button/button.js +18 -20
  42. package/mtds/button/button.js.map +1 -1
  43. package/mtds/card/card.js +22 -15
  44. package/mtds/card/card.js.map +1 -1
  45. package/mtds/chart/chart-axis.js +33 -21
  46. package/mtds/chart/chart-axis.js.map +1 -1
  47. package/mtds/chart/chart-bars.js +23 -21
  48. package/mtds/chart/chart-bars.js.map +1 -1
  49. package/mtds/chart/chart-element.js +94 -88
  50. package/mtds/chart/chart-element.js.map +1 -1
  51. package/mtds/chart/chart-lines.js +35 -37
  52. package/mtds/chart/chart-lines.js.map +1 -1
  53. package/mtds/chart/chart-pies.js +17 -17
  54. package/mtds/chart/chart-pies.js.map +1 -1
  55. package/mtds/chart/chart.js +6 -52
  56. package/mtds/chart/chart.js.map +1 -1
  57. package/mtds/chart/chart2.js +21 -0
  58. package/mtds/chart/chart2.js.map +1 -0
  59. package/mtds/chip/chip.js +15 -11
  60. package/mtds/chip/chip.js.map +1 -1
  61. package/mtds/deprecations.js +76 -158
  62. package/mtds/deprecations.js.map +1 -1
  63. package/mtds/details/details.js +21 -24
  64. package/mtds/details/details.js.map +1 -1
  65. package/mtds/dialog/dialog.js +17 -21
  66. package/mtds/dialog/dialog.js.map +1 -1
  67. package/mtds/divider/divider.js +15 -20
  68. package/mtds/divider/divider.js.map +1 -1
  69. package/mtds/errorsummary/errorsummary.js +14 -16
  70. package/mtds/errorsummary/errorsummary.js.map +1 -1
  71. package/mtds/external/@turf/boolean-point-in-polygon/dist/esm/index.js +22 -25
  72. package/mtds/external/@turf/boolean-point-in-polygon/dist/esm/index.js.map +1 -1
  73. package/mtds/external/@turf/helpers/dist/esm/index.js +21 -24
  74. package/mtds/external/@turf/helpers/dist/esm/index.js.map +1 -1
  75. package/mtds/external/@turf/invariant/dist/esm/index.js +15 -19
  76. package/mtds/external/@turf/invariant/dist/esm/index.js.map +1 -1
  77. package/mtds/external/@u-elements/u-combobox/dist/u-combobox.js +270 -297
  78. package/mtds/external/@u-elements/u-combobox/dist/u-combobox.js.map +1 -1
  79. package/mtds/external/@u-elements/u-details/dist/u-details.js +75 -101
  80. package/mtds/external/@u-elements/u-details/dist/u-details.js.map +1 -1
  81. package/mtds/external/leaflet/dist/leaflet-src.js +4257 -6151
  82. package/mtds/external/leaflet/dist/leaflet-src.js.map +1 -1
  83. package/mtds/external/leaflet/dist/leaflet.css.js +5 -606
  84. package/mtds/external/leaflet/dist/leaflet.css.js.map +1 -1
  85. package/mtds/external/point-in-polygon-hao/dist/esm/index.js +24 -25
  86. package/mtds/external/point-in-polygon-hao/dist/esm/index.js.map +1 -1
  87. package/mtds/external/robust-predicates/esm/incircle.js +5 -0
  88. package/mtds/external/robust-predicates/esm/incircle.js.map +1 -0
  89. package/mtds/external/robust-predicates/esm/insphere.js +5 -0
  90. package/mtds/external/robust-predicates/esm/insphere.js.map +1 -0
  91. package/mtds/external/robust-predicates/esm/orient2d.js +20 -22
  92. package/mtds/external/robust-predicates/esm/orient2d.js.map +1 -1
  93. package/mtds/external/robust-predicates/esm/orient3d.js +5 -0
  94. package/mtds/external/robust-predicates/esm/orient3d.js.map +1 -0
  95. package/mtds/external/robust-predicates/esm/util.js +20 -28
  96. package/mtds/external/robust-predicates/esm/util.js.map +1 -1
  97. package/mtds/external/robust-predicates/index.js +5 -0
  98. package/mtds/field/field.js +167 -214
  99. package/mtds/field/field.js.map +1 -1
  100. package/mtds/fieldset/fieldset.js +32 -30
  101. package/mtds/fieldset/fieldset.js.map +1 -1
  102. package/mtds/fileupload/fileupload.js +16 -13
  103. package/mtds/fileupload/fileupload.js.map +1 -1
  104. package/mtds/helptext/helptext.js +25 -27
  105. package/mtds/helptext/helptext.js.map +1 -1
  106. package/mtds/identitet/illustrasjons-generator/illustrasjons-generator.d.ts +1 -0
  107. package/mtds/identitet/illustrasjons-generator/index-old-1.d.ts +1 -0
  108. package/mtds/identitet/infografikk-generator/infografikk-generator.d.ts +1 -0
  109. package/mtds/index.iife.js +21 -21
  110. package/mtds/index.js +38 -31
  111. package/mtds/index.js.map +1 -1
  112. package/mtds/input/input.js +33 -47
  113. package/mtds/input/input.js.map +1 -1
  114. package/mtds/law/law-helper.js +106 -95
  115. package/mtds/law/law-helper.js.map +1 -1
  116. package/mtds/law/law.js +15 -10
  117. package/mtds/law/law.js.map +1 -1
  118. package/mtds/layout/layout.js +21 -13
  119. package/mtds/layout/layout.js.map +1 -1
  120. package/mtds/layout/layout.stories.d.ts +1 -0
  121. package/mtds/link/link.js +15 -10
  122. package/mtds/link/link.js.map +1 -1
  123. package/mtds/logo/logo-observer.js +18 -18
  124. package/mtds/logo/logo-observer.js.map +1 -1
  125. package/mtds/logo/logo.js +18 -18
  126. package/mtds/logo/logo.js.map +1 -1
  127. package/mtds/package.js +6 -0
  128. package/mtds/package.js.map +1 -0
  129. package/mtds/package.json.d.ts +112 -0
  130. package/mtds/pagination/pagination.js +46 -60
  131. package/mtds/pagination/pagination.js.map +1 -1
  132. package/mtds/popover/popover-observer.js +15 -15
  133. package/mtds/popover/popover-observer.js.map +1 -1
  134. package/mtds/popover/popover.js +18 -20
  135. package/mtds/popover/popover.js.map +1 -1
  136. package/mtds/print/print.js +15 -10
  137. package/mtds/print/print.js.map +1 -1
  138. package/mtds/print/print.stories.d.ts +0 -1
  139. package/mtds/profilering/epost.d.ts +1 -0
  140. package/mtds/progress/progress.js +15 -13
  141. package/mtds/progress/progress.js.map +1 -1
  142. package/mtds/react-atlas.js +7 -16
  143. package/mtds/react.js +36 -84
  144. package/mtds/skeleton/skeleton.js +15 -11
  145. package/mtds/skeleton/skeleton.js.map +1 -1
  146. package/mtds/spinner/spinner.js +16 -13
  147. package/mtds/spinner/spinner.js.map +1 -1
  148. package/mtds/steps/steps.js +15 -10
  149. package/mtds/steps/steps.js.map +1 -1
  150. package/mtds/styles.css +2 -1
  151. package/mtds/styles.module.js +122 -0
  152. package/mtds/styles.module.js.map +1 -0
  153. package/mtds/table/table-observer.js +23 -28
  154. package/mtds/table/table-observer.js.map +1 -1
  155. package/mtds/table/table.js +88 -60
  156. package/mtds/table/table.js.map +1 -1
  157. package/mtds/tabs/tabs.js +32 -27
  158. package/mtds/tabs/tabs.js.map +1 -1
  159. package/mtds/tag/tag.js +16 -19
  160. package/mtds/tag/tag.js.map +1 -1
  161. package/mtds/tailwind.css +0 -4
  162. package/mtds/toast/toast-helper.js +45 -25
  163. package/mtds/toast/toast-helper.js.map +1 -1
  164. package/mtds/toast/toast-observer.js +18 -18
  165. package/mtds/toast/toast-observer.js.map +1 -1
  166. package/mtds/toast/toast.js +67 -54
  167. package/mtds/toast/toast.js.map +1 -1
  168. package/mtds/togglegroup/togglegroup.js +31 -40
  169. package/mtds/togglegroup/togglegroup.js.map +1 -1
  170. package/mtds/tooltip/tooltip-element.js +12 -25
  171. package/mtds/tooltip/tooltip-element.js.map +1 -1
  172. package/mtds/typography/typography.js +38 -21
  173. package/mtds/typography/typography.js.map +1 -1
  174. package/mtds/utils.js +53 -70
  175. package/mtds/utils.js.map +1 -1
  176. package/mtds/validation/validation-observer.js +40 -47
  177. package/mtds/validation/validation-observer.js.map +1 -1
  178. package/mtds/validation/validation.js +17 -21
  179. package/mtds/validation/validation.js.map +1 -1
  180. package/package.json +9 -9
  181. package/mtds/atlas/atlas.css.js +0 -138
  182. package/mtds/atlas/atlas.css.js.map +0 -1
  183. package/mtds/atlas.js.map +0 -1
  184. package/mtds/chart/chart.css.js +0 -187
  185. package/mtds/chart/chart.css.js.map +0 -1
  186. package/mtds/package.json.js +0 -5
  187. package/mtds/package.json.js.map +0 -1
  188. package/mtds/react-atlas.js.map +0 -1
  189. package/mtds/react.js.map +0 -1
  190. package/mtds/styles.module.css.js +0 -118
  191. package/mtds/styles.module.css.js.map +0 -1
@@ -1,28 +1,48 @@
1
- import m from "clsx";
2
- import l from "../styles.module.css.js";
3
- import { tag as f, attr as s, on as y } from "../utils.js";
4
- function r(n, o = {}) {
5
- const e = document.getElementById(o.id || "") || f("dialog");
6
- return s(e, "aria-busy", o.busy ? "true" : null), s(e, "class", m(l.toast, o.className)), s(e, "closedby", o.closedby || null), s(e, "data-color", o.color || null), s(e, "data-icon", `${o.icon ?? ""}` || null), s(e, "data-timeout", `${o.timeout ?? ""}` || null), s(e, "id", o.id || `${Date.now()}`), s(e, "open", o.open === !1 ? null : ""), e.innerHTML = n, y(e, "animationend", g, { once: !0 }), document.body.appendChild(e), e.id;
1
+ import e from "../styles.module.js";
2
+ import { attr as t, on as n, tag as r } from "../utils.js";
3
+ import i from "clsx";
4
+ //#region designsystem/toast/toast-helper.ts
5
+ function a(a, s = {}) {
6
+ let c = document.getElementById(s.id || "") || r("dialog");
7
+ return t(c, "aria-busy", s.busy ? "true" : null), t(c, "class", i(e.toast, s.className)), t(c, "closedby", s.closedby || null), t(c, "data-color", s.color || null), t(c, "data-icon", `${s.icon ?? ""}` || null), t(c, "data-timeout", `${s.timeout ?? ""}` || null), t(c, "id", s.id || `${Date.now()}`), t(c, "open", s.open === !1 ? null : ""), c.innerHTML = a, n(c, "animationend", o, { once: !0 }), document.body.appendChild(c), c.id;
7
8
  }
8
- function g({ animationName: n, target: o }) {
9
- n === l._toastClose && o.remove();
9
+ function o({ animationName: t, target: n }) {
10
+ t === e._toastClose && n.remove();
10
11
  }
11
- r.success = (n, o) => r(n, { color: "success", ...o });
12
- r.danger = (n, o) => r(n, { color: "danger", ...o });
13
- r.info = (n, o) => r(n, { color: "info", ...o });
14
- r.warning = (n, o) => r(n, { color: "warning", ...o });
15
- r.neutral = (n, o) => r(n, { color: "neutral", ...o });
16
- r.promise = async function(o, e) {
17
- const { loading: c, success: i, error: u, ...d } = e, a = r(c, { busy: !0, ...d });
18
- try {
19
- const t = await o();
20
- return r.success(i, { id: a, busy: !1 }), t;
21
- } catch (t) {
22
- throw r.danger(u, { id: a, busy: !1 }), t;
23
- }
12
+ a.success = (e, t) => a(e, {
13
+ color: "success",
14
+ ...t
15
+ }), a.danger = (e, t) => a(e, {
16
+ color: "danger",
17
+ ...t
18
+ }), a.info = (e, t) => a(e, {
19
+ color: "info",
20
+ ...t
21
+ }), a.warning = (e, t) => a(e, {
22
+ color: "warning",
23
+ ...t
24
+ }), a.neutral = (e, t) => a(e, {
25
+ color: "neutral",
26
+ ...t
27
+ }), a.promise = async function(e, t) {
28
+ let { loading: n, success: r, error: i, ...o } = t, s = a(n, {
29
+ busy: !0,
30
+ ...o
31
+ });
32
+ try {
33
+ let t = await e();
34
+ return a.success(r, {
35
+ id: s,
36
+ busy: !1
37
+ }), t;
38
+ } catch (e) {
39
+ throw a.danger(i, {
40
+ id: s,
41
+ busy: !1
42
+ }), e;
43
+ }
24
44
  };
25
- export {
26
- r as toast
27
- };
28
- //# sourceMappingURL=toast-helper.js.map
45
+ //#endregion
46
+ export { a as toast };
47
+
48
+ //# sourceMappingURL=toast-helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toast-helper.js","sources":["../../designsystem/toast/toast-helper.ts"],"sourcesContent":["import clsx from \"clsx\";\nimport styles from \"../styles.module.css\";\nimport { attr, on, tag } from \"../utils\";\n\nexport type ToastOptions = {\n\tclassName?: string;\n\tclosedby?: \"none\";\n\tcolor?: \"main\" | \"neutral\" | \"success\" | \"danger\" | \"info\" | \"warning\";\n\ticon?: boolean | \"none\";\n\ttimeout?: number | false;\n\tbusy?: boolean;\n\topen?: boolean;\n\tid?: string;\n};\n\nexport function toast(content: string, opt: ToastOptions = {}) {\n\tconst dialog = document.getElementById(opt.id || \"\") || tag(\"dialog\");\n\n\tattr(dialog, \"aria-busy\", opt.busy ? \"true\" : null);\n\tattr(dialog, \"class\", clsx(styles.toast, opt.className));\n\tattr(dialog, \"closedby\", opt.closedby || null);\n\tattr(dialog, \"data-color\", opt.color || null);\n\tattr(dialog, \"data-icon\", `${opt.icon ?? \"\"}` || null);\n\tattr(dialog, \"data-timeout\", `${opt.timeout ?? \"\"}` || null);\n\tattr(dialog, \"id\", opt.id || `${Date.now()}`);\n\tattr(dialog, \"open\", opt.open === false ? null : \"\");\n\n\tdialog.innerHTML = content;\n\ton(dialog, \"animationend\", handleToastClose, { once: true });\n\tdocument.body.appendChild(dialog);\n\treturn dialog.id;\n}\n\nfunction handleToastClose({ animationName, target }: Partial<AnimationEvent>) {\n\tif (animationName === styles._toastClose)\n\t\t(target as HTMLDialogElement).remove();\n}\n\n// Expose toast.danger, toast.info, toast.success etc.\ntoast.success = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"success\", ...opt });\ntoast.danger = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"danger\", ...opt });\ntoast.info = (content: string, opt: ToastOptions) =>\n\ttoast(content, { color: \"info\", ...opt });\ntoast.warning = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"warning\", ...opt });\ntoast.neutral = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"neutral\", ...opt });\ntoast.promise = async function promise<T>(\n\taction: () => Promise<T>,\n\tprops: ToastOptions & {\n\t\tloading: string;\n\t\tsuccess: string;\n\t\terror: string;\n\t},\n): Promise<T> {\n\tconst { loading, success, error, ...opt } = props;\n\tconst id = toast(loading, { busy: true, ...opt });\n\ttry {\n\t\tconst result = await action();\n\t\ttoast.success(success, { id, busy: false });\n\t\treturn result;\n\t} catch (_error) {\n\t\ttoast.danger(error, { id, busy: false });\n\t\tthrow _error;\n\t}\n};\n"],"names":["toast","content","opt","dialog","tag","attr","clsx","styles","on","handleToastClose","animationName","target","action","props","loading","success","error","id","result","_error"],"mappings":";;;AAeO,SAASA,EAAMC,GAAiBC,IAAoB,IAAI;AAC9D,QAAMC,IAAS,SAAS,eAAeD,EAAI,MAAM,EAAE,KAAKE,EAAI,QAAQ;AAEpE,SAAAC,EAAKF,GAAQ,aAAaD,EAAI,OAAO,SAAS,IAAI,GAClDG,EAAKF,GAAQ,SAASG,EAAKC,EAAO,OAAOL,EAAI,SAAS,CAAC,GACvDG,EAAKF,GAAQ,YAAYD,EAAI,YAAY,IAAI,GAC7CG,EAAKF,GAAQ,cAAcD,EAAI,SAAS,IAAI,GAC5CG,EAAKF,GAAQ,aAAa,GAAGD,EAAI,QAAQ,EAAE,MAAM,IAAI,GACrDG,EAAKF,GAAQ,gBAAgB,GAAGD,EAAI,WAAW,EAAE,MAAM,IAAI,GAC3DG,EAAKF,GAAQ,MAAMD,EAAI,MAAM,GAAG,KAAK,IAAA,CAAK,EAAE,GAC5CG,EAAKF,GAAQ,QAAQD,EAAI,SAAS,KAAQ,OAAO,EAAE,GAEnDC,EAAO,YAAYF,GACnBO,EAAGL,GAAQ,gBAAgBM,GAAkB,EAAE,MAAM,IAAM,GAC3D,SAAS,KAAK,YAAYN,CAAM,GACzBA,EAAO;AACf;AAEA,SAASM,EAAiB,EAAE,eAAAC,GAAe,QAAAC,KAAmC;AAC7E,EAAID,MAAkBH,EAAO,eAC3BI,EAA6B,OAAA;AAChC;AAGAX,EAAM,UAAU,CAACC,GAAiBC,MACjCF,EAAMC,GAAS,EAAE,OAAO,WAAW,GAAGC,GAAK;AAC5CF,EAAM,SAAS,CAACC,GAAiBC,MAChCF,EAAMC,GAAS,EAAE,OAAO,UAAU,GAAGC,GAAK;AAC3CF,EAAM,OAAO,CAACC,GAAiBC,MAC9BF,EAAMC,GAAS,EAAE,OAAO,QAAQ,GAAGC,GAAK;AACzCF,EAAM,UAAU,CAACC,GAAiBC,MACjCF,EAAMC,GAAS,EAAE,OAAO,WAAW,GAAGC,GAAK;AAC5CF,EAAM,UAAU,CAACC,GAAiBC,MACjCF,EAAMC,GAAS,EAAE,OAAO,WAAW,GAAGC,GAAK;AAC5CF,EAAM,UAAU,eACfY,GACAC,GAKa;AACb,QAAM,EAAE,SAAAC,GAAS,SAAAC,GAAS,OAAAC,GAAO,GAAGd,MAAQW,GACtCI,IAAKjB,EAAMc,GAAS,EAAE,MAAM,IAAM,GAAGZ,GAAK;AAChD,MAAI;AACH,UAAMgB,IAAS,MAAMN,EAAA;AACrB,WAAAZ,EAAM,QAAQe,GAAS,EAAE,IAAAE,GAAI,MAAM,IAAO,GACnCC;AAAA,EACR,SAASC,GAAQ;AAChB,UAAAnB,EAAM,OAAOgB,GAAO,EAAE,IAAAC,GAAI,MAAM,IAAO,GACjCE;AAAA,EACP;AACD;"}
1
+ {"version":3,"file":"toast-helper.js","names":[],"sources":["../../designsystem/toast/toast-helper.ts"],"sourcesContent":["import clsx from \"clsx\";\nimport styles from \"../styles.module.css\";\nimport { attr, on, tag } from \"../utils\";\n\nexport type ToastOptions = {\n\tclassName?: string;\n\tclosedby?: \"none\";\n\tcolor?: \"main\" | \"neutral\" | \"success\" | \"danger\" | \"info\" | \"warning\";\n\ticon?: boolean | \"none\";\n\ttimeout?: number | false;\n\tbusy?: boolean;\n\topen?: boolean;\n\tid?: string;\n};\n\nexport function toast(content: string, opt: ToastOptions = {}) {\n\tconst dialog = document.getElementById(opt.id || \"\") || tag(\"dialog\");\n\n\tattr(dialog, \"aria-busy\", opt.busy ? \"true\" : null);\n\tattr(dialog, \"class\", clsx(styles.toast, opt.className));\n\tattr(dialog, \"closedby\", opt.closedby || null);\n\tattr(dialog, \"data-color\", opt.color || null);\n\tattr(dialog, \"data-icon\", `${opt.icon ?? \"\"}` || null);\n\tattr(dialog, \"data-timeout\", `${opt.timeout ?? \"\"}` || null);\n\tattr(dialog, \"id\", opt.id || `${Date.now()}`);\n\tattr(dialog, \"open\", opt.open === false ? null : \"\");\n\n\tdialog.innerHTML = content;\n\ton(dialog, \"animationend\", handleToastClose, { once: true });\n\tdocument.body.appendChild(dialog);\n\treturn dialog.id;\n}\n\nfunction handleToastClose({ animationName, target }: Partial<AnimationEvent>) {\n\tif (animationName === styles._toastClose)\n\t\t(target as HTMLDialogElement).remove();\n}\n\n// Expose toast.danger, toast.info, toast.success etc.\ntoast.success = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"success\", ...opt });\ntoast.danger = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"danger\", ...opt });\ntoast.info = (content: string, opt: ToastOptions) =>\n\ttoast(content, { color: \"info\", ...opt });\ntoast.warning = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"warning\", ...opt });\ntoast.neutral = (content: string, opt?: ToastOptions) =>\n\ttoast(content, { color: \"neutral\", ...opt });\ntoast.promise = async function promise<T>(\n\taction: () => Promise<T>,\n\tprops: ToastOptions & {\n\t\tloading: string;\n\t\tsuccess: string;\n\t\terror: string;\n\t},\n): Promise<T> {\n\tconst { loading, success, error, ...opt } = props;\n\tconst id = toast(loading, { busy: true, ...opt });\n\ttry {\n\t\tconst result = await action();\n\t\ttoast.success(success, { id, busy: false });\n\t\treturn result;\n\t} catch (_error) {\n\t\ttoast.danger(error, { id, busy: false });\n\t\tthrow _error;\n\t}\n};\n"],"mappings":";;;;AAeA,SAAgB,EAAM,GAAiB,IAAoB,CAAC,GAAG;CAC9D,IAAM,IAAS,SAAS,eAAe,EAAI,MAAM,EAAE,KAAK,EAAI,QAAQ;CAcpE,OAZA,EAAK,GAAQ,aAAa,EAAI,OAAO,SAAS,IAAI,GAClD,EAAK,GAAQ,SAAS,EAAK,EAAO,OAAO,EAAI,SAAS,CAAC,GACvD,EAAK,GAAQ,YAAY,EAAI,YAAY,IAAI,GAC7C,EAAK,GAAQ,cAAc,EAAI,SAAS,IAAI,GAC5C,EAAK,GAAQ,aAAa,GAAG,EAAI,QAAQ,QAAQ,IAAI,GACrD,EAAK,GAAQ,gBAAgB,GAAG,EAAI,WAAW,QAAQ,IAAI,GAC3D,EAAK,GAAQ,MAAM,EAAI,MAAM,GAAG,KAAK,IAAI,GAAG,GAC5C,EAAK,GAAQ,QAAQ,EAAI,SAAS,KAAQ,OAAO,EAAE,GAEnD,EAAO,YAAY,GACnB,EAAG,GAAQ,gBAAgB,GAAkB,EAAE,MAAM,GAAK,CAAC,GAC3D,SAAS,KAAK,YAAY,CAAM,GACzB,EAAO;AACf;AAEA,SAAS,EAAiB,EAAE,kBAAe,aAAmC;CAC7E,AAAI,MAAkB,EAAO,eAC5B,EAA8B,OAAO;AACvC;AAGA,EAAM,WAAW,GAAiB,MACjC,EAAM,GAAS;CAAE,OAAO;CAAW,GAAG;AAAI,CAAC,GAC5C,EAAM,UAAU,GAAiB,MAChC,EAAM,GAAS;CAAE,OAAO;CAAU,GAAG;AAAI,CAAC,GAC3C,EAAM,QAAQ,GAAiB,MAC9B,EAAM,GAAS;CAAE,OAAO;CAAQ,GAAG;AAAI,CAAC,GACzC,EAAM,WAAW,GAAiB,MACjC,EAAM,GAAS;CAAE,OAAO;CAAW,GAAG;AAAI,CAAC,GAC5C,EAAM,WAAW,GAAiB,MACjC,EAAM,GAAS;CAAE,OAAO;CAAW,GAAG;AAAI,CAAC,GAC5C,EAAM,UAAU,eACf,GACA,GAKa;CACb,IAAM,EAAE,YAAS,YAAS,UAAO,GAAG,MAAQ,GACtC,IAAK,EAAM,GAAS;EAAE,MAAM;EAAM,GAAG;CAAI,CAAC;CAChD,IAAI;EACH,IAAM,IAAS,MAAM,EAAO;EAE5B,OADA,EAAM,QAAQ,GAAS;GAAE;GAAI,MAAM;EAAM,CAAC,GACnC;CACR,SAAS,GAAQ;EAEhB,MADA,EAAM,OAAO,GAAO;GAAE;GAAI,MAAM;EAAM,CAAC,GACjC;CACP;AACD"}
@@ -1,20 +1,20 @@
1
- import a from "../styles.module.css.js";
2
- import { onHotReload as b, on as u, attr as s } from "../utils.js";
3
- const m = a.toast.split(" ")[0], l = "data-sort";
4
- function h({ animationName: t, target: i }) {
5
- const o = i;
6
- if (t === a._toastTimeout && o.close(), t !== a._toastOpen) return;
7
- const c = Number(s(o, "data-timeout"));
8
- o.style.setProperty("--mtdsc-toast-timeout", c ? `${c}ms` : null), o.hasAttribute(l) || s(o, l, `${Date.now()}`), s(o, "tabindex", "0"), [...document.querySelectorAll(`.${m}[open]`)].sort((n, e) => Number(s(e, l)) - Number(s(n, l))).reduce((n, e) => (e.style.translate = `0 ${e === i ? 0 : n}px`, n + e.offsetHeight + 5), 0);
1
+ import e from "../styles.module.js";
2
+ import { attr as t, on as n, onHotReload as r } from "../utils.js";
3
+ //#region designsystem/toast/toast-observer.ts
4
+ var i = e.toast.split(" ")[0], a = "data-sort";
5
+ function o({ animationName: n, target: r }) {
6
+ let o = r;
7
+ if (n === e._toastTimeout && o.close(), n !== e._toastOpen) return;
8
+ let s = Number(t(o, "data-timeout"));
9
+ o.style.setProperty("--mtdsc-toast-timeout", s ? `${s}ms` : null), o.hasAttribute(a) || t(o, a, `${Date.now()}`), t(o, "tabindex", "0"), [...document.querySelectorAll(`.${i}[open]`)].sort((e, n) => Number(t(n, a)) - Number(t(e, a))).reduce((e, t) => (t.style.translate = `0 ${t === r ? 0 : e}px`, e + t.offsetHeight + 5), 0);
9
10
  }
10
- function T({ target: t, clientX: i, clientY: o }) {
11
- if (t instanceof HTMLDialogElement && t.classList.contains(m) && s(t, "data-closedby") !== "none") {
12
- const c = t.getBoundingClientRect(), n = window.getComputedStyle(t), e = window.getComputedStyle(t, "::after"), r = c.top + Number.parseInt(n.paddingTop, 10), p = r + Number.parseInt(e.height, 10), d = c.right - Number.parseInt(n.paddingRight, 10), f = d - Number.parseInt(e.width, 10);
13
- r <= o && o <= p && f <= i && i <= d && t.close();
14
- }
11
+ function s({ target: e, clientX: n, clientY: r }) {
12
+ if (e instanceof HTMLDialogElement && e.classList.contains(i) && t(e, "data-closedby") !== "none") {
13
+ let t = e.getBoundingClientRect(), i = window.getComputedStyle(e), a = window.getComputedStyle(e, "::after"), o = t.top + Number.parseInt(i.paddingTop, 10), s = o + Number.parseInt(a.height, 10), c = t.right - Number.parseInt(i.paddingRight, 10), l = c - Number.parseInt(a.width, 10);
14
+ o <= r && r <= s && l <= n && n <= c && e.close();
15
+ }
15
16
  }
16
- b("toast", () => [
17
- u(document, "animationstart", h),
18
- u(document, "click", T)
19
- ]);
20
- //# sourceMappingURL=toast-observer.js.map
17
+ r("toast", () => [n(document, "animationstart", o), n(document, "click", s)]);
18
+ //#endregion
19
+
20
+ //# sourceMappingURL=toast-observer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toast-observer.js","sources":["../../designsystem/toast/toast-observer.ts"],"sourcesContent":["import styles from \"../styles.module.css\";\nimport { attr, on, onHotReload } from \"../utils\";\n\nconst CSS_TOAST = styles.toast.split(\" \")[0];\nconst ATTR_SORT = \"data-sort\";\n\nfunction handleToastState({ animationName, target }: Partial<AnimationEvent>) {\n\tconst dialog = target as HTMLDialogElement;\n\tif (animationName === styles._toastTimeout) dialog.close();\n\tif (animationName !== styles._toastOpen) return;\n\n\tconst ms = Number(attr(dialog, \"data-timeout\"));\n\tdialog.style.setProperty(\"--mtdsc-toast-timeout\", ms ? `${ms}ms` : null);\n\tdialog.hasAttribute(ATTR_SORT) || attr(dialog, ATTR_SORT, `${Date.now()}`);\n\tattr(dialog, \"tabindex\", \"0\"); // Make focusable\n\n\t// Setup layout\n\t[...document.querySelectorAll<HTMLDialogElement>(`.${CSS_TOAST}[open]`)]\n\t\t.sort((a, b) => Number(attr(b, ATTR_SORT)) - Number(attr(a, ATTR_SORT)))\n\t\t.reduce((top, toast) => {\n\t\t\ttoast.style.translate = `0 ${toast === target ? 0 : top}px`;\n\t\t\treturn top + toast.offsetHeight + 5;\n\t\t}, 0);\n}\n\nfunction handleToastClick({ target, clientX: x, clientY: y }: MouseEvent) {\n\tif (\n\t\ttarget instanceof HTMLDialogElement &&\n\t\ttarget.classList.contains(CSS_TOAST) &&\n\t\tattr(target, \"data-closedby\") !== \"none\"\n\t) {\n\t\tconst rect = target.getBoundingClientRect();\n\t\tconst toast = window.getComputedStyle(target);\n\t\tconst close = window.getComputedStyle(target, \"::after\");\n\t\tconst top = rect.top + Number.parseInt(toast.paddingTop, 10);\n\t\tconst bottom = top + Number.parseInt(close.height, 10);\n\t\tconst right = rect.right - Number.parseInt(toast.paddingRight, 10);\n\t\tconst left = right - Number.parseInt(close.width, 10);\n\t\tconst isClose = top <= y && y <= bottom && left <= x && x <= right;\n\n\t\tif (isClose) target.close(); // Click is on ::after element\n\t}\n}\n\nonHotReload(\"toast\", () => [\n\ton(document, \"animationstart\", handleToastState),\n\ton(document, \"click\", handleToastClick as EventListener),\n]);\n"],"names":["CSS_TOAST","styles","ATTR_SORT","handleToastState","animationName","target","dialog","ms","attr","a","b","top","toast","handleToastClick","x","y","rect","close","bottom","right","left","onHotReload","on"],"mappings":";;AAGA,MAAMA,IAAYC,EAAO,MAAM,MAAM,GAAG,EAAE,CAAC,GACrCC,IAAY;AAElB,SAASC,EAAiB,EAAE,eAAAC,GAAe,QAAAC,KAAmC;AAC7E,QAAMC,IAASD;AAEf,MADID,MAAkBH,EAAO,iBAAeK,EAAO,MAAA,GAC/CF,MAAkBH,EAAO,WAAY;AAEzC,QAAMM,IAAK,OAAOC,EAAKF,GAAQ,cAAc,CAAC;AAC9C,EAAAA,EAAO,MAAM,YAAY,yBAAyBC,IAAK,GAAGA,CAAE,OAAO,IAAI,GACvED,EAAO,aAAaJ,CAAS,KAAKM,EAAKF,GAAQJ,GAAW,GAAG,KAAK,IAAA,CAAK,EAAE,GACzEM,EAAKF,GAAQ,YAAY,GAAG,GAG5B,CAAC,GAAG,SAAS,iBAAoC,IAAIN,CAAS,QAAQ,CAAC,EACrE,KAAK,CAACS,GAAGC,MAAM,OAAOF,EAAKE,GAAGR,CAAS,CAAC,IAAI,OAAOM,EAAKC,GAAGP,CAAS,CAAC,CAAC,EACtE,OAAO,CAACS,GAAKC,OACbA,EAAM,MAAM,YAAY,KAAKA,MAAUP,IAAS,IAAIM,CAAG,MAChDA,IAAMC,EAAM,eAAe,IAChC,CAAC;AACN;AAEA,SAASC,EAAiB,EAAE,QAAAR,GAAQ,SAASS,GAAG,SAASC,KAAiB;AACzE,MACCV,aAAkB,qBAClBA,EAAO,UAAU,SAASL,CAAS,KACnCQ,EAAKH,GAAQ,eAAe,MAAM,QACjC;AACD,UAAMW,IAAOX,EAAO,sBAAA,GACdO,IAAQ,OAAO,iBAAiBP,CAAM,GACtCY,IAAQ,OAAO,iBAAiBZ,GAAQ,SAAS,GACjDM,IAAMK,EAAK,MAAM,OAAO,SAASJ,EAAM,YAAY,EAAE,GACrDM,IAASP,IAAM,OAAO,SAASM,EAAM,QAAQ,EAAE,GAC/CE,IAAQH,EAAK,QAAQ,OAAO,SAASJ,EAAM,cAAc,EAAE,GAC3DQ,IAAOD,IAAQ,OAAO,SAASF,EAAM,OAAO,EAAE;AAGpD,IAFgBN,KAAOI,KAAKA,KAAKG,KAAUE,KAAQN,KAAKA,KAAKK,OAEzC,MAAA;AAAA,EACrB;AACD;AAEAE,EAAY,SAAS,MAAM;AAAA,EAC1BC,EAAG,UAAU,kBAAkBnB,CAAgB;AAAA,EAC/CmB,EAAG,UAAU,SAAST,CAAiC;AACxD,CAAC;"}
1
+ {"version":3,"file":"toast-observer.js","names":[],"sources":["../../designsystem/toast/toast-observer.ts"],"sourcesContent":["import styles from \"../styles.module.css\";\nimport { attr, on, onHotReload } from \"../utils\";\n\nconst CSS_TOAST = styles.toast.split(\" \")[0];\nconst ATTR_SORT = \"data-sort\";\n\nfunction handleToastState({ animationName, target }: Partial<AnimationEvent>) {\n\tconst dialog = target as HTMLDialogElement;\n\tif (animationName === styles._toastTimeout) dialog.close();\n\tif (animationName !== styles._toastOpen) return;\n\n\tconst ms = Number(attr(dialog, \"data-timeout\"));\n\tdialog.style.setProperty(\"--mtdsc-toast-timeout\", ms ? `${ms}ms` : null);\n\tdialog.hasAttribute(ATTR_SORT) || attr(dialog, ATTR_SORT, `${Date.now()}`);\n\tattr(dialog, \"tabindex\", \"0\"); // Make focusable\n\n\t// Setup layout\n\t[...document.querySelectorAll<HTMLDialogElement>(`.${CSS_TOAST}[open]`)]\n\t\t.sort((a, b) => Number(attr(b, ATTR_SORT)) - Number(attr(a, ATTR_SORT)))\n\t\t.reduce((top, toast) => {\n\t\t\ttoast.style.translate = `0 ${toast === target ? 0 : top}px`;\n\t\t\treturn top + toast.offsetHeight + 5;\n\t\t}, 0);\n}\n\nfunction handleToastClick({ target, clientX: x, clientY: y }: MouseEvent) {\n\tif (\n\t\ttarget instanceof HTMLDialogElement &&\n\t\ttarget.classList.contains(CSS_TOAST) &&\n\t\tattr(target, \"data-closedby\") !== \"none\"\n\t) {\n\t\tconst rect = target.getBoundingClientRect();\n\t\tconst toast = window.getComputedStyle(target);\n\t\tconst close = window.getComputedStyle(target, \"::after\");\n\t\tconst top = rect.top + Number.parseInt(toast.paddingTop, 10);\n\t\tconst bottom = top + Number.parseInt(close.height, 10);\n\t\tconst right = rect.right - Number.parseInt(toast.paddingRight, 10);\n\t\tconst left = right - Number.parseInt(close.width, 10);\n\t\tconst isClose = top <= y && y <= bottom && left <= x && x <= right;\n\n\t\tif (isClose) target.close(); // Click is on ::after element\n\t}\n}\n\nonHotReload(\"toast\", () => [\n\ton(document, \"animationstart\", handleToastState),\n\ton(document, \"click\", handleToastClick as EventListener),\n]);\n"],"mappings":";;;AAGA,IAAM,IAAY,EAAO,MAAM,MAAM,GAAG,CAAC,CAAC,IACpC,IAAY;AAElB,SAAS,EAAiB,EAAE,kBAAe,aAAmC;CAC7E,IAAM,IAAS;CAEf,IADI,MAAkB,EAAO,iBAAe,EAAO,MAAM,GACrD,MAAkB,EAAO,YAAY;CAEzC,IAAM,IAAK,OAAO,EAAK,GAAQ,cAAc,CAAC;CAM9C,AALA,EAAO,MAAM,YAAY,yBAAyB,IAAK,GAAG,EAAG,MAAM,IAAI,GACvE,EAAO,aAAa,CAAS,KAAK,EAAK,GAAQ,GAAW,GAAG,KAAK,IAAI,GAAG,GACzE,EAAK,GAAQ,YAAY,GAAG,GAG5B,CAAC,GAAG,SAAS,iBAAoC,IAAI,EAAU,OAAO,CAAC,CAAC,CACtE,MAAM,GAAG,MAAM,OAAO,EAAK,GAAG,CAAS,CAAC,IAAI,OAAO,EAAK,GAAG,CAAS,CAAC,CAAC,CAAC,CACvE,QAAQ,GAAK,OACb,EAAM,MAAM,YAAY,KAAK,MAAU,IAAS,IAAI,EAAI,KACjD,IAAM,EAAM,eAAe,IAChC,CAAC;AACN;AAEA,SAAS,EAAiB,EAAE,WAAQ,SAAS,GAAG,SAAS,KAAiB;CACzE,IACC,aAAkB,qBAClB,EAAO,UAAU,SAAS,CAAS,KACnC,EAAK,GAAQ,eAAe,MAAM,QACjC;EACD,IAAM,IAAO,EAAO,sBAAsB,GACpC,IAAQ,OAAO,iBAAiB,CAAM,GACtC,IAAQ,OAAO,iBAAiB,GAAQ,SAAS,GACjD,IAAM,EAAK,MAAM,OAAO,SAAS,EAAM,YAAY,EAAE,GACrD,IAAS,IAAM,OAAO,SAAS,EAAM,QAAQ,EAAE,GAC/C,IAAQ,EAAK,QAAQ,OAAO,SAAS,EAAM,cAAc,EAAE,GAC3D,IAAO,IAAQ,OAAO,SAAS,EAAM,OAAO,EAAE;EAGpD,AAFgB,KAAO,KAAK,KAAK,KAAU,KAAQ,KAAK,KAAK,KAEhD,EAAO,MAAM;CAC3B;AACD;AAEA,EAAY,eAAe,CAC1B,EAAG,UAAU,kBAAkB,CAAgB,GAC/C,EAAG,UAAU,SAAS,CAAiC,CACxD,CAAC"}
@@ -1,57 +1,70 @@
1
- import { jsx as u } from "react/jsx-runtime";
2
- import m from "clsx";
3
- import { createRoot as f } from "react-dom/client";
4
- import c from "../styles.module.css.js";
5
- import { isBrowser as w, tag as y } from "../utils.js";
6
- if (w() && !window._mtdsReactToasts) {
7
- let s;
8
- const o = /* @__PURE__ */ new Map(), t = () => s?.render(Array.from(o.values() || []));
9
- window._mtdsReactToasts = {
10
- set: (r, a) => {
11
- s || (s = f(document.body.appendChild(y("div")))), o.set(r, a) && t();
12
- },
13
- delete: ({ animationName: r, currentTarget: a }) => {
14
- r === c._toastClose && (o.delete(a.id), t());
15
- }
16
- };
1
+ "use client";
2
+ import e from "../styles.module.js";
3
+ import { isBrowser as t, tag as n } from "../utils.js";
4
+ import r from "clsx";
5
+ import { jsx as i } from "react/jsx-runtime";
6
+ import { createRoot as a } from "react-dom/client";
7
+ //#region designsystem/toast/toast.tsx
8
+ if (t() && !window._mtdsReactToasts) {
9
+ let t, r = /* @__PURE__ */ new Map(), i = () => t?.render(Array.from(r.values() || []));
10
+ window._mtdsReactToasts = {
11
+ set: (e, o) => {
12
+ t ||= a(document.body.appendChild(n("div"))), r.set(e, o) && i();
13
+ },
14
+ delete: ({ animationName: t, currentTarget: n }) => {
15
+ t === e._toastClose && (r.delete(n.id), i());
16
+ }
17
+ };
17
18
  }
18
- function e(s, o = {}) {
19
- const t = o.id || `${Date.now()}`;
20
- return window._mtdsReactToasts?.set(
21
- t,
22
- /* @__PURE__ */ u(
23
- "dialog",
24
- {
25
- "aria-busy": o.busy,
26
- className: m(c.toast, o.className),
27
- closedby: o.closedby,
28
- "data-color": o.color,
29
- "data-timeout": o.timeout,
30
- id: t,
31
- onAnimationEnd: window._mtdsReactToasts.delete,
32
- open: o.open ?? !0,
33
- suppressHydrationWarning: !0,
34
- children: s
35
- },
36
- t
37
- )
38
- ), t;
19
+ function o(t, n = {}) {
20
+ let a = n.id || `${Date.now()}`;
21
+ return window._mtdsReactToasts?.set(a, /* @__PURE__ */ i("dialog", {
22
+ "aria-busy": n.busy,
23
+ className: r(e.toast, n.className),
24
+ closedby: n.closedby,
25
+ "data-color": n.color,
26
+ "data-timeout": n.timeout,
27
+ id: a,
28
+ onAnimationEnd: window._mtdsReactToasts.delete,
29
+ open: n.open ?? !0,
30
+ suppressHydrationWarning: !0,
31
+ children: t
32
+ }, a)), a;
39
33
  }
40
- e.success = (s, o) => e(s, { color: "success", ...o });
41
- e.danger = (s, o) => e(s, { color: "danger", ...o });
42
- e.info = (s, o) => e(s, { color: "info", ...o });
43
- e.warning = (s, o) => e(s, { color: "warning", ...o });
44
- e.neutral = (s, o) => e(s, { color: "neutral", ...o });
45
- e.promise = async function(o, t) {
46
- const { loading: r, success: a, error: d, ...l } = t, i = e(r, { busy: !0, ...l });
47
- try {
48
- const n = await o();
49
- return e.success(a, { id: i, busy: !1 }), n;
50
- } catch (n) {
51
- throw e.danger(d, { id: i, busy: !1 }), n;
52
- }
34
+ o.success = (e, t) => o(e, {
35
+ color: "success",
36
+ ...t
37
+ }), o.danger = (e, t) => o(e, {
38
+ color: "danger",
39
+ ...t
40
+ }), o.info = (e, t) => o(e, {
41
+ color: "info",
42
+ ...t
43
+ }), o.warning = (e, t) => o(e, {
44
+ color: "warning",
45
+ ...t
46
+ }), o.neutral = (e, t) => o(e, {
47
+ color: "neutral",
48
+ ...t
49
+ }), o.promise = async function(e, t) {
50
+ let { loading: n, success: r, error: i, ...a } = t, s = o(n, {
51
+ busy: !0,
52
+ ...a
53
+ });
54
+ try {
55
+ let t = await e();
56
+ return o.success(r, {
57
+ id: s,
58
+ busy: !1
59
+ }), t;
60
+ } catch (e) {
61
+ throw o.danger(i, {
62
+ id: s,
63
+ busy: !1
64
+ }), e;
65
+ }
53
66
  };
54
- export {
55
- e as toast
56
- };
57
- //# sourceMappingURL=toast.js.map
67
+ //#endregion
68
+ export { o as toast };
69
+
70
+ //# sourceMappingURL=toast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"toast.js","sources":["../../designsystem/toast/toast.tsx"],"sourcesContent":["\"use client\";\nimport clsx from \"clsx\";\nimport { createRoot } from \"react-dom/client\";\nimport styles from \"../styles.module.css\";\nimport { isBrowser, tag } from \"../utils\";\nimport type { ToastOptions } from \"./toast-helper\";\n\ndeclare global {\n\tinterface Window {\n\t\t_mtdsReactToasts?: {\n\t\t\tset: (id: string, jsx: React.ReactNode) => void;\n\t\t\tdelete: (event: React.AnimationEvent<HTMLDialogElement>) => void;\n\t\t};\n\t}\n}\n\n// Ensure only a single toast master is created\nif (isBrowser() && !window._mtdsReactToasts) {\n\tlet root: ReturnType<typeof createRoot>; // Create root on first toast to avoid hydration issues\n\tconst toasts = new Map<string, React.ReactNode>();\n\tconst render = () => root?.render(Array.from(toasts.values() || []));\n\n\t// Expose methods to add/remove toasts from the root container\n\twindow._mtdsReactToasts = {\n\t\tset: (id, jsx) => {\n\t\t\tif (!root) root = createRoot(document.body.appendChild(tag(\"div\")));\n\t\t\tif (toasts.set(id, jsx)) render();\n\t\t},\n\t\tdelete: ({ animationName, currentTarget }) => {\n\t\t\tif (animationName !== styles._toastClose) return;\n\t\t\ttoasts.delete(currentTarget.id);\n\t\t\trender();\n\t\t},\n\t};\n}\n\nexport function toast(content: React.ReactNode, opt: ToastOptions = {}) {\n\tconst id = opt.id || `${Date.now()}`;\n\twindow._mtdsReactToasts?.set(\n\t\tid,\n\t\t<dialog\n\t\t\taria-busy={opt.busy}\n\t\t\tclassName={clsx(styles.toast, opt.className)}\n\t\t\tclosedby={opt.closedby}\n\t\t\tdata-color={opt.color}\n\t\t\tdata-timeout={opt.timeout}\n\t\t\tid={id}\n\t\t\tkey={id}\n\t\t\tonAnimationEnd={window._mtdsReactToasts.delete}\n\t\t\topen={opt.open ?? true}\n\t\t\tsuppressHydrationWarning // Needed due to closedby polyfill\n\t\t>\n\t\t\t{content}\n\t\t</dialog>,\n\t);\n\n\treturn id;\n}\n\n// Expose toast.danger, toast.info, toast.success etc.\ntoast.success = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"success\", ...opt });\ntoast.danger = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"danger\", ...opt });\ntoast.info = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"info\", ...opt });\ntoast.warning = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"warning\", ...opt });\ntoast.neutral = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"neutral\", ...opt });\ntoast.promise = async function promise<T>(\n\taction: () => Promise<T>,\n\tprops: ToastOptions & {\n\t\tloading: React.ReactNode;\n\t\tsuccess: React.ReactNode;\n\t\terror: React.ReactNode;\n\t},\n): Promise<T> {\n\tconst { loading, success, error, ...opt } = props;\n\tconst id = toast(loading, { busy: true, ...opt });\n\ttry {\n\t\tconst result = await action();\n\t\ttoast.success(success, { id, busy: false });\n\t\treturn result;\n\t} catch (_error) {\n\t\ttoast.danger(error, { id, busy: false });\n\t\tthrow _error;\n\t}\n};\n"],"names":["isBrowser","root","toasts","render","id","jsx","createRoot","tag","animationName","currentTarget","styles","toast","content","opt","clsx","action","props","loading","success","error","result","_error"],"mappings":";;;;;AAiBA,IAAIA,EAAA,KAAe,CAAC,OAAO,kBAAkB;AAC5C,MAAIC;AACJ,QAAMC,wBAAa,IAAA,GACbC,IAAS,MAAMF,GAAM,OAAO,MAAM,KAAKC,EAAO,YAAY,CAAA,CAAE,CAAC;AAGnE,SAAO,mBAAmB;AAAA,IACzB,KAAK,CAACE,GAAIC,MAAQ;AACjB,MAAKJ,MAAMA,IAAOK,EAAW,SAAS,KAAK,YAAYC,EAAI,KAAK,CAAC,CAAC,IAC9DL,EAAO,IAAIE,GAAIC,CAAG,KAAGF,EAAA;AAAA,IAC1B;AAAA,IACA,QAAQ,CAAC,EAAE,eAAAK,GAAe,eAAAC,QAAoB;AAC7C,MAAID,MAAkBE,EAAO,gBAC7BR,EAAO,OAAOO,EAAc,EAAE,GAC9BN,EAAA;AAAA,IACD;AAAA,EAAA;AAEF;AAEO,SAASQ,EAAMC,GAA0BC,IAAoB,IAAI;AACvE,QAAMT,IAAKS,EAAI,MAAM,GAAG,KAAK,KAAK;AAClC,gBAAO,kBAAkB;AAAA,IACxBT;AAAA,IACA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACA,aAAWQ,EAAI;AAAA,QACf,WAAWC,EAAKJ,EAAO,OAAOG,EAAI,SAAS;AAAA,QAC3C,UAAUA,EAAI;AAAA,QACd,cAAYA,EAAI;AAAA,QAChB,gBAAcA,EAAI;AAAA,QAClB,IAAAT;AAAA,QAEA,gBAAgB,OAAO,iBAAiB;AAAA,QACxC,MAAMS,EAAI,QAAQ;AAAA,QAClB,0BAAwB;AAAA,QAEvB,UAAAD;AAAA,MAAA;AAAA,MALIR;AAAA,IAAA;AAAA,EAMN,GAGMA;AACR;AAGAO,EAAM,UAAU,CAACC,GAA0BC,MAC1CF,EAAMC,GAAS,EAAE,OAAO,WAAW,GAAGC,GAAK;AAC5CF,EAAM,SAAS,CAACC,GAA0BC,MACzCF,EAAMC,GAAS,EAAE,OAAO,UAAU,GAAGC,GAAK;AAC3CF,EAAM,OAAO,CAACC,GAA0BC,MACvCF,EAAMC,GAAS,EAAE,OAAO,QAAQ,GAAGC,GAAK;AACzCF,EAAM,UAAU,CAACC,GAA0BC,MAC1CF,EAAMC,GAAS,EAAE,OAAO,WAAW,GAAGC,GAAK;AAC5CF,EAAM,UAAU,CAACC,GAA0BC,MAC1CF,EAAMC,GAAS,EAAE,OAAO,WAAW,GAAGC,GAAK;AAC5CF,EAAM,UAAU,eACfI,GACAC,GAKa;AACb,QAAM,EAAE,SAAAC,GAAS,SAAAC,GAAS,OAAAC,GAAO,GAAGN,MAAQG,GACtCZ,IAAKO,EAAMM,GAAS,EAAE,MAAM,IAAM,GAAGJ,GAAK;AAChD,MAAI;AACH,UAAMO,IAAS,MAAML,EAAA;AACrB,WAAAJ,EAAM,QAAQO,GAAS,EAAE,IAAAd,GAAI,MAAM,IAAO,GACnCgB;AAAA,EACR,SAASC,GAAQ;AAChB,UAAAV,EAAM,OAAOQ,GAAO,EAAE,IAAAf,GAAI,MAAM,IAAO,GACjCiB;AAAA,EACP;AACD;"}
1
+ {"version":3,"file":"toast.js","names":[],"sources":["../../designsystem/toast/toast.tsx"],"sourcesContent":["\"use client\";\nimport clsx from \"clsx\";\nimport { createRoot } from \"react-dom/client\";\nimport styles from \"../styles.module.css\";\nimport { isBrowser, tag } from \"../utils\";\nimport type { ToastOptions } from \"./toast-helper\";\n\ndeclare global {\n\tinterface Window {\n\t\t_mtdsReactToasts?: {\n\t\t\tset: (id: string, jsx: React.ReactNode) => void;\n\t\t\tdelete: (event: React.AnimationEvent<HTMLDialogElement>) => void;\n\t\t};\n\t}\n}\n\n// Ensure only a single toast master is created\nif (isBrowser() && !window._mtdsReactToasts) {\n\tlet root: ReturnType<typeof createRoot>; // Create root on first toast to avoid hydration issues\n\tconst toasts = new Map<string, React.ReactNode>();\n\tconst render = () => root?.render(Array.from(toasts.values() || []));\n\n\t// Expose methods to add/remove toasts from the root container\n\twindow._mtdsReactToasts = {\n\t\tset: (id, jsx) => {\n\t\t\tif (!root) root = createRoot(document.body.appendChild(tag(\"div\")));\n\t\t\tif (toasts.set(id, jsx)) render();\n\t\t},\n\t\tdelete: ({ animationName, currentTarget }) => {\n\t\t\tif (animationName !== styles._toastClose) return;\n\t\t\ttoasts.delete(currentTarget.id);\n\t\t\trender();\n\t\t},\n\t};\n}\n\nexport function toast(content: React.ReactNode, opt: ToastOptions = {}) {\n\tconst id = opt.id || `${Date.now()}`;\n\twindow._mtdsReactToasts?.set(\n\t\tid,\n\t\t<dialog\n\t\t\taria-busy={opt.busy}\n\t\t\tclassName={clsx(styles.toast, opt.className)}\n\t\t\tclosedby={opt.closedby}\n\t\t\tdata-color={opt.color}\n\t\t\tdata-timeout={opt.timeout}\n\t\t\tid={id}\n\t\t\tkey={id}\n\t\t\tonAnimationEnd={window._mtdsReactToasts.delete}\n\t\t\topen={opt.open ?? true}\n\t\t\tsuppressHydrationWarning // Needed due to closedby polyfill\n\t\t>\n\t\t\t{content}\n\t\t</dialog>,\n\t);\n\n\treturn id;\n}\n\n// Expose toast.danger, toast.info, toast.success etc.\ntoast.success = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"success\", ...opt });\ntoast.danger = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"danger\", ...opt });\ntoast.info = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"info\", ...opt });\ntoast.warning = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"warning\", ...opt });\ntoast.neutral = (content: React.ReactNode, opt?: ToastOptions) =>\n\ttoast(content, { color: \"neutral\", ...opt });\ntoast.promise = async function promise<T>(\n\taction: () => Promise<T>,\n\tprops: ToastOptions & {\n\t\tloading: React.ReactNode;\n\t\tsuccess: React.ReactNode;\n\t\terror: React.ReactNode;\n\t},\n): Promise<T> {\n\tconst { loading, success, error, ...opt } = props;\n\tconst id = toast(loading, { busy: true, ...opt });\n\ttry {\n\t\tconst result = await action();\n\t\ttoast.success(success, { id, busy: false });\n\t\treturn result;\n\t} catch (_error) {\n\t\ttoast.danger(error, { id, busy: false });\n\t\tthrow _error;\n\t}\n};\n"],"mappings":";;;;;;;AAiBA,IAAI,EAAU,KAAK,CAAC,OAAO,kBAAkB;CAC5C,IAAI,GACE,oBAAS,IAAI,IAA6B,GAC1C,UAAe,GAAM,OAAO,MAAM,KAAK,EAAO,OAAO,KAAK,CAAC,CAAC,CAAC;CAGnE,OAAO,mBAAmB;EACzB,MAAM,GAAI,MAAQ;GAEjB,AADA,AAAW,MAAO,EAAW,SAAS,KAAK,YAAY,EAAI,KAAK,CAAC,CAAC,GAC9D,EAAO,IAAI,GAAI,CAAG,KAAG,EAAO;EACjC;EACA,SAAS,EAAE,kBAAe,uBAAoB;GACzC,MAAkB,EAAO,gBAC7B,EAAO,OAAO,EAAc,EAAE,GAC9B,EAAO;EACR;CACD;AACD;AAEA,SAAgB,EAAM,GAA0B,IAAoB,CAAC,GAAG;CACvE,IAAM,IAAK,EAAI,MAAM,GAAG,KAAK,IAAI;CAmBjC,OAlBA,OAAO,kBAAkB,IACxB,GACA,kBAAC,UAAD;EACC,aAAW,EAAI;EACf,WAAW,EAAK,EAAO,OAAO,EAAI,SAAS;EAC3C,UAAU,EAAI;EACd,cAAY,EAAI;EAChB,gBAAc,EAAI;EACd;EAEJ,gBAAgB,OAAO,iBAAiB;EACxC,MAAM,EAAI,QAAQ;EAClB,0BAAA;YAEC;CACM,GANF,CAME,CACT,GAEO;AACR;AAGA,EAAM,WAAW,GAA0B,MAC1C,EAAM,GAAS;CAAE,OAAO;CAAW,GAAG;AAAI,CAAC,GAC5C,EAAM,UAAU,GAA0B,MACzC,EAAM,GAAS;CAAE,OAAO;CAAU,GAAG;AAAI,CAAC,GAC3C,EAAM,QAAQ,GAA0B,MACvC,EAAM,GAAS;CAAE,OAAO;CAAQ,GAAG;AAAI,CAAC,GACzC,EAAM,WAAW,GAA0B,MAC1C,EAAM,GAAS;CAAE,OAAO;CAAW,GAAG;AAAI,CAAC,GAC5C,EAAM,WAAW,GAA0B,MAC1C,EAAM,GAAS;CAAE,OAAO;CAAW,GAAG;AAAI,CAAC,GAC5C,EAAM,UAAU,eACf,GACA,GAKa;CACb,IAAM,EAAE,YAAS,YAAS,UAAO,GAAG,MAAQ,GACtC,IAAK,EAAM,GAAS;EAAE,MAAM;EAAM,GAAG;CAAI,CAAC;CAChD,IAAI;EACH,IAAM,IAAS,MAAM,EAAO;EAE5B,OADA,EAAM,QAAQ,GAAS;GAAE;GAAI,MAAM;EAAM,CAAC,GACnC;CACR,SAAS,GAAQ;EAEhB,MADA,EAAM,OAAO,GAAO;GAAE;GAAI,MAAM;EAAM,CAAC,GACjC;CACP;AACD"}
@@ -1,40 +1,31 @@
1
- import { jsx as e, jsxs as i } from "react/jsx-runtime";
2
- import c from "clsx";
3
- import { forwardRef as p } from "react";
4
- import l from "../styles.module.css.js";
5
- const f = p(
6
- function({ "data-toggle-group": o, className: t, ...g }, r) {
7
- return /* @__PURE__ */ e(
8
- "fieldset",
9
- {
10
- className: c(l.togglegroup, t),
11
- "data-toggle-group": o || "Valgknapper",
12
- ref: r,
13
- ...g
14
- }
15
- );
16
- }
17
- ), d = p(
18
- function({ children: o, checked: t, defaultChecked: g, value: r, name: a, onChange: m, ...n }, u) {
19
- return /* @__PURE__ */ i("label", { className: l.button, ref: u, ...n, children: [
20
- /* @__PURE__ */ e(
21
- "input",
22
- {
23
- type: "radio",
24
- checked: t,
25
- defaultChecked: g,
26
- value: r,
27
- name: a,
28
- onChange: m
29
- }
30
- ),
31
- o
32
- ] });
33
- }
34
- ), I = Object.assign(f, {
35
- Item: d
36
- });
37
- export {
38
- I as Togglegroup
39
- };
40
- //# sourceMappingURL=togglegroup.js.map
1
+ import e from "../styles.module.js";
2
+ import t from "clsx";
3
+ import { forwardRef as n } from "react";
4
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
+ //#region designsystem/togglegroup/togglegroup.tsx
6
+ var a = n(function({ "data-toggle-group": n, className: i, ...a }, o) {
7
+ return /* @__PURE__ */ r("fieldset", {
8
+ className: t(e.togglegroup, i),
9
+ "data-toggle-group": n || "Valgknapper",
10
+ ref: o,
11
+ ...a
12
+ });
13
+ }), o = n(function({ children: t, checked: n, defaultChecked: a, value: o, name: s, onChange: c, ...l }, u) {
14
+ return /* @__PURE__ */ i("label", {
15
+ className: e.button,
16
+ ref: u,
17
+ ...l,
18
+ children: [/* @__PURE__ */ r("input", {
19
+ type: "radio",
20
+ checked: n,
21
+ defaultChecked: a,
22
+ value: o,
23
+ name: s,
24
+ onChange: c
25
+ }), t]
26
+ });
27
+ }), s = Object.assign(a, { Item: o });
28
+ //#endregion
29
+ export { s as Togglegroup };
30
+
31
+ //# sourceMappingURL=togglegroup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"togglegroup.js","sources":["../../designsystem/togglegroup/togglegroup.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { forwardRef } from \"react\";\nimport type { InputProps } from \"../react\";\nimport styles from \"../styles.module.css\";\n\nexport type TogglegroupProps = React.ComponentPropsWithoutRef<\"fieldset\"> & {\n\t\"data-toggle-group\"?: string;\n};\nexport type TogglegroupItemProps = Omit<\n\tReact.ComponentPropsWithoutRef<\"label\">,\n\t\"onChange\"\n> &\n\tPick<InputProps, \"defaultChecked\" | \"checked\" | \"onChange\" | \"value\"> &\n\tRequired<Pick<InputProps, \"name\">>; // Make name required\n\nconst TogglegroupComp = forwardRef<HTMLFieldSetElement, TogglegroupProps>(\n\tfunction Togglegroup(\n\t\t{ \"data-toggle-group\": label, className, ...rest },\n\t\tref,\n\t) {\n\t\treturn (\n\t\t\t<fieldset\n\t\t\t\tclassName={clsx(styles.togglegroup, className)}\n\t\t\t\tdata-toggle-group={label || \"Valgknapper\"}\n\t\t\t\tref={ref}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t);\n\t},\n);\nconst TogglegroupItem = forwardRef<HTMLLabelElement, TogglegroupItemProps>(\n\tfunction TogglegroupItem(\n\t\t{ children, checked, defaultChecked, value, name, onChange, ...rest },\n\t\tref,\n\t) {\n\t\treturn (\n\t\t\t<label className={styles.button} ref={ref} {...rest}>\n\t\t\t\t<input\n\t\t\t\t\t{...{ type: \"radio\", checked, defaultChecked, value, name, onChange }}\n\t\t\t\t/>\n\t\t\t\t{children}\n\t\t\t</label>\n\t\t);\n\t},\n);\n\nexport const Togglegroup = Object.assign(TogglegroupComp, {\n\tItem: TogglegroupItem,\n});\n"],"names":["TogglegroupComp","forwardRef","label","className","rest","ref","jsx","clsx","styles","TogglegroupItem","children","checked","defaultChecked","value","name","onChange","Togglegroup"],"mappings":";;;;AAeA,MAAMA,IAAkBC;AAAA,EACvB,SACC,EAAE,qBAAqBC,GAAO,WAAAC,GAAW,GAAGC,EAAA,GAC5CC,GACC;AACD,WACC,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACA,WAAWC,EAAKC,EAAO,aAAaL,CAAS;AAAA,QAC7C,qBAAmBD,KAAS;AAAA,QAC5B,KAAAG;AAAA,QACC,GAAGD;AAAA,MAAA;AAAA,IAAA;AAAA,EAGP;AACD,GACMK,IAAkBR;AAAA,EACvB,SACC,EAAE,UAAAS,GAAU,SAAAC,GAAS,gBAAAC,GAAgB,OAAAC,GAAO,MAAAC,GAAM,UAAAC,GAAU,GAAGX,EAAA,GAC/DC,GACC;AACD,6BACE,SAAA,EAAM,WAAWG,EAAO,QAAQ,KAAAH,GAAW,GAAGD,GAC9C,UAAA;AAAA,MAAA,gBAAAE;AAAA,QAAC;AAAA,QAAA;AAAA,UACM,MAAM;AAAA,UAAS,SAAAK;AAAA,UAAS,gBAAAC;AAAA,UAAgB,OAAAC;AAAA,UAAO,MAAAC;AAAA,UAAM,UAAAC;AAAA,QAAS;AAAA,MAAA;AAAA,MAEpEL;AAAA,IAAA,GACF;AAAA,EAEF;AACD,GAEaM,IAAc,OAAO,OAAOhB,GAAiB;AAAA,EACzD,MAAMS;AACP,CAAC;"}
1
+ {"version":3,"file":"togglegroup.js","names":[],"sources":["../../designsystem/togglegroup/togglegroup.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { forwardRef } from \"react\";\nimport type { InputProps } from \"../react\";\nimport styles from \"../styles.module.css\";\n\nexport type TogglegroupProps = React.ComponentPropsWithoutRef<\"fieldset\"> & {\n\t\"data-toggle-group\"?: string;\n};\nexport type TogglegroupItemProps = Omit<\n\tReact.ComponentPropsWithoutRef<\"label\">,\n\t\"onChange\"\n> &\n\tPick<InputProps, \"defaultChecked\" | \"checked\" | \"onChange\" | \"value\"> &\n\tRequired<Pick<InputProps, \"name\">>; // Make name required\n\nconst TogglegroupComp = forwardRef<HTMLFieldSetElement, TogglegroupProps>(\n\tfunction Togglegroup(\n\t\t{ \"data-toggle-group\": label, className, ...rest },\n\t\tref,\n\t) {\n\t\treturn (\n\t\t\t<fieldset\n\t\t\t\tclassName={clsx(styles.togglegroup, className)}\n\t\t\t\tdata-toggle-group={label || \"Valgknapper\"}\n\t\t\t\tref={ref}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t);\n\t},\n);\nconst TogglegroupItem = forwardRef<HTMLLabelElement, TogglegroupItemProps>(\n\tfunction TogglegroupItem(\n\t\t{ children, checked, defaultChecked, value, name, onChange, ...rest },\n\t\tref,\n\t) {\n\t\treturn (\n\t\t\t<label className={styles.button} ref={ref} {...rest}>\n\t\t\t\t<input\n\t\t\t\t\t{...{ type: \"radio\", checked, defaultChecked, value, name, onChange }}\n\t\t\t\t/>\n\t\t\t\t{children}\n\t\t\t</label>\n\t\t);\n\t},\n);\n\nexport const Togglegroup = Object.assign(TogglegroupComp, {\n\tItem: TogglegroupItem,\n});\n"],"mappings":";;;;;AAeA,IAAM,IAAkB,EACvB,SACC,EAAE,qBAAqB,GAAO,cAAW,GAAG,KAC5C,GACC;CACD,OACC,kBAAC,YAAD;EACC,WAAW,EAAK,EAAO,aAAa,CAAS;EAC7C,qBAAmB,KAAS;EACvB;EACL,GAAI;CACJ,CAAA;AAEH,CACD,GACM,IAAkB,EACvB,SACC,EAAE,aAAU,YAAS,mBAAgB,UAAO,SAAM,aAAU,GAAG,KAC/D,GACC;CACD,OACC,kBAAC,SAAD;EAAO,WAAW,EAAO;EAAa;EAAK,GAAI;YAA/C,CACC,kBAAC,SAAD;GACO,MAAM;GAAS;GAAS;GAAgB;GAAO;GAAM;EAC3D,CAAA,GACA,CACK;;AAET,CACD,GAEa,IAAc,OAAO,OAAO,GAAiB,EACzD,MAAM,EACP,CAAC"}
@@ -1,25 +1,12 @@
1
- import "@u-elements/u-progress";
2
- import { setTooltipElement as t } from "@digdir/designsystemet-web";
3
- import "../external/@u-elements/u-combobox/dist/u-combobox.js";
4
- import "../external/@u-elements/u-details/dist/u-details.js";
5
- import "../analytics/analytics.js";
6
- import "../app/app-observer.js";
7
- import { isBrowser as o, tag as m } from "../utils.js";
8
- import i from "../styles.module.css.js";
9
- import "../toast/toast-helper.js";
10
- import "../chart/chart-element.js";
11
- import "../deprecations.js";
12
- import "../logo/logo-observer.js";
13
- import "../popover/popover-observer.js";
14
- import "../table/table-observer.js";
15
- import "../toast/toast-observer.js";
16
- import "../validation/validation-observer.js";
17
- o() && t(
18
- document.getElementById("mtds-tooltip") || m("div", {
19
- class: i._tooltip,
20
- id: "mtds-tooltip",
21
- popover: "manual"
22
- })
23
- // This id is also used by app.module.css
24
- );
25
- //# sourceMappingURL=tooltip-element.js.map
1
+ import e from "../styles.module.js";
2
+ import { isBrowser as t, tag as n } from "../utils.js";
3
+ import { designsystem_exports as r } from "../index.js";
4
+ //#region designsystem/tooltip/tooltip-element.ts
5
+ t() && (0, r.setTooltipElement)(document.getElementById("mtds-tooltip") || n("div", {
6
+ class: e._tooltip,
7
+ id: "mtds-tooltip",
8
+ popover: "manual"
9
+ }));
10
+ //#endregion
11
+
12
+ //# sourceMappingURL=tooltip-element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip-element.js","sources":["../../designsystem/tooltip/tooltip-element.ts"],"sourcesContent":["import { setTooltipElement } from \"..\";\nimport styles from \"../styles.module.css\";\nimport { isBrowser, tag } from \"../utils\";\n\n// Set custom tooltip element\nif (isBrowser())\n\tsetTooltipElement(\n\t\tdocument.getElementById(\"mtds-tooltip\") ||\n\t\t\ttag(\"div\", {\n\t\t\t\tclass: styles._tooltip,\n\t\t\t\tid: \"mtds-tooltip\",\n\t\t\t\tpopover: \"manual\",\n\t\t\t}), // This id is also used by app.module.css\n\t);\n"],"names":["isBrowser","setTooltipElement","tag","styles"],"mappings":";;;;;;;;;;;;;;;;AAKIA,EAAA,KACHC;AAAA,EACC,SAAS,eAAe,cAAc,KACrCC,EAAI,OAAO;AAAA,IACV,OAAOC,EAAO;AAAA,IACd,IAAI;AAAA,IACJ,SAAS;AAAA,EAAA,CACT;AAAA;AAAA;"}
1
+ {"version":3,"file":"tooltip-element.js","names":[],"sources":["../../designsystem/tooltip/tooltip-element.ts"],"sourcesContent":["import { setTooltipElement } from \"..\";\nimport styles from \"../styles.module.css\";\nimport { isBrowser, tag } from \"../utils\";\n\n// Set custom tooltip element\nif (isBrowser())\n\tsetTooltipElement(\n\t\tdocument.getElementById(\"mtds-tooltip\") ||\n\t\t\ttag(\"div\", {\n\t\t\t\tclass: styles._tooltip,\n\t\t\t\tid: \"mtds-tooltip\",\n\t\t\t\tpopover: \"manual\",\n\t\t\t}), // This id is also used by app.module.css\n\t);\n"],"mappings":";;;;AAKI,EAAU,MACb,GAAA,EAAA,kBAAA,CACC,SAAS,eAAe,cAAc,KACrC,EAAI,OAAO;CACV,OAAO,EAAO;CACd,IAAI;CACJ,SAAS;AACV,CAAC,CACH"}
@@ -1,23 +1,40 @@
1
+ import e from "../styles.module.js";
2
+ import t from "clsx";
3
+ import { forwardRef as n } from "react";
1
4
  import { jsx as r } from "react/jsx-runtime";
2
- import a from "clsx";
3
- import { forwardRef as e } from "react";
4
- import c from "../styles.module.css.js";
5
- const d = e(function({ as: n, className: s, ...o }, t) {
6
- return /* @__PURE__ */ r(n || "h2", { className: a(c.heading, s), ref: t, ...o });
7
- }), l = e(function({ as: n, className: s, ...o }, t) {
8
- return /* @__PURE__ */ r(n || "small", { className: a(c.muted, s), ref: t, ...o });
9
- }), p = e(function({ as: n, className: s, ...o }, t) {
10
- return /* @__PURE__ */ r(n || "span", { className: a(c.ingress, s), ref: t, ...o });
11
- }), N = e(function({ as: n, className: s, ...o }, t) {
12
- return /* @__PURE__ */ r(n || "div", { className: a(c.info, s), ref: t, ...o });
13
- }), I = e(function({ as: n, className: s, ...o }, t) {
14
- return /* @__PURE__ */ r(n || "div", { className: a(c.prose, s), ref: t, ...o });
5
+ //#region designsystem/typography/typography.tsx
6
+ var i = n(function({ as: n, className: i, ...a }, o) {
7
+ return /* @__PURE__ */ r(n || "h2", {
8
+ className: t(e.heading, i),
9
+ ref: o,
10
+ ...a
11
+ });
12
+ }), a = n(function({ as: n, className: i, ...a }, o) {
13
+ return /* @__PURE__ */ r(n || "small", {
14
+ className: t(e.muted, i),
15
+ ref: o,
16
+ ...a
17
+ });
18
+ }), o = n(function({ as: n, className: i, ...a }, o) {
19
+ return /* @__PURE__ */ r(n || "span", {
20
+ className: t(e.ingress, i),
21
+ ref: o,
22
+ ...a
23
+ });
24
+ }), s = n(function({ as: n, className: i, ...a }, o) {
25
+ return /* @__PURE__ */ r(n || "div", {
26
+ className: t(e.info, i),
27
+ ref: o,
28
+ ...a
29
+ });
30
+ }), c = n(function({ as: n, className: i, ...a }, o) {
31
+ return /* @__PURE__ */ r(n || "div", {
32
+ className: t(e.prose, i),
33
+ ref: o,
34
+ ...a
35
+ });
15
36
  });
16
- export {
17
- d as Heading,
18
- N as Info,
19
- p as Ingress,
20
- l as Muted,
21
- I as Prose
22
- };
23
- //# sourceMappingURL=typography.js.map
37
+ //#endregion
38
+ export { i as Heading, s as Info, o as Ingress, a as Muted, c as Prose };
39
+
40
+ //# sourceMappingURL=typography.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typography.js","sources":["../../designsystem/typography/typography.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { forwardRef, type JSX } from \"react\";\nimport type {\n\tPolymorphicComponentPropWithRef,\n\tPolymorphicRef,\n} from \"../react-types\";\nimport styles from \"../styles.module.css\";\n\nexport type HeadingSizes = \"2xs\" | \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\";\nexport type HeadingProps<As extends React.ElementType = \"h2\"> =\n\tPolymorphicComponentPropWithRef<\n\t\tAs,\n\t\t{\n\t\t\t\"data-size\"?: HeadingSizes;\n\t\t\t\"data-justify\"?: \"start\" | \"center\";\n\t\t}\n\t>;\n\ntype HeadingComponent = <As extends React.ElementType = \"h2\">(\n\tprops: HeadingProps<As>,\n) => JSX.Element;\n\nexport const Heading: HeadingComponent = forwardRef<null>(function Heading<\n\tAs extends React.ElementType = \"h2\",\n>({ as, className, ...rest }: HeadingProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"h2\";\n\n\treturn (\n\t\t<Tag className={clsx(styles.heading, className)} ref={ref} {...rest} />\n\t);\n}) as HeadingComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\nexport type MutedProps<As extends React.ElementType = \"small\"> =\n\tPolymorphicComponentPropWithRef<As>;\n\ntype MutedComponent = <As extends React.ElementType = \"small\">(\n\tprops: MutedProps<As>,\n) => JSX.Element;\n\nexport const Muted: MutedComponent = forwardRef<null>(function Muted<\n\tAs extends React.ElementType = \"small\",\n>({ as, className, ...rest }: MutedProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"small\";\n\treturn <Tag className={clsx(styles.muted, className)} ref={ref} {...rest} />;\n}) as MutedComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\nexport type IngressProps<As extends React.ElementType = \"span\"> =\n\tPolymorphicComponentPropWithRef<As>;\n\ntype IngressComponent = <As extends React.ElementType = \"span\">(\n\tprops: MutedProps<As>,\n) => JSX.Element;\n\nexport const Ingress: IngressComponent = forwardRef<null>(function Ingress<\n\tAs extends React.ElementType = \"span\",\n>({ as, className, ...rest }: IngressProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"span\";\n\treturn (\n\t\t<Tag className={clsx(styles.ingress, className)} ref={ref} {...rest} />\n\t);\n}) as IngressComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\nexport type InfoProps<As extends React.ElementType = \"div\"> =\n\tPolymorphicComponentPropWithRef<\n\t\tAs,\n\t\t{ \"data-variant\"?: \"regular\" | \"circle\" }\n\t>;\n\ntype InfoComponent = <As extends React.ElementType = \"div\">(\n\tprops: MutedProps<As>,\n) => JSX.Element;\n\nexport const Info: InfoComponent = forwardRef<null>(function Info<\n\tAs extends React.ElementType = \"div\",\n>({ as, className, ...rest }: InfoProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"div\";\n\treturn <Tag className={clsx(styles.info, className)} ref={ref} {...rest} />;\n}) as InfoComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\n/**\n * Prose\n */\nexport type ProseProps<As extends React.ElementType = \"div\"> =\n\tPolymorphicComponentPropWithRef<\n\t\tAs,\n\t\t{ \"data-justify\"?: \"start\" | \"center\" | \"end\" }\n\t>;\n\ntype ProseComponent = <As extends React.ElementType = \"div\">(\n\tprops: ProseProps<As>,\n) => JSX.Element;\n\nexport const Prose: ProseComponent = forwardRef<null>(function Prose<\n\tAs extends React.ElementType = \"div\",\n>({ as, className, ...rest }: ProseProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"div\";\n\n\treturn <Tag className={clsx(styles.prose, className)} ref={ref} {...rest} />;\n}) as ProseComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n"],"names":["Heading","forwardRef","as","className","rest","ref","jsx","clsx","styles","Muted","Ingress","Info","Prose"],"mappings":";;;;AAsBO,MAAMA,IAA4BC,EAAiB,SAExD,EAAE,IAAAC,GAAI,WAAAC,GAAW,GAAGC,EAAA,GAA0BC,GAA0B;AAGzE,SACC,gBAAAC,EAHWJ,KAAM,MAGhB,EAAI,WAAWK,EAAKC,EAAO,SAASL,CAAS,GAAG,KAAAE,GAAW,GAAGD,EAAA,CAAM;AAEvE,CAAC,GASYK,IAAwBR,EAAiB,SAEpD,EAAE,IAAAC,GAAI,WAAAC,GAAW,GAAGC,EAAA,GAAwBC,GAA0B;AAEvE,SAAO,gBAAAC,EADKJ,KAAM,SACV,EAAI,WAAWK,EAAKC,EAAO,OAAOL,CAAS,GAAG,KAAAE,GAAW,GAAGD,EAAA,CAAM;AAC3E,CAAC,GASYM,IAA4BT,EAAiB,SAExD,EAAE,IAAAC,GAAI,WAAAC,GAAW,GAAGC,EAAA,GAA0BC,GAA0B;AAEzE,SACC,gBAAAC,EAFWJ,KAAM,QAEhB,EAAI,WAAWK,EAAKC,EAAO,SAASL,CAAS,GAAG,KAAAE,GAAW,GAAGD,EAAA,CAAM;AAEvE,CAAC,GAYYO,IAAsBV,EAAiB,SAElD,EAAE,IAAAC,GAAI,WAAAC,GAAW,GAAGC,EAAA,GAAuBC,GAA0B;AAEtE,SAAO,gBAAAC,EADKJ,KAAM,OACV,EAAI,WAAWK,EAAKC,EAAO,MAAML,CAAS,GAAG,KAAAE,GAAW,GAAGD,EAAA,CAAM;AAC1E,CAAC,GAeYQ,IAAwBX,EAAiB,SAEpD,EAAE,IAAAC,GAAI,WAAAC,GAAW,GAAGC,EAAA,GAAwBC,GAA0B;AAGvE,SAAO,gBAAAC,EAFKJ,KAAM,OAEV,EAAI,WAAWK,EAAKC,EAAO,OAAOL,CAAS,GAAG,KAAAE,GAAW,GAAGD,EAAA,CAAM;AAC3E,CAAC;"}
1
+ {"version":3,"file":"typography.js","names":[],"sources":["../../designsystem/typography/typography.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport { forwardRef, type JSX } from \"react\";\nimport type {\n\tPolymorphicComponentPropWithRef,\n\tPolymorphicRef,\n} from \"../react-types\";\nimport styles from \"../styles.module.css\";\n\nexport type HeadingSizes = \"2xs\" | \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"2xl\";\nexport type HeadingProps<As extends React.ElementType = \"h2\"> =\n\tPolymorphicComponentPropWithRef<\n\t\tAs,\n\t\t{\n\t\t\t\"data-size\"?: HeadingSizes;\n\t\t\t\"data-justify\"?: \"start\" | \"center\";\n\t\t}\n\t>;\n\ntype HeadingComponent = <As extends React.ElementType = \"h2\">(\n\tprops: HeadingProps<As>,\n) => JSX.Element;\n\nexport const Heading: HeadingComponent = forwardRef<null>(function Heading<\n\tAs extends React.ElementType = \"h2\",\n>({ as, className, ...rest }: HeadingProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"h2\";\n\n\treturn (\n\t\t<Tag className={clsx(styles.heading, className)} ref={ref} {...rest} />\n\t);\n}) as HeadingComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\nexport type MutedProps<As extends React.ElementType = \"small\"> =\n\tPolymorphicComponentPropWithRef<As>;\n\ntype MutedComponent = <As extends React.ElementType = \"small\">(\n\tprops: MutedProps<As>,\n) => JSX.Element;\n\nexport const Muted: MutedComponent = forwardRef<null>(function Muted<\n\tAs extends React.ElementType = \"small\",\n>({ as, className, ...rest }: MutedProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"small\";\n\treturn <Tag className={clsx(styles.muted, className)} ref={ref} {...rest} />;\n}) as MutedComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\nexport type IngressProps<As extends React.ElementType = \"span\"> =\n\tPolymorphicComponentPropWithRef<As>;\n\ntype IngressComponent = <As extends React.ElementType = \"span\">(\n\tprops: MutedProps<As>,\n) => JSX.Element;\n\nexport const Ingress: IngressComponent = forwardRef<null>(function Ingress<\n\tAs extends React.ElementType = \"span\",\n>({ as, className, ...rest }: IngressProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"span\";\n\treturn (\n\t\t<Tag className={clsx(styles.ingress, className)} ref={ref} {...rest} />\n\t);\n}) as IngressComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\nexport type InfoProps<As extends React.ElementType = \"div\"> =\n\tPolymorphicComponentPropWithRef<\n\t\tAs,\n\t\t{ \"data-variant\"?: \"regular\" | \"circle\" }\n\t>;\n\ntype InfoComponent = <As extends React.ElementType = \"div\">(\n\tprops: MutedProps<As>,\n) => JSX.Element;\n\nexport const Info: InfoComponent = forwardRef<null>(function Info<\n\tAs extends React.ElementType = \"div\",\n>({ as, className, ...rest }: InfoProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"div\";\n\treturn <Tag className={clsx(styles.info, className)} ref={ref} {...rest} />;\n}) as InfoComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n\n/**\n * Prose\n */\nexport type ProseProps<As extends React.ElementType = \"div\"> =\n\tPolymorphicComponentPropWithRef<\n\t\tAs,\n\t\t{ \"data-justify\"?: \"start\" | \"center\" | \"end\" }\n\t>;\n\ntype ProseComponent = <As extends React.ElementType = \"div\">(\n\tprops: ProseProps<As>,\n) => JSX.Element;\n\nexport const Prose: ProseComponent = forwardRef<null>(function Prose<\n\tAs extends React.ElementType = \"div\",\n>({ as, className, ...rest }: ProseProps<As>, ref?: PolymorphicRef<As>) {\n\tconst Tag = as || \"div\";\n\n\treturn <Tag className={clsx(styles.prose, className)} ref={ref} {...rest} />;\n}) as ProseComponent; // Needed to tell Typescript this does not return ReactNode but acutally JSX.Element\n"],"mappings":";;;;;AAsBA,IAAa,IAA4B,EAAiB,SAExD,EAAE,OAAI,cAAW,GAAG,KAA0B,GAA0B;CAGzE,OACC,kBAHW,KAAM,MAGjB;EAAK,WAAW,EAAK,EAAO,SAAS,CAAS;EAAQ;EAAK,GAAI;CAAO,CAAA;AAExE,CAAC,GASY,IAAwB,EAAiB,SAEpD,EAAE,OAAI,cAAW,GAAG,KAAwB,GAA0B;CAEvE,OAAO,kBADK,KAAM,SACX;EAAK,WAAW,EAAK,EAAO,OAAO,CAAS;EAAQ;EAAK,GAAI;CAAO,CAAA;AAC5E,CAAC,GASY,IAA4B,EAAiB,SAExD,EAAE,OAAI,cAAW,GAAG,KAA0B,GAA0B;CAEzE,OACC,kBAFW,KAAM,QAEjB;EAAK,WAAW,EAAK,EAAO,SAAS,CAAS;EAAQ;EAAK,GAAI;CAAO,CAAA;AAExE,CAAC,GAYY,IAAsB,EAAiB,SAElD,EAAE,OAAI,cAAW,GAAG,KAAuB,GAA0B;CAEtE,OAAO,kBADK,KAAM,OACX;EAAK,WAAW,EAAK,EAAO,MAAM,CAAS;EAAQ;EAAK,GAAI;CAAO,CAAA;AAC3E,CAAC,GAeY,IAAwB,EAAiB,SAEpD,EAAE,OAAI,cAAW,GAAG,KAAwB,GAA0B;CAGvE,OAAO,kBAFK,KAAM,OAEX;EAAK,WAAW,EAAK,EAAO,OAAO,CAAS;EAAQ;EAAK,GAAI;CAAO,CAAA;AAC5E,CAAC"}