import { computed as c, onMounted as ge, ref as v, watch as ke, openBlock as r, createElementBlock as y, normalizeClass as Y, normalizeStyle as V, createBlock as h, createCommentVNode as u, createVNode as j, unref as s, createSlots as be, withCtx as f, renderSlot as m, normalizeProps as B, guardReactiveProps as D, createElementVNode as a, Fragment as J, renderList as Q, toDisplayString as M, createTextVNode as Z, nextTick as Ce } from "vue";
import { u as _e, o as xe, e as ee, c as we, t as $e, O as Me, X as Pe, s as C, w as Ne, P as Ae, i as te, f as O, q as Te, r as Le } from "./index-Cm2_6s9o.js";
import { _ as Oe } from "./Title-Coit3NcT.js";
import { u as Ie, U as Fe } from "./usePrinter-Cx8U1e30.js";
import { L as Se } from "./Legend-DRozxv9L.js";
import P from "./BaseIcon-DpLJi6ci.js";
import { D as Ve } from "./DataTable-NGi-FgLM.js";
import je from "./vue-ui-skeleton-BUS6A44x.js";
import Be from "./vue-ui-accordion-CxrNF8BI.js";
import { u as oe } from "./useNestedProp-BYPZJNhi.js";
import { _ as De } from "./PackageVersion-CTMY4zeY.js";
import { P as We } from "./PenAndPaper-DJ_d10S-.js";
import { _ as ze } from "./_plugin-vue_export-helper-CHgC5LLL.js";
const Ge = ["id"], Ee = {
  key: 2,
  style: "width:100%;background:transparent"
}, Ue = ["xmlns", "viewBox"], He = ["id"], Re = ["stop-color"], Xe = ["stop-color"], Ke = ["x1", "y1", "x2", "y2", "stroke", "stroke-width"], qe = ["d", "stroke", "stroke-width"], Ye = ["stroke"], Je = ["fill"], Qe = ["stroke"], Ze = ["fill"], et = ["stroke"], tt = ["fill"], ot = ["stroke"], lt = ["fill"], at = ["stroke"], st = ["fill"], rt = ["d", "stroke", "stroke-width", "fill"], nt = ["x1", "y1", "stroke"], ut = ["cx", "cy", "fill", "stroke"], it = ["fill", "stroke"], dt = ["y", "fill", "font-weight"], ct = ["y", "fill"], vt = {
  key: 5,
  class: "vue-data-ui-watermark"
}, yt = ["onClick"], ht = { style: { "font-weight": "bold" } }, ft = {
  key: 8,
  ref: "source",
  dir: "auto"
}, mt = ["innerHTML"], pt = {
  __name: "vue-ui-mood-radar",
  props: {
    config: {
      type: Object,
      default() {
        return {};
      }
    },
    dataset: {
      type: Object,
      default() {
        return {};
      }
    }
  },
  setup(le, { expose: ae }) {
    const i = le, { vue_ui_mood_radar: se } = _e(), x = c(() => !!i.dataset && Object.keys(i.dataset).length);
    ge(() => {
      W();
    });
    function W() {
      xe(i.dataset) && ee({
        componentName: "VueUiMoodRadar",
        type: "dataset"
      });
    }
    const w = v(we()), I = v(null), re = v(null), n = v(null), ne = v(null), ue = v(0), ie = v(0), z = v(0), e = c({
      get: () => G(),
      set: (o) => o
    });
    function G() {
      const o = oe({
        userConfig: i.config,
        defaultConfig: se
      });
      return o.theme ? {
        ...oe({
          userConfig: $e.vue_ui_mood_radar[o.theme] || i.config,
          defaultConfig: o
        })
      } : o;
    }
    ke(() => i.config, (o) => {
      e.value = G(), W(), ue.value += 1, ie.value += 1, z.value += 1;
    }, { deep: !0 });
    const { isPrinting: E, isImaging: U, generatePdf: H, generateImage: R } = Ie({
      elementId: w.value,
      fileName: e.value.style.chart.title.text || "vue-ui-mood-radar"
    }), de = c(() => e.value.userOptions.show && !e.value.style.chart.title.text), N = v({
      showTable: e.value.table.show
    }), k = c(() => ({
      height: 256,
      width: 256
    })), F = c(() => Me({
      plot: { x: 128, y: k.value.height / 2 },
      radius: 90,
      sides: 5,
      rotation: 11
    }));
    function ce({ centerX: o, centerY: l, apexX: t, apexY: d, proportion: g, key: $, value: pe }) {
      return {
        x: o + (t - o) * g,
        y: l + (d - l) * g,
        key: $,
        value: pe
      };
    }
    const ve = c(() => Math.max(...Object.values(i.dataset).map((o) => isNaN(o) ? 0 : o))), _ = c(() => Object.values(i.dataset).reduce((o, l) => (isNaN(o) ? 0 : o) + (isNaN(l) ? 0 : l), 0)), p = c(() => Object.keys(i.dataset).map((o, l) => {
      const t = typeof i.dataset[o] != "number" || isNaN(i.dataset[o]) ? 0 : i.dataset[o];
      return {
        index: l,
        key: o,
        value: t,
        proportion: t / _.value,
        color: e.value.style.chart.layout.smileys.colors[o]
      };
    }).sort((o, l) => l.key - o.key)), X = c(() => x.value ? (["1", "2", "3", "4", "5"].forEach((o) => {
      [null, void 0].includes(i.dataset[o]) && ee({
        componentName: "VueUiMoodRadar",
        type: "datasetAttribute",
        property: o
      });
    }), F.value.coordinates.map((o, l) => {
      const t = ce({
        centerX: k.value.width / 2,
        centerY: k.value.height / 2,
        apexX: o.x,
        apexY: o.y,
        proportion: p.value[l].value / ve.value,
        key: p.value[l].key,
        value: p.value[l].value
      });
      return {
        ...o,
        plots: t,
        key: p.value[l].key
      };
    })) : []), ye = c(() => ({
      cy: "mood-radar-legend",
      backgroundColor: e.value.style.chart.legend.backgroundColor,
      color: e.value.style.chart.legend.color,
      fontSize: e.value.style.chart.legend.fontSize,
      paddingBottom: 12,
      fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
    }));
    function he(o) {
      o === n.value ? n.value = null : n.value = o;
    }
    const b = c(() => {
      const o = p.value.map((t) => ({
        name: t.key,
        color: t.color
      })), l = p.value.map((t) => isNaN(t.value) ? 0 : t.value);
      return { head: o, body: l };
    });
    function K() {
      Ce(() => {
        const o = b.value.head.map((d, g) => [[
          d.name
        ], [b.value.body[g]], [isNaN(b.value.body[g] / _.value) ? "-" : b.value.body[g] / _.value * 100]]), l = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [[""], ["val"], ["%"]]].concat(o), t = Te(l);
        Le({ csvContent: t, title: e.value.style.chart.title.text || "vue-ui-mood-radar" });
      });
    }
    const A = c(() => {
      const o = [
        ' <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>',
        Number(_.value.toFixed(e.value.table.td.roundingValue)).toLocaleString(),
        "100%"
      ], l = b.value.head.map((g, $) => [
        {
          color: g.color,
          name: g.name
        },
        b.value.body[$].toFixed(e.value.table.td.roundingValue),
        isNaN(b.value.body[$] / _.value) ? "-" : (b.value.body[$] / _.value * 100).toFixed(e.value.table.td.roundingPercentage) + "%"
      ]), t = {
        th: {
          backgroundColor: e.value.table.th.backgroundColor,
          color: e.value.table.th.color,
          outline: e.value.table.th.outline
        },
        td: {
          backgroundColor: e.value.table.td.backgroundColor,
          color: e.value.table.td.color,
          outline: e.value.table.td.outline
        },
        breakpoint: e.value.table.responsiveBreakpoint
      }, d = [
        e.value.table.columnNames.series,
        e.value.table.columnNames.value,
        e.value.table.columnNames.percentage
      ];
      return {
        head: o,
        body: l,
        config: t,
        colNames: d
      };
    });
    function fe() {
      return p.value;
    }
    function q() {
      N.value.showTable = !N.value.showTable;
    }
    const T = v(!1);
    function me(o) {
      T.value = o;
    }
    const L = v(!1);
    function S() {
      L.value = !L.value;
    }
    return ae({
      getData: fe,
      generatePdf: H,
      generateCsv: K,
      generateImage: R,
      toggleTable: q,
      toggleAnnotator: S
    }), (o, l) => (r(), y("div", {
      class: Y(`vue-ui-mood-radar ${T.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
      ref_key: "moodRadarChart",
      ref: I,
      id: `${w.value}`,
      style: V(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;background:${e.value.style.chart.backgroundColor}`)
    }, [
      e.value.userOptions.buttons.annotator ? (r(), h(We, {
        key: 0,
        parent: I.value,
        backgroundColor: e.value.style.chart.backgroundColor,
        color: e.value.style.chart.color,
        active: L.value,
        onClose: S
      }, null, 8, ["parent", "backgroundColor", "color", "active"])) : u("", !0),
      de.value ? (r(), y("div", {
        key: 1,
        ref_key: "noTitle",
        ref: ne,
        class: "vue-data-ui-no-title-space",
        style: "height:36px; width: 100%;background:transparent"
      }, null, 512)) : u("", !0),
      e.value.style.chart.title.text ? (r(), y("div", Ee, [
        j(Oe, {
          config: {
            title: {
              cy: "mood-radar-title",
              ...e.value.style.chart.title
            },
            subtitle: {
              cy: "mood-radar-subtitle",
              ...e.value.style.chart.title.subtitle
            }
          }
        }, null, 8, ["config"])
      ])) : u("", !0),
      e.value.userOptions.show && x.value ? (r(), h(Fe, {
        key: 3,
        ref_key: "details",
        ref: re,
        backgroundColor: e.value.style.chart.backgroundColor,
        color: e.value.style.chart.color,
        isPrinting: s(E),
        isImaging: s(U),
        uid: w.value,
        hasPdf: e.value.userOptions.buttons.pdf,
        hasXls: e.value.userOptions.buttons.csv,
        hasImg: e.value.userOptions.buttons.img,
        hasTable: e.value.userOptions.buttons.table,
        hasFullscreen: e.value.userOptions.buttons.fullscreen,
        titles: { ...e.value.userOptions.buttonTitles },
        chartElement: I.value,
        position: e.value.userOptions.position,
        hasAnnotator: e.value.userOptions.buttons.annotator,
        isAnnotation: L.value,
        onToggleFullscreen: me,
        onGeneratePdf: s(H),
        onGenerateCsv: K,
        onGenerateImage: s(R),
        onToggleTable: q,
        onToggleAnnotator: S
      }, be({ _: 2 }, [
        o.$slots.optionPdf ? {
          name: "optionPdf",
          fn: f(() => [
            m(o.$slots, "optionPdf", {}, void 0, !0)
          ]),
          key: "0"
        } : void 0,
        o.$slots.optionCsv ? {
          name: "optionCsv",
          fn: f(() => [
            m(o.$slots, "optionCsv", {}, void 0, !0)
          ]),
          key: "1"
        } : void 0,
        o.$slots.optionImg ? {
          name: "optionImg",
          fn: f(() => [
            m(o.$slots, "optionImg", {}, void 0, !0)
          ]),
          key: "2"
        } : void 0,
        o.$slots.optionTable ? {
          name: "optionTable",
          fn: f(() => [
            m(o.$slots, "optionTable", {}, void 0, !0)
          ]),
          key: "3"
        } : void 0,
        o.$slots.optionFullscreen ? {
          name: "optionFullscreen",
          fn: f(({ toggleFullscreen: t, isFullscreen: d }) => [
            m(o.$slots, "optionFullscreen", B(D({ toggleFullscreen: t, isFullscreen: d })), void 0, !0)
          ]),
          key: "4"
        } : void 0,
        o.$slots.optionAnnotator ? {
          name: "optionAnnotator",
          fn: f(({ toggleAnnotator: t, isAnnotator: d }) => [
            m(o.$slots, "optionAnnotator", B(D({ toggleAnnotator: t, isAnnotator: d })), void 0, !0)
          ]),
          key: "5"
        } : void 0
      ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasPdf", "hasXls", "hasImg", "hasTable", "hasFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "onGeneratePdf", "onGenerateImage"])) : u("", !0),
      x.value ? (r(), y("svg", {
        key: 4,
        xmlns: s(Pe),
        viewBox: `0 0 ${k.value.width} ${k.value.height}`,
        class: Y({ "vue-data-ui-fullscreen--on": T.value, "vue-data-ui-fulscreen--off": !T.value }),
        style: V(`overflow:visible;background:transparent;color:${e.value.style.chart.color}`)
      }, [
        j(De),
        a("defs", null, [
          a("radialGradient", {
            cx: "50%",
            cy: "50%",
            r: "50%",
            fx: "50%",
            fy: "50%",
            id: `mood_radar_gradient_${w.value}`
          }, [
            a("stop", {
              offset: "0%",
              "stop-color": s(C)(e.value.style.chart.layout.dataPolygon.color, e.value.style.chart.layout.dataPolygon.opacity)
            }, null, 8, Re),
            a("stop", {
              offset: "100%",
              "stop-color": s(C)(s(Ne)(e.value.style.chart.layout.dataPolygon.color, e.value.style.chart.layout.dataPolygon.gradient.intensity / 100), e.value.style.chart.layout.dataPolygon.opacity)
            }, null, 8, Xe)
          ], 8, He)
        ]),
        (r(!0), y(J, null, Q(F.value.coordinates, (t) => (r(), y("line", {
          x1: k.value.width / 2,
          y1: k.value.height / 2,
          x2: t.x,
          y2: t.y,
          stroke: e.value.style.chart.layout.grid.stroke,
          "stroke-width": e.value.style.chart.layout.grid.strokeWidth
        }, null, 8, Ke))), 256)),
        a("path", {
          d: F.value.path,
          fill: "none",
          stroke: e.value.style.chart.layout.outerPolygon.stroke,
          "stroke-width": e.value.style.chart.layout.outerPolygon.strokeWidth,
          "stroke-linejoin": "round",
          "stroke-linecap": "round"
        }, null, 8, qe),
        a("path", {
          fill: "none",
          stroke: e.value.style.chart.layout.smileys.colors[5],
          "stroke-width": "1",
          "stroke-linecap": "round",
          d: "M119 25A1 1 0 00137 25 1 1 0 00119 25M123 26C124 33 132 33 133 26L123 26M123 22A1 1 0 00126 22 1 1 0 00123 22M130 22A1 1 0 00133 22 1 1 0 00130 22"
        }, null, 8, Ye),
        a("circle", {
          class: "vue-ui-mood-radar-trap",
          onMouseenter: l[0] || (l[0] = (t) => n.value = 5),
          onMouseleave: l[1] || (l[1] = (t) => n.value = null),
          cx: "128",
          cy: "25",
          r: "20",
          fill: n.value === 5 ? s(C)(e.value.style.chart.layout.smileys.colors[5], 20) : "transparent"
        }, null, 40, Je),
        a("path", {
          fill: "none",
          stroke: e.value.style.chart.layout.smileys.colors[4],
          "stroke-width": "1",
          "stroke-linecap": "round",
          d: "M218 95A1 1 0 00236 95 1 1 0 00218 95M222 97C225 99 229 99 232 97M222 92A1 1 0 00225 92 1 1 0 00222 92M229 92A1 1 0 00232 92 1 1 0 00229 92"
        }, null, 8, Qe),
        a("circle", {
          class: "vue-ui-mood-radar-trap",
          onMouseenter: l[2] || (l[2] = (t) => n.value = 4),
          onMouseleave: l[3] || (l[3] = (t) => n.value = null),
          cx: "227",
          cy: "95.5",
          r: "20",
          fill: n.value === 4 ? s(C)(e.value.style.chart.layout.smileys.colors[4], 20) : "transparent"
        }, null, 40, Ze),
        a("path", {
          fill: "none",
          stroke: e.value.style.chart.layout.smileys.colors[3],
          "stroke-width": "1",
          "stroke-linecap": "round",
          d: "M181 213A1 1 0 00199 213 1 1 0 00181 213M185 210A1 1 0 00188 210 1 1 0 00185 210M192 210A1 1 0 00195 210 1 1 0 00192 210M185 215 195 215"
        }, null, 8, et),
        a("circle", {
          class: "vue-ui-mood-radar-trap",
          onMouseenter: l[4] || (l[4] = (t) => n.value = 3),
          onMouseleave: l[5] || (l[5] = (t) => n.value = null),
          cx: "190",
          cy: "213.5",
          r: "20",
          fill: n.value === 3 ? s(C)(e.value.style.chart.layout.smileys.colors[3], 20) : "transparent"
        }, null, 40, tt),
        a("path", {
          fill: "none",
          stroke: e.value.style.chart.layout.smileys.colors[2],
          "stroke-width": "1",
          "stroke-linecap": "round",
          d: "M56 213A1 1 0 0074 213 1 1 0 0056 213M60 216C63 214 67 214 70 216M60 210A1 1 0 0063 210 1 1 0 0060 210M67 210A1 1 0 0070 210 1 1 0 0067 210"
        }, null, 8, ot),
        a("circle", {
          class: "vue-ui-mood-radar-trap",
          onMouseenter: l[6] || (l[6] = (t) => n.value = 2),
          onMouseleave: l[7] || (l[7] = (t) => n.value = null),
          cx: "65",
          cy: "213.5",
          r: "20",
          fill: n.value === 2 ? s(C)(e.value.style.chart.layout.smileys.colors[2], 20) : "transparent"
        }, null, 40, lt),
        a("path", {
          fill: "none",
          stroke: e.value.style.chart.layout.smileys.colors[1],
          "stroke-width": "1",
          "stroke-linecap": "round",
          d: "M20 96A1 1 0 0038 96 1 1 0 0020 96M24 100C25 95 33 95 34 100L24 100M24 93A1 1 0 0027 93 1 1 0 0024 93M31 93A1 1 0 0034 93 1 1 0 0031 93"
        }, null, 8, at),
        a("circle", {
          class: "vue-ui-mood-radar-trap",
          onMouseenter: l[8] || (l[8] = (t) => n.value = 1),
          onMouseleave: l[9] || (l[9] = (t) => n.value = null),
          cx: "29",
          cy: "95.5",
          r: "20",
          fill: n.value === 1 ? s(C)(e.value.style.chart.layout.smileys.colors[1], 20) : "transparent"
        }, null, 40, st),
        a("path", {
          d: s(Ae)(X.value.map((t) => t.plots)),
          stroke: e.value.style.chart.layout.dataPolygon.stroke,
          "stroke-width": e.value.style.chart.layout.dataPolygon.strokeWidth,
          "stroke-linecap": "round",
          "stroke-linejoin": "round",
          fill: e.value.style.chart.layout.dataPolygon.gradient.show ? `url(#mood_radar_gradient_${w.value})` : s(C)(e.value.style.chart.layout.dataPolygon.color, e.value.style.chart.layout.dataPolygon.opacity)
        }, null, 8, rt),
        (r(!0), y(J, null, Q(X.value.map((t) => t.plots), (t, d) => (r(), y("g", {
          class: "vue-ui-mood-radar-trap",
          style: V(`opacity:${n.value == t.key ? "1" : "0"}`)
        }, [
          a("line", {
            x1: t.x,
            y1: t.y,
            x2: 128,
            y2: 128,
            stroke: e.value.style.chart.layout.smileys.colors[t.key]
          }, null, 8, nt),
          a("circle", {
            cx: t.x,
            cy: t.y,
            fill: e.value.style.chart.layout.smileys.colors[t.key],
            r: "3",
            stroke: e.value.style.chart.backgroundColor,
            "stroke-width": 0.5
          }, null, 8, ut),
          a("circle", {
            cx: 128,
            cy: 128,
            fill: e.value.style.chart.layout.smileys.colors[t.key],
            r: "3",
            stroke: e.value.style.chart.backgroundColor,
            "stroke-width": 0.5
          }, null, 8, it),
          a("text", {
            x: 128,
            y: ["5", 5].includes(t.key) ? 145 : 120,
            fill: e.value.style.chart.layout.dataLabel.color,
            "font-size": "12",
            "text-anchor": "middle",
            "font-weight": e.value.style.chart.layout.dataLabel.bold ? "bold" : "normal"
          }, M(s(te)(
            e.value.style.chart.layout.dataLabel.formatter,
            t.value,
            s(O)({
              p: e.value.style.chart.layout.dataLabel.prefix,
              v: t.value,
              s: e.value.style.chart.layout.dataLabel.suffix,
              r: e.value.style.chart.layout.dataLabel.roundingValue
            }),
            { datapoint: t, seriesIndex: d }
          )), 9, dt),
          a("text", {
            x: 128,
            y: ["5", 5].includes(t.key) ? 163 : 102,
            fill: e.value.style.chart.layout.dataLabel.color,
            "font-size": "12",
            "text-anchor": "middle"
          }, " (" + M(s(O)({
            v: t.value / _.value * 100,
            s: "%",
            r: e.value.style.chart.layout.dataLabel.roundingPercentage
          })) + ") ", 9, ct)
        ], 4))), 256)),
        m(o.$slots, "svg", { svg: k.value }, void 0, !0)
      ], 14, Ue)) : u("", !0),
      o.$slots.watermark ? (r(), y("div", vt, [
        m(o.$slots, "watermark", B(D({ isPrinting: s(E) || s(U) })), void 0, !0)
      ])) : u("", !0),
      x.value ? u("", !0) : (r(), h(je, {
        key: 6,
        config: {
          type: "radar",
          style: {
            backgroundColor: e.value.style.chart.backgroundColor,
            radar: {
              grid: {
                color: "#CCCCCC"
              },
              shapes: {
                color: "#CCCCCC"
              }
            }
          }
        }
      }, null, 8, ["config"])),
      e.value.style.chart.legend.show ? (r(), h(Se, {
        legendSet: p.value,
        config: ye.value,
        key: `legend_${z.value}`,
        style: { display: "flex", "row-gap": "6px" }
      }, {
        item: f(({ legend: t, index: d }) => [
          a("div", {
            onClick: () => he(t.key),
            style: { display: "flex", "flex-direction": "row", gap: "3px", "align-items": "center", margin: "3px 0" }
          }, [
            t.key == 1 ? (r(), h(P, {
              key: 0,
              strokeWidth: 1,
              name: "moodSad",
              stroke: e.value.style.chart.layout.smileys.colors[t.key]
            }, null, 8, ["stroke"])) : u("", !0),
            t.key == 2 ? (r(), h(P, {
              key: 1,
              strokeWidth: 1,
              name: "moodFlat",
              stroke: e.value.style.chart.layout.smileys.colors[t.key]
            }, null, 8, ["stroke"])) : u("", !0),
            t.key == 3 ? (r(), h(P, {
              key: 2,
              strokeWidth: 1,
              name: "moodNeutral",
              stroke: e.value.style.chart.layout.smileys.colors[t.key]
            }, null, 8, ["stroke"])) : u("", !0),
            t.key == 4 ? (r(), h(P, {
              key: 3,
              strokeWidth: 1,
              name: "smiley",
              stroke: e.value.style.chart.layout.smileys.colors[t.key]
            }, null, 8, ["stroke"])) : u("", !0),
            t.key == 5 ? (r(), h(P, {
              key: 4,
              strokeWidth: 1,
              name: "moodHappy",
              stroke: e.value.style.chart.layout.smileys.colors[t.key]
            }, null, 8, ["stroke"])) : u("", !0),
            a("span", ht, M(s(te)(
              e.value.style.chart.layout.dataLabel.formatter,
              t.value,
              s(O)({
                p: e.value.style.chart.layout.dataLabel.prefix,
                v: t.value,
                s: e.value.style.chart.layout.dataLabel.suffix,
                r: e.value.style.chart.layout.dataLabel.roundingValue
              }),
              { datapoint: t, seriesIndex: d }
            )), 1),
            Z(" (" + M(s(O)({
              v: t.proportion * 100,
              s: "%",
              r: e.value.style.chart.legend.roundingPercentage
            })) + ") ", 1)
          ], 8, yt)
        ]),
        _: 1
      }, 8, ["legendSet", "config"])) : u("", !0),
      m(o.$slots, "legend", { legend: p.value }, void 0, !0),
      o.$slots.source ? (r(), y("div", ft, [
        m(o.$slots, "source", {}, void 0, !0)
      ], 512)) : u("", !0),
      x.value ? (r(), h(Be, {
        key: 9,
        hideDetails: "",
        config: {
          open: N.value.showTable,
          maxHeight: 1e4,
          body: {
            backgroundColor: e.value.style.chart.backgroundColor,
            color: e.value.style.chart.color
          },
          head: {
            backgroundColor: e.value.style.chart.backgroundColor,
            color: e.value.style.chart.color
          }
        }
      }, {
        content: f(() => [
          j(Ve, {
            colNames: A.value.colNames,
            head: A.value.head,
            body: A.value.body,
            config: A.value.config,
            title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? ` : ${e.value.style.chart.title.subtitle.text}` : ""}`,
            onClose: l[10] || (l[10] = (t) => N.value.showTable = !1)
          }, {
            th: f(({ th: t }) => [
              a("div", {
                innerHTML: t,
                style: { display: "flex", "align-items": "center" }
              }, null, 8, mt)
            ]),
            td: f(({ td: t }) => [
              Z(M(t.name || t), 1)
            ]),
            _: 1
          }, 8, ["colNames", "head", "body", "config", "title"])
        ]),
        _: 1
      }, 8, ["config"])) : u("", !0)
    ], 14, Ge));
  }
}, Lt = /* @__PURE__ */ ze(pt, [["__scopeId", "data-v-80a971b6"]]);
export {
  Lt as default
};
