@embeddable.com/remarkable-ui 0.1.26 → 0.1.28

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 (82) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +3 -3
  2. package/dist/BarChartDefaultPro.js +3 -3
  3. package/dist/BarChartGroupedHorizontalPro.js +3 -3
  4. package/dist/BarChartGroupedPro.js +3 -3
  5. package/dist/BarChartStackedHorizontalPro.js +3 -3
  6. package/dist/BarChartStackedPro.js +3 -3
  7. package/dist/{BaseButton-Cynr77gm.js → BaseButton-MxdswwJX.js} +2 -2
  8. package/dist/{BaseButton-Cynr77gm.js.map → BaseButton-MxdswwJX.js.map} +1 -1
  9. package/dist/{ChartCard-DunjH70y.js → ChartCard-Duhwxov3.js} +30 -27
  10. package/dist/{ChartCard-DunjH70y.js.map → ChartCard-Duhwxov3.js.map} +1 -1
  11. package/dist/{ComparisonPeriod.type.emb-CARBg093.js → ComparisonPeriod.type.emb-BsVeAHPK.js} +2 -2
  12. package/dist/{ComparisonPeriod.type.emb-CARBg093.js.map → ComparisonPeriod.type.emb-BsVeAHPK.js.map} +1 -1
  13. package/dist/ComparisonPeriodSelectFieldPro.js +4 -4
  14. package/dist/DateRangeSelectFieldPro.js +2 -2
  15. package/dist/DonutChartPro.js +2 -2
  16. package/dist/DonutLabelChartPro.js +2 -2
  17. package/dist/{EditorCard-C9RDdL87.js → EditorCard-CTCoSiam.js} +2 -2
  18. package/dist/{EditorCard-C9RDdL87.js.map → EditorCard-CTCoSiam.js.map} +1 -1
  19. package/dist/{KpiChart-DVJLPOzo.js → KpiChart-DINLNXzY.js} +2 -2
  20. package/dist/{KpiChart-DVJLPOzo.js.map → KpiChart-DINLNXzY.js.map} +1 -1
  21. package/dist/KpiChartNumberComparisonPro.js +83 -68
  22. package/dist/KpiChartNumberComparisonPro.js.map +1 -1
  23. package/dist/KpiChartNumberPro.js +4 -4
  24. package/dist/LineChartComparisonDefaultPro.js +223 -197
  25. package/dist/LineChartComparisonDefaultPro.js.map +1 -1
  26. package/dist/LineChartDefaultPro.js +133 -96
  27. package/dist/LineChartDefaultPro.js.map +1 -1
  28. package/dist/LineChartGroupedPro.js +142 -107
  29. package/dist/LineChartGroupedPro.js.map +1 -1
  30. package/dist/MultiSelectFieldPro.js +2 -2
  31. package/dist/PieChartPro.js +2 -2
  32. package/dist/{SingleSelectField-k-5pYl1f.js → SingleSelectField-J0EWFhqx.js} +3 -3
  33. package/dist/{SingleSelectField-k-5pYl1f.js.map → SingleSelectField-J0EWFhqx.js.map} +1 -1
  34. package/dist/SingleSelectFieldPro.js +2 -2
  35. package/dist/{bars.utils-BAkV6I3P.js → bars.utils-hfE2jN8Y.js} +4 -4
  36. package/dist/{bars.utils-BAkV6I3P.js.map → bars.utils-hfE2jN8Y.js.map} +1 -1
  37. package/dist/{charts.utils-Dyj5e5HG.js → charts.utils-DEajwB6c.js} +9 -3
  38. package/dist/charts.utils-DEajwB6c.js.map +1 -0
  39. package/dist/{component.constants-D7F6GsHW.js → component.constants-XB5gaz8Z.js} +7 -7
  40. package/dist/{component.constants-D7F6GsHW.js.map → component.constants-XB5gaz8Z.js.map} +1 -1
  41. package/dist/embeddable-components.json +11 -11
  42. package/dist/embeddable-theme-2b917.js +6 -0
  43. package/dist/{formatter.utils--2w1e7GE.js → formatter.utils-BmqMNSUB.js} +2 -2
  44. package/dist/{formatter.utils--2w1e7GE.js.map → formatter.utils-BmqMNSUB.js.map} +1 -1
  45. package/dist/{index-CLVeA9pa.js → index-B74kx38r.js} +4 -4
  46. package/dist/{index-CLVeA9pa.js.map → index-B74kx38r.js.map} +1 -1
  47. package/dist/{index-DPGAAlWv.js → index-B96WIMDJ.js} +4 -4
  48. package/dist/{index-DPGAAlWv.js.map → index-B96WIMDJ.js.map} +1 -1
  49. package/dist/{index-BGczJvRB.js → index-Cg05t97t.js} +5 -5
  50. package/dist/{index-BGczJvRB.js.map → index-Cg05t97t.js.map} +1 -1
  51. package/dist/{index-B4-i-g0Z.js → index-CrfsmcHa.js} +14 -14
  52. package/dist/{index-B4-i-g0Z.js.map → index-CrfsmcHa.js.map} +1 -1
  53. package/dist/{index-DmgDANxV.js → index-DK57EImz.js} +5 -5
  54. package/dist/{index-DmgDANxV.js.map → index-DK57EImz.js.map} +1 -1
  55. package/dist/{index-B0xeoUyW.js → index-jl_48we-.js} +4 -4
  56. package/dist/{index-B0xeoUyW.js.map → index-jl_48we-.js.map} +1 -1
  57. package/dist/index.js +19 -19
  58. package/dist/lines.utils-CFEUUo4k.js +40 -0
  59. package/dist/lines.utils-CFEUUo4k.js.map +1 -0
  60. package/dist/{pies.utils-CIFMn9ko.js → pies.utils-DTa2hAZg.js} +4 -4
  61. package/dist/{pies.utils-CIFMn9ko.js.map → pies.utils-DTa2hAZg.js.map} +1 -1
  62. package/dist/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts.map +1 -1
  63. package/dist/remarkable-pro/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.utils.d.ts +3 -0
  64. package/dist/remarkable-pro/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.utils.d.ts.map +1 -1
  65. package/dist/remarkable-pro/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts +2 -0
  66. package/dist/remarkable-pro/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts.map +1 -1
  67. package/dist/remarkable-pro/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.d.ts +3 -0
  68. package/dist/remarkable-pro/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.d.ts.map +1 -1
  69. package/dist/remarkable-pro/components/charts/lines/LineChartDefaultPro/index.d.ts +5 -0
  70. package/dist/remarkable-pro/components/charts/lines/LineChartDefaultPro/index.d.ts.map +1 -1
  71. package/dist/remarkable-pro/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.d.ts +3 -7
  72. package/dist/remarkable-pro/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.d.ts.map +1 -1
  73. package/dist/remarkable-pro/components/charts/lines/LineChartGroupedPro/index.d.ts +6 -0
  74. package/dist/remarkable-pro/components/charts/lines/LineChartGroupedPro/index.d.ts.map +1 -1
  75. package/dist/remarkable-pro/components/charts/lines/lines.utils.d.ts +9 -13
  76. package/dist/remarkable-pro/components/charts/lines/lines.utils.d.ts.map +1 -1
  77. package/dist/remarkable-pro/theme/i18n/translations/de.d.ts.map +1 -1
  78. package/dist/remarkable-pro/theme/i18n/translations/en.d.ts.map +1 -1
  79. package/dist/{timeRange.utils-KDn6xcVP.js → timeRange.utils-Dtg_QyCm.js} +2 -2
  80. package/dist/{timeRange.utils-KDn6xcVP.js.map → timeRange.utils-Dtg_QyCm.js.map} +1 -1
  81. package/package.json +1 -1
  82. package/dist/charts.utils-Dyj5e5HG.js.map +0 -1
