@embeddable.com/remarkable-pro 0.1.15 → 0.1.16

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 (142) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +1 -1
  2. package/dist/BarChartDefaultPro.js +1 -1
  3. package/dist/BarChartGroupedHorizontalPro.js +1 -1
  4. package/dist/BarChartGroupedPro.js +1 -1
  5. package/dist/BarChartStackedHorizontalPro.js +1 -1
  6. package/dist/BarChartStackedPro.js +1 -1
  7. package/dist/ComparisonPeriodSelectFieldPro.js +1 -1
  8. package/dist/DateRangePickerCustomPro.js +1 -1
  9. package/dist/DateRangeSelectFieldPro.js +1 -1
  10. package/dist/{DimensionAndMeasureSingleSelectField-CuDSeRWL.js → DimensionAndMeasureSingleSelectField-zC2mD-wg.js} +2 -2
  11. package/dist/{DimensionAndMeasureSingleSelectField-CuDSeRWL.js.map → DimensionAndMeasureSingleSelectField-zC2mD-wg.js.map} +1 -1
  12. package/dist/DimensionSingleSelectFieldPro.js +1 -1
  13. package/dist/DonutChartPro.js +1 -1
  14. package/dist/DonutLabelChartPro.js +1 -1
  15. package/dist/{GranularitySelectField-DhmzFuG_.js → GranularitySelectField-DOrz96Nx.js} +2 -2
  16. package/dist/{GranularitySelectField-DhmzFuG_.js.map → GranularitySelectField-DOrz96Nx.js.map} +1 -1
  17. package/dist/GranularitySelectFieldPro.js +1 -1
  18. package/dist/HeatMapPro.js +1 -1
  19. package/dist/HorizontalDividerPro.js +1 -1
  20. package/dist/KpiChartNumberComparisonPro.js +1 -1
  21. package/dist/KpiChartNumberPro.js +1 -1
  22. package/dist/LineChartComparisonDefaultPro.js +1 -1
  23. package/dist/LineChartDefaultPro.js +1 -1
  24. package/dist/LineChartGroupedPro.js +1 -1
  25. package/dist/MeasureSingleSelectFieldPro.js +1 -1
  26. package/dist/MultiSelectFieldPro.js +1 -1
  27. package/dist/PieChartPro.js +1 -1
  28. package/dist/PivotTablePro.js +1 -1
  29. package/dist/SingleSelectFieldPro.js +1 -1
  30. package/dist/TableChartPaginated.js +1 -1
  31. package/dist/TableScrollable.js +1 -1
  32. package/dist/bars.utils-Cp3p2Uwb.js +157 -0
  33. package/dist/bars.utils-Cp3p2Uwb.js.map +1 -0
  34. package/dist/{charts.fillGaps.hooks-CZW4DsTE.js → charts.fillGaps.hooks-pjSNsjXn.js} +2 -2
  35. package/dist/{charts.fillGaps.hooks-CZW4DsTE.js.map → charts.fillGaps.hooks-pjSNsjXn.js.map} +1 -1
  36. package/dist/{charts.utils-Cdvxu110.js → charts.utils-Bm2RzdsJ.js} +9 -5
  37. package/dist/{charts.utils-Cdvxu110.js.map → charts.utils-Bm2RzdsJ.js.map} +1 -1
  38. package/dist/{component.inputs.constants-DqFfoZ5R.js → component.inputs.constants-Bt7Cg1U3.js} +126 -120
  39. package/dist/component.inputs.constants-Bt7Cg1U3.js.map +1 -0
  40. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/BarChartDefaultHorizontalPro.emb.d.ts +5 -1
  41. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/BarChartDefaultHorizontalPro.emb.d.ts.map +1 -1
  42. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/definition.d.ts +10 -2
  43. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/definition.d.ts.map +1 -1
  44. package/dist/components/charts/bars/BarChartDefaultPro/BarChartDefaultPro.emb.d.ts +5 -1
  45. package/dist/components/charts/bars/BarChartDefaultPro/BarChartDefaultPro.emb.d.ts.map +1 -1
  46. package/dist/components/charts/bars/BarChartDefaultPro/definition.d.ts +10 -2
  47. package/dist/components/charts/bars/BarChartDefaultPro/definition.d.ts.map +1 -1
  48. package/dist/components/charts/bars/bars.utils.d.ts.map +1 -1
  49. package/dist/components/charts/charts.utils.d.ts +1 -0
  50. package/dist/components/charts/charts.utils.d.ts.map +1 -1
  51. package/dist/components/charts/charts.utils.test.d.ts +2 -0
  52. package/dist/components/charts/charts.utils.test.d.ts.map +1 -0
  53. package/dist/components/charts/pies/DonutChartPro/DonutChartPro.emb.d.ts +6 -1
  54. package/dist/components/charts/pies/DonutChartPro/DonutChartPro.emb.d.ts.map +1 -1
  55. package/dist/components/charts/pies/DonutChartPro/definition.d.ts +13 -3
  56. package/dist/components/charts/pies/DonutChartPro/definition.d.ts.map +1 -1
  57. package/dist/components/charts/pies/DonutLabelChartPro/DonutLabelChartPro.emb.d.ts +6 -1
  58. package/dist/components/charts/pies/DonutLabelChartPro/DonutLabelChartPro.emb.d.ts.map +1 -1
  59. package/dist/components/charts/pies/DonutLabelChartPro/definition.d.ts +13 -3
  60. package/dist/components/charts/pies/DonutLabelChartPro/definition.d.ts.map +1 -1
  61. package/dist/components/charts/pies/PieChartPro/PieChartPro.emb.d.ts +6 -1
  62. package/dist/components/charts/pies/PieChartPro/PieChartPro.emb.d.ts.map +1 -1
  63. package/dist/components/charts/pies/PieChartPro/definition.d.ts +13 -3
  64. package/dist/components/charts/pies/PieChartPro/definition.d.ts.map +1 -1
  65. package/dist/components/charts/pies/pies.types.d.ts +1 -0
  66. package/dist/components/charts/pies/pies.types.d.ts.map +1 -1
  67. package/dist/components/charts/pies/pies.utils.d.ts.map +1 -1
  68. package/dist/components/component.subinputs.constants.d.ts +6 -0
  69. package/dist/components/component.subinputs.constants.d.ts.map +1 -1
  70. package/dist/{definition-DRo-piNE.js → definition-7YcKSzMc.js} +6 -6
  71. package/dist/{definition-DRo-piNE.js.map → definition-7YcKSzMc.js.map} +1 -1
  72. package/dist/{definition-5X_7D7PB.js → definition-B0BZOtFb.js} +5 -5
  73. package/dist/{definition-5X_7D7PB.js.map → definition-B0BZOtFb.js.map} +1 -1
  74. package/dist/{definition-B-gAgB0F.js → definition-B1eFycgF.js} +56 -53
  75. package/dist/definition-B1eFycgF.js.map +1 -0
  76. package/dist/{definition-Bzfn9qRU.js → definition-B5IubDTh.js} +2 -2
  77. package/dist/{definition-Bzfn9qRU.js.map → definition-B5IubDTh.js.map} +1 -1
  78. package/dist/{definition-Bd7Mq9jJ.js → definition-B9-NkNs1.js} +36 -36
  79. package/dist/definition-B9-NkNs1.js.map +1 -0
  80. package/dist/{definition-Db_zvoxg.js → definition-BTxQOtrb.js} +4 -4
  81. package/dist/{definition-Db_zvoxg.js.map → definition-BTxQOtrb.js.map} +1 -1
  82. package/dist/{definition-BcVWZdce.js → definition-BVDxicxq.js} +6 -6
  83. package/dist/{definition-BcVWZdce.js.map → definition-BVDxicxq.js.map} +1 -1
  84. package/dist/{definition-CRo-ay8-.js → definition-BZfh0d5G.js} +4 -4
  85. package/dist/{definition-CRo-ay8-.js.map → definition-BZfh0d5G.js.map} +1 -1
  86. package/dist/{definition-DGu0W1N5.js → definition-BfPzjM5E.js} +3 -3
  87. package/dist/{definition-DGu0W1N5.js.map → definition-BfPzjM5E.js.map} +1 -1
  88. package/dist/{definition-D1ImuDYw.js → definition-BqpI59h1.js} +2 -2
  89. package/dist/{definition-D1ImuDYw.js.map → definition-BqpI59h1.js.map} +1 -1
  90. package/dist/{definition-MZjy6eIS.js → definition-BymWALVZ.js} +37 -39
  91. package/dist/definition-BymWALVZ.js.map +1 -0
  92. package/dist/{definition-B1JPVIaV.js → definition-C-qWM-Pj.js} +3 -3
  93. package/dist/{definition-B1JPVIaV.js.map → definition-C-qWM-Pj.js.map} +1 -1
  94. package/dist/{definition-CnTOWh-u.js → definition-C1VV9G0e.js} +6 -6
  95. package/dist/{definition-CnTOWh-u.js.map → definition-C1VV9G0e.js.map} +1 -1
  96. package/dist/{definition-BvNvRUNa.js → definition-CMz7w0QV.js} +4 -4
  97. package/dist/{definition-BvNvRUNa.js.map → definition-CMz7w0QV.js.map} +1 -1
  98. package/dist/{definition-DlXlQNWS.js → definition-CiHy_fws.js} +3 -3
  99. package/dist/{definition-DlXlQNWS.js.map → definition-CiHy_fws.js.map} +1 -1
  100. package/dist/{definition-DKxaARfb.js → definition-CwTis5em.js} +2 -2
  101. package/dist/{definition-DKxaARfb.js.map → definition-CwTis5em.js.map} +1 -1
  102. package/dist/{definition-CNZK3eKN.js → definition-DcFzlbIT.js} +4 -4
  103. package/dist/{definition-CNZK3eKN.js.map → definition-DcFzlbIT.js.map} +1 -1
  104. package/dist/{definition-BcrBUqiO.js → definition-De-Rad1b.js} +6 -6
  105. package/dist/{definition-BcrBUqiO.js.map → definition-De-Rad1b.js.map} +1 -1
  106. package/dist/{definition-C3bUC419.js → definition-DjSj_Mf9.js} +5 -5
  107. package/dist/{definition-C3bUC419.js.map → definition-DjSj_Mf9.js.map} +1 -1
  108. package/dist/{definition-BNiUf3pa.js → definition-DrM3lQgj.js} +4 -4
  109. package/dist/{definition-BNiUf3pa.js.map → definition-DrM3lQgj.js.map} +1 -1
  110. package/dist/{definition-xVmuVR7S.js → definition-DuznYX_X.js} +38 -38
  111. package/dist/definition-DuznYX_X.js.map +1 -0
  112. package/dist/{definition-C0bSa4wt.js → definition-SzFQwepb.js} +3 -3
  113. package/dist/{definition-C0bSa4wt.js.map → definition-SzFQwepb.js.map} +1 -1
  114. package/dist/{definition-CPlHt0VT.js → definition-WczJhf4R.js} +3 -3
  115. package/dist/{definition-CPlHt0VT.js.map → definition-WczJhf4R.js.map} +1 -1
  116. package/dist/{definition-1irz8rln.js → definition-YCcNs37E.js} +4 -4
  117. package/dist/{definition-1irz8rln.js.map → definition-YCcNs37E.js.map} +1 -1
  118. package/dist/{definition-C7o_MYiT.js → definition-gkxKuLIZ.js} +5 -5
  119. package/dist/{definition-C7o_MYiT.js.map → definition-gkxKuLIZ.js.map} +1 -1
  120. package/dist/{definition-qU43EQTj.js → definition-zJlVKfyf.js} +58 -55
  121. package/dist/definition-zJlVKfyf.js.map +1 -0
  122. package/dist/embeddable-components.json +32 -32
  123. package/dist/{granularity.utils-DFrZaG56.js → granularity.utils-B0Km_S2c.js} +2 -2
  124. package/dist/{granularity.utils-DFrZaG56.js.map → granularity.utils-B0Km_S2c.js.map} +1 -1
  125. package/dist/index.js +158 -157
  126. package/dist/pies.utils-eTSHQEF7.js +76 -0
  127. package/dist/pies.utils-eTSHQEF7.js.map +1 -0
  128. package/dist/{preview.data.constants-D0uQPYd1.js → preview.data.constants-D-2xm7Qk.js} +2 -2
  129. package/dist/{preview.data.constants-D0uQPYd1.js.map → preview.data.constants-D-2xm7Qk.js.map} +1 -1
  130. package/dist/{tables.utils-TEZbXro4.js → tables.utils-BlL_7T9C.js} +3 -3
  131. package/dist/{tables.utils-TEZbXro4.js.map → tables.utils-BlL_7T9C.js.map} +1 -1
  132. package/package.json +1 -1
  133. package/dist/bars.utils-BrpDJfO5.js +0 -154
  134. package/dist/bars.utils-BrpDJfO5.js.map +0 -1
  135. package/dist/component.inputs.constants-DqFfoZ5R.js.map +0 -1
  136. package/dist/definition-B-gAgB0F.js.map +0 -1
  137. package/dist/definition-Bd7Mq9jJ.js.map +0 -1
  138. package/dist/definition-MZjy6eIS.js.map +0 -1
  139. package/dist/definition-qU43EQTj.js.map +0 -1
  140. package/dist/definition-xVmuVR7S.js.map +0 -1
  141. package/dist/pies.utils-D1eHYGQw.js +0 -77
  142. package/dist/pies.utils-D1eHYGQw.js.map +0 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@embeddable.com/remarkable-pro",
