@carbon/charts 1.26.1 → 1.27.0

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/CHANGELOG.md CHANGED
@@ -3,6 +3,19 @@
3
3
  All notable changes to this project will be documented in this file. See
4
4
  [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 1.27.0 (2025-09-22)
7
+
8
+ ### Features
9
+
10
+ - **Tooltip:** add customTotalCalculation function
11
+ ([#2043](https://github.com/carbon-design-system/carbon-charts/issues/2043))
12
+ ([a80744f](https://github.com/carbon-design-system/carbon-charts/commit/a80744ff40a58081bf175058de37f0e7ef76158a))
13
+
14
+ # Change Log
15
+
16
+ All notable changes to this project will be documented in this file. See
17
+ [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
18
+
6
19
  ## 1.26.1 (2025-09-22)
7
20
 
8
21
  ### Bug Fixes
@@ -1,4 +1,4 @@
1
- import { t as Br, $ as ol, i as ll, a0 as cl, a1 as zr, a2 as Ur, a3 as ul, a4 as hl, a5 as dl, a6 as pl, a7 as Fr, a8 as ya, a9 as an, g as O, p as Kt, a as sn, C as Ea, aa as xt, w as Mt, ab as kn, E as xa, H as jt, ac as Wr, ad as Ls, c as fl, ae as xe, I as di, K as pi, e as se, af as yn, ag as ge, f as ye, x as ve, ah as gl, h as Je, O as ml, ai as Xr, aj as Re, z as Et, l as qt, ak as Gt, al as vl, M as yl, am as Yr, y as _t, q as dn, n as Bn, an as $s, ao as El, ap as xl, aq as fi, ar as Sa, A as Ae, as as Ta, at as Zr, au as Sl } from "./color-scale-utils-BzjNNGXE.mjs";
1
+ import { t as Br, $ as ol, i as ll, a0 as cl, a1 as zr, a2 as Ur, a3 as ul, a4 as hl, a5 as dl, a6 as pl, a7 as Fr, a8 as ya, a9 as an, g as O, p as Kt, a as sn, C as Ea, aa as Et, w as Mt, ab as kn, E as xa, H as jt, ac as Wr, ad as Ls, c as fl, ae as xe, I as di, K as pi, e as se, af as yn, ag as ge, f as ye, x as ve, ah as gl, h as Je, O as ml, ai as Xr, aj as Re, z as xt, l as qt, ak as Gt, al as vl, M as yl, am as Yr, y as _t, q as dn, n as Bn, an as $s, ao as El, ap as xl, aq as fi, ar as Sa, A as Ae, as as Ta, at as Zr, au as Sl } from "./color-scale-utils-BzjNNGXE.mjs";
2
2
  import { y as at, $ as b, N as Tt, r as be, q as ze, L as Tl, A as te, m as nt, s as Me, W as Qe, S as kt, e as J, Z as Ue, i as Xt, f as ba, J as Vs, d as bl, F as zn, n as Gs, H as Hs, C as Bs, p as Un, b as Oa, D as zs, U as Ol, x as we, a0 as Fn, O as Us } from "./axis-scales-CPuwbFQf.mjs";
3
3
  import { R as lt } from "./a11y-ePqvrObQ.mjs";
4
4
  import { t as ns, s as D, h as La, e as Ut, c as ss, f as Ce, g as oe, m as Fs, i as Aa, j as Ma, k as tn, l as Dt, n as wa, o as Ll, q as Al, u as zi, D as I, v as Ml, w as gi, G as Ca, x as hs, y as wl, a as Cl, p as bt, r as ka, b as kl } from "./angle-utils-BgkbNBqH.mjs";
@@ -3816,7 +3816,7 @@ class cm extends dt {
3816
3816
  <table class="cds--data-table cds--data-table--no-border">
3817
3817
  <thead>
3818
3818
  <tr>
3819
- ${xt(r, 0).map(
3819
+ ${Et(r, 0).map(
3820
3820
  (o) => `<th scope="col">
3821
3821
  <div class="cds--table-header-label">${ue(o)}</div>
3822
3822
  </th>`
@@ -4915,7 +4915,7 @@ class fm extends $d {
4915
4915
  value: m.value
4916
4916
  })
4917
4917
  ), d.push({
4918
- label: xt(n, "locale.translations.group") || xt(n, "tooltip.groupLabel"),
4918
+ label: Et(n, "locale.translations.group") || Et(n, "tooltip.groupLabel"),
4919
4919
  value: u[o],
4920
4920
  color: this.model.getFillColor(u[o]),
4921
4921
  class: this.model.getColorClassName({
@@ -4942,13 +4942,14 @@ class fm extends $d {
4942
4942
  };
4943
4943
  }).sort((u, p) => p.value - u.value)
4944
4944
  ), !r && O(n, "tooltip", "showTotal") === !0)) {
4945
- const u = s.getRangeIdentifier();
4946
- d.push({
4947
- label: xt(n, "locale.translations.total") || xt(n, "tooltip.totalLabel") || "Total",
4948
- value: e.reduce(
4949
- (p, f) => p + f[u],
4950
- 0
4951
- ),
4945
+ const u = s.getRangeIdentifier(), p = O(n, "tooltip", "customTotalCalculation");
4946
+ let f;
4947
+ p ? f = p(e) : f = e.reduce(
4948
+ (m, g) => m + g[u],
4949
+ 0
4950
+ ), d.push({
4951
+ label: Et(n, "tooltip.totalLabel") || Et(n, "locale.translations.total") || "Total",
4952
+ value: f,
4952
4953
  bold: !0
4953
4954
  });
4954
4955
  }
@@ -6720,13 +6721,13 @@ class ap extends dt {
6720
6721
  useAttrs: !0
6721
6722
  }), o = I.appendOrSelect(s, "svg.chart-skeleton").attr("width", a).attr("height", r).attr("role", "presentation"), c = e === 0 ? "pie" : "donut", l = O(this.getOptions(), c, "alignment");
6722
6723
  I.appendOrSelect(o, "rect.chart-skeleton-area-container").attr("width", a).attr("height", r).attr("fill", "none");
6723
- const h = Dn().innerRadius(e).outerRadius(t).startAngle(0).endAngle(Math.PI * 2), d = t + Math.abs(Et.radiusOffset), u = t + (Math.min(a, r) - t * 2) / 2, p = I.appendOrSelect(o, "path").attr("class", "skeleton-area-shape").attr("transform", `translate(${d}, ${u})`).attr("d", h).classed("shimmer-effect-areas", n).classed("empty-state-areas", !n).style(
6724
+ const h = Dn().innerRadius(e).outerRadius(t).startAngle(0).endAngle(Math.PI * 2), d = t + Math.abs(xt.radiusOffset), u = t + (Math.min(a, r) - t * 2) / 2, p = I.appendOrSelect(o, "path").attr("class", "skeleton-area-shape").attr("transform", `translate(${d}, ${u})`).attr("d", h).classed("shimmer-effect-areas", n).classed("empty-state-areas", !n).style(
6724
6725
  "fill",
6725
6726
  n ? `url(#${this.services.domUtils.generateElementIDString("shimmer-areas")})` : null
6726
6727
  );
6727
- let f = t + Et.xOffset;
6728
- l === te.CENTER ? f = a / 2 : l === te.RIGHT && (f = a - t - Et.xOffset);
6729
- const m = t + Et.yOffset;
6728
+ let f = t + xt.xOffset;
6729
+ l === te.CENTER ? f = a / 2 : l === te.RIGHT && (f = a - t - xt.xOffset);
6730
+ const m = t + xt.yOffset;
6730
6731
  p.attr("transform", `translate(${f}, ${m})`);
6731
6732
  }
6732
6733
  // same logic in pie
@@ -6734,7 +6735,7 @@ class ap extends dt {
6734
6735
  const { width: t, height: e } = I.getSVGElementSize(this.parent, {
6735
6736
  useAttrs: !0
6736
6737
  });
6737
- return Math.min(t, e) / 2 + Et.radiusOffset;
6738
+ return Math.min(t, e) / 2 + xt.radiusOffset;
6738
6739
  }
6739
6740
  // same logic in donut
6740
6741
  computeInnerRadius() {
@@ -7488,14 +7489,14 @@ class Om extends Ko {
7488
7489
  const s = this.parent, a = this.model.getOptions(), { cartesianScales: r } = this.services, o = r.getOrientation(), c = r.getRangeScale(), [l, h] = c.range(), d = r.getDomainScale(), u = d.invert(
7489
7490
  o === Xt.VERTICAL ? e : n
7490
7491
  ), p = I.appendOrSelect(s, "g.ruler").attr("aria-label", "ruler"), f = I.appendOrSelect(p, "line.ruler-line"), g = s.selectAll("[role=graphics-symbol]").filter((v) => {
7491
- if (parseFloat(xt(v, "data.x0")) <= u && parseFloat(xt(v, "data.x1")) >= u)
7492
+ if (parseFloat(Et(v, "data.x0")) <= u && parseFloat(Et(v, "data.x1")) >= u)
7492
7493
  return !0;
7493
7494
  });
7494
7495
  if (g.size() > 0) {
7495
7496
  this.elementsToHighlight && this.elementsToHighlight.size() > 0 && !uo(this.elementsToHighlight, g) && this.hideRuler(), g.dispatch("mouseover"), this.elementsToHighlight = g;
7496
- const v = D(g.nodes()[0]).datum(), S = parseFloat(xt(v, "data.x0")), y = parseFloat(xt(v, "data.x1")), E = this.model.getActiveDataGroupNames(), x = E.reverse().map((C) => ({
7497
+ const v = D(g.nodes()[0]).datum(), S = parseFloat(Et(v, "data.x0")), y = parseFloat(Et(v, "data.x1")), E = this.model.getActiveDataGroupNames(), x = E.reverse().map((C) => ({
7497
7498
  label: C,
7498
- value: xt(v, `data.${C}`),
7499
+ value: Et(v, `data.${C}`),
7499
7500
  class: this.model.getColorClassName({
7500
7501
  classNameTypes: [nt.TOOLTIP],
7501
7502
  dataGroupName: C
@@ -7508,17 +7509,32 @@ class Om extends Ko {
7508
7509
  hoveredElement: f,
7509
7510
  items: [
7510
7511
  {
7511
- label: xt(a, "bins.rangeLabel") || "Range",
7512
+ label: Et(a, "bins.rangeLabel") || "Range",
7512
7513
  value: `${S} – ${y}`
7513
7514
  },
7514
7515
  ...x,
7515
7516
  ...O(a, "tooltip", "showTotal") === !0 ? [
7516
7517
  {
7517
- label: xt(a, "locale.translations.total") || xt(a, "tooltip.totalLabel") || "Total",
7518
- value: E.reduce(
7519
- (_, V) => _ + parseFloat(xt(v, `data.${V}`)),
7520
- 0
7521
- )
7518
+ label: Et(a, "tooltip.totalLabel") || Et(a, "locale.translations.total") || "Total",
7519
+ value: (() => {
7520
+ const _ = O(
7521
+ a,
7522
+ "tooltip",
7523
+ "customTotalCalculation"
7524
+ );
7525
+ if (_) {
7526
+ const V = E.map(
7527
+ (R) => ({
7528
+ [R]: parseFloat(Et(v, `data.${R}`))
7529
+ })
7530
+ );
7531
+ return _(V);
7532
+ } else
7533
+ return E.reduce(
7534
+ (V, R) => V + parseFloat(Et(v, `data.${R}`)),
7535
+ 0
7536
+ );
7537
+ })()
7522
7538
  }
7523
7539
  ] : []
7524
7540
  ]
@@ -7912,7 +7928,7 @@ class $m extends dt {
7912
7928
  const p = t.model.getOptions();
7913
7929
  h = [
7914
7930
  {
7915
- label: xt(p, "locale.translations.total") || xt(p, "tooltip.totalLabel") || "Total",
7931
+ label: Et(p, "locale.translations.total") || Et(p, "tooltip.totalLabel") || "Total",
7916
7932
  value: n.value,
7917
7933
  bold: !0
7918
7934
  }
@@ -8011,7 +8027,7 @@ class gp extends dt {
8011
8027
  t.addEventListener(b.Legend.ITEM_HOVER, this.handleLegendOnHover), t.addEventListener(b.Legend.ITEM_MOUSEOUT, this.handleLegendMouseOut);
8012
8028
  }
8013
8029
  getInnerRadius() {
8014
- return Et.innerRadius;
8030
+ return xt.innerRadius;
8015
8031
  }
8016
8032
  render(t = !0) {
8017
8033
  const e = this, n = this.getComponentContainer({
@@ -8019,8 +8035,8 @@ class gp extends dt {
8019
8035
  }), s = this.getOptions(), { groupMapsTo: a } = s.data, { valueMapsTo: r } = s.pie;
8020
8036
  this.isRendering = !0;
8021
8037
  const o = this.model.getDisplayData().filter((M) => M[r] > 0), c = this.computeRadius();
8022
- this.arc = Dn().innerRadius(this.getInnerRadius()).outerRadius(c), this.hoverArc = Dn().innerRadius(this.getInnerRadius()).outerRadius(c + Et.hoverArc.outerRadiusOffset);
8023
- const h = nd().value((M) => M[r]).sort(O(s, "pie", "sortFunction")).padAngle(Et.padAngle)(o), u = I.appendOrSelect(n, "g.slices").attr("role", lt.GROUP).attr("data-name", "slices").selectAll("path.slice").data(h, (M) => M.data[a]);
8038
+ this.arc = Dn().innerRadius(this.getInnerRadius()).outerRadius(c), this.hoverArc = Dn().innerRadius(this.getInnerRadius()).outerRadius(c + xt.hoverArc.outerRadiusOffset);
8039
+ const h = nd().value((M) => M[r]).sort(O(s, "pie", "sortFunction")).padAngle(xt.padAngle)(o), u = I.appendOrSelect(n, "g.slices").attr("role", lt.GROUP).attr("data-name", "slices").selectAll("path.slice").data(h, (M) => M.data[a]);
8024
8040
  u.exit().attr("opacity", 0).remove(), u.enter().append("path").classed("slice", !0).attr("opacity", 0).merge(u).attr(
8025
8041
  "class",
8026
8042
  (M) => this.model.getColorClassName({
@@ -8062,19 +8078,19 @@ class gp extends dt {
8062
8078
  return M.textOffsetX = k / 2, M.textOffsetY = $ > 90 && $ < 270 ? 10 : 0, M.xPosition = (M.textOffsetX + L) * Math.sin(P), M.yPosition = (M.textOffsetY + L) * -Math.cos(P), M;
8063
8079
  }).attr("transform", function(M, L) {
8064
8080
  const P = S.length, $ = (M.endAngle - M.startAngle) * (180 / Math.PI);
8065
- if (L >= P - 2 && $ < Et.callout.minSliceDegree) {
8081
+ if (L >= P - 2 && $ < xt.callout.minSliceDegree) {
8066
8082
  let k, G;
8067
- return M.index === P - 1 ? (k = M.xPosition + Et.callout.offsetX + Et.callout.textMargin + M.textOffsetX, G = M.yPosition - Et.callout.offsetY, M.direction = Bs.RIGHT, T.push(M)) : (k = M.xPosition - Et.callout.offsetX - M.textOffsetX - Et.callout.textMargin, G = M.yPosition - Et.callout.offsetY, M.direction = Bs.LEFT, T.push(M)), `translate(${k}, ${G})`;
8083
+ return M.index === P - 1 ? (k = M.xPosition + xt.callout.offsetX + xt.callout.textMargin + M.textOffsetX, G = M.yPosition - xt.callout.offsetY, M.direction = Bs.RIGHT, T.push(M)) : (k = M.xPosition - xt.callout.offsetX - M.textOffsetX - xt.callout.textMargin, G = M.yPosition - xt.callout.offsetY, M.direction = Bs.LEFT, T.push(M)), `translate(${k}, ${G})`;
8068
8084
  }
8069
8085
  return `translate(${M.xPosition}, ${M.yPosition})`;
8070
8086
  }), this.renderCallouts(T);
8071
8087
  const C = O(s, "donut") ? "donut" : "pie", _ = O(s, C, "alignment"), { width: V } = I.getSVGElementSize(this.getParent(), {
8072
8088
  useAttrs: !0
8073
- }), R = v ? Et.xOffset : 0, A = v ? Et.yOffset : 0;
8089
+ }), R = v ? xt.xOffset : 0, A = v ? xt.yOffset : 0;
8074
8090
  let H = c + R;
8075
- _ === te.CENTER ? H = V / 2 : _ === te.RIGHT && (H = V - c - Et.xOffset);
8091
+ _ === te.CENTER ? H = V / 2 : _ === te.RIGHT && (H = V - c - xt.xOffset);
8076
8092
  let N = c + A;
8077
- T.length > 0 && (N += Et.yOffsetCallout), n.attr("x", H + 7).attr("y", N), this.addEventListeners();
8093
+ T.length > 0 && (N += xt.yOffsetCallout), n.attr("x", H + 7).attr("y", N), this.addEventListeners();
8078
8094
  }
8079
8095
  renderCallouts(t) {
8080
8096
  const e = I.appendOrSelect(this.getComponentContainer(), "g.callouts").attr("role", lt.GROUP).attr("data-name", "callouts"), n = e.selectAll("g.callout").data(t);
@@ -8086,15 +8102,15 @@ class gp extends dt {
8086
8102
  x: c,
8087
8103
  y: l + o.textOffsetY
8088
8104
  }, o.endPos = {
8089
- x: c + Et.callout.offsetX,
8090
- y: l - Et.callout.offsetY + o.textOffsetY
8091
- }, o.intersectPointX = o.endPos.x - Et.callout.horizontalLineLength) : (o.startPos = {
8105
+ x: c + xt.callout.offsetX,
8106
+ y: l - xt.callout.offsetY + o.textOffsetY
8107
+ }, o.intersectPointX = o.endPos.x - xt.callout.horizontalLineLength) : (o.startPos = {
8092
8108
  x: c,
8093
8109
  y: l + o.textOffsetY
8094
8110
  }, o.endPos = {
8095
- x: c - Et.callout.offsetX,
8096
- y: l - Et.callout.offsetY + o.textOffsetY
8097
- }, o.intersectPointX = o.endPos.x + Et.callout.horizontalLineLength), o;
8111
+ x: c - xt.callout.offsetX,
8112
+ y: l - xt.callout.offsetY + o.textOffsetY
8113
+ }, o.intersectPointX = o.endPos.x + xt.callout.horizontalLineLength), o;
8098
8114
  }), s.append("line").classed("vertical-line", !0).merge(e.selectAll("line.vertical-line")).datum(function() {
8099
8115
  return D(this.parentNode).datum();
8100
8116
  }).style("stroke-width", "1px").attr("x1", (o) => o.startPos.x).attr("y1", (o) => o.startPos.y).attr("x2", (o) => o.intersectPointX).attr("y2", (o) => o.endPos.y), s.append("line").classed("horizontal-line", !0).merge(e.selectAll("line.horizontal-line")).datum(function() {
@@ -8164,7 +8180,7 @@ class gp extends dt {
8164
8180
  const { width: t, height: e } = I.getSVGElementSize(this.parent, {
8165
8181
  useAttrs: !0
8166
8182
  }), n = this.getOptions(), s = Math.min(t, e) / 2;
8167
- return n.pie.labels.enabled ? s + Et.radiusOffset : s;
8183
+ return n.pie.labels.enabled ? s + xt.radiusOffset : s;
8168
8184
  }
8169
8185
  }
8170
8186
  class Vm extends gp {
@@ -8659,7 +8675,7 @@ class Bm extends dt {
8659
8675
  return t !== zs.OFF && (t === zs.AUTO && Sa.minCellDividerDimension <= this.xBandwidth && Sa.minCellDividerDimension <= this.yBandwidth || t === zs.ON);
8660
8676
  }
8661
8677
  addEventListener() {
8662
- const t = this, { cartesianScales: e } = this.services, n = this.getOptions(), s = xt(n, "locale.translations.total") || xt(n, "tooltip.totalLabel") || "Total", a = e.getDomainIdentifier(), r = e.getRangeIdentifier(), o = e.getDomainLabel(), c = e.getRangeLabel();
8678
+ const t = this, { cartesianScales: e } = this.services, n = this.getOptions(), s = Et(n, "locale.translations.total") || Et(n, "tooltip.totalLabel") || "Total", a = e.getDomainIdentifier(), r = e.getRangeIdentifier(), o = e.getDomainLabel(), c = e.getRangeLabel();
8663
8679
  this.parent.selectAll("g.cell").on("mouseover", function(l, h) {
8664
8680
  const d = D(this), u = d.select("rect.heat");
8665
8681
  if (!u.classed("null-state")) {
@@ -8749,7 +8765,7 @@ class zm extends dt {
8749
8765
  render(t) {
8750
8766
  const e = this.getComponentContainer({
8751
8767
  ariaLabel: "histogram bars"
8752
- }), n = this.model.getOptions(), { groupIdentifier: s } = n, { groupMapsTo: a } = n.data, r = this.model.getBinnedStackedData(), o = this.services.cartesianScales.getMainXScale(), c = e.selectAll("g.bars").data(r, (h) => xt(h, `0.${a}`));
8768
+ }), n = this.model.getOptions(), { groupIdentifier: s } = n, { groupMapsTo: a } = n.data, r = this.model.getBinnedStackedData(), o = this.services.cartesianScales.getMainXScale(), c = e.selectAll("g.bars").data(r, (h) => Et(h, `0.${a}`));
8753
8769
  c.exit().attr("opacity", 0).remove(), c.enter().append("g").classed("bars", !0).attr("role", lt.GROUP);
8754
8770
  const l = e.selectAll("g.bars").selectAll("path.bar").data((h) => h);
8755
8771
  l.exit().remove(), l.enter().append("path").merge(l).classed("bar", !0).attr(s, (h, d) => d).transition().call(
@@ -8766,7 +8782,7 @@ class zm extends dt {
8766
8782
  originalClassName: "bar"
8767
8783
  })
8768
8784
  ).style("fill", (h) => this.model.getFillColor(h[a], null, h)).attr("d", (h) => {
8769
- const d = xt(h, "data");
8785
+ const d = Et(h, "data");
8770
8786
  if (!d)
8771
8787
  return;
8772
8788
  const u = o(d.x1) - o(d.x0) - 1, p = this.services.cartesianScales.getDomainValue(d.x0), f = p + u, m = this.services.cartesianScales.getRangeValue(h[0]);
@@ -8784,13 +8800,13 @@ class zm extends dt {
8784
8800
  r.on("mouseover", function(c, l) {
8785
8801
  const h = D(this);
8786
8802
  h.classed("hovered", !0);
8787
- const d = s(parseFloat(xt(l, "data.x0")), n), u = s(parseFloat(xt(l, "data.x1")), n), p = o.services.cartesianScales.getRangeAxisPosition(), f = o.services.cartesianScales.getScaleLabel(p);
8803
+ const d = s(parseFloat(Et(l, "data.x0")), n), u = s(parseFloat(Et(l, "data.x1")), n), p = o.services.cartesianScales.getRangeAxisPosition(), f = o.services.cartesianScales.getScaleLabel(p);
8788
8804
  a || o.services.events.dispatchEvent(b.Tooltip.SHOW, {
8789
8805
  event: c,
8790
8806
  hoveredElement: h,
8791
8807
  items: [
8792
8808
  {
8793
- label: xt(t, "bins.rangeLabel") || "Range",
8809
+ label: Et(t, "bins.rangeLabel") || "Range",
8794
8810
  value: `${d} – ${u}`
8795
8811
  },
8796
8812
  {
@@ -8803,7 +8819,7 @@ class zm extends dt {
8803
8819
  },
8804
8820
  {
8805
8821
  label: f,
8806
- value: xt(l, `data.${l[e]}`)
8822
+ value: Et(l, `data.${l[e]}`)
8807
8823
  }
8808
8824
  ]
8809
8825
  });
@@ -10548,7 +10564,7 @@ class Qm extends dt {
10548
10564
  value: r.value
10549
10565
  },
10550
10566
  {
10551
- label: xt(t, "locale.translations.group") || xt(t, "tooltip.groupLabel") || "Group",
10567
+ label: Et(t, "locale.translations.group") || Et(t, "tooltip.groupLabel") || "Group",
10552
10568
  value: r[e],
10553
10569
  class: n.model.getColorClassName({
10554
10570
  classNameTypes: [nt.TOOLTIP],
@@ -10785,4 +10801,4 @@ export {
10785
10801
  jm as y,
10786
10802
  Gm as z
10787
10803
  };
10788
- //# sourceMappingURL=choropleth-Bu2YPax2.mjs.map
10804
+ //# sourceMappingURL=choropleth-BYl1QP2B.mjs.map