@embeddable.com/remarkable-ui 0.1.38 → 0.1.40

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-CsgyAnzC.js +117 -0
  8. package/dist/{ChartCard-Cr2L2Uki.js.map → ChartCard-CsgyAnzC.js.map} +1 -1
  9. package/dist/{ComparisonPeriod.type.emb-C7ixEJKv.js → ComparisonPeriod.type.emb-ZjbGbiV1.js} +2 -2
  10. package/dist/{ComparisonPeriod.type.emb-C7ixEJKv.js.map → ComparisonPeriod.type.emb-ZjbGbiV1.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-DAwqwoAp.js} +14 -14
  16. package/dist/{EditorCard-VE-lXcu3.js.map → EditorCard-DAwqwoAp.js.map} +1 -1
  17. package/dist/{KpiChart-PRQV9-IW.js → KpiChart-Lh_2N9dT.js} +13 -13
  18. package/dist/{KpiChart-PRQV9-IW.js.map → KpiChart-Lh_2N9dT.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-DCJT9sa0.js +253 -0
  27. package/dist/PivotTable-DCJT9sa0.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-CMzbI0wG.js} +3 -3
  31. package/dist/{SingleSelectField-Dzx78rCq.js.map → SingleSelectField-CMzbI0wG.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-DIunU5Xf.js} +5 -5
  36. package/dist/{bars.utils-CTqUglN7.js.map → bars.utils-DIunU5Xf.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-9h6uemzB.js} +1371 -1396
  40. package/dist/charts.utils-9h6uemzB.js.map +1 -0
  41. package/dist/{component.constants-D59iJ42U.js → component.constants-6DERKpeq.js} +119 -108
  42. package/dist/component.constants-6DERKpeq.js.map +1 -0
  43. package/dist/embeddable-components.json +12 -11
  44. package/dist/embeddable-theme-2b917.js +6 -0
  45. package/dist/{formatter.utils-DDLdrAl9.js → formatter.utils-R5zIrZIA.js} +2 -2
  46. package/dist/{formatter.utils-DDLdrAl9.js.map → formatter.utils-R5zIrZIA.js.map} +1 -1
  47. package/dist/{index-DdEgKFPe.js → index-CLkczqL_.js} +8 -8
  48. package/dist/{index-DdEgKFPe.js.map → index-CLkczqL_.js.map} +1 -1
  49. package/dist/{index-CVw4TFfQ.js → index-Cj5wpig9.js} +4 -4
  50. package/dist/{index-CVw4TFfQ.js.map → index-Cj5wpig9.js.map} +1 -1
  51. package/dist/{index-DKUEiV33.js → index-Dfbt_iT7.js} +11 -11
  52. package/dist/{index-DKUEiV33.js.map → index-Dfbt_iT7.js.map} +1 -1
  53. package/dist/{index-BGwJ9TYS.js → index-DfnO1U7b.js} +7 -7
  54. package/dist/{index-BGwJ9TYS.js.map → index-DfnO1U7b.js.map} +1 -1
  55. package/dist/{index-BlqpkSit.js → index-YRGaBl06.js} +4 -4
  56. package/dist/{index-BlqpkSit.js.map → index-YRGaBl06.js.map} +1 -1
  57. package/dist/{index-IjB-3gUH.js → index-hua9dsBD.js} +5 -5
  58. package/dist/{index-IjB-3gUH.js.map → index-hua9dsBD.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-BHep0bTK.js} +5 -5
  64. package/dist/{pies.utils-DArVf3EJ.js.map → pies.utils-BHep0bTK.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-C61mst0e.js} +2 -2
  100. package/dist/{timeRange.utils-D6gvWIhx.js.map → timeRange.utils-C61mst0e.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
@@ -1,8 +1,8 @@
1
- import { i as L, r as w, m as M, j as l, d as V, a as y, b as z, t as P, c as k, s as v, e as H, f as R, g as j, x as I, y as S, h as T, k as Y, l as F, n as E, V as G, o as O } from "./component.constants-D59iJ42U.js";
1
+ import { i as L, r as w, m as M, j as l, d as V, a as y, b as z, t as P, c as k, s as v, e as H, f as R, g as j, x as I, y as S, h as T, k as Y, l as F, n as E, V as G, o as O } from "./component.constants-6DERKpeq.js";
2
2
  import { useTheme as W, defineComponent as _ } from "@embeddable.com/react";
3
- import { C as q } from "./ChartCard-Cr2L2Uki.js";
4
- import { g as J, a as K, B as N } from "./bars.utils-CTqUglN7.js";
5
- import { u as Q } from "./charts.newFillGaps.hooks-YXEKFvmz.js";
3
+ import { C as q } from "./ChartCard-CsgyAnzC.js";
4
+ import { g as J, a as K, B as N } from "./bars.utils-DIunU5Xf.js";
5
+ import { u as Q } from "./charts.newFillGaps.hooks-CEXFxNVs.js";
6
6
  const U = (a) => {
7
7
  var i, n;
8
8
  const s = W();
@@ -1,8 +1,8 @@
1
- import { i as L, r as y, m as w, j as l, d as M, a as V, b as P, t as v, c as k, s as R, e as j, f as I, g as S, x as T, y as X, p as F, q, u as z, v as E, V as G, o as O } from "./component.constants-D59iJ42U.js";
1
+ import { i as L, r as y, m as w, j as l, d as M, a as V, b as P, t as v, c as k, s as R, e as j, f as I, g as S, x as T, y as X, p as F, q, u as z, v as E, V as G, o as O } from "./component.constants-6DERKpeq.js";
2
2
  import { useTheme as W, defineComponent as _ } from "@embeddable.com/react";
3
- import { C as H } from "./ChartCard-Cr2L2Uki.js";
4
- import { g as J, a as K, B as N } from "./bars.utils-CTqUglN7.js";
5
- import { u as Q } from "./charts.newFillGaps.hooks-YXEKFvmz.js";
3
+ import { C as H } from "./ChartCard-CsgyAnzC.js";
4
+ import { g as J, a as K, B as N } from "./bars.utils-DIunU5Xf.js";
5
+ import { u as Q } from "./charts.newFillGaps.hooks-CEXFxNVs.js";
6
6
  const U = (a) => {
7
7
  var o, n;
8
8
  const s = W();
@@ -1,8 +1,8 @@
1
- import { i as L, r as w, m as k, j as m, d as z, w as G, b as P, z as R, t as M, c as H, A as j, s as v, e as S, f as T, g as F, x as Y, y as E, h as I, k as O, l as W, V as u, o as _ } from "./component.constants-D59iJ42U.js";
1
+ import { i as L, r as w, m as k, j as m, d as z, w as G, b as P, z as R, t as M, c as H, A as j, s as v, e as S, f as T, g as F, x as Y, y as E, h as I, k as O, l as W, V as u, o as _ } from "./component.constants-6DERKpeq.js";
2
2
  import { useTheme as q, defineComponent as J } from "@embeddable.com/react";
3
- import { C as K } from "./ChartCard-Cr2L2Uki.js";
4
- import { b as N, a as Q, B as U } from "./bars.utils-CTqUglN7.js";
5
- import { u as X } from "./charts.newFillGaps.hooks-YXEKFvmz.js";
3
+ import { C as K } from "./ChartCard-CsgyAnzC.js";
4
+ import { b as N, a as Q, B as U } from "./bars.utils-DIunU5Xf.js";
5
+ import { u as X } from "./charts.newFillGaps.hooks-CEXFxNVs.js";
6
6
  const Z = (e) => {
7
7
  var n, l;
8
8
  const a = q();
@@ -1,8 +1,8 @@
1
- import { i as L, r as w, m as G, j as m, d as k, w as P, b as R, z as M, t as j, c as v, A as S, s as T, e as F, f as X, g as z, x as q, y as E, p as I, q as O, u as W, V as u, o as _ } from "./component.constants-D59iJ42U.js";
1
+ import { i as L, r as w, m as G, j as m, d as k, w as P, b as R, z as M, t as j, c as v, A as S, s as T, e as F, f as X, g as z, x as q, y as E, p as I, q as O, u as W, V as u, o as _ } from "./component.constants-6DERKpeq.js";
2
2
  import { useTheme as H, defineComponent as J } from "@embeddable.com/react";
3
- import { C as K } from "./ChartCard-Cr2L2Uki.js";
4
- import { b as N, a as Q, B as U } from "./bars.utils-CTqUglN7.js";
5
- import { u as Y } from "./charts.newFillGaps.hooks-YXEKFvmz.js";
3
+ import { C as K } from "./ChartCard-CsgyAnzC.js";
4
+ import { b as N, a as Q, B as U } from "./bars.utils-DIunU5Xf.js";
5
+ import { u as Y } from "./charts.newFillGaps.hooks-CEXFxNVs.js";
6
6
  const Z = (e) => {
7
7
  var n, l;
8
8
  const a = H();
@@ -1,8 +1,8 @@
1
- import { i as L, r as f, m as w, j as m, d as S, w as z, b as P, z as R, t as M, c as H, A as T, s as j, e as v, f as F, g as G, x as Y, y as E, h as I, k as O, l as W, B as _, V as u, o as q } from "./component.constants-D59iJ42U.js";
1
+ import { i as L, r as f, m as w, j as m, d as S, w as z, b as P, z as R, t as M, c as H, A as T, s as j, e as v, f as F, g as G, x as Y, y as E, h as I, k as O, l as W, B as _, V as u, o as q } from "./component.constants-6DERKpeq.js";
2
2
  import { useTheme as J, defineComponent as K } from "@embeddable.com/react";
3
- import { C as N } from "./ChartCard-Cr2L2Uki.js";
4
- import { b as Q, a as U, B as X } from "./bars.utils-CTqUglN7.js";
5
- import { u as Z } from "./charts.newFillGaps.hooks-YXEKFvmz.js";
3
+ import { C as N } from "./ChartCard-CsgyAnzC.js";
4
+ import { b as Q, a as U, B as X } from "./bars.utils-DIunU5Xf.js";
5
+ import { u as Z } from "./charts.newFillGaps.hooks-CEXFxNVs.js";
6
6
  const $ = (a) => {
7
7
  var n, l;
8
8
  const e = J();
@@ -1,8 +1,8 @@
1
- import { i as D, r as L, m as w, j as m, d as S, w as P, b as R, z as M, t as T, c as j, A as v, s as F, e as G, f as X, g as z, x as q, y as E, p as I, q as O, u as W, B as _, V as u, o as H } from "./component.constants-D59iJ42U.js";
1
+ import { i as D, r as L, m as w, j as m, d as S, w as P, b as R, z as M, t as T, c as j, A as v, s as F, e as G, f as X, g as z, x as q, y as E, p as I, q as O, u as W, B as _, V as u, o as H } from "./component.constants-6DERKpeq.js";
2
2
  import { useTheme as J, defineComponent as K } from "@embeddable.com/react";
3
- import { C as N } from "./ChartCard-Cr2L2Uki.js";
4
- import { b as Q, a as U, B as Y } from "./bars.utils-CTqUglN7.js";
5
- import { u as Z } from "./charts.newFillGaps.hooks-YXEKFvmz.js";
3
+ import { C as N } from "./ChartCard-CsgyAnzC.js";
4
+ import { b as Q, a as U, B as Y } from "./bars.utils-DIunU5Xf.js";
5
+ import { u as Z } from "./charts.newFillGaps.hooks-CEXFxNVs.js";
6
6
  const $ = (a) => {
7
7
  var n, l;
8
8
  const e = J();
@@ -0,0 +1,117 @@
1
+ import { ad as k, j as t, aP as v, i as x, ap as N, as as D, U as C, aq as L, ak as S, ai as w, aj as I, ag as R, am as M, an as _, aQ as $ } from "./component.constants-6DERKpeq.js";
2
+ import f, { useRef as P } from "react";
3
+ import { useTheme as j } from "@embeddable.com/react";
4
+ /**
5
+ * @license @tabler/icons-react v3.35.0 - MIT
6
+ *
7
+ * This source code is licensed under the MIT license.
8
+ * See the LICENSE file in the root directory of this source tree.
9
+ */
10
+ const T = [["path", { d: "M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-0" }], ["path", { d: "M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-1" }], ["path", { d: "M12 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0", key: "svg-2" }]], b = k("outline", "dots-vertical", "DotsVertical", T), A = "_skeleton_12e7h_10", B = {
11
+ skeleton: A
12
+ }, E = () => /* @__PURE__ */ t.jsx("div", { className: B.skeleton }), V = "_chartCard_1edc9_1", q = "_error_1edc9_6", F = "_rightContent_1edc9_12", H = "_fixedContent_1edc9_17", K = "_loading_1edc9_26", O = "_hidden_1edc9_31", n = {
13
+ chartCard: V,
14
+ error: q,
15
+ rightContent: F,
16
+ fixedContent: H,
17
+ loading: K,
18
+ hidden: O
19
+ }, Q = "_loading_7lgag_7", U = {
20
+ loading: Q
21
+ }, p = () => /* @__PURE__ */ t.jsx(v, { className: U.loading }), z = "_list_mwshn_1", G = {
22
+ list: z
23
+ }, J = (o) => {
24
+ var h, m;
25
+ const r = j();
26
+ x(r);
27
+ const [g, e] = f.useState(!1), c = ((m = (h = r.charts) == null ? void 0 : h.chartCardMenuPro) == null ? void 0 : m.options) ?? [];
28
+ if (c.length === 0)
29
+ return null;
30
+ const l = (s) => {
31
+ setTimeout(() => {
32
+ Promise.resolve(s()).finally(() => e(!1));
33
+ }, 100);
34
+ }, d = (s) => {
35
+ if (e(!0), o.onCustomDownload) {
36
+ o.onCustomDownload((a) => l(() => s(a)));
37
+ return;
38
+ }
39
+ l(() => s({ ...o, theme: r }));
40
+ };
41
+ return /* @__PURE__ */ t.jsx(
42
+ N,
43
+ {
44
+ side: "bottom",
45
+ align: "end",
46
+ triggerComponent: g ? /* @__PURE__ */ t.jsx(p, {}) : /* @__PURE__ */ t.jsx(S, { icon: b }),
47
+ children: /* @__PURE__ */ t.jsx(D, { className: G.list, autoFocus: !0, children: c.map((s, a) => {
48
+ const i = C.t(s.labelKey);
49
+ return /* @__PURE__ */ t.jsx(
50
+ L,
51
+ {
52
+ label: i,
53
+ onClick: () => d(s.onClick),
54
+ startIcon: s.iconSrc ? /* @__PURE__ */ t.jsx("img", { src: s.iconSrc, alt: `${i} icon` }) : void 0
55
+ },
56
+ a
57
+ );
58
+ }) })
59
+ }
60
+ );
61
+ }, W = f.forwardRef(
62
+ ({ title: o, subtitle: r, children: g, data: e, errorMessage: c, dimensionsAndMeasures: l = [], ...d }, h) => {
63
+ var u;
64
+ const m = j();
65
+ x(m);
66
+ const s = P(null), a = !!(e != null && e.data && ((u = e.data) == null ? void 0 : u.length) > 0), i = !e || (e == null ? void 0 : e.isLoading), y = () => i && !a ? /* @__PURE__ */ t.jsx(E, {}) : c ? /* @__PURE__ */ t.jsx(
67
+ _,
68
+ {
69
+ className: n.error,
70
+ icon: $,
71
+ title: C.t("charts.errorTitle"),
72
+ message: c
73
+ }
74
+ ) : a ? g : /* @__PURE__ */ t.jsx(
75
+ _,
76
+ {
77
+ title: C.t("charts.emptyTitle"),
78
+ message: C.t("charts.emptyMessage")
79
+ }
80
+ );
81
+ return /* @__PURE__ */ t.jsxs(w, { className: n.chartCard, ...d, children: [
82
+ /* @__PURE__ */ t.jsx(
83
+ I,
84
+ {
85
+ title: o,
86
+ subtitle: r,
87
+ rightContent: /* @__PURE__ */ t.jsxs("div", { "data-no-export": !0, className: n.rightContent, children: [
88
+ /* @__PURE__ */ t.jsx(
89
+ "div",
90
+ {
91
+ className: R(n.fixedContent, i ? n.loading : n.hidden),
92
+ children: /* @__PURE__ */ t.jsx(p, {})
93
+ }
94
+ ),
95
+ /* @__PURE__ */ t.jsx("div", { className: n.fixedContent, children: /* @__PURE__ */ t.jsx(
96
+ J,
97
+ {
98
+ title: o,
99
+ containerRef: s,
100
+ data: e == null ? void 0 : e.data,
101
+ dimensionsAndMeasures: l,
102
+ onCustomDownload: d.onCustomDownload
103
+ }
104
+ ) })
105
+ ] })
106
+ }
107
+ ),
108
+ /* @__PURE__ */ t.jsx(M, { ref: h, children: y() })
109
+ ] });
110
+ }
111
+ );
112
+ W.displayName = "ChartCard";
113
+ export {
114
+ W as C,
115
+ E as S
116
+ };
117
+ //# sourceMappingURL=ChartCard-CsgyAnzC.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChartCard-Cr2L2Uki.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconDotsVertical.mjs","../src/remarkable-ui/shared/Skeleton/Skeleton.tsx","../src/remarkable-pro/components/charts/shared/ChartCard/ChartCardLoading/ChartCardLoading.tsx","../src/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.tsx","../src/remarkable-pro/components/charts/shared/ChartCard/ChartCard.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-1\" }], [\"path\", { \"d\": \"M12 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-2\" }]];\nconst IconDotsVertical = createReactComponent(\"outline\", \"dots-vertical\", \"DotsVertical\", __iconNode);\n\nexport { __iconNode, IconDotsVertical as default };\n//# sourceMappingURL=IconDotsVertical.mjs.map\n","import styles from './Skeleton.module.css';\n\nexport const Skeleton = () => {\n return <div className={styles.skeleton} />;\n};\n","import { IconLoader2 } from '@tabler/icons-react';\nimport styles from './ChartCardLoading.module.css';\n\nexport const ChartCardLoading = () => <IconLoader2 className={styles.loading} />;\n","import { IconDotsVertical } from '@tabler/icons-react';\nimport React from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from '../ChartCardLoading/ChartCardLoading';\nimport { i18n, i18nSetup } from '../../../../../theme/i18n/i18n';\nimport { Theme } from '../../../../../theme/theme.types';\nimport {\n Dropdown,\n IconButton,\n SelectList,\n SelectListOption,\n} from '../../../../../../remarkable-ui';\nimport { ChartCardMenuProOptionOnClickProps } from './ChartCardMenuPro.types';\nimport styles from './ChartCardMenuPro.module.css';\n\ntype ChartCardMenuProProps = Omit<ChartCardMenuProOptionOnClickProps, 'theme'>;\n\nexport const ChartCardMenuPro: React.FC<ChartCardMenuProProps> = (props) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const [isLoading, setIsLoading] = React.useState(false);\n\n const options = theme.charts?.chartCardMenuPro?.options ?? [];\n\n if (options.length === 0) {\n return null;\n }\n\n const startAction = (onClick: () => void | Promise<void>) => {\n setTimeout(() => {\n Promise.resolve(onClick()).finally(() => setIsLoading(false));\n }, 100);\n };\n\n const handleExport = (onClick: (props: ChartCardMenuProOptionOnClickProps) => void) => {\n setIsLoading(true);\n if (props.onCustomDownload) {\n props.onCustomDownload((args) => startAction(() => onClick(args)));\n return;\n }\n startAction(() => onClick({ ...props, theme }));\n };\n\n return (\n <Dropdown\n side=\"bottom\"\n align=\"end\"\n triggerComponent={isLoading ? <ChartCardLoading /> : <IconButton icon={IconDotsVertical} />}\n >\n <SelectList className={styles.list} autoFocus>\n {options.map((option, index) => {\n const label = i18n.t(option.labelKey);\n\n return (\n <SelectListOption\n key={index}\n label={label}\n onClick={() => handleExport(option.onClick)}\n startIcon={\n option.iconSrc ? <img src={option.iconSrc} alt={`${label} icon`} /> : undefined\n }\n />\n );\n })}\n </SelectList>\n </Dropdown>\n );\n};\n","import React, { CSSProperties, useRef } from 'react';\nimport { IconAlertCircle } from '@tabler/icons-react';\nimport {\n Card,\n CardContent,\n CardContentInfo,\n CardHeader,\n Skeleton,\n} from '../../../../../remarkable-ui';\nimport styles from './ChartCard.module.css';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from './ChartCardLoading/ChartCardLoading';\nimport { ChartCardMenuPro } from './ChartCardMenuPro/ChartCardMenuPro';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCardMenuProOptionOnClickProps } from './ChartCardMenuPro/ChartCardMenuPro.types';\nimport clsx from 'clsx';\n\ntype ChartCardProps = {\n title: string;\n subtitle?: string;\n children: React.ReactNode;\n data: DataResponse;\n isLoading?: boolean;\n errorMessage?: string;\n style?: CSSProperties;\n dimensionsAndMeasures?: (Dimension | Measure)[];\n onCustomDownload?: (props: (props: ChartCardMenuProOptionOnClickProps) => void) => void;\n};\n\nexport const ChartCard = React.forwardRef<HTMLDivElement, ChartCardProps>(\n (\n { title, subtitle, children, data, errorMessage, dimensionsAndMeasures = [], ...props },\n ref,\n ) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const chartRef = useRef<HTMLDivElement>(null);\n\n const hasData = Boolean(data?.data && data.data?.length > 0);\n\n const isLoading = !data || data?.isLoading;\n\n const getDisplay = () => {\n if (isLoading && !hasData) {\n return <Skeleton />;\n }\n\n if (errorMessage) {\n return (\n <CardContentInfo\n className={styles.error}\n icon={IconAlertCircle}\n title={i18n.t('charts.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n if (!hasData) {\n return (\n <CardContentInfo\n title={i18n.t('charts.emptyTitle')}\n message={i18n.t('charts.emptyMessage')}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.chartCard} {...props}>\n <CardHeader\n title={title}\n subtitle={subtitle}\n rightContent={\n <div data-no-export className={styles.rightContent}>\n <div className={clsx(styles.fixedContent, isLoading && styles.loading)}>\n <ChartCardLoading />\n </div>\n <div className={styles.fixedContent}>\n <ChartCardMenuPro\n title={title}\n containerRef={chartRef}\n data={data?.data}\n dimensionsAndMeasures={dimensionsAndMeasures}\n onCustomDownload={props.onCustomDownload}\n />\n </div>\n </div>\n }\n />\n\n <CardContent ref={ref}>{getDisplay()}</CardContent>\n </Card>\n );\n },\n);\n\nChartCard.displayName = 'ChartCard';\n"],"names":["__iconNode","IconDotsVertical","createReactComponent","Skeleton","jsx","styles","ChartCardLoading","IconLoader2","ChartCardMenuPro","props","theme","useTheme","i18nSetup","isLoading","setIsLoading","React","options","_b","_a","startAction","onClick","handleExport","args","Dropdown","IconButton","SelectList","option","index","label","i18n","SelectListOption","ChartCard","title","subtitle","children","data","errorMessage","dimensionsAndMeasures","ref","chartRef","useRef","hasData","getDisplay","CardContentInfo","IconAlertCircle","Card","CardHeader","jsxs","clsx","CardContent"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"ChartCard-CsgyAnzC.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconDotsVertical.mjs","../src/remarkable-ui/shared/Skeleton/Skeleton.tsx","../src/remarkable-pro/components/charts/shared/ChartCard/ChartCardLoading/ChartCardLoading.tsx","../src/remarkable-pro/components/charts/shared/ChartCard/ChartCardMenuPro/ChartCardMenuPro.tsx","../src/remarkable-pro/components/charts/shared/ChartCard/ChartCard.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M12 12m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M12 19m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-1\" }], [\"path\", { \"d\": \"M12 5m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0\", \"key\": \"svg-2\" }]];\nconst IconDotsVertical = createReactComponent(\"outline\", \"dots-vertical\", \"DotsVertical\", __iconNode);\n\nexport { __iconNode, IconDotsVertical as default };\n//# sourceMappingURL=IconDotsVertical.mjs.map\n","import styles from './Skeleton.module.css';\n\nexport const Skeleton = () => {\n return <div className={styles.skeleton} />;\n};\n","import { IconLoader2 } from '@tabler/icons-react';\nimport styles from './ChartCardLoading.module.css';\n\nexport const ChartCardLoading = () => <IconLoader2 className={styles.loading} />;\n","import { IconDotsVertical } from '@tabler/icons-react';\nimport React from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from '../ChartCardLoading/ChartCardLoading';\nimport { i18n, i18nSetup } from '../../../../../theme/i18n/i18n';\nimport { Theme } from '../../../../../theme/theme.types';\nimport {\n Dropdown,\n IconButton,\n SelectList,\n SelectListOption,\n} from '../../../../../../remarkable-ui';\nimport { ChartCardMenuProOptionOnClickProps } from './ChartCardMenuPro.types';\nimport styles from './ChartCardMenuPro.module.css';\n\ntype ChartCardMenuProProps = Omit<ChartCardMenuProOptionOnClickProps, 'theme'>;\n\nexport const ChartCardMenuPro: React.FC<ChartCardMenuProProps> = (props) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const [isLoading, setIsLoading] = React.useState(false);\n\n const options = theme.charts?.chartCardMenuPro?.options ?? [];\n\n if (options.length === 0) {\n return null;\n }\n\n const startAction = (onClick: () => void | Promise<void>) => {\n setTimeout(() => {\n Promise.resolve(onClick()).finally(() => setIsLoading(false));\n }, 100);\n };\n\n const handleExport = (onClick: (props: ChartCardMenuProOptionOnClickProps) => void) => {\n setIsLoading(true);\n if (props.onCustomDownload) {\n props.onCustomDownload((args) => startAction(() => onClick(args)));\n return;\n }\n startAction(() => onClick({ ...props, theme }));\n };\n\n return (\n <Dropdown\n side=\"bottom\"\n align=\"end\"\n triggerComponent={isLoading ? <ChartCardLoading /> : <IconButton icon={IconDotsVertical} />}\n >\n <SelectList className={styles.list} autoFocus>\n {options.map((option, index) => {\n const label = i18n.t(option.labelKey);\n\n return (\n <SelectListOption\n key={index}\n label={label}\n onClick={() => handleExport(option.onClick)}\n startIcon={\n option.iconSrc ? <img src={option.iconSrc} alt={`${label} icon`} /> : undefined\n }\n />\n );\n })}\n </SelectList>\n </Dropdown>\n );\n};\n","import React, { CSSProperties, useRef } from 'react';\nimport { IconAlertCircle } from '@tabler/icons-react';\nimport {\n Card,\n CardContent,\n CardContentInfo,\n CardHeader,\n Skeleton,\n} from '../../../../../remarkable-ui';\nimport styles from './ChartCard.module.css';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { useTheme } from '@embeddable.com/react';\nimport { ChartCardLoading } from './ChartCardLoading/ChartCardLoading';\nimport { ChartCardMenuPro } from './ChartCardMenuPro/ChartCardMenuPro';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCardMenuProOptionOnClickProps } from './ChartCardMenuPro/ChartCardMenuPro.types';\nimport clsx from 'clsx';\n\ntype ChartCardProps = {\n title: string;\n subtitle?: string;\n children: React.ReactNode;\n data: DataResponse;\n isLoading?: boolean;\n errorMessage?: string;\n style?: CSSProperties;\n dimensionsAndMeasures?: (Dimension | Measure)[];\n onCustomDownload?: (props: (props: ChartCardMenuProOptionOnClickProps) => void) => void;\n};\n\nexport const ChartCard = React.forwardRef<HTMLDivElement, ChartCardProps>(\n (\n { title, subtitle, children, data, errorMessage, dimensionsAndMeasures = [], ...props },\n ref,\n ) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const chartRef = useRef<HTMLDivElement>(null);\n\n const hasData = Boolean(data?.data && data.data?.length > 0);\n\n const isLoading = !data || data?.isLoading;\n\n const getDisplay = () => {\n if (isLoading && !hasData) {\n return <Skeleton />;\n }\n\n if (errorMessage) {\n return (\n <CardContentInfo\n className={styles.error}\n icon={IconAlertCircle}\n title={i18n.t('charts.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n if (!hasData) {\n return (\n <CardContentInfo\n title={i18n.t('charts.emptyTitle')}\n message={i18n.t('charts.emptyMessage')}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.chartCard} {...props}>\n <CardHeader\n title={title}\n subtitle={subtitle}\n rightContent={\n <div data-no-export className={styles.rightContent}>\n <div\n className={clsx(styles.fixedContent, isLoading ? styles.loading : styles.hidden)}\n >\n <ChartCardLoading />\n </div>\n <div className={styles.fixedContent}>\n <ChartCardMenuPro\n title={title}\n containerRef={chartRef}\n data={data?.data}\n dimensionsAndMeasures={dimensionsAndMeasures}\n onCustomDownload={props.onCustomDownload}\n />\n </div>\n </div>\n }\n />\n\n <CardContent ref={ref}>{getDisplay()}</CardContent>\n </Card>\n );\n },\n);\n\nChartCard.displayName = 'ChartCard';\n"],"names":["__iconNode","IconDotsVertical","createReactComponent","Skeleton","jsx","styles","ChartCardLoading","IconLoader2","ChartCardMenuPro","props","theme","useTheme","i18nSetup","isLoading","setIsLoading","React","options","_b","_a","startAction","onClick","handleExport","args","Dropdown","IconButton","SelectList","option","index","label","i18n","SelectListOption","ChartCard","title","subtitle","children","data","errorMessage","dimensionsAndMeasures","ref","chartRef","useRef","hasData","getDisplay","CardContentInfo","IconAlertCircle","Card","CardHeader","jsxs","clsx","CardContent"],"mappings":";;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,4CAA4C,KAAO,QAAO,CAAE,GAAG,CAAC,QAAQ,EAAE,GAAK,4CAA4C,KAAO,SAAS,GAAG,CAAC,QAAQ,EAAE,GAAK,2CAA2C,KAAO,QAAO,CAAE,CAAC,GACxPC,IAAmBC,EAAqB,WAAW,iBAAiB,gBAAgBF,CAAU;;GCRvFG,IAAW,MACfC,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAWC,EAAO,SAAA,CAAU;;;;;;;;;GCA7BC,IAAmB,MAAMF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,WAAWF,EAAO,SAAS;;GCcjEG,IAAoD,CAACC,MAAU;;AAC1E,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAM,CAACG,GAAWC,CAAY,IAAIC,EAAM,SAAS,EAAK,GAEhDC,MAAUC,KAAAC,IAAAR,EAAM,WAAN,gBAAAQ,EAAc,qBAAd,gBAAAD,EAAgC,YAAW,CAAA;AAE3D,MAAID,EAAQ,WAAW;AACrB,WAAO;AAGT,QAAMG,IAAc,CAACC,MAAwC;AAC3D,eAAW,MAAM;AACf,cAAQ,QAAQA,GAAS,EAAE,QAAQ,MAAMN,EAAa,EAAK,CAAC;AAAA,IAC9D,GAAG,GAAG;AAAA,EACR,GAEMO,IAAe,CAACD,MAAiE;AAErF,QADAN,EAAa,EAAI,GACbL,EAAM,kBAAkB;AAC1B,MAAAA,EAAM,iBAAiB,CAACa,MAASH,EAAY,MAAMC,EAAQE,CAAI,CAAC,CAAC;AACjE;AAAA,IACF;AACA,IAAAH,EAAY,MAAMC,EAAQ,EAAE,GAAGX,GAAO,OAAAC,EAAA,CAAO,CAAC;AAAA,EAChD;AAEA,SACEN,gBAAAA,EAAAA;AAAAA,IAACmB;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,OAAM;AAAA,MACN,kBAAkBV,IAAYT,gBAAAA,MAACE,GAAA,CAAA,CAAiB,IAAKF,gBAAAA,EAAAA,IAACoB,GAAA,EAAW,MAAMvB,GAAkB;AAAA,MAEzF,UAAAG,gBAAAA,EAAAA,IAACqB,GAAA,EAAW,WAAWpB,EAAO,MAAM,WAAS,IAC1C,UAAAW,EAAQ,IAAI,CAACU,GAAQC,MAAU;AAC9B,cAAMC,IAAQC,EAAK,EAAEH,EAAO,QAAQ;AAEpC,eACEtB,gBAAAA,EAAAA;AAAAA,UAAC0B;AAAA,UAAA;AAAA,YAEC,OAAAF;AAAA,YACA,SAAS,MAAMP,EAAaK,EAAO,OAAO;AAAA,YAC1C,WACEA,EAAO,UAAUtB,gBAAAA,EAAAA,IAAC,OAAA,EAAI,KAAKsB,EAAO,SAAS,KAAK,GAAGE,CAAK,QAAA,CAAS,IAAK;AAAA,UAAA;AAAA,UAJnED;AAAA,QAAA;AAAA,MAQX,CAAC,EAAA,CACH;AAAA,IAAA;AAAA,EAAA;AAGN,GCrCaI,IAAYhB,EAAM;AAAA,EAC7B,CACE,EAAE,OAAAiB,GAAO,UAAAC,GAAU,UAAAC,GAAU,MAAAC,GAAM,cAAAC,GAAc,uBAAAC,IAAwB,CAAA,GAAI,GAAG5B,EAAA,GAChF6B,MACG;;AACH,UAAM5B,IAAeC,EAAA;AACrB,IAAAC,EAAUF,CAAK;AAEf,UAAM6B,IAAWC,EAAuB,IAAI,GAEtCC,IAAU,GAAQN,KAAA,QAAAA,EAAM,UAAQjB,IAAAiB,EAAK,SAAL,gBAAAjB,EAAW,UAAS,IAEpDL,IAAY,CAACsB,MAAQA,KAAA,gBAAAA,EAAM,YAE3BO,IAAa,MACb7B,KAAa,CAAC4B,0BACRtC,GAAA,EAAS,IAGfiC,IAEAhC,gBAAAA,EAAAA;AAAAA,MAACuC;AAAA,MAAA;AAAA,QACC,WAAWtC,EAAO;AAAA,QAClB,MAAMuC;AAAA,QACN,OAAOf,EAAK,EAAE,mBAAmB;AAAA,QACjC,SAASO;AAAA,MAAA;AAAA,IAAA,IAKVK,IASEP,IAPH9B,gBAAAA,EAAAA;AAAAA,MAACuC;AAAA,MAAA;AAAA,QACC,OAAOd,EAAK,EAAE,mBAAmB;AAAA,QACjC,SAASA,EAAK,EAAE,qBAAqB;AAAA,MAAA;AAAA,IAAA;AAQ7C,kCACGgB,GAAA,EAAK,WAAWxC,EAAO,WAAY,GAAGI,GACrC,UAAA;AAAA,MAAAL,gBAAAA,EAAAA;AAAAA,QAAC0C;AAAA,QAAA;AAAA,UACC,OAAAd;AAAA,UACA,UAAAC;AAAA,UACA,cACEc,gBAAAA,EAAAA,KAAC,OAAA,EAAI,kBAAc,IAAC,WAAW1C,EAAO,cACpC,UAAA;AAAA,YAAAD,gBAAAA,EAAAA;AAAAA,cAAC;AAAA,cAAA;AAAA,gBACC,WAAW4C,EAAK3C,EAAO,cAAcQ,IAAYR,EAAO,UAAUA,EAAO,MAAM;AAAA,gBAE/E,gCAACC,GAAA,CAAA,CAAiB;AAAA,cAAA;AAAA,YAAA;AAAA,YAEpBF,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAWC,EAAO,cACrB,UAAAD,gBAAAA,EAAAA;AAAAA,cAACI;AAAA,cAAA;AAAA,gBACC,OAAAwB;AAAA,gBACA,cAAcO;AAAA,gBACd,MAAMJ,KAAA,gBAAAA,EAAM;AAAA,gBACZ,uBAAAE;AAAA,gBACA,kBAAkB5B,EAAM;AAAA,cAAA;AAAA,YAAA,EAC1B,CACF;AAAA,UAAA,EAAA,CACF;AAAA,QAAA;AAAA,MAAA;AAAA,MAIJL,gBAAAA,EAAAA,IAAC6C,GAAA,EAAY,KAAAX,GAAW,UAAAI,EAAA,EAAW,CAAE;AAAA,IAAA,GACvC;AAAA,EAEJ;AACF;AAEAX,EAAU,cAAc;","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- import { aP as i, aQ as o } from "./component.constants-D59iJ42U.js";
1
+ import { aR as i, aS as o } from "./component.constants-6DERKpeq.js";
2
2
  const e = i("comparisonPeriod", {
3
3
  label: "Comparison Period",
4
4
  optionLabel: (r) => r
@@ -11,4 +11,4 @@ o(e, "Previous year");
11
11
  export {
12
12
  e as C
13
13
  };
14
- //# sourceMappingURL=ComparisonPeriod.type.emb-C7ixEJKv.js.map
14
+ //# sourceMappingURL=ComparisonPeriod.type.emb-ZjbGbiV1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComparisonPeriod.type.emb-C7ixEJKv.js","sources":["../src/remarkable-pro/components/types/ComparisonPeriod.type.emb.ts"],"sourcesContent":["import { defineOption, defineType } from '@embeddable.com/core';\n\nconst ComparisonPeriodType = defineType('comparisonPeriod', {\n label: 'Comparison Period',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(ComparisonPeriodType, 'Previous period');\ndefineOption(ComparisonPeriodType, 'Previous week');\ndefineOption(ComparisonPeriodType, 'Previous month');\ndefineOption(ComparisonPeriodType, 'Previous quarter');\ndefineOption(ComparisonPeriodType, 'Previous year');\n\nexport default ComparisonPeriodType;\n"],"names":["ComparisonPeriodType","defineType","value","defineOption"],"mappings":";AAEA,MAAMA,IAAuBC,EAAW,oBAAoB;AAAA,EAC1D,OAAO;AAAA,EACP,aAAa,CAACC,MAAkBA;AAClC,CAAC;AAEDC,EAAaH,GAAsB,iBAAiB;AACpDG,EAAaH,GAAsB,eAAe;AAClDG,EAAaH,GAAsB,gBAAgB;AACnDG,EAAaH,GAAsB,kBAAkB;AACrDG,EAAaH,GAAsB,eAAe;"}
1
+ {"version":3,"file":"ComparisonPeriod.type.emb-ZjbGbiV1.js","sources":["../src/remarkable-pro/components/types/ComparisonPeriod.type.emb.ts"],"sourcesContent":["import { defineOption, defineType } from '@embeddable.com/core';\n\nconst ComparisonPeriodType = defineType('comparisonPeriod', {\n label: 'Comparison Period',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(ComparisonPeriodType, 'Previous period');\ndefineOption(ComparisonPeriodType, 'Previous week');\ndefineOption(ComparisonPeriodType, 'Previous month');\ndefineOption(ComparisonPeriodType, 'Previous quarter');\ndefineOption(ComparisonPeriodType, 'Previous year');\n\nexport default ComparisonPeriodType;\n"],"names":["ComparisonPeriodType","defineType","value","defineOption"],"mappings":";AAEA,MAAMA,IAAuBC,EAAW,oBAAoB;AAAA,EAC1D,OAAO;AAAA,EACP,aAAa,CAACC,MAAkBA;AAClC,CAAC;AAEDC,EAAaH,GAAsB,iBAAiB;AACpDG,EAAaH,GAAsB,eAAe;AAClDG,EAAaH,GAAsB,gBAAgB;AACnDG,EAAaH,GAAsB,kBAAkB;AACrDG,EAAaH,GAAsB,eAAe;"}
@@ -1,10 +1,10 @@
1
1
  import { useTheme as v, defineComponent as h } from "@embeddable.com/react";
2
- import { ac as y, a2 as P, i as f, r as b, j as l, U as C, t as S, c as F, ad as R, V as d } from "./component.constants-D59iJ42U.js";
2
+ import { ad as y, a2 as P, i as f, r as b, j as l, U as C, t as S, c as F, ae as R, V as d } from "./component.constants-6DERKpeq.js";
3
3
  import { useMemo as M, useEffect as k } from "react";
4
- import { S as D } from "./SingleSelectField-Dzx78rCq.js";
4
+ import { S as D } from "./SingleSelectField-CMzbI0wG.js";
5
5
  import { g as T, u as j, a as x } from "./editors.timeRange.utils-D9m6B3r1.js";
6
- import { E as L } from "./EditorCard-VE-lXcu3.js";
7
- import { C as s } from "./ComparisonPeriod.type.emb-C7ixEJKv.js";
6
+ import { E as L } from "./EditorCard-DAwqwoAp.js";
7
+ import { C as s } from "./ComparisonPeriod.type.emb-ZjbGbiV1.js";
8
8
  /**
9
9
  * @license @tabler/icons-react v3.35.0 - MIT
10
10
  *
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as t } from "@embeddable.com/react";
2
- import { t as l, c as n, ad as r, V as a } from "./component.constants-D59iJ42U.js";
3
- import { D as o } from "./index-BlqpkSit.js";
4
- const d = {
2
+ import { t as l, c as n, ae as r, V as a } from "./component.constants-6DERKpeq.js";
3
+ import { D as o } from "./index-YRGaBl06.js";
4
+ const i = {
5
5
  name: "DateRangeSelectFieldPro",
6
6
  label: "Date Range Select Field",
7
7
  category: "Dropdowns",
@@ -40,7 +40,7 @@ const d = {
40
40
  events: [{ name: "onChange", property: "value" }]
41
41
  }
42
42
  ]
43
- }, p = t(o, d, {
43
+ }, p = t(o, i, {
44
44
  props: (e) => ({
45
45
  ...e
46
46
  }),
@@ -56,6 +56,6 @@ const d = {
56
56
  });
57
57
  export {
58
58
  p as default,
59
- d as meta
59
+ i as meta
60
60
  };
61
61
  //# sourceMappingURL=DateRangeSelectFieldPro.js.map
@@ -1,6 +1,6 @@
1
- import { d as a, w as s, z as t, t as o, c as n, s as r, a3 as i, e as m, f as l, V as d, o as u } from "./component.constants-D59iJ42U.js";
1
+ import { d as a, w as s, z as t, t as o, c as n, s as r, a3 as i, e as m, f as l, V as d, o as u } from "./component.constants-6DERKpeq.js";
2
2
  import { defineComponent as c } from "@embeddable.com/react";
3
- import { D as p } from "./index-BGwJ9TYS.js";
3
+ import { D as p } from "./index-DfnO1U7b.js";
4
4
  const C = {
5
5
  name: "DonutChartPro",
6
6
  label: "Donut Chart",
@@ -1,5 +1,5 @@
1
- import { D as n } from "./index-DKUEiV33.js";
2
- import { d as s, w as a, z as r, t as o, c as l, s as i, a3 as m, e as d, f as u, V as b, o as t } from "./component.constants-D59iJ42U.js";
1
+ import { D as n } from "./index-Dfbt_iT7.js";
2
+ import { d as s, w as a, z as r, t as o, c as l, s as i, a3 as m, e as d, f as u, V as b, o as t } from "./component.constants-6DERKpeq.js";
3
3
  import { defineComponent as c } from "@embeddable.com/react";
4
4
  const p = {
5
5
  name: "DonutLabelChartPro",
@@ -1,18 +1,18 @@
1
- import { ac as u, j as a, af as g, i as m, ah as y, ai as _, al as p, am as h, U as x, aO as f } from "./component.constants-D59iJ42U.js";
2
- import { useEffect as C } from "react";
3
- import { useTheme as b } from "@embeddable.com/react";
1
+ import { ad as u, j as a, ag as g, i as m, ai as y, aj as _, am as p, an as h, U as x, aQ as f } from "./component.constants-6DERKpeq.js";
2
+ import { useEffect as j } from "react";
3
+ import { useTheme as C } from "@embeddable.com/react";
4
4
  /**
5
5
  * @license @tabler/icons-react v3.35.0 - MIT
6
6
  *
7
7
  * This source code is licensed under the MIT license.
8
8
  * See the LICENSE file in the root directory of this source tree.
9
9
  */
10
- const j = [["path", { d: "M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0", key: "svg-0" }], ["path", { d: "M21 21l-6 -6", key: "svg-1" }]], $ = u("outline", "search", "Search", j), v = "_listOptions_2o1ip_1", S = "_disabled_2o1ip_6", c = {
10
+ const b = [["path", { d: "M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0", key: "svg-0" }], ["path", { d: "M21 21l-6 -6", key: "svg-1" }]], $ = u("outline", "search", "Search", b), v = "_listOptions_2o1ip_1", S = "_disabled_2o1ip_6", c = {
11
11
  listOptions: v,
12
12
  disabled: S
13
- }, A = ({ children: t, disabled: s, ...e }) => /* @__PURE__ */ a.jsx("div", { className: g(c.listOptions, s && c.disabled), ...e, children: t }), O = "_category_1govg_1", L = "_categoryLabel_1govg_9", n = {
14
- category: O,
15
- categoryLabel: L
13
+ }, A = ({ children: t, disabled: s, ...e }) => /* @__PURE__ */ a.jsx("div", { className: g(c.listOptions, s && c.disabled), ...e, children: t }), L = "_category_1govg_1", N = "_categoryLabel_1govg_9", n = {
14
+ category: L,
15
+ categoryLabel: N
16
16
  }, B = ({ label: t }) => /* @__PURE__ */ a.jsx("div", { className: n.category, children: /* @__PURE__ */ a.jsx("span", { className: n.categoryLabel, children: t }) });
17
17
  function D(t, s = 300) {
18
18
  let e;
@@ -32,23 +32,23 @@ const H = (t) => {
32
32
  }, {});
33
33
  return Object.keys(s).length === 0 ? null : s;
34
34
  }, M = (t, s) => {
35
- C(() => {
35
+ j(() => {
36
36
  t && setTimeout(() => {
37
37
  var e;
38
38
  (e = s.current) == null || e.focus();
39
39
  }, 100);
40
40
  }, [t, s]);
41
- }, N = "_error_1xvr5_1", T = "_card_1xvr5_7", i = {
42
- error: N,
41
+ }, O = "_error_1xvr5_1", T = "_card_1xvr5_7", i = {
42
+ error: O,
43
43
  card: T
44
- }, R = ({
44
+ }, Q = ({
45
45
  title: t,
46
46
  subtitle: s,
47
47
  children: e,
48
48
  errorMessage: r,
49
49
  ...o
50
50
  }) => {
51
- const l = b();
51
+ const l = C();
52
52
  m(l);
53
53
  const d = () => r ? /* @__PURE__ */ a.jsx(
54
54
  h,
@@ -65,7 +65,7 @@ const H = (t) => {
65
65
  ] });
66
66
  };
67
67
  export {
68
- R as E,
68
+ Q as E,
69
69
  $ as I,
70
70
  A as S,
71
71
  B as a,
@@ -73,4 +73,4 @@ export {
73
73
  H as g,
74
74
  M as u
75
75
  };
76
- //# sourceMappingURL=EditorCard-VE-lXcu3.js.map
76
+ //# sourceMappingURL=EditorCard-DAwqwoAp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditorCard-VE-lXcu3.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.mjs","../src/remarkable-ui/editors/select/shared/SelectList/SelectListOptions/SelectListOptions.tsx","../src/remarkable-ui/editors/select/shared/SelectList/SelectListOptions/SelectListCategory/SelectListCategory.tsx","../src/remarkable-ui/utils/debounce.utils.ts","../src/remarkable-ui/editors/select/shared/SelectList/selectList.utils.ts","../src/remarkable-ui/editors/select/shared/useSelectSearchFocus.hook.ts","../src/remarkable-pro/components/editors/shared/EditorCard/EditorCard.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M21 21l-6 -6\", \"key\": \"svg-1\" }]];\nconst IconSearch = createReactComponent(\"outline\", \"search\", \"Search\", __iconNode);\n\nexport { __iconNode, IconSearch as default };\n//# sourceMappingURL=IconSearch.mjs.map\n","import { FC } from 'react';\nimport styles from './SelectListOptions.module.css';\nimport clsx from 'clsx';\n\nexport type SelectListOptionsProps = React.HTMLAttributes<HTMLDivElement> & {\n children: React.ReactNode;\n disabled?: boolean;\n};\n\nexport const SelectListOptions: FC<SelectListOptionsProps> = ({ children, disabled, ...props }) => {\n return (\n <div className={clsx(styles.listOptions, disabled && styles.disabled)} {...props}>\n {children}\n </div>\n );\n};\n","import { FC } from 'react';\nimport styles from './SelectListCategory.module.css';\n\ntype SelectListCategoryProps = {\n label: string;\n};\n\nexport const SelectListCategory: FC<SelectListCategoryProps> = ({ label }) => {\n return (\n <div className={styles.category}>\n <span className={styles.categoryLabel}>{label}</span>\n </div>\n );\n};\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function debounce<T extends (...args: any[]) => void>(\n fn: T,\n delay = 300,\n): (...args: Parameters<T>) => void {\n let timer: NodeJS.Timeout;\n return (...args: Parameters<T>) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n fn(...args);\n }, delay);\n };\n}\n","import {\n SelectListOptionProps,\n SelectListOptionPropsWithCategory,\n} from './SelectListOptions/SelectListOption/SelectListOption';\n\ntype GroupedOptions = {\n [category: string]: SelectListOptionPropsWithCategory[];\n};\n\nexport const groupOptionsByCategory = (\n options: (SelectListOptionProps | SelectListOptionPropsWithCategory)[],\n): GroupedOptions | null => {\n const result = options.reduce<GroupedOptions>((acc, option) => {\n if ('category' in option && option.category) {\n const category = option.category;\n if (!acc[category]) {\n acc[category] = [];\n }\n acc[category].push(option);\n }\n return acc;\n }, {});\n\n // Return null if no categories were found\n return Object.keys(result).length === 0 ? null : result;\n};\n","import { useEffect } from 'react';\n\nexport const useSelectSearchFocus = (\n isOpen: boolean,\n searchFieldRef: React.RefObject<HTMLInputElement | null>,\n) => {\n useEffect(() => {\n if (isOpen) {\n setTimeout(() => {\n (searchFieldRef.current as unknown as HTMLInputElement)?.focus();\n }, 100);\n }\n }, [isOpen, searchFieldRef]);\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport styles from './EditorCard.module.css';\nimport { FC } from 'react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { Card, CardContent, CardContentInfo, CardHeader } from '../../../../../remarkable-ui';\nimport { IconAlertCircle } from '@tabler/icons-react';\n\ntype EditorCardProps = {\n title?: string;\n subtitle?: string;\n children: React.ReactNode;\n errorMessage?: string;\n};\n\nexport const EditorCard: FC<EditorCardProps> = ({\n title,\n subtitle,\n children,\n errorMessage,\n ...props\n}) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const getDisplay = () => {\n if (errorMessage) {\n return (\n <CardContentInfo\n className={styles.error}\n icon={IconAlertCircle}\n title={i18n.t('editors.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.card} {...props}>\n <CardHeader title={title} subtitle={subtitle} />\n <CardContent>{getDisplay()}</CardContent>\n </Card>\n );\n};\n"],"names":["__iconNode","IconSearch","createReactComponent","SelectListOptions","children","disabled","props","jsx","clsx","styles","SelectListCategory","label","debounce","fn","delay","timer","args","groupOptionsByCategory","options","result","acc","option","category","useSelectSearchFocus","isOpen","searchFieldRef","useEffect","_a","EditorCard","title","subtitle","errorMessage","theme","useTheme","i18nSetup","getDisplay","CardContentInfo","IconAlertCircle","i18n","Card","CardHeader","CardContent"],"mappings":";;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,8CAA8C,KAAO,QAAO,CAAE,GAAG,CAAC,QAAQ,EAAE,GAAK,gBAAgB,KAAO,QAAO,CAAE,CAAC,GAChJC,IAAaC,EAAqB,WAAW,UAAU,UAAUF,CAAU;;;GCDpEG,IAAgD,CAAC,EAAE,UAAAC,GAAU,UAAAC,GAAU,GAAGC,QAEnFC,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAWC,EAAKC,EAAO,aAAaJ,KAAYI,EAAO,QAAQ,GAAI,GAAGH,GACxE,UAAAF,EAAA,CACH;;;GCNSM,IAAkD,CAAC,EAAE,OAAAC,QAE9DJ,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAWE,EAAO,UACrB,UAAAF,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAWE,EAAO,eAAgB,UAAAE,EAAA,CAAM,GAChD;ACVG,SAASC,EACdC,GACAC,IAAQ,KAC0B;AAClC,MAAIC;AACJ,SAAO,IAAIC,MAAwB;AACjC,iBAAaD,CAAK,GAClBA,IAAQ,WAAW,MAAM;AACvB,MAAAF,EAAG,GAAGG,CAAI;AAAA,IACZ,GAAGF,CAAK;AAAA,EACV;AACF;ACHO,MAAMG,IAAyB,CACpCC,MAC0B;AAC1B,QAAMC,IAASD,EAAQ,OAAuB,CAACE,GAAKC,MAAW;AAC7D,QAAI,cAAcA,KAAUA,EAAO,UAAU;AAC3C,YAAMC,IAAWD,EAAO;AACxB,MAAKD,EAAIE,CAAQ,MACfF,EAAIE,CAAQ,IAAI,CAAA,IAElBF,EAAIE,CAAQ,EAAE,KAAKD,CAAM;AAAA,IAC3B;AACA,WAAOD;AAAA,EACT,GAAG,CAAA,CAAE;AAGL,SAAO,OAAO,KAAKD,CAAM,EAAE,WAAW,IAAI,OAAOA;AACnD,GCvBaI,IAAuB,CAClCC,GACAC,MACG;AACH,EAAAC,EAAU,MAAM;AACd,IAAIF,KACF,WAAW,MAAM;;AACd,OAAAG,IAAAF,EAAe,YAAf,QAAAE,EAAwD;AAAA,IAC3D,GAAG,GAAG;AAAA,EAEV,GAAG,CAACH,GAAQC,CAAc,CAAC;AAC7B;;;GCEaG,IAAkC,CAAC;AAAA,EAC9C,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAA1B;AAAA,EACA,cAAA2B;AAAA,EACA,GAAGzB;AACL,MAAM;AACJ,QAAM0B,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAMG,IAAa,MACbJ,IAEAxB,gBAAAA,EAAAA;AAAAA,IAAC6B;AAAA,IAAA;AAAA,MACC,WAAW3B,EAAO;AAAA,MAClB,MAAM4B;AAAA,MACN,OAAOC,EAAK,EAAE,oBAAoB;AAAA,MAClC,SAASP;AAAA,IAAA;AAAA,EAAA,IAKR3B;AAGT,gCACGmC,GAAA,EAAK,WAAW9B,EAAO,MAAO,GAAGH,GAChC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACiC,GAAA,EAAW,OAAAX,GAAc,UAAAC,EAAA,CAAoB;AAAA,IAC9CvB,gBAAAA,EAAAA,IAACkC,GAAA,EAAa,UAAAN,EAAA,EAAW,CAAE;AAAA,EAAA,GAC7B;AAEJ;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"EditorCard-DAwqwoAp.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconSearch.mjs","../src/remarkable-ui/editors/select/shared/SelectList/SelectListOptions/SelectListOptions.tsx","../src/remarkable-ui/editors/select/shared/SelectList/SelectListOptions/SelectListCategory/SelectListCategory.tsx","../src/remarkable-ui/utils/debounce.utils.ts","../src/remarkable-ui/editors/select/shared/SelectList/selectList.utils.ts","../src/remarkable-ui/editors/select/shared/useSelectSearchFocus.hook.ts","../src/remarkable-pro/components/editors/shared/EditorCard/EditorCard.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M21 21l-6 -6\", \"key\": \"svg-1\" }]];\nconst IconSearch = createReactComponent(\"outline\", \"search\", \"Search\", __iconNode);\n\nexport { __iconNode, IconSearch as default };\n//# sourceMappingURL=IconSearch.mjs.map\n","import { FC } from 'react';\nimport styles from './SelectListOptions.module.css';\nimport clsx from 'clsx';\n\nexport type SelectListOptionsProps = React.HTMLAttributes<HTMLDivElement> & {\n children: React.ReactNode;\n disabled?: boolean;\n};\n\nexport const SelectListOptions: FC<SelectListOptionsProps> = ({ children, disabled, ...props }) => {\n return (\n <div className={clsx(styles.listOptions, disabled && styles.disabled)} {...props}>\n {children}\n </div>\n );\n};\n","import { FC } from 'react';\nimport styles from './SelectListCategory.module.css';\n\ntype SelectListCategoryProps = {\n label: string;\n};\n\nexport const SelectListCategory: FC<SelectListCategoryProps> = ({ label }) => {\n return (\n <div className={styles.category}>\n <span className={styles.categoryLabel}>{label}</span>\n </div>\n );\n};\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function debounce<T extends (...args: any[]) => void>(\n fn: T,\n delay = 300,\n): (...args: Parameters<T>) => void {\n let timer: NodeJS.Timeout;\n return (...args: Parameters<T>) => {\n clearTimeout(timer);\n timer = setTimeout(() => {\n fn(...args);\n }, delay);\n };\n}\n","import {\n SelectListOptionProps,\n SelectListOptionPropsWithCategory,\n} from './SelectListOptions/SelectListOption/SelectListOption';\n\ntype GroupedOptions = {\n [category: string]: SelectListOptionPropsWithCategory[];\n};\n\nexport const groupOptionsByCategory = (\n options: (SelectListOptionProps | SelectListOptionPropsWithCategory)[],\n): GroupedOptions | null => {\n const result = options.reduce<GroupedOptions>((acc, option) => {\n if ('category' in option && option.category) {\n const category = option.category;\n if (!acc[category]) {\n acc[category] = [];\n }\n acc[category].push(option);\n }\n return acc;\n }, {});\n\n // Return null if no categories were found\n return Object.keys(result).length === 0 ? null : result;\n};\n","import { useEffect } from 'react';\n\nexport const useSelectSearchFocus = (\n isOpen: boolean,\n searchFieldRef: React.RefObject<HTMLInputElement | null>,\n) => {\n useEffect(() => {\n if (isOpen) {\n setTimeout(() => {\n (searchFieldRef.current as unknown as HTMLInputElement)?.focus();\n }, 100);\n }\n }, [isOpen, searchFieldRef]);\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport styles from './EditorCard.module.css';\nimport { FC } from 'react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { Card, CardContent, CardContentInfo, CardHeader } from '../../../../../remarkable-ui';\nimport { IconAlertCircle } from '@tabler/icons-react';\n\ntype EditorCardProps = {\n title?: string;\n subtitle?: string;\n children: React.ReactNode;\n errorMessage?: string;\n};\n\nexport const EditorCard: FC<EditorCardProps> = ({\n title,\n subtitle,\n children,\n errorMessage,\n ...props\n}) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const getDisplay = () => {\n if (errorMessage) {\n return (\n <CardContentInfo\n className={styles.error}\n icon={IconAlertCircle}\n title={i18n.t('editors.errorTitle')}\n message={errorMessage}\n />\n );\n }\n\n return children;\n };\n\n return (\n <Card className={styles.card} {...props}>\n <CardHeader title={title} subtitle={subtitle} />\n <CardContent>{getDisplay()}</CardContent>\n </Card>\n );\n};\n"],"names":["__iconNode","IconSearch","createReactComponent","SelectListOptions","children","disabled","props","jsx","clsx","styles","SelectListCategory","label","debounce","fn","delay","timer","args","groupOptionsByCategory","options","result","acc","option","category","useSelectSearchFocus","isOpen","searchFieldRef","useEffect","_a","EditorCard","title","subtitle","errorMessage","theme","useTheme","i18nSetup","getDisplay","CardContentInfo","IconAlertCircle","i18n","Card","CardHeader","CardContent"],"mappings":";;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,8CAA8C,KAAO,QAAO,CAAE,GAAG,CAAC,QAAQ,EAAE,GAAK,gBAAgB,KAAO,QAAO,CAAE,CAAC,GAChJC,IAAaC,EAAqB,WAAW,UAAU,UAAUF,CAAU;;;GCDpEG,IAAgD,CAAC,EAAE,UAAAC,GAAU,UAAAC,GAAU,GAAGC,QAEnFC,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAWC,EAAKC,EAAO,aAAaJ,KAAYI,EAAO,QAAQ,GAAI,GAAGH,GACxE,UAAAF,EAAA,CACH;;;GCNSM,IAAkD,CAAC,EAAE,OAAAC,QAE9DJ,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAWE,EAAO,UACrB,UAAAF,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAWE,EAAO,eAAgB,UAAAE,EAAA,CAAM,GAChD;ACVG,SAASC,EACdC,GACAC,IAAQ,KAC0B;AAClC,MAAIC;AACJ,SAAO,IAAIC,MAAwB;AACjC,iBAAaD,CAAK,GAClBA,IAAQ,WAAW,MAAM;AACvB,MAAAF,EAAG,GAAGG,CAAI;AAAA,IACZ,GAAGF,CAAK;AAAA,EACV;AACF;ACHO,MAAMG,IAAyB,CACpCC,MAC0B;AAC1B,QAAMC,IAASD,EAAQ,OAAuB,CAACE,GAAKC,MAAW;AAC7D,QAAI,cAAcA,KAAUA,EAAO,UAAU;AAC3C,YAAMC,IAAWD,EAAO;AACxB,MAAKD,EAAIE,CAAQ,MACfF,EAAIE,CAAQ,IAAI,CAAA,IAElBF,EAAIE,CAAQ,EAAE,KAAKD,CAAM;AAAA,IAC3B;AACA,WAAOD;AAAA,EACT,GAAG,CAAA,CAAE;AAGL,SAAO,OAAO,KAAKD,CAAM,EAAE,WAAW,IAAI,OAAOA;AACnD,GCvBaI,IAAuB,CAClCC,GACAC,MACG;AACH,EAAAC,EAAU,MAAM;AACd,IAAIF,KACF,WAAW,MAAM;;AACd,OAAAG,IAAAF,EAAe,YAAf,QAAAE,EAAwD;AAAA,IAC3D,GAAG,GAAG;AAAA,EAEV,GAAG,CAACH,GAAQC,CAAc,CAAC;AAC7B;;;GCEaG,IAAkC,CAAC;AAAA,EAC9C,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAA1B;AAAA,EACA,cAAA2B;AAAA,EACA,GAAGzB;AACL,MAAM;AACJ,QAAM0B,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAMG,IAAa,MACbJ,IAEAxB,gBAAAA,EAAAA;AAAAA,IAAC6B;AAAA,IAAA;AAAA,MACC,WAAW3B,EAAO;AAAA,MAClB,MAAM4B;AAAA,MACN,OAAOC,EAAK,EAAE,oBAAoB;AAAA,MAClC,SAASP;AAAA,IAAA;AAAA,EAAA,IAKR3B;AAGT,gCACGmC,GAAA,EAAK,WAAW9B,EAAO,MAAO,GAAGH,GAChC,UAAA;AAAA,IAAAC,gBAAAA,EAAAA,IAACiC,GAAA,EAAW,OAAAX,GAAc,UAAAC,EAAA,CAAoB;AAAA,IAC9CvB,gBAAAA,EAAAA,IAACkC,GAAA,EAAa,UAAAN,EAAA,EAAW,CAAE;AAAA,EAAA,GAC7B;AAEJ;","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- import { ac as j, j as n, af as x, ag as d } from "./component.constants-D59iJ42U.js";
1
+ import { ad as j, j as n, ag as x, ah as d } from "./component.constants-6DERKpeq.js";
2
2
  /**
3
3
  * @license @tabler/icons-react v3.35.0 - MIT
4
4
  *
@@ -12,7 +12,7 @@ const v = [["path", { d: "M3 7l6 6l4 -4l8 8", key: "svg-0" }], ["path", { d: "M2
12
12
  * This source code is licensed under the MIT license.
13
13
  * See the LICENSE file in the root directory of this source tree.
14
14
  */
15
- const f = [["path", { d: "M3 17l6 -6l4 4l8 -8", key: "svg-0" }], ["path", { d: "M14 7l7 0l0 7", key: "svg-1" }]], m = j("outline", "trending-up", "TrendingUp", f), N = "_kpiChartContainer_joxtc_1", T = "_kpiComparisonContainer_joxtc_26", $ = "_kpiChangeHidden_joxtc_47", k = {
15
+ const m = [["path", { d: "M3 17l6 -6l4 4l8 -8", key: "svg-0" }], ["path", { d: "M14 7l7 0l0 7", key: "svg-1" }]], f = j("outline", "trending-up", "TrendingUp", m), N = "_kpiChartContainer_joxtc_1", T = "_kpiComparisonContainer_joxtc_26", $ = "_kpiChangeHidden_joxtc_47", k = {
16
16
  kpiChartContainer: N,
17
17
  kpiComparisonContainer: T,
18
18
  kpiChangeHidden: $
@@ -24,37 +24,37 @@ const f = [["path", { d: "M3 17l6 -6l4 4l8 -8", key: "svg-0" }], ["path", { d: "
24
24
  }, I = (i, e) => i ? e ? o.negative : o.positive : e ? o.positive : o.negative, K = ({
25
25
  value: i,
26
26
  comparisonValue: e = 0,
27
- showChangeAsPercentage: c,
27
+ showChangeAsPercentage: r,
28
28
  invertChangeColors: C = !1,
29
- comparisonLabel: r,
29
+ comparisonLabel: c,
30
30
  valueFormatter: p,
31
31
  percentageDecimalPlaces: g = 1,
32
32
  className: h
33
33
  }) => {
34
34
  const s = i - e, t = s > 0;
35
35
  let a;
36
- c ? a = `${(e === 0 ? 0 : s / e * 100).toFixed(g)}%` : a = p ? p(s) : s.toString();
37
- const l = `${t ? "+" : ""}${a}`, _ = t ? m : y;
36
+ r ? a = `${(e === 0 ? 0 : s / e * 100).toFixed(g)}%` : a = p ? p(s) : s.toString();
37
+ const l = `${t ? "+" : ""}${a}`, _ = t ? f : y;
38
38
  return /* @__PURE__ */ n.jsxs("div", { className: x(h, o.kpiChartChangeContainer), children: [
39
39
  /* @__PURE__ */ n.jsxs("div", { className: x(o.kpiChangeBadge, I(t, C)), children: [
40
40
  /* @__PURE__ */ n.jsx(_, {}),
41
41
  /* @__PURE__ */ n.jsx(d, { children: l })
42
42
  ] }),
43
- r && /* @__PURE__ */ n.jsx(d, { children: r })
43
+ c && /* @__PURE__ */ n.jsx(d, { children: c })
44
44
  ] });
45
45
  }, R = ({
46
46
  value: i,
47
47
  changeFontSize: e,
48
- comparisonValue: c,
48
+ comparisonValue: r,
49
49
  comparisonLabel: C,
50
- invertChangeColors: r,
50
+ invertChangeColors: c,
51
51
  showChangeAsPercentage: p,
52
52
  percentageDecimalPlaces: g = 1,
53
53
  equalComparisonLabel: h = "No change",
54
54
  valueFontSize: s,
55
55
  valueFormatter: t
56
56
  }) => {
57
- const a = c !== void 0, l = a && c === i, _ = t ? t(i) : i;
57
+ const a = r !== void 0, l = a && r === i, _ = t ? t(i) : i;
58
58
  return /* @__PURE__ */ n.jsxs("div", { className: k.kpiChartContainer, children: [
59
59
  /* @__PURE__ */ n.jsx(d, { style: { fontSize: s }, children: _ }),
60
60
  /* @__PURE__ */ n.jsx("div", { className: k.kpiComparisonContainer, style: { fontSize: e }, children: l ? /* @__PURE__ */ n.jsx(d, { children: h }) : /* @__PURE__ */ n.jsx(
@@ -63,8 +63,8 @@ const f = [["path", { d: "M3 17l6 -6l4 4l8 -8", key: "svg-0" }], ["path", { d: "
63
63
  changeFontSize: e,
64
64
  className: x(!a && k.kpiChangeHidden),
65
65
  comparisonLabel: C,
66
- comparisonValue: c,
67
- invertChangeColors: r,
66
+ comparisonValue: r,
67
+ invertChangeColors: c,
68
68
  percentageDecimalPlaces: g,
69
69
  showChangeAsPercentage: p,
70
70
  value: i,
@@ -76,4 +76,4 @@ const f = [["path", { d: "M3 17l6 -6l4 4l8 -8", key: "svg-0" }], ["path", { d: "
76
76
  export {
77
77
  R as K
78
78
  };
79
- //# sourceMappingURL=KpiChart-PRQV9-IW.js.map
79
+ //# sourceMappingURL=KpiChart-Lh_2N9dT.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KpiChart-PRQV9-IW.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconTrendingDown.mjs","../node_modules/@tabler/icons-react/dist/esm/icons/IconTrendingUp.mjs","../src/remarkable-ui/charts/kpis/components/KpiChartChange.tsx","../src/remarkable-ui/charts/kpis/KpiChart.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M3 7l6 6l4 -4l8 8\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M21 10l0 7l-7 0\", \"key\": \"svg-1\" }]];\nconst IconTrendingDown = createReactComponent(\"outline\", \"trending-down\", \"TrendingDown\", __iconNode);\n\nexport { __iconNode, IconTrendingDown as default };\n//# sourceMappingURL=IconTrendingDown.mjs.map\n","/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M3 17l6 -6l4 4l8 -8\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M14 7l7 0l0 7\", \"key\": \"svg-1\" }]];\nconst IconTrendingUp = createReactComponent(\"outline\", \"trending-up\", \"TrendingUp\", __iconNode);\n\nexport { __iconNode, IconTrendingUp as default };\n//# sourceMappingURL=IconTrendingUp.mjs.map\n","import { FC } from 'react';\nimport styles from './KpiChartChange.module.css';\nimport clsx from 'clsx';\nimport { Typography } from '../../../shared/Typography/Typography';\nimport { IconTrendingDown, IconTrendingUp } from '@tabler/icons-react';\nimport { KpiChartProps } from '../KpiChart.types';\n\nconst getChangeClass = (isPositive: boolean, invertChangeColors: boolean) => {\n if (isPositive) return invertChangeColors ? styles.negative : styles.positive;\n return invertChangeColors ? styles.positive : styles.negative;\n};\n\ntype KpiChartChangeProps = KpiChartProps & { className?: string };\n\nexport const KpiChartChange: FC<KpiChartChangeProps> = ({\n value,\n comparisonValue = 0,\n showChangeAsPercentage,\n invertChangeColors = false,\n comparisonLabel,\n valueFormatter,\n percentageDecimalPlaces = 1,\n className,\n}) => {\n const difference = value - comparisonValue;\n const isPositive = difference > 0;\n\n let differenceLabel: string;\n\n if (showChangeAsPercentage) {\n const percentage = comparisonValue === 0 ? 0 : (difference / comparisonValue) * 100;\n differenceLabel = `${percentage.toFixed(percentageDecimalPlaces)}%`;\n } else {\n differenceLabel = valueFormatter ? valueFormatter(difference) : difference.toString();\n }\n\n const displayValue = `${isPositive ? '+' : ''}${differenceLabel}`;\n\n const Icon = isPositive ? IconTrendingUp : IconTrendingDown;\n\n return (\n <div className={clsx(className, styles.kpiChartChangeContainer)}>\n <div className={clsx(styles.kpiChangeBadge, getChangeClass(isPositive, invertChangeColors))}>\n <Icon />\n <Typography>{displayValue}</Typography>\n </div>\n {comparisonLabel && <Typography>{comparisonLabel}</Typography>}\n </div>\n );\n};\n","import { FC } from 'react';\nimport { Typography } from '../../shared/Typography/Typography';\nimport styles from './KpiChart.module.css';\nimport { KpiChartChange } from './components/KpiChartChange';\nimport { KpiChartProps } from './KpiChart.types';\nimport clsx from 'clsx';\n\nexport const KpiChart: FC<KpiChartProps> = ({\n value,\n changeFontSize,\n comparisonValue,\n comparisonLabel,\n invertChangeColors,\n showChangeAsPercentage,\n percentageDecimalPlaces = 1,\n equalComparisonLabel = 'No change',\n valueFontSize,\n valueFormatter,\n}) => {\n const hasComparisonValue = comparisonValue !== undefined;\n const equalComparison = hasComparisonValue && comparisonValue === value;\n\n const displayValue = valueFormatter ? valueFormatter(value) : value;\n\n return (\n <div className={styles.kpiChartContainer}>\n <Typography style={{ fontSize: valueFontSize }}>{displayValue}</Typography>\n <div className={styles.kpiComparisonContainer} style={{ fontSize: changeFontSize }}>\n {equalComparison ? (\n <Typography>{equalComparisonLabel}</Typography>\n ) : (\n <KpiChartChange\n changeFontSize={changeFontSize}\n className={clsx(!hasComparisonValue && styles.kpiChangeHidden)}\n comparisonLabel={comparisonLabel}\n comparisonValue={comparisonValue}\n invertChangeColors={invertChangeColors}\n percentageDecimalPlaces={percentageDecimalPlaces}\n showChangeAsPercentage={showChangeAsPercentage}\n value={value}\n valueFormatter={valueFormatter}\n />\n )}\n </div>\n </div>\n );\n};\n"],"names":["__iconNode","IconTrendingDown","createReactComponent","IconTrendingUp","getChangeClass","isPositive","invertChangeColors","styles","KpiChartChange","value","comparisonValue","showChangeAsPercentage","comparisonLabel","valueFormatter","percentageDecimalPlaces","className","difference","differenceLabel","displayValue","Icon","clsx","jsxs","jsx","Typography","KpiChart","changeFontSize","equalComparisonLabel","valueFontSize","hasComparisonValue","equalComparison"],"mappings":"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","x_google_ignoreList":[0,1]}
1
+ {"version":3,"file":"KpiChart-Lh_2N9dT.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconTrendingDown.mjs","../node_modules/@tabler/icons-react/dist/esm/icons/IconTrendingUp.mjs","../src/remarkable-ui/charts/kpis/components/KpiChartChange.tsx","../src/remarkable-ui/charts/kpis/KpiChart.tsx"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M3 7l6 6l4 -4l8 8\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M21 10l0 7l-7 0\", \"key\": \"svg-1\" }]];\nconst IconTrendingDown = createReactComponent(\"outline\", \"trending-down\", \"TrendingDown\", __iconNode);\n\nexport { __iconNode, IconTrendingDown as default };\n//# sourceMappingURL=IconTrendingDown.mjs.map\n","/**\n * @license @tabler/icons-react v3.35.0 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M3 17l6 -6l4 4l8 -8\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M14 7l7 0l0 7\", \"key\": \"svg-1\" }]];\nconst IconTrendingUp = createReactComponent(\"outline\", \"trending-up\", \"TrendingUp\", __iconNode);\n\nexport { __iconNode, IconTrendingUp as default };\n//# sourceMappingURL=IconTrendingUp.mjs.map\n","import { FC } from 'react';\nimport styles from './KpiChartChange.module.css';\nimport clsx from 'clsx';\nimport { Typography } from '../../../shared/Typography/Typography';\nimport { IconTrendingDown, IconTrendingUp } from '@tabler/icons-react';\nimport { KpiChartProps } from '../KpiChart.types';\n\nconst getChangeClass = (isPositive: boolean, invertChangeColors: boolean) => {\n if (isPositive) return invertChangeColors ? styles.negative : styles.positive;\n return invertChangeColors ? styles.positive : styles.negative;\n};\n\ntype KpiChartChangeProps = KpiChartProps & { className?: string };\n\nexport const KpiChartChange: FC<KpiChartChangeProps> = ({\n value,\n comparisonValue = 0,\n showChangeAsPercentage,\n invertChangeColors = false,\n comparisonLabel,\n valueFormatter,\n percentageDecimalPlaces = 1,\n className,\n}) => {\n const difference = value - comparisonValue;\n const isPositive = difference > 0;\n\n let differenceLabel: string;\n\n if (showChangeAsPercentage) {\n const percentage = comparisonValue === 0 ? 0 : (difference / comparisonValue) * 100;\n differenceLabel = `${percentage.toFixed(percentageDecimalPlaces)}%`;\n } else {\n differenceLabel = valueFormatter ? valueFormatter(difference) : difference.toString();\n }\n\n const displayValue = `${isPositive ? '+' : ''}${differenceLabel}`;\n\n const Icon = isPositive ? IconTrendingUp : IconTrendingDown;\n\n return (\n <div className={clsx(className, styles.kpiChartChangeContainer)}>\n <div className={clsx(styles.kpiChangeBadge, getChangeClass(isPositive, invertChangeColors))}>\n <Icon />\n <Typography>{displayValue}</Typography>\n </div>\n {comparisonLabel && <Typography>{comparisonLabel}</Typography>}\n </div>\n );\n};\n","import { FC } from 'react';\nimport { Typography } from '../../shared/Typography/Typography';\nimport styles from './KpiChart.module.css';\nimport { KpiChartChange } from './components/KpiChartChange';\nimport { KpiChartProps } from './KpiChart.types';\nimport clsx from 'clsx';\n\nexport const KpiChart: FC<KpiChartProps> = ({\n value,\n changeFontSize,\n comparisonValue,\n comparisonLabel,\n invertChangeColors,\n showChangeAsPercentage,\n percentageDecimalPlaces = 1,\n equalComparisonLabel = 'No change',\n valueFontSize,\n valueFormatter,\n}) => {\n const hasComparisonValue = comparisonValue !== undefined;\n const equalComparison = hasComparisonValue && comparisonValue === value;\n\n const displayValue = valueFormatter ? valueFormatter(value) : value;\n\n return (\n <div className={styles.kpiChartContainer}>\n <Typography style={{ fontSize: valueFontSize }}>{displayValue}</Typography>\n <div className={styles.kpiComparisonContainer} style={{ fontSize: changeFontSize }}>\n {equalComparison ? (\n <Typography>{equalComparisonLabel}</Typography>\n ) : (\n <KpiChartChange\n changeFontSize={changeFontSize}\n className={clsx(!hasComparisonValue && styles.kpiChangeHidden)}\n comparisonLabel={comparisonLabel}\n comparisonValue={comparisonValue}\n invertChangeColors={invertChangeColors}\n percentageDecimalPlaces={percentageDecimalPlaces}\n showChangeAsPercentage={showChangeAsPercentage}\n value={value}\n valueFormatter={valueFormatter}\n />\n )}\n </div>\n </div>\n );\n};\n"],"names":["__iconNode","IconTrendingDown","createReactComponent","IconTrendingUp","getChangeClass","isPositive","invertChangeColors","styles","KpiChartChange","value","comparisonValue","showChangeAsPercentage","comparisonLabel","valueFormatter","percentageDecimalPlaces","className","difference","differenceLabel","displayValue","Icon","clsx","jsxs","jsx","Typography","KpiChart","changeFontSize","equalComparisonLabel","valueFontSize","hasComparisonValue","equalComparison"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1,11 +1,11 @@
1
1
  import { useTheme as j, defineComponent as w } from "@embeddable.com/react";
2
- import { i as A, r as Y, U as l, j as y, d as q, w as B, W as E, X as M, t as I, c as J, Y as b, Z as c, o as v } from "./component.constants-D59iJ42U.js";
3
- import { C as O } from "./ChartCard-Cr2L2Uki.js";
2
+ import { i as A, r as Y, U as l, j as y, d as q, w as B, W as E, X as M, t as I, c as J, Y as b, Z as c, o as v } from "./component.constants-6DERKpeq.js";
3
+ import { C as O } from "./ChartCard-CsgyAnzC.js";
4
4
  import { useEffect as U } from "react";
5
- import { K as W } from "./KpiChart-PRQV9-IW.js";
6
- import { g as X } from "./formatter.utils-DDLdrAl9.js";
7
- import { g as Z, a as $ } from "./timeRange.utils-D6gvWIhx.js";
8
- import { C as k } from "./ComparisonPeriod.type.emb-C7ixEJKv.js";
5
+ import { K as W } from "./KpiChart-Lh_2N9dT.js";
6
+ import { g as X } from "./formatter.utils-R5zIrZIA.js";
7
+ import { g as Z, a as $ } from "./timeRange.utils-C61mst0e.js";
8
+ import { C as k } from "./ComparisonPeriod.type.emb-ZjbGbiV1.js";
9
9
  const G = (e) => {
10
10
  var d, C, P, h, u, f;
11
11
  const a = j();
@@ -1,9 +1,9 @@
1
1
  import { useTheme as h, defineComponent as f } from "@embeddable.com/react";
2
- import { i as C, r as b, j as m, d as K, w as g, t as x, c as F, Z as N, o as S } from "./component.constants-D59iJ42U.js";
3
- import { C as j } from "./ChartCard-Cr2L2Uki.js";
2
+ import { i as C, r as b, j as m, d as K, w as g, t as x, c as F, Z as N, o as S } from "./component.constants-6DERKpeq.js";
3
+ import { C as j } from "./ChartCard-CsgyAnzC.js";
4
4
  import "react";
5
- import { K as v } from "./KpiChart-PRQV9-IW.js";
6
- import { g as z } from "./formatter.utils-DDLdrAl9.js";
5
+ import { K as v } from "./KpiChart-Lh_2N9dT.js";
6
+ import { g as z } from "./formatter.utils-R5zIrZIA.js";
7
7
  const P = (e) => {
8
8
  var s, o;
9
9
  const a = h();