3
3
  "author": "embeddable (https://embeddable.com)",
4
- "version": "0.1.15",
4
+ "version": "0.1.16",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/embeddable-hq/remarkable-pro"
@@ -1,154 +0,0 @@
1
- import { g as D, a as M } from "./Color.type.emb-BBdbJHvt.js";
2
- import { r as O, h as T } from "./charts.utils-Cdvxu110.js";
3
- import { g as f } from "./preview.data.constants-D0uQPYd1.js";
4
- import { a as C } from "./styles.utils-BfpH_m_W.js";
5
- const _ = (s, d) => {
6
- var g;
7
- const m = f(d), { data: r = [], dimension: c, groupDimension: a, measure: i } = s, n = [...new Set(r.map((o) => o[c.name]).filter((o) => o != null))].sort(), t = `${a.name}${a.nativeType === M && ((g = a.inputs) != null && g.granularity) ? `.${a.inputs.granularity}` : ""}`, e = [...new Set(r.map((o) => o[t]))].filter((o) => o != null), l = D(), u = e.map((o, b) => {
8
- const p = C({
9
- dimensionOrMeasure: a,
10
- theme: d,
11
- color: "background",
12
- value: `${a.name}.${o}`,
13
- index: b,
14
- chartColors: l
15
- }), v = C({
16
- dimensionOrMeasure: a,
17
- theme: d,
18
- color: "border",
19
- value: `${a.name}.${o}`,
20
- index: b,
21
- chartColors: l
22
- });
23
- return {
24
- label: m.data(a, o),
25
- rawLabel: o,
26
- backgroundColor: p,
27
- borderColor: v,
28
- data: n.map(($) => {
29
- const h = r.find(
30
- (k) => k[t] === o && k[c.name] === $
31
- );
32
- return h ? Number(h[i.name]) : 0;
33
- })
34
- };
35
- });
36
- return {
37
- labels: n,
38
- datasets: u
39
- };
40
- }, E = (s, d = O) => {
41
- if (!s.data)
42
- return {
43
- labels: [],
44
- datasets: [{ data: [] }]
45
- };
46
- const m = f(d), r = T(s.data, s.dimension, s.measures, s.maxItems), c = D();
47
- return {
48
- labels: r.map((a) => a[s.dimension.name]),
49
- datasets: s.measures.map((a, i) => {
50
- const n = C({
51
- dimensionOrMeasure: a,
52
- theme: d,
53
- color: "background",
54
- value: a.name,
55
- index: i,
56
- chartColors: c
57
- }), t = C({
58
- dimensionOrMeasure: a,
59
- theme: d,
60
- color: "border",
61
- value: a.name,
62
- index: i,
63
- chartColors: c
64
- });
65
- return {
66
- label: m.dimensionOrMeasureTitle(a),
67
- data: r.map((e) => e[a.name] ?? 0),
68
- backgroundColor: n,
69
- borderColor: t
70
- };
71
- })
72
- };
73
- }, w = (s, d) => {
74
- const { datasets: m } = s.chart.data, r = s.dataIndex, c = m.reduce((a, i) => {
75
- const n = i.data[r];
76
- return a + (n || 0);
77
- }, 0);
78
- return d(c);
79
- }, I = (s, d) => {
80
- const { onBarClicked: m, measures: r, dimension: c, horizontal: a, data: i } = s, n = f(d);
81
- return {
82
- plugins: {
83
- legend: { position: d.charts.legendPosition ?? "bottom" },
84
- datalabels: {
85
- labels: {
86
- total: {
87
- formatter: (t, e) => w(
88
- e,
89
- (l) => n.data(r[0], l)
90
- )
91
- },
92
- value: {
93
- formatter: (t, e) => {
94
- const l = r[e.datasetIndex % r.length];
95
- return n.data(l, t);
96
- }
97
- }
98
- }
99
- },
100
- tooltip: {
101
- callbacks: {
102
- title: (t) => {
103
- var l;
104
- const e = (l = t[0]) == null ? void 0 : l.label;
105
- return n.data(c, e);
106
- },
107
- label: (t) => {
108
- const e = r[t.datasetIndex % r.length], l = t.raw;
109
- return `${n.data(c, t.dataset.label) || ""}: ${n.data(e, l)}`;
110
- }
111
- }
112
- }
113
- },
114
- scales: {
115
- x: {
116
- ticks: {
117
- callback: (t) => {
118
- if (a)
119
- return n.data(r[0], t);
120
- if (!i || !i.labels) return;
121
- const e = i.labels[Number(t)];
122
- return n.data(c, e);
123
- }
124
- }
125
- },
126
- y: {
127
- ticks: {
128
- callback: (t) => {
129
- if (!a)
130
- return n.data(r[0], t);
131
- if (!i || !i.labels) return;
132
- const e = i.labels[Number(t)];
133
- return n.data(c, e);
134
- }
135
- }
136
- }
137
- },
138
- onClick: (t, e, l) => {
139
- var b;
140
- if (!m) return;
141
- const u = e[0], g = u ? l.data.labels[u.index] : null, o = u ? (b = l.data.datasets[u.datasetIndex]) == null ? void 0 : b.rawLabel : null;
142
- m({
143
- axisDimensionValue: g,
144
- groupingDimensionValue: o
145
- });
146
- }
147
- };
148
- };
149
- export {
150
- I as a,
151
- _ as b,
152
- E as g
153
- };
154
- //# sourceMappingURL=bars.utils-BrpDJfO5.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bars.utils-BrpDJfO5.js","sources":["../src/components/charts/bars/bars.utils.ts"],"sourcesContent":["import { CUBE_DIMENSION_TYPE_TIME, DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { Theme } from '../../../theme/theme.types';\nimport { remarkableTheme } from '../../../theme/theme.constants';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { groupTailAsOther } from '../charts.utils';\nimport { getDimensionMeasureColor } from '../../../theme/styles/styles.utils';\nimport { getChartColors } from '@embeddable.com/remarkable-ui';\nimport { Context } from 'chartjs-plugin-datalabels';\n\nexport const getBarStackedChartProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n groupDimension: Dimension;\n measure: Measure;\n },\n theme: Theme,\n): ChartData<'bar'> => {\n const themeFormatter = getThemeFormatter(theme);\n const { data = [], dimension, groupDimension, measure } = props;\n\n const axis = [...new Set(data.map((d) => d[dimension.name]).filter((d) => d != null))].sort();\n const groupDimensionName = `${groupDimension.name}${groupDimension.nativeType === CUBE_DIMENSION_TYPE_TIME && groupDimension.inputs?.granularity ? `.${groupDimension.inputs.granularity}` : ''}`;\n const groupBy = [...new Set(data.map((d) => d[groupDimensionName]))].filter((d) => d != null);\n\n const chartColors = getChartColors();\n const datasets = groupBy.map((groupByItem, index) => {\n const backgroundColor = getDimensionMeasureColor({\n dimensionOrMeasure: groupDimension,\n theme,\n color: 'background',\n value: `${groupDimension.name}.${groupByItem}`,\n index,\n chartColors,\n });\n\n const borderColor = getDimensionMeasureColor({\n dimensionOrMeasure: groupDimension,\n theme,\n color: 'border',\n value: `${groupDimension.name}.${groupByItem}`,\n index,\n chartColors,\n });\n\n return {\n label: themeFormatter.data(groupDimension, groupByItem),\n rawLabel: groupByItem,\n backgroundColor,\n borderColor,\n data: axis.map((axisItem) => {\n const record = data.find(\n (d) => d[groupDimensionName] === groupByItem && d[dimension.name] === axisItem,\n );\n return record ? Number(record[measure.name]) : 0;\n }),\n };\n });\n\n return {\n labels: axis,\n datasets,\n };\n};\n\nexport const getBarChartProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measures: Measure[];\n maxItems?: number;\n },\n theme: Theme = remarkableTheme,\n): ChartData<'bar'> => {\n if (!props.data) {\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n }\n\n const themeFormatter = getThemeFormatter(theme);\n const groupedData = groupTailAsOther(props.data, props.dimension, props.measures, props.maxItems);\n const chartColors = getChartColors();\n\n return {\n labels: groupedData.map((item) => {\n return item[props.dimension.name];\n }),\n datasets: props.measures.map((measure, index) => {\n const backgroundColor = getDimensionMeasureColor({\n dimensionOrMeasure: measure,\n theme,\n color: 'background',\n value: measure.name,\n index,\n chartColors,\n });\n\n const borderColor = getDimensionMeasureColor({\n dimensionOrMeasure: measure,\n theme,\n color: 'border',\n value: measure.name,\n index,\n chartColors,\n });\n\n return {\n label: themeFormatter.dimensionOrMeasureTitle(measure),\n data: groupedData.map((item) => item[measure.name] ?? 0),\n backgroundColor,\n borderColor,\n };\n }),\n };\n};\n\nconst getBarChartProDatalabelTotalFormatter = (\n context: Context,\n formatter: (value: number) => string,\n) => {\n const { datasets } = context.chart.data;\n const i = context.dataIndex;\n\n const total = datasets.reduce((sum, ds) => {\n const val = ds.data[i] as number;\n return sum + (val || 0);\n }, 0);\n\n return formatter(total);\n};\n\nexport const getBarChartProOptions = (\n options: {\n onBarClicked?: (args: {\n axisDimensionValue: string | null;\n groupingDimensionValue: string | null;\n }) => void;\n measures: Measure[];\n dimension: Dimension;\n horizontal: boolean;\n data: ChartData<'bar'>;\n },\n theme: Theme,\n): Partial<ChartOptions<'bar'>> => {\n const { onBarClicked, measures, dimension, horizontal, data } = options;\n\n const themeFormatter = getThemeFormatter(theme);\n return {\n plugins: {\n legend: { position: theme.charts.legendPosition ?? 'bottom' },\n datalabels: {\n labels: {\n total: {\n formatter: (_value: string | number, context: Context) =>\n getBarChartProDatalabelTotalFormatter(context, (value: number) =>\n themeFormatter.data(measures[0]!, value),\n ),\n },\n value: {\n formatter: (value: string | number, context) => {\n const measure = measures[context.datasetIndex % measures.length]!;\n return themeFormatter.data(measure, value);\n },\n },\n },\n },\n tooltip: {\n callbacks: {\n title: (context) => {\n const label = context[0]?.label;\n return themeFormatter.data(dimension, label);\n },\n label: (context) => {\n const measure = measures[context.datasetIndex % measures.length]!;\n const raw = context.raw as number;\n return `${themeFormatter.data(dimension, context.dataset.label) || ''}: ${themeFormatter.data(measure, raw)}`;\n },\n },\n },\n },\n scales: {\n x: {\n ticks: {\n callback: (value) => {\n if (horizontal) {\n return themeFormatter.data(measures[0]!, value);\n }\n\n if (!data || !data.labels) return undefined;\n\n const label = data.labels[Number(value)] as string;\n\n return themeFormatter.data(dimension, label);\n },\n },\n },\n y: {\n ticks: {\n callback: (value) => {\n if (!horizontal) {\n return themeFormatter.data(measures[0]!, value);\n }\n if (!data || !data.labels) return undefined;\n const label = data.labels[Number(value)] as string;\n return themeFormatter.data(dimension, label);\n },\n },\n },\n },\n onClick: (_event, elements, chart) => {\n if (!onBarClicked) return;\n\n const element = elements[0];\n const axisDimensionValue = (element ? chart.data.labels![element.index] : null) as\n | string\n | null;\n const groupingDimensionValue = (\n element\n ? (chart.data.datasets[element.datasetIndex] as { rawLabel?: string | null })?.rawLabel\n : null\n ) as string | null;\n\n onBarClicked({\n axisDimensionValue,\n groupingDimensionValue,\n });\n },\n };\n};\n"],"names":["getBarStackedChartProData","props","theme","themeFormatter","getThemeFormatter","data","dimension","groupDimension","measure","axis","d","groupDimensionName","CUBE_DIMENSION_TYPE_TIME","_a","groupBy","chartColors","getChartColors","datasets","groupByItem","index","backgroundColor","getDimensionMeasureColor","borderColor","axisItem","record","getBarChartProData","remarkableTheme","groupedData","groupTailAsOther","item","getBarChartProDatalabelTotalFormatter","context","formatter","i","total","sum","ds","val","getBarChartProOptions","options","onBarClicked","measures","horizontal","_value","value","label","raw","_event","elements","chart","element","axisDimensionValue","groupingDimensionValue"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"component.inputs.constants-DqFfoZ5R.js","sources":["../src/components/types/DisplayFormat.type.emb.ts","../src/theme/defaults/defaults.GranularityOptions.constants.ts","../src/components/types/Align.type.emb.ts","../src/components/types/TableCellStyle.type.emb.ts","../src/components/component.subinputs.constants.ts","../src/components/types/ComparisonPeriod.type.emb.ts","../src/components/component.inputs.constants.ts"],"sourcesContent":["import { defineOption, defineType } from '@embeddable.com/core';\n\nexport const DisplayFormatTypeOptions = {\n MARKDOWN: 'Markdown',\n JSON: 'Json',\n} as const;\n\nconst DisplayFormatType = defineType('DisplayFormat', {\n label: 'Display format',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(DisplayFormatType, DisplayFormatTypeOptions.MARKDOWN);\ndefineOption(DisplayFormatType, DisplayFormatTypeOptions.JSON);\n\nexport default DisplayFormatType;\n","import { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\n\nexport const Granularity = {\n second: 'second',\n minute: 'minute',\n hour: 'hour',\n day: 'day',\n week: 'week',\n month: 'month',\n quarter: 'quarter',\n year: 'year',\n} as const;\n\nexport type TGranularity = keyof typeof Granularity;\nexport type TGranularityValue = (typeof Granularity)[TGranularity];\n\nexport const defaultGranularitySelectFieldOptions: SelectListOptionProps[] = [\n { value: Granularity.second, label: 'defaults.granularityOptions.second|Second' },\n { value: Granularity.minute, label: 'defaults.granularityOptions.minute|Minute' },\n { value: Granularity.hour, label: 'defaults.granularityOptions.hour|Hour' },\n { value: Granularity.day, label: 'defaults.granularityOptions.day|Day' },\n { value: Granularity.week, label: 'defaults.granularityOptions.week|Week' },\n { value: Granularity.month, label: 'defaults.granularityOptions.month|Month' },\n { value: Granularity.quarter, label: 'defaults.granularityOptions.quarter|Quarter' },\n { value: Granularity.year, label: 'defaults.granularityOptions.year|Year' },\n];\n\nexport const granularities = Object.values(Granularity);\n","import { defineOption, defineType } from '@embeddable.com/core';\n\nconst AlignType = defineType('align', {\n label: 'Alignment',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(AlignType, 'left');\ndefineOption(AlignType, 'center');\ndefineOption(AlignType, 'right');\n\nexport default AlignType;\n","import { defineOption, defineType } from '@embeddable.com/core';\n\nconst TableCellStyleType = defineType('tableCellStyle', {\n label: 'Table cell style',\n optionLabel: (value: string) => value,\n});\n\ndefineOption(TableCellStyleType, 'Bold');\ndefineOption(TableCellStyleType, 'Italic');\ndefineOption(TableCellStyleType, 'Positive vs Negative');\n\nexport default TableCellStyleType;\n","import ColorType from '../editors/ColorEditor/Color.type.emb';\nimport { Granularity } from '../theme/defaults/defaults.GranularityOptions.constants';\nimport AlignType from './types/Align.type.emb';\nimport DisplayFormatType from './types/DisplayFormat.type.emb';\nimport TableCellStyleType from './types/TableCellStyle.type.emb';\n\n/* -------------------- */\n/* ----- Generics ----- */\n/* -------------------- */\n\nconst number = {\n name: 'number',\n type: 'number',\n label: 'Number',\n} as const;\n\nconst string = {\n name: 'string',\n type: 'string',\n label: 'String',\n} as const;\n\nconst boolean = {\n name: 'boolean',\n type: 'boolean',\n label: 'Boolean',\n} as const;\n\nconst timeRange = {\n name: 'timeRange',\n type: 'timeRange',\n label: 'Time range',\n} as const;\n\n/* ------------------ */\n/* ----- Common ----- */\n/* ------------------ */\n\nconst width = {\n name: 'width',\n type: 'number',\n label: 'Width',\n description: 'You can input a number in pixels e.g. 400',\n} as const;\n\nconst align = { name: 'align', type: AlignType, label: 'Align' } as const;\n\nconst prefix = { name: 'prefix', type: 'string', label: 'Prefix' } as const;\n\nconst suffix = { name: 'suffix', type: 'string', label: 'Suffix' } as const;\n\nconst displayName = {\n name: 'displayName',\n type: 'string',\n label: 'Display name',\n} as const;\n\nconst maxCharacters = {\n name: 'maxCharacters',\n type: 'number',\n label: 'Maximum characters',\n description: undefined,\n supportedTypes: ['string'],\n} as const;\n\nconst decimalPlaces = {\n name: 'decimalPlaces',\n type: 'number',\n label: 'Decimal places',\n supportedTypes: ['number'],\n} as const;\n\nconst currency = {\n name: 'currency',\n type: 'string',\n label: 'Currency',\n description: 'e.g. EUR',\n supportedTypes: ['number'],\n} as const;\n\nconst abbreviateLargeNumber = {\n name: 'abbreviateLargeNumber',\n type: 'boolean',\n label: 'Abbreviate large number',\n supportedTypes: ['number'],\n} as const;\n\nconst dateBounds = {\n name: 'dateBounds',\n type: 'timeRange',\n label: 'Date bounds',\n description: 'Set the date range for the axis',\n supportedTypes: ['time'],\n} as const;\n\nconst granularity = {\n name: 'granularity',\n type: 'granularity',\n label: 'Granularity',\n supportedTypes: ['time'],\n defaultValue: Granularity.day,\n} as const;\n\nconst color = {\n type: ColorType,\n name: 'color',\n label: 'Color',\n} as const;\n\nconst granularities = {\n name: 'granularities',\n type: 'granularity',\n label: 'Granularities',\n supportedTypes: ['time'],\n array: true,\n // Ignore seconds and minutes\n defaultValue: [\n Granularity.hour,\n Granularity.day,\n Granularity.week,\n Granularity.month,\n Granularity.quarter,\n Granularity.year,\n ],\n} as const;\n\nconst displayFormat = {\n type: DisplayFormatType,\n name: 'displayFormat',\n label: 'Display format',\n} as const;\n\nconst tableCellStyle = {\n type: TableCellStyleType,\n name: 'tableCellStyle',\n label: 'Table cell style',\n} as const;\n\nconst showGranularityDropdown = {\n type: 'boolean',\n name: 'showGranularityDropdown',\n label: 'Show granularity dropdown',\n description:\n 'Display a granularity selector inside the chart. The Granularity input above is used only as the default when this option is enabled.',\n supportedTypes: ['time'],\n defaultValue: false,\n} as const;\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const dimensionMeasureSubInputs: any[] = [\n prefix,\n suffix,\n displayName,\n maxCharacters,\n decimalPlaces,\n currency,\n abbreviateLargeNumber,\n];\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const timeDimensionSubInputs: any[] = [\n prefix,\n suffix,\n displayName,\n maxCharacters,\n decimalPlaces,\n currency,\n abbreviateLargeNumber,\n granularity,\n dateBounds,\n];\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport const timeDimensionWithGranularitySelectFieldSubInputs: any[] = [\n prefix,\n suffix,\n displayName,\n maxCharacters,\n decimalPlaces,\n currency,\n abbreviateLargeNumber,\n granularity,\n showGranularityDropdown,\n // Not required for now - defaults to day, week, month, quarter, year\n // granularities,\n {\n ...dateBounds,\n description:\n 'Set a date range or connect your primary date-range variable to define the x-axis min and max. If “Show granularity dropdown” is enabled, this also enables auto-selection of the most appropriate granularity',\n },\n];\n\nexport const subInputs = {\n boolean,\n timeRange,\n number,\n string,\n width,\n align,\n prefix,\n suffix,\n displayName,\n maxCharacters,\n decimalPlaces,\n currency,\n abbreviateLargeNumber,\n dateBounds,\n granularity,\n granularities,\n color,\n displayFormat,\n tableCellStyle,\n showGranularityDropdown,\n};\n","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","import ColorType from '../editors/ColorEditor/Color.type.emb';\nimport { Granularity } from '../theme/defaults/defaults.GranularityOptions.constants';\nimport {\n dimensionMeasureSubInputs,\n timeDimensionSubInputs,\n timeDimensionWithGranularitySelectFieldSubInputs,\n} from './component.subinputs.constants';\nimport ComparisonPeriodType from './types/ComparisonPeriod.type.emb';\n\n/* -------------------- */\n/* ----- Generics ----- */\n/* -------------------- */\n\nconst boolean = {\n name: 'boolean',\n type: 'boolean',\n label: 'Boolean',\n} as const;\n\nconst timeRange = {\n name: 'timeRange',\n type: 'timeRange',\n label: 'Time range',\n} as const;\n\nconst number = {\n name: 'number',\n type: 'number',\n label: 'Number',\n} as const;\n\nconst string = {\n name: 'string',\n type: 'string',\n label: 'String',\n} as const;\n\n/* ------------------ */\n/* ----- Common ----- */\n/* ------------------ */\n\nconst title = {\n name: 'title',\n type: 'string',\n label: 'Title',\n category: 'Component Header',\n} as const;\n\nconst description = {\n name: 'description',\n type: 'string',\n label: 'Description',\n category: 'Component Header',\n} as const;\n\nconst tooltip = {\n name: 'tooltip',\n type: 'string',\n label: 'Tooltip',\n category: 'Component Header',\n} as const;\n\nconst dataset = {\n name: 'dataset',\n type: 'dataset',\n label: 'Dataset',\n required: true,\n category: 'Component Data',\n} as const;\n\nconst maxLegendItems = {\n name: 'maxLegendItems',\n type: 'number',\n label: 'Max legend items',\n defaultValue: 10,\n category: 'Component Data',\n} as const;\n\nconst dimension = {\n name: 'dimension',\n type: 'dimension',\n label: 'Dimension',\n config: {\n dataset: 'dataset',\n },\n required: true,\n category: 'Component Data',\n inputs: dimensionMeasureSubInputs,\n} as const;\n\nconst groupBy = {\n ...dimension,\n name: 'groupBy',\n label: 'Group by',\n} as const;\n\nconst granularity = {\n name: 'granularity',\n type: 'granularity',\n label: 'Granularity',\n} as const;\n\nconst granularities = {\n name: 'granularities',\n type: 'granularity',\n label: 'Granularities',\n array: true,\n // Ignore seconds and minutes\n defaultValue: [\n Granularity.hour,\n Granularity.day,\n Granularity.week,\n Granularity.month,\n Granularity.quarter,\n Granularity.year,\n ],\n} as const;\n\nconst dimensionSimple = {\n name: 'dimensionSimple',\n type: 'dimension',\n label: 'Dimension',\n config: {\n dataset: 'dataset',\n hideGranularity: true,\n },\n required: true,\n category: 'Component Data',\n} as const;\n\nconst dimensionTime = {\n name: 'dimensionTime',\n type: 'dimension',\n label: 'Dimension time',\n config: {\n dataset: 'dataset',\n supportedTypes: ['time'],\n hideGranularity: true,\n },\n required: true,\n category: 'Component Data',\n} as const;\n\nconst dimensionWithDateBounds = {\n name: 'dimension',\n type: 'dimension',\n label: 'Dimension',\n config: {\n dataset: 'dataset',\n },\n required: true,\n category: 'Component Data',\n inputs: timeDimensionSubInputs,\n} as const;\n\nconst dimensionWithGranularitySelectField = {\n name: 'dimension',\n type: 'dimension',\n label: 'Dimension',\n config: {\n dataset: 'dataset',\n },\n required: true,\n category: 'Component Data',\n inputs: timeDimensionWithGranularitySelectFieldSubInputs,\n} as const;\n\nconst dimensions = {\n name: 'dimensions',\n type: 'dimension',\n label: 'Dimensions',\n config: {\n dataset: 'dataset',\n },\n array: true,\n required: true,\n category: 'Component Data',\n inputs: dimensionMeasureSubInputs,\n} as const;\n\nconst dimensionOrMeasure = {\n name: 'dimensionOrMeasure',\n type: 'dimensionOrMeasure',\n label: 'Dimension or measure',\n config: {\n dataset: 'dataset',\n },\n category: 'Component Data',\n inputs: dimensionMeasureSubInputs,\n} as const;\n\nconst dimensionsAndMeasures = {\n name: 'dimensionsAndMeasures',\n type: 'dimensionOrMeasure',\n label: 'Dimensions and measures',\n array: true,\n required: true,\n config: {\n dataset: 'dataset',\n },\n category: 'Component Data',\n inputs: dimensionMeasureSubInputs,\n} as const;\n\nconst measure = {\n name: 'measure',\n type: 'measure',\n label: 'Measure',\n config: {\n dataset: 'dataset',\n },\n required: true,\n category: 'Component Data',\n inputs: dimensionMeasureSubInputs,\n} as const;\n\nconst measures = {\n name: 'measures',\n type: 'measure',\n label: 'Measures',\n array: true,\n config: {\n dataset: 'dataset',\n },\n required: true,\n category: 'Component Data',\n inputs: dimensionMeasureSubInputs,\n} as const;\n\nconst measureOptions = {\n ...measures,\n name: 'measureOptions',\n label: 'Measure options',\n inputs: dimensionMeasureSubInputs,\n};\n\nconst dimensionOptions = {\n ...dimensions,\n name: 'dimensionOptions',\n label: 'Dimension options',\n inputs: dimensionMeasureSubInputs,\n};\n\nconst comparisonPeriod = {\n name: 'comparisonPeriod',\n type: ComparisonPeriodType,\n label: 'Comparison period',\n category: 'Component data',\n};\n\nconst maxResults = {\n name: 'maxResults',\n type: 'number',\n label: 'Max results',\n category: 'Component Settings',\n defaultValue: 1000,\n} as const;\n\nconst placeholder = {\n name: 'placeholder',\n type: 'string',\n label: 'Placeholder',\n category: 'Component Settings',\n} as const;\n\nconst showLegend = {\n name: 'showLegend',\n type: 'boolean',\n label: 'Show legend',\n defaultValue: true,\n category: 'Component Settings',\n} as const;\n\nconst showTooltips = {\n name: 'showTooltips',\n type: 'boolean',\n label: 'Show tooltips',\n defaultValue: true,\n category: 'Component Settings',\n} as const;\n\nconst showValueLabels = {\n name: 'showValueLabels',\n type: 'boolean',\n label: 'Show value labels',\n defaultValue: true,\n category: 'Component Settings',\n} as const;\n\nconst showTotalLabels = {\n name: 'showTotalLabels',\n type: 'boolean',\n label: 'Show total labels',\n defaultValue: false,\n category: 'Component Settings',\n} as const;\n\nconst showLogarithmicScale = {\n name: 'showLogarithmicScale',\n type: 'boolean',\n label: 'Show logarithmic scale',\n defaultValue: false,\n category: 'Component Settings',\n} as const;\n\nconst displayPercentages = {\n name: 'displayPercentages',\n type: 'boolean',\n label: 'Display percentages',\n defaultValue: false,\n category: 'Component Settings',\n} as const;\n\nconst color = {\n type: ColorType,\n name: 'color',\n label: 'Color',\n category: 'Component Settings',\n} as const;\n\nconst fontSize = {\n type: 'number',\n name: 'fontSize',\n label: 'Font size',\n category: 'Component Settings',\n} as const;\n\nconst clearable = {\n type: 'boolean',\n name: 'clearable',\n label: 'Can be cleared',\n defaultValue: true,\n category: 'Component Settings',\n} as const;\n\nconst displayNullAs = {\n ...string,\n name: 'displayNullAs',\n label: 'Display null as',\n category: 'Component Settings',\n} as const;\n\nconst xAxisLabel = {\n name: 'xAxisLabel',\n type: 'string',\n label: 'X-axis Label',\n category: 'Axes Settings',\n} as const;\n\nconst yAxisLabel = {\n name: 'yAxisLabel',\n type: 'string',\n label: 'Y-axis label',\n category: 'Axes Settings',\n} as const;\n\nconst reverseXAxis = {\n name: 'reverseXAxis',\n type: 'boolean',\n label: 'Reverse x-axis',\n defaultValue: false,\n category: 'Axes Settings',\n} as const;\n\nconst reverseYAxis = {\n name: 'reverseYAxis',\n type: 'boolean',\n label: 'Reverse y-axis',\n defaultValue: false,\n category: 'Axes Settings',\n} as const;\n\nconst yAxisRangeMin = {\n name: 'yAxisRangeMin',\n type: 'number',\n label: 'Y-axis range min',\n category: 'Axes Settings',\n} as const;\n\nconst yAxisRangeMax = {\n name: 'yAxisRangeMax',\n type: 'number',\n label: 'Y-axis range max',\n category: 'Axes Settings',\n} as const;\n\nconst xAxisRangeMin = {\n name: 'xAxisRangeMin',\n type: 'number',\n label: 'X-axis range min',\n category: 'Axes Settings',\n} as const;\n\nconst xAxisRangeMax = {\n name: 'xAxisRangeMax',\n type: 'number',\n label: 'X-axis range max',\n category: 'Axes Settings',\n} as const;\n\nconst xAxisMaxItems = {\n name: 'xAxisMaxItems',\n type: 'number',\n label: 'Max x-axis items',\n category: 'Axes Settings',\n} as const;\n\nconst yAxisMaxItems = {\n name: 'yAxisMaxItems',\n type: 'number',\n label: 'Max y-axis items',\n category: 'Axes Settings',\n} as const;\n\nexport const inputs = {\n boolean,\n timeRange,\n number,\n string,\n title,\n description,\n tooltip,\n dataset,\n maxLegendItems,\n dimension,\n groupBy,\n dimensionSimple,\n dimensionTime,\n dimensionWithDateBounds,\n dimensionWithGranularitySelectField,\n dimensions,\n dimensionOrMeasure,\n dimensionsAndMeasures,\n measure,\n measures,\n measureOptions,\n dimensionOptions,\n comparisonPeriod,\n maxResults,\n placeholder,\n showLegend,\n showTooltips,\n showValueLabels,\n showTotalLabels,\n showLogarithmicScale,\n displayPercentages,\n color,\n fontSize,\n clearable,\n displayNullAs,\n xAxisLabel,\n yAxisLabel,\n reverseXAxis,\n reverseYAxis,\n yAxisRangeMin,\n yAxisRangeMax,\n xAxisRangeMin,\n xAxisRangeMax,\n xAxisMaxItems,\n yAxisMaxItems,\n granularity,\n granularities,\n} as const;\n"],"names":["DisplayFormatTypeOptions","DisplayFormatType","defineType","value","defineOption","Granularity","defaultGranularitySelectFieldOptions","granularities","AlignType","TableCellStyleType","number","string","boolean","timeRange","width","align","prefix","suffix","displayName","maxCharacters","decimalPlaces","currency","abbreviateLargeNumber","dateBounds","granularity","color","ColorType","displayFormat","tableCellStyle","showGranularityDropdown","dimensionMeasureSubInputs","timeDimensionSubInputs","timeDimensionWithGranularitySelectFieldSubInputs","subInputs","ComparisonPeriodType","title","description","tooltip","dataset","maxLegendItems","dimension","groupBy","dimensionSimple","dimensionTime","dimensionWithDateBounds","dimensionWithGranularitySelectField","dimensions","dimensionOrMeasure","dimensionsAndMeasures","measure","measures","measureOptions","dimensionOptions","comparisonPeriod","maxResults","placeholder","showLegend","showTooltips","showValueLabels","showTotalLabels","showLogarithmicScale","displayPercentages","fontSize","clearable","displayNullAs","xAxisLabel","yAxisLabel","reverseXAxis","reverseYAxis","yAxisRangeMin","yAxisRangeMax","xAxisRangeMin","xAxisRangeMax","xAxisMaxItems","yAxisMaxItems","inputs"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"definition-B-gAgB0F.js","sources":["../src/components/charts/bars/BarChartDefaultPro/index.tsx","../src/components/charts/bars/BarChartDefaultPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { BarChart } from '@embeddable.com/remarkable-ui';\nimport { getBarChartProData, getBarChartProOptions } from '../bars.utils';\nimport { mergician } from 'mergician';\nimport { DataResponse, Dimension, Granularity, Measure } from '@embeddable.com/core';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\n\nexport type BarChartDefaultProProps = {\n dimension: Dimension;\n measures: Measure[];\n results: DataResponse;\n xAxisLabel?: string;\n xAxisMaxItems?: number;\n yAxisLabel?: string;\n yAxisRangeMin?: number;\n yAxisRangeMax?: number;\n showLegend?: boolean;\n showLogarithmicScale?: boolean;\n showTooltips?: boolean;\n showValueLabels?: boolean;\n reverseXAxis?: boolean;\n setGranularity?: (granularity: Granularity) => void;\n onBarClicked?: (args: { axisDimensionValue: string | null }) => void;\n} & ChartCardHeaderProps;\n\nconst BarChartDefaultPro = (props: BarChartDefaultProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n measures,\n yAxisRangeMin,\n xAxisMaxItems,\n yAxisRangeMax,\n showLegend,\n showTooltips,\n showLogarithmicScale,\n showValueLabels,\n reverseXAxis,\n hideMenu,\n dimension,\n setGranularity,\n onBarClicked,\n } = props;\n\n const { tooltip, description, title, xAxisLabel, yAxisLabel } = resolveI18nProps(props);\n\n const results = useFillGaps({\n results: props.results,\n dimension,\n });\n\n const data = getBarChartProData(\n { data: results.data, dimension, measures, maxItems: xAxisMaxItems },\n theme,\n );\n\n const options = mergician(\n getBarChartProOptions({ measures, horizontal: false, onBarClicked, data, dimension }, theme), // Format Y axis based on first measure\n theme.charts?.barChartDefaultPro?.options ?? {},\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, ...measures]}\n errorMessage={results.error}\n description={description}\n title={title}\n tooltip={tooltip}\n hideMenu={hideMenu}\n >\n {setGranularity && (\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={dimension}\n onChange={setGranularity}\n />\n )}\n <BarChart\n data={data}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n showLogarithmicScale={showLogarithmicScale}\n xAxisLabel={xAxisLabel}\n yAxisLabel={yAxisLabel}\n reverseXAxis={reverseXAxis}\n yAxisRangeMin={yAxisRangeMin}\n yAxisRangeMax={yAxisRangeMax}\n options={options}\n />\n </ChartCard>\n );\n};\n\nexport default BarChartDefaultPro;\n","import {\n DataResponse,\n Dimension,\n Granularity,\n LoadDataRequest,\n Value,\n loadData,\n} from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\n\nconst meta = {\n name: 'BarChartDefaultPro',\n label: 'Bar Chart - Default',\n category: 'Bar Charts',\n inputs: [\n inputs.dataset,\n { ...inputs.measures, inputs: [...inputs.measures.inputs, inputs.color] },\n {\n ...inputs.dimensionWithGranularitySelectField,\n label: 'X-axis',\n },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n inputs.xAxisMaxItems,\n inputs.maxResults,\n ],\n events: [\n {\n name: 'onBarClicked',\n label: 'A bar is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport type BarChartDefaultProState = {\n granularity?: Granularity;\n};\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measures: [previewData.measure],\n results: previewData.results1Measure1Dimension,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (\n inputs: Inputs<typeof meta>,\n dimension?: Dimension,\n): LoadDataRequest => ({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, dimension ?? inputs.dimension],\n});\n\nconst loadDataResults = (inputs: Inputs<typeof meta>, dimension: Dimension): DataResponse =>\n loadData(loadDataResultsArgs(inputs, dimension));\n\nconst events = {\n onBarClicked: (value: { axisDimensionValue?: string }) => ({\n axisDimensionValue: value.axisDimensionValue ?? Value.noFilter(),\n }),\n};\n\nconst props = (\n inputs: Inputs<typeof meta>,\n [state, setState]: [BarChartDefaultProState, (state: BarChartDefaultProState) => void],\n) => {\n const dimensionWithGranularity = getDimensionWithGranularity(\n inputs.dimension,\n state?.granularity,\n );\n\n return {\n ...inputs,\n dimension: dimensionWithGranularity,\n setGranularity: (granularity: Granularity) => setState({ granularity }),\n results: loadDataResults(inputs, dimensionWithGranularity),\n };\n};\n\nexport const barChartDefaultPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["BarChartDefaultPro","props","theme","useTheme","i18nSetup","measures","yAxisRangeMin","xAxisMaxItems","yAxisRangeMax","showLegend","showTooltips","showLogarithmicScale","showValueLabels","reverseXAxis","hideMenu","dimension","setGranularity","onBarClicked","tooltip","description","title","xAxisLabel","yAxisLabel","resolveI18nProps","results","useFillGaps","data","getBarChartProData","options","mergician","getBarChartProOptions","_b","_a","granularitySelectorHasMarginTop","jsxs","ChartCard","jsx","ChartGranularitySelectField","BarChart","meta","inputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadData","events","value","Value","state","setState","dimensionWithGranularity","getDimensionWithGranularity","granularity","barChartDefaultPro"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"definition-Bd7Mq9jJ.js","sources":["../src/components/charts/pies/DonutLabelChartPro/index.tsx","../src/components/charts/pies/DonutLabelChartPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { getPieChartProOptions, getPieChartProData } from '../pies.utils';\nimport { DefaultPieChartProps } from '../pies.types';\nimport { DataResponse, Measure } from '@embeddable.com/core';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { DonutChart } from '@embeddable.com/remarkable-ui';\nimport { mergician } from 'mergician';\nimport { resolveI18nProps } from '../../../component.utils';\n\nexport type DonutLabelChartProProps = DefaultPieChartProps & {\n innerLabelMeasure: Measure;\n innerLabelText?: string;\n resultsInnerLabel: DataResponse;\n};\n\nconst DonutChartPro = (props: DonutLabelChartProProps) => {\n const theme = useTheme() as Theme;\n const themeFormatter = getThemeFormatter(theme);\n i18nSetup(theme);\n\n const {\n description,\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n title,\n innerLabelMeasure,\n resultsInnerLabel,\n innerLabelText,\n onSegmentClick,\n } = resolveI18nProps(props);\n\n const { hideMenu } = props;\n\n const data = getPieChartProData(\n { data: results.data, dimension, measure, maxLegendItems },\n theme,\n );\n\n const handleSegmentClick = (index: number | undefined) => {\n if (!onSegmentClick) return;\n\n onSegmentClick({\n dimensionValue: index === undefined ? undefined : results.data?.[index]?.[dimension.name],\n });\n };\n\n const label = themeFormatter.data(\n innerLabelMeasure,\n resultsInnerLabel?.data?.[0]?.[innerLabelMeasure.name],\n );\n\n const options = mergician(\n getPieChartProOptions(measure, theme),\n theme.charts.donutLabelChartPro?.options ?? {},\n );\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\n >\n <DonutChart\n label={label}\n subLabel={innerLabelText}\n data={data}\n options={options}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n onSegmentClick={handleSegmentClick}\n />\n </ChartCard>\n );\n};\n\nexport default DonutChartPro;\n","import { DataResponse, LoadDataRequest, Measure, Value, loadData } from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\n\nconst meta = {\n name: 'DonutLabelChartPro',\n label: 'Donut Label Chart',\n category: 'Pie Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n inputs.dimension,\n { ...inputs.measure, name: 'innerLabelMeasure', label: 'Inner label measure' },\n {\n ...inputs.string,\n name: 'innerLabelText',\n label: 'Inner label text',\n description: 'Text to display inside the donut chart',\n category: 'Component Data',\n },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.maxLegendItems,\n inputs.showTooltips,\n inputs.showValueLabels,\n ],\n events: [\n {\n name: 'onSegmentClick',\n label: 'A segment is clicked',\n properties: [\n {\n name: 'dimensionValue',\n label: 'Clicked dimension',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measure: previewData.measure,\n results: previewData.results1Measure1Dimension,\n innerLabelText: 'Total',\n resultsInnerLabel: {\n isLoading: false,\n error: undefined,\n data: [{ users: 500 }],\n },\n innerLabelMeasure: {\n name: 'users',\n title: 'Users',\n nativeType: 'number',\n __type__: 'measure',\n } as Measure,\n showValueLabels: false,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (inputs: Inputs<typeof meta>): LoadDataRequest => ({\n from: inputs.dataset,\n select: [inputs.measure, inputs.dimension],\n});\n\nconst loadDataResults = (inputs: Inputs<typeof meta>): DataResponse =>\n loadData(loadDataResultsArgs(inputs));\n\nconst loadDataResultsInnerLabelArgs = (inputs: Inputs<typeof meta>): LoadDataRequest => ({\n from: inputs.dataset,\n select: [inputs.innerLabelMeasure],\n});\n\nconst loadDataResultsInnerLabel = (inputs: Inputs<typeof meta>): DataResponse =>\n loadData(loadDataResultsInnerLabelArgs(inputs));\n\nconst events = {\n onSegmentClick: (value: { dimensionValue?: string }) => ({\n dimensionValue: value.dimensionValue ?? Value.noFilter(),\n }),\n};\n\nconst props = (inputs: Inputs<typeof meta>) => ({\n ...inputs,\n results: loadDataResults(inputs),\n resultsInnerLabel: loadDataResultsInnerLabel(inputs),\n});\n\nexport const donutLabelChartPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n resultsInnerLabel: {\n loadDataArgs: loadDataResultsInnerLabelArgs,\n loadData: loadDataResultsInnerLabel,\n },\n} as const;\n"],"names":["DonutChartPro","props","theme","useTheme","themeFormatter","getThemeFormatter","i18nSetup","description","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","title","innerLabelMeasure","resultsInnerLabel","innerLabelText","onSegmentClick","resolveI18nProps","hideMenu","data","getPieChartProData","handleSegmentClick","index","_b","_a","label","options","mergician","getPieChartProOptions","_c","jsx","ChartCard","DonutChart","meta","inputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadData","loadDataResultsInnerLabelArgs","loadDataResultsInnerLabel","events","value","Value","donutLabelChartPro"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"definition-MZjy6eIS.js","sources":["../src/components/charts/pies/PieChartPro/index.tsx","../src/components/charts/pies/PieChartPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { PieChart } from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { getPieChartProOptions, getPieChartProData } from '../pies.utils';\nimport { DefaultPieChartProps } from '../pies.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { mergician } from 'mergician';\nimport { resolveI18nProps } from '../../../component.utils';\n\nexport type PieChartProProps = DefaultPieChartProps;\n\nconst PieChartPro = (props: PieChartProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n description,\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n title,\n onSegmentClick,\n } = resolveI18nProps(props);\n\n const { hideMenu } = props;\n\n const data = getPieChartProData(\n { data: results.data, dimension, measure, maxLegendItems },\n theme,\n );\n\n const options = mergician(\n getPieChartProOptions(measure, theme),\n theme.charts.pieChartPro?.options ?? {},\n );\n\n const handleSegmentClick = (index: number | undefined) => {\n if (!onSegmentClick) return;\n\n onSegmentClick({\n dimensionValue: index === undefined ? undefined : results.data?.[index]?.[dimension.name],\n });\n };\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\n >\n <PieChart\n data={data}\n options={options}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n onSegmentClick={handleSegmentClick}\n />\n </ChartCard>\n );\n};\n\nexport default PieChartPro;\n","import { DataResponse, LoadDataRequest, Value, loadData } from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\n\nconst meta = {\n name: 'PieChartPro',\n label: 'Pie Chart',\n category: 'Pie Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n inputs.dimension,\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.maxLegendItems,\n inputs.showTooltips,\n inputs.showValueLabels,\n ],\n events: [\n {\n name: 'onSegmentClick',\n label: 'A segment is clicked',\n properties: [\n {\n name: 'dimensionValue',\n label: 'Clicked dimension',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measure: previewData.measure,\n results: previewData.results1Measure1Dimension,\n showValueLabels: false,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (inputs: Inputs<typeof meta>): LoadDataRequest => ({\n from: inputs.dataset,\n select: [inputs.measure, inputs.dimension],\n});\n\nconst loadDataResults = (inputs: Inputs<typeof meta>): DataResponse =>\n loadData(loadDataResultsArgs(inputs));\n\nconst events = {\n onSegmentClick: (value: { dimensionValue?: string }) => ({\n dimensionValue: value.dimensionValue ?? Value.noFilter(),\n }),\n};\n\nconst props = (inputs: Inputs<typeof meta>) => ({\n ...inputs,\n results: loadDataResults(inputs),\n});\n\nexport const pieChartPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["PieChartPro","props","theme","useTheme","i18nSetup","description","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","title","onSegmentClick","resolveI18nProps","hideMenu","data","getPieChartProData","options","mergician","getPieChartProOptions","_a","handleSegmentClick","index","_b","jsx","ChartCard","PieChart","meta","inputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadData","events","value","Value","pieChartPro"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"definition-qU43EQTj.js","sources":["../src/components/charts/bars/BarChartDefaultHorizontalPro/index.tsx","../src/components/charts/bars/BarChartDefaultHorizontalPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { BarChart } from '@embeddable.com/remarkable-ui';\nimport { getBarChartProData, getBarChartProOptions } from '../bars.utils';\nimport { mergician } from 'mergician';\nimport { DataResponse, Dimension, Granularity, Measure } from '@embeddable.com/core';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { ChartGranularitySelectField } from '../../shared/ChartGranularitySelectField/ChartGranularitySelectField';\n\nexport type BarChartDefaultHorizontalProProps = {\n dimension: Dimension;\n measures: Measure[];\n results: DataResponse;\n reverseYAxis?: boolean;\n showLegend?: boolean;\n showLogarithmicScale?: boolean;\n showTooltips?: boolean;\n showValueLabels?: boolean;\n xAxisLabel?: string;\n xAxisRangeMax?: number;\n xAxisRangeMin?: number;\n yAxisLabel?: string;\n yAxisMaxItems?: number;\n setGranularity?: (granularity: Granularity) => void;\n onBarClicked?: (args: { axisDimensionValue: string | null }) => void;\n} & ChartCardHeaderProps;\n\nconst BarChartDefaultHorizontalPro = (props: BarChartDefaultHorizontalProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n hideMenu,\n dimension,\n measures,\n showValueLabels,\n reverseYAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n xAxisRangeMax,\n xAxisRangeMin,\n yAxisMaxItems,\n setGranularity,\n onBarClicked,\n } = props;\n\n const { description, title, tooltip, xAxisLabel, yAxisLabel } = resolveI18nProps(props);\n\n const results = useFillGaps({\n results: props.results,\n dimension,\n });\n\n const data = getBarChartProData(\n { data: results.data, dimension, measures, maxItems: yAxisMaxItems },\n theme,\n );\n\n const options = mergician(\n getBarChartProOptions({ measures, horizontal: true, onBarClicked, data, dimension }, theme), // Format X axis based on first measure\n theme.charts?.barChartDefaultHorizontalPro?.options ?? {},\n );\n\n const granularitySelectorHasMarginTop = !title && !description && !tooltip;\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, ...measures]}\n errorMessage={results.error}\n description={description}\n title={title}\n tooltip={tooltip}\n hideMenu={hideMenu}\n >\n {setGranularity && (\n <ChartGranularitySelectField\n hasMarginTop={granularitySelectorHasMarginTop}\n dimension={dimension}\n onChange={setGranularity}\n />\n )}\n <BarChart\n horizontal\n data={data}\n options={options}\n reverseYAxis={reverseYAxis}\n showLegend={showLegend}\n showLogarithmicScale={showLogarithmicScale}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n xAxisLabel={xAxisLabel}\n xAxisRangeMax={xAxisRangeMax}\n xAxisRangeMin={xAxisRangeMin}\n yAxisLabel={yAxisLabel}\n />\n </ChartCard>\n );\n};\n\nexport default BarChartDefaultHorizontalPro;\n","import {\n DataResponse,\n Dimension,\n Granularity,\n LoadDataRequest,\n Value,\n loadData,\n} from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\n\nconst meta = {\n name: 'BarChartDefaultHorizontalPro',\n label: 'Bar Chart - Default Horizontal',\n category: 'Bar Charts',\n inputs: [\n inputs.dataset,\n { ...inputs.measures, inputs: [...inputs.measures.inputs, inputs.color] },\n { ...inputs.dimensionWithGranularitySelectField, label: 'Y-axis' },\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseYAxis,\n inputs.xAxisRangeMin,\n inputs.xAxisRangeMax,\n inputs.yAxisMaxItems,\n inputs.maxResults,\n ],\n events: [\n {\n name: 'onBarClicked',\n label: 'A bar is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport type BarChartDefaultHorizontalProState = {\n granularity?: Granularity;\n};\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measures: [previewData.measure],\n results: previewData.results1Measure1Dimension,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (\n inputs: Inputs<typeof meta>,\n dimension?: Dimension,\n): LoadDataRequest => ({\n from: inputs.dataset,\n select: [...inputs.measures, dimension ?? inputs.dimension],\n limit: inputs.maxResults,\n});\n\nconst loadDataResults = (inputs: Inputs<typeof meta>, dimension: Dimension): DataResponse =>\n loadData(loadDataResultsArgs(inputs, dimension));\n\nconst events = {\n onBarClicked: (value: { axisDimensionValue?: string }) => ({\n axisDimensionValue: value.axisDimensionValue ?? Value.noFilter(),\n }),\n};\n\nconst props = (\n inputs: Inputs<typeof meta>,\n [state, setState]: [\n BarChartDefaultHorizontalProState,\n (state: BarChartDefaultHorizontalProState) => void,\n ],\n) => {\n const dimensionWithGranularity = getDimensionWithGranularity(\n inputs.dimension,\n state?.granularity,\n );\n\n return {\n ...inputs,\n dimension: dimensionWithGranularity,\n setGranularity: (granularity: Granularity) => setState({ granularity }),\n results: loadDataResults(inputs, dimensionWithGranularity),\n };\n};\n\nexport const barChartDefaultHorizontalPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["BarChartDefaultHorizontalPro","props","theme","useTheme","i18nSetup","hideMenu","dimension","measures","showValueLabels","reverseYAxis","showLegend","showLogarithmicScale","showTooltips","xAxisRangeMax","xAxisRangeMin","yAxisMaxItems","setGranularity","onBarClicked","description","title","tooltip","xAxisLabel","yAxisLabel","resolveI18nProps","results","useFillGaps","data","getBarChartProData","options","mergician","getBarChartProOptions","_b","_a","granularitySelectorHasMarginTop","jsxs","ChartCard","jsx","ChartGranularitySelectField","BarChart","meta","inputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadData","events","value","Value","state","setState","dimensionWithGranularity","getDimensionWithGranularity","granularity","barChartDefaultHorizontalPro"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"definition-xVmuVR7S.js","sources":["../src/components/charts/pies/DonutChartPro/index.tsx","../src/components/charts/pies/DonutChartPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { getPieChartProOptions, getPieChartProData } from '../pies.utils';\nimport { DefaultPieChartProps } from '../pies.types';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard } from '../../shared/ChartCard/ChartCard';\nimport { DonutChart } from '@embeddable.com/remarkable-ui';\nimport { mergician } from 'mergician';\nimport { resolveI18nProps } from '../../../component.utils';\n\nexport type DonutChartProProps = DefaultPieChartProps;\n\nconst DonutChartPro = (props: DonutChartProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n description,\n dimension,\n maxLegendItems,\n measure,\n results,\n showLegend,\n showTooltips,\n showValueLabels,\n title,\n onSegmentClick,\n } = resolveI18nProps(props);\n\n const { hideMenu } = props;\n\n const data = getPieChartProData(\n { data: results.data, dimension, measure, maxLegendItems },\n theme,\n );\n\n const options = mergician(\n getPieChartProOptions(measure, theme),\n theme.charts.donutChartPro?.options ?? {},\n );\n\n const handleSegmentClick = (index: number | undefined) => {\n if (!onSegmentClick) return;\n onSegmentClick({\n dimensionValue: index === undefined ? undefined : results.data?.[index]?.[dimension.name],\n });\n };\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[dimension, measure]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\n >\n <DonutChart\n data={data}\n options={options}\n showLegend={showLegend}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n onSegmentClick={handleSegmentClick}\n />\n </ChartCard>\n );\n};\n\nexport default DonutChartPro;\n","import { DataResponse, LoadDataRequest, Value, loadData } from '@embeddable.com/core';\nimport { definePreview, EmbeddedComponentMeta, Inputs } from '@embeddable.com/react';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\n\nconst meta = {\n name: 'DonutChartPro',\n label: 'Donut Chart',\n category: 'Pie Charts',\n inputs: [\n inputs.dataset,\n inputs.measure,\n inputs.dimension,\n inputs.title,\n inputs.description,\n inputs.tooltip,\n inputs.showLegend,\n inputs.maxLegendItems,\n inputs.showTooltips,\n inputs.showValueLabels,\n ],\n events: [\n {\n name: 'onSegmentClick',\n label: 'A segment is clicked',\n properties: [\n {\n name: 'dimensionValue',\n label: 'Clicked dimension',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst previewConfig = {\n dimension: previewData.dimension,\n measure: previewData.measure,\n results: previewData.results1Measure1Dimension,\n showValueLabels: false,\n hideMenu: true,\n};\n\nconst preview = definePreview(Component, previewConfig);\n\nconst loadDataResultsArgs = (inputs: Inputs<typeof meta>): LoadDataRequest => ({\n from: inputs.dataset,\n select: [inputs.measure, inputs.dimension],\n});\n\nconst loadDataResults = (inputs: Inputs<typeof meta>): DataResponse =>\n loadData(loadDataResultsArgs(inputs));\n\nconst events = {\n onSegmentClick: (value: { dimensionValue?: string }) => ({\n dimensionValue: value.dimensionValue ?? Value.noFilter(),\n }),\n};\n\nconst props = (inputs: Inputs<typeof meta>) => ({\n ...inputs,\n results: loadDataResults(inputs),\n});\n\nexport const donutChartPro = {\n Component,\n meta,\n preview,\n previewConfig,\n config: {\n props,\n events,\n },\n results: {\n loadDataArgs: loadDataResultsArgs,\n loadData: loadDataResults,\n },\n} as const;\n"],"names":["DonutChartPro","props","theme","useTheme","i18nSetup","description","dimension","maxLegendItems","measure","results","showLegend","showTooltips","showValueLabels","title","onSegmentClick","resolveI18nProps","hideMenu","data","getPieChartProData","options","mergician","getPieChartProOptions","_a","handleSegmentClick","index","_b","jsx","ChartCard","DonutChart","meta","inputs","previewConfig","previewData","preview","definePreview","Component","loadDataResultsArgs","loadDataResults","loadData","events","value","Value","donutChartPro"],"mappings":"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"}
@@ -1,77 +0,0 @@
1
- import { r as c, h as g } from "./charts.utils-Cdvxu110.js";
2
- import { g as u } from "./preview.data.constants-D0uQPYd1.js";
3
- import { a as l } from "./styles.utils-BfpH_m_W.js";
4
- import { g as b } from "./Color.type.emb-BBdbJHvt.js";
5
- import { i as f } from "./component.utils-DNw0iugA.js";
6
- const F = (a, n = c) => {
7
- const s = u(n);
8
- if (!a.data)
9
- return {
10
- labels: [],
11
- datasets: [{ data: [] }]
12
- };
13
- const t = g(
14
- a.data,
15
- a.dimension,
16
- [a.measure],
17
- a.maxLegendItems
18
- ), r = b(), i = t.map(
19
- (e, o) => l({
20
- dimensionOrMeasure: a.dimension,
21
- theme: n,
22
- color: "background",
23
- value: `${a.dimension.name}.${e[a.dimension.name]}`,
24
- chartColors: r,
25
- index: o
26
- })
27
- ), m = t.map(
28
- (e, o) => l({
29
- dimensionOrMeasure: a.dimension,
30
- theme: n,
31
- color: "border",
32
- value: `${a.dimension.name}.${e[a.dimension.name]}`,
33
- chartColors: r,
34
- index: o
35
- })
36
- );
37
- return {
38
- labels: t.map((e) => {
39
- const o = e[a.dimension.name], d = s.data(a.dimension, o);
40
- return o === d ? f.t(o) : d;
41
- }),
42
- datasets: [
43
- {
44
- data: t.map((e) => e[a.measure.name]),
45
- backgroundColor: i,
46
- borderColor: m
47
- }
48
- ]
49
- };
50
- }, M = (a, n = c) => {
51
- const s = u(n);
52
- return {
53
- plugins: {
54
- legend: { position: n.charts.legendPosition ?? "bottom" },
55
- datalabels: {
56
- formatter: (t) => s.data(a, t)
57
- },
58
- tooltip: {
59
- callbacks: {
60
- label(t) {
61
- const r = t.raw, i = t.dataset.data.reduce(
62
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
63
- (e, o) => e + parseFloat(o),
64
- 0
65
- ), m = Math.round(r / i * 100);
66
- return `${s.data(a, r)} (${m}%)`;
67
- }
68
- }
69
- }
70
- }
71
- };
72
- };
73
- export {
74
- M as a,
75
- F as g
76
- };
77
- //# sourceMappingURL=pies.utils-D1eHYGQw.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pies.utils-D1eHYGQw.js","sources":["../src/components/charts/pies/pies.utils.ts"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { groupTailAsOther } from '../charts.utils';\nimport { Theme } from '../../../theme/theme.types';\nimport { remarkableTheme } from '../../../theme/theme.constants';\nimport { getThemeFormatter } from '../../../theme/formatter/formatter.utils';\nimport { getDimensionMeasureColor } from '../../../theme/styles/styles.utils';\nimport { getChartColors } from '@embeddable.com/remarkable-ui';\nimport { i18n } from '../../../theme/i18n/i18n';\n\nexport const getPieChartProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measure: Measure;\n maxLegendItems?: number;\n },\n theme: Theme = remarkableTheme,\n): ChartData<'pie'> => {\n const themeFormatter = getThemeFormatter(theme);\n\n if (!props.data)\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n\n const groupedData = groupTailAsOther(\n props.data,\n props.dimension,\n [props.measure],\n props.maxLegendItems,\n );\n\n const chartColors = getChartColors();\n const backgroundColor = groupedData.map((item, index) =>\n getDimensionMeasureColor({\n dimensionOrMeasure: props.dimension,\n theme,\n color: 'background',\n value: `${props.dimension.name}.${item[props.dimension.name]}`,\n chartColors,\n index,\n }),\n );\n\n const borderColor = groupedData.map((item, index) =>\n getDimensionMeasureColor({\n dimensionOrMeasure: props.dimension,\n theme,\n color: 'border',\n value: `${props.dimension.name}.${item[props.dimension.name]}`,\n chartColors,\n index,\n }),\n );\n\n return {\n labels: groupedData.map((item) => {\n const value = item[props.dimension.name];\n const formattedValue = themeFormatter.data(props.dimension, value);\n\n // If formatter did not work, try i18n translation\n if (value === formattedValue) {\n return i18n.t(value);\n }\n return formattedValue;\n }),\n datasets: [\n {\n data: groupedData.map((item) => item[props.measure.name]),\n backgroundColor,\n borderColor,\n },\n ],\n };\n};\n\nexport const getPieChartProOptions = (\n measure: Measure,\n theme: Theme = remarkableTheme,\n): Partial<ChartOptions<'pie'>> => {\n const themeFormatter = getThemeFormatter(theme);\n\n return {\n plugins: {\n legend: { position: theme.charts.legendPosition ?? 'bottom' },\n datalabels: {\n formatter: (value: string | number) => themeFormatter.data(measure, value),\n },\n tooltip: {\n callbacks: {\n label(context) {\n const raw = context.raw as number;\n const total = context.dataset.data.reduce(\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (sum: number, v: any) => sum + parseFloat(v),\n 0,\n );\n const pct = Math.round((raw / total) * 100);\n return `${themeFormatter.data(measure, raw)} (${pct}%)`;\n },\n },\n },\n },\n };\n};\n"],"names":["getPieChartProData","props","theme","remarkableTheme","themeFormatter","getThemeFormatter","groupedData","groupTailAsOther","chartColors","getChartColors","backgroundColor","item","index","getDimensionMeasureColor","borderColor","value","formattedValue","i18n","getPieChartProOptions","measure","context","raw","total","sum","v","pct"],"mappings":";;;;;AAUO,MAAMA,IAAqB,CAChCC,GAMAC,IAAeC,MACM;AACrB,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,MAAI,CAACD,EAAM;AACT,WAAO;AAAA,MACL,QAAQ,CAAA;AAAA,MACR,UAAU,CAAC,EAAE,MAAM,IAAI;AAAA,IAAA;AAG3B,QAAMK,IAAcC;AAAA,IAClBN,EAAM;AAAA,IACNA,EAAM;AAAA,IACN,CAACA,EAAM,OAAO;AAAA,IACdA,EAAM;AAAA,EAAA,GAGFO,IAAcC,EAAA,GACdC,IAAkBJ,EAAY;AAAA,IAAI,CAACK,GAAMC,MAC7CC,EAAyB;AAAA,MACvB,oBAAoBZ,EAAM;AAAA,MAC1B,OAAAC;AAAA,MACA,OAAO;AAAA,MACP,OAAO,GAAGD,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MAC5D,aAAAO;AAAA,MACA,OAAAI;AAAA,IAAA,CACD;AAAA,EAAA,GAGGE,IAAcR,EAAY;AAAA,IAAI,CAACK,GAAMC,MACzCC,EAAyB;AAAA,MACvB,oBAAoBZ,EAAM;AAAA,MAC1B,OAAAC;AAAA,MACA,OAAO;AAAA,MACP,OAAO,GAAGD,EAAM,UAAU,IAAI,IAAIU,EAAKV,EAAM,UAAU,IAAI,CAAC;AAAA,MAC5D,aAAAO;AAAA,MACA,OAAAI;AAAA,IAAA,CACD;AAAA,EAAA;AAGH,SAAO;AAAA,IACL,QAAQN,EAAY,IAAI,CAACK,MAAS;AAChC,YAAMI,IAAQJ,EAAKV,EAAM,UAAU,IAAI,GACjCe,IAAiBZ,EAAe,KAAKH,EAAM,WAAWc,CAAK;AAGjE,aAAIA,MAAUC,IACLC,EAAK,EAAEF,CAAK,IAEdC;AAAA,IACT,CAAC;AAAA,IACD,UAAU;AAAA,MACR;AAAA,QACE,MAAMV,EAAY,IAAI,CAACK,MAASA,EAAKV,EAAM,QAAQ,IAAI,CAAC;AAAA,QACxD,iBAAAS;AAAA,QACA,aAAAI;AAAA,MAAA;AAAA,IACF;AAAA,EACF;AAEJ,GAEaI,IAAwB,CACnCC,GACAjB,IAAeC,MACkB;AACjC,QAAMC,IAAiBC,EAAkBH,CAAK;AAE9C,SAAO;AAAA,IACL,SAAS;AAAA,MACP,QAAQ,EAAE,UAAUA,EAAM,OAAO,kBAAkB,SAAA;AAAA,MACnD,YAAY;AAAA,QACV,WAAW,CAACa,MAA2BX,EAAe,KAAKe,GAASJ,CAAK;AAAA,MAAA;AAAA,MAE3E,SAAS;AAAA,QACP,WAAW;AAAA,UACT,MAAMK,GAAS;AACb,kBAAMC,IAAMD,EAAQ,KACdE,IAAQF,EAAQ,QAAQ,KAAK;AAAA;AAAA,cAEjC,CAACG,GAAaC,MAAWD,IAAM,WAAWC,CAAC;AAAA,cAC3C;AAAA,YAAA,GAEIC,IAAM,KAAK,MAAOJ,IAAMC,IAAS,GAAG;AAC1C,mBAAO,GAAGlB,EAAe,KAAKe,GAASE,CAAG,CAAC,KAAKI,CAAG;AAAA,UACrD;AAAA,QAAA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEJ;"}