@embeddable.com/remarkable-pro 0.0.21 → 0.0.22
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.
- package/dist/BarChartDefaultHorizontalPro.js +17 -10
- package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
- package/dist/BarChartDefaultPro.js +17 -10
- package/dist/BarChartDefaultPro.js.map +1 -1
- package/dist/BarChartGroupedHorizontalPro.js +19 -11
- package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
- package/dist/BarChartGroupedPro.js +19 -11
- package/dist/BarChartGroupedPro.js.map +1 -1
- package/dist/BarChartStackedHorizontalPro.js +18 -10
- package/dist/BarChartStackedHorizontalPro.js.map +1 -1
- package/dist/BarChartStackedPro.js +19 -11
- package/dist/BarChartStackedPro.js.map +1 -1
- package/dist/ChartCard-B3B1rFYh.js +116 -0
- package/dist/ChartCard-B3B1rFYh.js.map +1 -0
- package/dist/{Color.type.emb-Dkh_ZrO6.js → Color.type.emb-sebikYGW.js} +8424 -8398
- package/dist/{Color.type.emb-Dkh_ZrO6.js.map → Color.type.emb-sebikYGW.js.map} +1 -1
- package/dist/ColorEditor.js +1 -1
- package/dist/ComparisonPeriodSelectFieldPro.js +11 -8
- package/dist/ComparisonPeriodSelectFieldPro.js.map +1 -1
- package/dist/DateRangePickerCustomPro.js +33 -28
- package/dist/DateRangePickerCustomPro.js.map +1 -1
- package/dist/DateRangeSelectFieldPro.js +12 -8
- package/dist/DateRangeSelectFieldPro.js.map +1 -1
- package/dist/DonutChartPro.js +23 -15
- package/dist/DonutChartPro.js.map +1 -1
- package/dist/DonutLabelChartPro.js +31 -11
- package/dist/DonutLabelChartPro.js.map +1 -1
- package/dist/{EditorCard-1Z3UFd1D.js → EditorCard-DpSCsmZJ.js} +3 -3
- package/dist/{EditorCard-1Z3UFd1D.js.map → EditorCard-DpSCsmZJ.js.map} +1 -1
- package/dist/GranularitySelectFieldPro.js +97 -81
- package/dist/GranularitySelectFieldPro.js.map +1 -1
- package/dist/HeatMapPro.js +18 -10
- package/dist/HeatMapPro.js.map +1 -1
- package/dist/IconCalendarFilled-Bfm3jkzE.js +12 -0
- package/dist/IconCalendarFilled-Bfm3jkzE.js.map +1 -0
- package/dist/KpiChartNumberComparisonPro.js +25 -14
- package/dist/KpiChartNumberComparisonPro.js.map +1 -1
- package/dist/KpiChartNumberPro.js +23 -14
- package/dist/KpiChartNumberPro.js.map +1 -1
- package/dist/LineChartComparisonDefaultPro.js +37 -19
- package/dist/LineChartComparisonDefaultPro.js.map +1 -1
- package/dist/LineChartDefaultPro.js +21 -14
- package/dist/LineChartDefaultPro.js.map +1 -1
- package/dist/LineChartGroupedPro.js +25 -17
- package/dist/LineChartGroupedPro.js.map +1 -1
- package/dist/MultiSelectFieldPro.js +22 -16
- package/dist/MultiSelectFieldPro.js.map +1 -1
- package/dist/PieChartPro.js +23 -15
- package/dist/PieChartPro.js.map +1 -1
- package/dist/PivotTablePro.js +19 -11
- package/dist/PivotTablePro.js.map +1 -1
- package/dist/SingleSelectFieldPro.js +22 -16
- package/dist/SingleSelectFieldPro.js.map +1 -1
- package/dist/TableChartPaginated.js +62 -43
- package/dist/TableChartPaginated.js.map +1 -1
- package/dist/TableScrollable.js +324 -315
- package/dist/TableScrollable.js.map +1 -1
- package/dist/{bars.utils-CsJD9MNL.js → bars.utils-jvwOEGnf.js} +10 -9
- package/dist/bars.utils-jvwOEGnf.js.map +1 -0
- package/dist/{charts.utils-CUPowt7F.js → charts.utils-Q9qc_Fq5.js} +4 -4
- package/dist/{charts.utils-CUPowt7F.js.map → charts.utils-Q9qc_Fq5.js.map} +1 -1
- package/dist/{component.inputs.constants-CNdmawDt.js → component.inputs.constants-Ds7YpNhT.js} +35 -35
- package/dist/{component.inputs.constants-CNdmawDt.js.map → component.inputs.constants-Ds7YpNhT.js.map} +1 -1
- package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts +11 -12
- package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts +11 -12
- package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts +10 -11
- package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts +10 -11
- package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts +10 -11
- package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/BarChartStackedPro/index.d.ts +10 -11
- package/dist/components/charts/bars/BarChartStackedPro/index.d.ts.map +1 -1
- package/dist/components/charts/bars/bars.utils.d.ts +1 -1
- package/dist/components/charts/bars/bars.utils.d.ts.map +1 -1
- package/dist/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts +6 -7
- package/dist/components/charts/kpis/KpiChartNumberComparisonPro/index.d.ts.map +1 -1
- package/dist/components/charts/kpis/KpiChartNumberPro/index.d.ts +3 -4
- package/dist/components/charts/kpis/KpiChartNumberPro/index.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.utils.d.ts +3 -3
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.utils.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts +12 -13
- package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.d.ts +1 -1
- package/dist/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts +10 -11
- package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.d.ts +1 -1
- package/dist/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.utils.d.ts.map +1 -1
- package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts +10 -11
- package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts.map +1 -1
- package/dist/components/charts/lines/lines.utils.d.ts +1 -1
- package/dist/components/charts/lines/lines.utils.d.ts.map +1 -1
- package/dist/components/charts/pies/DonutChartPro/index.d.ts.map +1 -1
- package/dist/components/charts/pies/DonutLabelChartPro/index.d.ts +1 -1
- package/dist/components/charts/pies/DonutLabelChartPro/index.d.ts.map +1 -1
- package/dist/components/charts/pies/PieChartPro/index.d.ts.map +1 -1
- package/dist/components/charts/pies/pies.types.d.ts +7 -8
- package/dist/components/charts/pies/pies.types.d.ts.map +1 -1
- package/dist/components/charts/shared/ChartCard/ChartCard.d.ts +1 -1
- package/dist/components/charts/shared/ChartCard/ChartCard.d.ts.map +1 -1
- package/dist/components/charts/tables/HeatMapPro/index.d.ts +3 -4
- package/dist/components/charts/tables/HeatMapPro/index.d.ts.map +1 -1
- package/dist/components/charts/tables/PivotTablePro/index.d.ts +2 -3
- package/dist/components/charts/tables/PivotTablePro/index.d.ts.map +1 -1
- package/dist/components/charts/tables/TableChartPaginated/index.d.ts +6 -8
- package/dist/components/charts/tables/TableChartPaginated/index.d.ts.map +1 -1
- package/dist/components/charts/tables/TableScrollable/index.d.ts +6 -8
- package/dist/components/charts/tables/TableScrollable/index.d.ts.map +1 -1
- package/dist/components/editors/ComparisonPeriodSelectFieldPro/index.d.ts +2 -3
- package/dist/components/editors/ComparisonPeriodSelectFieldPro/index.d.ts.map +1 -1
- package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts.map +1 -1
- package/dist/components/editors/GranularitySelectFieldPro/index.d.ts +6 -6
- package/dist/components/editors/GranularitySelectFieldPro/index.d.ts.map +1 -1
- package/dist/components/editors/MultiSelectFieldPro/index.d.ts +4 -5
- package/dist/components/editors/MultiSelectFieldPro/index.d.ts.map +1 -1
- package/dist/components/editors/SingleSelectFieldPro/index.d.ts +4 -5
- package/dist/components/editors/SingleSelectFieldPro/index.d.ts.map +1 -1
- package/dist/components/editors/dates/DateRangePickerCustomPro/index.d.ts +3 -4
- package/dist/components/editors/dates/DateRangePickerCustomPro/index.d.ts.map +1 -1
- package/dist/components/editors/dates/DateRangePickerPresetsPro/index.d.ts +3 -4
- package/dist/components/editors/dates/DateRangePickerPresetsPro/index.d.ts.map +1 -1
- package/dist/components/preview.data.constants.d.ts +18 -0
- package/dist/components/preview.data.constants.d.ts.map +1 -0
- package/dist/embeddable-components.json +37 -12
- package/dist/{formatter.utils-BiWZBhcE.js → formatter.utils-tS15PLXn.js} +2 -2
- package/dist/{formatter.utils-BiWZBhcE.js.map → formatter.utils-tS15PLXn.js.map} +1 -1
- package/dist/index--Dbq1zrZ.js +31 -0
- package/dist/index--Dbq1zrZ.js.map +1 -0
- package/dist/index-9_2gSWFU.js +83 -0
- package/dist/index-9_2gSWFU.js.map +1 -0
- package/dist/index-APU1GD5M.js +166 -0
- package/dist/index-APU1GD5M.js.map +1 -0
- package/dist/index-BDRs__KW.js +113 -0
- package/dist/index-BDRs__KW.js.map +1 -0
- package/dist/index-BNZ1R6AK.js +84 -0
- package/dist/index-BNZ1R6AK.js.map +1 -0
- package/dist/index-BUk63KEk.js +87 -0
- package/dist/index-BUk63KEk.js.map +1 -0
- package/dist/index-BsWftigv.js +123 -0
- package/dist/index-BsWftigv.js.map +1 -0
- package/dist/index-C0pj3lvE.js +73 -0
- package/dist/index-C0pj3lvE.js.map +1 -0
- package/dist/{index-CSoASUv1.js → index-CBgU-nlM.js} +5 -5
- package/dist/index-CBgU-nlM.js.map +1 -0
- package/dist/{index-tjFCL7Y-.js → index-CCdQwMMN.js} +6 -6
- package/dist/index-CCdQwMMN.js.map +1 -0
- package/dist/{index-DoFkdyxp.js → index-CDtF3MO_.js} +45 -36
- package/dist/index-CDtF3MO_.js.map +1 -0
- package/dist/{index-Du2TCRQq.js → index-CTC3YNmw.js} +5 -5
- package/dist/index-CTC3YNmw.js.map +1 -0
- package/dist/index-ClKPfSrQ.js +63 -0
- package/dist/index-ClKPfSrQ.js.map +1 -0
- package/dist/index-DbizaE6y.js +72 -0
- package/dist/index-DbizaE6y.js.map +1 -0
- package/dist/index-KxvT6RdK.js +63 -0
- package/dist/index-KxvT6RdK.js.map +1 -0
- package/dist/index-Nj7bJ8tg.js +161 -0
- package/dist/index-Nj7bJ8tg.js.map +1 -0
- package/dist/index-Y3ALLAIp.js +82 -0
- package/dist/index-Y3ALLAIp.js.map +1 -0
- package/dist/index-dv4kCcao.js +75 -0
- package/dist/index-dv4kCcao.js.map +1 -0
- package/dist/index-h3GKi8po.js +332 -0
- package/dist/index-h3GKi8po.js.map +1 -0
- package/dist/{index-yOOAOJHG.js → index-t4O5NpPA.js} +32 -31
- package/dist/index-t4O5NpPA.js.map +1 -0
- package/dist/index-t7YCtFvf.js +97 -0
- package/dist/index-t7YCtFvf.js.map +1 -0
- package/dist/index.js +29 -29
- package/dist/lines.utils-COGf_F0b.js +40 -0
- package/dist/lines.utils-COGf_F0b.js.map +1 -0
- package/dist/{pies.utils-DCy5LWcY.js → pies.utils-LUs6Ak8R.js} +12 -12
- package/dist/{pies.utils-DCy5LWcY.js.map → pies.utils-LUs6Ak8R.js.map} +1 -1
- package/dist/preview.data.constants-tDMYNi0n.js +71 -0
- package/dist/preview.data.constants-tDMYNi0n.js.map +1 -0
- package/dist/{tables.utils-8OmfcPmH.js → tables.utils-DzHoBZUS.js} +4 -4
- package/dist/{tables.utils-8OmfcPmH.js.map → tables.utils-DzHoBZUS.js.map} +1 -1
- package/dist/{timeRange.utils-81KUBS9O.js → timeRange.utils-Dz0fdD_b.js} +2 -2
- package/dist/{timeRange.utils-81KUBS9O.js.map → timeRange.utils-Dz0fdD_b.js.map} +1 -1
- package/package.json +5 -5
- package/dist/ChartCard-D_A88_bS.js +0 -116
- package/dist/ChartCard-D_A88_bS.js.map +0 -1
- package/dist/bars.utils-CsJD9MNL.js.map +0 -1
- package/dist/index-1vsLONt_.js +0 -111
- package/dist/index-1vsLONt_.js.map +0 -1
- package/dist/index-8PpbF7SA.js +0 -82
- package/dist/index-8PpbF7SA.js.map +0 -1
- package/dist/index-B3m93Z4r.js +0 -81
- package/dist/index-B3m93Z4r.js.map +0 -1
- package/dist/index-BBcQWvRk.js +0 -159
- package/dist/index-BBcQWvRk.js.map +0 -1
- package/dist/index-BOI6FOwo.js +0 -62
- package/dist/index-BOI6FOwo.js.map +0 -1
- package/dist/index-Boogtc12.js +0 -71
- package/dist/index-Boogtc12.js.map +0 -1
- package/dist/index-BuBn1ktN.js +0 -83
- package/dist/index-BuBn1ktN.js.map +0 -1
- package/dist/index-CQ_mo5Eg.js +0 -330
- package/dist/index-CQ_mo5Eg.js.map +0 -1
- package/dist/index-CSoASUv1.js.map +0 -1
- package/dist/index-CVJKjJGv.js +0 -72
- package/dist/index-CVJKjJGv.js.map +0 -1
- package/dist/index-Cv4JGkHO.js +0 -95
- package/dist/index-Cv4JGkHO.js.map +0 -1
- package/dist/index-D5CZAWnJ.js +0 -128
- package/dist/index-D5CZAWnJ.js.map +0 -1
- package/dist/index-DVUJikiN.js +0 -73
- package/dist/index-DVUJikiN.js.map +0 -1
- package/dist/index-Dhzhtagm.js +0 -30
- package/dist/index-Dhzhtagm.js.map +0 -1
- package/dist/index-DkmPuuV8.js +0 -84
- package/dist/index-DkmPuuV8.js.map +0 -1
- package/dist/index-DoFkdyxp.js.map +0 -1
- package/dist/index-Dp7Av-Oy.js +0 -62
- package/dist/index-Dp7Av-Oy.js.map +0 -1
- package/dist/index-Du2TCRQq.js.map +0 -1
- package/dist/index-XTTodJI4.js +0 -163
- package/dist/index-XTTodJI4.js.map +0 -1
- package/dist/index-tjFCL7Y-.js.map +0 -1
- package/dist/index-yOOAOJHG.js.map +0 -1
- package/dist/lines.utils-CFEUUo4k.js +0 -40
- package/dist/lines.utils-CFEUUo4k.js.map +0 -1
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { m as L, j as l, B as M } from "./Color.type.emb-sebikYGW.js";
|
|
2
|
+
import { useTheme as P } from "@embeddable.com/react";
|
|
3
|
+
import { a as k, r as w } from "./component.inputs.constants-Ds7YpNhT.js";
|
|
4
|
+
import { C as T } from "./ChartCard-B3B1rFYh.js";
|
|
5
|
+
import { g as _, b as v } from "./bars.utils-jvwOEGnf.js";
|
|
6
|
+
import { u as O } from "./charts.fillGaps.hooks-C7KsWcZb.js";
|
|
7
|
+
const R = (e) => {
|
|
8
|
+
var n, m;
|
|
9
|
+
const s = P();
|
|
10
|
+
k(s);
|
|
11
|
+
const {
|
|
12
|
+
description: d,
|
|
13
|
+
groupBy: o,
|
|
14
|
+
measure: a,
|
|
15
|
+
reverseXAxis: c,
|
|
16
|
+
showLegend: u,
|
|
17
|
+
showLogarithmicScale: h,
|
|
18
|
+
showTooltips: x,
|
|
19
|
+
showTotalLabels: p,
|
|
20
|
+
showValueLabels: g,
|
|
21
|
+
title: f,
|
|
22
|
+
xAxis: r,
|
|
23
|
+
xAxisLabel: b,
|
|
24
|
+
yAxisLabel: C,
|
|
25
|
+
yAxisRangeMax: A,
|
|
26
|
+
yAxisRangeMin: B,
|
|
27
|
+
onBarClicked: S
|
|
28
|
+
} = w(e), { hideMenu: j } = e, t = O({
|
|
29
|
+
results: e.results,
|
|
30
|
+
dimension: e.xAxis
|
|
31
|
+
}), i = _(
|
|
32
|
+
{
|
|
33
|
+
data: t.data,
|
|
34
|
+
dimension: r,
|
|
35
|
+
groupDimension: o,
|
|
36
|
+
measure: a
|
|
37
|
+
},
|
|
38
|
+
s
|
|
39
|
+
), y = L(
|
|
40
|
+
v(
|
|
41
|
+
{ measures: [a], horizontal: !1, onBarClicked: S, data: i, dimension: r },
|
|
42
|
+
s
|
|
43
|
+
),
|
|
44
|
+
((m = (n = s.charts) == null ? void 0 : n.barChartStackedPro) == null ? void 0 : m.options) || {}
|
|
45
|
+
);
|
|
46
|
+
return /* @__PURE__ */ l.jsx(
|
|
47
|
+
T,
|
|
48
|
+
{
|
|
49
|
+
data: t,
|
|
50
|
+
dimensionsAndMeasures: [a, r, o],
|
|
51
|
+
errorMessage: t.error,
|
|
52
|
+
description: d,
|
|
53
|
+
title: f,
|
|
54
|
+
hideMenu: j,
|
|
55
|
+
children: /* @__PURE__ */ l.jsx(
|
|
56
|
+
M,
|
|
57
|
+
{
|
|
58
|
+
data: i,
|
|
59
|
+
showLegend: u,
|
|
60
|
+
showTooltips: x,
|
|
61
|
+
showValueLabels: g,
|
|
62
|
+
showLogarithmicScale: h,
|
|
63
|
+
xAxisLabel: b,
|
|
64
|
+
yAxisLabel: C,
|
|
65
|
+
reverseXAxis: c,
|
|
66
|
+
yAxisRangeMin: B,
|
|
67
|
+
yAxisRangeMax: A,
|
|
68
|
+
showTotalLabels: p,
|
|
69
|
+
options: y,
|
|
70
|
+
stacked: !0
|
|
71
|
+
}
|
|
72
|
+
)
|
|
73
|
+
}
|
|
74
|
+
);
|
|
75
|
+
}, V = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
76
|
+
__proto__: null,
|
|
77
|
+
default: R
|
|
78
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
79
|
+
export {
|
|
80
|
+
R as B,
|
|
81
|
+
V as i
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=index-9_2gSWFU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-9_2gSWFU.js","sources":["../src/components/charts/bars/BarChartStackedPro/index.tsx"],"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 { getBarChartProOptions, getBarStackedChartProData } from '../bars.utils';\nimport { mergician } from 'mergician';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\n\ntype BarChartStackedProProps = {\n groupBy: Dimension;\n maxLegendItems?: number;\n measure: Measure;\n results: DataResponse;\n reverseXAxis?: boolean;\n showLegend?: boolean;\n showLogarithmicScale?: boolean;\n showTotalLabels?: boolean;\n showTooltips?: boolean;\n showValueLabels?: boolean;\n\n xAxis: Dimension;\n xAxisLabel?: string;\n yAxisLabel?: string;\n yAxisRangeMax?: number;\n yAxisRangeMin?: number;\n onBarClicked?: (args: {\n axisDimensionValue: string | null;\n groupingDimensionValue: string | null;\n }) => void;\n} & ChartCardHeaderProps;\n\nconst BarChartStackedPro = (props: BarChartStackedProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n const {\n description,\n groupBy,\n measure,\n reverseXAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n showTotalLabels,\n showValueLabels,\n title,\n xAxis,\n xAxisLabel,\n yAxisLabel,\n yAxisRangeMax,\n yAxisRangeMin,\n onBarClicked,\n } = resolveI18nProps(props);\n\n const { hideMenu } = props;\n\n const results = useFillGaps({\n results: props.results,\n dimension: props.xAxis,\n });\n\n const data = getBarStackedChartProData(\n {\n data: results.data,\n dimension: xAxis,\n groupDimension: groupBy,\n measure,\n },\n theme,\n );\n\n const options = mergician(\n getBarChartProOptions(\n { measures: [measure], horizontal: false, onBarClicked, data, dimension: xAxis },\n theme,\n ),\n theme.charts?.barChartStackedPro?.options || {},\n );\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[measure, xAxis, groupBy]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\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 showTotalLabels={showTotalLabels}\n options={options}\n stacked\n />\n </ChartCard>\n );\n};\n\nexport default BarChartStackedPro;\n"],"names":["BarChartStackedPro","props","theme","useTheme","i18nSetup","description","groupBy","measure","reverseXAxis","showLegend","showLogarithmicScale","showTooltips","showTotalLabels","showValueLabels","title","xAxis","xAxisLabel","yAxisLabel","yAxisRangeMax","yAxisRangeMin","onBarClicked","resolveI18nProps","hideMenu","results","useFillGaps","data","getBarStackedChartProData","options","mergician","getBarChartProOptions","_b","_a","jsx","ChartCard","BarChart"],"mappings":";;;;;;AAkCA,MAAMA,IAAqB,CAACC,MAAmC;;AAC7D,QAAMC,IAAQC,EAAA;AACd,EAAAC,EAAUF,CAAK;AACf,QAAM;AAAA,IACJ,aAAAG;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC;AAAA,IACA,YAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,YAAAC;AAAA,IACA,eAAAC;AAAA,IACA,eAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,IACEC,EAAiBpB,CAAK,GAEpB,EAAE,UAAAqB,MAAarB,GAEfsB,IAAUC,EAAY;AAAA,IAC1B,SAASvB,EAAM;AAAA,IACf,WAAWA,EAAM;AAAA,EAAA,CAClB,GAEKwB,IAAOC;AAAA,IACX;AAAA,MACE,MAAMH,EAAQ;AAAA,MACd,WAAWR;AAAA,MACX,gBAAgBT;AAAA,MAChB,SAAAC;AAAA,IAAA;AAAA,IAEFL;AAAA,EAAA,GAGIyB,IAAUC;AAAA,IACdC;AAAA,MACE,EAAE,UAAU,CAACtB,CAAO,GAAG,YAAY,IAAO,cAAAa,GAAc,MAAAK,GAAM,WAAWV,EAAA;AAAA,MACzEb;AAAA,IAAA;AAAA,MAEF4B,KAAAC,IAAA7B,EAAM,WAAN,gBAAA6B,EAAc,uBAAd,gBAAAD,EAAkC,YAAW,CAAA;AAAA,EAAC;AAGhD,SACEE,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMV;AAAA,MACN,uBAAuB,CAAChB,GAASQ,GAAOT,CAAO;AAAA,MAC/C,cAAciB,EAAQ;AAAA,MACtB,aAAAlB;AAAA,MACA,OAAAS;AAAA,MACA,UAAAQ;AAAA,MAEA,UAAAU,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAAT;AAAA,UACA,YAAAhB;AAAA,UACA,cAAAE;AAAA,UACA,iBAAAE;AAAA,UACA,sBAAAH;AAAA,UACA,YAAAM;AAAA,UACA,YAAAC;AAAA,UACA,cAAAT;AAAA,UACA,eAAAW;AAAA,UACA,eAAAD;AAAA,UACA,iBAAAN;AAAA,UACA,SAAAe;AAAA,UACA,SAAO;AAAA,QAAA;AAAA,MAAA;AAAA,IACT;AAAA,EAAA;AAGN;;;;"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { e as v, f, m as j, j as L, L as O } from "./Color.type.emb-sebikYGW.js";
|
|
2
|
+
import { useTheme as w } from "@embeddable.com/react";
|
|
3
|
+
import { a as P, r as S } from "./component.inputs.constants-Ds7YpNhT.js";
|
|
4
|
+
import { C as F } from "./ChartCard-B3B1rFYh.js";
|
|
5
|
+
import { g as A } from "./formatter.utils-tS15PLXn.js";
|
|
6
|
+
import { g as R, a as k } from "./object.utils-D_Zzon-H.js";
|
|
7
|
+
import { i as M, s as T } from "./color.utils-BSg_DFOh.js";
|
|
8
|
+
import { u as _ } from "./charts.fillGaps.hooks-C7KsWcZb.js";
|
|
9
|
+
const B = (o, n) => {
|
|
10
|
+
if (!o.data)
|
|
11
|
+
return {
|
|
12
|
+
labels: [],
|
|
13
|
+
datasets: [{ data: [] }]
|
|
14
|
+
};
|
|
15
|
+
const u = A(n), c = R(n), d = o.data;
|
|
16
|
+
return {
|
|
17
|
+
labels: d.map((e) => e[o.dimension.name]),
|
|
18
|
+
datasets: o.measures.map((e, r) => {
|
|
19
|
+
var m, b, C, p;
|
|
20
|
+
const h = !!((m = e.inputs) != null && m.connectGaps), l = d.map((g) => g[e.name] ?? (h ? 0 : null)), i = (b = e.inputs) == null ? void 0 : b.lineColor, a = v(), t = M(i) ? i : k(
|
|
21
|
+
`${c}.charts.backgroundColors`,
|
|
22
|
+
e.name,
|
|
23
|
+
n.charts.backgroundColors ?? a,
|
|
24
|
+
r
|
|
25
|
+
), s = M(i) ? i : k(
|
|
26
|
+
`${c}.charts.borderColors`,
|
|
27
|
+
e.name,
|
|
28
|
+
n.charts.borderColors ?? a,
|
|
29
|
+
r
|
|
30
|
+
);
|
|
31
|
+
return {
|
|
32
|
+
clip: o.hasMinMaxYAxisRange,
|
|
33
|
+
label: u.dimensionOrMeasureTitle(e),
|
|
34
|
+
data: l,
|
|
35
|
+
backgroundColor: T(t, 0.5),
|
|
36
|
+
pointBackgroundColor: t,
|
|
37
|
+
borderDash: (C = e.inputs) != null && C.dashedLine ? [
|
|
38
|
+
f("--em-linechart-line-dash", "0.25rem"),
|
|
39
|
+
f("--em-linechart-line-gap", "0.25rem")
|
|
40
|
+
] : void 0,
|
|
41
|
+
borderColor: s,
|
|
42
|
+
fill: !!((p = e.inputs) != null && p.fillUnderLine)
|
|
43
|
+
};
|
|
44
|
+
})
|
|
45
|
+
};
|
|
46
|
+
}, D = (o, n) => {
|
|
47
|
+
var l, i;
|
|
48
|
+
const { dimension: u, data: c, measures: d, onLineClicked: e } = o, r = A(n);
|
|
49
|
+
return j({
|
|
50
|
+
plugins: {
|
|
51
|
+
datalabels: {
|
|
52
|
+
labels: {
|
|
53
|
+
value: {
|
|
54
|
+
formatter: (a, t) => {
|
|
55
|
+
const s = d[t.datasetIndex];
|
|
56
|
+
return r.data(s, a);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
tooltip: {
|
|
62
|
+
callbacks: {
|
|
63
|
+
title: (a) => {
|
|
64
|
+
var s;
|
|
65
|
+
const t = (s = a[0]) == null ? void 0 : s.label;
|
|
66
|
+
return r.data(u, t);
|
|
67
|
+
},
|
|
68
|
+
label: (a) => {
|
|
69
|
+
const t = d[a.datasetIndex], s = a.raw;
|
|
70
|
+
return `${r.data(u, a.dataset.label) || ""}: ${r.data(t, s)}`;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
scales: {
|
|
76
|
+
x: {
|
|
77
|
+
ticks: {
|
|
78
|
+
callback: (a) => {
|
|
79
|
+
if (!c || !c.labels) return;
|
|
80
|
+
const t = c.labels[Number(a)];
|
|
81
|
+
return r.data(u, t);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
y: {
|
|
86
|
+
ticks: {
|
|
87
|
+
callback: (a) => r.data(d[0], a)
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
onClick: (a, t, s) => {
|
|
92
|
+
if (!e) return;
|
|
93
|
+
const m = t[0], b = m ? s.data.labels[m.index] : null;
|
|
94
|
+
e({
|
|
95
|
+
dimensionValue: b
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
}, ((i = (l = n.charts) == null ? void 0 : l.lineChartDefaultPro) == null ? void 0 : i.options) || {});
|
|
99
|
+
}, $ = (o) => {
|
|
100
|
+
const n = w();
|
|
101
|
+
P(n);
|
|
102
|
+
const { title: u, description: c, xAxisLabel: d, yAxisLabel: e } = S(o), {
|
|
103
|
+
hideMenu: r,
|
|
104
|
+
measures: h,
|
|
105
|
+
xAxis: l,
|
|
106
|
+
reverseXAxis: i,
|
|
107
|
+
showLegend: a,
|
|
108
|
+
showLogarithmicScale: t,
|
|
109
|
+
showTooltips: s,
|
|
110
|
+
showValueLabels: m,
|
|
111
|
+
yAxisRangeMax: b,
|
|
112
|
+
yAxisRangeMin: C,
|
|
113
|
+
onLineClicked: p
|
|
114
|
+
} = o, g = _({
|
|
115
|
+
results: o.results,
|
|
116
|
+
dimension: l
|
|
117
|
+
}), x = B(
|
|
118
|
+
{
|
|
119
|
+
data: g.data,
|
|
120
|
+
dimension: l,
|
|
121
|
+
measures: h,
|
|
122
|
+
hasMinMaxYAxisRange: C != null || b != null
|
|
123
|
+
},
|
|
124
|
+
n
|
|
125
|
+
), y = D(
|
|
126
|
+
{ data: x, dimension: l, measures: h, onLineClicked: p },
|
|
127
|
+
n
|
|
128
|
+
);
|
|
129
|
+
return /* @__PURE__ */ L.jsx(
|
|
130
|
+
F,
|
|
131
|
+
{
|
|
132
|
+
data: g,
|
|
133
|
+
dimensionsAndMeasures: [...h, l],
|
|
134
|
+
errorMessage: g.error,
|
|
135
|
+
description: c,
|
|
136
|
+
title: u,
|
|
137
|
+
hideMenu: r,
|
|
138
|
+
children: /* @__PURE__ */ L.jsx(
|
|
139
|
+
O,
|
|
140
|
+
{
|
|
141
|
+
data: x,
|
|
142
|
+
reverseXAxis: i,
|
|
143
|
+
showLegend: a,
|
|
144
|
+
showLogarithmicScale: t,
|
|
145
|
+
showTooltips: s,
|
|
146
|
+
showValueLabels: m,
|
|
147
|
+
xAxisLabel: d,
|
|
148
|
+
yAxisLabel: e,
|
|
149
|
+
yAxisRangeMax: b,
|
|
150
|
+
yAxisRangeMin: C,
|
|
151
|
+
options: y
|
|
152
|
+
}
|
|
153
|
+
)
|
|
154
|
+
}
|
|
155
|
+
);
|
|
156
|
+
}, U = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
157
|
+
__proto__: null,
|
|
158
|
+
default: $
|
|
159
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
160
|
+
export {
|
|
161
|
+
$ as L,
|
|
162
|
+
D as a,
|
|
163
|
+
B as g,
|
|
164
|
+
U as i
|
|
165
|
+
};
|
|
166
|
+
//# sourceMappingURL=index-APU1GD5M.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-APU1GD5M.js","sources":["../src/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.utils.ts","../src/components/charts/lines/LineChartDefaultPro/index.tsx"],"sourcesContent":["import { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { Theme } from '../../../../theme/theme.types';\nimport { ChartData, ChartOptions } from 'chart.js';\nimport { getThemeFormatter } from '../../../../theme/formatter/formatter.utils';\nimport { getObjectStableKey } from '../../../../utils.ts/object.utils';\nimport { getChartContrastColors, getStyleNumber } from '@embeddable.com/remarkable-ui';\nimport { getColor } from '../../../../theme/styles/styles.utils';\nimport { mergician } from 'mergician';\nimport { isColorValid, setColorAlpha } from '../../../../utils.ts/color.utils';\nimport { LineChartProOptionsClick } from '../lines.utils';\n\nexport const getLineChartProData = (\n props: {\n data: DataResponse['data'];\n dimension: Dimension;\n measures: Measure[];\n hasMinMaxYAxisRange: boolean;\n },\n theme: Theme,\n): ChartData<'line'> => {\n if (!props.data) {\n return {\n labels: [],\n datasets: [{ data: [] }],\n };\n }\n\n const themeFormatter = getThemeFormatter(theme);\n\n const themeKey = getObjectStableKey(theme);\n const groupedData = props.data;\n\n return {\n labels: groupedData.map((item) => {\n return item[props.dimension.name];\n }),\n datasets: props.measures.map((measure, index) => {\n const zeroFill = Boolean(measure.inputs?.['connectGaps']);\n const values = groupedData.map((item) => item[measure.name] ?? (zeroFill ? 0 : null));\n\n const lineColor = measure.inputs?.['lineColor'];\n const chartContrastColors = getChartContrastColors();\n const backgroundColor = isColorValid(lineColor)\n ? lineColor\n : getColor(\n `${themeKey}.charts.backgroundColors`,\n measure.name,\n theme.charts.backgroundColors ?? chartContrastColors,\n index,\n );\n\n const borderColor = isColorValid(lineColor)\n ? lineColor\n : getColor(\n `${themeKey}.charts.borderColors`,\n measure.name,\n theme.charts.borderColors ?? chartContrastColors,\n index,\n );\n\n return {\n clip: props.hasMinMaxYAxisRange,\n label: themeFormatter.dimensionOrMeasureTitle(measure),\n data: values,\n backgroundColor: setColorAlpha(backgroundColor, 0.5),\n pointBackgroundColor: backgroundColor,\n borderDash: measure.inputs?.['dashedLine']\n ? [\n getStyleNumber('--em-linechart-line-dash', '0.25rem'),\n getStyleNumber('--em-linechart-line-gap', '0.25rem'),\n ]\n : undefined,\n borderColor,\n fill: Boolean(measure.inputs?.['fillUnderLine']),\n } as ChartData<'line'>['datasets'][number];\n }),\n };\n};\n\nexport const getLineChartProOptions = (\n options: {\n dimension: Dimension;\n measures: Measure[];\n data: ChartData<'line'>;\n onLineClicked?: LineChartProOptionsClick;\n },\n theme: Theme,\n): ChartOptions<'line'> => {\n const { dimension, data, measures, onLineClicked } = options;\n const themeFormatter = getThemeFormatter(theme);\n\n const lineChartOptions: ChartOptions<'line'> = {\n plugins: {\n datalabels: {\n labels: {\n value: {\n formatter: (value: string | number, context) => {\n const measure = measures[context.datasetIndex]!;\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]!;\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 (!data || !data.labels) return undefined;\n\n const label = data.labels[Number(value)] as string;\n return themeFormatter.data(dimension, label);\n },\n },\n },\n y: {\n ticks: {\n callback: (value) => {\n return themeFormatter.data(measures[0]!, value);\n },\n },\n },\n },\n onClick: (_event, elements, chart) => {\n if (!onLineClicked) return;\n\n const element = elements[0];\n const dimensionValue = (element ? chart.data.labels![element.index] : null) as string | null;\n\n onLineClicked({\n dimensionValue,\n });\n },\n };\n\n return mergician(lineChartOptions, theme.charts?.lineChartDefaultPro?.options || {});\n};\n","import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { i18nSetup } from '../../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { ChartCard, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { getLineChartProData, getLineChartProOptions } from './LineChartDefaultPro.utils';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\nimport { LineChartProOptionsClick } from '../lines.utils';\nimport { LineChart } from '@embeddable.com/remarkable-ui';\n\nexport type LineChartProPropsOnLineClicked = { axisDimensionValue: string | null };\n\ntype LineChartProProp = {\n xAxis: Dimension;\n measures: Measure[];\n results: DataResponse;\n reverseXAxis?: boolean;\n showLegend?: boolean;\n showLogarithmicScale?: boolean;\n showTooltips?: boolean;\n showValueLabels?: boolean;\n\n xAxisLabel?: string;\n yAxisLabel?: string;\n yAxisRangeMax?: number;\n yAxisRangeMin?: number;\n onLineClicked?: LineChartProOptionsClick;\n} & ChartCardHeaderProps;\n\nconst LineChartPro = (props: LineChartProProp) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { title, description, xAxisLabel, yAxisLabel } = resolveI18nProps(props);\n const {\n hideMenu,\n measures,\n xAxis,\n reverseXAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n showValueLabels,\n yAxisRangeMax,\n yAxisRangeMin,\n onLineClicked,\n } = props;\n\n const results = useFillGaps({\n results: props.results,\n dimension: xAxis,\n });\n\n const data = getLineChartProData(\n {\n data: results.data,\n dimension: xAxis,\n measures,\n hasMinMaxYAxisRange: Boolean(yAxisRangeMin != null || yAxisRangeMax != null),\n },\n theme,\n );\n const options = getLineChartProOptions(\n { data, dimension: xAxis, measures, onLineClicked },\n theme,\n );\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[...measures, xAxis]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\n >\n <LineChart\n data={data}\n reverseXAxis={reverseXAxis}\n showLegend={showLegend}\n showLogarithmicScale={showLogarithmicScale}\n showTooltips={showTooltips}\n showValueLabels={showValueLabels}\n xAxisLabel={xAxisLabel}\n yAxisLabel={yAxisLabel}\n yAxisRangeMax={yAxisRangeMax}\n yAxisRangeMin={yAxisRangeMin}\n options={options}\n />\n </ChartCard>\n );\n};\n\nexport default LineChartPro;\n"],"names":["getLineChartProData","props","theme","themeFormatter","getThemeFormatter","themeKey","getObjectStableKey","groupedData","item","measure","index","zeroFill","_a","values","lineColor","_b","chartContrastColors","getChartContrastColors","backgroundColor","isColorValid","getColor","borderColor","setColorAlpha","_c","getStyleNumber","_d","getLineChartProOptions","options","dimension","data","measures","onLineClicked","mergician","value","context","label","raw","_event","elements","chart","element","dimensionValue","LineChartPro","useTheme","i18nSetup","title","description","xAxisLabel","yAxisLabel","resolveI18nProps","hideMenu","xAxis","reverseXAxis","showLegend","showLogarithmicScale","showTooltips","showValueLabels","yAxisRangeMax","yAxisRangeMin","results","useFillGaps","jsx","ChartCard","LineChart"],"mappings":"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"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import { f, u as z, h as E, j as x, T as O, i as A } from "./Color.type.emb-sebikYGW.js";
|
|
2
|
+
import { useTheme as N } from "@embeddable.com/react";
|
|
3
|
+
import { a as G, r as U, i as V } from "./component.inputs.constants-Ds7YpNhT.js";
|
|
4
|
+
import { C as q } from "./ChartCard-B3B1rFYh.js";
|
|
5
|
+
import { useState as B, useRef as F, useCallback as J, useEffect as d } from "react";
|
|
6
|
+
import { b as K, c as Q } from "./tables.utils-DzHoBZUS.js";
|
|
7
|
+
const W = f("--em-tablechart-cell-height", "2.5rem"), X = f("--em-tablechart-cell-height", "2.5rem"), Y = f("--em-tablechart-pagination-height", "3rem");
|
|
8
|
+
let R;
|
|
9
|
+
const Z = (u) => {
|
|
10
|
+
const g = N();
|
|
11
|
+
G(g);
|
|
12
|
+
const [b, p] = B(!1), { description: j, title: w } = U(u), {
|
|
13
|
+
hideMenu: k,
|
|
14
|
+
totalResults: a,
|
|
15
|
+
results: n,
|
|
16
|
+
allResults: l,
|
|
17
|
+
dimensionsAndMeasures: c,
|
|
18
|
+
displayNullAs: H,
|
|
19
|
+
showIndex: I,
|
|
20
|
+
clickDimension: h,
|
|
21
|
+
state: s,
|
|
22
|
+
setState: o,
|
|
23
|
+
onRowClicked: C
|
|
24
|
+
} = u, v = K({ dimensionsAndMeasures: c, displayNullAs: H }, g), D = (n == null ? void 0 : n.data) || [], y = Q({ rows: D, clickDimension: h }), m = F(null), { height: L } = z(m), r = E({
|
|
25
|
+
availableHeight: L,
|
|
26
|
+
headerHeight: W,
|
|
27
|
+
rowHeight: X,
|
|
28
|
+
footerHeight: Y
|
|
29
|
+
}), t = J(
|
|
30
|
+
(e) => {
|
|
31
|
+
o == null || o((i) => ({
|
|
32
|
+
...i,
|
|
33
|
+
...e
|
|
34
|
+
}));
|
|
35
|
+
},
|
|
36
|
+
[o]
|
|
37
|
+
), M = (e) => {
|
|
38
|
+
p(!0), t({ isLoadingDownloadData: !0 }), R = (i) => e({
|
|
39
|
+
title: w,
|
|
40
|
+
data: i,
|
|
41
|
+
dimensionsAndMeasures: c,
|
|
42
|
+
containerRef: m,
|
|
43
|
+
theme: g
|
|
44
|
+
});
|
|
45
|
+
}, S = (e) => {
|
|
46
|
+
var P;
|
|
47
|
+
if (!C || !h) return;
|
|
48
|
+
const i = (P = D[e]) == null ? void 0 : P[h.name];
|
|
49
|
+
C(i);
|
|
50
|
+
};
|
|
51
|
+
d(() => {
|
|
52
|
+
r && t({ pageSize: r });
|
|
53
|
+
}, [r, t]), d(() => {
|
|
54
|
+
o == null || o((e) => ({
|
|
55
|
+
...e,
|
|
56
|
+
hasTotalResults: !1
|
|
57
|
+
}));
|
|
58
|
+
}, [c, r]), d(() => {
|
|
59
|
+
a != null && a.total && (o == null || o((e) => ({
|
|
60
|
+
...e,
|
|
61
|
+
hasTotalResults: !0
|
|
62
|
+
})));
|
|
63
|
+
}, [a]), d(() => {
|
|
64
|
+
if (b) {
|
|
65
|
+
if (!l || l.isLoading)
|
|
66
|
+
return;
|
|
67
|
+
R(l.data), p(!1), t({ isLoadingDownloadData: !1 });
|
|
68
|
+
}
|
|
69
|
+
}, [b, l, t]);
|
|
70
|
+
const _ = (e) => {
|
|
71
|
+
t({ sort: e });
|
|
72
|
+
}, T = (s == null ? void 0 : s.page) ?? 0;
|
|
73
|
+
return /* @__PURE__ */ x.jsx(
|
|
74
|
+
q,
|
|
75
|
+
{
|
|
76
|
+
ref: m,
|
|
77
|
+
title: w,
|
|
78
|
+
description: j,
|
|
79
|
+
data: n,
|
|
80
|
+
dimensionsAndMeasures: c,
|
|
81
|
+
errorMessage: n == null ? void 0 : n.error,
|
|
82
|
+
onCustomDownload: M,
|
|
83
|
+
hideMenu: k,
|
|
84
|
+
children: /* @__PURE__ */ x.jsx(
|
|
85
|
+
O,
|
|
86
|
+
{
|
|
87
|
+
onRowIndexClick: S,
|
|
88
|
+
headers: v,
|
|
89
|
+
rows: y,
|
|
90
|
+
showIndex: I,
|
|
91
|
+
page: T,
|
|
92
|
+
pageSize: r,
|
|
93
|
+
paginationLabel: V.t("charts.tablePaginated.pagination", {
|
|
94
|
+
page: T + 1,
|
|
95
|
+
totalPages: A(a == null ? void 0 : a.total, r) ?? "?"
|
|
96
|
+
}),
|
|
97
|
+
total: a == null ? void 0 : a.total,
|
|
98
|
+
sort: s == null ? void 0 : s.sort,
|
|
99
|
+
onSortChange: _,
|
|
100
|
+
onPageChange: (e) => t({ page: e })
|
|
101
|
+
}
|
|
102
|
+
)
|
|
103
|
+
}
|
|
104
|
+
);
|
|
105
|
+
}, se = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
106
|
+
__proto__: null,
|
|
107
|
+
default: Z
|
|
108
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
109
|
+
export {
|
|
110
|
+
Z as T,
|
|
111
|
+
se as i
|
|
112
|
+
};
|
|
113
|
+
//# sourceMappingURL=index-BDRs__KW.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BDRs__KW.js","sources":["../src/components/charts/tables/TableChartPaginated/index.tsx"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { Theme } from '../../../../theme/theme.types';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { ChartCard, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { DataResponse, Dimension, DimensionOrMeasure, OrderDirection } from '@embeddable.com/core';\nimport {\n getStyleNumber,\n getTableTotalPages,\n TablePaginated,\n useTableGetRowsPerPage,\n useResizeObserver,\n TableSort,\n} from '@embeddable.com/remarkable-ui';\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport { getTableHeaders, getTableRows } from '../tables.utils';\nimport { ChartCardMenuOptionOnClickProps } from '../../../../theme/defaults/defaults.ChartCardMenu.constants';\n\n/* eslint-disable @typescript-eslint/no-explicit-any */\n\nconst headerHeight = getStyleNumber('--em-tablechart-cell-height', '2.5rem') as number;\nconst rowHeight = getStyleNumber('--em-tablechart-cell-height', '2.5rem') as number;\nconst footerHeight = getStyleNumber('--em-tablechart-pagination-height', '3rem') as number;\n\nlet downloadData: (data: DataResponse['data']) => void;\n\nexport type TableChartPaginatedProOnRowClickArg = string | null;\nexport type TableChartPaginatedProState = {\n page: number;\n pageSize?: number;\n sort?: { id: string; direction: OrderDirection } | undefined;\n isLoadingDownloadData: boolean;\n hasTotalResults: boolean;\n};\n\ntype TableChartPaginatedProProps = {\n allResults?: DataResponse;\n clickDimension?: Dimension;\n\n dimensionsAndMeasures: DimensionOrMeasure[];\n displayNullAs?: string;\n results: DataResponse;\n showIndex?: boolean;\n state?: TableChartPaginatedProState;\n\n totalResults?: DataResponse;\n onRowClicked?: (rowDimensionValue: TableChartPaginatedProOnRowClickArg) => void;\n setState?: React.Dispatch<React.SetStateAction<TableChartPaginatedProState>>;\n} & ChartCardHeaderProps;\n\nconst TableChartPaginatedPro = (props: TableChartPaginatedProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const [isDownloadingData, setIsDownloadingData] = useState(false);\n\n const { description, title } = resolveI18nProps(props);\n const {\n hideMenu,\n totalResults,\n results,\n allResults,\n dimensionsAndMeasures,\n displayNullAs,\n showIndex,\n clickDimension,\n state,\n setState,\n onRowClicked,\n } = props;\n\n const headers = getTableHeaders({ dimensionsAndMeasures, displayNullAs }, theme);\n const rows = results?.data || [];\n const tableRows = getTableRows({ rows, clickDimension });\n const cardContentRef = useRef<HTMLDivElement>(null);\n const { height } = useResizeObserver(cardContentRef);\n const pageSize = useTableGetRowsPerPage({\n availableHeight: height,\n headerHeight,\n rowHeight,\n footerHeight,\n });\n\n // Stable updater for embeddable state\n const handleUpdateEmbeddableState = useCallback(\n (newState: Partial<TableChartPaginatedProState>) => {\n setState?.((prevState) => ({\n ...prevState,\n ...newState,\n }));\n },\n [setState],\n );\n\n const handleCustomDownload = (onDownload: (props: ChartCardMenuOptionOnClickProps) => void) => {\n setIsDownloadingData(true);\n handleUpdateEmbeddableState({ isLoadingDownloadData: true });\n\n downloadData = (data: DataResponse['data']) =>\n onDownload({\n title,\n data,\n dimensionsAndMeasures,\n containerRef: cardContentRef,\n theme,\n });\n };\n\n const handleRowIndexClick = (rowIndex: number) => {\n if (!onRowClicked || !clickDimension) return;\n\n const rowDimensionValue = rows[rowIndex]?.[clickDimension.name];\n onRowClicked(rowDimensionValue);\n };\n\n // Sync page size changes to embeddable state\n useEffect(() => {\n if (pageSize) {\n handleUpdateEmbeddableState({ pageSize });\n }\n }, [pageSize, handleUpdateEmbeddableState]);\n\n // Sync total from results\n useEffect(() => {\n setState?.((prevState) => ({\n ...prevState,\n hasTotalResults: false,\n }));\n }, [dimensionsAndMeasures, pageSize]);\n\n useEffect(() => {\n if (totalResults?.total) {\n setState?.((prevState) => ({\n ...prevState,\n hasTotalResults: true,\n }));\n }\n }, [totalResults]);\n\n // Handle data download when allResults is ready\n useEffect(() => {\n if (isDownloadingData) {\n if (!allResults || allResults.isLoading) {\n // Loading data to download\n return;\n }\n\n downloadData(allResults.data);\n setIsDownloadingData(false);\n handleUpdateEmbeddableState({ isLoadingDownloadData: false });\n }\n }, [isDownloadingData, allResults, handleUpdateEmbeddableState]);\n\n const handleSortChange = (newSort: TableSort<any> | undefined) => {\n handleUpdateEmbeddableState({ sort: newSort as TableChartPaginatedProState['sort'] });\n };\n\n const currentPage = state?.page ?? 0;\n return (\n <ChartCard\n ref={cardContentRef}\n title={title}\n description={description}\n data={results}\n dimensionsAndMeasures={dimensionsAndMeasures}\n errorMessage={results?.error}\n onCustomDownload={handleCustomDownload}\n hideMenu={hideMenu}\n >\n <TablePaginated\n onRowIndexClick={handleRowIndexClick}\n headers={headers}\n rows={tableRows}\n showIndex={showIndex}\n page={currentPage}\n pageSize={pageSize}\n paginationLabel={i18n.t('charts.tablePaginated.pagination', {\n page: currentPage + 1,\n totalPages: getTableTotalPages(totalResults?.total, pageSize) ?? '?',\n })}\n total={totalResults?.total}\n sort={state?.sort}\n onSortChange={handleSortChange}\n onPageChange={(newPage) => handleUpdateEmbeddableState({ page: newPage })}\n />\n </ChartCard>\n );\n};\n\nexport default TableChartPaginatedPro;\n"],"names":["headerHeight","getStyleNumber","rowHeight","footerHeight","downloadData","TableChartPaginatedPro","props","theme","useTheme","i18nSetup","isDownloadingData","setIsDownloadingData","useState","description","title","resolveI18nProps","hideMenu","totalResults","results","allResults","dimensionsAndMeasures","displayNullAs","showIndex","clickDimension","state","setState","onRowClicked","headers","getTableHeaders","rows","tableRows","getTableRows","cardContentRef","useRef","height","useResizeObserver","pageSize","useTableGetRowsPerPage","handleUpdateEmbeddableState","useCallback","newState","prevState","handleCustomDownload","onDownload","data","handleRowIndexClick","rowIndex","rowDimensionValue","_a","useEffect","handleSortChange","newSort","currentPage","jsx","ChartCard","TablePaginated","i18n","getTableTotalPages","newPage"],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { m as L, j as m, B as M } from "./Color.type.emb-sebikYGW.js";
|
|
2
|
+
import { useTheme as P } from "@embeddable.com/react";
|
|
3
|
+
import { a as k, r as w } from "./component.inputs.constants-Ds7YpNhT.js";
|
|
4
|
+
import { C as z } from "./ChartCard-B3B1rFYh.js";
|
|
5
|
+
import { g as T, b as _ } from "./bars.utils-jvwOEGnf.js";
|
|
6
|
+
import { u as v } from "./charts.fillGaps.hooks-C7KsWcZb.js";
|
|
7
|
+
const O = (e) => {
|
|
8
|
+
var n, l;
|
|
9
|
+
const r = P();
|
|
10
|
+
k(r);
|
|
11
|
+
const {
|
|
12
|
+
description: d,
|
|
13
|
+
groupBy: t,
|
|
14
|
+
measure: s,
|
|
15
|
+
reverseYAxis: u,
|
|
16
|
+
showLegend: c,
|
|
17
|
+
showLogarithmicScale: h,
|
|
18
|
+
showTooltips: x,
|
|
19
|
+
showTotalLabels: p,
|
|
20
|
+
showValueLabels: g,
|
|
21
|
+
title: b,
|
|
22
|
+
yAxis: a,
|
|
23
|
+
xAxisLabel: f,
|
|
24
|
+
yAxisLabel: C,
|
|
25
|
+
xAxisRangeMax: A,
|
|
26
|
+
xAxisRangeMin: B,
|
|
27
|
+
onBarClicked: S
|
|
28
|
+
} = w(e), { hideMenu: j } = e, o = v({
|
|
29
|
+
results: e.results,
|
|
30
|
+
dimension: e.yAxis
|
|
31
|
+
}), i = T(
|
|
32
|
+
{
|
|
33
|
+
data: o.data,
|
|
34
|
+
dimension: a,
|
|
35
|
+
groupDimension: t,
|
|
36
|
+
measure: s
|
|
37
|
+
},
|
|
38
|
+
r
|
|
39
|
+
), y = L(
|
|
40
|
+
_(
|
|
41
|
+
{ measures: [s], horizontal: !0, onBarClicked: S, data: i, dimension: a },
|
|
42
|
+
r
|
|
43
|
+
),
|
|
44
|
+
((l = (n = r.charts) == null ? void 0 : n.barChartStackedHorizontalPro) == null ? void 0 : l.options) || {}
|
|
45
|
+
);
|
|
46
|
+
return /* @__PURE__ */ m.jsx(
|
|
47
|
+
z,
|
|
48
|
+
{
|
|
49
|
+
data: o,
|
|
50
|
+
dimensionsAndMeasures: [s, a, t],
|
|
51
|
+
errorMessage: o.error,
|
|
52
|
+
description: d,
|
|
53
|
+
title: b,
|
|
54
|
+
hideMenu: j,
|
|
55
|
+
children: /* @__PURE__ */ m.jsx(
|
|
56
|
+
M,
|
|
57
|
+
{
|
|
58
|
+
data: i,
|
|
59
|
+
showLegend: c,
|
|
60
|
+
showTooltips: x,
|
|
61
|
+
showValueLabels: g,
|
|
62
|
+
showLogarithmicScale: h,
|
|
63
|
+
xAxisLabel: f,
|
|
64
|
+
yAxisLabel: C,
|
|
65
|
+
reverseYAxis: u,
|
|
66
|
+
xAxisRangeMin: B,
|
|
67
|
+
xAxisRangeMax: A,
|
|
68
|
+
showTotalLabels: p,
|
|
69
|
+
options: y,
|
|
70
|
+
stacked: !0,
|
|
71
|
+
horizontal: !0
|
|
72
|
+
}
|
|
73
|
+
)
|
|
74
|
+
}
|
|
75
|
+
);
|
|
76
|
+
}, I = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
77
|
+
__proto__: null,
|
|
78
|
+
default: O
|
|
79
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
80
|
+
export {
|
|
81
|
+
O as B,
|
|
82
|
+
I as i
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=index-BNZ1R6AK.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BNZ1R6AK.js","sources":["../src/components/charts/bars/BarChartStackedHorizontalPro/index.tsx"],"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 { getBarChartProOptions, getBarStackedChartProData } from '../bars.utils';\nimport { mergician } from 'mergician';\nimport { DataResponse, Dimension, Measure } from '@embeddable.com/core';\nimport { useFillGaps } from '../../charts.fillGaps.hooks';\n\ntype BarChartHorizontalStackedProProps = {\n groupBy: Dimension;\n measure: Measure;\n results: DataResponse;\n reverseYAxis?: boolean;\n showLegend?: boolean;\n showLogarithmicScale?: boolean;\n showTooltips?: boolean;\n showTotalLabels?: boolean;\n showValueLabels?: boolean;\n yAxis: Dimension;\n xAxisLabel?: string;\n yAxisLabel?: string;\n xAxisRangeMax?: number;\n xAxisRangeMin?: number;\n onBarClicked?: (args: {\n axisDimensionValue: string | null;\n groupingDimensionValue: string | null;\n }) => void;\n} & ChartCardHeaderProps;\n\nconst BarChartHorizontalStackedPro = (props: BarChartHorizontalStackedProProps) => {\n const theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const {\n description,\n groupBy,\n measure,\n reverseYAxis,\n showLegend,\n showLogarithmicScale,\n showTooltips,\n showTotalLabels,\n showValueLabels,\n title,\n yAxis,\n xAxisLabel,\n yAxisLabel,\n xAxisRangeMax,\n xAxisRangeMin,\n onBarClicked,\n } = resolveI18nProps(props);\n\n const { hideMenu } = props;\n\n const results = useFillGaps({\n results: props.results,\n dimension: props.yAxis,\n });\n\n const data = getBarStackedChartProData(\n {\n data: results.data,\n dimension: yAxis,\n groupDimension: groupBy,\n measure,\n },\n theme,\n );\n\n const options = mergician(\n getBarChartProOptions(\n { measures: [measure], horizontal: true, onBarClicked, data, dimension: yAxis },\n theme,\n ),\n theme.charts?.barChartStackedHorizontalPro?.options || {},\n );\n\n return (\n <ChartCard\n data={results}\n dimensionsAndMeasures={[measure, yAxis, groupBy]}\n errorMessage={results.error}\n description={description}\n title={title}\n hideMenu={hideMenu}\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 reverseYAxis={reverseYAxis}\n xAxisRangeMin={xAxisRangeMin}\n xAxisRangeMax={xAxisRangeMax}\n showTotalLabels={showTotalLabels}\n options={options}\n stacked\n horizontal\n />\n </ChartCard>\n );\n};\n\nexport default BarChartHorizontalStackedPro;\n"],"names":["BarChartHorizontalStackedPro","props","theme","useTheme","i18nSetup","description","groupBy","measure","reverseYAxis","showLegend","showLogarithmicScale","showTooltips","showTotalLabels","showValueLabels","title","yAxis","xAxisLabel","yAxisLabel","xAxisRangeMax","xAxisRangeMin","onBarClicked","resolveI18nProps","hideMenu","results","useFillGaps","data","getBarStackedChartProData","options","mergician","getBarChartProOptions","_b","_a","jsx","ChartCard","BarChart"],"mappings":";;;;;;AAgCA,MAAMA,IAA+B,CAACC,MAA6C;;AACjF,QAAMC,IAAQC,EAAA;AACd,EAAAC,EAAUF,CAAK;AAEf,QAAM;AAAA,IACJ,aAAAG;AAAA,IACA,SAAAC;AAAA,IACA,SAAAC;AAAA,IACA,cAAAC;AAAA,IACA,YAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,OAAAC;AAAA,IACA,OAAAC;AAAA,IACA,YAAAC;AAAA,IACA,YAAAC;AAAA,IACA,eAAAC;AAAA,IACA,eAAAC;AAAA,IACA,cAAAC;AAAA,EAAA,IACEC,EAAiBpB,CAAK,GAEpB,EAAE,UAAAqB,MAAarB,GAEfsB,IAAUC,EAAY;AAAA,IAC1B,SAASvB,EAAM;AAAA,IACf,WAAWA,EAAM;AAAA,EAAA,CAClB,GAEKwB,IAAOC;AAAA,IACX;AAAA,MACE,MAAMH,EAAQ;AAAA,MACd,WAAWR;AAAA,MACX,gBAAgBT;AAAA,MAChB,SAAAC;AAAA,IAAA;AAAA,IAEFL;AAAA,EAAA,GAGIyB,IAAUC;AAAA,IACdC;AAAA,MACE,EAAE,UAAU,CAACtB,CAAO,GAAG,YAAY,IAAM,cAAAa,GAAc,MAAAK,GAAM,WAAWV,EAAA;AAAA,MACxEb;AAAA,IAAA;AAAA,MAEF4B,KAAAC,IAAA7B,EAAM,WAAN,gBAAA6B,EAAc,iCAAd,gBAAAD,EAA4C,YAAW,CAAA;AAAA,EAAC;AAG1D,SACEE,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMV;AAAA,MACN,uBAAuB,CAAChB,GAASQ,GAAOT,CAAO;AAAA,MAC/C,cAAciB,EAAQ;AAAA,MACtB,aAAAlB;AAAA,MACA,OAAAS;AAAA,MACA,UAAAQ;AAAA,MAEA,UAAAU,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,MAAAT;AAAA,UACA,YAAAhB;AAAA,UACA,cAAAE;AAAA,UACA,iBAAAE;AAAA,UACA,sBAAAH;AAAA,UACA,YAAAM;AAAA,UACA,YAAAC;AAAA,UACA,cAAAT;AAAA,UACA,eAAAW;AAAA,UACA,eAAAD;AAAA,UACA,iBAAAN;AAAA,UACA,SAAAe;AAAA,UACA,SAAO;AAAA,UACP,YAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA;AAGN;;;;"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { j as f, K as M } from "./Color.type.emb-sebikYGW.js";
|
|
2
|
+
import { useTheme as T } from "@embeddable.com/react";
|
|
3
|
+
import { a as w, r as A, i as o } from "./component.inputs.constants-Ds7YpNhT.js";
|
|
4
|
+
import { C as N } from "./ChartCard-B3B1rFYh.js";
|
|
5
|
+
import { g as O } from "./formatter.utils-tS15PLXn.js";
|
|
6
|
+
import { useEffect as k } from "react";
|
|
7
|
+
import { g as q, a as E } from "./timeRange.utils-Dz0fdD_b.js";
|
|
8
|
+
const V = (s) => {
|
|
9
|
+
var l, g, p, h, u, v;
|
|
10
|
+
const t = T();
|
|
11
|
+
w(t);
|
|
12
|
+
const { title: C, description: P } = A(s), {
|
|
13
|
+
hideMenu: b,
|
|
14
|
+
changeFontSize: L,
|
|
15
|
+
comparisonPeriod: n,
|
|
16
|
+
comparisonDateRange: y,
|
|
17
|
+
displayChangeAsPercentage: D,
|
|
18
|
+
fontSize: S,
|
|
19
|
+
measure: r,
|
|
20
|
+
primaryDateRange: m,
|
|
21
|
+
results: a,
|
|
22
|
+
resultsComparison: e,
|
|
23
|
+
reversePositiveNegativeColors: _,
|
|
24
|
+
percentageDecimalPlaces: j,
|
|
25
|
+
setComparisonDateRange: d
|
|
26
|
+
} = s;
|
|
27
|
+
k(() => {
|
|
28
|
+
if (!d) return;
|
|
29
|
+
const i = q(
|
|
30
|
+
m,
|
|
31
|
+
n,
|
|
32
|
+
t
|
|
33
|
+
);
|
|
34
|
+
d(i);
|
|
35
|
+
}, [n, JSON.stringify(m), t]);
|
|
36
|
+
const x = (g = (l = a.data) == null ? void 0 : l[0]) == null ? void 0 : g[r.name], F = y ? (h = (p = e == null ? void 0 : e.data) == null ? void 0 : p[0]) == null ? void 0 : h[r.name] : void 0, R = O(t), z = (i) => R.data(r, i), K = `vs ${E(n, t).toLowerCase()}`, c = {
|
|
37
|
+
isLoading: !!(a.isLoading || e != null && e.isLoading),
|
|
38
|
+
data: !(a != null && a.data) && !(e != null && e.data) ? void 0 : [
|
|
39
|
+
...(u = a.data) != null && u.length ? [{ label: o.t("charts.primaryPeriod"), ...a.data[0] }] : [],
|
|
40
|
+
...(v = e == null ? void 0 : e.data) != null && v.length ? [{ label: o.t("charts.comparisonPeriod"), ...e.data[0] }] : []
|
|
41
|
+
]
|
|
42
|
+
};
|
|
43
|
+
return /* @__PURE__ */ f.jsx(
|
|
44
|
+
N,
|
|
45
|
+
{
|
|
46
|
+
data: c,
|
|
47
|
+
dimensionsAndMeasures: [
|
|
48
|
+
// Add a label dimension to distinguish primary and comparison periods in exports
|
|
49
|
+
{
|
|
50
|
+
name: "label",
|
|
51
|
+
title: o.t("charts.label"),
|
|
52
|
+
nativeType: "string",
|
|
53
|
+
__type__: "dimension"
|
|
54
|
+
},
|
|
55
|
+
r
|
|
56
|
+
],
|
|
57
|
+
errorMessage: a.error,
|
|
58
|
+
description: P,
|
|
59
|
+
title: C,
|
|
60
|
+
hideMenu: b,
|
|
61
|
+
children: /* @__PURE__ */ f.jsx(
|
|
62
|
+
M,
|
|
63
|
+
{
|
|
64
|
+
value: x,
|
|
65
|
+
comparisonValue: c.isLoading ? void 0 : F,
|
|
66
|
+
valueFormatter: z,
|
|
67
|
+
valueFontSize: S,
|
|
68
|
+
trendFontSize: L,
|
|
69
|
+
invertChangeColors: _,
|
|
70
|
+
showChangeAsPercentage: D,
|
|
71
|
+
comparisonLabel: K,
|
|
72
|
+
percentageDecimalPlaces: j,
|
|
73
|
+
noPreviousDataLabel: o.t("charts.kpiChart.noPreviousData"),
|
|
74
|
+
equalComparisonLabel: o.t("charts.kpiChart.equalComparison")
|
|
75
|
+
}
|
|
76
|
+
)
|
|
77
|
+
}
|
|
78
|
+
);
|
|
79
|
+
}, U = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
80
|
+
__proto__: null,
|
|
81
|
+
default: V
|
|
82
|
+
}, Symbol.toStringTag, { value: "Module" }));
|
|
83
|
+
export {
|
|
84
|
+
V as K,
|
|
85
|
+
U as i
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=index-BUk63KEk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BUk63KEk.js","sources":["../src/components/charts/kpis/KpiChartNumberComparisonPro/index.tsx"],"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, ChartCardHeaderProps } from '../../shared/ChartCard/ChartCard';\nimport { KpiChart } from '@embeddable.com/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\n displayChangeAsPercentage?: boolean;\n fontSize?: number;\n measure: Measure;\n primaryDateRange: TimeRange;\n results: DataResponse;\n resultsComparison: DataResponse | undefined;\n reversePositiveNegativeColors?: boolean;\n\n percentageDecimalPlaces?: number;\n comparisonDateRange: TimeRange;\n setComparisonDateRange?: (dateRange: TimeRange) => void;\n} & ChartCardHeaderProps;\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 hideMenu,\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 if (!setComparisonDateRange) return;\n\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: Boolean(results.isLoading || resultsComparison?.isLoading),\n data:\n !results?.data && !resultsComparison?.data\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 description={description}\n title={title}\n hideMenu={hideMenu}\n >\n <KpiChart\n value={value}\n comparisonValue={resultsCombined.isLoading ? undefined : comparisonValue}\n valueFormatter={valueFormatter}\n valueFontSize={fontSize}\n trendFontSize={changeFontSize}\n invertChangeColors={reversePositiveNegativeColors}\n showChangeAsPercentage={displayChangeAsPercentage}\n comparisonLabel={comparisonLabel}\n percentageDecimalPlaces={percentageDecimalPlaces}\n noPreviousDataLabel={i18n.t('charts.kpiChart.noPreviousData')}\n equalComparisonLabel={i18n.t('charts.kpiChart.equalComparison')}\n />\n </ChartCard>\n );\n};\n\nexport default KpiChartNumberComparisonPro;\n"],"names":["KpiChartNumberComparisonPro","props","theme","useTheme","i18nSetup","title","description","resolveI18nProps","hideMenu","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"],"mappings":";;;;;;;AA+BA,MAAMA,IAA8B,CAACC,MAA2C;;AAC9E,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAM,EAAE,OAAAG,GAAO,aAAAC,MAAgBC,EAAiBN,CAAK,GAC/C;AAAA,IACJ,UAAAO;AAAA,IACA,gBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,2BAAAC;AAAA,IACA,UAAAC;AAAA,IACA,SAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,+BAAAC;AAAA,IACA,yBAAAC;AAAA,IACA,wBAAAC;AAAA,EAAA,IACEnB;AAEJ,EAAAoB,EAAU,MAAM;AACd,QAAI,CAACD,EAAwB;AAE7B,UAAME,IAAyBC;AAAA,MAC7BR;AAAA,MACAL;AAAA,MACAR;AAAA,IAAA;AAEF,IAAAkB,EAAuBE,CAAsB;AAAA,EAC/C,GAAG,CAACZ,GAAkB,KAAK,UAAUK,CAAgB,GAAGb,CAAK,CAAC;AAE9D,QAAMsB,KAAgBC,KAAAC,IAAAV,EAAQ,SAAR,gBAAAU,EAAe,OAAf,gBAAAD,EAAoBX,EAAQ,OAC5Ca,IAAkBhB,KACpBiB,KAAAC,IAAAZ,KAAA,gBAAAA,EAAmB,SAAnB,gBAAAY,EAA0B,OAA1B,gBAAAD,EAA+Bd,EAAQ,QACvC,QAEEgB,IAAiBC,EAAkB7B,CAAK,GACxC8B,IAAiB,CAACC,MAA0BH,EAAe,KAAKhB,GAASmB,CAAa,GACtFC,IAAkB,MAAMC,EAAyBzB,GAAkBR,CAAK,EAAE,aAAa,IAEvFkC,IAAgC;AAAA,IACpC,WAAW,GAAQpB,EAAQ,aAAaC,KAAA,QAAAA,EAAmB;AAAA,IAC3D,MACE,EAACD,KAAA,QAAAA,EAAS,SAAQ,EAACC,KAAA,QAAAA,EAAmB,QAClC,SACA;AAAA,MACE,IAAIoB,IAAArB,EAAQ,SAAR,QAAAqB,EAAc,SACd,CAAC,EAAE,OAAOC,EAAK,EAAE,sBAAsB,GAAG,GAAGtB,EAAQ,KAAK,CAAC,EAAA,CAAG,IAC9D,CAAA;AAAA,MACJ,IAAIuB,IAAAtB,KAAA,gBAAAA,EAAmB,SAAnB,QAAAsB,EAAyB,SACzB,CAAC,EAAE,OAAOD,EAAK,EAAE,yBAAyB,GAAG,GAAGrB,EAAkB,KAAK,CAAC,EAAA,CAAG,IAC3E,CAAA;AAAA,IAAC;AAAA,EACP;AAGR,SACEuB,gBAAAA,EAAAA;AAAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAML;AAAA,MACN,uBAAuB;AAAA;AAAA,QAErB;AAAA,UACE,MAAM;AAAA,UACN,OAAOE,EAAK,EAAE,cAAc;AAAA,UAC5B,YAAY;AAAA,UACZ,UAAU;AAAA,QAAA;AAAA,QAEZxB;AAAA,MAAA;AAAA,MAEF,cAAcE,EAAQ;AAAA,MACtB,aAAAV;AAAA,MACA,OAAAD;AAAA,MACA,UAAAG;AAAA,MAEA,UAAAgC,gBAAAA,EAAAA;AAAAA,QAACE;AAAA,QAAA;AAAA,UACC,OAAAlB;AAAA,UACA,iBAAiBY,EAAgB,YAAY,SAAYT;AAAA,UACzD,gBAAAK;AAAA,UACA,eAAenB;AAAA,UACf,eAAeJ;AAAA,UACf,oBAAoBS;AAAA,UACpB,wBAAwBN;AAAA,UACxB,iBAAAsB;AAAA,UACA,yBAAAf;AAAA,UACA,qBAAqBmB,EAAK,EAAE,gCAAgC;AAAA,UAC5D,sBAAsBA,EAAK,EAAE,iCAAiC;AAAA,QAAA;AAAA,MAAA;AAAA,IAChE;AAAA,EAAA;AAGN;;;;"}
|