vue-data-ui 2.2.90 → 2.2.92

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 (58) hide show
  1. package/dist/data-table-d-VcuH-r.js +1488 -0
  2. package/dist/{index.es-Cgqo-FBk.js → index.es-Dc9Fd4o6.js} +1 -1
  3. package/dist/legend-DJCYLsl_.js +61 -0
  4. package/dist/style.css +1 -1
  5. package/dist/themes-lgjsYHsH.js +4967 -0
  6. package/dist/title-BF-9Qcni.js +56 -0
  7. package/dist/tooltip-D85WEOKi.js +94 -0
  8. package/dist/user-options-DZgCz8UA.js +415 -0
  9. package/dist/vue-data-ui.js +455 -61
  10. package/dist/vue-ui-3d-bar-DW7kGJSz.js +20360 -0
  11. package/dist/vue-ui-age-pyramid-4hcuKpFY.js +781 -0
  12. package/dist/vue-ui-annotator-C83FVvl8.js +2175 -0
  13. package/dist/vue-ui-candlestick-diclGj95.js +807 -0
  14. package/dist/vue-ui-chestnut-ACetHLdG.js +1049 -0
  15. package/dist/vue-ui-cursor-Rx7UNaYT.js +229 -0
  16. package/dist/vue-ui-dashboard-B3PlN0ks.js +231 -0
  17. package/dist/vue-ui-digits-CxMXID42.js +154 -0
  18. package/dist/vue-ui-donut-DMiwVXNd.js +1534 -0
  19. package/dist/vue-ui-dumbbell-B_X1T8TR.js +621 -0
  20. package/dist/vue-ui-flow-B72wzQ6V.js +451 -0
  21. package/dist/vue-ui-galaxy-DXX5yivT.js +482 -0
  22. package/dist/vue-ui-gauge-Cs9PDurH.js +466 -0
  23. package/dist/vue-ui-heatmap-PcoNSLdN.js +581 -0
  24. package/dist/vue-ui-kpi-DchEmPtB.js +55 -0
  25. package/dist/vue-ui-mini-loader-DltJLkqy.js +131 -0
  26. package/dist/vue-ui-molecule-CWvukBzs.js +746 -0
  27. package/dist/vue-ui-mood-radar-DEfdtIi8.js +544 -0
  28. package/dist/vue-ui-nested-donuts-9URpqgXE.js +768 -0
  29. package/dist/vue-ui-onion-C0eowUT6.js +551 -0
  30. package/dist/vue-ui-parallel-coordinate-plot-Bc_pAaPJ.js +647 -0
  31. package/dist/vue-ui-quadrant-_ddVAm9V.js +1174 -0
  32. package/dist/vue-ui-quick-chart-Cio0hDYO.js +1310 -0
  33. package/dist/vue-ui-radar-Dyg38i33.js +853 -0
  34. package/dist/vue-ui-rating-CE1Lmwd2.js +271 -0
  35. package/dist/vue-ui-relation-circle-BMlB3k3d.js +303 -0
  36. package/dist/vue-ui-rings-BuXeijvb.js +507 -0
  37. package/dist/vue-ui-scatter-B1hZfOua.js +870 -0
  38. package/dist/vue-ui-screenshot-0QXgxzGs.js +160 -0
  39. package/dist/vue-ui-smiley-B7kR7exr.js +763 -0
  40. package/dist/vue-ui-spark-trend-BmL2KiYL.js +245 -0
  41. package/dist/vue-ui-sparkgauge-BMzFv14L.js +158 -0
  42. package/dist/vue-ui-sparkhistogram-DWpOXqHm.js +243 -0
  43. package/dist/vue-ui-sparkstackbar-DB9VQXlc.js +244 -0
  44. package/dist/vue-ui-strip-plot-DyN6P0JO.js +614 -0
  45. package/dist/vue-ui-table-DM3zL89q.js +2180 -0
  46. package/dist/vue-ui-table-heatmap-gWx0Nslu.js +237 -0
  47. package/dist/vue-ui-thermometer-Bcqv5kd_.js +384 -0
  48. package/dist/vue-ui-timer-BIFxjujK.js +451 -0
  49. package/dist/vue-ui-tiremarks-zBwHpED_.js +248 -0
  50. package/dist/vue-ui-treemap-BaplVc_z.js +719 -0
  51. package/dist/vue-ui-vertical-bar-CdK6ZJPM.js +734 -0
  52. package/dist/vue-ui-waffle-COOzH7M3.js +635 -0
  53. package/dist/vue-ui-wheel-BEpuVTBk.js +226 -0
  54. package/dist/vue-ui-word-cloud-DNqxAAiX.js +344 -0
  55. package/dist/vue-ui-xy-_mHq-czW.js +2058 -0
  56. package/dist/vue-ui-xy-canvas-DqX8Gee5.js +1003 -0
  57. package/package.json +1 -1
  58. package/dist/index-DZlxUin4.js +0 -57288
