@undp/data-viz 2.4.1 → 2.5.1
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/AreaChart.cjs +1 -1
- package/dist/AreaChart.cjs.map +1 -1
- package/dist/AreaChart.d.ts +11 -9
- package/dist/AreaChart.js +320 -322
- package/dist/AreaChart.js.map +1 -1
- package/dist/BarGraph.cjs +1 -1
- package/dist/BarGraph.cjs.map +1 -1
- package/dist/BarGraph.d.ts +15 -25
- package/dist/BarGraph.js +1694 -1694
- package/dist/BarGraph.js.map +1 -1
- package/dist/BasicStatCard.cjs +1 -1
- package/dist/BasicStatCard.cjs.map +1 -1
- package/dist/BasicStatCard.d.ts +13 -9
- package/dist/BasicStatCard.js +79 -81
- package/dist/BasicStatCard.js.map +1 -1
- package/dist/BeeSwarmChart.cjs +1 -1
- package/dist/BeeSwarmChart.cjs.map +1 -1
- package/dist/BeeSwarmChart.d.ts +11 -9
- package/dist/BeeSwarmChart.js +335 -336
- package/dist/BeeSwarmChart.js.map +1 -1
- package/dist/BiVariateChoroplethMap.cjs +1 -1
- package/dist/BiVariateChoroplethMap.cjs.map +1 -1
- package/dist/BiVariateChoroplethMap.d.ts +13 -3
- package/dist/BiVariateChoroplethMap.js +309 -304
- package/dist/BiVariateChoroplethMap.js.map +1 -1
- package/dist/BulletChart.cjs +1 -1
- package/dist/BulletChart.cjs.map +1 -1
- package/dist/BulletChart.d.ts +11 -5
- package/dist/BulletChart.js +560 -559
- package/dist/BulletChart.js.map +1 -1
- package/dist/ButterflyChart.cjs +1 -1
- package/dist/ButterflyChart.cjs.map +1 -1
- package/dist/ButterflyChart.d.ts +11 -9
- package/dist/ButterflyChart.js +348 -350
- package/dist/ButterflyChart.js.map +1 -1
- package/dist/ChoroplethMap.cjs +1 -1
- package/dist/ChoroplethMap.cjs.map +1 -1
- package/dist/ChoroplethMap.d.ts +11 -3
- package/dist/ChoroplethMap.js +314 -311
- package/dist/ChoroplethMap.js.map +1 -1
- package/dist/CirclePackingGraph.cjs +1 -1
- package/dist/CirclePackingGraph.d.ts +11 -9
- package/dist/CirclePackingGraph.js +1 -1
- package/dist/DataCards.cjs +1 -1
- package/dist/DataCards.d.ts +1 -1
- package/dist/DataCards.js +1 -1
- package/dist/DataTable.cjs +1 -1
- package/dist/DataTable.cjs.map +1 -1
- package/dist/DataTable.d.ts +4 -5
- package/dist/DataTable.js +114 -116
- package/dist/DataTable.js.map +1 -1
- package/dist/{DetailsModal-jmmKRMRM.cjs → DetailsModal-Du8Fr1QD.cjs} +2 -2
- package/dist/{DetailsModal-jmmKRMRM.cjs.map → DetailsModal-Du8Fr1QD.cjs.map} +1 -1
- package/dist/{DetailsModal-B2XBWR7w.js → DetailsModal-GqEbGHY2.js} +2 -2
- package/dist/{DetailsModal-B2XBWR7w.js.map → DetailsModal-GqEbGHY2.js.map} +1 -1
- package/dist/DifferenceLineChart.cjs +1 -1
- package/dist/DifferenceLineChart.cjs.map +1 -1
- package/dist/DifferenceLineChart.d.ts +11 -9
- package/dist/DifferenceLineChart.js +502 -504
- package/dist/DifferenceLineChart.js.map +1 -1
- package/dist/DonutChart.cjs +1 -1
- package/dist/DonutChart.cjs.map +1 -1
- package/dist/DonutChart.d.ts +14 -9
- package/dist/DonutChart.js +174 -179
- package/dist/DonutChart.js.map +1 -1
- package/dist/DotDensityMap.cjs +1 -1
- package/dist/DotDensityMap.cjs.map +1 -1
- package/dist/DotDensityMap.d.ts +1 -1
- package/dist/DotDensityMap.js +270 -267
- package/dist/DotDensityMap.js.map +1 -1
- package/dist/DualAxisLineChart.cjs +1 -1
- package/dist/DualAxisLineChart.cjs.map +1 -1
- package/dist/DualAxisLineChart.d.ts +13 -9
- package/dist/DualAxisLineChart.js +341 -351
- package/dist/DualAxisLineChart.js.map +1 -1
- package/dist/DumbbellChart.cjs +1 -1
- package/dist/DumbbellChart.cjs.map +1 -1
- package/dist/DumbbellChart.d.ts +11 -9
- package/dist/DumbbellChart.js +592 -593
- package/dist/DumbbellChart.js.map +1 -1
- package/dist/GeoHubCompareMaps.cjs +1 -1
- package/dist/GeoHubCompareMaps.d.ts +1 -1
- package/dist/GeoHubCompareMaps.js +1 -1
- package/dist/GeoHubMap.cjs +1 -1
- package/dist/GeoHubMap.d.ts +1 -1
- package/dist/GeoHubMap.js +1 -1
- package/dist/GeoHubMapWithLayerSelection.cjs +1 -1
- package/dist/GeoHubMapWithLayerSelection.d.ts +1 -1
- package/dist/GeoHubMapWithLayerSelection.js +1 -1
- package/dist/GraphEl-BgkDbq50.cjs +2 -0
- package/dist/GraphEl-BgkDbq50.cjs.map +1 -0
- package/dist/GraphEl-Ch0uAeZw.js +1830 -0
- package/dist/GraphEl-Ch0uAeZw.js.map +1 -0
- package/dist/GriddedGraphs.cjs +1 -1
- package/dist/GriddedGraphs.d.ts +29 -16
- package/dist/GriddedGraphs.js +1 -1
- package/dist/GriddedGraphsFromConfig.d.ts +29 -16
- package/dist/HeatMap.cjs +1 -1
- package/dist/HeatMap.cjs.map +1 -1
- package/dist/HeatMap.d.ts +11 -9
- package/dist/HeatMap.js +203 -205
- package/dist/HeatMap.js.map +1 -1
- package/dist/Histogram.cjs +1 -1
- package/dist/Histogram.cjs.map +1 -1
- package/dist/Histogram.d.ts +11 -5
- package/dist/Histogram.js +88 -89
- package/dist/Histogram.js.map +1 -1
- package/dist/HybridMap.cjs +1 -1
- package/dist/HybridMap.cjs.map +1 -1
- package/dist/HybridMap.d.ts +11 -3
- package/dist/HybridMap.js +339 -336
- package/dist/HybridMap.js.map +1 -1
- package/dist/ImageDownloadButton.cjs +1 -1
- package/dist/ImageDownloadButton.js +1 -1
- package/dist/LineChartWithConfidenceInterval.cjs +1 -1
- package/dist/LineChartWithConfidenceInterval.cjs.map +1 -1
- package/dist/LineChartWithConfidenceInterval.d.ts +11 -9
- package/dist/LineChartWithConfidenceInterval.js +393 -395
- package/dist/LineChartWithConfidenceInterval.js.map +1 -1
- package/dist/LinearColorLegend.cjs +1 -1
- package/dist/LinearColorLegend.js +1 -1
- package/dist/MultiGraphDashboard.d.ts +29 -16
- package/dist/MultiGraphDashboardFromConfig.d.ts +29 -16
- package/dist/MultiGraphDashboardWideToLongFormat.d.ts +1 -1
- package/dist/MultiGraphDashboardWideToLongFormatFromConfig.d.ts +1 -1
- package/dist/MultiLineAltChart.cjs +1 -1
- package/dist/MultiLineAltChart.cjs.map +1 -1
- package/dist/MultiLineAltChart.d.ts +11 -9
- package/dist/MultiLineAltChart.js +411 -413
- package/dist/MultiLineAltChart.js.map +1 -1
- package/dist/MultiLineChart.cjs +1 -1
- package/dist/MultiLineChart.cjs.map +1 -1
- package/dist/MultiLineChart.d.ts +11 -9
- package/dist/MultiLineChart.js +438 -440
- package/dist/MultiLineChart.js.map +1 -1
- package/dist/ParetoChart.cjs +1 -1
- package/dist/ParetoChart.cjs.map +1 -1
- package/dist/ParetoChart.d.ts +13 -13
- package/dist/ParetoChart.js +347 -355
- package/dist/ParetoChart.js.map +1 -1
- package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +29 -16
- package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +29 -16
- package/dist/PerformanceIntensiveScrollStory.d.ts +29 -16
- package/dist/RadarChart.cjs +1 -1
- package/dist/RadarChart.cjs.map +1 -1
- package/dist/RadarChart.d.ts +11 -5
- package/dist/RadarChart.js +213 -213
- package/dist/RadarChart.js.map +1 -1
- package/dist/SankeyChart.cjs +1 -1
- package/dist/SankeyChart.cjs.map +1 -1
- package/dist/SankeyChart.d.ts +11 -9
- package/dist/SankeyChart.js +448 -450
- package/dist/SankeyChart.js.map +1 -1
- package/dist/ScatterPlot.cjs +1 -1
- package/dist/ScatterPlot.cjs.map +1 -1
- package/dist/ScatterPlot.d.ts +15 -13
- package/dist/ScatterPlot.js +477 -483
- package/dist/ScatterPlot.js.map +1 -1
- package/dist/ScrollStory.d.ts +29 -16
- package/dist/SimpleLineChart.cjs +1 -1
- package/dist/SimpleLineChart.cjs.map +1 -1
- package/dist/SimpleLineChart.d.ts +11 -9
- package/dist/SimpleLineChart.js +362 -364
- package/dist/SimpleLineChart.js.map +1 -1
- package/dist/SingleGraphDashboard.cjs +1 -1
- package/dist/SingleGraphDashboard.d.ts +29 -16
- package/dist/SingleGraphDashboard.js +1 -1
- package/dist/SingleGraphDashboardFromConfig.d.ts +29 -16
- package/dist/SingleGraphDashboardGeoHubMaps.d.ts +29 -16
- package/dist/SingleGraphDashboardGeoHubMapsFromConfig.d.ts +29 -16
- package/dist/SingleGraphDashboardThreeDGraphs.cjs +1 -1
- package/dist/SingleGraphDashboardThreeDGraphs.cjs.map +1 -1
- package/dist/SingleGraphDashboardThreeDGraphs.d.ts +29 -16
- package/dist/SingleGraphDashboardThreeDGraphs.js +40 -39
- package/dist/SingleGraphDashboardThreeDGraphs.js.map +1 -1
- package/dist/SingleGraphDashboardThreeDGraphsFromConfig.d.ts +29 -16
- package/dist/SlopeChart.cjs +1 -1
- package/dist/SlopeChart.d.ts +1 -1
- package/dist/SlopeChart.js +2 -2
- package/dist/SparkLine.cjs +1 -1
- package/dist/SparkLine.d.ts +1 -1
- package/dist/SparkLine.js +1 -1
- package/dist/StatCardFromData.cjs +1 -1
- package/dist/StatCardFromData.cjs.map +1 -1
- package/dist/StatCardFromData.d.ts +11 -9
- package/dist/StatCardFromData.js +113 -116
- package/dist/StatCardFromData.js.map +1 -1
- package/dist/StripChart.cjs +1 -1
- package/dist/StripChart.cjs.map +1 -1
- package/dist/StripChart.d.ts +11 -9
- package/dist/StripChart.js +434 -435
- package/dist/StripChart.js.map +1 -1
- package/dist/ThreeDGlobe.cjs +1 -1
- package/dist/ThreeDGlobe.cjs.map +1 -1
- package/dist/ThreeDGlobe.d.ts +11 -3
- package/dist/ThreeDGlobe.js +143 -143
- package/dist/ThreeDGlobe.js.map +1 -1
- package/dist/ThresholdColorLegendWithMouseOver.cjs +1 -1
- package/dist/ThresholdColorLegendWithMouseOver.js +1 -1
- package/dist/{Tooltip-Bj-s__cI.js → Tooltip-3EYDVa3w.js} +2 -2
- package/dist/{Tooltip-Bj-s__cI.js.map → Tooltip-3EYDVa3w.js.map} +1 -1
- package/dist/{Tooltip-Hr46paWP.cjs → Tooltip-C9F3uYG0.cjs} +2 -2
- package/dist/{Tooltip-Hr46paWP.cjs.map → Tooltip-C9F3uYG0.cjs.map} +1 -1
- package/dist/TreeMapGraph.cjs +1 -1
- package/dist/TreeMapGraph.cjs.map +1 -1
- package/dist/TreeMapGraph.d.ts +11 -9
- package/dist/TreeMapGraph.js +369 -371
- package/dist/TreeMapGraph.js.map +1 -1
- package/dist/Types.d.ts +29 -16
- package/dist/UnitChart.cjs +1 -1
- package/dist/UnitChart.cjs.map +1 -1
- package/dist/UnitChart.d.ts +11 -5
- package/dist/UnitChart.js +118 -119
- package/dist/UnitChart.js.map +1 -1
- package/dist/WaterfallChart.cjs +1 -1
- package/dist/WaterfallChart.cjs.map +1 -1
- package/dist/WaterfallChart.d.ts +11 -9
- package/dist/WaterfallChart.js +306 -308
- package/dist/WaterfallChart.js.map +1 -1
- package/dist/XTicksAndGridLines-B4UhDVyU.cjs +2 -0
- package/dist/XTicksAndGridLines-B4UhDVyU.cjs.map +1 -0
- package/dist/XTicksAndGridLines-CkYwVshF.js +40 -0
- package/dist/XTicksAndGridLines-CkYwVshF.js.map +1 -0
- package/dist/YTicksAndGridLines-BbujwxOB.js +40 -0
- package/dist/YTicksAndGridLines-BbujwxOB.js.map +1 -0
- package/dist/YTicksAndGridLines-sT3zdCs6.cjs +2 -0
- package/dist/YTicksAndGridLines-sT3zdCs6.cjs.map +1 -0
- package/dist/{imageDownload-Diofs_vY.js → imageDownload-BYsNEtMS.js} +11 -11
- package/dist/{imageDownload-Diofs_vY.js.map → imageDownload-BYsNEtMS.js.map} +1 -1
- package/dist/{imageDownload-61q6jyJW.cjs → imageDownload-CkMwA7Cw.cjs} +4 -4
- package/dist/{imageDownload-61q6jyJW.cjs.map → imageDownload-CkMwA7Cw.cjs.map} +1 -1
- package/dist/index-BPyj_6hG.js +375 -0
- package/dist/index-BPyj_6hG.js.map +1 -0
- package/dist/index-DuLvdHo2.cjs +2 -0
- package/dist/index-DuLvdHo2.cjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +108 -245
- package/dist/index.js +3 -3
- package/dist/numberFormattingFunction-BUUV_luR.js +28 -0
- package/dist/numberFormattingFunction-BUUV_luR.js.map +1 -0
- package/dist/numberFormattingFunction-u2iNHL_c.cjs +2 -0
- package/dist/numberFormattingFunction-u2iNHL_c.cjs.map +1 -0
- package/dist/{string2HTML-ZoGd08P_.cjs → string2HTML-30nfIm8R.cjs} +2 -2
- package/dist/{string2HTML-ZoGd08P_.cjs.map → string2HTML-30nfIm8R.cjs.map} +1 -1
- package/dist/{string2HTML-BrFperRM.js → string2HTML-DL-pInUB.js} +2 -2
- package/dist/{string2HTML-BrFperRM.js.map → string2HTML-DL-pInUB.js.map} +1 -1
- package/dist/style.css +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +2 -2
- package/package.json +2 -2
- package/dist/GraphEl-B73N4RIA.js +0 -1906
- package/dist/GraphEl-B73N4RIA.js.map +0 -1
- package/dist/GraphEl-Lt1og0C-.cjs +0 -2
- package/dist/GraphEl-Lt1og0C-.cjs.map +0 -1
- package/dist/XTicksAndGridLines-C5DuC5oY.cjs +0 -2
- package/dist/XTicksAndGridLines-C5DuC5oY.cjs.map +0 -1
- package/dist/XTicksAndGridLines-gdbGX2rm.js +0 -39
- package/dist/XTicksAndGridLines-gdbGX2rm.js.map +0 -1
- package/dist/YTicksAndGridLines-CsNSq9W9.js +0 -39
- package/dist/YTicksAndGridLines-CsNSq9W9.js.map +0 -1
- package/dist/YTicksAndGridLines-DFjm8RCc.cjs +0 -2
- package/dist/YTicksAndGridLines-DFjm8RCc.cjs.map +0 -1
- package/dist/index-B0Awa_de.js +0 -377
- package/dist/index-B0Awa_de.js.map +0 -1
- package/dist/index-CP8cmNzt.cjs +0 -2
- package/dist/index-CP8cmNzt.cjs.map +0 -1
- package/dist/numberFormattingFunction-Cn9R7CM9.cjs +0 -2
- package/dist/numberFormattingFunction-Cn9R7CM9.cjs.map +0 -1
- package/dist/numberFormattingFunction-DqMf_v1m.js +0 -28
- package/dist/numberFormattingFunction-DqMf_v1m.js.map +0 -1
package/dist/DataTable.js
CHANGED
|
@@ -1,189 +1,187 @@
|
|
|
1
|
-
import { c as
|
|
2
|
-
import { i as
|
|
3
|
-
import { useRef as
|
|
4
|
-
import { i as
|
|
5
|
-
import { _ as
|
|
6
|
-
import { o as
|
|
7
|
-
import { n as
|
|
8
|
-
import { GraphFooter as
|
|
9
|
-
import { GraphHeader as
|
|
10
|
-
import { S as
|
|
11
|
-
import { g as
|
|
12
|
-
import { G as
|
|
13
|
-
const
|
|
14
|
-
function
|
|
15
|
-
const t =
|
|
1
|
+
import { c as It, j as i } from "./index-CHPV5EwG-BzibaIRc.js";
|
|
2
|
+
import { i as ht } from "./index-Bwrro8-q.js";
|
|
3
|
+
import { useRef as jt, useState as y, useEffectEvent as vt, useEffect as kt } from "react";
|
|
4
|
+
import { i as wt } from "./index-BuwmuDFJ.js";
|
|
5
|
+
import { _ as S } from "./Typography-BO0gQDIT.js";
|
|
6
|
+
import { o as Nt } from "./index-BZQYSqar.js";
|
|
7
|
+
import { n as X } from "./numberFormattingFunction-BUUV_luR.js";
|
|
8
|
+
import { GraphFooter as $t } from "./GraphFooter.js";
|
|
9
|
+
import { GraphHeader as Ot } from "./GraphHeader.js";
|
|
10
|
+
import { S as Dt, a as St, b as Bt, F as Et, c as Ft } from "./index-ApTBN0kp.js";
|
|
11
|
+
import { g as st } from "./getTextColorBasedOnBgColor-CDY808zi.js";
|
|
12
|
+
import { G as zt } from "./GraphContainer-B8ZqOzKI.js";
|
|
13
|
+
const xt = (c) => c.map((h) => h || 1).reduce((h, b) => h + b, 0);
|
|
14
|
+
function Qt(c) {
|
|
15
|
+
const t = It.c(76), {
|
|
16
16
|
width: m,
|
|
17
17
|
height: h,
|
|
18
18
|
graphTitle: b,
|
|
19
|
-
sources:
|
|
20
|
-
graphDescription:
|
|
21
|
-
footNote:
|
|
22
|
-
graphID:
|
|
19
|
+
sources: B,
|
|
20
|
+
graphDescription: E,
|
|
21
|
+
footNote: F,
|
|
22
|
+
graphID: M,
|
|
23
23
|
data: f,
|
|
24
|
-
columnData:
|
|
24
|
+
columnData: n,
|
|
25
25
|
onSeriesMouseClick: C,
|
|
26
|
-
language:
|
|
27
|
-
theme:
|
|
28
|
-
ariaLabel:
|
|
29
|
-
backgroundColor:
|
|
30
|
-
padding:
|
|
31
|
-
resetSelectionOnDoubleClick:
|
|
26
|
+
language: nt,
|
|
27
|
+
theme: at,
|
|
28
|
+
ariaLabel: V,
|
|
29
|
+
backgroundColor: ct,
|
|
30
|
+
padding: q,
|
|
31
|
+
resetSelectionOnDoubleClick: lt,
|
|
32
32
|
styles: l,
|
|
33
33
|
classNames: p,
|
|
34
|
-
minWidth:
|
|
35
|
-
naLabel:
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
minWidth: z,
|
|
35
|
+
naLabel: pt
|
|
36
|
+
} = c, H = nt === void 0 ? "en" : nt, Y = at === void 0 ? "light" : at, J = ct === void 0 ? !1 : ct, K = lt === void 0 ? !0 : lt, I = pt === void 0 ? "NA" : pt, yt = jt(null), [u, dt] = y(void 0), [W, mt] = y(void 0), [g, ft] = y("asc"), [x, ut] = y(void 0);
|
|
37
|
+
let T;
|
|
38
|
+
t[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (T = {}, t[0] = T) : T = t[0];
|
|
39
|
+
const [Q, bt] = y(T);
|
|
40
|
+
let G;
|
|
41
|
+
t[1] !== n ? (G = n.filter(Rt).map(Gt), t[1] = n, t[2] = G) : G = t[2];
|
|
42
|
+
const [a, gt] = y(G), [U, Ct] = y(f);
|
|
39
43
|
let R;
|
|
40
|
-
t[
|
|
41
|
-
|
|
44
|
+
t[3] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (R = (r) => {
|
|
45
|
+
Ct(r);
|
|
46
|
+
}, t[3] = R) : R = t[3];
|
|
47
|
+
const Z = vt(R);
|
|
42
48
|
let A;
|
|
43
|
-
t[
|
|
44
|
-
const [a, bt] = y(A), [tt, kt] = y(f);
|
|
45
|
-
let L;
|
|
46
|
-
t[3] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (L = (r) => {
|
|
47
|
-
kt(r);
|
|
48
|
-
}, t[3] = L) : L = t[3];
|
|
49
|
-
const P = $t(L);
|
|
50
|
-
let X;
|
|
51
|
-
t[4] !== s || t[5] !== u || t[6] !== f || t[7] !== a || t[8] !== P || t[9] !== g ? (X = () => {
|
|
49
|
+
t[4] !== n || t[5] !== u || t[6] !== f || t[7] !== a || t[8] !== Z || t[9] !== g ? (A = () => {
|
|
52
50
|
const r = [];
|
|
53
51
|
f.forEach((d) => {
|
|
54
52
|
let o = !0;
|
|
55
53
|
a.forEach((e) => {
|
|
56
54
|
if (typeof d[e.id] != "object" && typeof d[e.id] != "function" && typeof d[e.id] != "symbol")
|
|
57
|
-
if (
|
|
58
|
-
const
|
|
59
|
-
|
|
55
|
+
if (n[n.findIndex((s) => s.columnId === e.id)].separator) {
|
|
56
|
+
const s = d[e.id].split(n[n.findIndex((it) => it.columnId === e.id)].separator);
|
|
57
|
+
wt(s, e.option).length === 0 && (o = !1);
|
|
60
58
|
} else
|
|
61
59
|
e.option.indexOf(d[e.id]) === -1 && (o = !1);
|
|
62
60
|
}), o && r.push(d);
|
|
63
|
-
}),
|
|
64
|
-
}, t[4] =
|
|
65
|
-
let
|
|
66
|
-
t[11] !==
|
|
67
|
-
const
|
|
68
|
-
let
|
|
69
|
-
t[17] !== p?.description || t[18] !== p?.title || t[19] !==
|
|
61
|
+
}), Z(u && f ? Nt(r, [u], [g]) : r);
|
|
62
|
+
}, t[4] = n, t[5] = u, t[6] = f, t[7] = a, t[8] = Z, t[9] = g, t[10] = A) : A = t[10];
|
|
63
|
+
let L;
|
|
64
|
+
t[11] !== n || t[12] !== u || t[13] !== f || t[14] !== a || t[15] !== g ? (L = [u, g, f, a, n], t[11] = n, t[12] = u, t[13] = f, t[14] = a, t[15] = g, t[16] = L) : L = t[16], kt(A, L);
|
|
65
|
+
const _ = p?.graphContainer, tt = l?.graphContainer;
|
|
66
|
+
let j;
|
|
67
|
+
t[17] !== p?.description || t[18] !== p?.title || t[19] !== E || t[20] !== b || t[21] !== l?.description || t[22] !== l?.title || t[23] !== m ? (j = b || E ? /* @__PURE__ */ i.jsx(Ot, { styles: {
|
|
70
68
|
title: l?.title,
|
|
71
69
|
description: l?.description
|
|
72
70
|
}, classNames: {
|
|
73
71
|
title: p?.title,
|
|
74
72
|
description: p?.description
|
|
75
|
-
}, graphTitle: b, graphDescription:
|
|
76
|
-
const
|
|
73
|
+
}, graphTitle: b, graphDescription: E, width: m }) : null, t[17] = p?.description, t[18] = p?.title, t[19] = E, t[20] = b, t[21] = l?.description, t[22] = l?.title, t[23] = m, t[24] = j) : j = t[24];
|
|
74
|
+
const ot = m ? `${m}px` : "100%", rt = h ? `${h}px` : "auto";
|
|
75
|
+
let v;
|
|
76
|
+
t[25] !== ot || t[26] !== rt ? (v = {
|
|
77
|
+
width: ot,
|
|
78
|
+
height: rt
|
|
79
|
+
}, t[25] = ot, t[26] = rt, t[27] = v) : v = t[27];
|
|
80
|
+
let k;
|
|
81
|
+
t[28] !== z ? (k = z ? {
|
|
82
|
+
minWidth: z
|
|
83
|
+
} : void 0, t[28] = z, t[29] = k) : k = t[29];
|
|
77
84
|
let w;
|
|
78
|
-
t[
|
|
79
|
-
width: it,
|
|
80
|
-
height: et
|
|
81
|
-
}, t[25] = it, t[26] = et, t[27] = w) : w = t[27];
|
|
82
|
-
let N;
|
|
83
|
-
t[28] !== T ? (N = T ? {
|
|
84
|
-
minWidth: T
|
|
85
|
-
} : void 0, t[28] = T, t[29] = N) : N = t[29];
|
|
86
|
-
let $;
|
|
87
|
-
t[30] !== s || t[31] !== u || t[32] !== f || t[33] !== a || t[34] !== v || t[35] !== G || t[36] !== I || t[37] !== C || t[38] !== x || t[39] !== j || t[40] !== Z || t[41] !== g || t[42] !== tt ? ($ = f ? /* @__PURE__ */ i.jsxs("table", { className: "w-full", style: {
|
|
85
|
+
t[30] !== n || t[31] !== u || t[32] !== f || t[33] !== a || t[34] !== W || t[35] !== I || t[36] !== C || t[37] !== x || t[38] !== K || t[39] !== g || t[40] !== U ? (w = f ? /* @__PURE__ */ i.jsxs("table", { className: "w-full", style: {
|
|
88
86
|
borderCollapse: "collapse"
|
|
89
87
|
}, children: [
|
|
90
|
-
/* @__PURE__ */ i.jsx("thead", { className: "text-left bg-primary-gray-300 dark:bg-primary-gray-550", children: /* @__PURE__ */ i.jsx("tr", { children:
|
|
91
|
-
width: `calc(${100 * (r.columnWidth || 1) /
|
|
88
|
+
/* @__PURE__ */ i.jsx("thead", { className: "text-left bg-primary-gray-300 dark:bg-primary-gray-550", children: /* @__PURE__ */ i.jsx("tr", { children: n?.map((r, d) => /* @__PURE__ */ i.jsx("th", { className: "text-primary-gray-700 dark:text-primary-gray-100 text-sm", style: {
|
|
89
|
+
width: `calc(${100 * (r.columnWidth || 1) / xt(n.map(Tt))}%`
|
|
92
90
|
}, children: /* @__PURE__ */ i.jsxs("div", { className: "flex gap-2 justify-between items-center p-4", children: [
|
|
93
|
-
/* @__PURE__ */ i.jsx(
|
|
91
|
+
/* @__PURE__ */ i.jsx(S, { size: "sm", marginBottom: "none", className: `w-fit grow text-${r.align || "left"} font-bold`, children: r.columnTitle || r.columnId }),
|
|
94
92
|
r.sortable ? /* @__PURE__ */ i.jsx("button", { type: "button", className: "bg-transparent cursor-pointer p-0 m-0 border-0", onClick: () => {
|
|
95
|
-
u === r.columnId ? (g === "asc" &&
|
|
96
|
-
}, children: u === r.columnId ? g === "asc" ? /* @__PURE__ */ i.jsx(
|
|
93
|
+
u === r.columnId ? (g === "asc" && ft("desc"), g === "desc" && dt(void 0)) : (dt(r.columnId), ft("asc"));
|
|
94
|
+
}, children: u === r.columnId ? g === "asc" ? /* @__PURE__ */ i.jsx(Dt, {}) : /* @__PURE__ */ i.jsx(St, {}) : /* @__PURE__ */ i.jsx(Bt, {}) }) : null,
|
|
97
95
|
r.filterOptions && r.filterOptions.length ? /* @__PURE__ */ i.jsx("button", { type: "button", className: "bg-transparent cursor-pointer m-0 p-0 border-0", onClick: (o) => {
|
|
98
96
|
if (x === r.columnId)
|
|
99
|
-
|
|
97
|
+
ut(void 0);
|
|
100
98
|
else if (o.currentTarget) {
|
|
101
|
-
|
|
99
|
+
ut(r.columnId);
|
|
102
100
|
const e = o.currentTarget.getBoundingClientRect();
|
|
103
|
-
|
|
101
|
+
bt({
|
|
104
102
|
top: e.bottom + window.scrollY,
|
|
105
103
|
left: e.left + window.scrollX - 160 < 0 ? e.left + window.scrollX : e.left + window.scrollX - 160,
|
|
106
104
|
width: "10rem"
|
|
107
105
|
});
|
|
108
106
|
}
|
|
109
|
-
}, children: a[a.findIndex((o) => o.id === r.columnId)].option.length === r.filterOptions?.length ? /* @__PURE__ */ i.jsx(
|
|
107
|
+
}, children: a[a.findIndex((o) => o.id === r.columnId)].option.length === r.filterOptions?.length ? /* @__PURE__ */ i.jsx(Et, {}) : /* @__PURE__ */ i.jsx(Ft, {}) }) : null
|
|
110
108
|
] }) }, d)) }) }),
|
|
111
|
-
/* @__PURE__ */ i.jsx("tbody", { children:
|
|
112
|
-
C && (
|
|
113
|
-
}, children:
|
|
114
|
-
width: `calc(${100 * (r.columnWidth || 1) /
|
|
115
|
-
}, children: /* @__PURE__ */ i.jsx("div", { className: `text-primary-gray-700 dark:text-primary-gray-100 flex p-4 ${o.align === "right" ? "justify-end" : o.align === "center" ? "justify-center" : "justify-start"}`, children: typeof r[o.columnId] == "number" ? /* @__PURE__ */ i.jsx(
|
|
109
|
+
/* @__PURE__ */ i.jsx("tbody", { children: U?.map((r, d) => /* @__PURE__ */ i.jsx("tr", { className: `cursor-${C ? "pointer" : "auto"} border-b border-b-primary-gray-400 dark:border-b-primary-gray-500 ${ht(W, r) ? "bg-primary-gray-200 dark:bg-primary-gray-600" : "bg-transparent"}`, style: r.rowStyle, onClick: () => {
|
|
110
|
+
C && (ht(W, r) && K ? (mt(void 0), C(void 0)) : (mt(r), C(r)));
|
|
111
|
+
}, children: n.map((o, e) => /* @__PURE__ */ i.jsx("td", { className: `text-primary-gray-700 dark:text-primary-gray-100 text-sm text-${o.align || "left"}`, style: {
|
|
112
|
+
width: `calc(${100 * (r.columnWidth || 1) / xt(n.map(Wt))}%`
|
|
113
|
+
}, children: /* @__PURE__ */ i.jsx("div", { className: `text-primary-gray-700 dark:text-primary-gray-100 flex p-4 ${o.align === "right" ? "justify-end" : o.align === "center" ? "justify-center" : "justify-start"}`, children: typeof r[o.columnId] == "number" ? /* @__PURE__ */ i.jsx(S, { marginBottom: "none", size: "sm", className: `text-primary-gray-700 dark:text-primary-gray-100 w-fit ${o.chip ? "grow-0 rounded-sm p-2" : "grow rounded-none p-0"} text-${o.align || "left"} ${o.chip ? o.chipColors ? "" : "bg-primary-gray-300 dark:bg-primary-gray-500" : "bg-transparent"}`, style: {
|
|
116
114
|
...o.chip && o.chipColors ? {
|
|
117
|
-
backgroundColor: o.chipColors[o.chipColors.findIndex((
|
|
118
|
-
color:
|
|
115
|
+
backgroundColor: o.chipColors[o.chipColors.findIndex((s) => s.value === r[o.chipColumnId || o.columnId])].color,
|
|
116
|
+
color: st(o.chipColors[o.chipColors.findIndex((s) => s.value === r[o.chipColumnId || o.columnId])].color)
|
|
119
117
|
} : {}
|
|
120
|
-
}, children:
|
|
118
|
+
}, children: X(r[o.columnId], I, o.precision, o.prefix, o.suffix, o.locale, o.padZeros) }) : typeof r[o.columnId] == "string" ? o.separator ? /* @__PURE__ */ i.jsx("div", { className: "text-primary-gray-700 dark:text-primary-gray-100 flex flex-wrap gap-2", children: r[o.columnId].split(o.separator).map((s, it) => /* @__PURE__ */ i.jsx(S, { marginBottom: "none", size: "sm", className: `text-primary-gray-700 dark:text-primary-gray-100 w-fit ${o.chip ? "grow-0 rounded-sm p-2" : "grow rounded-none p-0"} text-${o.align || "left"} ${o.chip ? o.chipColors ? "" : "bg-primary-gray-300 dark:bg-primary-gray-500" : "bg-transparent"}`, style: {
|
|
121
119
|
...o.chip && o.chipColors ? {
|
|
122
|
-
backgroundColor: o.chipColors[o.chipColors.findIndex((
|
|
123
|
-
color:
|
|
120
|
+
backgroundColor: o.chipColors[o.chipColors.findIndex((et) => et.value === (o.chipColumnId ? r[o.chipColumnId] : s))].color,
|
|
121
|
+
color: st(o.chipColors[o.chipColors.findIndex((et) => et.value === (o.chipColumnId ? r[o.chipColumnId] : s))].color)
|
|
124
122
|
} : {}
|
|
125
|
-
}, children:
|
|
123
|
+
}, children: X(s, I, o.precision, o.prefix, o.suffix, o.locale, o.padZeros) }, it)) }) : /* @__PURE__ */ i.jsx(S, { marginBottom: "none", size: "sm", className: `text-primary-gray-700 dark:text-primary-gray-100 w-fit ${o.chip ? "grow-0 rounded-sm p-2" : "grow rounded-none p-0"} text-${o.align || "left"} ${o.chip ? o.chipColors ? "" : "bg-primary-gray-300 dark:bg-primary-gray-500" : "bg-transparent"}`, style: {
|
|
126
124
|
...o.chip && o.chipColors ? {
|
|
127
|
-
backgroundColor: o.chipColors[o.chipColors.findIndex((
|
|
128
|
-
color:
|
|
125
|
+
backgroundColor: o.chipColors[o.chipColors.findIndex((s) => s.value === r[o.chipColumnId || o.columnId])].color,
|
|
126
|
+
color: st(o.chipColors[o.chipColors.findIndex((s) => s.value === r[o.chipColumnId || o.columnId])].color)
|
|
129
127
|
} : {}
|
|
130
|
-
}, children:
|
|
131
|
-
] }) : null, t[30] =
|
|
128
|
+
}, children: X(r[o.columnId], I, o.precision, o.prefix, o.suffix, o.locale, o.padZeros) }) : /* @__PURE__ */ i.jsx("div", { children: X(r[o.columnId], I, o.precision, o.prefix, o.suffix, o.locale, o.padZeros) }) }) }, e)) }, d)) })
|
|
129
|
+
] }) : null, t[30] = n, t[31] = u, t[32] = f, t[33] = a, t[34] = W, t[35] = I, t[36] = C, t[37] = x, t[38] = K, t[39] = g, t[40] = U, t[41] = w) : w = t[41];
|
|
130
|
+
let N;
|
|
131
|
+
t[42] !== k || t[43] !== w ? (N = /* @__PURE__ */ i.jsx("div", { style: k, children: w }), t[42] = k, t[43] = w, t[44] = N) : N = t[44];
|
|
132
|
+
let $;
|
|
133
|
+
t[45] !== v || t[46] !== N ? ($ = /* @__PURE__ */ i.jsx("div", { className: "grow flex flex-col justify-center", children: /* @__PURE__ */ i.jsx("div", { className: "undp-scrollbar", style: v, children: N }) }), t[45] = v, t[46] = N, t[47] = $) : $ = t[47];
|
|
132
134
|
let O;
|
|
133
|
-
t[
|
|
134
|
-
let D;
|
|
135
|
-
t[47] !== w || t[48] !== O ? (D = /* @__PURE__ */ i.jsx("div", { className: "grow flex flex-col justify-center", children: /* @__PURE__ */ i.jsx("div", { className: "undp-scrollbar", style: w, children: O }) }), t[47] = w, t[48] = O, t[49] = D) : D = t[49];
|
|
136
|
-
let S;
|
|
137
|
-
t[50] !== p?.footnote || t[51] !== p?.source || t[52] !== W || t[53] !== F || t[54] !== l?.footnote || t[55] !== l?.source || t[56] !== m ? (S = F || W ? /* @__PURE__ */ i.jsx(Bt, { styles: {
|
|
135
|
+
t[48] !== p?.footnote || t[49] !== p?.source || t[50] !== F || t[51] !== B || t[52] !== l?.footnote || t[53] !== l?.source || t[54] !== m ? (O = B || F ? /* @__PURE__ */ i.jsx($t, { styles: {
|
|
138
136
|
footnote: l?.footnote,
|
|
139
137
|
source: l?.source
|
|
140
138
|
}, classNames: {
|
|
141
139
|
footnote: p?.footnote,
|
|
142
140
|
source: p?.source
|
|
143
|
-
}, sources:
|
|
144
|
-
let
|
|
145
|
-
t[
|
|
146
|
-
/* @__PURE__ */ i.jsx(
|
|
147
|
-
/* @__PURE__ */ i.jsx("div", { className: "flex flex-col gap-2", children:
|
|
141
|
+
}, sources: B, footNote: F, width: m }) : null, t[48] = p?.footnote, t[49] = p?.source, t[50] = F, t[51] = B, t[52] = l?.footnote, t[53] = l?.source, t[54] = m, t[55] = O) : O = t[55];
|
|
142
|
+
let D;
|
|
143
|
+
t[56] !== n || t[57] !== a || t[58] !== Q || t[59] !== x ? (D = x && /* @__PURE__ */ i.jsx("div", { style: Q, className: "absolute p-3 border z-[1000] rounded-sm bg-primary-white dark:bg-primary-gray-700 border-primary-gray-300 dark:border-primary-gray-550", children: /* @__PURE__ */ i.jsxs("div", { className: "max-w-60", children: [
|
|
144
|
+
/* @__PURE__ */ i.jsx(S, { size: "sm", marginBottom: "2xs", className: "font-bold", children: "Filter data by" }),
|
|
145
|
+
/* @__PURE__ */ i.jsx("div", { className: "flex flex-col gap-2", children: n[n.findIndex((r) => r.columnId === x)].filterOptions?.map((r, d) => /* @__PURE__ */ i.jsx("div", { children: /* @__PURE__ */ i.jsxs("label", { className: "undp-viz-label", children: [
|
|
148
146
|
/* @__PURE__ */ i.jsx("input", { type: "checkbox", className: "undp-viz-checkbox", checked: a[a.findIndex((o) => o.id === x)].option.indexOf(r) !== -1, onChange: () => {
|
|
149
|
-
const o = a.findIndex((
|
|
147
|
+
const o = a.findIndex((s) => s.id === x), e = [...a[o].option];
|
|
150
148
|
if (e.indexOf(r) !== -1) {
|
|
151
149
|
e.splice(e.indexOf(r), 1);
|
|
152
|
-
const
|
|
153
|
-
|
|
150
|
+
const s = [...a];
|
|
151
|
+
s[o].option = e, gt(s);
|
|
154
152
|
} else {
|
|
155
153
|
e.push(r);
|
|
156
|
-
const
|
|
157
|
-
|
|
154
|
+
const s = [...a];
|
|
155
|
+
s[o].option = e, gt(s);
|
|
158
156
|
}
|
|
159
157
|
} }),
|
|
160
158
|
r
|
|
161
159
|
] }, d) }, d)) })
|
|
162
|
-
] }) }), t[
|
|
163
|
-
let
|
|
164
|
-
return t[
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
] }), t[
|
|
160
|
+
] }) }), t[56] = n, t[57] = a, t[58] = Q, t[59] = x, t[60] = D) : D = t[60];
|
|
161
|
+
let P;
|
|
162
|
+
return t[61] !== V || t[62] !== J || t[63] !== M || t[64] !== h || t[65] !== H || t[66] !== q || t[67] !== _ || t[68] !== tt || t[69] !== j || t[70] !== $ || t[71] !== O || t[72] !== D || t[73] !== Y || t[74] !== m ? (P = /* @__PURE__ */ i.jsxs(zt, { className: _, style: tt, id: M, ref: yt, "aria-label": V, backgroundColor: J, theme: Y, language: H, width: m, height: h, padding: q, children: [
|
|
163
|
+
j,
|
|
164
|
+
$,
|
|
165
|
+
O,
|
|
166
|
+
D
|
|
167
|
+
] }), t[61] = V, t[62] = J, t[63] = M, t[64] = h, t[65] = H, t[66] = q, t[67] = _, t[68] = tt, t[69] = j, t[70] = $, t[71] = O, t[72] = D, t[73] = Y, t[74] = m, t[75] = P) : P = t[75], P;
|
|
170
168
|
}
|
|
171
|
-
function
|
|
169
|
+
function Wt(c) {
|
|
172
170
|
return c.columnWidth || 1;
|
|
173
171
|
}
|
|
174
|
-
function
|
|
172
|
+
function Tt(c) {
|
|
175
173
|
return c.columnWidth || 1;
|
|
176
174
|
}
|
|
177
|
-
function
|
|
175
|
+
function Gt(c) {
|
|
178
176
|
return {
|
|
179
177
|
id: c.columnId,
|
|
180
178
|
option: c.filterOptions
|
|
181
179
|
};
|
|
182
180
|
}
|
|
183
|
-
function
|
|
181
|
+
function Rt(c) {
|
|
184
182
|
return c.filterOptions && c.filterOptions.length > 0;
|
|
185
183
|
}
|
|
186
184
|
export {
|
|
187
|
-
|
|
185
|
+
Qt as DataTable
|
|
188
186
|
};
|
|
189
187
|
//# sourceMappingURL=DataTable.js.map
|
package/dist/DataTable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataTable.js","sources":["../src/Components/Graphs/DataTable/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport isEqual from 'fast-deep-equal';\r\nimport { useEffect, useEffectEvent, useRef, useState } from 'react';\r\nimport intersection from 'lodash.intersection';\r\nimport { P } from '@undp/design-system-react/Typography';\r\nimport orderBy from 'lodash.orderby';\r\n\r\nimport {\r\n DataTableColumnDataType,\r\n Languages,\r\n SourcesDataType,\r\n StyleObject,\r\n ClassNameObject,\r\n} from '@/Types';\r\nimport { numberFormattingFunction } from '@/Utils/numberFormattingFunction';\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport {\r\n FilterIcon,\r\n FilterIconApplied,\r\n SortingIcon,\r\n SortingIconAscending,\r\n SortingIconDescending,\r\n} from '@/Components/Icons';\r\nimport { getTextColorBasedOnBgColor } from '@/Utils/getTextColorBasedOnBgColor';\r\nimport { GraphContainer } from '@/Components/Elements/GraphContainer';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects. If the data have a object for ket `rowStyle` then that is use to style the row of the table. */\r\n data: object[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Background color of the graph */\r\n backgroundColor?: string | boolean;\r\n /** Custom styles for the graph. Each object should be a valid React CSS style object. */\r\n styles?: StyleObject;\r\n /** Custom class names */\r\n classNames?: ClassNameObject;\r\n\r\n // Size and Spacing\r\n /** Width of the graph */\r\n width?: number;\r\n /** Minimum width of the table as string in px */\r\n minWidth?: string;\r\n /** Height of the graph */\r\n height?: number;\r\n /** Padding around the graph. Defaults to 0 if no backgroundColor is mentioned else defaults to 1rem */\r\n padding?: string;\r\n\r\n // Graph Parameters\r\n /** Column settings for each column shown in the table. */\r\n columnData: DataTableColumnDataType[];\r\n /** Specifies the number of decimal places to display in the value. */\r\n precision?: number;\r\n /** Defines how “NA” values should be displayed/labelled in the graph */\r\n naLabel?: string;\r\n /** Reset selection on double-click. Only applicable when used in a dashboard context with filters. */\r\n resetSelectionOnDoubleClick?: boolean;\r\n\r\n // Interactions and Callbacks\r\n /** Callback for mouse click event */\r\n onSeriesMouseClick?: (_d: any) => void;\r\n\r\n // Configuration and Options\r\n /** Language setting */\r\n language?: Languages;\r\n /** Color theme */\r\n theme?: 'light' | 'dark';\r\n /** Unique ID for the graph */\r\n graphID?: string;\r\n /** Locale for number formatting. Must matches what `Intl.NumberFormat` expects. */\r\n locale?: string;\r\n}\r\n\r\nconst TotalWidth = (columns: (number | undefined)[]) => {\r\n const columnWidth = columns.map(d => d || 1);\r\n const sum = columnWidth.reduce((acc, cur) => acc + cur, 0);\r\n return sum;\r\n};\r\n\r\nexport function DataTable(props: Props) {\r\n const {\r\n width,\r\n height,\r\n graphTitle,\r\n sources,\r\n graphDescription,\r\n footNote,\r\n graphID,\r\n data,\r\n columnData,\r\n onSeriesMouseClick,\r\n language = 'en',\r\n theme = 'light',\r\n ariaLabel,\r\n backgroundColor = false,\r\n padding,\r\n resetSelectionOnDoubleClick = true,\r\n styles,\r\n classNames,\r\n minWidth,\r\n naLabel = 'NA',\r\n precision = 2,\r\n locale = 'en',\r\n } = props;\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n const [columnSortBy, setColumnSortBy] = useState<string | undefined>(undefined);\r\n\r\n const [mouseClickData, setMouseClickData] = useState<any>(undefined);\r\n const [sortDirection, setSortDirection] = useState<'asc' | 'desc'>('asc');\r\n const [popupVisible, setPopupVisible] = useState<string | undefined>(undefined);\r\n const [popupStyle, setPopupStyle] = useState({});\r\n const [filterOption, setFilterOption] = useState(\r\n columnData\r\n .filter(d => d.filterOptions && d.filterOptions.length > 0)\r\n .map(d => ({ id: d.columnId, option: d.filterOptions as string[] })),\r\n );\r\n const [sortedData, setSortedData] = useState(data);\r\n\r\n const sortDataEvent = useEffectEvent((data: object[]) => {\r\n setSortedData(data);\r\n });\r\n\r\n useEffect(() => {\r\n const dataFiltered: any = [];\r\n\r\n data.forEach((d: any) => {\r\n let filter = true;\r\n filterOption.forEach(el => {\r\n if (\r\n typeof d[el.id] !== 'object' &&\r\n typeof d[el.id] !== 'function' &&\r\n typeof d[el.id] !== 'symbol'\r\n ) {\r\n if (columnData[columnData.findIndex(cd => cd.columnId === el.id)].separator) {\r\n const arr = d[el.id].split(\r\n columnData[columnData.findIndex(cd => cd.columnId === el.id)].separator,\r\n );\r\n if (intersection(arr, el.option).length === 0) filter = false;\r\n } else if (el.option.indexOf(d[el.id]) === -1) filter = false;\r\n }\r\n });\r\n if (filter) dataFiltered.push(d);\r\n });\r\n if (columnSortBy && data) {\r\n sortDataEvent(orderBy(dataFiltered, [columnSortBy], [sortDirection]));\r\n } else {\r\n sortDataEvent(dataFiltered);\r\n }\r\n }, [columnSortBy, sortDirection, data, filterOption, columnData]);\r\n\r\n return (\r\n <GraphContainer\r\n className={classNames?.graphContainer}\r\n style={styles?.graphContainer}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={ariaLabel}\r\n backgroundColor={backgroundColor}\r\n theme={theme}\r\n language={language}\r\n width={width}\r\n height={height}\r\n padding={padding}\r\n >\r\n {graphTitle || graphDescription ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n />\r\n ) : null}\r\n <div className='grow flex flex-col justify-center'>\r\n <div\r\n className='undp-scrollbar'\r\n style={{\r\n width: width ? `${width}px` : '100%',\r\n height: height ? `${height}px` : 'auto',\r\n }}\r\n >\r\n <div style={minWidth ? { minWidth } : undefined}>\r\n {data ? (\r\n <table className='w-full' style={{ borderCollapse: 'collapse' }}>\r\n <thead className='text-left bg-primary-gray-300 dark:bg-primary-gray-550'>\r\n <tr>\r\n {columnData?.map((d, i) => (\r\n <th\r\n className='text-primary-gray-700 dark:text-primary-gray-100 text-sm'\r\n style={{\r\n width: `calc(${\r\n (100 * (d.columnWidth || 1)) /\r\n TotalWidth(columnData.map(cd => cd.columnWidth || 1))\r\n }%`,\r\n }}\r\n key={i}\r\n >\r\n <div className='flex gap-2 justify-between items-center p-4'>\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className={`w-fit grow text-${d.align || 'left'} font-bold`}\r\n >\r\n {d.columnTitle || d.columnId}\r\n </P>\r\n {d.sortable ? (\r\n <button\r\n type='button'\r\n className='bg-transparent cursor-pointer p-0 m-0 border-0'\r\n onClick={() => {\r\n if (columnSortBy === d.columnId) {\r\n if (sortDirection === 'asc') {\r\n setSortDirection('desc');\r\n }\r\n if (sortDirection === 'desc') {\r\n setColumnSortBy(undefined);\r\n }\r\n } else {\r\n setColumnSortBy(d.columnId);\r\n setSortDirection('asc');\r\n }\r\n }}\r\n >\r\n {columnSortBy === d.columnId ? (\r\n sortDirection === 'asc' ? (\r\n <SortingIconAscending />\r\n ) : (\r\n <SortingIconDescending />\r\n )\r\n ) : (\r\n <SortingIcon />\r\n )}\r\n </button>\r\n ) : null}\r\n {d.filterOptions && d.filterOptions.length ? (\r\n <button\r\n type='button'\r\n className='bg-transparent cursor-pointer m-0 p-0 border-0'\r\n onClick={event => {\r\n if (popupVisible === d.columnId) {\r\n setPopupVisible(undefined);\r\n } else if (event.currentTarget) {\r\n setPopupVisible(d.columnId);\r\n const rect = event.currentTarget.getBoundingClientRect();\r\n setPopupStyle({\r\n top: rect.bottom + window.scrollY,\r\n left:\r\n rect.left + window.scrollX - 160 < 0\r\n ? rect.left + window.scrollX\r\n : rect.left + window.scrollX - 160,\r\n width: '10rem',\r\n });\r\n }\r\n }}\r\n >\r\n {filterOption[filterOption.findIndex(el => el.id === d.columnId)]\r\n .option.length === d.filterOptions?.length ? (\r\n <FilterIcon />\r\n ) : (\r\n <FilterIconApplied />\r\n )}\r\n </button>\r\n ) : null}\r\n </div>\r\n </th>\r\n ))}\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {sortedData?.map((d: any, i: number) => (\r\n <tr\r\n key={i}\r\n className={`cursor-${\r\n onSeriesMouseClick ? 'pointer' : 'auto'\r\n } border-b border-b-primary-gray-400 dark:border-b-primary-gray-500 ${\r\n isEqual(mouseClickData, d)\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-600'\r\n : 'bg-transparent'\r\n }`}\r\n style={d.rowStyle}\r\n onClick={() => {\r\n if (onSeriesMouseClick) {\r\n if (isEqual(mouseClickData, d) && resetSelectionOnDoubleClick) {\r\n setMouseClickData(undefined);\r\n onSeriesMouseClick(undefined);\r\n } else {\r\n setMouseClickData(d);\r\n onSeriesMouseClick(d);\r\n }\r\n }\r\n }}\r\n >\r\n {columnData.map((el, j) => (\r\n <td\r\n key={j}\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 text-sm text-${\r\n el.align || 'left'\r\n }`}\r\n style={{\r\n width: `calc(${\r\n (100 * (d.columnWidth || 1)) /\r\n TotalWidth(columnData.map(cd => cd.columnWidth || 1))\r\n }%`,\r\n }}\r\n >\r\n <div\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 flex p-4 ${\r\n el.align === 'right'\r\n ? 'justify-end'\r\n : el.align === 'center'\r\n ? 'justify-center'\r\n : 'justify-start'\r\n }`}\r\n >\r\n {typeof d[el.columnId] === 'number' ? (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 w-fit ${\r\n el.chip ? 'grow-0 rounded-sm p-2' : 'grow rounded-none p-0'\r\n } text-${el.align || 'left'} ${\r\n el.chip\r\n ? !el.chipColors\r\n ? 'bg-primary-gray-300 dark:bg-primary-gray-500'\r\n : ''\r\n : 'bg-transparent'\r\n }`}\r\n style={{\r\n ...(el.chip && el.chipColors\r\n ? {\r\n backgroundColor:\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n color: getTextColorBasedOnBgColor(\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n ),\r\n }\r\n : {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n d[el.columnId],\r\n naLabel,\r\n precision,\r\n el.prefix,\r\n el.suffix,\r\n locale,\r\n )}\r\n </P>\r\n ) : typeof d[el.columnId] === 'string' ? (\r\n el.separator ? (\r\n <div className='text-primary-gray-700 dark:text-primary-gray-100 flex flex-wrap gap-2'>\r\n {d[el.columnId]\r\n .split(el.separator)\r\n .map((element: string, indx: number) => (\r\n <P\r\n key={indx}\r\n marginBottom='none'\r\n size='sm'\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 w-fit ${\r\n el.chip\r\n ? 'grow-0 rounded-sm p-2'\r\n : 'grow rounded-none p-0'\r\n } text-${el.align || 'left'} ${\r\n el.chip\r\n ? !el.chipColors\r\n ? 'bg-primary-gray-300 dark:bg-primary-gray-500'\r\n : ''\r\n : 'bg-transparent'\r\n }`}\r\n style={{\r\n ...(el.chip && el.chipColors\r\n ? {\r\n backgroundColor:\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c =>\r\n c.value ===\r\n (el.chipColumnId\r\n ? d[el.chipColumnId]\r\n : element),\r\n )\r\n ].color,\r\n color: getTextColorBasedOnBgColor(\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c =>\r\n c.value ===\r\n (el.chipColumnId\r\n ? d[el.chipColumnId]\r\n : element),\r\n )\r\n ].color,\r\n ),\r\n }\r\n : {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n element,\r\n naLabel,\r\n precision,\r\n el.prefix,\r\n el.suffix,\r\n locale,\r\n )}\r\n </P>\r\n ))}\r\n </div>\r\n ) : (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 w-fit ${\r\n el.chip ? 'grow-0 rounded-sm p-2' : 'grow rounded-none p-0'\r\n } text-${el.align || 'left'} ${\r\n el.chip\r\n ? !el.chipColors\r\n ? 'bg-primary-gray-300 dark:bg-primary-gray-500'\r\n : ''\r\n : 'bg-transparent'\r\n }`}\r\n style={{\r\n ...(el.chip && el.chipColors\r\n ? {\r\n backgroundColor:\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n color: getTextColorBasedOnBgColor(\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n ),\r\n }\r\n : {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n d[el.columnId],\r\n naLabel,\r\n precision,\r\n el.prefix,\r\n el.suffix,\r\n locale,\r\n )}\r\n </P>\r\n )\r\n ) : (\r\n <div>\r\n {numberFormattingFunction(\r\n d[el.columnId],\r\n naLabel,\r\n precision,\r\n el.prefix,\r\n el.suffix,\r\n locale,\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </td>\r\n ))}\r\n </tr>\r\n ))}\r\n </tbody>\r\n </table>\r\n ) : null}\r\n </div>\r\n </div>\r\n </div>\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n {popupVisible && (\r\n <div\r\n style={popupStyle}\r\n className='absolute p-3 border z-[1000] rounded-sm bg-primary-white dark:bg-primary-gray-700 border-primary-gray-300 dark:border-primary-gray-550'\r\n >\r\n <div className='max-w-60'>\r\n <P size='sm' marginBottom='2xs' className='font-bold'>\r\n Filter data by\r\n </P>\r\n <div className='flex flex-col gap-2'>\r\n {columnData[\r\n columnData.findIndex(d => d.columnId === popupVisible)\r\n ].filterOptions?.map((el, i) => (\r\n <div key={i}>\r\n <label key={i} className='undp-viz-label'>\r\n <input\r\n type='checkbox'\r\n className='undp-viz-checkbox'\r\n checked={\r\n filterOption[\r\n filterOption.findIndex(d => d.id === popupVisible)\r\n ].option.indexOf(el) !== -1\r\n }\r\n onChange={() => {\r\n const indx = filterOption.findIndex(d => d.id === popupVisible);\r\n const opt = [...filterOption[indx].option];\r\n if (opt.indexOf(el) !== -1) {\r\n opt.splice(opt.indexOf(el), 1);\r\n const filterOptionDuplicate = [...filterOption];\r\n filterOptionDuplicate[indx].option = opt;\r\n setFilterOption(filterOptionDuplicate);\r\n } else {\r\n opt.push(el);\r\n const filterOptionDuplicate = [...filterOption];\r\n filterOptionDuplicate[indx].option = opt;\r\n setFilterOption(filterOptionDuplicate);\r\n }\r\n }}\r\n />\r\n {el}\r\n </label>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["TotalWidth","columns","map","d","reduce","acc","cur","DataTable","props","$","_c","width","height","graphTitle","sources","graphDescription","footNote","graphID","data","columnData","onSeriesMouseClick","language","t0","theme","t1","ariaLabel","backgroundColor","t2","padding","resetSelectionOnDoubleClick","t3","styles","classNames","minWidth","naLabel","t4","precision","t5","locale","t6","undefined","graphParentDiv","useRef","columnSortBy","setColumnSortBy","useState","mouseClickData","setMouseClickData","sortDirection","setSortDirection","popupVisible","setPopupVisible","t7","Symbol","for","popupStyle","setPopupStyle","t8","filter","_temp","_temp2","filterOption","setFilterOption","sortedData","setSortedData","t9","data_0","sortDataEvent","useEffectEvent","t10","dataFiltered","forEach","d_1","el","id","findIndex","cd_0","cd","columnId","separator","arr","split","intersection","option","length","indexOf","push","orderBy","t11","useEffect","t12","graphContainer","t13","t14","description","title","jsx","GraphHeader","t15","t16","t17","t18","t19","jsxs","borderCollapse","d_2","i","columnWidth","_temp3","P","align","columnTitle","sortable","SortingIconAscending","SortingIconDescending","SortingIcon","filterOptions","event","currentTarget","rect","getBoundingClientRect","top","bottom","window","scrollY","left","scrollX","el_0","FilterIcon","FilterIconApplied","d_3","i_0","isEqual","rowStyle","el_1","j","_temp4","chip","chipColors","c","value","chipColumnId","color","getTextColorBasedOnBgColor","c_0","numberFormattingFunction","prefix","suffix","element","indx","c_1","c_2","c_3","c_4","t20","t21","t22","footnote","source","GraphFooter","t23","d_4","el_2","i_1","d_5","indx_0","d_6","opt","splice","filterOptionDuplicate","filterOptionDuplicate_0","t24","GraphContainer","cd_2","cd_1","d_0"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DataTable.js","sources":["../src/Components/Graphs/DataTable/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\r\nimport isEqual from 'fast-deep-equal';\r\nimport { useEffect, useEffectEvent, useRef, useState } from 'react';\r\nimport intersection from 'lodash.intersection';\r\nimport { P } from '@undp/design-system-react/Typography';\r\nimport orderBy from 'lodash.orderby';\r\n\r\nimport {\r\n DataTableColumnDataType,\r\n Languages,\r\n SourcesDataType,\r\n StyleObject,\r\n ClassNameObject,\r\n} from '@/Types';\r\nimport { numberFormattingFunction } from '@/Utils/numberFormattingFunction';\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport {\r\n FilterIcon,\r\n FilterIconApplied,\r\n SortingIcon,\r\n SortingIconAscending,\r\n SortingIconDescending,\r\n} from '@/Components/Icons';\r\nimport { getTextColorBasedOnBgColor } from '@/Utils/getTextColorBasedOnBgColor';\r\nimport { GraphContainer } from '@/Components/Elements/GraphContainer';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects. If the data have a object for ket `rowStyle` then that is use to style the row of the table. */\r\n data: object[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Background color of the graph */\r\n backgroundColor?: string | boolean;\r\n /** Custom styles for the graph. Each object should be a valid React CSS style object. */\r\n styles?: StyleObject;\r\n /** Custom class names */\r\n classNames?: ClassNameObject;\r\n\r\n // Size and Spacing\r\n /** Width of the graph */\r\n width?: number;\r\n /** Minimum width of the table as string in px */\r\n minWidth?: string;\r\n /** Height of the graph */\r\n height?: number;\r\n /** Padding around the graph. Defaults to 0 if no backgroundColor is mentioned else defaults to 1rem */\r\n padding?: string;\r\n\r\n // Graph Parameters\r\n /** Column settings for each column shown in the table. */\r\n columnData: DataTableColumnDataType[];\r\n /** Defines how “NA” values should be displayed/labelled in the graph */\r\n naLabel?: string;\r\n /** Reset selection on double-click. Only applicable when used in a dashboard context with filters. */\r\n resetSelectionOnDoubleClick?: boolean;\r\n\r\n // Interactions and Callbacks\r\n /** Callback for mouse click event */\r\n onSeriesMouseClick?: (_d: any) => void;\r\n\r\n // Configuration and Options\r\n /** Language setting */\r\n language?: Languages;\r\n /** Color theme */\r\n theme?: 'light' | 'dark';\r\n /** Unique ID for the graph */\r\n graphID?: string;\r\n}\r\n\r\nconst TotalWidth = (columns: (number | undefined)[]) => {\r\n const columnWidth = columns.map(d => d || 1);\r\n const sum = columnWidth.reduce((acc, cur) => acc + cur, 0);\r\n return sum;\r\n};\r\n\r\nexport function DataTable(props: Props) {\r\n const {\r\n width,\r\n height,\r\n graphTitle,\r\n sources,\r\n graphDescription,\r\n footNote,\r\n graphID,\r\n data,\r\n columnData,\r\n onSeriesMouseClick,\r\n language = 'en',\r\n theme = 'light',\r\n ariaLabel,\r\n backgroundColor = false,\r\n padding,\r\n resetSelectionOnDoubleClick = true,\r\n styles,\r\n classNames,\r\n minWidth,\r\n naLabel = 'NA',\r\n } = props;\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n const [columnSortBy, setColumnSortBy] = useState<string | undefined>(undefined);\r\n\r\n const [mouseClickData, setMouseClickData] = useState<any>(undefined);\r\n const [sortDirection, setSortDirection] = useState<'asc' | 'desc'>('asc');\r\n const [popupVisible, setPopupVisible] = useState<string | undefined>(undefined);\r\n const [popupStyle, setPopupStyle] = useState({});\r\n const [filterOption, setFilterOption] = useState(\r\n columnData\r\n .filter(d => d.filterOptions && d.filterOptions.length > 0)\r\n .map(d => ({ id: d.columnId, option: d.filterOptions as string[] })),\r\n );\r\n const [sortedData, setSortedData] = useState(data);\r\n\r\n const sortDataEvent = useEffectEvent((data: object[]) => {\r\n setSortedData(data);\r\n });\r\n\r\n useEffect(() => {\r\n const dataFiltered: any = [];\r\n\r\n data.forEach((d: any) => {\r\n let filter = true;\r\n filterOption.forEach(el => {\r\n if (\r\n typeof d[el.id] !== 'object' &&\r\n typeof d[el.id] !== 'function' &&\r\n typeof d[el.id] !== 'symbol'\r\n ) {\r\n if (columnData[columnData.findIndex(cd => cd.columnId === el.id)].separator) {\r\n const arr = d[el.id].split(\r\n columnData[columnData.findIndex(cd => cd.columnId === el.id)].separator,\r\n );\r\n if (intersection(arr, el.option).length === 0) filter = false;\r\n } else if (el.option.indexOf(d[el.id]) === -1) filter = false;\r\n }\r\n });\r\n if (filter) dataFiltered.push(d);\r\n });\r\n if (columnSortBy && data) {\r\n sortDataEvent(orderBy(dataFiltered, [columnSortBy], [sortDirection]));\r\n } else {\r\n sortDataEvent(dataFiltered);\r\n }\r\n }, [columnSortBy, sortDirection, data, filterOption, columnData]);\r\n\r\n return (\r\n <GraphContainer\r\n className={classNames?.graphContainer}\r\n style={styles?.graphContainer}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={ariaLabel}\r\n backgroundColor={backgroundColor}\r\n theme={theme}\r\n language={language}\r\n width={width}\r\n height={height}\r\n padding={padding}\r\n >\r\n {graphTitle || graphDescription ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n />\r\n ) : null}\r\n <div className='grow flex flex-col justify-center'>\r\n <div\r\n className='undp-scrollbar'\r\n style={{\r\n width: width ? `${width}px` : '100%',\r\n height: height ? `${height}px` : 'auto',\r\n }}\r\n >\r\n <div style={minWidth ? { minWidth } : undefined}>\r\n {data ? (\r\n <table className='w-full' style={{ borderCollapse: 'collapse' }}>\r\n <thead className='text-left bg-primary-gray-300 dark:bg-primary-gray-550'>\r\n <tr>\r\n {columnData?.map((d, i) => (\r\n <th\r\n className='text-primary-gray-700 dark:text-primary-gray-100 text-sm'\r\n style={{\r\n width: `calc(${\r\n (100 * (d.columnWidth || 1)) /\r\n TotalWidth(columnData.map(cd => cd.columnWidth || 1))\r\n }%`,\r\n }}\r\n key={i}\r\n >\r\n <div className='flex gap-2 justify-between items-center p-4'>\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className={`w-fit grow text-${d.align || 'left'} font-bold`}\r\n >\r\n {d.columnTitle || d.columnId}\r\n </P>\r\n {d.sortable ? (\r\n <button\r\n type='button'\r\n className='bg-transparent cursor-pointer p-0 m-0 border-0'\r\n onClick={() => {\r\n if (columnSortBy === d.columnId) {\r\n if (sortDirection === 'asc') {\r\n setSortDirection('desc');\r\n }\r\n if (sortDirection === 'desc') {\r\n setColumnSortBy(undefined);\r\n }\r\n } else {\r\n setColumnSortBy(d.columnId);\r\n setSortDirection('asc');\r\n }\r\n }}\r\n >\r\n {columnSortBy === d.columnId ? (\r\n sortDirection === 'asc' ? (\r\n <SortingIconAscending />\r\n ) : (\r\n <SortingIconDescending />\r\n )\r\n ) : (\r\n <SortingIcon />\r\n )}\r\n </button>\r\n ) : null}\r\n {d.filterOptions && d.filterOptions.length ? (\r\n <button\r\n type='button'\r\n className='bg-transparent cursor-pointer m-0 p-0 border-0'\r\n onClick={event => {\r\n if (popupVisible === d.columnId) {\r\n setPopupVisible(undefined);\r\n } else if (event.currentTarget) {\r\n setPopupVisible(d.columnId);\r\n const rect = event.currentTarget.getBoundingClientRect();\r\n setPopupStyle({\r\n top: rect.bottom + window.scrollY,\r\n left:\r\n rect.left + window.scrollX - 160 < 0\r\n ? rect.left + window.scrollX\r\n : rect.left + window.scrollX - 160,\r\n width: '10rem',\r\n });\r\n }\r\n }}\r\n >\r\n {filterOption[filterOption.findIndex(el => el.id === d.columnId)]\r\n .option.length === d.filterOptions?.length ? (\r\n <FilterIcon />\r\n ) : (\r\n <FilterIconApplied />\r\n )}\r\n </button>\r\n ) : null}\r\n </div>\r\n </th>\r\n ))}\r\n </tr>\r\n </thead>\r\n <tbody>\r\n {sortedData?.map((d: any, i: number) => (\r\n <tr\r\n key={i}\r\n className={`cursor-${\r\n onSeriesMouseClick ? 'pointer' : 'auto'\r\n } border-b border-b-primary-gray-400 dark:border-b-primary-gray-500 ${\r\n isEqual(mouseClickData, d)\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-600'\r\n : 'bg-transparent'\r\n }`}\r\n style={d.rowStyle}\r\n onClick={() => {\r\n if (onSeriesMouseClick) {\r\n if (isEqual(mouseClickData, d) && resetSelectionOnDoubleClick) {\r\n setMouseClickData(undefined);\r\n onSeriesMouseClick(undefined);\r\n } else {\r\n setMouseClickData(d);\r\n onSeriesMouseClick(d);\r\n }\r\n }\r\n }}\r\n >\r\n {columnData.map((el, j) => (\r\n <td\r\n key={j}\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 text-sm text-${\r\n el.align || 'left'\r\n }`}\r\n style={{\r\n width: `calc(${\r\n (100 * (d.columnWidth || 1)) /\r\n TotalWidth(columnData.map(cd => cd.columnWidth || 1))\r\n }%`,\r\n }}\r\n >\r\n <div\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 flex p-4 ${\r\n el.align === 'right'\r\n ? 'justify-end'\r\n : el.align === 'center'\r\n ? 'justify-center'\r\n : 'justify-start'\r\n }`}\r\n >\r\n {typeof d[el.columnId] === 'number' ? (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 w-fit ${\r\n el.chip ? 'grow-0 rounded-sm p-2' : 'grow rounded-none p-0'\r\n } text-${el.align || 'left'} ${\r\n el.chip\r\n ? !el.chipColors\r\n ? 'bg-primary-gray-300 dark:bg-primary-gray-500'\r\n : ''\r\n : 'bg-transparent'\r\n }`}\r\n style={{\r\n ...(el.chip && el.chipColors\r\n ? {\r\n backgroundColor:\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n color: getTextColorBasedOnBgColor(\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n ),\r\n }\r\n : {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n d[el.columnId],\r\n naLabel,\r\n el.precision,\r\n el.prefix,\r\n el.suffix,\r\n el.locale,\r\n el.padZeros,\r\n )}\r\n </P>\r\n ) : typeof d[el.columnId] === 'string' ? (\r\n el.separator ? (\r\n <div className='text-primary-gray-700 dark:text-primary-gray-100 flex flex-wrap gap-2'>\r\n {d[el.columnId]\r\n .split(el.separator)\r\n .map((element: string, indx: number) => (\r\n <P\r\n key={indx}\r\n marginBottom='none'\r\n size='sm'\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 w-fit ${\r\n el.chip\r\n ? 'grow-0 rounded-sm p-2'\r\n : 'grow rounded-none p-0'\r\n } text-${el.align || 'left'} ${\r\n el.chip\r\n ? !el.chipColors\r\n ? 'bg-primary-gray-300 dark:bg-primary-gray-500'\r\n : ''\r\n : 'bg-transparent'\r\n }`}\r\n style={{\r\n ...(el.chip && el.chipColors\r\n ? {\r\n backgroundColor:\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c =>\r\n c.value ===\r\n (el.chipColumnId\r\n ? d[el.chipColumnId]\r\n : element),\r\n )\r\n ].color,\r\n color: getTextColorBasedOnBgColor(\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c =>\r\n c.value ===\r\n (el.chipColumnId\r\n ? d[el.chipColumnId]\r\n : element),\r\n )\r\n ].color,\r\n ),\r\n }\r\n : {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n element,\r\n naLabel,\r\n el.precision,\r\n el.prefix,\r\n el.suffix,\r\n el.locale,\r\n el.padZeros,\r\n )}\r\n </P>\r\n ))}\r\n </div>\r\n ) : (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n className={`text-primary-gray-700 dark:text-primary-gray-100 w-fit ${\r\n el.chip ? 'grow-0 rounded-sm p-2' : 'grow rounded-none p-0'\r\n } text-${el.align || 'left'} ${\r\n el.chip\r\n ? !el.chipColors\r\n ? 'bg-primary-gray-300 dark:bg-primary-gray-500'\r\n : ''\r\n : 'bg-transparent'\r\n }`}\r\n style={{\r\n ...(el.chip && el.chipColors\r\n ? {\r\n backgroundColor:\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n color: getTextColorBasedOnBgColor(\r\n el.chipColors[\r\n el.chipColors.findIndex(\r\n c => c.value === d[el.chipColumnId || el.columnId],\r\n )\r\n ].color,\r\n ),\r\n }\r\n : {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n d[el.columnId],\r\n naLabel,\r\n el.precision,\r\n el.prefix,\r\n el.suffix,\r\n el.locale,\r\n el.padZeros,\r\n )}\r\n </P>\r\n )\r\n ) : (\r\n <div>\r\n {numberFormattingFunction(\r\n d[el.columnId],\r\n naLabel,\r\n el.precision,\r\n el.prefix,\r\n el.suffix,\r\n el.locale,\r\n el.padZeros,\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n </td>\r\n ))}\r\n </tr>\r\n ))}\r\n </tbody>\r\n </table>\r\n ) : null}\r\n </div>\r\n </div>\r\n </div>\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n {popupVisible && (\r\n <div\r\n style={popupStyle}\r\n className='absolute p-3 border z-[1000] rounded-sm bg-primary-white dark:bg-primary-gray-700 border-primary-gray-300 dark:border-primary-gray-550'\r\n >\r\n <div className='max-w-60'>\r\n <P size='sm' marginBottom='2xs' className='font-bold'>\r\n Filter data by\r\n </P>\r\n <div className='flex flex-col gap-2'>\r\n {columnData[\r\n columnData.findIndex(d => d.columnId === popupVisible)\r\n ].filterOptions?.map((el, i) => (\r\n <div key={i}>\r\n <label key={i} className='undp-viz-label'>\r\n <input\r\n type='checkbox'\r\n className='undp-viz-checkbox'\r\n checked={\r\n filterOption[\r\n filterOption.findIndex(d => d.id === popupVisible)\r\n ].option.indexOf(el) !== -1\r\n }\r\n onChange={() => {\r\n const indx = filterOption.findIndex(d => d.id === popupVisible);\r\n const opt = [...filterOption[indx].option];\r\n if (opt.indexOf(el) !== -1) {\r\n opt.splice(opt.indexOf(el), 1);\r\n const filterOptionDuplicate = [...filterOption];\r\n filterOptionDuplicate[indx].option = opt;\r\n setFilterOption(filterOptionDuplicate);\r\n } else {\r\n opt.push(el);\r\n const filterOptionDuplicate = [...filterOption];\r\n filterOptionDuplicate[indx].option = opt;\r\n setFilterOption(filterOptionDuplicate);\r\n }\r\n }}\r\n />\r\n {el}\r\n </label>\r\n </div>\r\n ))}\r\n </div>\r\n </div>\r\n </div>\r\n )}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["TotalWidth","columns","map","d","reduce","acc","cur","DataTable","props","$","_c","width","height","graphTitle","sources","graphDescription","footNote","graphID","data","columnData","onSeriesMouseClick","language","t0","theme","t1","ariaLabel","backgroundColor","t2","padding","resetSelectionOnDoubleClick","t3","styles","classNames","minWidth","naLabel","t4","undefined","graphParentDiv","useRef","columnSortBy","setColumnSortBy","useState","mouseClickData","setMouseClickData","sortDirection","setSortDirection","popupVisible","setPopupVisible","t5","Symbol","for","popupStyle","setPopupStyle","t6","filter","_temp","_temp2","filterOption","setFilterOption","sortedData","setSortedData","t7","data_0","sortDataEvent","useEffectEvent","t8","dataFiltered","forEach","d_1","el","id","findIndex","cd_0","cd","columnId","separator","arr","split","intersection","option","length","indexOf","push","orderBy","t9","useEffect","t10","graphContainer","t11","t12","description","title","jsx","GraphHeader","t13","t14","t15","t16","t17","jsxs","borderCollapse","d_2","i","columnWidth","_temp3","P","align","columnTitle","sortable","SortingIconAscending","SortingIconDescending","SortingIcon","filterOptions","event","currentTarget","rect","getBoundingClientRect","top","bottom","window","scrollY","left","scrollX","el_0","FilterIcon","FilterIconApplied","d_3","i_0","isEqual","rowStyle","el_1","j","_temp4","chip","chipColors","c","value","chipColumnId","color","getTextColorBasedOnBgColor","c_0","numberFormattingFunction","precision","prefix","suffix","locale","padZeros","element","indx","c_1","c_2","c_3","c_4","t18","t19","t20","footnote","source","GraphFooter","t21","d_4","el_2","i_1","d_5","indx_0","d_6","opt","splice","filterOptionDuplicate","filterOptionDuplicate_0","t22","GraphContainer","cd_2","cd_1","d_0"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const d=require("./index-CHPV5EwG-D4pAp7u0.cjs"),m=require("./Modal-BIErPPKT.cjs"),p=require("./string2HTML-
|
|
2
|
-
//# sourceMappingURL=DetailsModal-
|
|
1
|
+
"use strict";const d=require("./index-CHPV5EwG-D4pAp7u0.cjs"),m=require("./Modal-BIErPPKT.cjs"),p=require("./string2HTML-30nfIm8R.cjs");function x(f){const e=d.compilerRuntimeExports.c(16),{body:t,data:n,setData:c,className:a}=f;if(typeof t=="function"&&(t(n)===null||t(n)===void 0)||t==="")return null;const u=n!==void 0;let s;e[0]!==c?(s=()=>{c(void 0)},e[0]=c,e[1]=s):s=e[1];let l;e[2]!==t||e[3]!==n?(l=typeof t=="string"?{__html:p.string2HTML(t,n)}:void 0,e[2]=t,e[3]=n,e[4]=l):l=e[4];let i;e[5]!==t||e[6]!==n?(i=typeof t=="function"?t(n):null,e[5]=t,e[6]=n,e[7]=i):i=e[7];let o;e[8]!==l||e[9]!==i?(o=d.jsxRuntimeExports.jsx("div",{className:"graph-modal-content m-0",dangerouslySetInnerHTML:l,children:i}),e[8]=l,e[9]=i,e[10]=o):o=e[10];let r;return e[11]!==a||e[12]!==u||e[13]!==s||e[14]!==o?(r=d.jsxRuntimeExports.jsx(m.le,{open:u,onClose:s,className:a,children:o}),e[11]=a,e[12]=u,e[13]=s,e[14]=o,e[15]=r):r=e[15],r}exports.DetailsModal=x;
|
|
2
|
+
//# sourceMappingURL=DetailsModal-Du8Fr1QD.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailsModal-
|
|
1
|
+
{"version":3,"file":"DetailsModal-Du8Fr1QD.cjs","sources":["../src/Components/Elements/DetailsModal.tsx"],"sourcesContent":["import { Modal } from '@undp/design-system-react/Modal';\r\n\r\nimport { string2HTML } from '@/Utils/string2HTML';\r\n\r\ninterface Props {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n body: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setData: (_d: any) => void;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any;\r\n className?: string;\r\n}\r\n\r\nexport function DetailsModal(props: Props) {\r\n const { body, data, setData, className } = props;\r\n if (\r\n (typeof body === 'function' && (body(data) === null || body(data) === undefined)) ||\r\n body === ''\r\n ) {\r\n return null;\r\n }\r\n return (\r\n <Modal\r\n open={data !== undefined}\r\n onClose={() => {\r\n setData(undefined);\r\n }}\r\n className={className}\r\n >\r\n <div\r\n className='graph-modal-content m-0'\r\n dangerouslySetInnerHTML={\r\n typeof body === 'string' ? { __html: string2HTML(body, data) } : undefined\r\n }\r\n >\r\n {typeof body === 'function' ? body(data) : null}\r\n </div>\r\n </Modal>\r\n );\r\n}\r\n"],"names":["DetailsModal","props","$","_c","body","data","setData","className","undefined","t0","t1","t2","__html","string2HTML","t3","t4","t5","Modal"],"mappings":"wIAcO,SAAAA,EAAAC,EAAA,CAAA,MAAAC,EAAAC,EAAAA,uBAAAA,EAAA,EAAA,EACL,CAAAC,KAAAA,EAAAC,KAAAA,EAAAC,QAAAA,EAAAC,UAAAA,CAAAA,EAA2CN,EAC3C,GACG,OAAOG,GAAS,aAAeA,EAAKC,CAAI,IAAM,MAAQD,EAAKC,CAAI,IAAMG,SACtEJ,IAAS,GAAE,OAEJ,KAIC,MAAAK,EAAAJ,IAASG,OAAS,IAAAE,EAAAR,OAAAI,GACfI,EAAAA,IAAA,CACPJ,EAAQE,MAAS,CAAC,EACnBN,KAAAI,EAAAJ,KAAAQ,GAAAA,EAAAR,EAAA,CAAA,EAAA,IAAAS,EAAAT,EAAA,CAAA,IAAAE,GAAAF,OAAAG,GAMGM,EAAA,OAAOP,GAAS,SAAhB,CAAAQ,OAAqCC,EAAAA,YAAYT,EAAMC,CAAI,CAAA,EAA3DG,OAA0EN,KAAAE,EAAAF,KAAAG,EAAAH,KAAAS,GAAAA,EAAAT,EAAA,CAAA,EAAA,IAAAY,EAAAZ,EAAA,CAAA,IAAAE,GAAAF,OAAAG,GAG3ES,EAAA,OAAOV,GAAS,WAAaA,EAAKC,CAAW,EAA7C,KAA8CH,KAAAE,EAAAF,KAAAG,EAAAH,KAAAY,GAAAA,EAAAZ,EAAA,CAAA,EAAA,IAAAa,EAAAb,EAAA,CAAA,IAAAS,GAAAT,OAAAY,GANjDC,iCACY,UAAA,0BAER,wBAAAJ,EAGDG,SAAAA,EACH,EAAMZ,KAAAS,EAAAT,KAAAY,EAAAZ,MAAAa,GAAAA,EAAAb,EAAA,EAAA,EAAA,IAAAc,EAAA,OAAAd,EAAA,EAAA,IAAAK,GAAAL,EAAA,EAAA,IAAAO,GAAAP,EAAA,EAAA,IAAAQ,GAAAR,QAAAa,GAdRC,0BAACC,KAAA,CACO,KAAAR,EACG,QAAAC,EAGEH,UAAAA,EAEXQ,SAAAA,CAAAA,CAQF,EAAQb,MAAAK,EAAAL,MAAAO,EAAAP,MAAAQ,EAAAR,MAAAa,EAAAb,MAAAc,GAAAA,EAAAd,EAAA,EAAA,EAfRc,CAeQ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { c as p, j as m } from "./index-CHPV5EwG-BzibaIRc.js";
|
|
2
2
|
import { l as u } from "./Modal-CrUYln5V.js";
|
|
3
|
-
import { s as x } from "./string2HTML-
|
|
3
|
+
import { s as x } from "./string2HTML-DL-pInUB.js";
|
|
4
4
|
function h(d) {
|
|
5
5
|
const t = p.c(16), {
|
|
6
6
|
body: e,
|
|
@@ -29,4 +29,4 @@ function h(d) {
|
|
|
29
29
|
export {
|
|
30
30
|
h as D
|
|
31
31
|
};
|
|
32
|
-
//# sourceMappingURL=DetailsModal-
|
|
32
|
+
//# sourceMappingURL=DetailsModal-GqEbGHY2.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailsModal-
|
|
1
|
+
{"version":3,"file":"DetailsModal-GqEbGHY2.js","sources":["../src/Components/Elements/DetailsModal.tsx"],"sourcesContent":["import { Modal } from '@undp/design-system-react/Modal';\r\n\r\nimport { string2HTML } from '@/Utils/string2HTML';\r\n\r\ninterface Props {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n body: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setData: (_d: any) => void;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any;\r\n className?: string;\r\n}\r\n\r\nexport function DetailsModal(props: Props) {\r\n const { body, data, setData, className } = props;\r\n if (\r\n (typeof body === 'function' && (body(data) === null || body(data) === undefined)) ||\r\n body === ''\r\n ) {\r\n return null;\r\n }\r\n return (\r\n <Modal\r\n open={data !== undefined}\r\n onClose={() => {\r\n setData(undefined);\r\n }}\r\n className={className}\r\n >\r\n <div\r\n className='graph-modal-content m-0'\r\n dangerouslySetInnerHTML={\r\n typeof body === 'string' ? { __html: string2HTML(body, data) } : undefined\r\n }\r\n >\r\n {typeof body === 'function' ? body(data) : null}\r\n </div>\r\n </Modal>\r\n );\r\n}\r\n"],"names":["DetailsModal","props","$","_c","body","data","setData","className","undefined","t0","t1","t2","__html","string2HTML","t3","t4","t5","Modal"],"mappings":";;;AAcO,SAAAA,EAAAC,GAAA;AAAA,QAAAC,IAAAC,EAAAA,EAAA,EAAA,GACL;AAAA,IAAAC,MAAAA;AAAAA,IAAAC,MAAAA;AAAAA,IAAAC,SAAAA;AAAAA,IAAAC,WAAAA;AAAAA,EAAAA,IAA2CN;AAC3C,MACG,OAAOG,KAAS,eAAeA,EAAKC,CAAI,MAAM,QAAQD,EAAKC,CAAI,MAAMG,WACtEJ,MAAS;AAAE,WAEJ;AAIC,QAAAK,IAAAJ,MAASG;AAAS,MAAAE;AAAA,EAAAR,SAAAI,KACfI,IAAAA,MAAA;AACPJ,IAAAA,EAAQE,MAAS;AAAA,EAAC,GACnBN,OAAAI,GAAAJ,OAAAQ,KAAAA,IAAAR,EAAA,CAAA;AAAA,MAAAS;AAAA,EAAAT,EAAA,CAAA,MAAAE,KAAAF,SAAAG,KAMGM,IAAA,OAAOP,KAAS,WAAhB;AAAA,IAAAQ,QAAqCC,EAAYT,GAAMC,CAAI;AAAA,EAAA,IAA3DG,QAA0EN,OAAAE,GAAAF,OAAAG,GAAAH,OAAAS,KAAAA,IAAAT,EAAA,CAAA;AAAA,MAAAY;AAAA,EAAAZ,EAAA,CAAA,MAAAE,KAAAF,SAAAG,KAG3ES,IAAA,OAAOV,KAAS,aAAaA,EAAKC,CAAW,IAA7C,MAA8CH,OAAAE,GAAAF,OAAAG,GAAAH,OAAAY,KAAAA,IAAAZ,EAAA,CAAA;AAAA,MAAAa;AAAA,EAAAb,EAAA,CAAA,MAAAS,KAAAT,SAAAY,KANjDC,mCACY,WAAA,2BAER,yBAAAJ,GAGDG,UAAAA,GACH,GAAMZ,OAAAS,GAAAT,OAAAY,GAAAZ,QAAAa,KAAAA,IAAAb,EAAA,EAAA;AAAA,MAAAc;AAAA,SAAAd,EAAA,EAAA,MAAAK,KAAAL,EAAA,EAAA,MAAAO,KAAAP,EAAA,EAAA,MAAAQ,KAAAR,UAAAa,KAdRC,0BAACC,GAAA,EACO,MAAAR,GACG,SAAAC,GAGEH,WAAAA,GAEXQ,UAAAA,EAAAA,CAQF,GAAQb,QAAAK,GAAAL,QAAAO,GAAAP,QAAAQ,GAAAR,QAAAa,GAAAb,QAAAc,KAAAA,IAAAd,EAAA,EAAA,GAfRc;AAeQ;"}
|