import { g as Ct } from "./index-DPCO-fqK.js";
function _t(W, R) {
  for (var X = 0; X < R.length; X++) {
    const F = R[X];
    if (typeof F != "string" && !Array.isArray(F)) {
      for (const Y in F)
        if (Y !== "default" && !(Y in W)) {
          const _ = Object.getOwnPropertyDescriptor(F, Y);
          _ && Object.defineProperty(W, Y, _.get ? _ : {
            enumerable: !0,
            get: () => F[Y]
          });
        }
    }
  }
  return Object.freeze(Object.defineProperty(W, Symbol.toStringTag, { value: "Module" }));
}
var B = { exports: {} }, Dt = B.exports, nt;
function Wt() {
  return nt || (nt = 1, function(W, R) {
    /**
    * Highcharts JS v12.5.0 (2026-01-12)
    * @module highcharts/modules/wordcloud
    * @requires highcharts
    *
    * (c) 2016-2026 Highsoft AS
    * Authors: Jon Arild Nygard
    *
    * A commercial license may be required depending on use.
    * See www.highcharts.com/license
    */
    (function(X, F) {
      W.exports = F(X._Highcharts, X._Highcharts.SeriesRegistry);
    })("u" < typeof window ? Dt : window, (X, F) => (() => {
      var Y = { 512: (t) => {
        t.exports = F;
      }, 944: (t) => {
        t.exports = X;
      } }, _ = {};
      function b(t) {
        var e = _[t];
        if (e !== void 0) return e.exports;
        var o = _[t] = { exports: {} };
        return Y[t](o, o.exports, b), o.exports;
      }
      b.n = (t) => {
        var e = t && t.__esModule ? () => t.default : () => t;
        return b.d(e, { a: e }), e;
      }, b.d = (t, e) => {
        for (var o in e) b.o(e, o) && !b.o(t, o) && Object.defineProperty(t, o, { enumerable: !0, get: e[o] });
      }, b.o = (t, e) => Object.prototype.hasOwnProperty.call(t, e);
      var k = {};
      b.d(k, { default: () => Yt });
      var st = b(944), C = b.n(st);
      let ht = function(t, e) {
        let { animatableAttribs: o, onComplete: i, css: r, renderer: n } = e, a = t.series && t.series.chart.hasRendered ? void 0 : t.series && t.series.options.animation, l = t.graphic;
        if (e.attribs = { ...e.attribs, class: t.getClassName() }, t.shouldDraw()) l || (t.graphic = l = n.text(), l.add(e.group)), r && l.css(r), l.attr(e.attribs).animate(o, !e.isNew && a, i);
        else if (l) {
          let m = () => {
            t.graphic = l = l && l.destroy(), typeof i == "function" && i();
          };
          Object.keys(o).length ? l.animate(o, void 0, () => m()) : m();
        }
      };
      var dt = b(512), E = b.n(dt);
      let { column: { prototype: { pointClass: ut } } } = E().seriesTypes, { extend: pt } = C();
      class U extends ut {
        isValid() {
          return !0;
        }
      }
      pt(U.prototype, { weight: 1 });
      let { deg2rad: ct } = C(), { extend: gt, find: q, isNumber: v, isObject: H, merge: ft } = C();
      function mt(t, e) {
        return !(e.left > t.right || e.right < t.left || e.top > t.bottom || e.bottom < t.top);
      }
      function $(t) {
        let e = t.axes || [];
        return e.length || (e = [], t.concat([t[0]]).reduce((o, i) => {
          let r, n, a = (r = i[0] - o[0], [[-(n = i[1] - o[1]), r], [n, -r]])[0];
          return q(e, (l) => l[0] === a[0] && l[1] === a[1]) || e.push(a), i;
        }), t.axes = e), e;
      }
      function I(t, e) {
        let o = t.map((i) => {
          let r = i[0], n = i[1];
          return r * e[0] + n * e[1];
        });
        return { min: Math.min.apply(this, o), max: Math.max.apply(this, o) };
      }
      function G(t, e) {
        let o = $(t), i = $(e);
        return !q(o.concat(i), (r) => {
          let n, a;
          return n = I(t, r), (a = I(e, r)).min > n.max || a.max < n.min;
        });
      }
      function J(t, e) {
        let o = 4 * t, i = Math.ceil((Math.sqrt(o) - 1) / 2), r = 2 * i + 1, n = Math.pow(r, 2), a = !1;
        return r -= 1, t <= 1e4 && (typeof a == "boolean" && o >= n - r && (a = { x: i - (n - o), y: -i }), n -= r, typeof a == "boolean" && o >= n - r && (a = { x: -i, y: -i + (n - o) }), n -= r, typeof a == "boolean" && (a = o >= n - r ? { x: -i + (n - o), y: i } : { x: i, y: i - (n - o - r) }), a.x *= 5, a.y *= 5), a;
      }
      function K(t, e) {
        let o = Math.pow(10, v(e) ? e : 14);
        return Math.round(t * o) / o;
      }
      function Q(t, e) {
        let o = t[0], i = t[1], r = -(ct * e), n = Math.cos(r), a = Math.sin(r);
        return [K(o * n - i * a), K(o * a + i * n)];
      }
      function Z(t, e, o) {
        let i = Q([t[0] - e[0], t[1] - e[1]], o);
        return [i[0] + e[0], i[1] + e[1]];
      }
      let { noop: N } = C(), { column: tt } = E().seriesTypes, { extend: j, isArray: xt, isNumber: D, isObject: et, merge: yt } = C(), { archimedeanSpiral: bt, extendPlayingField: ot, getBoundingBoxFromPolygon: Mt, getPlayingField: wt, getPolygon: St, getRandomPosition: it, getRotation: L, getScale: Pt, getSpiral: Ft, intersectionTesting: rt, isPolygonsColliding: vt, rectangularSpiral: At, rotate2DToOrigin: Xt, rotate2DToPoint: zt, squareSpiral: Ot, updateFieldBoundaries: Tt } = { archimedeanSpiral: function(t, e) {
        let o = e.field, i = o.width * o.width + o.height * o.height, r = 0.8 * t, n = !1;
        return t <= 1e4 && (Math.min(Math.abs((n = { x: r * Math.cos(r), y: r * Math.sin(r) }).x), Math.abs(n.y)) < i || (n = !1)), n;
      }, extendPlayingField: function(t, e) {
        let o, i, r, n, a, l;
        return H(t) && H(e) ? (o = e.bottom - e.top, i = e.right - e.left, a = i * (r = t.ratioX) > o * (n = t.ratioY) ? i : o, l = ft(t, { width: t.width + a * r * 2, height: t.height + a * n * 2 })) : l = t, l;
      }, getBoundingBoxFromPolygon: function(t) {
        return t.reduce(function(e, o) {
          let i = o[0], r = o[1];
          return e.left = Math.min(i, e.left), e.right = Math.max(i, e.right), e.bottom = Math.max(r, e.bottom), e.top = Math.min(r, e.top), e;
        }, { left: Number.MAX_VALUE, right: -Number.MAX_VALUE, bottom: -Number.MAX_VALUE, top: Number.MAX_VALUE });
      }, getPlayingField: function(t, e, o) {
        let i = o.reduce(function(l, m) {
          let u = m.dimensions, d = Math.max(u.width, u.height);
          return l.maxHeight = Math.max(l.maxHeight, u.height), l.maxWidth = Math.max(l.maxWidth, u.width), l.area += d * d, l;
        }, { maxHeight: 0, maxWidth: 0, area: 0 }), r = Math.max(i.maxHeight, i.maxWidth, 0.85 * Math.sqrt(i.area)), n = t > e ? t / e : 1, a = e > t ? e / t : 1;
        return { width: r * n, height: r * a, ratioX: n, ratioY: a };
      }, getPolygon: function(t, e, o, i, r) {
        let n = [t, e], a = t - o / 2, l = t + o / 2, m = e - i / 2, u = e + i / 2;
        return [[a, m], [l, m], [l, u], [a, u]].map(function(d) {
          return Z(d, n, -r);
        });
      }, getRandomPosition: function(t) {
        return Math.round(t * (Math.random() + 0.5) / 2);
      }, getRotation: function(t, e, o, i) {
        let r = !1, n;
        return v(t) && v(e) && v(o) && v(i) && t > 0 && e > -1 && i > o && (n = (i - o) / (t - 1 || 1), r = o + e % t * n), r;
      }, getScale: function(t, e, o) {
        let i = 2 * Math.max(Math.abs(o.top), Math.abs(o.bottom)), r = 2 * Math.max(Math.abs(o.left), Math.abs(o.right));
        return Math.min(r > 0 ? 1 / r * t : 1, i > 0 ? 1 / i * e : 1);
      }, getSpiral: function(t, e) {
        let o = [];
        for (let i = 1; i < 1e4; i++) o.push(t(i, e));
        return (i) => i <= 1e4 && o[i - 1];
      }, intersectionTesting: function(t, e) {
        let o, i, r, n, a, l, m = e.placed, u = e.field, d = e.rectangle, P = e.polygon, z = e.spiral, x = t.rect = gt({}, d), w = 1, p = { x: 0, y: 0 };
        for (t.polygon = P, t.rotation = e.rotation; p !== !1 && (o = t.rect, i = t.polygon, r = t.lastCollidedWith, n = function(g) {
          let s = mt(o, g.rect);
          return s && (t.rotation % 90 || g.rotation % 90) && (s = G(i, g.polygon)), s;
        }, a = !1, r && !(a = n(r)) && delete t.lastCollidedWith, !a && (a = !!q(m, function(g) {
          let s = n(g);
          return s && (t.lastCollidedWith = g), s;
        })), a || !((l = { left: -(u.width / 2), right: u.width / 2, top: -(u.height / 2), bottom: u.height / 2 }).left < x.left && l.right > x.right && l.top < x.top && l.bottom > x.bottom)); ) H(p = z(w)) && (x.left = d.left + p.x, x.right = d.right + p.x, x.top = d.top + p.y, x.bottom = d.bottom + p.y, t.polygon = function(g, s, S) {
          return S.map(function(h) {
            return [h[0] + g, h[1] + s];
          });
        }(p.x, p.y, P)), w++;
        return p;
      }, isPolygonsColliding: G, rectangularSpiral: function(t, e) {
        let o = J(t), i = e.field;
        return o && (o.x *= i.ratioX, o.y *= i.ratioY), o;
      }, rotate2DToOrigin: Q, rotate2DToPoint: Z, squareSpiral: J, updateFieldBoundaries: function(t, e) {
        return (!v(t.left) || t.left > e.left) && (t.left = e.left), (!v(t.right) || t.right < e.right) && (t.right = e.right), (!v(t.top) || t.top > e.top) && (t.top = e.top), (!v(t.bottom) || t.bottom < e.bottom) && (t.bottom = e.bottom), t;
      } };
      class V extends tt {
        pointAttribs(e, o) {
          let i = C().seriesTypes.column.prototype.pointAttribs.call(this, e, o);
          return delete i.stroke, delete i["stroke-width"], i;
        }
        deriveFontSize(e, o, i) {
          let r = D(e) ? e : 0, n = D(o) ? o : 1;
          return Math.floor(Math.max(D(i) ? i : 1, r * n));
        }
        drawPoints() {
          if (this.zooming || this.defaultScale && this.group.scaleX !== this.defaultScale) return;
          let e = this.hasRendered, o = this.xAxis, i = this.yAxis, r = this.chart, n = this.group, a = this.options, l = a.animation, m = a.allowExtendPlayingField, u = r.renderer, d = [], P = this.placementStrategy[a.placementStrategy], z = a.rotation, x = this.points.map(function(h) {
            return h.weight;
          }), w = Math.max.apply(null, x), p = this.points.concat().sort((h, O) => O.weight - h.weight), g = u.text().add(n), s;
          for (let h of (this.group.attr({ scaleX: 1, scaleY: 1 }), p)) {
            let O = 1 / w * h.weight, A = j({ fontSize: this.deriveFontSize(O, a.maxFontSize, a.minFontSize) + "px" }, a.style);
            g.css(A).attr({ x: 0, y: 0, text: h.name });
            let c = g.getBBox(!0);
            h.dimensions = { height: c.height, width: c.width };
          }
          s = wt(o.len, i.len, p);
          let S = Ft(this.spirals[a.spiral], { field: s });
          for (let h of p) {
            let O = 1 / w * h.weight, A = j({ fontSize: this.deriveFontSize(O, a.maxFontSize, a.minFontSize) + "px" }, a.style), c = P(h, { data: p, field: s, placed: d, rotation: z }), f = j(this.pointAttribs(h, h.selected && "select"), { align: "center", "alignment-baseline": "middle", "dominant-baseline": "middle", x: c.x, y: c.y, text: h.name, rotation: D(c.rotation) ? c.rotation : void 0 }), T = St(c.x, c.y, h.dimensions.width, h.dimensions.height, c.rotation), y = Mt(T), M = rt(h, { rectangle: y, polygon: T, field: s, placed: d, spiral: S, rotation: c.rotation }), at;
            !M && m && (s = ot(s, y), M = rt(h, { rectangle: y, polygon: T, field: s, placed: d, spiral: S, rotation: c.rotation })), et(M) ? (f.x = (f.x || 0) + M.x, f.y = (f.y || 0) + M.y, y.left += M.x, y.right += M.x, y.top += M.y, y.bottom += M.y, s = Tt(s, y), d.push(h), h.isNull = !1, h.isInside = !0) : h.isNull = !0, l && (at = { x: f.x, y: f.y }, e ? (delete f.x, delete f.y) : (f.x = 0, f.y = 0)), ht(h, { animatableAttribs: at, attribs: f, css: A, group: n, renderer: u });
          }
          g = g.destroy(), this.defaultScale = Pt(o.len, i.len, s), this.field = s, this.group.attr({ scaleX: this.defaultScale, scaleY: this.defaultScale });
        }
        hasData() {
          return et(this) && this.visible === !0 && xt(this.points) && this.points.length > 0;
        }
        getPlotBox(e) {
          let { chart: o, group: i, zooming: r } = this, { plotSizeX: n = 0, plotSizeY: a = 0, inverted: l } = o, m = this[l ? "yAxis" : "xAxis"], u = this[l ? "xAxis" : "yAxis"], d = m ? m.len : o.plotWidth, P = u ? u.len : o.plotHeight, z = m ? m.left : o.plotLeft, x = u ? u.top : o.plotTop, w = this.field, p = 0, g = 0, s = z + d / 2, S = x + P / 2, h = s, O = S, A = this.defaultScale || 1, c = 0, f = 0;
          if (w && (c = 2 * Math.max(Math.abs(w.top), Math.abs(w.bottom)), f = 2 * Math.max(Math.abs(w.left), Math.abs(w.right))), l && ([f, c] = [c, f]), i && r) {
            let T = z + Math.max(f * (A = Math.max(r.scale, this.defaultScale || 1)), d) / 2, y = x + Math.max(c * A, P) / 2, M = A - (i.scaleX || 1);
            p = M * ((n - f) / 2 + r.zoomX * n - d / 2), g = M * ((a - c) / 2 + r.zoomY * a - P / 2), e === "series" && (r.x = Math.max(0, Math.min(1 - r.width, r.x + r.panX / r.scale)), p += r.panX * n, r.panX = 0, r.y = Math.max(0, Math.min(1 - r.height, r.y + r.panY / r.scale)), g += r.panY * a, r.panY = 0), D(i.translateX) && D(i.translateY) && (h = i.translateX, O = i.translateY), s = h - p, (S = O - g) > y ? S = y : S < 2 * x + P - y && (S = 2 * x + P - y), s > T ? s = T : s < 2 * z + d - T && (s = 2 * z + d - T);
          }
          return { translateX: s, translateY: S, scaleX: A, scaleY: A };
        }
      }
      V.defaultOptions = yt(tt.defaultOptions, { allowExtendPlayingField: !0, animation: { duration: 500 }, borderWidth: 0, clip: !1, colorByPoint: !0, cropThreshold: 1 / 0, minFontSize: 1, maxFontSize: 25, placementStrategy: "center", rotation: { from: 0, orientations: 2, to: 90 }, showInLegend: !1, spiral: "rectangular", style: { fontFamily: "sans-serif", fontWeight: "900", whiteSpace: "nowrap" }, tooltip: { followPointer: !0, pointFormat: '<span style="color:{point.color}">●</span> {series.name}: <b>{point.weight}</b><br/>' } }), j(V.prototype, { animate: N, animateDrilldown: N, animateDrillupFrom: N, isCartesian: !1, pointClass: U, setClip: N, placementStrategy: { random: function(t, e) {
        let o = e.field, i = e.rotation;
        return { x: it(o.width) - o.width / 2, y: it(o.height) - o.height / 2, rotation: L(i.orientations, t.index, i.from, i.to) };
      }, center: function(t, e) {
        let o = e.rotation;
        return { x: 0, y: 0, rotation: L(o.orientations, t.index, o.from, o.to) };
      } }, pointArrayMap: ["weight"], spirals: { archimedean: bt, rectangular: At, square: Ot }, utils: { extendPlayingField: ot, getRotation: L, isPolygonsColliding: vt, rotate2DToOrigin: Xt, rotate2DToPoint: zt } }), E().registerSeriesType("wordcloud", V);
      let Yt = C();
      return k.default;
    })());
  }(B)), B.exports;
}
var lt = Wt();
const Nt = /* @__PURE__ */ Ct(lt), Bt = /* @__PURE__ */ _t({
  __proto__: null,
  default: Nt
}, [lt]);
export {
  Bt as w
};
