@embeddable.com/remarkable-ui 0.1.38 → 0.1.39

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 (119) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +4 -4
  2. package/dist/BarChartDefaultPro.js +4 -4
  3. package/dist/BarChartGroupedHorizontalPro.js +4 -4
  4. package/dist/BarChartGroupedPro.js +4 -4
  5. package/dist/BarChartStackedHorizontalPro.js +4 -4
  6. package/dist/BarChartStackedPro.js +4 -4
  7. package/dist/ChartCard-t-ie7CyA.js +117 -0
  8. package/dist/{ChartCard-Cr2L2Uki.js.map → ChartCard-t-ie7CyA.js.map} +1 -1
  9. package/dist/{ComparisonPeriod.type.emb-C7ixEJKv.js → ComparisonPeriod.type.emb-DAJ28BEm.js} +2 -2
  10. package/dist/{ComparisonPeriod.type.emb-C7ixEJKv.js.map → ComparisonPeriod.type.emb-DAJ28BEm.js.map} +1 -1
  11. package/dist/ComparisonPeriodSelectFieldPro.js +4 -4
  12. package/dist/DateRangeSelectFieldPro.js +5 -5
  13. package/dist/DonutChartPro.js +2 -2
  14. package/dist/DonutLabelChartPro.js +2 -2
  15. package/dist/{EditorCard-VE-lXcu3.js → EditorCard-CFwSMjsm.js} +14 -14
  16. package/dist/{EditorCard-VE-lXcu3.js.map → EditorCard-CFwSMjsm.js.map} +1 -1
  17. package/dist/{KpiChart-PRQV9-IW.js → KpiChart-CraGm3UZ.js} +13 -13
  18. package/dist/{KpiChart-PRQV9-IW.js.map → KpiChart-CraGm3UZ.js.map} +1 -1
  19. package/dist/KpiChartNumberComparisonPro.js +6 -6
  20. package/dist/KpiChartNumberPro.js +4 -4
  21. package/dist/LineChartComparisonDefaultPro.js +7 -7
  22. package/dist/LineChartDefaultPro.js +5 -5
  23. package/dist/LineChartGroupedPro.js +5 -5
  24. package/dist/MultiSelectFieldPro.js +2 -2
  25. package/dist/PieChartPro.js +2 -2
  26. package/dist/PivotTable-DOQvwsPJ.js +253 -0
  27. package/dist/PivotTable-DOQvwsPJ.js.map +1 -0
  28. package/dist/PivotTablePro.js +141 -0
  29. package/dist/PivotTablePro.js.map +1 -0
  30. package/dist/{SingleSelectField-Dzx78rCq.js → SingleSelectField-C5CvaWcl.js} +3 -3
  31. package/dist/{SingleSelectField-Dzx78rCq.js.map → SingleSelectField-C5CvaWcl.js.map} +1 -1
  32. package/dist/SingleSelectFieldPro.js +2 -2
  33. package/dist/TableChartPaginated.js +3 -3
  34. package/dist/TableChartPaginated.js.map +1 -1
  35. package/dist/{bars.utils-CTqUglN7.js → bars.utils-9JzdTZTY.js} +5 -5
  36. package/dist/{bars.utils-CTqUglN7.js.map → bars.utils-9JzdTZTY.js.map} +1 -1
  37. package/dist/charts.newFillGaps.hooks-CEXFxNVs.js +65 -0
  38. package/dist/charts.newFillGaps.hooks-CEXFxNVs.js.map +1 -0
  39. package/dist/{charts.utils-CgwyTiTH.js → charts.utils-BCbFzrS3.js} +1371 -1396
  40. package/dist/charts.utils-BCbFzrS3.js.map +1 -0
  41. package/dist/{component.constants-D59iJ42U.js → component.constants-CeRyckoA.js} +118 -107
  42. package/dist/component.constants-CeRyckoA.js.map +1 -0
  43. package/dist/embeddable-components.json +9 -8
  44. package/dist/embeddable-theme-2b917.js +6 -0
  45. package/dist/{formatter.utils-DDLdrAl9.js → formatter.utils-CRniOO_L.js} +2 -2
  46. package/dist/{formatter.utils-DDLdrAl9.js.map → formatter.utils-CRniOO_L.js.map} +1 -1
  47. package/dist/{index-DKUEiV33.js → index-8bDe4KZU.js} +11 -11
  48. package/dist/{index-DKUEiV33.js.map → index-8bDe4KZU.js.map} +1 -1
  49. package/dist/{index-DdEgKFPe.js → index-Bn9eEnFY.js} +8 -8
  50. package/dist/{index-DdEgKFPe.js.map → index-Bn9eEnFY.js.map} +1 -1
  51. package/dist/{index-CVw4TFfQ.js → index-DWGU4X7I.js} +4 -4
  52. package/dist/{index-CVw4TFfQ.js.map → index-DWGU4X7I.js.map} +1 -1
  53. package/dist/{index-BlqpkSit.js → index-DpnU1wNV.js} +4 -4
  54. package/dist/{index-BlqpkSit.js.map → index-DpnU1wNV.js.map} +1 -1
  55. package/dist/{index-IjB-3gUH.js → index-JjqlON15.js} +5 -5
  56. package/dist/{index-IjB-3gUH.js.map → index-JjqlON15.js.map} +1 -1
  57. package/dist/{index-BGwJ9TYS.js → index-UTT7Qsiq.js} +7 -7
  58. package/dist/{index-BGwJ9TYS.js.map → index-UTT7Qsiq.js.map} +1 -1
  59. package/dist/index.js +106 -102
  60. package/dist/index.js.map +1 -1
  61. package/dist/object.utils-D_Zzon-H.js +37 -0
  62. package/dist/object.utils-D_Zzon-H.js.map +1 -0
  63. package/dist/{pies.utils-DArVf3EJ.js → pies.utils-CuMFaK2u.js} +5 -5
  64. package/dist/{pies.utils-DArVf3EJ.js.map → pies.utils-CuMFaK2u.js.map} +1 -1
  65. package/dist/quarterOfYear-C0maIilJ.js +68 -0
  66. package/dist/quarterOfYear-C0maIilJ.js.map +1 -0
  67. package/dist/remarkable-pro/components/charts/charts.newFillGaps.hooks.d.ts.map +1 -1
  68. package/dist/remarkable-pro/components/charts/shared/ChartCard/ChartCard.d.ts.map +1 -1
  69. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.d.ts +14 -0
  70. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/PivotPro.utils.d.ts.map +1 -0
  71. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/index.d.ts +16 -0
  72. package/dist/remarkable-pro/components/charts/tables/PivotTablePro/index.d.ts.map +1 -0
  73. package/dist/remarkable-pro/components/component.constants.d.ts +11 -0
  74. package/dist/remarkable-pro/components/component.constants.d.ts.map +1 -1
  75. package/dist/remarkable-pro/theme/i18n/translations/de.d.ts.map +1 -1
  76. package/dist/remarkable-pro/theme/i18n/translations/en.d.ts.map +1 -1
  77. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.d.ts +4 -0
  78. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.d.ts.map +1 -0
  79. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.stories.d.ts +24 -0
  80. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.stories.d.ts.map +1 -0
  81. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.types.d.ts +39 -0
  82. package/dist/remarkable-ui/charts/tables/PivotTable/PivotTable.types.d.ts.map +1 -0
  83. package/dist/remarkable-ui/charts/tables/Table/Table.hooks.d.ts.map +1 -0
  84. package/dist/remarkable-ui/charts/tables/{TablePaginated.d.ts → Table/TablePaginated.d.ts} +1 -1
  85. package/dist/remarkable-ui/charts/tables/Table/TablePaginated.d.ts.map +1 -0
  86. package/dist/remarkable-ui/charts/tables/Table/TablePaginated.stories.d.ts.map +1 -0
  87. package/dist/remarkable-ui/charts/tables/{components → Table/components}/TableBody/TableBody.d.ts +1 -1
  88. package/dist/remarkable-ui/charts/tables/Table/components/TableBody/TableBody.d.ts.map +1 -0
  89. package/dist/remarkable-ui/charts/tables/{components → Table/components}/TableHeader/TableHeader.d.ts +1 -1
  90. package/dist/remarkable-ui/charts/tables/Table/components/TableHeader/TableHeader.d.ts.map +1 -0
  91. package/dist/remarkable-ui/charts/tables/{components → Table/components}/TablePagination/TablePagination.d.ts +1 -1
  92. package/dist/remarkable-ui/charts/tables/Table/components/TablePagination/TablePagination.d.ts.map +1 -0
  93. package/dist/remarkable-ui/charts/tables/Table/components/TablePagination/TablePagination.stories.d.ts.map +1 -0
  94. package/dist/remarkable-ui/charts/tables/{tables.types.d.ts → Table/table.types.d.ts} +2 -2
  95. package/dist/remarkable-ui/charts/tables/Table/table.types.d.ts.map +1 -0
  96. package/dist/remarkable-ui/index.d.ts +5 -3
  97. package/dist/remarkable-ui/index.d.ts.map +1 -1
  98. package/dist/remarkable-ui.css +1 -1
  99. package/dist/{timeRange.utils-D6gvWIhx.js → timeRange.utils-D8QUTull.js} +2 -2
  100. package/dist/{timeRange.utils-D6gvWIhx.js.map → timeRange.utils-D8QUTull.js.map} +1 -1
  101. package/package.json +1 -1
  102. package/dist/ChartCard-Cr2L2Uki.js +0 -110
  103. package/dist/charts.newFillGaps.hooks-YXEKFvmz.js +0 -64
  104. package/dist/charts.newFillGaps.hooks-YXEKFvmz.js.map +0 -1
  105. package/dist/charts.utils-CgwyTiTH.js.map +0 -1
  106. package/dist/component.constants-D59iJ42U.js.map +0 -1
  107. package/dist/object.utils-Cae_z0QB.js +0 -69
  108. package/dist/object.utils-Cae_z0QB.js.map +0 -1
  109. package/dist/remarkable-ui/charts/tables/Table.hooks.d.ts.map +0 -1
  110. package/dist/remarkable-ui/charts/tables/TablePaginated.d.ts.map +0 -1
  111. package/dist/remarkable-ui/charts/tables/TablePaginated.stories.d.ts.map +0 -1
  112. package/dist/remarkable-ui/charts/tables/components/TableBody/TableBody.d.ts.map +0 -1
  113. package/dist/remarkable-ui/charts/tables/components/TableHeader/TableHeader.d.ts.map +0 -1
  114. package/dist/remarkable-ui/charts/tables/components/TablePagination/TablePagination.d.ts.map +0 -1
  115. package/dist/remarkable-ui/charts/tables/components/TablePagination/TablePagination.stories.d.ts.map +0 -1
  116. package/dist/remarkable-ui/charts/tables/tables.types.d.ts.map +0 -1
  117. /package/dist/remarkable-ui/charts/tables/{Table.hooks.d.ts → Table/Table.hooks.d.ts} +0 -0
  118. /package/dist/remarkable-ui/charts/tables/{TablePaginated.stories.d.ts → Table/TablePaginated.stories.d.ts} +0 -0
  119. /package/dist/remarkable-ui/charts/tables/{components → Table/components}/TablePagination/TablePagination.stories.d.ts +0 -0