@@ -1,72 +1,87 @@
1
- import { useTheme as V, defineComponent as x } from "@embeddable.com/react";
2
- import { i as j, r as w, j as u, d as A, w as L, U as Y, W as q, t as E, c as M, X as P, Y as l, o as f } from "./component.constants-D7F6GsHW.js";
3
- import { C as B } from "./ChartCard-DunjH70y.js";
4
- import { useEffect as I } from "react";
5
- import { K as J } from "./KpiChart-DVJLPOzo.js";
6
- import { g as O } from "./formatter.utils--2w1e7GE.js";
7
- import { g as U, a as W } from "./timeRange.utils-KDn6xcVP.js";
8
- import { C as X } from "./ComparisonPeriod.type.emb-CARBg093.js";
9
- const _ = (e) => {
10
- var c, g, d, C;
11
- const a = V();
12
- j(a);
13
- const { title: o, description: t } = w(e), {
14
- changeFontSize: D,
15
- comparisonPeriod: i,
16
- comparisonDateRange: h,
17
- displayChangeAsPercentage: y,
18
- fontSize: v,
19
- measure: r,
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 f, d as q, w as E, W as M, X as B, t as I, c as J, Y as y, Z as c, o as b } from "./component.constants-XB5gaz8Z.js";
3
+ import { C as O } from "./ChartCard-Duhwxov3.js";
4
+ import { useEffect as U } from "react";
5
+ import { K as W } from "./KpiChart-DINLNXzY.js";
6
+ import { g as X } from "./formatter.utils-BmqMNSUB.js";
7
+ import { g as Z, a as $ } from "./timeRange.utils-Dtg_QyCm.js";
8
+ import { C as k } from "./ComparisonPeriod.type.emb-BsVeAHPK.js";
9
+ const G = (e) => {
10
+ var g, d, C, u, P, h;
11
+ const a = j();
12
+ A(a);
13
+ const { title: i, description: n } = Y(e), {
14
+ changeFontSize: v,
15
+ comparisonPeriod: s,
16
+ comparisonDateRange: D,
17
+ displayChangeAsPercentage: R,
18
+ fontSize: N,
19
+ measure: t,
20
20
  primaryDateRange: p,
21
- results: n,
22
- resultsComparison: s,
23
- reversePositiveNegativeColors: b,
24
- percentageDecimalPlaces: R,
25
- setComparisonDateRange: N
21
+ results: o,
22
+ resultsComparison: r,
23
+ reversePositiveNegativeColors: S,
24
+ percentageDecimalPlaces: F,
25
+ setComparisonDateRange: z
26
26
  } = e;
27
- I(() => {
28
- const m = U(
27
+ U(() => {
28
+ const m = Z(
29
29
  p,
30
- i,
30
+ s,
31
31
  a
32
32
  );
33
- N(m);
34
- }, [i, JSON.stringify(p), a]);
35
- const S = (g = (c = n.data) == null ? void 0 : c[0]) == null ? void 0 : g[r.name], F = h ? (C = (d = s == null ? void 0 : s.data) == null ? void 0 : d[0]) == null ? void 0 : C[r.name] : void 0, z = O(a), K = (m) => z.data(r, m), T = `vs ${W(i, a).toLowerCase()}`;
36
- return /* @__PURE__ */ u.jsx(
37
- B,
33
+ z(m);
34
+ }, [s, JSON.stringify(p), a]);
35
+ const K = (d = (g = o.data) == null ? void 0 : g[0]) == null ? void 0 : d[t.name], T = D ? (u = (C = r == null ? void 0 : r.data) == null ? void 0 : C[0]) == null ? void 0 : u[t.name] : void 0, L = X(a), V = (m) => L.data(t, m), x = `vs ${$(s, a).toLowerCase()}`, _ = {
36
+ isLoading: o.isLoading,
37
+ data: o.isLoading ? void 0 : [
38
+ ...(P = o.data) != null && P.length ? [{ label: l.t("charts.primaryPeriod"), ...o.data[0] }] : [],
39
+ ...(h = r == null ? void 0 : r.data) != null && h.length ? [{ label: l.t("charts.comparisonPeriod"), ...r.data[0] }] : []
40
+ ]
41
+ };
42
+ return /* @__PURE__ */ f.jsx(
43
+ O,
38
44
  {
39
- data: n,
40
- dimensionsAndMeasures: [r],
41
- errorMessage: n.error,
42
- subtitle: t,
43
- title: o,
44
- children: /* @__PURE__ */ u.jsx(
45
- J,
45
+ data: _,
46
+ dimensionsAndMeasures: [
47
+ // Add a label dimension to distinguish primary and comparison periods in exports
46
48
  {
47
- value: S,
48
- comparisonValue: F,
49
- valueFormatter: K,
50
- valueFontSize: v,
51
- changeFontSize: D,
52
- invertChangeColors: b,
53
- showChangeAsPercentage: y,
54
- comparisonLabel: T,
55
- percentageDecimalPlaces: R
49
+ name: "label",
50
+ title: l.t("charts.label"),
51
+ nativeType: "string",
52
+ __type__: "dimension"
53
+ },
54
+ t
55
+ ],
56
+ errorMessage: o.error,
57
+ subtitle: n,
58
+ title: i,
59
+ children: /* @__PURE__ */ f.jsx(
60
+ W,
61
+ {
62
+ value: K,
63
+ comparisonValue: T,
64
+ valueFormatter: V,
65
+ valueFontSize: N,
66
+ changeFontSize: v,
67
+ invertChangeColors: S,
68
+ showChangeAsPercentage: R,
69
+ comparisonLabel: x,
70
+ percentageDecimalPlaces: F
56
71
  }
57
72
  )
58
73
  }
59
74
  );
60
- }, $ = {
75
+ }, H = {
61
76
  name: "KpiChartNumberComparisonPro",
62
77
  label: "Kpi Chart - Number Comparison",
63
78
  category: "Kpi Charts",
64
79
  inputs: [
65
- A,
66
- L,
67
- { ...Y, name: "timeProperty", label: "Time Property" },
80
+ q,
81
+ E,
82
+ { ...M, name: "timeProperty", label: "Time Property" },
68
83
  {
69
- ...q,
84
+ ...B,
70
85
  name: "primaryDateRange",
71
86
  label: "Primary Date Range",
72
87
  description: "You can also connect this to a date range selector using its variable",
@@ -74,47 +89,47 @@ const _ = (e) => {
74
89
  },
75
90
  {
76
91
  name: "comparisonPeriod",
77
- type: X,
92
+ type: k,
78
93
  label: "Comparison Period",
79
94
  description: "You can also connect this to a comparison period selector using its variable",
80
95
  category: "Component Data"
81
96
  },
82
- E,
83
- M,
97
+ I,
98
+ J,
84
99
  {
85
- ...P,
100
+ ...y,
86
101
  name: "displayChangeAsPercentage",
87
102
  label: "Display Change as %",
88
103
  defaultValue: !1
89
104
  },
90
105
  {
91
- ...l,
106
+ ...c,
92
107
  name: "percentageDecimalPlaces",
93
108
  label: "Percentage Decimal Places",
94
109
  defaultValue: 1
95
110
  },
96
111
  {
97
- ...P,
112
+ ...y,
98
113
  name: "reversePositiveNegativeColors",
99
114
  label: "Reverse Positive/Negative Colors",
100
115
  defaultValue: !1
101
116
  },
102
- { ...l, name: "fontSize", label: "Font Size", defaultValue: 44, required: !0 },
117
+ { ...c, name: "fontSize", label: "Font Size", defaultValue: 44, required: !0 },
103
118
  {
104
- ...l,
119
+ ...c,
105
120
  name: "changeFontSize",
106
121
  label: "Change Font Size",
107
122
  defaultValue: 16,
108
123
  required: !0
109
124
  }
110
125
  ]
111
- }, oe = x(_, $, {
126
+ }, se = w(G, H, {
112
127
  /* @ts-expect-error - to be fixed in @embeddable.com/react */
113
- props: (e, [a, o]) => ({
128
+ props: (e, [a, i]) => ({
114
129
  ...e,
115
130
  comparisonDateRange: a == null ? void 0 : a.comparisonDateRange,
116
- setComparisonDateRange: (t) => o({ comparisonDateRange: t }),
117
- results: f({
131
+ setComparisonDateRange: (n) => i({ comparisonDateRange: n }),
132
+ results: b({
118
133
  from: e.dataset,
119
134
  select: [e.measure],
120
135
  limit: 1,
@@ -126,7 +141,7 @@ const _ = (e) => {
126
141
  }
127
142
  ] : void 0
128
143
  }),
129
- resultsComparison: e.primaryDateRange && e.timeProperty && (a != null && a.comparisonDateRange) ? f({
144
+ resultsComparison: e.primaryDateRange && e.timeProperty && (a != null && a.comparisonDateRange) ? b({
130
145
  from: e.dataset,
131
146
  select: [e.measure],
132
147
  limit: 1,
@@ -141,7 +156,7 @@ const _ = (e) => {
141
156
  })
142
157
  });
143
158
  export {
144
- oe as default,
145
- $ as meta
159
+ se as default,
160
+ H as meta
146
161
  };
147
162
  //# sourceMappingURL=KpiChartNumberComparisonPro.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KpiChartNumberComparisonPro.js","sources":["../src/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.tsx","../src/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/KpiChartNumberComparisonPro.emb.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse, Measure, TimeRange } from '@embeddable.com/core';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { KpiChart } from '../../../../../remarkable-ui';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { useEffect } from 'react';\nimport {\n getComparisonPeriodDateRange,\n getComparisonPeriodLabel,\n} from '../../../utils/timeRange.utils';\n\ntype KpiChartNumberComparisonProProp = {\n changeFontSize: number;\n comparisonPeriod?: string;\n description: string;\n displayChangeAsPercentage?: boolean;\n fontSize: number;\n measure: Measure;\n primaryDateRange: TimeRange;\n results: DataResponse;\n resultsComparison: DataResponse | undefined;\n reversePositiveNegativeColors?: boolean;\n title: string;\n percentageDecimalPlaces: number;\n comparisonDateRange: TimeRange;\n setComparisonDateRange: (dateRange: TimeRange) => void;\n};\n\nconst KpiChartNumberComparisonPro = (props: KpiChartNumberComparisonProProp) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { title, description } = resolveI18nProps(props);\n const {\n changeFontSize,\n comparisonPeriod,\n comparisonDateRange,\n displayChangeAsPercentage,\n fontSize,\n measure,\n primaryDateRange,\n results,\n resultsComparison,\n reversePositiveNegativeColors,\n percentageDecimalPlaces,\n setComparisonDateRange,\n } = props;\n\n useEffect(() => {\n const newComparisonDateRange = getComparisonPeriodDateRange(\n primaryDateRange,\n comparisonPeriod,\n theme,\n );\n setComparisonDateRange(newComparisonDateRange);\n }, [comparisonPeriod, JSON.stringify(primaryDateRange), theme]);\n\n const value: number = results.data?.[0]?.[measure.name];\n const comparisonValue = comparisonDateRange\n ? resultsComparison?.data?.[0]?.[measure.name]\n : undefined;\n\n const themeFormatter = getThemeFormatter(theme);\n const valueFormatter = (valueToFormat: number) => themeFormatter.data(measure, valueToFormat);\n const comparisonLabel = `vs ${getComparisonPeriodLabel(comparisonPeriod, theme).toLowerCase()}`;\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[measure]}\n errorMessage={results.error}\n subtitle={description}\n title={title}\n >\n <KpiChart\n value={value}\n comparisonValue={comparisonValue}\n valueFormatter={valueFormatter}\n valueFontSize={fontSize}\n changeFontSize={changeFontSize}\n invertChangeColors={reversePositiveNegativeColors}\n showChangeAsPercentage={displayChangeAsPercentage}\n comparisonLabel={comparisonLabel}\n percentageDecimalPlaces={percentageDecimalPlaces}\n />\n </ChartCard>\n );\n};\n\nexport default KpiChartNumberComparisonPro;\n","import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport {\n dataset,\n description,\n dimensionTime,\n genericBoolean,\n genericNumber,\n genericTimeRange,\n measure,\n title,\n} from '../../../component.constants';\nimport KpiChartNumberComparisonPro from './index';\nimport { loadData, TimeRange } from '@embeddable.com/core';\nimport ComparisonPeriodType from '../../../types/ComparisonPeriod.type.emb';\n\nexport const meta = {\n name: 'KpiChartNumberComparisonPro',\n label: 'Kpi Chart - Number Comparison',\n category: 'Kpi Charts',\n inputs: [\n dataset,\n measure,\n { ...dimensionTime, name: 'timeProperty', label: 'Time Property' },\n {\n ...genericTimeRange,\n name: 'primaryDateRange',\n label: 'Primary Date Range',\n description: 'You can also connect this to a date range selector using its variable',\n category: 'Component Data',\n },\n {\n name: 'comparisonPeriod',\n type: ComparisonPeriodType,\n label: 'Comparison Period',\n description: 'You can also connect this to a comparison period selector using its variable',\n category: 'Component Data',\n },\n title,\n description,\n {\n ...genericBoolean,\n name: 'displayChangeAsPercentage',\n label: 'Display Change as %',\n defaultValue: false,\n },\n {\n ...genericNumber,\n name: 'percentageDecimalPlaces',\n label: 'Percentage Decimal Places',\n defaultValue: 1,\n },\n {\n ...genericBoolean,\n name: 'reversePositiveNegativeColors',\n label: 'Reverse Positive/Negative Colors',\n defaultValue: false,\n },\n { ...genericNumber, name: 'fontSize', label: 'Font Size', defaultValue: 44, required: true },\n {\n ...genericNumber,\n name: 'changeFontSize',\n label: 'Change Font Size',\n defaultValue: 16,\n required: true,\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\ntype KpiChartNumberComparisonProState = {\n comparisonDateRange: TimeRange;\n};\n\nexport default defineComponent(KpiChartNumberComparisonPro, meta, {\n /* @ts-expect-error - to be fixed in @embeddable.com/react */\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [\n KpiChartNumberComparisonProState,\n (state: KpiChartNumberComparisonProState) => void,\n ],\n ) => {\n return {\n ...inputs,\n comparisonDateRange: state?.comparisonDateRange,\n setComparisonDateRange: (comparisonDateRange: TimeRange) => setState({ comparisonDateRange }),\n results: loadData({\n from: inputs.dataset,\n select: [inputs.measure],\n limit: 1,\n filters:\n inputs.primaryDateRange && inputs.timeProperty\n ? [\n {\n property: inputs.timeProperty,\n operator: 'inDateRange',\n value: inputs.primaryDateRange,\n },\n ]\n : undefined,\n }),\n resultsComparison:\n inputs.primaryDateRange && inputs.timeProperty && state?.comparisonDateRange\n ? loadData({\n from: inputs.dataset,\n select: [inputs.measure],\n limit: 1,\n filters: [\n {\n property: inputs.timeProperty,\n operator: 'inDateRange',\n value: state.comparisonDateRange,\n },\n ],\n })\n : undefined,\n };\n },\n});\n"],"names":["KpiChartNumberComparisonPro","props","theme","useTheme","i18nSetup","title","description","resolveI18nProps","changeFontSize","comparisonPeriod","comparisonDateRange","displayChangeAsPercentage","fontSize","measure","primaryDateRange","results","resultsComparison","reversePositiveNegativeColors","percentageDecimalPlaces","setComparisonDateRange","useEffect","newComparisonDateRange","getComparisonPeriodDateRange","value","_b","_a","comparisonValue","_d","_c","themeFormatter","getThemeFormatter","valueFormatter","valueToFormat","comparisonLabel","getComparisonPeriodLabel","jsx","ChartCard","KpiChart","meta","dataset","dimensionTime","genericTimeRange","ComparisonPeriodType","genericBoolean","genericNumber","KpiChartNumberComparisonPro_emb","defineComponent","inputs","state","setState","loadData"],"mappings":"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"}
1
+ {"version":3,"file":"KpiChartNumberComparisonPro.js","sources":["../src/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/index.tsx","../src/remarkable-pro/components/charts/kpis/KpiChartNumberComparisonPro/KpiChartNumberComparisonPro.emb.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse, Measure, TimeRange } from '@embeddable.com/core';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { KpiChart } from '../../../../../remarkable-ui';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { useEffect } from 'react';\nimport {\n getComparisonPeriodDateRange,\n getComparisonPeriodLabel,\n} from '../../../utils/timeRange.utils';\n\ntype KpiChartNumberComparisonProProp = {\n changeFontSize: number;\n comparisonPeriod?: string;\n description: string;\n displayChangeAsPercentage?: boolean;\n fontSize: number;\n measure: Measure;\n primaryDateRange: TimeRange;\n results: DataResponse;\n resultsComparison: DataResponse | undefined;\n reversePositiveNegativeColors?: boolean;\n title: string;\n percentageDecimalPlaces: number;\n comparisonDateRange: TimeRange;\n setComparisonDateRange: (dateRange: TimeRange) => void;\n};\n\nconst KpiChartNumberComparisonPro = (props: KpiChartNumberComparisonProProp) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { title, description } = resolveI18nProps(props);\n const {\n changeFontSize,\n comparisonPeriod,\n comparisonDateRange,\n displayChangeAsPercentage,\n fontSize,\n measure,\n primaryDateRange,\n results,\n resultsComparison,\n reversePositiveNegativeColors,\n percentageDecimalPlaces,\n setComparisonDateRange,\n } = props;\n\n useEffect(() => {\n const newComparisonDateRange = getComparisonPeriodDateRange(\n primaryDateRange,\n comparisonPeriod,\n theme,\n );\n setComparisonDateRange(newComparisonDateRange);\n }, [comparisonPeriod, JSON.stringify(primaryDateRange), theme]);\n\n const value: number = results.data?.[0]?.[measure.name];\n const comparisonValue = comparisonDateRange\n ? resultsComparison?.data?.[0]?.[measure.name]\n : undefined;\n\n const themeFormatter = getThemeFormatter(theme);\n const valueFormatter = (valueToFormat: number) => themeFormatter.data(measure, valueToFormat);\n const comparisonLabel = `vs ${getComparisonPeriodLabel(comparisonPeriod, theme).toLowerCase()}`;\n\n const resultsCombined: DataResponse = {\n isLoading: results.isLoading,\n data: results.isLoading\n ? undefined\n : [\n ...(results.data?.length\n ? [{ label: i18n.t('charts.primaryPeriod'), ...results.data[0] }]\n : []),\n ...(resultsComparison?.data?.length\n ? [{ label: i18n.t('charts.comparisonPeriod'), ...resultsComparison.data[0] }]\n : []),\n ],\n };\n\n return (\n <ChartCard\n data={resultsCombined}\n dimensionsAndMeasures={[\n // Add a label dimension to distinguish primary and comparison periods in exports\n {\n name: 'label',\n title: i18n.t('charts.label'),\n nativeType: 'string',\n __type__: 'dimension',\n },\n measure,\n ]}\n errorMessage={results.error}\n subtitle={description}\n title={title}\n >\n <KpiChart\n value={value}\n comparisonValue={comparisonValue}\n valueFormatter={valueFormatter}\n valueFontSize={fontSize}\n changeFontSize={changeFontSize}\n invertChangeColors={reversePositiveNegativeColors}\n showChangeAsPercentage={displayChangeAsPercentage}\n comparisonLabel={comparisonLabel}\n percentageDecimalPlaces={percentageDecimalPlaces}\n />\n </ChartCard>\n );\n};\n\nexport default KpiChartNumberComparisonPro;\n","import { defineComponent, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport {\n dataset,\n description,\n dimensionTime,\n genericBoolean,\n genericNumber,\n genericTimeRange,\n measure,\n title,\n} from '../../../component.constants';\nimport KpiChartNumberComparisonPro from './index';\nimport { loadData, TimeRange } from '@embeddable.com/core';\nimport ComparisonPeriodType from '../../../types/ComparisonPeriod.type.emb';\n\nexport const meta = {\n name: 'KpiChartNumberComparisonPro',\n label: 'Kpi Chart - Number Comparison',\n category: 'Kpi Charts',\n inputs: [\n dataset,\n measure,\n { ...dimensionTime, name: 'timeProperty', label: 'Time Property' },\n {\n ...genericTimeRange,\n name: 'primaryDateRange',\n label: 'Primary Date Range',\n description: 'You can also connect this to a date range selector using its variable',\n category: 'Component Data',\n },\n {\n name: 'comparisonPeriod',\n type: ComparisonPeriodType,\n label: 'Comparison Period',\n description: 'You can also connect this to a comparison period selector using its variable',\n category: 'Component Data',\n },\n title,\n description,\n {\n ...genericBoolean,\n name: 'displayChangeAsPercentage',\n label: 'Display Change as %',\n defaultValue: false,\n },\n {\n ...genericNumber,\n name: 'percentageDecimalPlaces',\n label: 'Percentage Decimal Places',\n defaultValue: 1,\n },\n {\n ...genericBoolean,\n name: 'reversePositiveNegativeColors',\n label: 'Reverse Positive/Negative Colors',\n defaultValue: false,\n },\n { ...genericNumber, name: 'fontSize', label: 'Font Size', defaultValue: 44, required: true },\n {\n ...genericNumber,\n name: 'changeFontSize',\n label: 'Change Font Size',\n defaultValue: 16,\n required: true,\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\ntype KpiChartNumberComparisonProState = {\n comparisonDateRange: TimeRange;\n};\n\nexport default defineComponent(KpiChartNumberComparisonPro, meta, {\n /* @ts-expect-error - to be fixed in @embeddable.com/react */\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [\n KpiChartNumberComparisonProState,\n (state: KpiChartNumberComparisonProState) => void,\n ],\n ) => {\n return {\n ...inputs,\n comparisonDateRange: state?.comparisonDateRange,\n setComparisonDateRange: (comparisonDateRange: TimeRange) => setState({ comparisonDateRange }),\n results: loadData({\n from: inputs.dataset,\n select: [inputs.measure],\n limit: 1,\n filters:\n inputs.primaryDateRange && inputs.timeProperty\n ? [\n {\n property: inputs.timeProperty,\n operator: 'inDateRange',\n value: inputs.primaryDateRange,\n },\n ]\n : undefined,\n }),\n resultsComparison:\n inputs.primaryDateRange && inputs.timeProperty && state?.comparisonDateRange\n ? loadData({\n from: inputs.dataset,\n select: [inputs.measure],\n limit: 1,\n filters: [\n {\n property: inputs.timeProperty,\n operator: 'inDateRange',\n value: state.comparisonDateRange,\n },\n ],\n })\n : undefined,\n };\n },\n});\n"],"names":["KpiChartNumberComparisonPro","props","theme","useTheme","i18nSetup","title","description","resolveI18nProps","changeFontSize","comparisonPeriod","comparisonDateRange","displayChangeAsPercentage","fontSize","measure","primaryDateRange","results","resultsComparison","reversePositiveNegativeColors","percentageDecimalPlaces","setComparisonDateRange","useEffect","newComparisonDateRange","getComparisonPeriodDateRange","value","_b","_a","comparisonValue","_d","_c","themeFormatter","getThemeFormatter","valueFormatter","valueToFormat","comparisonLabel","getComparisonPeriodLabel","resultsCombined","_e","i18n","_f","jsx","ChartCard","KpiChart","meta","dataset","dimensionTime","genericTimeRange","ComparisonPeriodType","genericBoolean","genericNumber","KpiChartNumberComparisonPro_emb","defineComponent","inputs","state","setState","loadData"],"mappings":"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"}
@@ -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, Y as N, o as S } from "./component.constants-D7F6GsHW.js";
3
- import { C as j } from "./ChartCard-DunjH70y.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-XB5gaz8Z.js";
3
+ import { C as j } from "./ChartCard-Duhwxov3.js";
4
4
  import "react";
5
- import { K as v } from "./KpiChart-DVJLPOzo.js";
6
- import { g as z } from "./formatter.utils--2w1e7GE.js";
5
+ import { K as v } from "./KpiChart-DINLNXzY.js";
6
+ import { g as z } from "./formatter.utils-BmqMNSUB.js";
7
7
  const P = (e) => {
8
8
  var s, o;
9
9
  const a = h();