@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
|
@@ -0,0 +1,375 @@
|
|
|
1
|
+
import { c as Re, j as x, m as Ge } from "./index-CHPV5EwG-BzibaIRc.js";
|
|
2
|
+
import { useRef as Ve, useState as ie, useEffect as Pe } from "react";
|
|
3
|
+
import { o as We } from "./index-BZQYSqar.js";
|
|
4
|
+
import { w as Ye } from "./Spinner-B2IIKg9r.js";
|
|
5
|
+
import { _ as Be } from "./Typography-BO0gQDIT.js";
|
|
6
|
+
import { T as Te } from "./Tooltip-3EYDVa3w.js";
|
|
7
|
+
import { n as Fe } from "./numberFormattingFunction-BUUV_luR.js";
|
|
8
|
+
import { g as Le } from "./getTextColorBasedOnBgColor-CDY808zi.js";
|
|
9
|
+
import { Colors as Se } from "./Colors.js";
|
|
10
|
+
import { c as Ee } from "./checkIfNullOrUndefined-DmfiKkNw.js";
|
|
11
|
+
import { D as Xe } from "./DetailsModal-GqEbGHY2.js";
|
|
12
|
+
import { s as Ze } from "./pow-BXYLJHCq.js";
|
|
13
|
+
import { f as qe, b as Ie, a as Ue, c as Je, d as Ke } from "./y-BqfogMAB.js";
|
|
14
|
+
import { GraphFooter as Qe } from "./GraphFooter.js";
|
|
15
|
+
import { GraphHeader as _e } from "./GraphHeader.js";
|
|
16
|
+
import { ColorLegendWithMouseOver as et } from "./ColorLegendWithMouseOver.js";
|
|
17
|
+
import { E as tt } from "./EmptyState-CaxXCkiN.js";
|
|
18
|
+
import { u as Ae } from "./uniqBy-BHy4I8PK.js";
|
|
19
|
+
import { a as ot, G as nt } from "./GraphContainer-B8ZqOzKI.js";
|
|
20
|
+
function ke(i, e) {
|
|
21
|
+
let n, s;
|
|
22
|
+
if (e === void 0)
|
|
23
|
+
for (const a of i)
|
|
24
|
+
a != null && (n === void 0 ? a >= a && (n = s = a) : (n > a && (n = a), s < a && (s = a)));
|
|
25
|
+
else {
|
|
26
|
+
let a = -1;
|
|
27
|
+
for (let u of i)
|
|
28
|
+
(u = e(u, ++a, i)) != null && (n === void 0 ? u >= u && (n = s = u) : (n > u && (n = u), s < u && (s = u)));
|
|
29
|
+
}
|
|
30
|
+
return [n, s];
|
|
31
|
+
}
|
|
32
|
+
function Y(i) {
|
|
33
|
+
return function() {
|
|
34
|
+
return i;
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
function it(i, e, n, s) {
|
|
38
|
+
var a = Y(0.1), u = !0, z = Y(Math.min((n - i) / 2, (s - e) / 2)), c, A, R, l, O, v, N, y, B, W;
|
|
39
|
+
typeof i != "function" && (i = Y(i == null ? -100 : +i)), typeof n != "function" && (n = Y(n == null ? 100 : +n)), typeof e != "function" && (e = Y(e == null ? -100 : +e)), typeof s != "function" && (s = Y(s == null ? 100 : +s));
|
|
40
|
+
function T(t, o, K, r, L) {
|
|
41
|
+
return (t - o) * Math.min(2, Math.abs(t - o) / t) * K * L;
|
|
42
|
+
}
|
|
43
|
+
function g(t) {
|
|
44
|
+
for (var o = 0, K = c.length, r; o < K; ++o)
|
|
45
|
+
r = c[o], r.x < l[o] + y[o] || r.x > O[o] - y[o] || r.y < v[o] + y[o] || r.y > N[o] - y[o] ? (r.vx += T(B[o], r.x, A[o], y[o], t), r.vy += T(W[o], r.y, R[o], y[o], t)) : r.y < v[o] + y[o] || r.y > N[o] - y[o], u && (r.x >= O[o] && (r.vx += O[o] - r.x), r.x <= l[o] && (r.vx += l[o] - r.x), r.y >= N[o] && (r.vy += N[o] - r.y), r.y <= v[o] && (r.vy += v[o] - r.y));
|
|
46
|
+
}
|
|
47
|
+
function D() {
|
|
48
|
+
if (c) {
|
|
49
|
+
var t, o = c.length;
|
|
50
|
+
for (A = new Array(o), R = new Array(o), l = new Array(o), v = new Array(o), O = new Array(o), N = new Array(o), W = new Array(o), B = new Array(o), y = new Array(o), t = 0; t < o; ++t)
|
|
51
|
+
A[t] = isNaN(l[t] = +i(c[t], t, c)) || isNaN(O[t] = +n(c[t], t, c)) ? 0 : +a(c[t], t, c), R[t] = isNaN(v[t] = +e(c[t], t, c)) || isNaN(N[t] = +s(c[t], t, c)) ? 0 : +a(c[t], t, c), B[t] = l[t] + (O[t] - l[t]) / 2, W[t] = v[t] + (N[t] - v[t]) / 2, y[t] = +z(c[t], t, c);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return g.initialize = function(t) {
|
|
55
|
+
c = t, D();
|
|
56
|
+
}, g.x0 = function(t) {
|
|
57
|
+
return arguments.length ? (i = typeof t == "function" ? t : Y(+t), D(), g) : i;
|
|
58
|
+
}, g.x1 = function(t) {
|
|
59
|
+
return arguments.length ? (n = typeof t == "function" ? t : Y(+t), D(), g) : n;
|
|
60
|
+
}, g.y0 = function(t) {
|
|
61
|
+
return arguments.length ? (e = typeof t == "function" ? t : Y(+t), D(), g) : e;
|
|
62
|
+
}, g.y1 = function(t) {
|
|
63
|
+
return arguments.length ? (s = typeof t == "function" ? t : Y(+t), D(), g) : s;
|
|
64
|
+
}, g.strength = function(t) {
|
|
65
|
+
return arguments.length ? (a = typeof t == "function" ? t : Y(+t), D(), g) : a;
|
|
66
|
+
}, g.border = function(t) {
|
|
67
|
+
return arguments.length ? (z = typeof t == "function" ? t : Y(+t), D(), g) : z;
|
|
68
|
+
}, g.hardBoundary = function(t) {
|
|
69
|
+
return arguments.length ? (u = t, g) : u;
|
|
70
|
+
}, g;
|
|
71
|
+
}
|
|
72
|
+
const rt = (i) => {
|
|
73
|
+
const e = Re.c(109), {
|
|
74
|
+
data: n,
|
|
75
|
+
colors: s,
|
|
76
|
+
leftMargin: a,
|
|
77
|
+
width: u,
|
|
78
|
+
height: z,
|
|
79
|
+
colorDomain: c,
|
|
80
|
+
selectedColor: A,
|
|
81
|
+
rightMargin: R,
|
|
82
|
+
topMargin: l,
|
|
83
|
+
bottomMargin: O,
|
|
84
|
+
showLabels: v,
|
|
85
|
+
tooltip: N,
|
|
86
|
+
onSeriesMouseOver: y,
|
|
87
|
+
showValues: B,
|
|
88
|
+
suffix: W,
|
|
89
|
+
prefix: T,
|
|
90
|
+
highlightedDataPoints: g,
|
|
91
|
+
onSeriesMouseClick: D,
|
|
92
|
+
maxRadiusValue: t,
|
|
93
|
+
radius: o,
|
|
94
|
+
resetSelectionOnDoubleClick: K,
|
|
95
|
+
detailsOnClick: r,
|
|
96
|
+
styles: L,
|
|
97
|
+
classNames: E,
|
|
98
|
+
dimmedOpacity: ee,
|
|
99
|
+
precision: re,
|
|
100
|
+
locale: le,
|
|
101
|
+
padZeros: se
|
|
102
|
+
} = i, xe = Ve(null), [ve, be] = ie(void 0), [F, ae] = ie(void 0), [P, ze] = ie(void 0), [ce, b] = ie(void 0), [d, Me] = ie(void 0), [ye, j] = ie(null);
|
|
103
|
+
let fe;
|
|
104
|
+
e[0] !== O || e[1] !== a || e[2] !== R || e[3] !== l ? (fe = {
|
|
105
|
+
top: l,
|
|
106
|
+
bottom: O,
|
|
107
|
+
left: a,
|
|
108
|
+
right: R
|
|
109
|
+
}, e[0] = O, e[1] = a, e[2] = R, e[3] = l, e[4] = fe) : fe = e[4];
|
|
110
|
+
const Q = fe, X = u - Q.left - Q.right, Z = z - Q.top - Q.bottom;
|
|
111
|
+
let ue;
|
|
112
|
+
e[5] !== n ? (ue = n.filter(lt).length === 0 ? n : We(n.filter(st), "radius", "asc"), e[5] = n, e[6] = ue) : ue = e[6];
|
|
113
|
+
const _ = ue;
|
|
114
|
+
let me;
|
|
115
|
+
e[7] !== n || e[8] !== t || e[9] !== o ? (me = n.filter(at).length !== n.length ? Ze().domain([0, Ee(t) ? Math.max(...n.map(ct).filter(ft)) : t]).range([0.25, o]).nice() : void 0, e[7] = n, e[8] = t, e[9] = o, e[10] = me) : me = e[10];
|
|
116
|
+
const m = me;
|
|
117
|
+
let te;
|
|
118
|
+
e[11] !== _ || e[12] !== Z || e[13] !== X || e[14] !== o || e[15] !== m ? (te = () => {
|
|
119
|
+
(() => {
|
|
120
|
+
const h = _.map(ut);
|
|
121
|
+
qe(h).force("y", Ie((M) => Z / 2).strength(1)).force("x", Ue((M) => X / 2).strength(1)).force("collide", Je((M) => m ? m(M.size || 0) + 1 : o + 1)).force("charge", Ke().strength(-15)).force("boundary", it(0, 0, X, Z).strength(0.2).border(50)).alphaDecay(0.05).tick(1e4).on("tick", () => {
|
|
122
|
+
j(h);
|
|
123
|
+
}).on("end", () => {
|
|
124
|
+
j(h);
|
|
125
|
+
const M = ke(h, (p) => p.x - (m ? m(p.size || 0) + 1 : o + 1))[0] || 0, C = ke(h, (p) => p.y - (m ? m(p.size || 0) + 1 : o + 1))[0] || 0, $ = ke(h, (p) => p.x + (m ? m(p.size || 0) + 1 : o + 1))[1] || 0, V = ke(h, (p) => p.y + (m ? m(p.size || 0) + 1 : o + 1))[1] || 0;
|
|
126
|
+
ze([M, C, M < 0 ? $ - M : $, C < 0 ? V - C : V]);
|
|
127
|
+
});
|
|
128
|
+
})();
|
|
129
|
+
}, e[11] = _, e[12] = Z, e[13] = X, e[14] = o, e[15] = m, e[16] = te) : te = e[16];
|
|
130
|
+
let he;
|
|
131
|
+
e[17] !== n || e[18] !== _ || e[19] !== Z || e[20] !== X || e[21] !== t || e[22] !== o || e[23] !== m ? (he = [n, o, Z, X, t, _, m], e[17] = n, e[18] = _, e[19] = Z, e[20] = X, e[21] = t, e[22] = o, e[23] = m, e[24] = he) : he = e[24], Pe(te, he);
|
|
132
|
+
let pe;
|
|
133
|
+
e[25] !== y ? (pe = (f, h) => {
|
|
134
|
+
be(h), Me(f.clientY), b(f.clientX), y?.(h);
|
|
135
|
+
}, e[25] = y, e[26] = pe) : pe = e[26];
|
|
136
|
+
const k = pe;
|
|
137
|
+
let ge;
|
|
138
|
+
e[27] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (ge = (f, h) => {
|
|
139
|
+
be(h), Me(f.clientY), b(f.clientX);
|
|
140
|
+
}, e[27] = ge) : ge = e[27];
|
|
141
|
+
const De = ge;
|
|
142
|
+
let de;
|
|
143
|
+
e[28] !== r || e[29] !== F || e[30] !== D || e[31] !== K ? (de = (f) => {
|
|
144
|
+
(D || r) && (F === f.label && K ? (ae(void 0), D?.(void 0)) : (ae(f.label), D?.(f)));
|
|
145
|
+
}, e[28] = r, e[29] = F, e[30] = D, e[31] = K, e[32] = de) : de = e[32];
|
|
146
|
+
const q = de;
|
|
147
|
+
let Ce;
|
|
148
|
+
e[33] !== y ? (Ce = () => {
|
|
149
|
+
be(void 0), b(void 0), Me(void 0), y?.(void 0);
|
|
150
|
+
}, e[33] = y, e[34] = Ce) : Ce = e[34];
|
|
151
|
+
const I = Ce;
|
|
152
|
+
let we;
|
|
153
|
+
e[35] !== c || e[36] !== s || e[37] !== n ? (we = (f) => n.filter(mt).length === 0 ? s[0] : f.color ? s[c.indexOf(f.color)] : Se.gray, e[35] = c, e[36] = s, e[37] = n, e[38] = we) : we = e[38];
|
|
154
|
+
const oe = we;
|
|
155
|
+
let je;
|
|
156
|
+
e[39] !== c || e[40] !== s || e[41] !== ee || e[42] !== g || e[43] !== A ? (je = (f) => A ? f.color && s[c.indexOf(f.color)] === A ? 1 : ee : g ? g.indexOf(f.label) !== -1 ? 0.85 : ee : 0.85, e[39] = c, e[40] = s, e[41] = ee, e[42] = g, e[43] = A, e[44] = je) : je = e[44];
|
|
157
|
+
const ne = je;
|
|
158
|
+
if (!ye) {
|
|
159
|
+
const f = `${u}px`, h = `${z}px`;
|
|
160
|
+
let S;
|
|
161
|
+
e[45] !== f || e[46] !== h ? (S = {
|
|
162
|
+
width: f,
|
|
163
|
+
height: h
|
|
164
|
+
}, e[45] = f, e[46] = h, e[47] = S) : S = e[47];
|
|
165
|
+
let M;
|
|
166
|
+
e[48] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (M = /* @__PURE__ */ x.jsx("div", { className: "flex m-auto items-center justify-center p-0 leading-none text-base h-40", children: /* @__PURE__ */ x.jsx(Ye, {}) }), e[48] = M) : M = e[48];
|
|
167
|
+
let C;
|
|
168
|
+
return e[49] !== S ? (C = /* @__PURE__ */ x.jsx("div", { style: S, children: M }), e[49] = S, e[50] = C) : C = e[50], C;
|
|
169
|
+
}
|
|
170
|
+
if (P) {
|
|
171
|
+
const f = `${u}px`, h = `${z}px`, S = `${P[0] > 0 ? 0 : P[0]} ${P[1] > 0 ? 0 : P[1]} ${u < P[2] ? P[2] : u} ${z < P[3] ? P[3] : z}`, M = `translate(${Q.left},${Q.top})`;
|
|
172
|
+
let C;
|
|
173
|
+
if (e[51] !== E?.graphObjectValues || e[52] !== ye || e[53] !== oe || e[54] !== ne || e[55] !== q || e[56] !== k || e[57] !== I || e[58] !== le || e[59] !== se || e[60] !== re || e[61] !== T || e[62] !== o || e[63] !== m || e[64] !== v || e[65] !== B || e[66] !== L?.graphObjectValues || e[67] !== W) {
|
|
174
|
+
let J;
|
|
175
|
+
e[69] !== E?.graphObjectValues || e[70] !== oe || e[71] !== ne || e[72] !== q || e[73] !== k || e[74] !== I || e[75] !== le || e[76] !== se || e[77] !== re || e[78] !== T || e[79] !== o || e[80] !== m || e[81] !== v || e[82] !== B || e[83] !== L?.graphObjectValues || e[84] !== W ? (J = (w) => {
|
|
176
|
+
const Oe = oe(w), Ne = ne(w), G = m ? m(w.size || 0) : o, He = G > 20 && (v || B);
|
|
177
|
+
return /* @__PURE__ */ x.jsxs("g", { className: "undp-viz-g-with-hover", opacity: Ne, transform: `translate(${w.x},${w.y})`, onMouseEnter: ($e) => k($e, w), onMouseMove: ($e) => De($e, w), onClick: () => q(w), onMouseLeave: I, children: [
|
|
178
|
+
/* @__PURE__ */ x.jsx("circle", { cx: 0, cy: 0, r: G, fill: Oe }),
|
|
179
|
+
(He || B) && w.size !== void 0 && w.size !== null && G >= 15 && /* @__PURE__ */ x.jsx("g", { children: /* @__PURE__ */ x.jsx("foreignObject", { y: 0 - G, x: 0 - G, width: 2 * G, height: 2 * G, children: /* @__PURE__ */ x.jsxs("div", { className: "flex flex-col justify-center items-center h-full py-0 px-3", style: {
|
|
180
|
+
display: "flex",
|
|
181
|
+
flexDirection: "column",
|
|
182
|
+
justifyContent: "center",
|
|
183
|
+
alignItems: "center",
|
|
184
|
+
height: "100%",
|
|
185
|
+
padding: "0 0.75rem"
|
|
186
|
+
}, children: [
|
|
187
|
+
v && /* @__PURE__ */ x.jsx(Be, { className: Ge("text-center leading-[1.25] overflow-hidden m-0 circle-packing-label", E?.graphObjectValues), marginBottom: "none", style: {
|
|
188
|
+
fontSize: `${Math.min(Math.max(Math.round(G / 4), 12), Math.max(Math.round(G * 12 / `${w.label}`.length), 12), 14)}px`,
|
|
189
|
+
WebkitLineClamp: G * 2 < 60 ? 1 : G * 2 < 75 ? 2 : G * 2 < 100 ? 3 : void 0,
|
|
190
|
+
display: "-webkit-box",
|
|
191
|
+
WebkitBoxOrient: "vertical",
|
|
192
|
+
color: Le(Oe),
|
|
193
|
+
hyphens: "auto",
|
|
194
|
+
...L?.graphObjectValues || {}
|
|
195
|
+
}, children: w.label }),
|
|
196
|
+
B && /* @__PURE__ */ x.jsx(Be, { className: "text-center font-bold leading-[1.25] w-full m-0 circle-packing-value", marginBottom: "none", style: {
|
|
197
|
+
fontSize: `${Math.min(Math.max(Math.round(G / 4), 14), 14)}px`,
|
|
198
|
+
color: Le(Oe)
|
|
199
|
+
}, children: Fe(w.size, void 0, re, T, W, le, se) })
|
|
200
|
+
] }) }) })
|
|
201
|
+
] }, w.label);
|
|
202
|
+
}, e[69] = E?.graphObjectValues, e[70] = oe, e[71] = ne, e[72] = q, e[73] = k, e[74] = I, e[75] = le, e[76] = se, e[77] = re, e[78] = T, e[79] = o, e[80] = m, e[81] = v, e[82] = B, e[83] = L?.graphObjectValues, e[84] = W, e[85] = J) : J = e[85], C = ye.map(J), e[51] = E?.graphObjectValues, e[52] = ye, e[53] = oe, e[54] = ne, e[55] = q, e[56] = k, e[57] = I, e[58] = le, e[59] = se, e[60] = re, e[61] = T, e[62] = o, e[63] = m, e[64] = v, e[65] = B, e[66] = L?.graphObjectValues, e[67] = W, e[68] = C;
|
|
203
|
+
} else
|
|
204
|
+
C = e[68];
|
|
205
|
+
let $;
|
|
206
|
+
e[86] !== M || e[87] !== C ? ($ = /* @__PURE__ */ x.jsx("g", { transform: M, children: C }), e[86] = M, e[87] = C, e[88] = $) : $ = e[88];
|
|
207
|
+
let V;
|
|
208
|
+
e[89] !== f || e[90] !== h || e[91] !== S || e[92] !== $ ? (V = /* @__PURE__ */ x.jsx("svg", { width: f, height: h, viewBox: S, direction: "ltr", ref: xe, children: $ }), e[89] = f, e[90] = h, e[91] = S, e[92] = $, e[93] = V) : V = e[93];
|
|
209
|
+
let p;
|
|
210
|
+
e[94] !== E?.tooltip || e[95] !== ce || e[96] !== d || e[97] !== ve || e[98] !== L?.tooltip || e[99] !== N ? (p = ve && N && ce && d && /* @__PURE__ */ x.jsx(Te, { data: ve, body: N, xPos: ce, yPos: d, backgroundStyle: L?.tooltip, className: E?.tooltip }), e[94] = E?.tooltip, e[95] = ce, e[96] = d, e[97] = ve, e[98] = L?.tooltip, e[99] = N, e[100] = p) : p = e[100];
|
|
211
|
+
let H;
|
|
212
|
+
e[101] !== E?.modal || e[102] !== r || e[103] !== F ? (H = r && F !== void 0 ? /* @__PURE__ */ x.jsx(Xe, { body: r, data: F, setData: ae, className: E?.modal }) : null, e[101] = E?.modal, e[102] = r, e[103] = F, e[104] = H) : H = e[104];
|
|
213
|
+
let U;
|
|
214
|
+
return e[105] !== V || e[106] !== p || e[107] !== H ? (U = /* @__PURE__ */ x.jsxs(x.Fragment, { children: [
|
|
215
|
+
V,
|
|
216
|
+
p,
|
|
217
|
+
H
|
|
218
|
+
] }), e[105] = V, e[106] = p, e[107] = H, e[108] = U) : U = e[108], U;
|
|
219
|
+
}
|
|
220
|
+
return null;
|
|
221
|
+
};
|
|
222
|
+
function lt(i) {
|
|
223
|
+
return !Ee(i.size);
|
|
224
|
+
}
|
|
225
|
+
function st(i) {
|
|
226
|
+
return !Ee(i.size);
|
|
227
|
+
}
|
|
228
|
+
function at(i) {
|
|
229
|
+
return i.size === void 0 || i.size === null;
|
|
230
|
+
}
|
|
231
|
+
function ct(i) {
|
|
232
|
+
return i.size;
|
|
233
|
+
}
|
|
234
|
+
function ft(i) {
|
|
235
|
+
return i != null;
|
|
236
|
+
}
|
|
237
|
+
function ut(i) {
|
|
238
|
+
return {
|
|
239
|
+
...i,
|
|
240
|
+
...i.data && {
|
|
241
|
+
data: {
|
|
242
|
+
...i.data
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
};
|
|
246
|
+
}
|
|
247
|
+
function mt(i) {
|
|
248
|
+
return i.color;
|
|
249
|
+
}
|
|
250
|
+
function ht(i, e, n, s) {
|
|
251
|
+
const a = i.filter((l) => l != null), u = s === !1 ? Math.sqrt(e * n / Math.PI) : Math.min(e, n) / 2, z = a.reduce((l, O) => l + O, 0), c = Math.max(...a), A = (l) => l <= 5 ? 0.9 : l <= 10 ? 0.85 : l <= 20 ? 0.8 : 0.7, R = (l) => l <= 200 ? 0.85 : l <= 250 ? 0.95 : 1;
|
|
252
|
+
return u * Math.sqrt(c / z) * (s ? R(u) : 1) * (s ? A(a.length) : 1);
|
|
253
|
+
}
|
|
254
|
+
function Tt(i) {
|
|
255
|
+
const e = Re.c(84), {
|
|
256
|
+
data: n,
|
|
257
|
+
graphTitle: s,
|
|
258
|
+
colors: a,
|
|
259
|
+
sources: u,
|
|
260
|
+
graphDescription: z,
|
|
261
|
+
leftMargin: c,
|
|
262
|
+
rightMargin: A,
|
|
263
|
+
height: R,
|
|
264
|
+
width: l,
|
|
265
|
+
footNote: O,
|
|
266
|
+
colorDomain: v,
|
|
267
|
+
colorLegendTitle: N,
|
|
268
|
+
padding: y,
|
|
269
|
+
backgroundColor: B,
|
|
270
|
+
topMargin: W,
|
|
271
|
+
bottomMargin: T,
|
|
272
|
+
showLabels: g,
|
|
273
|
+
relativeHeight: D,
|
|
274
|
+
tooltip: t,
|
|
275
|
+
onSeriesMouseOver: o,
|
|
276
|
+
showColorScale: K,
|
|
277
|
+
showValues: r,
|
|
278
|
+
graphID: L,
|
|
279
|
+
highlightedDataPoints: E,
|
|
280
|
+
onSeriesMouseClick: ee,
|
|
281
|
+
graphDownload: re,
|
|
282
|
+
dataDownload: le,
|
|
283
|
+
language: se,
|
|
284
|
+
showNAColor: xe,
|
|
285
|
+
minHeight: ve,
|
|
286
|
+
theme: be,
|
|
287
|
+
ariaLabel: F,
|
|
288
|
+
radius: ae,
|
|
289
|
+
maxRadiusValue: P,
|
|
290
|
+
resetSelectionOnDoubleClick: ze,
|
|
291
|
+
detailsOnClick: ce,
|
|
292
|
+
styles: b,
|
|
293
|
+
classNames: d,
|
|
294
|
+
dimmedOpacity: Me,
|
|
295
|
+
circularBoundary: ye,
|
|
296
|
+
numberDisplayOptions: j
|
|
297
|
+
} = i, fe = c === void 0 ? 0 : c, Q = A === void 0 ? 0 : A, X = B === void 0 ? !1 : B, Z = W === void 0 ? 0 : W, ue = T === void 0 ? 0 : T, _ = g === void 0 ? !0 : g, me = K === void 0 ? !0 : K, m = re === void 0 ? !1 : re, te = le === void 0 ? !1 : le, he = se === void 0 ? "en" : se, pe = ve === void 0 ? 0 : ve, k = be === void 0 ? "light" : be, ge = ze === void 0 ? !0 : ze, De = Me === void 0 ? 0.3 : Me, de = ye === void 0 ? !0 : ye, [q, Ce] = ie(0), [I, we] = ie(0), [oe, je] = ie(void 0), ne = Ve(null), f = Ve(null);
|
|
298
|
+
let h, S;
|
|
299
|
+
e[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (h = () => {
|
|
300
|
+
const Oe = new ResizeObserver((Ne) => {
|
|
301
|
+
Ce(Ne[0].target.clientWidth || 620), we(Ne[0].target.clientHeight || 480);
|
|
302
|
+
});
|
|
303
|
+
return ne.current && Oe.observe(ne.current), () => Oe.disconnect();
|
|
304
|
+
}, S = [], e[0] = h, e[1] = S) : (h = e[0], S = e[1]), Pe(h, S);
|
|
305
|
+
const M = d?.graphContainer, C = b?.graphContainer;
|
|
306
|
+
let $;
|
|
307
|
+
e[2] !== d?.description || e[3] !== d?.title || e[4] !== n || e[5] !== te || e[6] !== z || e[7] !== m || e[8] !== s || e[9] !== b?.description || e[10] !== b?.title || e[11] !== l ? ($ = s || z || m || te ? /* @__PURE__ */ x.jsx(_e, { styles: {
|
|
308
|
+
title: b?.title,
|
|
309
|
+
description: b?.description
|
|
310
|
+
}, classNames: {
|
|
311
|
+
title: d?.title,
|
|
312
|
+
description: d?.description
|
|
313
|
+
}, graphTitle: s, graphDescription: z, width: l, graphDownload: m ? f : void 0, dataDownload: te ? n.map(wt).filter(Ct).length > 0 ? n.map(Mt).filter(bt) : n.filter(yt) : null }) : null, e[2] = d?.description, e[3] = d?.title, e[4] = n, e[5] = te, e[6] = z, e[7] = m, e[8] = s, e[9] = b?.description, e[10] = b?.title, e[11] = l, e[12] = $) : $ = e[12];
|
|
314
|
+
let V;
|
|
315
|
+
e[13] !== d?.colorLegend || e[14] !== v || e[15] !== N || e[16] !== a || e[17] !== n || e[18] !== me || e[19] !== xe || e[20] !== k || e[21] !== l ? (V = me && n.filter(vt).length !== 0 && n.length > 0 ? /* @__PURE__ */ x.jsx(et, { width: l, colorLegendTitle: N, colors: a || Se[k].categoricalColors.colors, colorDomain: v || Ae(n, "color", !0), setSelectedColor: je, showNAColor: xe ?? !0, isCenter: !0, className: d?.colorLegend }) : null, e[13] = d?.colorLegend, e[14] = v, e[15] = N, e[16] = a, e[17] = n, e[18] = me, e[19] = xe, e[20] = k, e[21] = l, e[22] = V) : V = e[22];
|
|
316
|
+
let p;
|
|
317
|
+
e[23] !== n.length ? (p = n.length === 0 && /* @__PURE__ */ x.jsx(tt, {}), e[23] = n.length, e[24] = p) : p = e[24];
|
|
318
|
+
let H;
|
|
319
|
+
e[25] !== ue || e[26] !== de || e[27] !== d || e[28] !== v || e[29] !== a || e[30] !== n || e[31] !== ce || e[32] !== De || e[33] !== E || e[34] !== fe || e[35] !== P || e[36] !== j?.locale || e[37] !== j?.padZeros || e[38] !== j?.precision || e[39] !== j?.prefix || e[40] !== j?.suffix || e[41] !== ee || e[42] !== o || e[43] !== ae || e[44] !== ge || e[45] !== Q || e[46] !== oe || e[47] !== _ || e[48] !== r || e[49] !== b || e[50] !== I || e[51] !== q || e[52] !== k || e[53] !== t || e[54] !== Z ? (H = q && I && n.length > 0 ? /* @__PURE__ */ x.jsx(rt, { data: n, colors: n.filter(xt).length === 0 ? a ? [a] : [Se.primaryColors["blue-600"]] : a || Se[k].categoricalColors.colors, colorDomain: n.filter(dt).length === 0 ? [] : v || Ae(n, "color", !0), width: q, height: I, leftMargin: fe, rightMargin: Q, topMargin: Z, bottomMargin: ue, showLabels: _, showValues: r !== !1 ? n.filter(gt).length !== 0 : r, selectedColor: oe, tooltip: t, onSeriesMouseOver: o, highlightedDataPoints: E, onSeriesMouseClick: ee, theme: k, radius: ae || ht(n.map(pt), q, I, de), maxRadiusValue: P, resetSelectionOnDoubleClick: ge, detailsOnClick: ce, styles: b, classNames: d, dimmedOpacity: De, locale: j?.locale || "en", padZeros: j?.padZeros || !1, suffix: j?.suffix || "", prefix: j?.prefix || "", precision: j?.precision ?? 2 }) : null, e[25] = ue, e[26] = de, e[27] = d, e[28] = v, e[29] = a, e[30] = n, e[31] = ce, e[32] = De, e[33] = E, e[34] = fe, e[35] = P, e[36] = j?.locale, e[37] = j?.padZeros, e[38] = j?.precision, e[39] = j?.prefix, e[40] = j?.suffix, e[41] = ee, e[42] = o, e[43] = ae, e[44] = ge, e[45] = Q, e[46] = oe, e[47] = _, e[48] = r, e[49] = b, e[50] = I, e[51] = q, e[52] = k, e[53] = t, e[54] = Z, e[55] = H) : H = e[55];
|
|
320
|
+
let U;
|
|
321
|
+
e[56] !== p || e[57] !== H ? (U = /* @__PURE__ */ x.jsxs(ot, { ref: ne, children: [
|
|
322
|
+
p,
|
|
323
|
+
H
|
|
324
|
+
] }), e[56] = p, e[57] = H, e[58] = U) : U = e[58];
|
|
325
|
+
let J;
|
|
326
|
+
e[59] !== d?.footnote || e[60] !== d?.source || e[61] !== O || e[62] !== u || e[63] !== b?.footnote || e[64] !== b?.source || e[65] !== l ? (J = u || O ? /* @__PURE__ */ x.jsx(Qe, { styles: {
|
|
327
|
+
footnote: b?.footnote,
|
|
328
|
+
source: b?.source
|
|
329
|
+
}, classNames: {
|
|
330
|
+
footnote: d?.footnote,
|
|
331
|
+
source: d?.source
|
|
332
|
+
}, sources: u, footNote: O, width: l }) : null, e[59] = d?.footnote, e[60] = d?.source, e[61] = O, e[62] = u, e[63] = b?.footnote, e[64] = b?.source, e[65] = l, e[66] = J) : J = e[66];
|
|
333
|
+
let w;
|
|
334
|
+
return e[67] !== F || e[68] !== X || e[69] !== L || e[70] !== R || e[71] !== he || e[72] !== pe || e[73] !== y || e[74] !== D || e[75] !== M || e[76] !== C || e[77] !== $ || e[78] !== V || e[79] !== U || e[80] !== J || e[81] !== k || e[82] !== l ? (w = /* @__PURE__ */ x.jsxs(nt, { className: M, style: C, id: L, ref: f, "aria-label": F, backgroundColor: X, theme: k, language: he, minHeight: pe, width: l, height: R, relativeHeight: D, padding: y, children: [
|
|
335
|
+
$,
|
|
336
|
+
V,
|
|
337
|
+
U,
|
|
338
|
+
J
|
|
339
|
+
] }), e[67] = F, e[68] = X, e[69] = L, e[70] = R, e[71] = he, e[72] = pe, e[73] = y, e[74] = D, e[75] = M, e[76] = C, e[77] = $, e[78] = V, e[79] = U, e[80] = J, e[81] = k, e[82] = l, e[83] = w) : w = e[83], w;
|
|
340
|
+
}
|
|
341
|
+
function pt(i) {
|
|
342
|
+
return i.size;
|
|
343
|
+
}
|
|
344
|
+
function gt(i) {
|
|
345
|
+
return i.size;
|
|
346
|
+
}
|
|
347
|
+
function dt(i) {
|
|
348
|
+
return i.color;
|
|
349
|
+
}
|
|
350
|
+
function xt(i) {
|
|
351
|
+
return i.color;
|
|
352
|
+
}
|
|
353
|
+
function vt(i) {
|
|
354
|
+
return i.color;
|
|
355
|
+
}
|
|
356
|
+
function yt(i) {
|
|
357
|
+
return i !== void 0;
|
|
358
|
+
}
|
|
359
|
+
function bt(i) {
|
|
360
|
+
return i !== void 0;
|
|
361
|
+
}
|
|
362
|
+
function Mt(i) {
|
|
363
|
+
return i.data;
|
|
364
|
+
}
|
|
365
|
+
function Ct(i) {
|
|
366
|
+
return i !== void 0;
|
|
367
|
+
}
|
|
368
|
+
function wt(i) {
|
|
369
|
+
return i.data;
|
|
370
|
+
}
|
|
371
|
+
export {
|
|
372
|
+
Tt as C,
|
|
373
|
+
ke as e
|
|
374
|
+
};
|
|
375
|
+
//# sourceMappingURL=index-BPyj_6hG.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-BPyj_6hG.js","sources":["../node_modules/d3-array/src/extent.js","../node_modules/d3-force-boundary/dist/d3-force-boundary.esm.js","../src/Components/Graphs/CirclePackingGraph/Graph.tsx","../src/Components/Graphs/CirclePackingGraph/getMaxCircleRadius.ts","../src/Components/Graphs/CirclePackingGraph/index.tsx"],"sourcesContent":["export default function extent(values, valueof) {\n let min;\n let max;\n if (valueof === undefined) {\n for (const value of values) {\n if (value != null) {\n if (min === undefined) {\n if (value >= value) min = max = value;\n } else {\n if (min > value) min = value;\n if (max < value) max = value;\n }\n }\n }\n } else {\n let index = -1;\n for (let value of values) {\n if ((value = valueof(value, ++index, values)) != null) {\n if (min === undefined) {\n if (value >= value) min = max = value;\n } else {\n if (min > value) min = value;\n if (max < value) max = value;\n }\n }\n }\n }\n return [min, max];\n}\n","// https://observablehq.com/@john-guerra/d3-force-boundary v0.0.2 Copyright 2022 John Alexis Guerra Gómez\nfunction constant(x) {\n return function() {\n return x;\n };\n}\n\nfunction forceBoundary(x0, y0, x1, y1) {\n var strength = constant(0.1),\n hardBoundary = true,\n border = constant( Math.min((x1 - x0)/2, (y1 - y0)/2) ),\n nodes,\n strengthsX,\n strengthsY,\n x0z, x1z,\n y0z, y1z,\n borderz,\n halfX, halfY;\n\n if (typeof x0 !== \"function\") x0 = constant(x0 == null ? -100 : +x0);\n if (typeof x1 !== \"function\") x1 = constant(x1 == null ? 100 : +x1);\n if (typeof y0 !== \"function\") y0 = constant(y0 == null ? -100 : +y0);\n if (typeof y1 !== \"function\") y1 = constant(y1 == null ? 100 : +y1);\n\n function getVx(halfX, x, strengthX, border, alpha) {\n return (halfX - x) * Math.min(2, Math.abs( halfX - x) / halfX) * strengthX * alpha;\n }\n\n function force(alpha) {\n for (var i = 0, n = nodes.length, node; i < n; ++i) {\n node = nodes[i];\n // debugger;\n if ((node.x < (x0z[i] + borderz[i]) || node.x > (x1z[i] - borderz[i])) ||\n (node.y < (y0z[i] + borderz[i]) || node.y > (y1z[i] - borderz[i]))) {\n node.vx += getVx(halfX[i], node.x, strengthsX[i], borderz[i], alpha);\n node.vy += getVx(halfY[i], node.y, strengthsY[i], borderz[i], alpha);\n } else if (node.y < (y0z[i] + borderz[i]) || node.y > (y1z[i] - borderz[i])) ;\n\n if (hardBoundary) {\n if (node.x >= x1z[i]) node.vx += x1z[i] - node.x;\n if (node.x <= x0z[i]) node.vx += x0z[i] - node.x;\n if (node.y >= y1z[i]) node.vy += y1z[i] - node.y;\n if (node.y <= y0z[i]) node.vy += y0z[i] - node.y;\n }\n }\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length;\n strengthsX = new Array(n);\n strengthsY = new Array(n);\n x0z = new Array(n);\n y0z = new Array(n);\n x1z = new Array(n);\n y1z = new Array(n);\n halfY = new Array(n);\n halfX = new Array(n);\n borderz = new Array(n);\n\n for (i = 0; i < n; ++i) {\n strengthsX[i] = (isNaN(x0z[i] = +x0(nodes[i], i, nodes)) ||\n isNaN(x1z[i] = +x1(nodes[i], i, nodes))) ? 0 : +strength(nodes[i], i, nodes);\n strengthsY[i] = (isNaN(y0z[i] = +y0(nodes[i], i, nodes)) ||\n isNaN(y1z[i] = +y1(nodes[i], i, nodes))) ? 0 : +strength(nodes[i], i, nodes);\n halfX[i] = x0z[i] + (x1z[i] - x0z[i])/2,\n halfY[i] = y0z[i] + (y1z[i] - y0z[i])/2;\n borderz[i] = +border(nodes[i], i, nodes);\n }\n }\n\n force.initialize = function(_) {\n nodes = _;\n initialize();\n };\n\n force.x0 = function(_) {\n return arguments.length ? (x0 = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : x0;\n };\n\n force.x1 = function(_) {\n return arguments.length ? (x1 = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : x1;\n };\n\n force.y0 = function(_) {\n return arguments.length ? (y0 = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : y0;\n };\n\n force.y1 = function(_) {\n return arguments.length ? (y1 = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : y1;\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : strength;\n };\n\n force.border = function(_) {\n return arguments.length ? (border = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : border;\n };\n\n force.hardBoundary = function(_) {\n return arguments.length ? (hardBoundary = _, force) : hardBoundary;\n };\n\n return force;\n}\n\nexport default forceBoundary;\n","import { useEffect, useState, useRef } from 'react';\r\nimport { forceCollide, forceManyBody, forceSimulation, forceX, forceY } from 'd3-force';\r\nimport orderBy from 'lodash.orderby';\r\nimport { scaleSqrt } from 'd3-scale';\r\nimport { extent } from 'd3-array';\r\nimport forceBoundary from 'd3-force-boundary';\r\nimport { cn } from '@undp/design-system-react/cn';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\nimport { P } from '@undp/design-system-react/Typography';\r\n\r\nimport { ClassNameObject, StyleObject, TreeMapDataType } from '@/Types';\r\nimport { Tooltip } from '@/Components/Elements/Tooltip';\r\nimport { numberFormattingFunction } from '@/Utils/numberFormattingFunction';\r\nimport { getTextColorBasedOnBgColor } from '@/Utils/getTextColorBasedOnBgColor';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { checkIfNullOrUndefined } from '@/Utils/checkIfNullOrUndefined';\r\nimport { DetailsModal } from '@/Components/Elements/DetailsModal';\r\n\r\ninterface Props {\r\n data: TreeMapDataType[];\r\n colors: string[];\r\n colorDomain: string[];\r\n leftMargin: number;\r\n rightMargin: number;\r\n topMargin: number;\r\n bottomMargin: number;\r\n showLabels: boolean;\r\n showValues: boolean;\r\n width: number;\r\n height: number;\r\n suffix: string;\r\n prefix: string;\r\n selectedColor?: string;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n highlightedDataPoints?: (string | number)[];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick?: (_d: any) => void;\r\n theme: 'light' | 'dark';\r\n maxRadiusValue?: number;\r\n radius: number;\r\n resetSelectionOnDoubleClick: boolean;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n detailsOnClick?: string | ((_d: any) => React.ReactNode);\r\n styles?: StyleObject;\r\n classNames?: ClassNameObject;\r\n dimmedOpacity: number;\r\n precision: number;\r\n locale: string;\r\n padZeros: boolean;\r\n}\r\n\r\ninterface TreeMapDataTypeForBubbleChart extends TreeMapDataType {\r\n x: number;\r\n y: number;\r\n vx: number;\r\n vy: number;\r\n}\r\n\r\nexport const Graph = (props: Props) => {\r\n const {\r\n data,\r\n colors,\r\n leftMargin,\r\n width,\r\n height,\r\n colorDomain,\r\n selectedColor,\r\n rightMargin,\r\n topMargin,\r\n bottomMargin,\r\n showLabels,\r\n tooltip,\r\n onSeriesMouseOver,\r\n showValues,\r\n suffix,\r\n prefix,\r\n highlightedDataPoints,\r\n onSeriesMouseClick,\r\n maxRadiusValue,\r\n radius,\r\n resetSelectionOnDoubleClick,\r\n detailsOnClick,\r\n styles,\r\n classNames,\r\n dimmedOpacity,\r\n precision,\r\n locale,\r\n padZeros,\r\n } = props;\r\n const svgRef = useRef(null);\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseOverData, setMouseOverData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseClickData, setMouseClickData] = useState<any>(undefined);\r\n const [viewPortDimensions, setViewPortDimensions] = useState<\r\n [number, number, number, number] | undefined\r\n >(undefined);\r\n const [eventX, setEventX] = useState<number | undefined>(undefined);\r\n const [eventY, setEventY] = useState<number | undefined>(undefined);\r\n const [finalData, setFinalData] = useState<TreeMapDataTypeForBubbleChart[] | null>(null);\r\n\r\n const margin = {\r\n top: topMargin,\r\n bottom: bottomMargin,\r\n left: leftMargin,\r\n right: rightMargin,\r\n };\r\n\r\n const graphWidth = width - margin.left - margin.right;\r\n const graphHeight = height - margin.top - margin.bottom;\r\n\r\n // Memoize data ordering and radius scale\r\n const dataOrdered =\r\n data.filter(d => !checkIfNullOrUndefined(d.size)).length === 0\r\n ? data\r\n : orderBy(\r\n data.filter(d => !checkIfNullOrUndefined(d.size)),\r\n 'radius',\r\n 'asc',\r\n );\r\n\r\n const radiusScale =\r\n data.filter(d => d.size === undefined || d.size === null).length !== data.length\r\n ? scaleSqrt()\r\n .domain([\r\n 0,\r\n checkIfNullOrUndefined(maxRadiusValue)\r\n ? Math.max(...data.map(d => d.size).filter(d => d !== undefined && d !== null))\r\n : (maxRadiusValue as number),\r\n ])\r\n .range([0.25, radius])\r\n .nice()\r\n : undefined;\r\n\r\n // Memoize simulation setup\r\n useEffect(() => {\r\n const setupSimulation = () => {\r\n const dataTemp = dataOrdered.map(d => ({ ...d, ...(d.data && { data: { ...d.data } }) }));\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const simulation = forceSimulation(dataTemp as any)\r\n .force('y', forceY(_d => graphHeight / 2).strength(1))\r\n .force('x', forceX(_d => graphWidth / 2).strength(1))\r\n .force(\r\n 'collide',\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n forceCollide((d: any) => (radiusScale ? radiusScale(d.size || 0) + 1 : radius + 1)),\r\n )\r\n .force('charge', forceManyBody().strength(-15))\r\n .force('boundary', forceBoundary(0, 0, graphWidth, graphHeight).strength(0.2).border(50))\r\n .alphaDecay(0.05)\r\n .tick(10000);\r\n\r\n simulation\r\n .on('tick', () => {\r\n setFinalData(dataTemp as TreeMapDataTypeForBubbleChart[]);\r\n })\r\n .on('end', () => {\r\n setFinalData(dataTemp as TreeMapDataTypeForBubbleChart[]);\r\n const xMinExtent =\r\n extent(\r\n dataTemp as TreeMapDataTypeForBubbleChart[],\r\n d => d.x - (radiusScale ? radiusScale(d.size || 0) + 1 : radius + 1),\r\n )[0] || 0;\r\n const yMinExtent =\r\n extent(\r\n dataTemp as TreeMapDataTypeForBubbleChart[],\r\n d => d.y - (radiusScale ? radiusScale(d.size || 0) + 1 : radius + 1),\r\n )[0] || 0;\r\n const xMaxExtent =\r\n extent(\r\n dataTemp as TreeMapDataTypeForBubbleChart[],\r\n d => d.x + (radiusScale ? radiusScale(d.size || 0) + 1 : radius + 1),\r\n )[1] || 0;\r\n const yMaxExtent =\r\n extent(\r\n dataTemp as TreeMapDataTypeForBubbleChart[],\r\n d => d.y + (radiusScale ? radiusScale(d.size || 0) + 1 : radius + 1),\r\n )[1] || 0;\r\n setViewPortDimensions([\r\n xMinExtent,\r\n yMinExtent,\r\n xMinExtent < 0 ? xMaxExtent - xMinExtent : xMaxExtent,\r\n yMinExtent < 0 ? yMaxExtent - yMinExtent : yMaxExtent,\r\n ]);\r\n });\r\n };\r\n\r\n setupSimulation();\r\n }, [data, radius, graphHeight, graphWidth, maxRadiusValue, dataOrdered, radiusScale]);\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const handleMouseEnter = (event: any, d: any) => {\r\n setMouseOverData(d);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n onSeriesMouseOver?.(d);\r\n };\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const handleMouseMove = (event: any, d: any) => {\r\n setMouseOverData(d);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n };\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const handleClick = (d: any) => {\r\n if (onSeriesMouseClick || detailsOnClick) {\r\n if (mouseClickData === d.label && resetSelectionOnDoubleClick) {\r\n setMouseClickData(undefined);\r\n onSeriesMouseClick?.(undefined);\r\n } else {\r\n setMouseClickData(d.label);\r\n onSeriesMouseClick?.(d);\r\n }\r\n }\r\n };\r\n\r\n const handleMouseLeave = () => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n onSeriesMouseOver?.(undefined);\r\n };\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const getCircleColor = (d: any) =>\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : !d.color\r\n ? Colors.gray\r\n : colors[colorDomain.indexOf(d.color)];\r\n\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const getOpacity = (d: any) =>\r\n selectedColor\r\n ? d.color\r\n ? colors[colorDomain.indexOf(d.color)] === selectedColor\r\n ? 1\r\n : dimmedOpacity\r\n : dimmedOpacity\r\n : highlightedDataPoints\r\n ? highlightedDataPoints.indexOf(d.label) !== -1\r\n ? 0.85\r\n : dimmedOpacity\r\n : 0.85;\r\n\r\n // Render loading state\r\n if (!finalData) {\r\n return (\r\n <div style={{ width: `${width}px`, height: `${height}px` }}>\r\n <div className='flex m-auto items-center justify-center p-0 leading-none text-base h-40'>\r\n <Spinner />\r\n </div>\r\n </div>\r\n );\r\n }\r\n if (viewPortDimensions) {\r\n return (\r\n <>\r\n <svg\r\n width={`${width}px`}\r\n height={`${height}px`}\r\n viewBox={`${viewPortDimensions[0] > 0 ? 0 : viewPortDimensions[0]} ${\r\n viewPortDimensions[1] > 0 ? 0 : viewPortDimensions[1]\r\n } ${width < viewPortDimensions[2] ? viewPortDimensions[2] : width} ${\r\n height < viewPortDimensions[3] ? viewPortDimensions[3] : height\r\n }`}\r\n direction='ltr'\r\n ref={svgRef}\r\n >\r\n <g transform={`translate(${margin.left},${margin.top})`}>\r\n {finalData.map(d => {\r\n const circleColor = getCircleColor(d);\r\n const opacity = getOpacity(d);\r\n const bubbleRadius = radiusScale ? radiusScale(d.size || 0) : radius;\r\n const showLabel = bubbleRadius > 20 && (showLabels || showValues);\r\n return (\r\n <g\r\n className='undp-viz-g-with-hover'\r\n key={d.label}\r\n opacity={opacity}\r\n transform={`translate(${d.x},${d.y})`}\r\n onMouseEnter={event => handleMouseEnter(event, d)}\r\n onMouseMove={event => handleMouseMove(event, d)}\r\n onClick={() => handleClick(d)}\r\n onMouseLeave={handleMouseLeave}\r\n >\r\n <circle cx={0} cy={0} r={bubbleRadius} fill={circleColor} />\r\n {(showLabel || showValues) &&\r\n d.size !== undefined &&\r\n d.size !== null &&\r\n bubbleRadius >= 15 && (\r\n <g>\r\n <foreignObject\r\n y={0 - bubbleRadius}\r\n x={0 - bubbleRadius}\r\n width={2 * bubbleRadius}\r\n height={2 * bubbleRadius}\r\n >\r\n <div\r\n className='flex flex-col justify-center items-center h-full py-0 px-3'\r\n style={{\r\n display: 'flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n height: '100%',\r\n padding: '0 0.75rem',\r\n }}\r\n >\r\n {showLabels && (\r\n <P\r\n className={cn(\r\n 'text-center leading-[1.25] overflow-hidden m-0 circle-packing-label',\r\n classNames?.graphObjectValues,\r\n )}\r\n marginBottom='none'\r\n style={{\r\n fontSize: `${Math.min(\r\n Math.max(Math.round(bubbleRadius / 4), 12),\r\n Math.max(\r\n Math.round((bubbleRadius * 12) / `${d.label}`.length),\r\n 12,\r\n ),\r\n 14,\r\n )}px`,\r\n WebkitLineClamp:\r\n bubbleRadius * 2 < 60\r\n ? 1\r\n : bubbleRadius * 2 < 75\r\n ? 2\r\n : bubbleRadius * 2 < 100\r\n ? 3\r\n : undefined,\r\n display: '-webkit-box',\r\n WebkitBoxOrient: 'vertical',\r\n color: getTextColorBasedOnBgColor(circleColor),\r\n hyphens: 'auto',\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n >\r\n {d.label}\r\n </P>\r\n )}\r\n {showValues && (\r\n <P\r\n className='text-center font-bold leading-[1.25] w-full m-0 circle-packing-value'\r\n marginBottom='none'\r\n style={{\r\n fontSize: `${Math.min(\r\n Math.max(Math.round(bubbleRadius / 4), 14),\r\n 14,\r\n )}px`,\r\n color: getTextColorBasedOnBgColor(circleColor),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n d.size,\r\n undefined,\r\n precision,\r\n prefix,\r\n suffix,\r\n locale,\r\n padZeros,\r\n )}\r\n </P>\r\n )}\r\n </div>\r\n </foreignObject>\r\n </g>\r\n )}\r\n </g>\r\n );\r\n })}\r\n </g>\r\n </svg>\r\n {mouseOverData && tooltip && eventX && eventY && (\r\n <Tooltip\r\n data={mouseOverData}\r\n body={tooltip}\r\n xPos={eventX}\r\n yPos={eventY}\r\n backgroundStyle={styles?.tooltip}\r\n className={classNames?.tooltip}\r\n />\r\n )}\r\n {detailsOnClick && mouseClickData !== undefined ? (\r\n <DetailsModal\r\n body={detailsOnClick}\r\n data={mouseClickData}\r\n setData={setMouseClickData}\r\n className={classNames?.modal}\r\n />\r\n ) : null}\r\n </>\r\n );\r\n }\r\n return null;\r\n};\r\n","export function getMaxCircleRadius(\r\n values: (number | undefined | null)[],\r\n width: number,\r\n height: number,\r\n circularBoundary?: boolean,\r\n) {\r\n const filteredValues = values.filter(d => d !== undefined && d !== null);\r\n const containerRadius =\r\n circularBoundary === false\r\n ? Math.sqrt((width * height) / Math.PI)\r\n : Math.min(width, height) / 2;\r\n const totalValue = filteredValues.reduce((sum, v) => sum + v, 0);\r\n const maxValue = Math.max(...filteredValues);\r\n const getPackingEfficiency = (n: number) => {\r\n if (n <= 5) return 0.9;\r\n if (n <= 10) return 0.85;\r\n if (n <= 20) return 0.8;\r\n return 0.7;\r\n };\r\n const getEfficiencyBecauseOfContainerRadius = (r: number) => {\r\n if (r <= 200) return 0.85;\r\n if (r <= 250) return 0.95;\r\n return 1;\r\n };\r\n return (\r\n containerRadius *\r\n Math.sqrt(maxValue / totalValue) *\r\n (circularBoundary ? getEfficiencyBecauseOfContainerRadius(containerRadius) : 1) *\r\n (circularBoundary ? getPackingEfficiency(filteredValues.length) : 1)\r\n );\r\n}\r\n","import { useState, useRef, useEffect } from 'react';\r\n\r\nimport { Graph } from './Graph';\r\nimport { getMaxCircleRadius } from './getMaxCircleRadius';\r\n\r\nimport {\r\n Languages,\r\n SourcesDataType,\r\n StyleObject,\r\n ClassNameObject,\r\n TreeMapDataType,\r\n NumberFormatOptions,\r\n} from '@/Types';\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { ColorLegendWithMouseOver } from '@/Components/Elements/ColorLegendWithMouseOver';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { EmptyState } from '@/Components/Elements/EmptyState';\r\nimport { uniqBy } from '@/Utils/uniqBy';\r\nimport { GraphArea, GraphContainer } from '@/Components/Elements/GraphContainer';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: TreeMapDataType[];\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 /** Color or array of colors for circle */\r\n colors?: string | string[];\r\n /** Domain of colors for the graph */\r\n colorDomain?: string[];\r\n /** Title for the color legend */\r\n colorLegendTitle?: string;\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 /** Height of the graph */\r\n height?: number;\r\n /** Minimum height of the graph */\r\n minHeight?: number;\r\n /** Relative height scaling factor. This overwrites the height props */\r\n relativeHeight?: 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 /** Left margin of the graph */\r\n leftMargin?: number;\r\n /** Right margin of the graph */\r\n rightMargin?: number;\r\n /** Top margin of the graph */\r\n topMargin?: number;\r\n /** Bottom margin of the graph */\r\n bottomMargin?: number;\r\n\r\n // Values and Ticks\r\n /** Maximum value mapped to the radius chart */\r\n maxRadiusValue?: number;\r\n\r\n // Graph Parameters\r\n /** If true, the graph will be rendered in a circle layout */\r\n circularBoundary?: boolean;\r\n /** Maximum radius of the circle */\r\n radius?: number;\r\n /** Toggle visibility of labels */\r\n showLabels?: boolean;\r\n /** Toggle visibility of values */\r\n showValues?: boolean;\r\n /** Toggle visibility of color scale. This is only applicable if the data props hae color parameter */\r\n showColorScale?: boolean;\r\n /** Toggle visibility of NA color in the color scale. This is only applicable if the data props hae color parameter and showColorScale prop is true */\r\n showNAColor?: boolean;\r\n /** Data points to highlight. Use the label value from data to highlight the data point */\r\n highlightedDataPoints?: (string | number)[];\r\n /** Defines the opacity of the non-highlighted data */\r\n dimmedOpacity?: number;\r\n /** Configuration options for controlling number formatting, localization, prefixes/suffixes, precision, and zero padding. */\r\n numberDisplayOptions?: NumberFormatOptions;\r\n /** Enable graph download option as png */\r\n graphDownload?: boolean;\r\n /** Enable data download option as a csv */\r\n dataDownload?: boolean;\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 /** Tooltip content. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n /** Details displayed on the modal when user clicks of a data point. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n detailsOnClick?: string | ((_d: any) => React.ReactNode);\r\n /** Callback for mouse over event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n /** Callback for mouse click event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\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\nexport function CirclePackingGraph(props: Props) {\r\n const {\r\n data,\r\n graphTitle,\r\n colors,\r\n sources,\r\n graphDescription,\r\n leftMargin = 0,\r\n rightMargin = 0,\r\n height,\r\n width,\r\n footNote,\r\n colorDomain,\r\n colorLegendTitle,\r\n padding,\r\n backgroundColor = false,\r\n topMargin = 0,\r\n bottomMargin = 0,\r\n showLabels = true,\r\n relativeHeight,\r\n tooltip,\r\n onSeriesMouseOver,\r\n showColorScale = true,\r\n showValues,\r\n graphID,\r\n highlightedDataPoints,\r\n onSeriesMouseClick,\r\n graphDownload = false,\r\n dataDownload = false,\r\n language = 'en',\r\n showNAColor,\r\n minHeight = 0,\r\n theme = 'light',\r\n ariaLabel,\r\n radius,\r\n maxRadiusValue,\r\n resetSelectionOnDoubleClick = true,\r\n detailsOnClick,\r\n styles,\r\n classNames,\r\n dimmedOpacity = 0.3,\r\n circularBoundary = true,\r\n numberDisplayOptions,\r\n } = props;\r\n const [svgWidth, setSvgWidth] = useState(0);\r\n const [svgHeight, setSvgHeight] = useState(0);\r\n const [selectedColor, setSelectedColor] = useState<string | undefined>(undefined);\r\n const graphDiv = useRef<HTMLDivElement>(null);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(entries => {\r\n setSvgWidth(entries[0].target.clientWidth || 620);\r\n setSvgHeight(entries[0].target.clientHeight || 480);\r\n });\r\n if (graphDiv.current) {\r\n resizeObserver.observe(graphDiv.current);\r\n }\r\n return () => resizeObserver.disconnect();\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 minHeight={minHeight}\r\n width={width}\r\n height={height}\r\n relativeHeight={relativeHeight}\r\n padding={padding}\r\n >\r\n {graphTitle || graphDescription || graphDownload || dataDownload ? (\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 graphDownload={graphDownload ? graphParentDiv : undefined}\r\n dataDownload={\r\n dataDownload\r\n ? data.map(d => d.data).filter(d => d !== undefined).length > 0\r\n ? data.map(d => d.data).filter(d => d !== undefined)\r\n : data.filter(d => d !== undefined)\r\n : null\r\n }\r\n />\r\n ) : null}\r\n {showColorScale && data.filter(el => el.color).length !== 0 && data.length > 0 ? (\r\n <ColorLegendWithMouseOver\r\n width={width}\r\n colorLegendTitle={colorLegendTitle}\r\n colors={(colors as string[] | undefined) || Colors[theme].categoricalColors.colors}\r\n colorDomain={colorDomain || (uniqBy(data, 'color', true) as string[])}\r\n setSelectedColor={setSelectedColor}\r\n showNAColor={showNAColor === undefined || showNAColor === null ? true : showNAColor}\r\n isCenter\r\n className={classNames?.colorLegend}\r\n />\r\n ) : null}\r\n <GraphArea ref={graphDiv}>\r\n {data.length === 0 && <EmptyState />}\r\n {svgWidth && svgHeight && data.length > 0 ? (\r\n <Graph\r\n data={data}\r\n colors={\r\n data.filter(el => el.color).length === 0\r\n ? colors\r\n ? [colors as string]\r\n : [Colors.primaryColors['blue-600']]\r\n : (colors as string[] | undefined) || Colors[theme].categoricalColors.colors\r\n }\r\n colorDomain={\r\n data.filter(el => el.color).length === 0\r\n ? []\r\n : colorDomain || (uniqBy(data, 'color', true) as string[])\r\n }\r\n width={svgWidth}\r\n height={svgHeight}\r\n leftMargin={leftMargin}\r\n rightMargin={rightMargin}\r\n topMargin={topMargin}\r\n bottomMargin={bottomMargin}\r\n showLabels={showLabels}\r\n showValues={\r\n showValues !== false\r\n ? data.filter(el => el.size).length !== 0\r\n : (showValues as boolean)\r\n }\r\n selectedColor={selectedColor}\r\n tooltip={tooltip}\r\n onSeriesMouseOver={onSeriesMouseOver}\r\n highlightedDataPoints={highlightedDataPoints}\r\n onSeriesMouseClick={onSeriesMouseClick}\r\n theme={theme}\r\n radius={\r\n !radius\r\n ? getMaxCircleRadius(\r\n data.map(d => d.size),\r\n svgWidth,\r\n svgHeight,\r\n circularBoundary,\r\n )\r\n : radius\r\n }\r\n maxRadiusValue={maxRadiusValue}\r\n resetSelectionOnDoubleClick={resetSelectionOnDoubleClick}\r\n detailsOnClick={detailsOnClick}\r\n styles={styles}\r\n classNames={classNames}\r\n dimmedOpacity={dimmedOpacity}\r\n locale={numberDisplayOptions?.locale || 'en'}\r\n padZeros={numberDisplayOptions?.padZeros || false}\r\n suffix={numberDisplayOptions?.suffix || ''}\r\n prefix={numberDisplayOptions?.prefix || ''}\r\n precision={numberDisplayOptions?.precision ?? 2}\r\n />\r\n ) : null}\r\n </GraphArea>\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 </GraphContainer>\r\n );\r\n}\r\n"],"names":["extent","values","valueof","min","max","value","index","constant","x","forceBoundary","x0","y0","x1","y1","strength","hardBoundary","border","nodes","strengthsX","strengthsY","x0z","x1z","y0z","y1z","borderz","halfX","halfY","getVx","strengthX","alpha","force","i","n","node","initialize","_","Graph","props","$","_c","data","colors","leftMargin","width","height","colorDomain","selectedColor","rightMargin","topMargin","bottomMargin","showLabels","tooltip","onSeriesMouseOver","showValues","suffix","prefix","highlightedDataPoints","onSeriesMouseClick","maxRadiusValue","radius","resetSelectionOnDoubleClick","detailsOnClick","styles","classNames","dimmedOpacity","precision","locale","padZeros","svgRef","useRef","mouseOverData","setMouseOverData","useState","undefined","mouseClickData","setMouseClickData","viewPortDimensions","setViewPortDimensions","eventX","setEventX","eventY","setEventY","finalData","setFinalData","t0","top","bottom","left","right","margin","graphWidth","graphHeight","t1","filter","_temp","length","orderBy","_temp2","dataOrdered","t2","_temp3","scaleSqrt","domain","checkIfNullOrUndefined","Math","map","_temp4","_temp5","range","nice","radiusScale","t3","setupSimulation","dataTemp","_temp6","simulation","forceSimulation","forceY","_d","forceX","_d_0","forceCollide","d_5","d","size","forceManyBody","alphaDecay","tick","on","xMinExtent","d_6","yMinExtent","d_7","y","xMaxExtent","d_8","yMaxExtent","d_9","t4","useEffect","t5","event","d_10","clientY","clientX","handleMouseEnter","t6","Symbol","for","event_0","d_11","handleMouseMove","t7","d_12","label","handleClick","t8","handleMouseLeave","t9","d_13","_temp7","color","indexOf","Colors","gray","getCircleColor","t10","d_14","getOpacity","t11","t12","t13","t14","jsx","Spinner","t15","graphObjectValues","t16","d_15","circleColor","opacity","bubbleRadius","showLabel","jsxs","event_1","event_2","display","flexDirection","justifyContent","alignItems","padding","P","cn","fontSize","round","WebkitLineClamp","WebkitBoxOrient","getTextColorBasedOnBgColor","hyphens","numberFormattingFunction","t17","t18","Tooltip","t19","modal","DetailsModal","t20","Fragment","d_0","d_3","d_1","d_2","d_4","el","getMaxCircleRadius","circularBoundary","filteredValues","containerRadius","sqrt","PI","totalValue","reduce","sum","v","maxValue","getPackingEfficiency","getEfficiencyBecauseOfContainerRadius","r","CirclePackingGraph","graphTitle","sources","graphDescription","footNote","colorLegendTitle","backgroundColor","relativeHeight","showColorScale","graphID","graphDownload","dataDownload","language","showNAColor","minHeight","theme","ariaLabel","numberDisplayOptions","svgWidth","setSvgWidth","svgHeight","setSvgHeight","setSelectedColor","graphDiv","graphParentDiv","resizeObserver","ResizeObserver","entries","target","clientWidth","clientHeight","current","observe","disconnect","graphContainer","description","title","GraphHeader","colorLegend","ColorLegendWithMouseOver","categoricalColors","uniqBy","t21","EmptyState","t22","primaryColors","_temp8","_temp9","_temp0","t23","GraphArea","t24","footnote","source","GraphFooter","t25","GraphContainer","el_2","el_1","el_0"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";const p=require("./index-CHPV5EwG-D4pAp7u0.cjs"),B=require("react"),Pe=require("./index-Cno4Q0YE.cjs"),Ge=require("./Spinner-WHzzloYQ.cjs"),$e=require("./Typography-BqmyF1gP.cjs"),He=require("./Tooltip-C9F3uYG0.cjs"),Te=require("./numberFormattingFunction-u2iNHL_c.cjs"),Ve=require("./getTextColorBasedOnBgColor-nqY-bsM_.cjs"),ze=require("./Colors.cjs"),qe=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),Fe=require("./DetailsModal-Du8Fr1QD.cjs"),We=require("./pow-BnyPO-NX.cjs"),Re=require("./y-QcCbqrzx.cjs"),Ie=require("./GraphFooter.cjs"),Ye=require("./GraphHeader.cjs"),Xe=require("./ColorLegendWithMouseOver.cjs"),Ze=require("./EmptyState-CFmiFPHz.cjs"),Be=require("./uniqBy-O05lp2S5.cjs"),Le=require("./GraphContainer-Cul9b74X.cjs");function Se(r,e){let n,l;if(e===void 0)for(const a of r)a!=null&&(n===void 0?a>=a&&(n=l=a):(n>a&&(n=a),l<a&&(l=a)));else{let a=-1;for(let f of r)(f=e(f,++a,r))!=null&&(n===void 0?f>=f&&(n=l=f):(n>f&&(n=f),l<f&&(l=f)))}return[n,l]}function F(r){return function(){return r}}function Ue(r,e,n,l){var a=F(.1),f=!0,R=F(Math.min((n-r)/2,(l-e)/2)),c,L,A,s,O,v,S,y,$,T;typeof r!="function"&&(r=F(r==null?-100:+r)),typeof n!="function"&&(n=F(n==null?100:+n)),typeof e!="function"&&(e=F(e==null?-100:+e)),typeof l!="function"&&(l=F(l==null?100:+l));function W(t,o,Q,i,V){return(t-o)*Math.min(2,Math.abs(t-o)/t)*Q*V}function m(t){for(var o=0,Q=c.length,i;o<Q;++o)i=c[o],i.x<s[o]+y[o]||i.x>O[o]-y[o]||i.y<v[o]+y[o]||i.y>S[o]-y[o]?(i.vx+=W($[o],i.x,L[o],y[o],t),i.vy+=W(T[o],i.y,A[o],y[o],t)):i.y<v[o]+y[o]||i.y>S[o]-y[o],f&&(i.x>=O[o]&&(i.vx+=O[o]-i.x),i.x<=s[o]&&(i.vx+=s[o]-i.x),i.y>=S[o]&&(i.vy+=S[o]-i.y),i.y<=v[o]&&(i.vy+=v[o]-i.y))}function E(){if(c){var t,o=c.length;for(L=new Array(o),A=new Array(o),s=new Array(o),v=new Array(o),O=new Array(o),S=new Array(o),T=new Array(o),$=new Array(o),y=new Array(o),t=0;t<o;++t)L[t]=isNaN(s[t]=+r(c[t],t,c))||isNaN(O[t]=+n(c[t],t,c))?0:+a(c[t],t,c),A[t]=isNaN(v[t]=+e(c[t],t,c))||isNaN(S[t]=+l(c[t],t,c))?0:+a(c[t],t,c),$[t]=s[t]+(O[t]-s[t])/2,T[t]=v[t]+(S[t]-v[t])/2,y[t]=+R(c[t],t,c)}}return m.initialize=function(t){c=t,E()},m.x0=function(t){return arguments.length?(r=typeof t=="function"?t:F(+t),E(),m):r},m.x1=function(t){return arguments.length?(n=typeof t=="function"?t:F(+t),E(),m):n},m.y0=function(t){return arguments.length?(e=typeof t=="function"?t:F(+t),E(),m):e},m.y1=function(t){return arguments.length?(l=typeof t=="function"?t:F(+t),E(),m):l},m.strength=function(t){return arguments.length?(a=typeof t=="function"?t:F(+t),E(),m):a},m.border=function(t){return arguments.length?(R=typeof t=="function"?t:F(+t),E(),m):R},m.hardBoundary=function(t){return arguments.length?(f=t,m):f},m}const Je=r=>{const e=p.compilerRuntimeExports.c(109),{data:n,colors:l,leftMargin:a,width:f,height:R,colorDomain:c,selectedColor:L,rightMargin:A,topMargin:s,bottomMargin:O,showLabels:v,tooltip:S,onSeriesMouseOver:y,showValues:$,suffix:T,prefix:W,highlightedDataPoints:m,onSeriesMouseClick:E,maxRadiusValue:t,radius:o,resetSelectionOnDoubleClick:Q,detailsOnClick:i,styles:V,classNames:q,dimmedOpacity:te,precision:ie,locale:se,padZeros:le}=r,xe=B.useRef(null),[ve,be]=B.useState(void 0),[I,ae]=B.useState(void 0),[P,De]=B.useState(void 0),[ce,b]=B.useState(void 0),[x,je]=B.useState(void 0),[ye,w]=B.useState(null);let ue;e[0]!==O||e[1]!==a||e[2]!==A||e[3]!==s?(ue={top:s,bottom:O,left:a,right:A},e[0]=O,e[1]=a,e[2]=A,e[3]=s,e[4]=ue):ue=e[4];const _=ue,Y=f-_.left-_.right,X=R-_.top-_.bottom;let fe;e[5]!==n?(fe=n.filter(Ke).length===0?n:Pe.orderBy(n.filter(Qe),"radius","asc"),e[5]=n,e[6]=fe):fe=e[6];const ee=fe;let he;e[7]!==n||e[8]!==t||e[9]!==o?(he=n.filter(_e).length!==n.length?We.sqrt().domain([0,qe.checkIfNullOrUndefined(t)?Math.max(...n.map(et).filter(tt)):t]).range([.25,o]).nice():void 0,e[7]=n,e[8]=t,e[9]=o,e[10]=he):he=e[10];const h=he;let oe;e[11]!==ee||e[12]!==X||e[13]!==Y||e[14]!==o||e[15]!==h?(oe=()=>{(()=>{const d=ee.map(ot);Re.forceSimulation(d).force("y",Re.forceY(j=>X/2).strength(1)).force("x",Re.forceX(j=>Y/2).strength(1)).force("collide",Re.forceCollide(j=>h?h(j.size||0)+1:o+1)).force("charge",Re.forceManyBody().strength(-15)).force("boundary",Ue(0,0,Y,X).strength(.2).border(50)).alphaDecay(.05).tick(1e4).on("tick",()=>{w(d)}).on("end",()=>{w(d);const j=Se(d,g=>g.x-(h?h(g.size||0)+1:o+1))[0]||0,M=Se(d,g=>g.y-(h?h(g.size||0)+1:o+1))[0]||0,z=Se(d,g=>g.x+(h?h(g.size||0)+1:o+1))[1]||0,N=Se(d,g=>g.y+(h?h(g.size||0)+1:o+1))[1]||0;De([j,M,j<0?z-j:z,M<0?N-M:N])})})()},e[11]=ee,e[12]=X,e[13]=Y,e[14]=o,e[15]=h,e[16]=oe):oe=e[16];let pe;e[17]!==n||e[18]!==ee||e[19]!==X||e[20]!==Y||e[21]!==t||e[22]!==o||e[23]!==h?(pe=[n,o,X,Y,t,ee,h],e[17]=n,e[18]=ee,e[19]=X,e[20]=Y,e[21]=t,e[22]=o,e[23]=h,e[24]=pe):pe=e[24],B.useEffect(oe,pe);let de;e[25]!==y?(de=(u,d)=>{be(d),je(u.clientY),b(u.clientX),y?.(d)},e[25]=y,e[26]=de):de=e[26];const D=de;let ge;e[27]===Symbol.for("react.memo_cache_sentinel")?(ge=(u,d)=>{be(d),je(u.clientY),b(u.clientX)},e[27]=ge):ge=e[27];const Ee=ge;let me;e[28]!==i||e[29]!==I||e[30]!==E||e[31]!==Q?(me=u=>{(E||i)&&(I===u.label&&Q?(ae(void 0),E?.(void 0)):(ae(u.label),E?.(u)))},e[28]=i,e[29]=I,e[30]=E,e[31]=Q,e[32]=me):me=e[32];const Z=me;let Me;e[33]!==y?(Me=()=>{be(void 0),b(void 0),je(void 0),y?.(void 0)},e[33]=y,e[34]=Me):Me=e[34];const U=Me;let Ce;e[35]!==c||e[36]!==l||e[37]!==n?(Ce=u=>n.filter(nt).length===0?l[0]:u.color?l[c.indexOf(u.color)]:ze.Colors.gray,e[35]=c,e[36]=l,e[37]=n,e[38]=Ce):Ce=e[38];const ne=Ce;let we;e[39]!==c||e[40]!==l||e[41]!==te||e[42]!==m||e[43]!==L?(we=u=>L?u.color&&l[c.indexOf(u.color)]===L?1:te:m?m.indexOf(u.label)!==-1?.85:te:.85,e[39]=c,e[40]=l,e[41]=te,e[42]=m,e[43]=L,e[44]=we):we=e[44];const re=we;if(!ye){const u=`${f}px`,d=`${R}px`;let k;e[45]!==u||e[46]!==d?(k={width:u,height:d},e[45]=u,e[46]=d,e[47]=k):k=e[47];let j;e[48]===Symbol.for("react.memo_cache_sentinel")?(j=p.jsxRuntimeExports.jsx("div",{className:"flex m-auto items-center justify-center p-0 leading-none text-base h-40",children:p.jsxRuntimeExports.jsx(Ge.w,{})}),e[48]=j):j=e[48];let M;return e[49]!==k?(M=p.jsxRuntimeExports.jsx("div",{style:k,children:j}),e[49]=k,e[50]=M):M=e[50],M}if(P){const u=`${f}px`,d=`${R}px`,k=`${P[0]>0?0:P[0]} ${P[1]>0?0:P[1]} ${f<P[2]?P[2]:f} ${R<P[3]?P[3]:R}`,j=`translate(${_.left},${_.top})`;let M;if(e[51]!==q?.graphObjectValues||e[52]!==ye||e[53]!==ne||e[54]!==re||e[55]!==Z||e[56]!==D||e[57]!==U||e[58]!==se||e[59]!==le||e[60]!==ie||e[61]!==W||e[62]!==o||e[63]!==h||e[64]!==v||e[65]!==$||e[66]!==V?.graphObjectValues||e[67]!==T){let K;e[69]!==q?.graphObjectValues||e[70]!==ne||e[71]!==re||e[72]!==Z||e[73]!==D||e[74]!==U||e[75]!==se||e[76]!==le||e[77]!==ie||e[78]!==W||e[79]!==o||e[80]!==h||e[81]!==v||e[82]!==$||e[83]!==V?.graphObjectValues||e[84]!==T?(K=C=>{const Oe=ne(C),ke=re(C),H=h?h(C.size||0):o,Ae=H>20&&(v||$);return p.jsxRuntimeExports.jsxs("g",{className:"undp-viz-g-with-hover",opacity:ke,transform:`translate(${C.x},${C.y})`,onMouseEnter:Ne=>D(Ne,C),onMouseMove:Ne=>Ee(Ne,C),onClick:()=>Z(C),onMouseLeave:U,children:[p.jsxRuntimeExports.jsx("circle",{cx:0,cy:0,r:H,fill:Oe}),(Ae||$)&&C.size!==void 0&&C.size!==null&&H>=15&&p.jsxRuntimeExports.jsx("g",{children:p.jsxRuntimeExports.jsx("foreignObject",{y:0-H,x:0-H,width:2*H,height:2*H,children:p.jsxRuntimeExports.jsxs("div",{className:"flex flex-col justify-center items-center h-full py-0 px-3",style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",height:"100%",padding:"0 0.75rem"},children:[v&&p.jsxRuntimeExports.jsx($e._,{className:p.mo("text-center leading-[1.25] overflow-hidden m-0 circle-packing-label",q?.graphObjectValues),marginBottom:"none",style:{fontSize:`${Math.min(Math.max(Math.round(H/4),12),Math.max(Math.round(H*12/`${C.label}`.length),12),14)}px`,WebkitLineClamp:H*2<60?1:H*2<75?2:H*2<100?3:void 0,display:"-webkit-box",WebkitBoxOrient:"vertical",color:Ve.getTextColorBasedOnBgColor(Oe),hyphens:"auto",...V?.graphObjectValues||{}},children:C.label}),$&&p.jsxRuntimeExports.jsx($e._,{className:"text-center font-bold leading-[1.25] w-full m-0 circle-packing-value",marginBottom:"none",style:{fontSize:`${Math.min(Math.max(Math.round(H/4),14),14)}px`,color:Ve.getTextColorBasedOnBgColor(Oe)},children:Te.numberFormattingFunction(C.size,void 0,ie,W,T,se,le)})]})})})]},C.label)},e[69]=q?.graphObjectValues,e[70]=ne,e[71]=re,e[72]=Z,e[73]=D,e[74]=U,e[75]=se,e[76]=le,e[77]=ie,e[78]=W,e[79]=o,e[80]=h,e[81]=v,e[82]=$,e[83]=V?.graphObjectValues,e[84]=T,e[85]=K):K=e[85],M=ye.map(K),e[51]=q?.graphObjectValues,e[52]=ye,e[53]=ne,e[54]=re,e[55]=Z,e[56]=D,e[57]=U,e[58]=se,e[59]=le,e[60]=ie,e[61]=W,e[62]=o,e[63]=h,e[64]=v,e[65]=$,e[66]=V?.graphObjectValues,e[67]=T,e[68]=M}else M=e[68];let z;e[86]!==j||e[87]!==M?(z=p.jsxRuntimeExports.jsx("g",{transform:j,children:M}),e[86]=j,e[87]=M,e[88]=z):z=e[88];let N;e[89]!==u||e[90]!==d||e[91]!==k||e[92]!==z?(N=p.jsxRuntimeExports.jsx("svg",{width:u,height:d,viewBox:k,direction:"ltr",ref:xe,children:z}),e[89]=u,e[90]=d,e[91]=k,e[92]=z,e[93]=N):N=e[93];let g;e[94]!==q?.tooltip||e[95]!==ce||e[96]!==x||e[97]!==ve||e[98]!==V?.tooltip||e[99]!==S?(g=ve&&S&&ce&&x&&p.jsxRuntimeExports.jsx(He.Tooltip,{data:ve,body:S,xPos:ce,yPos:x,backgroundStyle:V?.tooltip,className:q?.tooltip}),e[94]=q?.tooltip,e[95]=ce,e[96]=x,e[97]=ve,e[98]=V?.tooltip,e[99]=S,e[100]=g):g=e[100];let G;e[101]!==q?.modal||e[102]!==i||e[103]!==I?(G=i&&I!==void 0?p.jsxRuntimeExports.jsx(Fe.DetailsModal,{body:i,data:I,setData:ae,className:q?.modal}):null,e[101]=q?.modal,e[102]=i,e[103]=I,e[104]=G):G=e[104];let J;return e[105]!==N||e[106]!==g||e[107]!==G?(J=p.jsxRuntimeExports.jsxs(p.jsxRuntimeExports.Fragment,{children:[N,g,G]}),e[105]=N,e[106]=g,e[107]=G,e[108]=J):J=e[108],J}return null};function Ke(r){return!qe.checkIfNullOrUndefined(r.size)}function Qe(r){return!qe.checkIfNullOrUndefined(r.size)}function _e(r){return r.size===void 0||r.size===null}function et(r){return r.size}function tt(r){return r!=null}function ot(r){return{...r,...r.data&&{data:{...r.data}}}}function nt(r){return r.color}function rt(r,e,n,l){const a=r.filter(s=>s!=null),f=l===!1?Math.sqrt(e*n/Math.PI):Math.min(e,n)/2,R=a.reduce((s,O)=>s+O,0),c=Math.max(...a),L=s=>s<=5?.9:s<=10?.85:s<=20?.8:.7,A=s=>s<=200?.85:s<=250?.95:1;return f*Math.sqrt(c/R)*(l?A(f):1)*(l?L(a.length):1)}function it(r){const e=p.compilerRuntimeExports.c(84),{data:n,graphTitle:l,colors:a,sources:f,graphDescription:R,leftMargin:c,rightMargin:L,height:A,width:s,footNote:O,colorDomain:v,colorLegendTitle:S,padding:y,backgroundColor:$,topMargin:T,bottomMargin:W,showLabels:m,relativeHeight:E,tooltip:t,onSeriesMouseOver:o,showColorScale:Q,showValues:i,graphID:V,highlightedDataPoints:q,onSeriesMouseClick:te,graphDownload:ie,dataDownload:se,language:le,showNAColor:xe,minHeight:ve,theme:be,ariaLabel:I,radius:ae,maxRadiusValue:P,resetSelectionOnDoubleClick:De,detailsOnClick:ce,styles:b,classNames:x,dimmedOpacity:je,circularBoundary:ye,numberDisplayOptions:w}=r,ue=c===void 0?0:c,_=L===void 0?0:L,Y=$===void 0?!1:$,X=T===void 0?0:T,fe=W===void 0?0:W,ee=m===void 0?!0:m,he=Q===void 0?!0:Q,h=ie===void 0?!1:ie,oe=se===void 0?!1:se,pe=le===void 0?"en":le,de=ve===void 0?0:ve,D=be===void 0?"light":be,ge=De===void 0?!0:De,Ee=je===void 0?.3:je,me=ye===void 0?!0:ye,[Z,Me]=B.useState(0),[U,Ce]=B.useState(0),[ne,we]=B.useState(void 0),re=B.useRef(null),u=B.useRef(null);let d,k;e[0]===Symbol.for("react.memo_cache_sentinel")?(d=()=>{const Oe=new ResizeObserver(ke=>{Me(ke[0].target.clientWidth||620),Ce(ke[0].target.clientHeight||480)});return re.current&&Oe.observe(re.current),()=>Oe.disconnect()},k=[],e[0]=d,e[1]=k):(d=e[0],k=e[1]),B.useEffect(d,k);const j=x?.graphContainer,M=b?.graphContainer;let z;e[2]!==x?.description||e[3]!==x?.title||e[4]!==n||e[5]!==oe||e[6]!==R||e[7]!==h||e[8]!==l||e[9]!==b?.description||e[10]!==b?.title||e[11]!==s?(z=l||R||h||oe?p.jsxRuntimeExports.jsx(Ye.GraphHeader,{styles:{title:b?.title,description:b?.description},classNames:{title:x?.title,description:x?.description},graphTitle:l,graphDescription:R,width:s,graphDownload:h?u:void 0,dataDownload:oe?n.map(gt).filter(dt).length>0?n.map(pt).filter(ht):n.filter(ft):null}):null,e[2]=x?.description,e[3]=x?.title,e[4]=n,e[5]=oe,e[6]=R,e[7]=h,e[8]=l,e[9]=b?.description,e[10]=b?.title,e[11]=s,e[12]=z):z=e[12];let N;e[13]!==x?.colorLegend||e[14]!==v||e[15]!==S||e[16]!==a||e[17]!==n||e[18]!==he||e[19]!==xe||e[20]!==D||e[21]!==s?(N=he&&n.filter(ut).length!==0&&n.length>0?p.jsxRuntimeExports.jsx(Xe.ColorLegendWithMouseOver,{width:s,colorLegendTitle:S,colors:a||ze.Colors[D].categoricalColors.colors,colorDomain:v||Be.uniqBy(n,"color",!0),setSelectedColor:we,showNAColor:xe??!0,isCenter:!0,className:x?.colorLegend}):null,e[13]=x?.colorLegend,e[14]=v,e[15]=S,e[16]=a,e[17]=n,e[18]=he,e[19]=xe,e[20]=D,e[21]=s,e[22]=N):N=e[22];let g;e[23]!==n.length?(g=n.length===0&&p.jsxRuntimeExports.jsx(Ze.EmptyState,{}),e[23]=n.length,e[24]=g):g=e[24];let G;e[25]!==fe||e[26]!==me||e[27]!==x||e[28]!==v||e[29]!==a||e[30]!==n||e[31]!==ce||e[32]!==Ee||e[33]!==q||e[34]!==ue||e[35]!==P||e[36]!==w?.locale||e[37]!==w?.padZeros||e[38]!==w?.precision||e[39]!==w?.prefix||e[40]!==w?.suffix||e[41]!==te||e[42]!==o||e[43]!==ae||e[44]!==ge||e[45]!==_||e[46]!==ne||e[47]!==ee||e[48]!==i||e[49]!==b||e[50]!==U||e[51]!==Z||e[52]!==D||e[53]!==t||e[54]!==X?(G=Z&&U&&n.length>0?p.jsxRuntimeExports.jsx(Je,{data:n,colors:n.filter(ct).length===0?a?[a]:[ze.Colors.primaryColors["blue-600"]]:a||ze.Colors[D].categoricalColors.colors,colorDomain:n.filter(at).length===0?[]:v||Be.uniqBy(n,"color",!0),width:Z,height:U,leftMargin:ue,rightMargin:_,topMargin:X,bottomMargin:fe,showLabels:ee,showValues:i!==!1?n.filter(lt).length!==0:i,selectedColor:ne,tooltip:t,onSeriesMouseOver:o,highlightedDataPoints:q,onSeriesMouseClick:te,theme:D,radius:ae||rt(n.map(st),Z,U,me),maxRadiusValue:P,resetSelectionOnDoubleClick:ge,detailsOnClick:ce,styles:b,classNames:x,dimmedOpacity:Ee,locale:w?.locale||"en",padZeros:w?.padZeros||!1,suffix:w?.suffix||"",prefix:w?.prefix||"",precision:w?.precision??2}):null,e[25]=fe,e[26]=me,e[27]=x,e[28]=v,e[29]=a,e[30]=n,e[31]=ce,e[32]=Ee,e[33]=q,e[34]=ue,e[35]=P,e[36]=w?.locale,e[37]=w?.padZeros,e[38]=w?.precision,e[39]=w?.prefix,e[40]=w?.suffix,e[41]=te,e[42]=o,e[43]=ae,e[44]=ge,e[45]=_,e[46]=ne,e[47]=ee,e[48]=i,e[49]=b,e[50]=U,e[51]=Z,e[52]=D,e[53]=t,e[54]=X,e[55]=G):G=e[55];let J;e[56]!==g||e[57]!==G?(J=p.jsxRuntimeExports.jsxs(Le.GraphArea,{ref:re,children:[g,G]}),e[56]=g,e[57]=G,e[58]=J):J=e[58];let K;e[59]!==x?.footnote||e[60]!==x?.source||e[61]!==O||e[62]!==f||e[63]!==b?.footnote||e[64]!==b?.source||e[65]!==s?(K=f||O?p.jsxRuntimeExports.jsx(Ie.GraphFooter,{styles:{footnote:b?.footnote,source:b?.source},classNames:{footnote:x?.footnote,source:x?.source},sources:f,footNote:O,width:s}):null,e[59]=x?.footnote,e[60]=x?.source,e[61]=O,e[62]=f,e[63]=b?.footnote,e[64]=b?.source,e[65]=s,e[66]=K):K=e[66];let C;return e[67]!==I||e[68]!==Y||e[69]!==V||e[70]!==A||e[71]!==pe||e[72]!==de||e[73]!==y||e[74]!==E||e[75]!==j||e[76]!==M||e[77]!==z||e[78]!==N||e[79]!==J||e[80]!==K||e[81]!==D||e[82]!==s?(C=p.jsxRuntimeExports.jsxs(Le.GraphContainer,{className:j,style:M,id:V,ref:u,"aria-label":I,backgroundColor:Y,theme:D,language:pe,minHeight:de,width:s,height:A,relativeHeight:E,padding:y,children:[z,N,J,K]}),e[67]=I,e[68]=Y,e[69]=V,e[70]=A,e[71]=pe,e[72]=de,e[73]=y,e[74]=E,e[75]=j,e[76]=M,e[77]=z,e[78]=N,e[79]=J,e[80]=K,e[81]=D,e[82]=s,e[83]=C):C=e[83],C}function st(r){return r.size}function lt(r){return r.size}function at(r){return r.color}function ct(r){return r.color}function ut(r){return r.color}function ft(r){return r!==void 0}function ht(r){return r!==void 0}function pt(r){return r.data}function dt(r){return r!==void 0}function gt(r){return r.data}exports.CirclePackingGraph=it;exports.extent=Se;
|
|
2
|
+
//# sourceMappingURL=index-DuLvdHo2.cjs.map
|