vue-data-ui 3.0.23 → 3.1.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.
Files changed (108) hide show
  1. package/dist/{Arrow-B1Op9F3x.js → Arrow-DvG07exK.js} +1 -1
  2. package/dist/{BaseDraggableDialog-B4OaMIom.js → BaseDraggableDialog-O7900pGp.js} +72 -59
  3. package/dist/{BaseIcon-CgUOIGjr.js → BaseIcon-DHtro8us.js} +1 -1
  4. package/dist/{useLoading-D7YHNtLX.js → BaseScanner-BgWxam9d.js} +11 -11
  5. package/dist/{ColorPicker-C0nf8VH0.js → ColorPicker-CpWzNn4r.js} +2 -2
  6. package/dist/DataTable-DJjA2_wf.js +140 -0
  7. package/dist/{Legend-CyYXMSsW.js → Legend-2-dC7DVb.js} +2 -2
  8. package/dist/{NonSvgPenAndPaper-D63qeScu.js → NonSvgPenAndPaper-DHeE4Yuv.js} +3 -3
  9. package/dist/{PackageVersion-B6M-3jRt.js → PackageVersion-DU12WH3O.js} +1 -1
  10. package/dist/{PenAndPaper-zym5uEeN.js → PenAndPaper-B7QEDgx4.js} +3 -3
  11. package/dist/{Shape-CYVs2kYz.js → Shape-Dj2Hl33H.js} +1 -1
  12. package/dist/{Slicer-BTIFUO4x.js → Slicer-D99HytqX.js} +2 -2
  13. package/dist/{SparkTooltip-CNz7AYUL.js → SparkTooltip-B-wL07rI.js} +1 -1
  14. package/dist/{Title-D_e0SFWS.js → Title-Dq2_Z9kR.js} +1 -1
  15. package/dist/{Tooltip-DjVoFYj1.js → Tooltip-Y219DXZO.js} +1 -1
  16. package/dist/{UserOptions-z0NWZ7aQ.js → UserOptions-BuGfCdAY.js} +2 -2
  17. package/dist/{dom-to-png-DD0au3Qz.js → dom-to-png-BhciAKaM.js} +1 -1
  18. package/dist/{img-z5p1gGfY.js → img-JOqdlnUs.js} +1 -1
  19. package/dist/{index-BEuUtONc.js → index-CDQbCd41.js} +37 -2
  20. package/dist/{pdf-BmUjVBni.js → pdf-Dd-LIJqz.js} +1 -1
  21. package/dist/style.css +1 -1
  22. package/dist/types/vue-data-ui.d.cts +35 -0
  23. package/dist/types/vue-data-ui.d.ts +35 -0
  24. package/dist/{useAutoSizeLabelsInsideViewbox-CchB8S-o.js → useAutoSizeLabelsInsideViewbox-Bky5KGFZ.js} +1 -1
  25. package/dist/{useNestedProp-DhLFhguL.js → useNestedProp-BPEHGiYX.js} +1 -1
  26. package/dist/{usePrinter-DiB0_UNt.js → usePrinter-Bnl1YeUU.js} +2 -2
  27. package/dist/{vue-data-ui-DJIAas-7.js → vue-data-ui-DcNYz3cZ.js} +64 -64
  28. package/dist/vue-data-ui.js +1 -1
  29. package/dist/vue-ui-3d-bar-BNIFAeN-.js +1369 -0
  30. package/dist/{vue-ui-accordion-B4YfUjZ5.js → vue-ui-accordion-Bf_LHFFX.js} +3 -3
  31. package/dist/{vue-ui-age-pyramid-CkXXNN79.js → vue-ui-age-pyramid-Bz-l1afR.js} +333 -286
  32. package/dist/{vue-ui-annotator-DnSsIkvU.js → vue-ui-annotator-BcfRH2BF.js} +2 -2
  33. package/dist/{vue-ui-bullet-kZkBsWPY.js → vue-ui-bullet-DK1aM9fX.js} +8 -8
  34. package/dist/{vue-ui-candlestick-CIn0xZm0.js → vue-ui-candlestick-D6mMjvtu.js} +453 -406
  35. package/dist/{vue-ui-carousel-table-f1FDOAqH.js → vue-ui-carousel-table-Vp5f238W.js} +4 -4
  36. package/dist/{vue-ui-chestnut-B-jSj7FT.js → vue-ui-chestnut-BKc4v-lf.js} +509 -459
  37. package/dist/vue-ui-chord-CquhRjf0.js +1100 -0
  38. package/dist/vue-ui-circle-pack-D6zLgxa3.js +755 -0
  39. package/dist/{vue-ui-cursor-DdBrui6i.js → vue-ui-cursor-DIXb2S93.js} +2 -2
  40. package/dist/{vue-ui-dashboard-DSUfW7mI.js → vue-ui-dashboard-DmiriAK7.js} +62 -62
  41. package/dist/{vue-ui-digits-Cb3Wq5WR.js → vue-ui-digits-CLAIo9gW.js} +2 -2
  42. package/dist/{vue-ui-donut-BCZqlAO3.js → vue-ui-donut-C8h_tCSO.js} +477 -431
  43. package/dist/{vue-ui-donut-evolution-HmQBq9VP.js → vue-ui-donut-evolution-C3r0YhKz.js} +482 -435
  44. package/dist/{vue-ui-dumbbell-B5w2oqNO.js → vue-ui-dumbbell-D-t4M00E.js} +443 -398
  45. package/dist/vue-ui-flow-D7_D_UNm.js +900 -0
  46. package/dist/vue-ui-funnel-B0QOfZRz.js +666 -0
  47. package/dist/vue-ui-galaxy-Ccw5uNes.js +744 -0
  48. package/dist/{vue-ui-gauge-C_KLPWk2.js → vue-ui-gauge-DvW7nFmK.js} +8 -8
  49. package/dist/{vue-ui-gizmo-CsPX25Ti.js → vue-ui-gizmo-WGQxvGPy.js} +4 -4
  50. package/dist/vue-ui-heatmap-BQkLujyp.js +1127 -0
  51. package/dist/{vue-ui-history-plot-DgpYiaUD.js → vue-ui-history-plot-eU33r_Ot.js} +408 -361
  52. package/dist/{vue-ui-kpi-DOgibU7W.js → vue-ui-kpi-CKg2i71M.js} +3 -3
  53. package/dist/{vue-ui-mini-loader-BjsQAxDx.js → vue-ui-mini-loader-BmkGQsm_.js} +2 -2
  54. package/dist/vue-ui-molecule-Dlu0hjSg.js +702 -0
  55. package/dist/{vue-ui-mood-radar-DMwVl3wz.js → vue-ui-mood-radar-DQaxfw9R.js} +342 -291
  56. package/dist/{vue-ui-nested-donuts-H0GzIAF0.js → vue-ui-nested-donuts-Djj9Aw_i.js} +548 -502
  57. package/dist/{vue-ui-onion-A6nKcus1.js → vue-ui-onion-ZgsErXis.js} +363 -317
  58. package/dist/vue-ui-parallel-coordinate-plot-B5fB22Jc.js +979 -0
  59. package/dist/vue-ui-quadrant-CMevCtXH.js +1483 -0
  60. package/dist/{vue-ui-quick-chart-mwXE3w_o.js → vue-ui-quick-chart-DcparKSX.js} +7 -7
  61. package/dist/vue-ui-radar-DFbxoKCK.js +858 -0
  62. package/dist/{vue-ui-rating-CleNHFo5.js → vue-ui-rating-ZUpxCWrk.js} +2 -2
  63. package/dist/{vue-ui-relation-circle-CMCH7Ia6.js → vue-ui-relation-circle-eNKJY4Sx.js} +8 -8
  64. package/dist/vue-ui-ridgeline-D4shpQZd.js +1204 -0
  65. package/dist/vue-ui-rings-TdTHMbsa.js +785 -0
  66. package/dist/{vue-ui-scatter-kv28dsT3.js → vue-ui-scatter-CVuV9ljU.js} +594 -548
  67. package/dist/{vue-ui-skeleton-DCNOYh9x.js → vue-ui-skeleton-CFxBU2-p.js} +3 -3
  68. package/dist/{vue-ui-smiley-DcS0CM-z.js → vue-ui-smiley-Har3B3aQ.js} +2 -2
  69. package/dist/{vue-ui-spark-trend-LHgReXth.js → vue-ui-spark-trend-FPk-XEwI.js} +4 -4
  70. package/dist/{vue-ui-sparkbar-Da315uRq.js → vue-ui-sparkbar-V3eJ0w0t.js} +4 -4
  71. package/dist/{vue-ui-sparkgauge-BeAkjGap.js → vue-ui-sparkgauge-DKTGkWnJ.js} +4 -4
  72. package/dist/{vue-ui-sparkhistogram-Cy19W3y1.js → vue-ui-sparkhistogram-DJsgFwHs.js} +5 -5
  73. package/dist/{vue-ui-sparkline-IjlQWgs3.js → vue-ui-sparkline-Dmrm5SL5.js} +4 -4
  74. package/dist/{vue-ui-sparkstackbar-CoFgOa3r.js → vue-ui-sparkstackbar-B0Pl7VMI.js} +4 -4
  75. package/dist/{vue-ui-stackbar-fbCs4sHF.js → vue-ui-stackbar-CNsgBPhj.js} +525 -479
  76. package/dist/{vue-ui-strip-plot-Cm8Zr6RE.js → vue-ui-strip-plot-CYAWwYOM.js} +390 -343
  77. package/dist/{vue-ui-table-q7jWgS26.js → vue-ui-table-Dn6H98rP.js} +3 -3
  78. package/dist/{vue-ui-table-heatmap-CsK9gR1G.js → vue-ui-table-heatmap-COI9LRqC.js} +5 -5
  79. package/dist/{vue-ui-table-sparkline-CXTPucPr.js → vue-ui-table-sparkline-B7Gg5FfJ.js} +4 -4
  80. package/dist/{vue-ui-thermometer-BFxdNgrd.js → vue-ui-thermometer-Bgynq5El.js} +8 -8
  81. package/dist/{vue-ui-timer-BsoeDFjK.js → vue-ui-timer-CXng51v5.js} +5 -5
  82. package/dist/{vue-ui-tiremarks-BW_jSayT.js → vue-ui-tiremarks-Cy1U3hO1.js} +7 -7
  83. package/dist/vue-ui-treemap-BsvIvRmE.js +1092 -0
  84. package/dist/{vue-ui-vertical-bar-OrLV4CxH.js → vue-ui-vertical-bar-DHqWeDIf.js} +512 -464
  85. package/dist/{vue-ui-waffle-BA6rNfVs.js → vue-ui-waffle-D1Mscj3N.js} +416 -370
  86. package/dist/{vue-ui-wheel-B_BkI-5f.js → vue-ui-wheel-DpV-N5tF.js} +7 -7
  87. package/dist/vue-ui-word-cloud-MaNQ3Kdk.js +811 -0
  88. package/dist/{vue-ui-world-B4mKuSSn.js → vue-ui-world-DYz6zw3x.js} +512 -466
  89. package/dist/{vue-ui-xy-m1SWJk77.js → vue-ui-xy-B1nqNbzw.js} +1551 -1500
  90. package/dist/vue-ui-xy-canvas-D4wd-Asd.js +1291 -0
  91. package/package.json +1 -1
  92. package/dist/DataTable-nO6ydJO2.js +0 -133
  93. package/dist/vue-ui-3d-bar-B56WqLJ-.js +0 -1323
  94. package/dist/vue-ui-chord-Ck4yV3Tb.js +0 -1049
  95. package/dist/vue-ui-circle-pack-BAfRk_Hd.js +0 -709
  96. package/dist/vue-ui-flow-BXkxtUoF.js +0 -852
  97. package/dist/vue-ui-funnel-DFvDO--q.js +0 -620
  98. package/dist/vue-ui-galaxy-BXNLLc3U.js +0 -691
  99. package/dist/vue-ui-heatmap-BHq6hBaL.js +0 -1078
  100. package/dist/vue-ui-molecule-BtyMTwEn.js +0 -656
  101. package/dist/vue-ui-parallel-coordinate-plot-DZ9_0F5c.js +0 -927
  102. package/dist/vue-ui-quadrant-CUggSeUN.js +0 -1432
  103. package/dist/vue-ui-radar-BRKZ8e_X.js +0 -807
  104. package/dist/vue-ui-ridgeline-xW7UrSfR.js +0 -1157
  105. package/dist/vue-ui-rings-D3NfFMaO.js +0 -739
  106. package/dist/vue-ui-treemap-DhAYSVB9.js +0 -1046
  107. package/dist/vue-ui-word-cloud-CrSLGFOK.js +0 -765
  108. package/dist/vue-ui-xy-canvas-CX2JT6T3.js +0 -1243