package/dist/index.js CHANGED
@@ -1,45 +1,46 @@
1
- import { C as xs, S as bs } from "./ChartCard-Cr2L2Uki.js";
2
- import { j as s, ae as v, af as u, ag as _, ah as S, ai as I, aj as N, ak as T, al as $ } from "./component.constants-D59iJ42U.js";
3
- import { am as _s, au as fs, ao as Cs, an as gs, a0 as ys, at as js, av as ws, aq as vs, ar as Ss, ap as Is, a4 as Ns, a5 as Ts, ax as $s, as as Ps, T as ks, d as As, aw as Ls, c as Bs, z as Ms, aJ as Ds, ab as Fs, W as Rs, b as zs, aI as Os, a7 as Ws, aK as Es, Y as Ks, Z as qs, aa as Gs, X as Hs, F as Vs, C as Xs, a6 as Us, U as Ys, i as Js, a3 as Zs, A as Qs, w as sa, a as aa, ad as ea, r as ta, p as na, h as oa, s as ia, g as ra, e as ca, aL as la, B as ua, f as ma, aE as ha, a9 as da, a1 as xa, aD as ba, aF as pa, aC as _a, aA as fa, aG as Ca, aB as ga, ay as ya, az as ja, a8 as wa, aH as va, t as Sa, x as Ia, v as Na, l as Ta, k as $a, y as Pa, n as ka, u as Aa, q as La } from "./component.constants-D59iJ42U.js";
4
- import { useRef as P, useState as k, useEffect as A } from "react";
5
- import { E as Ma, S as Da } from "./EditorCard-VE-lXcu3.js";
6
- import { B as g } from "./index-CVw4TFfQ.js";
7
- import { b as Ra, i as za } from "./index-CVw4TFfQ.js";
8
- import { S as Wa } from "./SingleSelectField-Dzx78rCq.js";
9
- import { K as Ka } from "./KpiChart-PRQV9-IW.js";
10
- import { r as Ga, s as Ha } from "./charts.utils-CgwyTiTH.js";
11
- import { g as Xa } from "./object.utils-Cae_z0QB.js";
12
- import { g as Ya } from "./formatter.utils-DDLdrAl9.js";
13
- import { a as Za, g as Qa } from "./pies.utils-DArVf3EJ.js";
14
- import { i as ae } from "./index-DdEgKFPe.js";
15
- import { i as te } from "./index-BGwJ9TYS.js";
16
- import { i as oe } from "./index-DKUEiV33.js";
17
- import { i as re } from "./index-IjB-3gUH.js";
18
- import { i as le } from "./index-BlqpkSit.js";
19
- import { C as me } from "./ComparisonPeriod.type.emb-C7ixEJKv.js";
20
- import { i as de, s as xe } from "./color.utils-CVyp-fGP.js";
21
- const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D = "_short_436fl_26", F = "_tall_436fl_34", e = {
22
- container: L,
23
- column: B,
1
+ import { C as xs, S as bs } from "./ChartCard-t-ie7CyA.js";
2
+ import { j as s, af as w, ag as u, ah as _, ai as I, aj as S, ak as N, al as T, am as P } from "./component.constants-CeRyckoA.js";
3
+ import { an as _s, av as fs, ap as Cs, ao as gs, a0 as ys, au as js, aw as vs, ar as ws, as as Is, aq as Ss, a6 as Ns, a7 as Ts, ay as Ps, at as $s, T as ks, d as As, ax as Bs, c as Ls, z as Ms, aL as Ds, ac as Fs, W as Rs, b as zs, aK as Os, a9 as Ws, aM as Es, Y as Gs, Z as Ks, a5 as qs, X as Hs, F as Vs, C as Xs, a8 as Us, U as Ys, i as Js, a3 as Zs, A as Qs, w as sa, a as aa, ae as ea, r as ta, p as na, h as oa, s as ra, g as ia, e as ca, aN as la, B as ua, f as ma, aG as ha, ab as da, a1 as xa, aF as ba, aH as pa, aE as _a, aB as fa, a4 as Ca, aC as ga, aI as ya, aD as ja, az as va, aA as wa, aa as Ia, aJ as Sa, t as Na, x as Ta, v as Pa, l as $a, k as ka, y as Aa, n as Ba, u as La, q as Ma } from "./component.constants-CeRyckoA.js";
4
+ import { useRef as $, useState as k, useEffect as A } from "react";
5
+ import { E as Fa, S as Ra } from "./EditorCard-CFwSMjsm.js";
6
+ import { B as g } from "./index-DWGU4X7I.js";
7
+ import { b as Oa, i as Wa } from "./index-DWGU4X7I.js";
8
+ import { S as Ga } from "./SingleSelectField-C5CvaWcl.js";
9
+ import { K as qa } from "./KpiChart-CraGm3UZ.js";
10
+ import { P as Va } from "./PivotTable-DOQvwsPJ.js";
11
+ import { r as Ua, s as Ya } from "./charts.utils-BCbFzrS3.js";
12
+ import { g as Za } from "./object.utils-D_Zzon-H.js";
13
+ import { g as se } from "./formatter.utils-CRniOO_L.js";
14
+ import { a as ee, g as te } from "./pies.utils-CuMFaK2u.js";
15
+ import { i as oe } from "./index-Bn9eEnFY.js";
16
+ import { i as ie } from "./index-UTT7Qsiq.js";
17
+ import { i as le } from "./index-8bDe4KZU.js";
18
+ import { i as me } from "./index-JjqlON15.js";
19
+ import { i as de } from "./index-DpnU1wNV.js";
20
+ import { C as be } from "./ComparisonPeriod.type.emb-DAJ28BEm.js";
21
+ import { i as _e, s as fe } from "./color.utils-CVyp-fGP.js";
22
+ const B = "_container_436fl_1", L = "_column_436fl_10", M = "_box_436fl_20", D = "_short_436fl_26", F = "_tall_436fl_34", e = {
23
+ container: B,
24
+ column: L,
24
25
  box: M,
25
26
  short: D,
26
27
  tall: F
27
- }, rs = ({ className: t }) => {
28
- const a = P(null), [n, l] = k(2);
28
+ }, is = ({ className: t }) => {
29
+ const a = $(null), [n, l] = k(2);
29
30
  A(() => {
30
31
  const o = () => {
31
32
  if (!a.current) return;
32
- const d = a.current.offsetWidth, y = 32, m = 16, j = 128, f = 256, x = d - y, b = Math.floor((x + m) / (j + m)), w = (x - (b - 1) * m) / b;
33
+ const d = a.current.offsetWidth, y = 32, m = 16, j = 128, f = 256, x = d - y, b = Math.floor((x + m) / (j + m)), v = (x - (b - 1) * m) / b;
33
34
  let C = b;
34
- w > f && (C = Math.floor((x + m) / (f + m))), l(Math.max(2, C));
35
+ v > f && (C = Math.floor((x + m) / (f + m))), l(Math.max(2, C));
35
36
  };
36
37
  o();
37
- const i = new ResizeObserver(o);
38
- return a.current && i.observe(a.current), () => i.disconnect();
38
+ const r = new ResizeObserver(o);
39
+ return a.current && r.observe(a.current), () => r.disconnect();
39
40
  }, []);
40
41
  const c = (o) => {
41
- const i = o % 2 === 0;
42
- return /* @__PURE__ */ s.jsx("div", { className: e.column, children: i ? /* @__PURE__ */ s.jsxs(s.Fragment, { children: [
42
+ const r = o % 2 === 0;
43
+ return /* @__PURE__ */ s.jsx("div", { className: e.column, children: r ? /* @__PURE__ */ s.jsxs(s.Fragment, { children: [
43
44
  /* @__PURE__ */ s.jsx("div", { className: `${e.box} ${e.short}` }),
44
45
  /* @__PURE__ */ s.jsx("div", { className: `${e.box} ${e.tall}` }),
45
46
  /* @__PURE__ */ s.jsx("div", { className: `${e.box} ${e.short}` }),
@@ -51,7 +52,7 @@ const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D =
51
52
  /* @__PURE__ */ s.jsx("div", { className: `${e.box} ${e.short}` })
52
53
  ] }) }, o);
53
54
  };
54
- return /* @__PURE__ */ s.jsx("div", { ref: a, className: `${e.container} ${t || ""}`, children: Array.from({ length: n }, (o, i) => c(i)) });
55
+ return /* @__PURE__ */ s.jsx("div", { ref: a, className: `${e.container} ${t || ""}`, children: Array.from({ length: n }, (o, r) => c(r)) });
55
56
  }, R = "_icon_bk4b5_1", z = "_iconPrimary_bk4b5_6", O = "_iconSecondary_bk4b5_9", W = "_buttonIcon_bk4b5_12", p = {
56
57
  icon: R,
57
58
  iconPrimary: z,
@@ -61,7 +62,7 @@ const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D =
61
62
  icon: t,
62
63
  variant: a = "primary",
63
64
  ...n
64
- }) => /* @__PURE__ */ s.jsx(v, { variant: a, size: "medium", className: p.buttonIcon, ...n, children: /* @__PURE__ */ s.jsx(
65
+ }) => /* @__PURE__ */ s.jsx(w, { variant: a, size: "medium", className: p.buttonIcon, ...n, children: /* @__PURE__ */ s.jsx(
65
66
  t,
66
67
  {
67
68
  className: u(
@@ -69,10 +70,10 @@ const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D =
69
70
  p[`icon${a.charAt(0).toUpperCase() + a.slice(1)}`]
70
71
  )
71
72
  }
72
- ) }), E = "_ghostButton_1cvh9_1", K = "_icon_1cvh9_38", q = "_label_1cvh9_42", h = {
73
+ ) }), E = "_ghostButton_1cvh9_1", G = "_icon_1cvh9_38", K = "_label_1cvh9_42", h = {
73
74
  ghostButton: E,
74
- icon: K,
75
- label: q
75
+ icon: G,
76
+ label: K
76
77
  }, ls = ({
77
78
  startIcon: t,
78
79
  endIcon: a,
@@ -83,8 +84,8 @@ const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D =
83
84
  t && /* @__PURE__ */ s.jsx(t, { className: h.icon }),
84
85
  /* @__PURE__ */ s.jsx(_, { className: h.label, children: n }),
85
86
  a && /* @__PURE__ */ s.jsx(a, { className: h.icon })
86
- ] }), G = "_overlay_1wzuc_1", H = {
87
- overlay: G
87
+ ] }), q = "_overlay_1wzuc_1", H = {
88
+ overlay: q
88
89
  }, V = ({ className: t, children: a }) => /* @__PURE__ */ s.jsx("div", { className: u(H.overlay, t), children: a }), X = "_actions_pvzr9_1", U = {
89
90
  actions: X
90
91
  }, us = ({
@@ -94,17 +95,17 @@ const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D =
94
95
  cancelLabel: l = "Cancel",
95
96
  onConfirm: c,
96
97
  onCancel: o,
97
- className: i
98
- }) => /* @__PURE__ */ s.jsx(V, { children: /* @__PURE__ */ s.jsxs(S, { className: i, children: [
99
- /* @__PURE__ */ s.jsx(I, { title: t, rightContent: /* @__PURE__ */ s.jsx(N, { icon: T, onClick: o }) }),
100
- /* @__PURE__ */ s.jsxs($, { children: [
98
+ className: r
99
+ }) => /* @__PURE__ */ s.jsx(V, { children: /* @__PURE__ */ s.jsxs(I, { className: r, children: [
100
+ /* @__PURE__ */ s.jsx(S, { title: t, rightContent: /* @__PURE__ */ s.jsx(N, { icon: T, onClick: o }) }),
101
+ /* @__PURE__ */ s.jsxs(P, { children: [
101
102
  /* @__PURE__ */ s.jsx(_, { as: "span", children: a }),
102
103
  /* @__PURE__ */ s.jsxs("div", { className: U.actions, children: [
103
104
  /* @__PURE__ */ s.jsx(g, { variant: "secondary", size: "medium", onClick: o, children: l }),
104
105
  /* @__PURE__ */ s.jsx(g, { variant: "primary", size: "medium", onClick: c, children: n })
105
106
  ] })
106
107
  ] })
107
- ] }) }), Y = "_switchContainer_nupfs_1", J = "_switchLabel_nupfs_8", Z = "_switchInput_nupfs_14", Q = "_switchTrack_nupfs_21", ss = "_switchThumb_nupfs_51", as = "_checked_nupfs_66", es = "_disabled_nupfs_78", ts = "_labelText_nupfs_100", r = {
108
+ ] }) }), Y = "_switchContainer_nupfs_1", J = "_switchLabel_nupfs_8", Z = "_switchInput_nupfs_14", Q = "_switchTrack_nupfs_21", ss = "_switchThumb_nupfs_51", as = "_checked_nupfs_66", es = "_disabled_nupfs_78", ts = "_labelText_nupfs_100", i = {
108
109
  switchContainer: Y,
109
110
  switchLabel: J,
110
111
  switchInput: Z,
@@ -121,32 +122,32 @@ const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D =
121
122
  label: c,
122
123
  ...o
123
124
  }) => {
124
- const i = (d) => {
125
+ const r = (d) => {
125
126
  !n && a && a(d.target.checked);
126
127
  };
127
128
  return o["aria-label"] || console.warn(
128
129
  "Switch component requires either a label prop or aria-label prop for accessibility"
129
- ), /* @__PURE__ */ s.jsx("div", { className: u(r.switchContainer, l), children: /* @__PURE__ */ s.jsxs(
130
+ ), /* @__PURE__ */ s.jsx("div", { className: u(i.switchContainer, l), children: /* @__PURE__ */ s.jsxs(
130
131
  "label",
131
132
  {
132
- className: u(r.switchLabel, t && r.checked, n && r.disabled),
133
+ className: u(i.switchLabel, t && i.checked, n && i.disabled),
133
134
  children: [
134
135
  /* @__PURE__ */ s.jsx(
135
136
  "input",
136
137
  {
137
138
  type: "checkbox",
138
139
  checked: t,
139
- onChange: i,
140
+ onChange: r,
140
141
  disabled: n,
141
- className: r.switchInput,
142
+ className: i.switchInput,
142
143
  role: "switch",
143
144
  "aria-checked": t,
144
145
  "aria-disabled": n,
145
146
  ...o
146
147
  }
147
148
  ),
148
- /* @__PURE__ */ s.jsx("span", { className: r.switchTrack, "aria-hidden": "true", children: /* @__PURE__ */ s.jsx("span", { className: r.switchThumb, "aria-hidden": "true" }) }),
149
- c && /* @__PURE__ */ s.jsx(_, { as: "span", className: u(r.labelText, n && r.disabled), children: c })
149
+ /* @__PURE__ */ s.jsx("span", { className: i.switchTrack, "aria-hidden": "true", children: /* @__PURE__ */ s.jsx("span", { className: i.switchThumb, "aria-hidden": "true" }) }),
150
+ c && /* @__PURE__ */ s.jsx(_, { as: "span", className: u(i.labelText, n && i.disabled), children: c })
150
151
  ]
151
152
  }
152
153
  ) });
@@ -154,48 +155,49 @@ const L = "_container_436fl_1", B = "_column_436fl_10", M = "_box_436fl_20", D =
154
155
  export {
155
156
  g as Button,
156
157
  cs as ButtonIcon,
157
- S as Card,
158
- $ as CardContent,
158
+ I as Card,
159
+ P as CardContent,
159
160
  _s as CardContentInfo,
160
- I as CardHeader,
161
+ S as CardHeader,
161
162
  xs as ChartCard,
162
- me as ComparisonPeriodType,
163
+ be as ComparisonPeriodType,
163
164
  us as ConfirmCancelModal,
164
- le as DateRangeSelectFieldPro,
165
+ de as DateRangeSelectFieldPro,
165
166
  fs as DonutChart,
166
- te as DonutChartPro,
167
- oe as DonutLabelChartPro,
167
+ ie as DonutChartPro,
168
+ le as DonutLabelChartPro,
168
169
  Cs as Dropdown,
169
- Ma as EditorCard,
170
- rs as EmptyStateSkeleton,
170
+ Fa as EditorCard,
171
+ is as EmptyStateSkeleton,
171
172
  gs as FieldErrorMessage,
172
173
  ls as GhostButton,
173
174
  N as IconButton,
174
- Ka as KpiChart,
175
+ qa as KpiChart,
175
176
  ys as LineChart,
176
- Ra as MultiSelectField,
177
- za as MultiSelectFieldPro,
177
+ Oa as MultiSelectField,
178
+ Wa as MultiSelectFieldPro,
178
179
  js as NumberField,
179
180
  V as PageOverlay,
180
- ws as PieChart,
181
- ae as PieChartPro,
182
- vs as SelectButton,
183
- Ss as SelectList,
184
- Is as SelectListOption,
185
- Da as SelectListOptions,
186
- Wa as SingleSelectField,
187
- re as SingleSelectFieldPro,
181
+ vs as PieChart,
182
+ oe as PieChartPro,
183
+ Va as PivotTable,
184
+ ws as SelectButton,
185
+ Is as SelectList,
186
+ Ss as SelectListOption,
187
+ Ra as SelectListOptions,
188
+ Ga as SingleSelectField,
189
+ me as SingleSelectFieldPro,
188
190
  bs as Skeleton,
189
191
  ms as Switch,
190
192
  Ns as TableHeaderAlign,
191
193
  Ts as TablePaginated,
192
- $s as TableSortDirection,
193
- Ps as TextField,
194
+ Ps as TableSortDirection,
195
+ $s as TextField,
194
196
  _ as Typography,
195
197
  ks as chartColors,
196
198
  As as dataset,
197
- Ls as defaultPieChartOptions,
198
- Bs as description,
199
+ Bs as defaultPieChartOptions,
200
+ Ls as description,
199
201
  Ms as dimension,
200
202
  Ds as dimensionOrMeasure,
201
203
  Fs as dimensionSimple,
@@ -204,37 +206,37 @@ export {
204
206
  Os as dimensions,
205
207
  Ws as dimensionsAndMeasures,
206
208
  Es as displayPercentages,
207
- Ks as genericBoolean,
208
- qs as genericNumber,
209
- Gs as genericString,
209
+ Gs as genericBoolean,
210
+ Ks as genericNumber,
211
+ qs as genericString,
210
212
  Hs as genericTimeRange,
211
- Za as getDefaultPieChartOptions,
212
- Xa as getObjectStableKey,
213
- Qa as getPieChartData,
213
+ ee as getDefaultPieChartOptions,
214
+ Za as getObjectStableKey,
215
+ te as getPieChartData,
214
216
  Vs as getStyle,
215
217
  Xs as getStyleNumber,
216
218
  Us as getTableTotalPages,
217
- Ya as getThemeFormatter,
219
+ se as getThemeFormatter,
218
220
  Ys as i18n,
219
221
  Js as i18nSetup,
220
- de as isColorValid,
222
+ _e as isColorValid,
221
223
  Zs as maxLegendItems,
222
224
  Qs as maxResults,
223
225
  sa as measure,
224
226
  aa as measures,
225
227
  ea as placeholder,
226
- Ga as remarkableTheme,
228
+ Ua as remarkableTheme,
227
229
  ta as resolveI18nProps,
228
230
  na as reverseXAxis,
229
231
  oa as reverseYAxis,
230
- xe as setColorAlpha,
231
- ia as showLegend,
232
- ra as showLogarithmicScale,
232
+ fe as setColorAlpha,
233
+ ra as showLegend,
234
+ ia as showLogarithmicScale,
233
235
  ca as showTooltips,
234
236
  la as showTopItems,
235
237
  ua as showTotalLabels,
236
238
  ma as showValueLabels,
237
- Ha as styles,
239
+ Ya as styles,
238
240
  ha as subInputAbbreviateLargeNumber,
239
241
  da as subInputAlign,
240
242
  xa as subInputColor,
@@ -242,20 +244,22 @@ export {
242
244
  pa as subInputDateBounds,
243
245
  _a as subInputDecimalPlaces,
244
246
  fa as subInputDisplayName,
245
- Ca as subInputGranularity,
246
- ga as subInputMaxCharacters,
247
- ya as subInputPrefix,
248
- ja as subInputSuffix,
249
- wa as subInputWidth,
250
- va as timeDimensionSubInputs,
251
- Sa as title,
252
- Ia as xAxisLabel,
253
- Na as xAxisMaxItems,
254
- Ta as xAxisRangeMax,
255
- $a as xAxisRangeMin,
256
- Pa as yAxisLabel,
257
- ka as yAxisMaxItems,
258
- Aa as yAxisRangeMax,
259
- La as yAxisRangeMin
247
+ Ca as subInputGenericBoolean,
248
+ ga as subInputGenericNumber,
249
+ ya as subInputGranularity,
250
+ ja as subInputMaxCharacters,
251
+ va as subInputPrefix,
252
+ wa as subInputSuffix,
253
+ Ia as subInputWidth,
254
+ Sa as timeDimensionSubInputs,
255
+ Na as title,
256
+ Ta as xAxisLabel,
257
+ Pa as xAxisMaxItems,
258
+ $a as xAxisRangeMax,
259
+ ka as xAxisRangeMin,
260
+ Aa as yAxisLabel,
261
+ Ba as yAxisMaxItems,
262
+ La as yAxisRangeMax,
263
+ Ma as yAxisRangeMin
260
264
  };
261
265
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/remarkable-ui/shared/EmptyStateSkeleton/EmptyStateSkeleton.tsx","../src/remarkable-ui/shared/ButtonIcon/ButtonIcon.tsx","../src/remarkable-ui/shared/GhostButton/GhostButton.tsx","../src/remarkable-ui/shared/PageOverlay/PageOverlay.tsx","../src/remarkable-ui/shared/ConfirmCancelModal/ConfirmCancelModal.tsx","../src/remarkable-ui/shared/Switch/Switch.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport styles from './EmptyStateSkeleton.module.css';\n\ninterface EmptyStateSkeletonProps {\n className?: string;\n}\n\nexport const EmptyStateSkeleton: React.FC<EmptyStateSkeletonProps> = ({ className }) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [visibleColumns, setVisibleColumns] = useState(2);\n\n useEffect(() => {\n const calculateColumns = () => {\n if (!containerRef.current) return;\n\n const containerWidth = containerRef.current.offsetWidth;\n const padding = 32; // 2rem total padding (1rem each side)\n const gap = 16; // 1rem gap between columns\n const minColumnWidth = 128; // 8rem\n const maxColumnWidth = 256; // 16rem\n\n const availableWidth = containerWidth - padding;\n\n // Calculate how many columns can fit at minimum width\n const maxPossibleColumns = Math.floor((availableWidth + gap) / (minColumnWidth + gap));\n\n // Calculate actual column width if we use maxPossibleColumns\n const actualColumnWidth =\n (availableWidth - (maxPossibleColumns - 1) * gap) / maxPossibleColumns;\n\n // If columns would be wider than max width, reduce column count\n let finalColumns = maxPossibleColumns;\n if (actualColumnWidth > maxColumnWidth) {\n finalColumns = Math.floor((availableWidth + gap) / (maxColumnWidth + gap));\n }\n\n setVisibleColumns(Math.max(2, finalColumns)); // Minimum 2 columns\n };\n\n calculateColumns();\n\n const resizeObserver = new ResizeObserver(calculateColumns);\n if (containerRef.current) {\n resizeObserver.observe(containerRef.current);\n }\n\n return () => resizeObserver.disconnect();\n }, []);\n\n const renderColumn = (index: number) => {\n const isEvenColumn = index % 2 === 0;\n return (\n <div key={index} className={styles.column}>\n {isEvenColumn ? (\n <>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n </>\n ) : (\n <>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n </>\n )}\n </div>\n );\n };\n\n return (\n <div ref={containerRef} className={`${styles.container} ${className || ''}`}>\n {Array.from({ length: visibleColumns }, (_, index) => renderColumn(index))}\n </div>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './ButtonIcon.module.css';\nimport { BaseButton, type BaseButtonProps } from '../BaseButton';\nimport { TablerIcon } from '@tabler/icons-react';\n\ntype ButtonIconProps = Omit<BaseButtonProps, 'size'> & {\n icon: TablerIcon;\n};\n\nexport const ButtonIcon: React.FC<ButtonIconProps> = ({\n icon: Icon,\n variant = 'primary',\n ...props\n}) => {\n return (\n <BaseButton variant={variant} size=\"medium\" className={styles.buttonIcon} {...props}>\n <Icon\n className={clsx(\n styles.icon,\n styles[`icon${variant.charAt(0).toUpperCase() + variant.slice(1)}`],\n )}\n />\n </BaseButton>\n );\n};\n","import React from 'react';\nimport { Icon } from '@tabler/icons-react';\nimport clsx from 'clsx';\nimport styles from './GhostButton.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype GhostButtonProps = {\n startIcon?: Icon;\n endIcon?: Icon;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const GhostButton: React.FC<GhostButtonProps> = ({\n startIcon: StartIcon,\n endIcon: EndIcon,\n children,\n className,\n ...props\n}) => {\n return (\n <button className={clsx(styles.ghostButton, className)} {...props}>\n {StartIcon && <StartIcon className={styles.icon} />}\n <Typography className={styles.label}>{children}</Typography>\n {EndIcon && <EndIcon className={styles.icon} />}\n </button>\n );\n};\n","import clsx from 'clsx';\nimport styles from './PageOverlay.module.css';\nimport type { PageOverlayProps } from './PageOverlay.types';\n\nexport const PageOverlay: React.FC<PageOverlayProps> = ({ className, children }) => {\n return <div className={clsx(styles.overlay, className)}>{children}</div>;\n};\n","import React from 'react';\nimport { Card, CardHeader, CardContent } from '../Card/Card';\nimport { Button } from '../Button/Button';\nimport { Typography } from '../Typography/Typography';\nimport styles from './ConfirmCancelModal.module.css';\nimport type { ConfirmCancelModalProps } from './ConfirmCancelModal.types';\nimport { PageOverlay } from '../PageOverlay';\nimport { IconX } from '@tabler/icons-react';\nimport { IconButton } from '../IconButton/IconButton';\n\nexport const ConfirmCancelModal: React.FC<ConfirmCancelModalProps> = ({\n title,\n message,\n confirmLabel = 'Confirm',\n cancelLabel = 'Cancel',\n onConfirm,\n onCancel,\n className,\n}) => {\n return (\n <PageOverlay>\n <Card className={className}>\n <CardHeader title={title} rightContent={<IconButton icon={IconX} onClick={onCancel} />} />\n <CardContent>\n <Typography as=\"span\">{message}</Typography>\n <div className={styles.actions}>\n <Button variant=\"secondary\" size=\"medium\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n <Button variant=\"primary\" size=\"medium\" onClick={onConfirm}>\n {confirmLabel}\n </Button>\n </div>\n </CardContent>\n </Card>\n </PageOverlay>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './Switch.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype SwitchProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'> & {\n onChange?: (checked: boolean) => void;\n disabled?: boolean;\n className?: string;\n label?: string;\n};\n\nexport const Switch: React.FC<SwitchProps> = ({\n checked,\n onChange,\n disabled = false,\n className,\n label,\n ...props\n}) => {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (!disabled && onChange) {\n onChange(event.target.checked);\n }\n };\n\n // Ensure accessibility: either aria-label must be provided\n if (!props['aria-label']) {\n console.warn(\n 'Switch component requires either a label prop or aria-label prop for accessibility',\n );\n }\n\n return (\n <div className={clsx(styles.switchContainer, className)}>\n <label\n className={clsx(styles.switchLabel, checked && styles.checked, disabled && styles.disabled)}\n >\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={handleChange}\n disabled={disabled}\n className={styles.switchInput}\n role=\"switch\"\n aria-checked={checked}\n aria-disabled={disabled}\n {...props}\n />\n <span className={styles.switchTrack} aria-hidden=\"true\">\n <span className={styles.switchThumb} aria-hidden=\"true\" />\n </span>\n {label && (\n <Typography as=\"span\" className={clsx(styles.labelText, disabled && styles.disabled)}>\n {label}\n </Typography>\n )}\n </label>\n </div>\n );\n};\n"],"names":["EmptyStateSkeleton","className","containerRef","useRef","visibleColumns","setVisibleColumns","useState","useEffect","calculateColumns","containerWidth","padding","gap","minColumnWidth","maxColumnWidth","availableWidth","maxPossibleColumns","actualColumnWidth","finalColumns","resizeObserver","renderColumn","index","isEvenColumn","styles","jsxs","Fragment","jsx","_","ButtonIcon","Icon","variant","props","BaseButton","clsx","GhostButton","StartIcon","EndIcon","children","Typography","PageOverlay","ConfirmCancelModal","title","message","confirmLabel","cancelLabel","onConfirm","onCancel","Card","CardHeader","IconButton","IconX","CardContent","Button","Switch","checked","onChange","disabled","label","handleChange","event"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;GAOaA,KAAwD,CAAC,EAAE,WAAAC,QAAgB;AACtF,QAAMC,IAAeC,EAAuB,IAAI,GAC1C,CAACC,GAAgBC,CAAiB,IAAIC,EAAS,CAAC;AAEtD,EAAAC,EAAU,MAAM;AACd,UAAMC,IAAmB,MAAM;AAC7B,UAAI,CAACN,EAAa,QAAS;AAE3B,YAAMO,IAAiBP,EAAa,QAAQ,aACtCQ,IAAU,IACVC,IAAM,IACNC,IAAiB,KACjBC,IAAiB,KAEjBC,IAAiBL,IAAiBC,GAGlCK,IAAqB,KAAK,OAAOD,IAAiBH,MAAQC,IAAiBD,EAAI,GAG/EK,KACHF,KAAkBC,IAAqB,KAAKJ,KAAOI;AAGtD,UAAIE,IAAeF;AACnB,MAAIC,IAAoBH,MACtBI,IAAe,KAAK,OAAOH,IAAiBH,MAAQE,IAAiBF,EAAI,IAG3EN,EAAkB,KAAK,IAAI,GAAGY,CAAY,CAAC;AAAA,IAC7C;AAEA,IAAAT,EAAA;AAEA,UAAMU,IAAiB,IAAI,eAAeV,CAAgB;AAC1D,WAAIN,EAAa,WACfgB,EAAe,QAAQhB,EAAa,OAAO,GAGtC,MAAMgB,EAAe,WAAA;AAAA,EAC9B,GAAG,CAAA,CAAE;AAEL,QAAMC,IAAe,CAACC,MAAkB;AACtC,UAAMC,IAAeD,IAAQ,MAAM;AACnC,iCACG,OAAA,EAAgB,WAAWE,EAAO,QAChC,cACCC,gBAAAA,EAAAA,KAAAC,EAAAA,UAAA,EACE,UAAA;AAAA,MAAAC,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,KAAK,GAAA,CAAI;AAAA,MACjDG,gBAAAA,EAAAA,IAAC,SAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,IAAI,GAAA,CAAI;AAAA,MAChDG,gBAAAA,EAAAA,IAAC,SAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,KAAK,GAAA,CAAI;AAAA,MACjDG,gBAAAA,EAAAA,IAAC,SAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,IAAI,GAAA,CAAI;AAAA,IAAA,EAAA,CAClD,IAEAC,gBAAAA,EAAAA,KAAAC,EAAAA,UAAA,EACE,UAAA;AAAA,MAAAC,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,IAAI,GAAA,CAAI;AAAA,MAChDG,gBAAAA,EAAAA,IAAC,SAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,KAAK,GAAA,CAAI;AAAA,MACjDG,gBAAAA,EAAAA,IAAC,SAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,IAAI,GAAA,CAAI;AAAA,MAChDG,gBAAAA,EAAAA,IAAC,SAAI,WAAW,GAAGH,EAAO,GAAG,IAAIA,EAAO,KAAK,GAAA,CAAI;AAAA,IAAA,EAAA,CACnD,KAdMF,CAgBV;AAAA,EAEJ;AAEA,SACEK,gBAAAA,MAAC,OAAA,EAAI,KAAKvB,GAAc,WAAW,GAAGoB,EAAO,SAAS,IAAIrB,KAAa,EAAE,IACtE,gBAAM,KAAK,EAAE,QAAQG,EAAA,GAAkB,CAACsB,GAAGN,MAAUD,EAAaC,CAAK,CAAC,EAAA,CAC3E;AAEJ;;;;;GCnEaO,KAAwC,CAAC;AAAA,EACpD,MAAMC;AAAA,EACN,SAAAC,IAAU;AAAA,EACV,GAAGC;AACL,MAEIL,gBAAAA,MAACM,KAAW,SAAAF,GAAkB,MAAK,UAAS,WAAWP,EAAO,YAAa,GAAGQ,GAC5E,UAAAL,gBAAAA,EAAAA;AAAAA,EAACG;AAAA,EAAA;AAAA,IACC,WAAWI;AAAA,MACTV,EAAO;AAAA,MACPA,EAAO,OAAOO,EAAQ,OAAO,CAAC,EAAE,YAAA,IAAgBA,EAAQ,MAAM,CAAC,CAAC,EAAE;AAAA,IAAA;AAAA,EACpE;AAAA,GAEJ;;;;GCZSI,KAA0C,CAAC;AAAA,EACtD,WAAWC;AAAA,EACX,SAASC;AAAA,EACT,UAAAC;AAAA,EACA,WAAAnC;AAAA,EACA,GAAG6B;AACL,MAEIP,gBAAAA,OAAC,YAAO,WAAWS,EAAKV,EAAO,aAAarB,CAAS,GAAI,GAAG6B,GACzD,UAAA;AAAA,EAAAI,KAAaT,gBAAAA,EAAAA,IAACS,GAAA,EAAU,WAAWZ,EAAO,MAAM;AAAA,EACjDG,gBAAAA,EAAAA,IAACY,GAAA,EAAW,WAAWf,EAAO,OAAQ,UAAAc,GAAS;AAAA,EAC9CD,KAAWV,gBAAAA,EAAAA,IAACU,GAAA,EAAQ,WAAWb,EAAO,KAAA,CAAM;AAAA,GAC/C;;GCnBSgB,IAA0C,CAAC,EAAE,WAAArC,GAAW,UAAAmC,QAC5DX,gBAAAA,EAAAA,IAAC,SAAI,WAAWO,EAAKV,EAAO,SAASrB,CAAS,GAAI,UAAAmC,GAAS;;GCKvDG,KAAwD,CAAC;AAAA,EACpE,OAAAC;AAAA,EACA,SAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,aAAAC,IAAc;AAAA,EACd,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAA5C;AACF,MAEIwB,gBAAAA,EAAAA,IAACa,GAAA,EACC,UAAAf,gBAAAA,EAAAA,KAACuB,GAAA,EAAK,WAAA7C,GACJ,UAAA;AAAA,EAAAwB,gBAAAA,EAAAA,IAACsB,GAAA,EAAW,OAAAP,GAAc,cAAcf,gBAAAA,EAAAA,IAACuB,KAAW,MAAMC,GAAO,SAASJ,EAAA,CAAU,EAAA,CAAI;AAAA,yBACvFK,GAAA,EACC,UAAA;AAAA,IAAAzB,gBAAAA,EAAAA,IAACY,GAAA,EAAW,IAAG,QAAQ,UAAAI,GAAQ;AAAA,IAC/BlB,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAWD,EAAO,SACrB,UAAA;AAAA,MAAAG,gBAAAA,EAAAA,IAAC0B,KAAO,SAAQ,aAAY,MAAK,UAAS,SAASN,GAChD,UAAAF,EAAA,CACH;AAAA,MACAlB,gBAAAA,EAAAA,IAAC0B,KAAO,SAAQ,WAAU,MAAK,UAAS,SAASP,GAC9C,UAAAF,EAAA,CACH;AAAA,IAAA,EAAA,CACF;AAAA,EAAA,EAAA,CACF;AAAA,EAAA,CACF,EAAA,CACF;;;;;;;;;GCvBSU,KAAgC,CAAC;AAAA,EAC5C,SAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,WAAAtD;AAAA,EACA,OAAAuD;AAAA,EACA,GAAG1B;AACL,MAAM;AACJ,QAAM2B,IAAe,CAACC,MAA+C;AACnE,IAAI,CAACH,KAAYD,KACfA,EAASI,EAAM,OAAO,OAAO;AAAA,EAEjC;AAGA,SAAK5B,EAAM,YAAY,KACrB,QAAQ;AAAA,IACN;AAAA,EAAA,yBAKD,OAAA,EAAI,WAAWE,EAAKV,EAAO,iBAAiBrB,CAAS,GACpD,UAAAsB,gBAAAA,EAAAA;AAAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWS,EAAKV,EAAO,aAAa+B,KAAW/B,EAAO,SAASiC,KAAYjC,EAAO,QAAQ;AAAA,MAE1F,UAAA;AAAA,QAAAG,gBAAAA,EAAAA;AAAAA,UAAC;AAAA,UAAA;AAAA,YACC,MAAK;AAAA,YACL,SAAA4B;AAAA,YACA,UAAUI;AAAA,YACV,UAAAF;AAAA,YACA,WAAWjC,EAAO;AAAA,YAClB,MAAK;AAAA,YACL,gBAAc+B;AAAA,YACd,iBAAeE;AAAA,YACd,GAAGzB;AAAA,UAAA;AAAA,QAAA;AAAA,QAENL,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAWH,EAAO,aAAa,eAAY,QAC/C,UAAAG,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAWH,EAAO,aAAa,eAAY,QAAO,GAC1D;AAAA,QACCkC,KACC/B,gBAAAA,EAAAA,IAACY,GAAA,EAAW,IAAG,QAAO,WAAWL,EAAKV,EAAO,WAAWiC,KAAYjC,EAAO,QAAQ,GAChF,UAAAkC,EAAA,CACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA,GAGN;AAEJ;"}
1
+ {"version":3,"file":"index.js","sources":["../src/remarkable-ui/shared/EmptyStateSkeleton/EmptyStateSkeleton.tsx","../src/remarkable-ui/shared/ButtonIcon/ButtonIcon.tsx","../src/remarkable-ui/shared/GhostButton/GhostButton.tsx","../src/remarkable-ui/shared/PageOverlay/PageOverlay.tsx","../src/remarkable-ui/shared/ConfirmCancelModal/ConfirmCancelModal.tsx","../src/remarkable-ui/shared/Switch/Switch.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport styles from './EmptyStateSkeleton.module.css';\n\ninterface EmptyStateSkeletonProps {\n className?: string;\n}\n\nexport const EmptyStateSkeleton: React.FC<EmptyStateSkeletonProps> = ({ className }) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const [visibleColumns, setVisibleColumns] = useState(2);\n\n useEffect(() => {\n const calculateColumns = () => {\n if (!containerRef.current) return;\n\n const containerWidth = containerRef.current.offsetWidth;\n const padding = 32; // 2rem total padding (1rem each side)\n const gap = 16; // 1rem gap between columns\n const minColumnWidth = 128; // 8rem\n const maxColumnWidth = 256; // 16rem\n\n const availableWidth = containerWidth - padding;\n\n // Calculate how many columns can fit at minimum width\n const maxPossibleColumns = Math.floor((availableWidth + gap) / (minColumnWidth + gap));\n\n // Calculate actual column width if we use maxPossibleColumns\n const actualColumnWidth =\n (availableWidth - (maxPossibleColumns - 1) * gap) / maxPossibleColumns;\n\n // If columns would be wider than max width, reduce column count\n let finalColumns = maxPossibleColumns;\n if (actualColumnWidth > maxColumnWidth) {\n finalColumns = Math.floor((availableWidth + gap) / (maxColumnWidth + gap));\n }\n\n setVisibleColumns(Math.max(2, finalColumns)); // Minimum 2 columns\n };\n\n calculateColumns();\n\n const resizeObserver = new ResizeObserver(calculateColumns);\n if (containerRef.current) {\n resizeObserver.observe(containerRef.current);\n }\n\n return () => resizeObserver.disconnect();\n }, []);\n\n const renderColumn = (index: number) => {\n const isEvenColumn = index % 2 === 0;\n return (\n <div key={index} className={styles.column}>\n {isEvenColumn ? (\n <>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n </>\n ) : (\n <>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n <div className={`${styles.box} ${styles.tall}`}></div>\n <div className={`${styles.box} ${styles.short}`}></div>\n </>\n )}\n </div>\n );\n };\n\n return (\n <div ref={containerRef} className={`${styles.container} ${className || ''}`}>\n {Array.from({ length: visibleColumns }, (_, index) => renderColumn(index))}\n </div>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './ButtonIcon.module.css';\nimport { BaseButton, type BaseButtonProps } from '../BaseButton';\nimport { TablerIcon } from '@tabler/icons-react';\n\ntype ButtonIconProps = Omit<BaseButtonProps, 'size'> & {\n icon: TablerIcon;\n};\n\nexport const ButtonIcon: React.FC<ButtonIconProps> = ({\n icon: Icon,\n variant = 'primary',\n ...props\n}) => {\n return (\n <BaseButton variant={variant} size=\"medium\" className={styles.buttonIcon} {...props}>\n <Icon\n className={clsx(\n styles.icon,\n styles[`icon${variant.charAt(0).toUpperCase() + variant.slice(1)}`],\n )}\n />\n </BaseButton>\n );\n};\n","import React from 'react';\nimport { Icon } from '@tabler/icons-react';\nimport clsx from 'clsx';\nimport styles from './GhostButton.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype GhostButtonProps = {\n startIcon?: Icon;\n endIcon?: Icon;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const GhostButton: React.FC<GhostButtonProps> = ({\n startIcon: StartIcon,\n endIcon: EndIcon,\n children,\n className,\n ...props\n}) => {\n return (\n <button className={clsx(styles.ghostButton, className)} {...props}>\n {StartIcon && <StartIcon className={styles.icon} />}\n <Typography className={styles.label}>{children}</Typography>\n {EndIcon && <EndIcon className={styles.icon} />}\n </button>\n );\n};\n","import clsx from 'clsx';\nimport styles from './PageOverlay.module.css';\nimport type { PageOverlayProps } from './PageOverlay.types';\n\nexport const PageOverlay: React.FC<PageOverlayProps> = ({ className, children }) => {\n return <div className={clsx(styles.overlay, className)}>{children}</div>;\n};\n","import React from 'react';\nimport { Card, CardHeader, CardContent } from '../Card/Card';\nimport { Button } from '../Button/Button';\nimport { Typography } from '../Typography/Typography';\nimport styles from './ConfirmCancelModal.module.css';\nimport type { ConfirmCancelModalProps } from './ConfirmCancelModal.types';\nimport { PageOverlay } from '../PageOverlay';\nimport { IconX } from '@tabler/icons-react';\nimport { IconButton } from '../IconButton/IconButton';\n\nexport const ConfirmCancelModal: React.FC<ConfirmCancelModalProps> = ({\n title,\n message,\n confirmLabel = 'Confirm',\n cancelLabel = 'Cancel',\n onConfirm,\n onCancel,\n className,\n}) => {\n return (\n <PageOverlay>\n <Card className={className}>\n <CardHeader title={title} rightContent={<IconButton icon={IconX} onClick={onCancel} />} />\n <CardContent>\n <Typography as=\"span\">{message}</Typography>\n <div className={styles.actions}>\n <Button variant=\"secondary\" size=\"medium\" onClick={onCancel}>\n {cancelLabel}\n </Button>\n <Button variant=\"primary\" size=\"medium\" onClick={onConfirm}>\n {confirmLabel}\n </Button>\n </div>\n </CardContent>\n </Card>\n </PageOverlay>\n );\n};\n","import React from 'react';\nimport clsx from 'clsx';\nimport styles from './Switch.module.css';\nimport { Typography } from '../Typography/Typography';\n\ntype SwitchProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'onChange'> & {\n onChange?: (checked: boolean) => void;\n disabled?: boolean;\n className?: string;\n label?: string;\n};\n\nexport const Switch: React.FC<SwitchProps> = ({\n checked,\n onChange,\n disabled = false,\n className,\n label,\n ...props\n}) => {\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n if (!disabled && onChange) {\n onChange(event.target.checked);\n }\n };\n\n // Ensure accessibility: either aria-label must be provided\n if (!props['aria-label']) {\n console.warn(\n 'Switch component requires either a label prop or aria-label prop for accessibility',\n );\n }\n\n return (\n <div className={clsx(styles.switchContainer, className)}>\n <label\n className={clsx(styles.switchLabel, checked && styles.checked, disabled && styles.disabled)}\n >\n <input\n type=\"checkbox\"\n checked={checked}\n onChange={handleChange}\n disabled={disabled}\n className={styles.switchInput}\n role=\"switch\"\n aria-checked={checked}\n aria-disabled={disabled}\n {...props}\n />\n <span className={styles.switchTrack} aria-hidden=\"true\">\n <span className={styles.switchThumb} aria-hidden=\"true\" />\n </span>\n {label && (\n <Typography as=\"span\" className={clsx(styles.labelText, disabled && styles.disabled)}>\n {label}\n </Typography>\n )}\n </label>\n </div>\n );\n};\n"],"names":["EmptyStateSkeleton","className","containerRef","useRef","visibleColumns","setVisibleColumns","useState","useEffect","calculateColumns","containerWidth","padding","gap","minColumnWidth","maxColumnWidth","availableWidth","maxPossibleColumns","actualColumnWidth","finalColumns","resizeObserver","renderColumn","index","isEvenColumn","styles","jsxs","Fragment","jsx","_","ButtonIcon","Icon","variant","props","BaseButton","clsx","GhostButton","StartIcon","EndIcon","children","Typography","PageOverlay","ConfirmCancelModal","title","message","confirmLabel","cancelLabel","onConfirm","onCancel","Card","CardHeader","IconButton","IconX","CardContent","Button","Switch","checked","onChange","disabled","label","handleChange","event"],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ const a = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), c = "embeddable", f = () => {
2
+ const n = {};
3
+ for (const [o, r] of a)
4
+ n[o] = Object.fromEntries(r);
5
+ sessionStorage.setItem(c, JSON.stringify(n));
6
+ }, d = () => {
7
+ if (typeof window > "u" || typeof document > "u") return;
8
+ const n = sessionStorage.getItem(c);
9
+ if (!n) return;
10
+ const o = JSON.parse(n);
11
+ for (const r in o) {
12
+ const e = new Map(Object.entries(o[r] ?? {}));
13
+ a.set(r, e), i.set(r, new Set(e.values()));
14
+ }
15
+ };
16
+ d();
17
+ const p = (n, o, r, e) => {
18
+ if (typeof window > "u" || typeof document > "u") return "";
19
+ a.has(n) || (a.set(n, /* @__PURE__ */ new Map()), i.set(n, /* @__PURE__ */ new Set()));
20
+ const t = a.get(n);
21
+ if (t.has(o)) return t.get(o);
22
+ const s = r[e % r.length];
23
+ if (typeof s != "string")
24
+ throw new Error("No valid color found in palette");
25
+ return t.set(o, s), f(), s;
26
+ }, l = (n) => {
27
+ const o = (t) => t && typeof t == "object" && !Array.isArray(t) ? "{" + Object.keys(t).sort().map((s) => `"${s}":${o(t[s])}`).join(",") + "}" : Array.isArray(t) ? "[" + t.map(o).join(",") + "]" : JSON.stringify(t), r = o(n);
28
+ let e = 2166136261;
29
+ for (let t = 0; t < r.length; t++)
30
+ e ^= r.charCodeAt(t), e += (e << 1) + (e << 4) + (e << 7) + (e << 8) + (e << 24);
31
+ return (e >>> 0).toString(16);
32
+ };
33
+ export {
34
+ p as a,
35
+ l as g
36
+ };
37
+ //# sourceMappingURL=object.utils-D_Zzon-H.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object.utils-D_Zzon-H.js","sources":["../src/remarkable-pro/theme/styles/styles.utils.ts","../src/remarkable-pro/utils.ts/object.utils.ts"],"sourcesContent":["const generateCssVariables = (variables: Record<string, string>) => {\n let textContent = '';\n Object.keys(variables).forEach((key) => {\n const value = variables[key];\n textContent += `${key}: ${value};\\n`;\n });\n return textContent;\n};\n\n// TODO: check the possibility of injecting via CSS (future)\nexport const injectCssVariables = (styles: Record<string, string>) => {\n const css = `:root {\\n${generateCssVariables(styles)}}`;\n const styleId = 'remarkable-ui-embeddable-style';\n let styleEl = document.getElementById(styleId) as HTMLStyleElement | null;\n\n if (styleEl) {\n // Overwrite the old vars\n styleEl.textContent = css;\n } else {\n styleEl = document.createElement('style');\n styleEl.id = styleId;\n styleEl.textContent = css;\n document.head.appendChild(styleEl);\n }\n\n return () => styleEl?.remove();\n};\n\nconst colorsMap = new Map<string, Map<string, string>>();\nconst colorsInUse = new Map<string, Set<string>>();\n\n/* \nWe save the colors to session storage so that they are persistent across refreshes. \nThis is important, for example, if the user is looking at multiple tabs, or if the user refreshes the page.\n*/\nconst STORAGE_KEY = 'embeddable';\n\nconst saveColorsMap = () => {\n const obj: Record<string, Record<string, string>> = {};\n for (const [cat, m] of colorsMap) {\n obj[cat] = Object.fromEntries(m);\n }\n sessionStorage.setItem(STORAGE_KEY, JSON.stringify(obj));\n};\n\nconst loadColorMap = () => {\n if (typeof window === 'undefined' || typeof document === 'undefined') return;\n\n const data = sessionStorage.getItem(STORAGE_KEY);\n if (!data) return;\n const obj: Record<string, Record<string, string>> = JSON.parse(data);\n for (const cat in obj) {\n const m = new Map(Object.entries(obj[cat] ?? {}));\n colorsMap.set(cat, m);\n colorsInUse.set(cat, new Set(m.values()));\n }\n};\n\nloadColorMap();\n\nexport const getColor = (key: string, value: string, palette: string[], idx: number): string => {\n if (typeof window === 'undefined' || typeof document === 'undefined') return '';\n\n // Initialize structures if needed\n if (!colorsMap.has(key)) {\n colorsMap.set(key, new Map());\n colorsInUse.set(key, new Set());\n }\n\n const catMap = colorsMap.get(key)!;\n\n // Return existing color if already assigned\n if (catMap.has(value)) return catMap.get(value)!;\n\n // Find first colorsInUse color, fallback to indexed one\n const color = palette[idx % palette.length];\n\n if (typeof color !== 'string') {\n throw new Error('No valid color found in palette');\n }\n\n // Save mapping and mark as colorsInUse\n catMap.set(value, color);\n saveColorsMap();\n\n return color;\n};\n","export const getObjectStableKey = (obj: unknown): string => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const stableStringify = (o: any): string => {\n if (o && typeof o === 'object' && !Array.isArray(o)) {\n return (\n '{' +\n Object.keys(o)\n .sort()\n .map((k) => `\"${k}\":${stableStringify(o[k])}`)\n .join(',') +\n '}'\n );\n } else if (Array.isArray(o)) {\n return '[' + o.map(stableStringify).join(',') + ']';\n }\n return JSON.stringify(o);\n };\n\n const json = stableStringify(obj);\n\n // FNV-1a 32-bit hash\n let hash = 0x811c9dc5;\n for (let i = 0; i < json.length; i++) {\n hash ^= json.charCodeAt(i);\n hash += (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24);\n }\n\n return (hash >>> 0).toString(16);\n};\n"],"names":["colorsMap","colorsInUse","STORAGE_KEY","saveColorsMap","obj","cat","m","loadColorMap","data","getColor","key","value","palette","idx","catMap","color","getObjectStableKey","stableStringify","o","k","json","hash","i"],"mappings":"AA4BA,MAAMA,wBAAgB,IAAA,GAChBC,wBAAkB,IAAA,GAMlBC,IAAc,cAEdC,IAAgB,MAAM;AAC1B,QAAMC,IAA8C,CAAA;AACpD,aAAW,CAACC,GAAKC,CAAC,KAAKN;AACrB,IAAAI,EAAIC,CAAG,IAAI,OAAO,YAAYC,CAAC;AAEjC,iBAAe,QAAQJ,GAAa,KAAK,UAAUE,CAAG,CAAC;AACzD,GAEMG,IAAe,MAAM;AACzB,MAAI,OAAO,SAAW,OAAe,OAAO,WAAa,IAAa;AAEtE,QAAMC,IAAO,eAAe,QAAQN,CAAW;AAC/C,MAAI,CAACM,EAAM;AACX,QAAMJ,IAA8C,KAAK,MAAMI,CAAI;AACnE,aAAWH,KAAOD,GAAK;AACrB,UAAME,IAAI,IAAI,IAAI,OAAO,QAAQF,EAAIC,CAAG,KAAK,CAAA,CAAE,CAAC;AAChD,IAAAL,EAAU,IAAIK,GAAKC,CAAC,GACpBL,EAAY,IAAII,GAAK,IAAI,IAAIC,EAAE,OAAA,CAAQ,CAAC;AAAA,EAC1C;AACF;AAEAC,EAAA;AAEO,MAAME,IAAW,CAACC,GAAaC,GAAeC,GAAmBC,MAAwB;AAC9F,MAAI,OAAO,SAAW,OAAe,OAAO,WAAa,IAAa,QAAO;AAG7E,EAAKb,EAAU,IAAIU,CAAG,MACpBV,EAAU,IAAIU,GAAK,oBAAI,IAAA,CAAK,GAC5BT,EAAY,IAAIS,GAAK,oBAAI,IAAA,CAAK;AAGhC,QAAMI,IAASd,EAAU,IAAIU,CAAG;AAGhC,MAAII,EAAO,IAAIH,CAAK,EAAG,QAAOG,EAAO,IAAIH,CAAK;AAG9C,QAAMI,IAAQH,EAAQC,IAAMD,EAAQ,MAAM;AAE1C,MAAI,OAAOG,KAAU;AACnB,UAAM,IAAI,MAAM,iCAAiC;AAInD,SAAAD,EAAO,IAAIH,GAAOI,CAAK,GACvBZ,EAAA,GAEOY;AACT,GCtFaC,IAAqB,CAACZ,MAAyB;AAE1D,QAAMa,IAAkB,CAACC,MACnBA,KAAK,OAAOA,KAAM,YAAY,CAAC,MAAM,QAAQA,CAAC,IAE9C,MACA,OAAO,KAAKA,CAAC,EACV,OACA,IAAI,CAACC,MAAM,IAAIA,CAAC,KAAKF,EAAgBC,EAAEC,CAAC,CAAC,CAAC,EAAE,EAC5C,KAAK,GAAG,IACX,MAEO,MAAM,QAAQD,CAAC,IACjB,MAAMA,EAAE,IAAID,CAAe,EAAE,KAAK,GAAG,IAAI,MAE3C,KAAK,UAAUC,CAAC,GAGnBE,IAAOH,EAAgBb,CAAG;AAGhC,MAAIiB,IAAO;AACX,WAASC,IAAI,GAAGA,IAAIF,EAAK,QAAQE;AAC/B,IAAAD,KAAQD,EAAK,WAAWE,CAAC,GACzBD,MAASA,KAAQ,MAAMA,KAAQ,MAAMA,KAAQ,MAAMA,KAAQ,MAAMA,KAAQ;AAG3E,UAAQA,MAAS,GAAG,SAAS,EAAE;AACjC;"}
@@ -1,7 +1,7 @@
1
- import { r as u, g as b } from "./charts.utils-CgwyTiTH.js";
2
- import { g } from "./formatter.utils-DDLdrAl9.js";
3
- import { g as h, a as i } from "./object.utils-Cae_z0QB.js";
4
- import { T as c, U as f } from "./component.constants-D59iJ42U.js";
1
+ import { r as u, g as b } from "./charts.utils-BCbFzrS3.js";
2
+ import { g } from "./formatter.utils-CRniOO_L.js";
3
+ import { g as h, a as i } from "./object.utils-D_Zzon-H.js";
4
+ import { T as c, U as f } from "./component.constants-CeRyckoA.js";
5
5
  import "react";
6
6
  const y = (a, o = u) => {
7
7
  const n = g(o);
@@ -72,4 +72,4 @@ export {
72
72
  F as a,
73
73
  y as g
74
74
  };
75
- //# sourceMappingURL=pies.utils-DArVf3EJ.js.map
75
+ //# sourceMappingURL=pies.utils-CuMFaK2u.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pies.utils-DArVf3EJ.js","sources":["../src/remarkable-pro/components/charts/pies/pies.utils.ts"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { groupTailAsOther } from '../charts.utils';\nimport { Theme } from '../../../theme/theme.types';\nimport { remarkableTheme } from '../../../theme/theme.constants';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { getColor } from '../../../theme/styles/styles.utils';\nimport { chartColors } from '../../../../remarkable-ui';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { getObjectStableKey } from '../../../utils.ts/object.utils';\n\nexport const getPieChartData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measure: Measure;\n maxLegendItems?: number;\n },\n theme: Theme = remarkableTheme,\n): ChartData<'pie'> => {\n const themeFormatter = getThemeFormatter(theme);\n\n if (!props.data)\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n\n const groupedData = groupTailAsOther(\n props.data,\n props.dimension,\n [props.measure],\n props.maxLegendItems,\n );\n\n const themeKey = getObjectStableKey(theme);\n\n const backgroundColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.backgroundColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.backgroundColors ?? chartColors,\n i,\n ),\n );\n\n const borderColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.borderColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.borderColors ?? chartColors,\n i,\n ),\n );\n\n return {\n labels: groupedData.map((item) => {\n const value = item[props.dimension.name];\n const formattedValue = themeFormatter.data(props.dimension, value);\n\n // If formatter did not work, try i18n translation\n if (value === formattedValue) {\n return i18n.t(value);\n }\n return formattedValue;\n }),\n datasets: [\n {\n data: groupedData.map((item) => item[props.measure.name]),\n backgroundColor,\n borderColor,\n },\n ],\n };\n};\n\nexport type DefaultPieChartOptions = {\n measure: Measure;\n showTooltips: boolean;\n showLegend: boolean;\n showValueLabels: boolean;\n};\n\nexport const getDefaultPieChartOptions = (\n options: DefaultPieChartOptions,\n theme: Theme = remarkableTheme,\n): Partial<ChartOptions<'pie'>> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n plugins: {\n legend: { display: options.showLegend, position: theme.charts.legendPosition ?? 'bottom' },\n datalabels: {\n display: options.showValueLabels ? 'auto' : false,\n formatter: (value: string | number) => themeFormatter.data(options.measure, value),\n },\n tooltip: {\n enabled: options.showTooltips,\n callbacks: {\n label(context) {\n const raw = context.raw as number;\n const total = context.dataset.data.reduce(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (sum: number, v: any) => sum + parseFloat(v),\n 0,\n );\n const pct = Math.round((raw / total) * 100);\n return `${themeFormatter.data(options.measure, raw)} (${pct}%)`;\n },\n },\n },\n },\n };\n};\n"],"names":["getPieChartData","props","theme","remarkableTheme","themeFormatter","getThemeFormatter","groupedData","groupTailAsOther","themeKey","getObjectStableKey","backgroundColor","item","i","getColor","chartColors","borderColor","value","formattedValue","i18n","getDefaultPieChartOptions","options","context","raw","total","sum","v","pct"],"mappings":";;;;;AAWO,MAAMA,IAAkB,CAC7BC,GAMAC,IAAeC,MACM;AACrB,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,MAAI,CAACD,EAAM;AACT,WAAO;AAAA,MACL,QAAQ,CAAA;AAAA,MACR,UAAU,CAAC,EAAE,MAAM,IAAI;AAAA,IAAA;AAG3B,QAAMK,IAAcC;AAAA,IAClBN,EAAM;AAAA,IACNA,EAAM;AAAA,IACN,CAACA,EAAM,OAAO;AAAA,IACdA,EAAM;AAAA,EAAA,GAGFO,IAAWC,EAAmBP,CAAK,GAEnCQ,IAAkBJ,EAAY;AAAA,IAAI,CAACK,GAAMC,MAC7CC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,oBAAoBY;AAAA,MACjCF;AAAA,IAAA;AAAA,EACF,GAGIG,IAAcT,EAAY;AAAA,IAAI,CAACK,GAAMC,MACzCC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,gBAAgBY;AAAA,MAC7BF;AAAA,IAAA;AAAA,EACF;AAGF,SAAO;AAAA,IACL,QAAQN,EAAY,IAAI,CAACK,MAAS;AAChC,YAAMK,IAAQL,EAAKV,EAAM,UAAU,IAAI,GACjCgB,IAAiBb,EAAe,KAAKH,EAAM,WAAWe,CAAK;AAGjE,aAAIA,MAAUC,IACLC,EAAK,EAAEF,CAAK,IAEdC;AAAA,IACT,CAAC;AAAA,IACD,UAAU;AAAA,MACR;AAAA,QACE,MAAMX,EAAY,IAAI,CAACK,MAASA,EAAKV,EAAM,QAAQ,IAAI,CAAC;AAAA,QACxD,iBAAAS;AAAA,QACA,aAAAK;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ,GASaI,IAA4B,CACvCC,GACAlB,IAAeC,MACkB;AACjC,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,SAAO;AAAA,IACL,SAAS;AAAA,MACP,QAAQ,EAAE,SAASkB,EAAQ,YAAY,UAAUlB,EAAM,OAAO,kBAAkB,SAAA;AAAA,MAChF,YAAY;AAAA,QACV,SAASkB,EAAQ,kBAAkB,SAAS;AAAA,QAC5C,WAAW,CAACJ,MAA2BZ,EAAe,KAAKgB,EAAQ,SAASJ,CAAK;AAAA,MAAA;AAAA,MAEnF,SAAS;AAAA,QACP,SAASI,EAAQ;AAAA,QACjB,WAAW;AAAA,UACT,MAAMC,GAAS;AACb,kBAAMC,IAAMD,EAAQ,KACdE,IAAQF,EAAQ,QAAQ,KAAK;AAAA;AAAA,cAEjC,CAACG,GAAaC,MAAWD,IAAM,WAAWC,CAAC;AAAA,cAC3C;AAAA,YAAA,GAEIC,IAAM,KAAK,MAAOJ,IAAMC,IAAS,GAAG;AAC1C,mBAAO,GAAGnB,EAAe,KAAKgB,EAAQ,SAASE,CAAG,CAAC,KAAKI,CAAG;AAAA,UAC7D;AAAA,QAAA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEJ;"}
1
+ {"version":3,"file":"pies.utils-CuMFaK2u.js","sources":["../src/remarkable-pro/components/charts/pies/pies.utils.ts"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { groupTailAsOther } from '../charts.utils';\nimport { Theme } from '../../../theme/theme.types';\nimport { remarkableTheme } from '../../../theme/theme.constants';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { getColor } from '../../../theme/styles/styles.utils';\nimport { chartColors } from '../../../../remarkable-ui';\nimport { i18n } from '../../../theme/i18n/i18n';\nimport { getObjectStableKey } from '../../../utils.ts/object.utils';\n\nexport const getPieChartData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measure: Measure;\n maxLegendItems?: number;\n },\n theme: Theme = remarkableTheme,\n): ChartData<'pie'> => {\n const themeFormatter = getThemeFormatter(theme);\n\n if (!props.data)\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n\n const groupedData = groupTailAsOther(\n props.data,\n props.dimension,\n [props.measure],\n props.maxLegendItems,\n );\n\n const themeKey = getObjectStableKey(theme);\n\n const backgroundColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.backgroundColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.backgroundColors ?? chartColors,\n i,\n ),\n );\n\n const borderColor = groupedData.map((item, i) =>\n getColor(\n `${themeKey}.charts.borderColors`,\n `${props.dimension.name}.${item[props.dimension.name]}`,\n theme.charts.borderColors ?? chartColors,\n i,\n ),\n );\n\n return {\n labels: groupedData.map((item) => {\n const value = item[props.dimension.name];\n const formattedValue = themeFormatter.data(props.dimension, value);\n\n // If formatter did not work, try i18n translation\n if (value === formattedValue) {\n return i18n.t(value);\n }\n return formattedValue;\n }),\n datasets: [\n {\n data: groupedData.map((item) => item[props.measure.name]),\n backgroundColor,\n borderColor,\n },\n ],\n };\n};\n\nexport type DefaultPieChartOptions = {\n measure: Measure;\n showTooltips: boolean;\n showLegend: boolean;\n showValueLabels: boolean;\n};\n\nexport const getDefaultPieChartOptions = (\n options: DefaultPieChartOptions,\n theme: Theme = remarkableTheme,\n): Partial<ChartOptions<'pie'>> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n plugins: {\n legend: { display: options.showLegend, position: theme.charts.legendPosition ?? 'bottom' },\n datalabels: {\n display: options.showValueLabels ? 'auto' : false,\n formatter: (value: string | number) => themeFormatter.data(options.measure, value),\n },\n tooltip: {\n enabled: options.showTooltips,\n callbacks: {\n label(context) {\n const raw = context.raw as number;\n const total = context.dataset.data.reduce(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (sum: number, v: any) => sum + parseFloat(v),\n 0,\n );\n const pct = Math.round((raw / total) * 100);\n return `${themeFormatter.data(options.measure, raw)} (${pct}%)`;\n },\n },\n },\n },\n };\n};\n"],"names":["getPieChartData","props","theme","remarkableTheme","themeFormatter","getThemeFormatter","groupedData","groupTailAsOther","themeKey","getObjectStableKey","backgroundColor","item","i","getColor","chartColors","borderColor","value","formattedValue","i18n","getDefaultPieChartOptions","options","context","raw","total","sum","v","pct"],"mappings":";;;;;AAWO,MAAMA,IAAkB,CAC7BC,GAMAC,IAAeC,MACM;AACrB,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,MAAI,CAACD,EAAM;AACT,WAAO;AAAA,MACL,QAAQ,CAAA;AAAA,MACR,UAAU,CAAC,EAAE,MAAM,IAAI;AAAA,IAAA;AAG3B,QAAMK,IAAcC;AAAA,IAClBN,EAAM;AAAA,IACNA,EAAM;AAAA,IACN,CAACA,EAAM,OAAO;AAAA,IACdA,EAAM;AAAA,EAAA,GAGFO,IAAWC,EAAmBP,CAAK,GAEnCQ,IAAkBJ,EAAY;AAAA,IAAI,CAACK,GAAMC,MAC7CC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,oBAAoBY;AAAA,MACjCF;AAAA,IAAA;AAAA,EACF,GAGIG,IAAcT,EAAY;AAAA,IAAI,CAACK,GAAMC,MACzCC;AAAA,MACE,GAAGL,CAAQ;AAAA,MACX,GAAGP,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MACrDC,EAAM,OAAO,gBAAgBY;AAAA,MAC7BF;AAAA,IAAA;AAAA,EACF;AAGF,SAAO;AAAA,IACL,QAAQN,EAAY,IAAI,CAACK,MAAS;AAChC,YAAMK,IAAQL,EAAKV,EAAM,UAAU,IAAI,GACjCgB,IAAiBb,EAAe,KAAKH,EAAM,WAAWe,CAAK;AAGjE,aAAIA,MAAUC,IACLC,EAAK,EAAEF,CAAK,IAEdC;AAAA,IACT,CAAC;AAAA,IACD,UAAU;AAAA,MACR;AAAA,QACE,MAAMX,EAAY,IAAI,CAACK,MAASA,EAAKV,EAAM,QAAQ,IAAI,CAAC;AAAA,QACxD,iBAAAS;AAAA,QACA,aAAAK;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ,GASaI,IAA4B,CACvCC,GACAlB,IAAeC,MACkB;AACjC,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,SAAO;AAAA,IACL,SAAS;AAAA,MACP,QAAQ,EAAE,SAASkB,EAAQ,YAAY,UAAUlB,EAAM,OAAO,kBAAkB,SAAA;AAAA,MAChF,YAAY;AAAA,QACV,SAASkB,EAAQ,kBAAkB,SAAS;AAAA,QAC5C,WAAW,CAACJ,MAA2BZ,EAAe,KAAKgB,EAAQ,SAASJ,CAAK;AAAA,MAAA;AAAA,MAEnF,SAAS;AAAA,QACP,SAASI,EAAQ;AAAA,QACjB,WAAW;AAAA,UACT,MAAMC,GAAS;AACb,kBAAMC,IAAMD,EAAQ,KACdE,IAAQF,EAAQ,QAAQ,KAAK;AAAA;AAAA,cAEjC,CAACG,GAAaC,MAAWD,IAAM,WAAWC,CAAC;AAAA,cAC3C;AAAA,YAAA,GAEIC,IAAM,KAAK,MAAOJ,IAAMC,IAAS,GAAG;AAC1C,mBAAO,GAAGnB,EAAe,KAAKgB,EAAQ,SAASE,CAAG,CAAC,KAAKI,CAAG;AAAA,UAC7D;AAAA,QAAA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEJ;"}
@@ -0,0 +1,68 @@
1
+ import { g as O } from "./utc-B2gCnkBk.js";
2
+ var d = { exports: {} }, $ = d.exports, y;
3
+ function m() {
4
+ return y || (y = 1, (function(p, x) {
5
+ (function(e, n) {
6
+ p.exports = n();
7
+ })($, (function() {
8
+ var e = "day";
9
+ return function(n, v, f) {
10
+ var s = function(t) {
11
+ return t.add(4 - t.isoWeekday(), e);
12
+ }, o = v.prototype;
13
+ o.isoWeekYear = function() {
14
+ return s(this).year();
15
+ }, o.isoWeek = function(t) {
16
+ if (!this.$utils().u(t)) return this.add(7 * (t - this.isoWeek()), e);
17
+ var r, i, a, u, W = s(this), q = (r = this.isoWeekYear(), i = this.$u, a = (i ? f.utc : f)().year(r).startOf("year"), u = 4 - a.isoWeekday(), a.isoWeekday() > 4 && (u += 7), a.add(u, e));
18
+ return W.diff(q, "week") + 1;
19
+ }, o.isoWeekday = function(t) {
20
+ return this.$utils().u(t) ? this.day() || 7 : this.day(this.day() % 7 ? t : t - 7);
21
+ };
22
+ var c = o.startOf;
23
+ o.startOf = function(t, r) {
24
+ var i = this.$utils(), a = !!i.u(r) || r;
25
+ return i.p(t) === "isoweek" ? a ? this.date(this.date() - (this.isoWeekday() - 1)).startOf("day") : this.date(this.date() - 1 - (this.isoWeekday() - 1) + 7).endOf("day") : c.bind(this)(t, r);
26
+ };
27
+ };
28
+ }));
29
+ })(d)), d.exports;
30
+ }
31
+ var l = m();
32
+ const w = /* @__PURE__ */ O(l);
33
+ var h = { exports: {} }, Y = h.exports, k;
34
+ function b() {
35
+ return k || (k = 1, (function(p, x) {
36
+ (function(e, n) {
37
+ p.exports = n();
38
+ })(Y, (function() {
39
+ var e = "month", n = "quarter";
40
+ return function(v, f) {
41
+ var s = f.prototype;
42
+ s.quarter = function(t) {
43
+ return this.$utils().u(t) ? Math.ceil((this.month() + 1) / 3) : this.month(this.month() % 3 + 3 * (t - 1));
44
+ };
45
+ var o = s.add;
46
+ s.add = function(t, r) {
47
+ return t = Number(t), this.$utils().p(r) === n ? this.add(3 * t, e) : o.bind(this)(t, r);
48
+ };
49
+ var c = s.startOf;
50
+ s.startOf = function(t, r) {
51
+ var i = this.$utils(), a = !!i.u(r) || r;
52
+ if (i.p(t) === n) {
53
+ var u = this.quarter() - 1;
54
+ return a ? this.month(3 * u).startOf(e).startOf("day") : this.month(3 * u + 2).endOf(e).endOf("day");
55
+ }
56
+ return c.bind(this)(t, r);
57
+ };
58
+ };
59
+ }));
60
+ })(h)), h.exports;
61
+ }
62
+ var E = b();
63
+ const I = /* @__PURE__ */ O(E);
64
+ export {
65
+ w as i,
66
+ I as q
67
+ };
68
+ //# sourceMappingURL=quarterOfYear-C0maIilJ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quarterOfYear-C0maIilJ.js","sources":["../node_modules/dayjs/plugin/isoWeek.js","../node_modules/dayjs/plugin/quarterOfYear.js"],"sourcesContent":["!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isoWeek=t()}(this,(function(){\"use strict\";var e=\"day\";return function(t,i,s){var a=function(t){return t.add(4-t.isoWeekday(),e)},d=i.prototype;d.isoWeekYear=function(){return a(this).year()},d.isoWeek=function(t){if(!this.$utils().u(t))return this.add(7*(t-this.isoWeek()),e);var i,d,n,o,r=a(this),u=(i=this.isoWeekYear(),d=this.$u,n=(d?s.utc:s)().year(i).startOf(\"year\"),o=4-n.isoWeekday(),n.isoWeekday()>4&&(o+=7),n.add(o,e));return r.diff(u,\"week\")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return\"isoweek\"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf(\"day\"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf(\"day\"):n.bind(this)(e,t)}}}));","!function(t,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_quarterOfYear=n()}(this,(function(){\"use strict\";var t=\"month\",n=\"quarter\";return function(e,i){var r=i.prototype;r.quarter=function(t){return this.$utils().u(t)?Math.ceil((this.month()+1)/3):this.month(this.month()%3+3*(t-1))};var s=r.add;r.add=function(e,i){return e=Number(e),this.$utils().p(i)===n?this.add(3*e,t):s.bind(this)(e,i)};var u=r.startOf;r.startOf=function(e,i){var r=this.$utils(),s=!!r.u(i)||i;if(r.p(e)===n){var o=this.quarter()-1;return s?this.month(3*o).startOf(t).startOf(\"day\"):this.month(3*o+2).endOf(t).endOf(\"day\")}return u.bind(this)(e,i)}}}));"],"names":["t","module","this","i","s","a","d","n","o","r","u","e"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1 +1 @@
1
- {"version":3,"file":"charts.newFillGaps.hooks.d.ts","sourceRoot":"","sources":["../../../../src/remarkable-pro/components/charts/charts.newFillGaps.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAgB1E,KAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,YAAY,GAAG,SAAS,CAAC;IAClC,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,SAAS,CAAC;CAChC,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,YAAY,CA+EjE"}
1
+ {"version":3,"file":"charts.newFillGaps.hooks.d.ts","sourceRoot":"","sources":["../../../../src/remarkable-pro/components/charts/charts.newFillGaps.hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAkB1E,KAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,YAAY,GAAG,SAAS,CAAC;IAClC,SAAS,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,SAAS,CAAC;CAChC,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,YAAY,CAiFjE"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChartCard.d.ts","sourceRoot":"","sources":["../../../../../../src/remarkable-pro/components/charts/shared/ChartCard/ChartCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAU,MAAM,OAAO,CAAC;AAUrD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAMxE,OAAO,EAAE,kCAAkC,EAAE,MAAM,2CAA2C,CAAC;AAG/F,KAAK,cAAc,GAAG;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,qBAAqB,CAAC,EAAE,CAAC,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC;IAChD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,IAAI,KAAK,IAAI,CAAC;CACzF,CAAC;AAEF,eAAO,MAAM,SAAS,uFAqErB,CAAC"}
1
+ {"version":3,"file":"ChartCard.d.ts","sourceRoot":"","sources":["../../../../../../src/remarkable-pro/components/charts/shared/ChartCard/ChartCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAU,MAAM,OAAO,CAAC;AAUrD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAMxE,OAAO,EAAE,kCAAkC,EAAE,MAAM,2CAA2C,CAAC;AAG/F,KAAK,cAAc,GAAG;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,qBAAqB,CAAC,EAAE,CAAC,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC;IAChD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,kCAAkC,KAAK,IAAI,KAAK,IAAI,CAAC;CACzF,CAAC;AAEF,eAAO,MAAM,SAAS,uFAuErB,CAAC"}