@@ -0,0 +1,507 @@
1
+ import { ref as n, computed as v, onMounted as xe, onBeforeUnmount as _e, openBlock as c, createElementBlock as m, normalizeClass as R, normalizeStyle as x, createVNode as U, createCommentVNode as L, createBlock as V, unref as C, createSlots as Ne, withCtx as h, renderSlot as f, normalizeProps as H, guardReactiveProps as j, Fragment as ae, renderList as se, createElementVNode as w, createTextVNode as ue, toDisplayString as B, nextTick as Fe } from "vue";
2
+ import { _ as Pe, e as ne, f as Se, p as T, i as Le, j as re, k as Ie, g as Oe, h as ie, n as D, X as Me, x as ze, o as Ae, D as Re, y as Ve, z as Be, v as De, w as We } from "./data-table-d-VcuH-r.js";
3
+ import { t as Ee, u as Ge } from "./vue-ui-age-pyramid-4hcuKpFY.js";
4
+ import { t as Ue } from "./themes-lgjsYHsH.js";
5
+ import { u as ve, _ as He } from "./title-BF-9Qcni.js";
6
+ import { U as je } from "./user-options-DZgCz8UA.js";
7
+ import { _ as Xe } from "./tooltip-D85WEOKi.js";
8
+ import { L as qe } from "./legend-DJCYLsl_.js";
9
+ import { u as Je, a as Ke, S as Qe, A as Ye } from "./vue-ui-3d-bar-DW7kGJSz.js";
10
+ const Ze = ["id"], et = ["xmlns", "viewBox"], tt = ["id"], lt = ["stop-color"], ot = ["stop-color"], at = ["stroke", "cx", "cy", "r", "fill"], st = ["stroke-width", "cx", "cy", "r", "fill"], ut = ["cx", "cy", "r", "onMouseenter"], nt = ["onClick"], rt = { key: 0 }, it = { key: 1 }, vt = ["innerHTML"], ct = {
11
+ __name: "vue-ui-rings",
12
+ props: {
13
+ config: {
14
+ type: Object,
15
+ default() {
16
+ return {};
17
+ }
18
+ },
19
+ dataset: {
20
+ type: Array,
21
+ default() {
22
+ return [];
23
+ }
24
+ }
25
+ },
26
+ emits: ["selectLegend"],
27
+ setup(ce, { expose: de, emit: he }) {
28
+ const p = ce, { vue_ui_rings: pe } = Je(), _ = n(!1), I = v(() => !!p.dataset && p.dataset.length), N = n(ne()), ge = n(null), O = n(!1), W = n(""), $ = n(null), X = n(0), F = n(null), q = n(null), J = n(null), e = v(() => {
29
+ const t = ve({
30
+ userConfig: p.config,
31
+ defaultConfig: pe
32
+ });
33
+ return t.theme ? {
34
+ ...ve({
35
+ userConfig: Ue.vue_ui_rings[t.theme] || p.config,
36
+ defaultConfig: t
37
+ }),
38
+ customPalette: Se[t.theme] || T
39
+ } : t;
40
+ }), M = n(null);
41
+ xe(() => {
42
+ if (Le(p.dataset) ? re({
43
+ componentName: "VueUiRings",
44
+ type: "dataset"
45
+ }) : p.dataset.forEach((t, o) => {
46
+ Ie({
47
+ datasetObject: t,
48
+ requiredAttributes: ["name", "values"]
49
+ }).forEach((l) => {
50
+ re({
51
+ componentName: "VueUiRings",
52
+ type: "datasetSerieAttribute",
53
+ property: l,
54
+ index: o
55
+ });
56
+ });
57
+ }), e.value.responsive) {
58
+ const t = Ee(() => {
59
+ const { width: o, height: l } = Ge({
60
+ chart: F.value,
61
+ title: e.value.style.chart.title.text ? q.value : null,
62
+ legend: e.value.style.chart.legend.show ? J.value : null
63
+ });
64
+ u.value.width = o, u.value.height = l;
65
+ });
66
+ M.value = new ResizeObserver(t), M.value.observe(F.value.parentNode);
67
+ }
68
+ setTimeout(() => {
69
+ _.value = !0;
70
+ }, 600);
71
+ }), _e(() => {
72
+ M.value && M.value.disconnect();
73
+ });
74
+ const { isPrinting: fe, isImaging: ye, generatePdf: K, generateImage: Q } = Ke({
75
+ elementId: `rings_${N.value}`,
76
+ fileName: e.value.style.chart.title.text || "vue-ui-rings"
77
+ }), Y = v(() => Oe(e.value.customPalette)), b = n({
78
+ showTable: e.value.table.show,
79
+ showTooltip: e.value.style.chart.tooltip.show
80
+ }), u = n({
81
+ height: 360,
82
+ width: 360
83
+ }), me = v(() => Math.min(u.value.height, u.value.width)), r = n([]);
84
+ function E(t) {
85
+ r.value.includes(t) ? r.value = r.value.filter((o) => o !== t) : r.value.push(t), he("selectLegend", i.value.map((o) => ({
86
+ name: o.name,
87
+ color: o.color,
88
+ value: o.value
89
+ })));
90
+ }
91
+ const be = v(() => Math.max(
92
+ ...z.value.filter((t) => !r.value.includes(t.uid)).map(({ value: t }) => t)
93
+ ));
94
+ function Z(t) {
95
+ return t / be.value;
96
+ }
97
+ const z = v(() => p.dataset.map(({ values: t, name: o, color: l = null }, a) => {
98
+ const s = (t || []).reduce((y, S) => y + S, 0);
99
+ return {
100
+ name: o,
101
+ color: l || ie(l) || Y.value[a] || T[a] || T[a % T.length],
102
+ value: s,
103
+ proportion: s / p.dataset.map((y) => (y.values || []).reduce((S, Te) => S + Te, 0)).reduce((y, S) => y + S, 0),
104
+ uid: ne()
105
+ };
106
+ })), ee = v(() => z.value.map((t) => ({
107
+ ...t,
108
+ shape: "circle",
109
+ opacity: r.value.includes(t.uid) ? 0.5 : 1,
110
+ segregate: () => E(t.uid),
111
+ isSegregated: r.value.includes(t.uid)
112
+ })).toSorted((t, o) => o.value - t.value)), ke = v(() => ({
113
+ cy: "rings-div-legend",
114
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
115
+ color: e.value.style.chart.legend.color,
116
+ fontSize: e.value.style.chart.legend.fontSize,
117
+ paddingBottom: 12,
118
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
119
+ })), g = v(() => z.value.filter((t) => !r.value.includes(t.uid)).map(({ value: t }) => t).reduce((t, o) => t + o, 0)), i = v(() => z.value.filter((t) => !r.value.includes(t.uid)).map(({ name: t, value: o, color: l = null, uid: a }, s) => ({
120
+ uid: a,
121
+ name: t,
122
+ color: l || ie(l) || Y.value[s] || T[s] || T[s % T.length],
123
+ value: o,
124
+ proportion: Z(o),
125
+ percentage: o / g.value * 100,
126
+ strokeWidth: e.value.style.chart.layout.rings.strokeWidth * Z(o)
127
+ })).toSorted((t, o) => o.value - t.value));
128
+ function Ce() {
129
+ return i.value.map(
130
+ ({ name: t, color: o, value: l, absoluteValues: a, percentage: s }) => ({
131
+ name: t,
132
+ color: o,
133
+ value: l,
134
+ absoluteValues: a,
135
+ percentage: s
136
+ })
137
+ );
138
+ }
139
+ const d = v(() => me.value - e.value.style.chart.layout.rings.strokeWidth * 2), G = n(null);
140
+ function we(t, o) {
141
+ if (r.value.length === p.dataset.length) return;
142
+ G.value = {
143
+ datapoint: o,
144
+ seriesIndex: t,
145
+ series: i.value,
146
+ config: e.value
147
+ }, $.value = t;
148
+ const l = i.value[t], a = e.value.style.chart.tooltip.customFormat;
149
+ if (Ve(a) && Be(() => a({
150
+ seriesIndex: t,
151
+ datapoint: o,
152
+ series: i.value,
153
+ config: e.value
154
+ })))
155
+ W.value = a({
156
+ seriesIndex: t,
157
+ datapoint: o,
158
+ series: i.value,
159
+ config: e.value
160
+ });
161
+ else {
162
+ let s = "";
163
+ s += `<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>`, s += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${l.color}" /></svg>`, e.value.style.chart.tooltip.showValue && (s += `<b>${D({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: l.value, s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.style.chart.tooltip.roundingValue })}</b>`), e.value.style.chart.tooltip.showPercentage && (e.value.style.chart.tooltip.showValue ? s += `<span>(${(l.value / g.value * 100).toFixed(
164
+ e.value.style.chart.tooltip.roundingPercentage
165
+ )}%)</span></div>` : s += `<b>${(l.value / g.value * 100).toFixed(
166
+ e.value.style.chart.tooltip.roundingPercentage
167
+ )}%</b></div>`), W.value = s;
168
+ }
169
+ O.value = !0;
170
+ }
171
+ const k = v(() => {
172
+ const t = i.value.map((l) => ({
173
+ name: l.name,
174
+ color: l.color
175
+ })), o = i.value.map((l) => l.value);
176
+ return { head: t, body: o };
177
+ }), A = v(() => {
178
+ const t = [
179
+ ' <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>',
180
+ D({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: g.value, s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
181
+ "100%"
182
+ ], o = k.value.head.map((s, y) => [
183
+ {
184
+ color: s.color,
185
+ name: s.name
186
+ },
187
+ D({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: k.value.body[y], s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
188
+ isNaN(k.value.body[y] / g.value) ? "-" : (k.value.body[y] / g.value * 100).toFixed(e.value.table.td.roundingPercentage) + "%"
189
+ ]), l = {
190
+ th: {
191
+ backgroundColor: e.value.table.th.backgroundColor,
192
+ color: e.value.table.th.color,
193
+ outline: e.value.table.th.outline
194
+ },
195
+ td: {
196
+ backgroundColor: e.value.table.td.backgroundColor,
197
+ color: e.value.table.td.color,
198
+ outline: e.value.table.td.outline
199
+ },
200
+ breakpoint: e.value.table.responsiveBreakpoint
201
+ }, a = [
202
+ e.value.table.columnNames.series,
203
+ e.value.table.columnNames.value,
204
+ e.value.table.columnNames.percentage
205
+ ];
206
+ return {
207
+ head: t,
208
+ body: o,
209
+ config: l,
210
+ colNames: a
211
+ };
212
+ });
213
+ function te() {
214
+ Fe(() => {
215
+ const t = k.value.head.map((a, s) => [[
216
+ a.name
217
+ ], [k.value.body[s]], [isNaN(k.value.body[s] / g.value) ? "-" : k.value.body[s] / g.value * 100]]), o = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [[""], ["val"], ["%"]]].concat(t), l = De(o);
218
+ We({ csvContent: l, title: e.value.style.chart.title.text || "vue-ui-rings" });
219
+ });
220
+ }
221
+ const P = n(!1);
222
+ function $e(t) {
223
+ P.value = t, X.value += 1;
224
+ }
225
+ function le() {
226
+ b.value.showTable = !b.value.showTable;
227
+ }
228
+ function oe() {
229
+ b.value.showTooltip = !b.value.showTooltip;
230
+ }
231
+ return de({
232
+ getData: Ce,
233
+ generatePdf: K,
234
+ generateCsv: te,
235
+ generateImage: Q,
236
+ toggleTable: le,
237
+ toggleTooltip: oe
238
+ }), (t, o) => (c(), m("div", {
239
+ ref_key: "ringsChart",
240
+ ref: F,
241
+ class: R(`vue-ui-rings ${P.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
242
+ style: x(`font-family:${e.value.style.fontFamily};text-align:center;width:100%;background:${e.value.style.chart.backgroundColor};${e.value.responsive ? "height: 100%" : ""}`),
243
+ id: `rings_${N.value}`,
244
+ onMouseleave: o[3] || (o[3] = (l) => {
245
+ $.value = null, O.value = !1;
246
+ })
247
+ }, [
248
+ e.value.style.chart.title.text ? (c(), m("div", {
249
+ key: 0,
250
+ ref_key: "chartTitle",
251
+ ref: q,
252
+ style: x(`width:100%;background:${e.value.style.chart.backgroundColor}`)
253
+ }, [
254
+ U(He, {
255
+ config: {
256
+ title: {
257
+ cy: "rings-div-title",
258
+ ...e.value.style.chart.title
259
+ },
260
+ subtitle: {
261
+ cy: "rings-div-subtitle",
262
+ ...e.value.style.chart.title.subtitle
263
+ }
264
+ }
265
+ }, null, 8, ["config"])
266
+ ], 4)) : L("", !0),
267
+ e.value.userOptions.show && I.value ? (c(), V(je, {
268
+ ref_key: "details",
269
+ ref: ge,
270
+ key: `user_options_${X.value}`,
271
+ backgroundColor: e.value.style.chart.backgroundColor,
272
+ color: e.value.style.chart.color,
273
+ isPrinting: C(fe),
274
+ isImaging: C(ye),
275
+ uid: N.value,
276
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.chart.tooltip.show,
277
+ hasPdf: e.value.userOptions.buttons.pdf,
278
+ hasXls: e.value.userOptions.buttons.csv,
279
+ hasImg: e.value.userOptions.buttons.img,
280
+ hasTable: e.value.userOptions.buttons.table,
281
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
282
+ isTooltip: b.value.showTooltip,
283
+ isFullscreen: P.value,
284
+ titles: { ...e.value.userOptions.buttonTitles },
285
+ chartElement: F.value,
286
+ onToggleFullscreen: $e,
287
+ onGeneratePdf: C(K),
288
+ onGenerateCsv: te,
289
+ onGenerateImage: C(Q),
290
+ onToggleTable: le,
291
+ onToggleTooltip: oe
292
+ }, Ne({ _: 2 }, [
293
+ t.$slots.optionTooltip ? {
294
+ name: "optionTooltip",
295
+ fn: h(() => [
296
+ f(t.$slots, "optionTooltip", {}, void 0, !0)
297
+ ]),
298
+ key: "0"
299
+ } : void 0,
300
+ t.$slots.optionPdf ? {
301
+ name: "optionPdf",
302
+ fn: h(() => [
303
+ f(t.$slots, "optionPdf", {}, void 0, !0)
304
+ ]),
305
+ key: "1"
306
+ } : void 0,
307
+ t.$slots.optionCsv ? {
308
+ name: "optionCsv",
309
+ fn: h(() => [
310
+ f(t.$slots, "optionCsv", {}, void 0, !0)
311
+ ]),
312
+ key: "2"
313
+ } : void 0,
314
+ t.$slots.optionImg ? {
315
+ name: "optionImg",
316
+ fn: h(() => [
317
+ f(t.$slots, "optionImg", {}, void 0, !0)
318
+ ]),
319
+ key: "3"
320
+ } : void 0,
321
+ t.$slots.optionTable ? {
322
+ name: "optionTable",
323
+ fn: h(() => [
324
+ f(t.$slots, "optionTable", {}, void 0, !0)
325
+ ]),
326
+ key: "4"
327
+ } : void 0,
328
+ t.$slots.optionFullscreen ? {
329
+ name: "optionFullscreen",
330
+ fn: h(({ toggleFullscreen: l, isFullscreen: a }) => [
331
+ f(t.$slots, "optionFullscreen", H(j({ toggleFullscreen: l, isFullscreen: a })), void 0, !0)
332
+ ]),
333
+ key: "5"
334
+ } : void 0
335
+ ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasXls", "hasImg", "hasTable", "hasFullscreen", "isTooltip", "isFullscreen", "titles", "chartElement", "onGeneratePdf", "onGenerateImage"])) : L("", !0),
336
+ I.value ? (c(), m("svg", {
337
+ key: 2,
338
+ xmlns: C(Me),
339
+ class: R({ "vue-data-ui-fullscreen--on": P.value, "vue-data-ui-fulscreen--off": !P.value }),
340
+ viewBox: `0 0 ${u.value.width <= 0 ? 10 : u.value.width} ${u.value.height <= 0 ? 10 : u.value.height}`,
341
+ style: x(`max-width:100%;overflow:visible;background:${e.value.style.chart.backgroundColor};color:${e.value.style.chart.color}`)
342
+ }, [
343
+ (c(!0), m(ae, null, se(i.value, (l, a) => (c(), m("radialGradient", {
344
+ cx: "50%",
345
+ cy: "30%",
346
+ r: "50%",
347
+ fx: "50%",
348
+ fy: "50%",
349
+ id: `gradient_${N.value}_${a}`
350
+ }, [
351
+ w("stop", {
352
+ offset: "0%",
353
+ "stop-color": `${C(ze)(l.color, 0.05)}${C(Ae)[100 - e.value.style.chart.layout.rings.gradient.intensity]}`
354
+ }, null, 8, lt),
355
+ w("stop", {
356
+ offset: "100%",
357
+ "stop-color": l.color
358
+ }, null, 8, ot)
359
+ ], 8, tt))), 256)),
360
+ (c(!0), m(ae, null, se(i.value, (l, a) => (c(), m("g", null, [
361
+ w("circle", {
362
+ class: R({
363
+ "vue-ui-rings-item": _.value && e.value.useCssAnimation,
364
+ "vue-rings-item-onload": !_.value && e.value.useCssAnimation,
365
+ "vue-ui-rings-opacity": $.value !== null && $.value !== a
366
+ }),
367
+ style: x(`animation-delay:${a * 100}ms`),
368
+ stroke: e.value.style.chart.layout.rings.stroke,
369
+ cx: u.value.width / 2,
370
+ cy: a === 0 ? u.value.height / 2 : u.value.height / 2 + d.value * i.value[0].proportion / 2 - d.value * l.proportion / 2 - 2 * (a + 1),
371
+ r: d.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : d.value * l.proportion / 2 * 0.9,
372
+ fill: e.value.style.chart.layout.rings.gradient.underlayerColor
373
+ }, null, 14, at),
374
+ w("circle", {
375
+ class: R({
376
+ "vue-ui-rings-item": _.value && e.value.useCssAnimation,
377
+ "vue-rings-item-onload": !_.value && e.value.useCssAnimation,
378
+ "vue-ui-rings-shadow": e.value.style.chart.layout.rings.useShadow,
379
+ "vue-ui-rings-blur": $.value !== null && $.value !== a
380
+ }),
381
+ style: x(`animation-delay:${a * 100}ms`),
382
+ stroke: "none",
383
+ "stroke-width": l.strokeWidth < 0.5 ? 0.5 : l.strokeWidth,
384
+ cx: u.value.width / 2,
385
+ cy: a === 0 ? u.value.height / 2 : u.value.height / 2 + d.value * i.value[0].proportion / 2 - d.value * l.proportion / 2 - 2 * (a + 1),
386
+ r: d.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : d.value * l.proportion / 2 * 0.9,
387
+ fill: e.value.style.chart.layout.rings.gradient.show ? `url(#gradient_${N.value}_${a})` : l.color
388
+ }, null, 14, st),
389
+ w("circle", {
390
+ "data-cy-trap": "",
391
+ stroke: "none",
392
+ cx: u.value.width / 2,
393
+ cy: a === 0 ? u.value.height / 2 : u.value.height / 2 + d.value * i.value[0].proportion / 2 - d.value * l.proportion / 2 - 2 * (a + 1),
394
+ r: d.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : d.value * l.proportion / 2 * 0.9,
395
+ fill: "transparent",
396
+ onMouseenter: (s) => we(a, l),
397
+ onMouseleave: o[0] || (o[0] = (s) => {
398
+ $.value = null, O.value = !1;
399
+ })
400
+ }, null, 40, ut)
401
+ ]))), 256)),
402
+ f(t.$slots, "svg", { svg: u.value }, void 0, !0)
403
+ ], 14, et)) : L("", !0),
404
+ I.value ? L("", !0) : (c(), V(Qe, {
405
+ key: 3,
406
+ config: {
407
+ type: "rings",
408
+ style: {
409
+ backgroundColor: e.value.style.chart.backgroundColor,
410
+ rings: {
411
+ color: "#CCCCCC"
412
+ }
413
+ }
414
+ }
415
+ }, null, 8, ["config"])),
416
+ w("div", {
417
+ ref_key: "chartLegend",
418
+ ref: J
419
+ }, [
420
+ e.value.style.chart.legend.show ? (c(), V(qe, {
421
+ key: 0,
422
+ legendSet: ee.value,
423
+ config: ke.value,
424
+ onClickMarker: o[1] || (o[1] = ({ legend: l }) => E(l.uid))
425
+ }, {
426
+ item: h(({ legend: l }) => [
427
+ w("div", {
428
+ "data-cy-legend-item": "",
429
+ onClick: (a) => E(l.uid),
430
+ style: x(`opacity:${r.value.includes(l.uid) ? 0.5 : 1}`)
431
+ }, [
432
+ ue(B(l.name) + ": " + B(C(D)({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: l.value, s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.style.chart.legend.roundingValue })) + " ", 1),
433
+ r.value.includes(l.uid) ? (c(), m("span", it, " ( - % ) ")) : (c(), m("span", rt, " (" + B(isNaN(l.value / g.value) ? "-" : (l.value / g.value * 100).toFixed(e.value.style.chart.legend.roundingPercentage)) + "%) ", 1))
434
+ ], 12, nt)
435
+ ]),
436
+ _: 1
437
+ }, 8, ["legendSet", "config"])) : f(t.$slots, "legend", {
438
+ key: 1,
439
+ legend: ee.value
440
+ }, void 0, !0)
441
+ ], 512),
442
+ U(Xe, {
443
+ show: b.value.showTooltip && O.value && r.value.length < p.dataset.length,
444
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
445
+ color: e.value.style.chart.tooltip.color,
446
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
447
+ borderColor: e.value.style.chart.tooltip.borderColor,
448
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
449
+ fontSize: e.value.style.chart.tooltip.fontSize,
450
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
451
+ parent: F.value,
452
+ content: W.value,
453
+ isCustom: e.value.style.chart.tooltip.customFormat && typeof e.value.style.chart.tooltip.customFormat == "function"
454
+ }, {
455
+ "tooltip-before": h(() => [
456
+ f(t.$slots, "tooltip-before", H(j({ ...G.value })), void 0, !0)
457
+ ]),
458
+ "tooltip-after": h(() => [
459
+ f(t.$slots, "tooltip-after", H(j({ ...G.value })), void 0, !0)
460
+ ]),
461
+ _: 3
462
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "parent", "content", "isCustom"]),
463
+ I.value ? (c(), V(Ye, {
464
+ key: 4,
465
+ hideDetails: "",
466
+ config: {
467
+ open: b.value.showTable,
468
+ maxHeight: 1e4,
469
+ body: {
470
+ backgroundColor: e.value.style.chart.backgroundColor,
471
+ color: e.value.style.chart.color
472
+ },
473
+ head: {
474
+ backgroundColor: e.value.style.chart.backgroundColor,
475
+ color: e.value.style.chart.color
476
+ }
477
+ }
478
+ }, {
479
+ content: h(() => [
480
+ U(Re, {
481
+ colNames: A.value.colNames,
482
+ head: A.value.head,
483
+ body: A.value.body,
484
+ config: A.value.config,
485
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? ` : ${e.value.style.chart.title.subtitle.text}` : ""}`,
486
+ onClose: o[2] || (o[2] = (l) => b.value.showTable = !1)
487
+ }, {
488
+ th: h(({ th: l }) => [
489
+ w("div", {
490
+ innerHTML: l,
491
+ style: { display: "flex", "align-items": "center" }
492
+ }, null, 8, vt)
493
+ ]),
494
+ td: h(({ td: l }) => [
495
+ ue(B(l.name || l), 1)
496
+ ]),
497
+ _: 1
498
+ }, 8, ["colNames", "head", "body", "config", "title"])
499
+ ]),
500
+ _: 1
501
+ }, 8, ["config"])) : L("", !0)
502
+ ], 46, Ze));
503
+ }
504
+ }, Ct = /* @__PURE__ */ Pe(ct, [["__scopeId", "data-v-956d6194"]]);
505
+ export {
506
+ Ct as default
507
+ };