@@ -0,0 +1,785 @@
1
+ import { defineAsyncComponent as F, useSlots as gt, ref as u, computed as f, toRefs as ft, watch as q, shallowRef as Ve, onMounted as yt, onBeforeUnmount as mt, createElementBlock as p, openBlock as i, unref as s, normalizeStyle as N, normalizeClass as W, createBlock as I, createCommentVNode as k, createElementVNode as C, createVNode as J, createSlots as ue, withCtx as c, renderSlot as h, normalizeProps as B, guardReactiveProps as R, Fragment as re, renderList as ie, mergeProps as Be, Teleport as bt, toDisplayString as M, resolveDynamicComponent as kt, createTextVNode as Re, nextTick as wt } from "vue";
2
+ import { u as Ct, c as Me, t as $t, a as Tt, p as L, b as _t, o as ze, f as ve, g as xt, d as At, G as Ft, e as Ee, i as D, X as It, s as Ot, x as Pt, h as K, k as Ue, v as St, w as Nt, y as Lt, z as Dt } from "./index-CDQbCd41.js";
3
+ import { t as Vt, u as Bt } from "./useResponsive-DfdjqQps.js";
4
+ import { u as Rt } from "./usePrinter-Bnl1YeUU.js";
5
+ import { u as Mt, B as zt } from "./BaseScanner-BgWxam9d.js";
6
+ import { u as We } from "./useNestedProp-BPEHGiYX.js";
7
+ import { u as Et } from "./useUserOptionState-BIvW1Kz7.js";
8
+ import { u as Ut } from "./useChartAccessibility-9icAAmYg.js";
9
+ import Wt from "./img-JOqdlnUs.js";
10
+ import { _ as Gt } from "./Shape-Dj2Hl33H.js";
11
+ import Ht from "./Title-Dq2_Z9kR.js";
12
+ import jt from "./Legend-2-dC7DVb.js";
13
+ import { _ as Xt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
14
+ const Yt = ["id"], qt = ["id"], Jt = ["xmlns", "viewBox"], Kt = ["width", "height"], Qt = ["id"], Zt = ["stop-color"], el = ["stop-color"], tl = { key: 1 }, ll = ["stroke", "cx", "cy", "r", "fill"], al = ["stroke", "stroke-width", "cx", "cy", "r", "fill"], ol = ["stroke", "stroke-width", "cx", "cy", "r", "fill"], sl = ["cx", "cy", "r", "onMouseenter", "onMouseleave", "onClick"], nl = {
15
+ key: 4,
16
+ class: "vue-data-ui-watermark"
17
+ }, ul = ["id"], rl = ["onClick"], il = ["innerHTML"], vl = {
18
+ __name: "vue-ui-rings",
19
+ props: {
20
+ config: {
21
+ type: Object,
22
+ default() {
23
+ return {};
24
+ }
25
+ },
26
+ dataset: {
27
+ type: Array,
28
+ default() {
29
+ return [];
30
+ }
31
+ }
32
+ },
33
+ emits: ["selectLegend"],
34
+ setup(Ge, { expose: He, emit: je }) {
35
+ const Xe = F(() => import("./Tooltip-Y219DXZO.js")), Ye = F(() => import("./BaseIcon-DHtro8us.js")), qe = F(() => import("./vue-ui-accordion-Bf_LHFFX.js")), Je = F(() => import("./DataTable-DJjA2_wf.js")), Ke = F(() => import("./PenAndPaper-B7QEDgx4.js")), Qe = F(() => import("./UserOptions-BuGfCdAY.js")), Ze = F(() => import("./PackageVersion-DU12WH3O.js")), et = F(() => import("./BaseDraggableDialog-O7900pGp.js")), { vue_ui_rings: tt } = Ct(), lt = gt(), w = Ge, O = u(!1), ce = f(() => !!w.dataset && w.dataset.length), y = u(Me()), at = u(null), G = u(!1), Q = u(""), T = u(null), de = u(0), _ = u(null), pe = u(null), he = u(null), ge = u(null), fe = u(null), ye = u(0), me = u(0), be = u(0), Z = u(!1), ke = u(!1), z = u(null), e = u(te()), { loading: P, FINAL_DATASET: we, manualLoading: H } = Mt({
36
+ ...ft(w),
37
+ FINAL_CONFIG: e,
38
+ prepareConfig: te,
39
+ skeletonDataset: [
40
+ { name: "_", values: [13], color: "#808080" },
41
+ { name: "_", values: [8], color: "#969696" },
42
+ { name: "_", values: [5], color: "#ADADAD" },
43
+ { name: "_", values: [3], color: "#C4C4C4" },
44
+ { name: "_", values: [2], color: "#DBDBDB" }
45
+ ],
46
+ skeletonConfig: $t({
47
+ defaultConfig: e.value,
48
+ userConfig: {
49
+ userOptions: { show: !1 },
50
+ table: { show: !1 },
51
+ style: {
52
+ chart: {
53
+ backgroundColor: "#99999930",
54
+ layout: {
55
+ rings: {
56
+ stroke: "#6A6A6A",
57
+ gradient: {
58
+ underlayerColor: "#FFFFFF"
59
+ }
60
+ }
61
+ },
62
+ legend: {
63
+ backgroundColor: "transparent"
64
+ }
65
+ }
66
+ }
67
+ }
68
+ })
69
+ }), { userOptionsVisible: ee, setUserOptionsVisibility: Ce, keepUserOptionState: $e } = Et({ config: e.value }), { svgRef: Te } = Ut({ config: e.value.style.chart.title });
70
+ function te() {
71
+ const t = We({
72
+ userConfig: w.config,
73
+ defaultConfig: tt
74
+ });
75
+ return t.theme ? {
76
+ ...We({
77
+ userConfig: _t.vue_ui_rings[t.theme] || w.config,
78
+ defaultConfig: t
79
+ }),
80
+ customPalette: Tt[t.theme] || L
81
+ } : t;
82
+ }
83
+ q(() => w.config, (t) => {
84
+ P.value || (e.value = te()), ee.value = !e.value.userOptions.showOnChartHover, _e(), ye.value += 1, me.value += 1, be.value += 1, m.value.showTable = e.value.table.show, m.value.showTooltip = e.value.style.chart.tooltip.show;
85
+ }, { deep: !0 }), q(() => w.dataset, (t) => {
86
+ Array.isArray(t) && t.length > 0 && (H.value = !1);
87
+ }, { deep: !0 });
88
+ const x = Ve(null), V = Ve(null);
89
+ yt(() => {
90
+ ke.value = !0, _e();
91
+ });
92
+ const le = f(() => !!e.value.debug);
93
+ function _e() {
94
+ if (ze(w.dataset) ? (ve({
95
+ componentName: "VueUiRings",
96
+ type: "dataset",
97
+ debug: le.value
98
+ }), H.value = !0) : w.dataset.forEach((t, a) => {
99
+ t.values.length || (ve({
100
+ componentName: "VueUiRings",
101
+ type: "dataset",
102
+ debug: le.value
103
+ }), H.value = !0), xt({
104
+ datasetObject: t,
105
+ requiredAttributes: ["name", "values"]
106
+ }).forEach((l) => {
107
+ ve({
108
+ componentName: "VueUiRings",
109
+ type: "datasetSerieAttribute",
110
+ property: l,
111
+ index: a,
112
+ debug: le.value
113
+ });
114
+ });
115
+ }), ze(w.dataset) || (H.value = e.value.loading), e.value.responsive) {
116
+ const t = Vt(() => {
117
+ Z.value = !0;
118
+ const { width: a, height: l } = Bt({
119
+ chart: _.value,
120
+ title: e.value.style.chart.title.text ? pe.value : null,
121
+ legend: e.value.style.chart.legend.show ? he.value : null,
122
+ source: ge.value,
123
+ noTitle: fe.value
124
+ });
125
+ requestAnimationFrame(() => {
126
+ n.value.width = a, n.value.height = l - 12, Z.value = !1;
127
+ });
128
+ });
129
+ x.value && (V.value && x.value.unobserve(V.value), x.value.disconnect()), x.value = new ResizeObserver(t), V.value = _.value.parentNode, x.value.observe(V.value);
130
+ }
131
+ setTimeout(() => {
132
+ O.value = !0;
133
+ }, 600);
134
+ }
135
+ mt(() => {
136
+ x.value && (V.value && x.value.unobserve(V.value), x.value.disconnect());
137
+ });
138
+ const { isPrinting: xe, isImaging: Ae, generatePdf: Fe, generateImage: Ie } = Rt({
139
+ elementId: `rings_${y.value}`,
140
+ fileName: e.value.style.chart.title.text || "vue-ui-rings",
141
+ options: e.value.userOptions.print
142
+ }), ot = f(() => e.value.userOptions.show && !e.value.style.chart.title.text), Oe = f(() => At(e.value.customPalette)), m = u({
143
+ showTable: e.value.table.show,
144
+ showTooltip: e.value.style.chart.tooltip.show
145
+ });
146
+ q(e, () => {
147
+ m.value = {
148
+ showTable: e.value.table.show,
149
+ showTooltip: e.value.style.chart.tooltip.show
150
+ };
151
+ }, { immediate: !0 });
152
+ const n = u({
153
+ height: 360,
154
+ width: 360
155
+ }), st = f(() => Math.min(n.value.height, n.value.width)), nt = je, b = u([]);
156
+ function ae(t) {
157
+ b.value.includes(t) ? b.value = b.value.filter((a) => a !== t) : b.value.push(t), nt("selectLegend", g.value.map((a) => ({
158
+ name: a.name,
159
+ color: a.color,
160
+ value: a.value
161
+ })));
162
+ }
163
+ const ut = f(() => Math.max(
164
+ ...j.value.filter((t) => !b.value.includes(t.uid)).map(({ value: t }) => t)
165
+ ));
166
+ function Pe(t) {
167
+ return t / ut.value;
168
+ }
169
+ const j = f(() => we.value.map(({ values: t, name: a, color: l = null }, o) => {
170
+ const r = Ft(t).reduce((v, U) => v + U, 0);
171
+ return {
172
+ name: a,
173
+ color: l || Ee(l) || Oe.value[o] || L[o] || L[o % L.length],
174
+ value: r,
175
+ proportion: r / we.value.map((v) => (v.values || []).reduce((U, ht) => U + ht, 0)).reduce((v, U) => v + U, 0),
176
+ uid: Me(),
177
+ absoluteIndex: o
178
+ };
179
+ })), Se = f(() => j.value.map((t) => ({
180
+ ...t,
181
+ shape: "circle",
182
+ opacity: b.value.includes(t.uid) ? 0.5 : 1,
183
+ segregate: () => ae(t.uid),
184
+ isSegregated: b.value.includes(t.uid)
185
+ })).toSorted((t, a) => a.value - t.value)), rt = f(() => ({
186
+ cy: "rings-div-legend",
187
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
188
+ color: e.value.style.chart.legend.color,
189
+ fontSize: e.value.style.chart.legend.fontSize,
190
+ paddingBottom: 12,
191
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
192
+ })), $ = f(() => j.value.filter((t) => !b.value.includes(t.uid)).map(({ value: t }) => t).reduce((t, a) => t + a, 0)), g = f(() => j.value.filter((t) => !b.value.includes(t.uid)).map(({ name: t, value: a, color: l = null, uid: o, absoluteIndex: r }, v) => ({
193
+ absoluteIndex: r,
194
+ uid: o,
195
+ name: t,
196
+ color: l || Ee(l) || Oe.value[v] || L[v] || L[v % L.length],
197
+ value: a,
198
+ proportion: Pe(a),
199
+ percentage: a / $.value * 100,
200
+ strokeWidth: e.value.style.chart.layout.rings.strokeWidth * Pe(a)
201
+ })).toSorted((t, a) => a.value - t.value));
202
+ function it() {
203
+ return g.value.map(
204
+ ({ name: t, color: a, value: l, absoluteValues: o, percentage: r }) => ({
205
+ name: t,
206
+ color: a,
207
+ value: l,
208
+ absoluteValues: o,
209
+ percentage: r
210
+ })
211
+ );
212
+ }
213
+ const d = f(() => st.value - e.value.style.chart.layout.rings.strokeWidth * 2);
214
+ function vt(t, a) {
215
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: t, seriesIndex: a });
216
+ }
217
+ function ct(t, a) {
218
+ T.value = null, G.value = !1, e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: t, seriesIndex: a });
219
+ }
220
+ const oe = u(null);
221
+ function dt(t, a) {
222
+ if (e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: a }), b.value.length === w.dataset.length) return;
223
+ oe.value = {
224
+ datapoint: t,
225
+ seriesIndex: a,
226
+ series: g.value,
227
+ config: e.value
228
+ }, T.value = a;
229
+ const l = g.value[a], o = e.value.style.chart.tooltip.customFormat;
230
+ if (Lt(o) && Dt(() => o({
231
+ seriesIndex: a,
232
+ datapoint: t,
233
+ series: g.value,
234
+ config: e.value
235
+ })))
236
+ Q.value = o({
237
+ seriesIndex: a,
238
+ datapoint: t,
239
+ series: g.value,
240
+ config: e.value
241
+ });
242
+ else {
243
+ let r = "";
244
+ r += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${l.name}</div>`, r += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 60 60" height="14" width="14"><circle cx="30" cy="30" r="30" stroke="none" fill="${l.color}" />${lt.pattern ? `<circle cx="30" cy="30" r="30" stroke="none" fill="url(#pattern_${y.value}_${t.absoluteIndex})" />` : ""}</svg>`, e.value.style.chart.tooltip.showValue && (r += `<b>${Ue(
245
+ e.value.style.chart.layout.labels.dataLabels.formatter,
246
+ l.value,
247
+ D({
248
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
249
+ v: l.value,
250
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
251
+ r: e.value.style.chart.tooltip.roundingValue
252
+ }),
253
+ { datapoint: t, seriesIndex: a }
254
+ )}
255
+ </b>`), e.value.style.chart.tooltip.showPercentage && (e.value.style.chart.tooltip.showValue ? r += `<span>(${D({
256
+ v: l.value / $.value * 100,
257
+ s: "%",
258
+ r: e.value.style.chart.tooltip.roundingPercentage
259
+ })})</span></div>` : r += `<b>${D({
260
+ v: l.value / $.value * 100,
261
+ s: "%",
262
+ r: e.value.style.chart.tooltip.roundingPercentage
263
+ })}</b></div>`), Q.value = r;
264
+ }
265
+ G.value = !0;
266
+ }
267
+ const A = f(() => {
268
+ const t = g.value.map((l) => ({
269
+ name: l.name,
270
+ color: l.color
271
+ })), a = g.value.map((l) => l.value);
272
+ return { head: t, body: a };
273
+ }), X = f(() => {
274
+ const t = [
275
+ ' <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>',
276
+ D({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: $.value, s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
277
+ "100%"
278
+ ], a = A.value.head.map((r, v) => [
279
+ {
280
+ color: r.color,
281
+ name: r.name
282
+ },
283
+ D({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: A.value.body[v], s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
284
+ isNaN(A.value.body[v] / $.value) ? "-" : (A.value.body[v] / $.value * 100).toFixed(e.value.table.td.roundingPercentage) + "%"
285
+ ]), l = {
286
+ th: {
287
+ backgroundColor: e.value.table.th.backgroundColor,
288
+ color: e.value.table.th.color,
289
+ outline: e.value.table.th.outline
290
+ },
291
+ td: {
292
+ backgroundColor: e.value.table.td.backgroundColor,
293
+ color: e.value.table.td.color,
294
+ outline: e.value.table.td.outline
295
+ },
296
+ breakpoint: e.value.table.responsiveBreakpoint
297
+ }, o = [
298
+ e.value.table.columnNames.series,
299
+ e.value.table.columnNames.value,
300
+ e.value.table.columnNames.percentage
301
+ ];
302
+ return {
303
+ head: t,
304
+ body: a,
305
+ config: l,
306
+ colNames: o
307
+ };
308
+ });
309
+ function se(t = null) {
310
+ wt(() => {
311
+ const a = A.value.head.map((r, v) => [[
312
+ r.name
313
+ ], [A.value.body[v]], [isNaN(A.value.body[v] / $.value) ? "-" : A.value.body[v] / $.value * 100]]), l = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [[""], ["val"], ["%"]]].concat(a), o = St(l);
314
+ t ? t(o) : Nt({ csvContent: o, title: e.value.style.chart.title.text || "vue-ui-rings" });
315
+ });
316
+ }
317
+ const S = u(!1);
318
+ function Ne(t) {
319
+ S.value = t, de.value += 1;
320
+ }
321
+ function Le() {
322
+ m.value.showTable = !m.value.showTable;
323
+ }
324
+ function De() {
325
+ m.value.showTooltip = !m.value.showTooltip;
326
+ }
327
+ const Y = u(!1);
328
+ function ne() {
329
+ Y.value = !Y.value;
330
+ }
331
+ async function pt({ scale: t = 2 } = {}) {
332
+ if (!_.value) return;
333
+ const { width: a, height: l } = _.value.getBoundingClientRect(), o = a / l, { imageUri: r, base64: v } = await Wt({ domElement: _.value, base64: !0, img: !0, scale: t });
334
+ return {
335
+ imageUri: r,
336
+ base64: v,
337
+ title: e.value.style.chart.title.text,
338
+ width: a,
339
+ height: l,
340
+ aspectRatio: o
341
+ };
342
+ }
343
+ const E = f(() => {
344
+ const t = e.value.table.useDialog && !e.value.table.show, a = m.value.showTable;
345
+ return {
346
+ component: t ? et : qe,
347
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
348
+ props: t ? {
349
+ backgroundColor: e.value.table.th.backgroundColor,
350
+ color: e.value.table.th.color,
351
+ headerColor: e.value.table.th.color,
352
+ headerBg: e.value.table.th.backgroundColor,
353
+ isFullscreen: S.value,
354
+ fullscreenParent: _.value,
355
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
356
+ } : {
357
+ hideDetails: !0,
358
+ config: {
359
+ open: a,
360
+ maxHeight: 1e4,
361
+ body: {
362
+ backgroundColor: e.value.style.chart.backgroundColor,
363
+ color: e.value.style.chart.color
364
+ },
365
+ head: {
366
+ backgroundColor: e.value.style.chart.backgroundColor,
367
+ color: e.value.style.chart.color
368
+ }
369
+ }
370
+ }
371
+ };
372
+ });
373
+ return q(() => m.value.showTable, (t) => {
374
+ e.value.table.show || (t && e.value.table.useDialog && z.value ? z.value.open() : "close" in z.value && z.value.close());
375
+ }), He({
376
+ getData: it,
377
+ getImage: pt,
378
+ generatePdf: Fe,
379
+ generateCsv: se,
380
+ generateImage: Ie,
381
+ toggleTable: Le,
382
+ toggleTooltip: De,
383
+ toggleAnnotator: ne,
384
+ toggleFullscreen: Ne
385
+ }), (t, a) => (i(), p("div", {
386
+ ref_key: "ringsChart",
387
+ ref: _,
388
+ class: W(`vue-ui-rings ${S.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
389
+ style: N(`font-family:${e.value.style.fontFamily};text-align:center;width:100%;background:${e.value.style.chart.backgroundColor};${e.value.responsive ? "height: 100%" : ""}`),
390
+ id: `rings_${y.value}`,
391
+ onMouseleave: a[4] || (a[4] = (l) => {
392
+ T.value = null, G.value = !1, s(Ce)(!1);
393
+ }),
394
+ onMouseenter: a[5] || (a[5] = () => s(Ce)(!0))
395
+ }, [
396
+ e.value.userOptions.buttons.annotator ? (i(), I(s(Ke), {
397
+ key: 0,
398
+ svgRef: s(Te),
399
+ backgroundColor: e.value.style.chart.backgroundColor,
400
+ color: e.value.style.chart.color,
401
+ active: Y.value,
402
+ onClose: ne
403
+ }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : k("", !0),
404
+ ot.value ? (i(), p("div", {
405
+ key: 1,
406
+ ref_key: "noTitle",
407
+ ref: fe,
408
+ class: "vue-data-ui-no-title-space",
409
+ style: "height:36px; width: 100%;background:transparent"
410
+ }, null, 512)) : k("", !0),
411
+ e.value.style.chart.title.text ? (i(), p("div", {
412
+ key: 2,
413
+ ref_key: "chartTitle",
414
+ ref: pe,
415
+ style: "width:100%;background:transparent"
416
+ }, [
417
+ (i(), I(Ht, {
418
+ key: `title_${ye.value}`,
419
+ config: {
420
+ title: {
421
+ cy: "rings-div-title",
422
+ ...e.value.style.chart.title
423
+ },
424
+ subtitle: {
425
+ cy: "rings-div-subtitle",
426
+ ...e.value.style.chart.title.subtitle
427
+ }
428
+ }
429
+ }, null, 8, ["config"]))
430
+ ], 512)) : k("", !0),
431
+ C("div", {
432
+ id: `legend-top-${y.value}`
433
+ }, null, 8, qt),
434
+ e.value.userOptions.show && ce.value && (s($e) || s(ee)) ? (i(), I(s(Qe), {
435
+ ref_key: "details",
436
+ ref: at,
437
+ key: `user_options_${de.value}`,
438
+ backgroundColor: e.value.style.chart.backgroundColor,
439
+ color: e.value.style.chart.color,
440
+ isPrinting: s(xe),
441
+ isImaging: s(Ae),
442
+ uid: y.value,
443
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.chart.tooltip.show,
444
+ hasPdf: e.value.userOptions.buttons.pdf,
445
+ hasXls: e.value.userOptions.buttons.csv,
446
+ hasImg: e.value.userOptions.buttons.img,
447
+ hasTable: e.value.userOptions.buttons.table,
448
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
449
+ isTooltip: m.value.showTooltip,
450
+ isFullscreen: S.value,
451
+ titles: { ...e.value.userOptions.buttonTitles },
452
+ chartElement: _.value,
453
+ position: e.value.userOptions.position,
454
+ hasAnnotator: e.value.userOptions.buttons.annotator,
455
+ isAnnotation: Y.value,
456
+ callbacks: e.value.userOptions.callbacks,
457
+ printScale: e.value.userOptions.print.scale,
458
+ onToggleFullscreen: Ne,
459
+ onGeneratePdf: s(Fe),
460
+ onGenerateCsv: se,
461
+ onGenerateImage: s(Ie),
462
+ onToggleTable: Le,
463
+ onToggleTooltip: De,
464
+ onToggleAnnotator: ne,
465
+ style: N({
466
+ visibility: s($e) ? s(ee) ? "visible" : "hidden" : "visible"
467
+ })
468
+ }, ue({ _: 2 }, [
469
+ t.$slots.menuIcon ? {
470
+ name: "menuIcon",
471
+ fn: c(({ isOpen: l, color: o }) => [
472
+ h(t.$slots, "menuIcon", B(R({ isOpen: l, color: o })), void 0, !0)
473
+ ]),
474
+ key: "0"
475
+ } : void 0,
476
+ t.$slots.optionTooltip ? {
477
+ name: "optionTooltip",
478
+ fn: c(() => [
479
+ h(t.$slots, "optionTooltip", {}, void 0, !0)
480
+ ]),
481
+ key: "1"
482
+ } : void 0,
483
+ t.$slots.optionPdf ? {
484
+ name: "optionPdf",
485
+ fn: c(() => [
486
+ h(t.$slots, "optionPdf", {}, void 0, !0)
487
+ ]),
488
+ key: "2"
489
+ } : void 0,
490
+ t.$slots.optionCsv ? {
491
+ name: "optionCsv",
492
+ fn: c(() => [
493
+ h(t.$slots, "optionCsv", {}, void 0, !0)
494
+ ]),
495
+ key: "3"
496
+ } : void 0,
497
+ t.$slots.optionImg ? {
498
+ name: "optionImg",
499
+ fn: c(() => [
500
+ h(t.$slots, "optionImg", {}, void 0, !0)
501
+ ]),
502
+ key: "4"
503
+ } : void 0,
504
+ t.$slots.optionTable ? {
505
+ name: "optionTable",
506
+ fn: c(() => [
507
+ h(t.$slots, "optionTable", {}, void 0, !0)
508
+ ]),
509
+ key: "5"
510
+ } : void 0,
511
+ t.$slots.optionFullscreen ? {
512
+ name: "optionFullscreen",
513
+ fn: c(({ toggleFullscreen: l, isFullscreen: o }) => [
514
+ h(t.$slots, "optionFullscreen", B(R({ toggleFullscreen: l, isFullscreen: o })), void 0, !0)
515
+ ]),
516
+ key: "6"
517
+ } : void 0,
518
+ t.$slots.optionAnnotator ? {
519
+ name: "optionAnnotator",
520
+ fn: c(({ toggleAnnotator: l, isAnnotator: o }) => [
521
+ h(t.$slots, "optionAnnotator", B(R({ toggleAnnotator: l, isAnnotator: o })), void 0, !0)
522
+ ]),
523
+ key: "7"
524
+ } : void 0
525
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasXls", "hasImg", "hasTable", "hasFullscreen", "isTooltip", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "onGeneratePdf", "onGenerateImage", "style"])) : k("", !0),
526
+ (i(), p("svg", {
527
+ ref_key: "svgRef",
528
+ ref: Te,
529
+ xmlns: s(It),
530
+ class: W({ "vue-data-ui-fullscreen--on": S.value, "vue-data-ui-fulscreen--off": !S.value, resizing: Z.value || s(P) }),
531
+ viewBox: `0 0 ${n.value.width <= 0 ? 10 : n.value.width} ${n.value.height <= 0 ? 10 : n.value.height}`,
532
+ style: N(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.chart.color}`)
533
+ }, [
534
+ J(s(Ze)),
535
+ t.$slots["chart-background"] ? (i(), p("foreignObject", {
536
+ key: 0,
537
+ x: 0,
538
+ y: 0,
539
+ width: n.value.width <= 0 ? 10 : n.value.width,
540
+ height: n.value.height <= 0 ? 10 : n.value.height,
541
+ style: {
542
+ pointerEvents: "none"
543
+ }
544
+ }, [
545
+ h(t.$slots, "chart-background", {}, void 0, !0)
546
+ ], 8, Kt)) : k("", !0),
547
+ C("defs", null, [
548
+ (i(!0), p(re, null, ie(g.value, (l, o) => (i(), p("radialGradient", {
549
+ cx: "50%",
550
+ cy: "30%",
551
+ r: "50%",
552
+ fx: "50%",
553
+ fy: "50%",
554
+ id: `gradient_${y.value}_${o}`
555
+ }, [
556
+ C("stop", {
557
+ offset: "0%",
558
+ "stop-color": s(Ot)(s(Pt)(l.color, 0.05), 100 - e.value.style.chart.layout.rings.gradient.intensity)
559
+ }, null, 8, Zt),
560
+ C("stop", {
561
+ offset: "100%",
562
+ "stop-color": l.color
563
+ }, null, 8, el)
564
+ ], 8, Qt))), 256))
565
+ ]),
566
+ t.$slots.pattern ? (i(), p("g", tl, [
567
+ (i(!0), p(re, null, ie(g.value, (l) => (i(), p("defs", null, [
568
+ h(t.$slots, "pattern", Be({ ref_for: !0 }, { seriesIndex: l.absoluteIndex, patternId: `pattern_${y.value}_${l.absoluteIndex}` }), void 0, !0)
569
+ ]))), 256))
570
+ ])) : k("", !0),
571
+ (i(!0), p(re, null, ie(g.value, (l, o) => (i(), p("g", null, [
572
+ C("circle", {
573
+ class: W({
574
+ "vue-ui-rings-item": O.value && e.value.useCssAnimation,
575
+ "vue-rings-item-onload": !O.value && e.value.useCssAnimation && !s(P),
576
+ "vue-ui-rings-opacity": T.value !== null && T.value !== o
577
+ }),
578
+ style: N(`animation-delay:${o * 100}ms`),
579
+ stroke: e.value.style.chart.layout.rings.stroke,
580
+ cx: n.value.width / 2,
581
+ cy: o === 0 ? n.value.height / 2 : n.value.height / 2 + d.value * g.value[0].proportion / 2 - d.value * l.proportion / 2 - 2 * (o + 1),
582
+ r: s(K)(d.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : d.value * l.proportion / 2 * 0.9),
583
+ fill: e.value.style.chart.layout.rings.gradient.underlayerColor
584
+ }, null, 14, ll),
585
+ C("circle", {
586
+ class: W({
587
+ "vue-ui-rings-item": O.value && e.value.useCssAnimation,
588
+ "vue-rings-item-onload": !O.value && e.value.useCssAnimation && !s(P),
589
+ "vue-ui-rings-shadow": e.value.style.chart.layout.rings.useShadow,
590
+ "vue-ui-rings-blur": T.value !== null && T.value !== o
591
+ }),
592
+ style: N(`animation-delay:${o * 100}ms`),
593
+ stroke: e.value.style.chart.layout.rings.stroke,
594
+ "stroke-width": l.strokeWidth < 0.5 ? 0.5 : l.strokeWidth,
595
+ cx: n.value.width / 2,
596
+ cy: o === 0 ? n.value.height / 2 : n.value.height / 2 + d.value * g.value[0].proportion / 2 - d.value * l.proportion / 2 - 2 * (o + 1),
597
+ r: s(K)(d.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : d.value * l.proportion / 2 * 0.9),
598
+ fill: e.value.style.chart.layout.rings.gradient.show ? `url(#gradient_${y.value}_${o})` : l.color
599
+ }, null, 14, al),
600
+ t.$slots.pattern ? (i(), p("circle", {
601
+ key: 0,
602
+ class: W({
603
+ "vue-ui-rings-item": O.value && e.value.useCssAnimation,
604
+ "vue-rings-item-onload": !O.value && e.value.useCssAnimation && !s(P),
605
+ "vue-ui-rings-shadow": e.value.style.chart.layout.rings.useShadow,
606
+ "vue-ui-rings-blur": T.value !== null && T.value !== o
607
+ }),
608
+ style: N(`animation-delay:${o * 100}ms`),
609
+ stroke: e.value.style.chart.layout.rings.stroke,
610
+ "stroke-width": l.strokeWidth < 0.5 ? 0.5 : l.strokeWidth,
611
+ cx: n.value.width / 2,
612
+ cy: o === 0 ? n.value.height / 2 : n.value.height / 2 + d.value * g.value[0].proportion / 2 - d.value * l.proportion / 2 - 2 * (o + 1),
613
+ r: s(K)(d.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : d.value * l.proportion / 2 * 0.9),
614
+ fill: `url(#pattern_${y.value}_${l.absoluteIndex})`
615
+ }, null, 14, ol)) : k("", !0),
616
+ C("circle", {
617
+ stroke: "none",
618
+ cx: n.value.width / 2,
619
+ cy: o === 0 ? n.value.height / 2 : n.value.height / 2 + d.value * g.value[0].proportion / 2 - d.value * l.proportion / 2 - 2 * (o + 1),
620
+ r: s(K)(d.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : d.value * l.proportion / 2 * 0.9),
621
+ fill: "transparent",
622
+ onMouseenter: (r) => dt(l, o),
623
+ onMouseleave: (r) => ct(l, o),
624
+ onClick: (r) => vt(l, o)
625
+ }, null, 40, sl)
626
+ ]))), 256)),
627
+ h(t.$slots, "svg", { svg: n.value }, void 0, !0)
628
+ ], 14, Jt)),
629
+ t.$slots.watermark ? (i(), p("div", nl, [
630
+ h(t.$slots, "watermark", B(R({ isPrinting: s(xe) || s(Ae) })), void 0, !0)
631
+ ])) : k("", !0),
632
+ C("div", {
633
+ id: `legend-bottom-${y.value}`
634
+ }, null, 8, ul),
635
+ ke.value ? (i(), I(bt, {
636
+ key: 5,
637
+ to: e.value.style.chart.legend.position === "top" ? `#legend-top-${y.value}` : `#legend-bottom-${y.value}`
638
+ }, [
639
+ C("div", {
640
+ ref_key: "chartLegend",
641
+ ref: he
642
+ }, [
643
+ e.value.style.chart.legend.show ? (i(), I(jt, {
644
+ key: `legend_${be.value}`,
645
+ legendSet: Se.value,
646
+ config: rt.value,
647
+ onClickMarker: a[0] || (a[0] = ({ legend: l }) => ae(l.uid))
648
+ }, ue({
649
+ item: c(({ legend: l, index: o }) => [
650
+ s(P) ? k("", !0) : (i(), p("div", {
651
+ key: 0,
652
+ onClick: (r) => ae(l.uid),
653
+ style: N(`opacity:${b.value.includes(l.uid) ? 0.5 : 1}`)
654
+ }, M(l.name) + M(e.value.style.chart.legend.showPercentage || e.value.style.chart.legend.showValue ? ":" : "") + " " + M(e.value.style.chart.legend.showValue ? s(Ue)(
655
+ e.value.style.chart.layout.labels.dataLabels.formatter,
656
+ l.value,
657
+ s(D)({
658
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
659
+ v: l.value,
660
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
661
+ r: e.value.style.chart.legend.roundingValue
662
+ }),
663
+ { datapoint: l, seriesIndex: o }
664
+ ) : "") + " " + M(e.value.style.chart.legend.showPercentage ? b.value.includes(l.uid) ? `${e.value.style.chart.legend.showValue ? "(" : ""}- %${e.value.style.chart.legend.showValue ? ")" : ""}` : `${e.value.style.chart.legend.showValue ? "(" : ""}${isNaN(l.value / $.value) ? "-" : s(D)({
665
+ v: l.value / $.value * 100,
666
+ s: "%",
667
+ r: e.value.style.chart.legend.roundingPercentage
668
+ })}${e.value.style.chart.legend.showValue ? ")" : ""}` : ""), 13, rl))
669
+ ]),
670
+ _: 2
671
+ }, [
672
+ t.$slots.pattern ? {
673
+ name: "legend-pattern",
674
+ fn: c(({ legend: l, index: o }) => [
675
+ J(Gt, {
676
+ shape: l.shape,
677
+ radius: 30,
678
+ stroke: "none",
679
+ plot: { x: 30, y: 30 },
680
+ fill: `url(#pattern_${y.value}_${o})`
681
+ }, null, 8, ["shape", "fill"])
682
+ ]),
683
+ key: "0"
684
+ } : void 0
685
+ ]), 1032, ["legendSet", "config"])) : h(t.$slots, "legend", {
686
+ key: 1,
687
+ legend: Se.value
688
+ }, void 0, !0)
689
+ ], 512)
690
+ ], 8, ["to"])) : k("", !0),
691
+ t.$slots.source ? (i(), p("div", {
692
+ key: 6,
693
+ ref_key: "source",
694
+ ref: ge,
695
+ dir: "auto"
696
+ }, [
697
+ h(t.$slots, "source", {}, void 0, !0)
698
+ ], 512)) : k("", !0),
699
+ J(s(Xe), {
700
+ show: m.value.showTooltip && G.value && b.value.length < w.dataset.length,
701
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
702
+ color: e.value.style.chart.tooltip.color,
703
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
704
+ borderColor: e.value.style.chart.tooltip.borderColor,
705
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
706
+ fontSize: e.value.style.chart.tooltip.fontSize,
707
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
708
+ position: e.value.style.chart.tooltip.position,
709
+ offsetY: e.value.style.chart.tooltip.offsetY,
710
+ parent: _.value,
711
+ content: Q.value,
712
+ isFullscreen: S.value,
713
+ isCustom: e.value.style.chart.tooltip.customFormat && typeof e.value.style.chart.tooltip.customFormat == "function",
714
+ smooth: e.value.style.chart.tooltip.smooth,
715
+ backdropFilter: e.value.style.chart.tooltip.backdropFilter
716
+ }, {
717
+ "tooltip-before": c(() => [
718
+ h(t.$slots, "tooltip-before", B(R({ ...oe.value })), void 0, !0)
719
+ ]),
720
+ "tooltip-after": c(() => [
721
+ h(t.$slots, "tooltip-after", B(R({ ...oe.value })), void 0, !0)
722
+ ]),
723
+ _: 3
724
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter"]),
725
+ ce.value ? (i(), I(kt(E.value.component), Be({ key: 7 }, E.value.props, {
726
+ ref_key: "tableUnit",
727
+ ref: z,
728
+ onClose: a[3] || (a[3] = (l) => m.value.showTable = !1)
729
+ }), ue({
730
+ content: c(() => [
731
+ (i(), I(s(Je), {
732
+ key: `table_${me.value}`,
733
+ colNames: X.value.colNames,
734
+ head: X.value.head,
735
+ body: X.value.body,
736
+ config: X.value.config,
737
+ title: e.value.table.useDialog ? "" : E.value.title,
738
+ withCloseButton: !e.value.table.useDialog,
739
+ onClose: a[2] || (a[2] = (l) => m.value.showTable = !1)
740
+ }, {
741
+ th: c(({ th: l }) => [
742
+ C("div", {
743
+ innerHTML: l,
744
+ style: { display: "flex", "align-items": "center" }
745
+ }, null, 8, il)
746
+ ]),
747
+ td: c(({ td: l }) => [
748
+ Re(M(l.name || l), 1)
749
+ ]),
750
+ _: 1
751
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
752
+ ]),
753
+ _: 2
754
+ }, [
755
+ e.value.table.useDialog ? {
756
+ name: "title",
757
+ fn: c(() => [
758
+ Re(M(E.value.title), 1)
759
+ ]),
760
+ key: "0"
761
+ } : void 0,
762
+ e.value.table.useDialog ? {
763
+ name: "actions",
764
+ fn: c(() => [
765
+ C("button", {
766
+ tabindex: "0",
767
+ class: "vue-ui-user-options-button",
768
+ onClick: a[1] || (a[1] = (l) => se(e.value.userOptions.callbacks.csv))
769
+ }, [
770
+ J(s(Ye), {
771
+ name: "excel",
772
+ stroke: E.value.props.color
773
+ }, null, 8, ["stroke"])
774
+ ])
775
+ ]),
776
+ key: "1"
777
+ } : void 0
778
+ ]), 1040)) : k("", !0),
779
+ s(P) ? (i(), I(zt, { key: 8 })) : k("", !0)
780
+ ], 46, Yt));
781
+ }
782
+ }, Tl = /* @__PURE__ */ Xt(vl, [["__scopeId", "data-v-703adae5"]]);
783
+ export {
784
+ Tl as default
785
+ };