vue-data-ui 2.12.3 → 2.12.5

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 (88) hide show
  1. package/dist/{Arrow-7DZD153U.js → Arrow-CD7YT-M0.js} +1 -1
  2. package/dist/BaseDraggableDialog-BjFEob7i.js +186 -0
  3. package/dist/{BaseIcon-4Tt-jDsF.js → BaseIcon-CgSWwnK7.js} +1 -1
  4. package/dist/{ColorPicker-D9cQ_1h3.js → ColorPicker-w8R8Tqdv.js} +3 -3
  5. package/dist/{DataTable-CXRbXtrU.js → DataTable-CicthvOV.js} +2 -2
  6. package/dist/{Legend-CMVT8Hmn.js → Legend-0UY0Mmli.js} +4 -4
  7. package/dist/{PackageVersion-DrcIKw3H.js → PackageVersion-Cw2caN1c.js} +1 -1
  8. package/dist/{PenAndPaper-B52M1Af-.js → PenAndPaper-DLsvRwoD.js} +3 -3
  9. package/dist/{Shape-DsC3hyrC.js → Shape-DICeBEtN.js} +1 -1
  10. package/dist/{Slicer-9d1_C4bi.js → Slicer-D1nsbsWE.js} +2 -2
  11. package/dist/{Title-9qKNVCMA.js → Title-xO1jFsSw.js} +1 -1
  12. package/dist/{Tooltip-n2JxyMqg.js → Tooltip-LKe8L-Mg.js} +1 -1
  13. package/dist/{dom-to-png-mBFxJrIS.js → dom-to-png-CS4NRYd_.js} +1 -1
  14. package/dist/{img-DrpWNEaa.js → img-CsXjm5I4.js} +1 -1
  15. package/dist/{index-CK9QG5R4.js → index-vjCxtaM0.js} +441 -393
  16. package/dist/{pdf-BalkhgZX.js → pdf-DHexTTpK.js} +1 -1
  17. package/dist/style.css +1 -1
  18. package/dist/types/vue-data-ui.d.cts +12 -0
  19. package/dist/types/vue-data-ui.d.ts +12 -0
  20. package/dist/{useNestedProp-X5zYwXdP.js → useNestedProp-Du1hnYFA.js} +1 -1
  21. package/dist/{usePrinter-BZsCVIwN.js → usePrinter-CcgJXHIK.js} +3 -3
  22. package/dist/{vue-data-ui-65FSOU9n.js → vue-data-ui-BOrA3Tc9.js} +63 -63
  23. package/dist/vue-data-ui.js +23 -23
  24. package/dist/{vue-ui-3d-bar-CaLDkBVj.js → vue-ui-3d-bar-Z8yAd4bw.js} +9 -9
  25. package/dist/{vue-ui-accordion-BA3mkouQ.js → vue-ui-accordion-CAN430Oy.js} +3 -3
  26. package/dist/{vue-ui-age-pyramid-DdlGpZy9.js → vue-ui-age-pyramid-C6PZU9Ez.js} +10 -10
  27. package/dist/{vue-ui-annotator-CKvRES98.js → vue-ui-annotator-CqoDLx3t.js} +2 -2
  28. package/dist/{vue-ui-bullet-CdcJXA6l.js → vue-ui-bullet-DZC3aY3d.js} +8 -8
  29. package/dist/{vue-ui-candlestick-CkllTOUY.js → vue-ui-candlestick-B5mq_lgW.js} +11 -11
  30. package/dist/{vue-ui-carousel-table-D3vCB81N.js → vue-ui-carousel-table-CBwerU49.js} +4 -4
  31. package/dist/{vue-ui-chestnut-BE16kanb.js → vue-ui-chestnut-COyOAY28.js} +8 -8
  32. package/dist/{vue-ui-chord-BpsjJuE7.js → vue-ui-chord-Cw0F_jHM.js} +12 -12
  33. package/dist/{vue-ui-circle-pack-C438GSXx.js → vue-ui-circle-pack-BtpaZLYs.js} +9 -9
  34. package/dist/{vue-ui-cursor-a30lAfyb.js → vue-ui-cursor-CWXqmlVy.js} +2 -2
  35. package/dist/{vue-ui-dashboard-BkRc89ac.js → vue-ui-dashboard-Ba2tF4md.js} +62 -62
  36. package/dist/{vue-ui-digits-C3f9FAdw.js → vue-ui-digits-BV7yyUdY.js} +2 -2
  37. package/dist/{vue-ui-donut-Dwsm3xe8.js → vue-ui-donut-CRdQFQgA.js} +103 -103
  38. package/dist/vue-ui-donut-evolution-De3-5OgR.js +871 -0
  39. package/dist/{vue-ui-dumbbell-CIICXHWw.js → vue-ui-dumbbell-SDCcLJIc.js} +10 -10
  40. package/dist/{vue-ui-flow-Bs4GfLdc.js → vue-ui-flow-CrqGSDNK.js} +24 -24
  41. package/dist/{vue-ui-funnel-CASIJPoW.js → vue-ui-funnel-CcDOoxp8.js} +9 -9
  42. package/dist/{vue-ui-galaxy-BoTSH1dz.js → vue-ui-galaxy-jlDp0DRJ.js} +32 -32
  43. package/dist/{vue-ui-gauge-Cfvwu5jW.js → vue-ui-gauge-8t8rWb1C.js} +19 -19
  44. package/dist/{vue-ui-gizmo-HB1PEZIT.js → vue-ui-gizmo-CFwdrMYP.js} +3 -3
  45. package/dist/{vue-ui-heatmap-BXQslQxq.js → vue-ui-heatmap-BT-mIeZp.js} +32 -32
  46. package/dist/{vue-ui-history-plot-qW_cLH2J.js → vue-ui-history-plot-crLloc7J.js} +11 -11
  47. package/dist/{vue-ui-kpi-CHTFlQmm.js → vue-ui-kpi-96v4ZIYo.js} +3 -3
  48. package/dist/{vue-ui-mini-loader-CZFa8WdC.js → vue-ui-mini-loader-rBHBxNIT.js} +2 -2
  49. package/dist/{vue-ui-molecule-2XWcGAxa.js → vue-ui-molecule-DSr_bHGG.js} +22 -22
  50. package/dist/{vue-ui-mood-radar-B0wwOAcZ.js → vue-ui-mood-radar-DrVSXIY4.js} +11 -11
  51. package/dist/{vue-ui-nested-donuts-CD47r6S8.js → vue-ui-nested-donuts-C9Ah9lgv.js} +56 -56
  52. package/dist/{vue-ui-onion-BrefEoKM.js → vue-ui-onion-DwNPyn4X.js} +11 -11
  53. package/dist/{vue-ui-parallel-coordinate-plot-Ci9k0ZMR.js → vue-ui-parallel-coordinate-plot-tSuK6xWu.js} +36 -36
  54. package/dist/{vue-ui-quadrant-DRd3t6uQ.js → vue-ui-quadrant-C0Kaoo7K.js} +41 -41
  55. package/dist/{vue-ui-quick-chart-DVyuMMNZ.js → vue-ui-quick-chart-xMh_Ygct.js} +9 -9
  56. package/dist/{vue-ui-radar-BMlo5wj_.js → vue-ui-radar-C1jSDQt_.js} +12 -12
  57. package/dist/{vue-ui-rating-BZLepZbE.js → vue-ui-rating-6Kb7hsKF.js} +11 -11
  58. package/dist/{vue-ui-relation-circle-BMWf_-ts.js → vue-ui-relation-circle-fh0Hl9m0.js} +7 -7
  59. package/dist/vue-ui-ridgeline-BBvPVQjC.js +924 -0
  60. package/dist/{vue-ui-rings-CyN6PZZw.js → vue-ui-rings-B92cXv7f.js} +12 -12
  61. package/dist/{vue-ui-scatter-Dm24n28E.js → vue-ui-scatter-Bt1aty87.js} +60 -60
  62. package/dist/{vue-ui-skeleton-CCPLO_mW.js → vue-ui-skeleton-DfOIDTJM.js} +19 -19
  63. package/dist/{vue-ui-smiley-D5GLTCkV.js → vue-ui-smiley-sVgBnkbx.js} +2 -2
  64. package/dist/{vue-ui-spark-trend-DM-YH2Vz.js → vue-ui-spark-trend-D6uzJ4Qd.js} +5 -5
  65. package/dist/{vue-ui-sparkbar-Dp-Vp0Bz.js → vue-ui-sparkbar-D4c2EE7J.js} +4 -4
  66. package/dist/{vue-ui-sparkgauge-AhGrljqS.js → vue-ui-sparkgauge-DaQ6iz98.js} +9 -9
  67. package/dist/{vue-ui-sparkhistogram-C_WzbJka.js → vue-ui-sparkhistogram-D_YnmM2T.js} +5 -5
  68. package/dist/{vue-ui-sparkline-D3TgSaqu.js → vue-ui-sparkline-C2HuTMDz.js} +4 -4
  69. package/dist/{vue-ui-sparkstackbar-Dx1gnUfv.js → vue-ui-sparkstackbar-DecnmqgJ.js} +5 -5
  70. package/dist/{vue-ui-stackbar-kPpS5ytk.js → vue-ui-stackbar-D1eNs1j_.js} +13 -13
  71. package/dist/{vue-ui-strip-plot-DMgQkOFL.js → vue-ui-strip-plot-iPZ8Hhmr.js} +11 -11
  72. package/dist/{vue-ui-table-DhN_orHh.js → vue-ui-table-BFjE28sw.js} +3 -3
  73. package/dist/{vue-ui-table-heatmap-CghBmNfB.js → vue-ui-table-heatmap-DipFDu39.js} +4 -4
  74. package/dist/{vue-ui-table-sparkline-DwZ6dDd7.js → vue-ui-table-sparkline-CGAecOZh.js} +5 -5
  75. package/dist/{vue-ui-thermometer-Bk2nGclO.js → vue-ui-thermometer-Cx_yr-hs.js} +7 -7
  76. package/dist/{vue-ui-timer-C7G-xWU0.js → vue-ui-timer-ClVmS8MH.js} +5 -5
  77. package/dist/{vue-ui-tiremarks-DInEjYlc.js → vue-ui-tiremarks-4Sa3RCSv.js} +7 -7
  78. package/dist/{vue-ui-treemap-BKvkNCsR.js → vue-ui-treemap-CD5pPg7v.js} +12 -12
  79. package/dist/{vue-ui-vertical-bar-DiQI4bPT.js → vue-ui-vertical-bar-BHYCnFEN.js} +12 -12
  80. package/dist/{vue-ui-waffle-z1dbL3gf.js → vue-ui-waffle-DEPUbrOt.js} +27 -27
  81. package/dist/{vue-ui-wheel-cH-wbQMg.js → vue-ui-wheel-qU0bgJsi.js} +7 -7
  82. package/dist/{vue-ui-word-cloud-L7hmGLCt.js → vue-ui-word-cloud-z2ZguOdy.js} +49 -49
  83. package/dist/{vue-ui-world-DNbRBwbT.js → vue-ui-world-DStJ5i0i.js} +11 -11
  84. package/dist/{vue-ui-xy-CHkLFwbF.js → vue-ui-xy-CEop49z6.js} +16 -16
  85. package/dist/{vue-ui-xy-canvas-CXZZH9wb.js → vue-ui-xy-canvas-DV0BVdZb.js} +12 -12
  86. package/package.json +1 -1
  87. package/dist/vue-ui-donut-evolution-HVTx2TzC.js +0 -948
  88. package/dist/vue-ui-ridgeline-DoNIDa-r.js +0 -1102
@@ -1,948 +0,0 @@
1
- import { computed as x, ref as b, onMounted as vt, watch as Ue, createElementBlock as o, openBlock as a, unref as c, normalizeStyle as J, normalizeClass as O, createBlock as D, createCommentVNode as v, renderSlot as S, createSlots as dt, withCtx as $, normalizeProps as B, guardReactiveProps as G, createVNode as ht, createElementVNode as y, Fragment as k, renderList as _, toDisplayString as m, withKeys as yt, createTextVNode as We, nextTick as j } from "vue";
2
- import { u as ft, o as gt, e as Q, g as bt, c as Xe, t as mt, p as ee, a as pt, C as Be, b as xt, d as ve, H as kt, D as Ge, m as de, X as _t, s as Y, E as Ct, i as he, f as te, j as je, k as Ye, n as le, q as wt, r as zt, I as qe } from "./index-CK9QG5R4.js";
3
- import { _ as Lt } from "./Title-9qKNVCMA.js";
4
- import { u as St, U as $t } from "./usePrinter-BZsCVIwN.js";
5
- import { D as At } from "./DataTable-CXRbXtrU.js";
6
- import { L as It } from "./Legend-CMVT8Hmn.js";
7
- import Nt from "./vue-ui-skeleton-CCPLO_mW.js";
8
- import { S as Ft } from "./Slicer-9d1_C4bi.js";
9
- import Ot from "./vue-ui-accordion-BA3mkouQ.js";
10
- import { u as Ke } from "./useNestedProp-X5zYwXdP.js";
11
- import { _ as Pt } from "./PackageVersion-DrcIKw3H.js";
12
- import { _ as Dt } from "./PenAndPaper-B52M1Af-.js";
13
- import { u as Et } from "./useUserOptionState-BIvW1Kz7.js";
14
- import { u as Tt } from "./useChartAccessibility-BWojgys7.js";
15
- import { _ as Vt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
16
- const Ht = ["id"], Rt = ["xmlns", "viewBox"], Mt = ["x", "y", "width", "height"], Ut = ["id"], Wt = ["stop-color"], Xt = ["stop-color"], Bt = ["id"], Gt = ["stop-color"], jt = ["stop-color"], Yt = ["stop-color"], qt = { key: 1 }, Kt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Zt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Jt = { key: 0 }, Qt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], el = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], tl = ["x", "y", "font-size", "fill", "font-weight"], ll = ["text-anchor", "font-size", "fill", "transform"], al = ["x1", "y1", "x2", "y2", "stroke", "stroke-width"], ol = { key: 1 }, ul = ["cx", "cy", "r", "fill"], sl = { key: 0 }, nl = { key: 0 }, rl = ["d", "stroke"], il = ["text-anchor", "x", "y", "fill"], cl = ["cx", "cy", "r", "fill"], vl = { key: 0 }, dl = ["cx", "cy", "fill"], hl = { key: 1 }, yl = ["d", "fill", "stroke"], fl = { key: 2 }, gl = ["d", "fill", "stroke"], bl = ["x", "y", "font-size", "fill"], ml = ["x", "y", "width", "fill", "onClick"], pl = ["x", "y", "width", "height", "onMouseenter", "onClick"], xl = {
17
- key: 4,
18
- "data-cy-zoom": "",
19
- class: "vue-ui-donut-evolution-dialog"
20
- }, kl = ["x", "y", "width", "height", "fill"], _l = ["x1", "y1", "x2", "y2", "stroke"], Cl = ["x1", "y2", "x2", "y1", "stroke"], wl = ["cx", "cy", "r"], zl = ["d", "stroke"], Ll = ["cx", "cy", "r", "fill"], Sl = ["d", "fill", "stroke"], $l = { class: "vue-ui-donut-evolution-focus" }, Al = ["text-anchor", "x", "y", "fill"], Il = ["cx", "cy", "r", "fill"], Nl = ["cx", "cy", "r", "fill"], Fl = ["x", "y", "fill"], Ol = ["x", "y", "font-size", "fill"], Pl = {
21
- key: 5,
22
- class: "vue-data-ui-watermark"
23
- }, Dl = ["onClick"], El = { key: 0 }, Tl = { key: 1 }, Vl = {
24
- key: 9,
25
- ref: "source",
26
- dir: "auto"
27
- }, Hl = { key: 0 }, Rl = { key: 1 }, Ml = {
28
- __name: "vue-ui-donut-evolution",
29
- props: {
30
- config: {
31
- type: Object,
32
- default() {
33
- return {};
34
- }
35
- },
36
- dataset: {
37
- type: Array,
38
- default() {
39
- return [];
40
- }
41
- }
42
- },
43
- emits: ["selectLegend"],
44
- setup(Ze, { expose: Je, emit: Qe }) {
45
- const { vue_ui_donut_evolution: et } = ft(), p = Ze, q = x(() => !!p.dataset && p.dataset.length), d = b({
46
- start: 0,
47
- end: Math.max(...p.dataset.map((l) => l.values.length))
48
- });
49
- function ye() {
50
- fe();
51
- }
52
- const V = b(null);
53
- async function fe() {
54
- (e.value.style.chart.zoom.startIndex !== null || e.value.style.chart.zoom.endIndex !== null) && V.value ? (e.value.style.chart.zoom.startIndex !== null && (await j(), await j(), V.value && V.value.setStartValue(e.value.style.chart.zoom.startIndex)), e.value.style.chart.zoom.endIndex !== null && (await j(), await j(), V.value && V.value.setEndValue(tt(e.value.style.chart.zoom.endIndex + 1)))) : (d.value = {
55
- start: 0,
56
- end: T.value
57
- }, pe.value += 1);
58
- }
59
- function tt(l) {
60
- const u = T.value;
61
- return l > u ? u : l < 0 || e.value.style.chart.zoom.startIndex !== null && l < e.value.style.chart.zoom.startIndex ? e.value.style.chart.zoom.startIndex !== null ? e.value.style.chart.zoom.startIndex + 1 : 1 : l;
62
- }
63
- vt(() => {
64
- ge();
65
- });
66
- function ge() {
67
- gt(p.dataset) ? Q({
68
- componentName: "VueUiDonutEvolution",
69
- type: "dataset"
70
- }) : p.dataset.length && p.dataset.forEach((l, u) => {
71
- bt({
72
- datasetObject: l,
73
- requiredAttributes: ["name", "values"]
74
- }).forEach((t) => {
75
- Q({
76
- componentName: "VueUiDonutEvolution",
77
- type: "datasetSerieAttribute",
78
- property: t,
79
- index: u
80
- });
81
- });
82
- }), fe();
83
- }
84
- const E = b(Xe()), C = b([]), g = b(null), ae = b(null), A = b(!1), I = b(null), be = b(null), lt = b(null), me = b(0), pe = b(0), xe = b(0), ke = b(0), _e = b(0), Ce = Qe, e = x({
85
- get: () => Se(),
86
- set: (l) => l
87
- }), { userOptionsVisible: oe, setUserOptionsVisibility: we, keepUserOptionState: ze } = Et({ config: e.value }), { svgRef: Le } = Tt({ config: e.value.style.chart.title });
88
- function Se() {
89
- const l = Ke({
90
- userConfig: p.config,
91
- defaultConfig: et
92
- });
93
- let u = {};
94
- return l.theme ? u = {
95
- ...Ke({
96
- userConfig: pt.vue_ui_donut_evolution[l.theme] || p.config,
97
- defaultConfig: l
98
- }),
99
- customPalette: mt[l.theme] || ee
100
- } : u = l, p.config && Be(p.config, "style.chart.zoom.startIndex") ? u.style.chart.zoom.startIndex = p.config.style.chart.zoom.startIndex : u.style.chart.zoom.startIndex = null, p.config && Be(p.config, "style.chart.zoom.endIndex") ? u.style.chart.zoom.endIndex = p.config.style.chart.zoom.endIndex : u.style.chart.zoom.endIndex = null, u;
101
- }
102
- Ue(() => p.config, (l) => {
103
- e.value = Se(), oe.value = !e.value.userOptions.showOnChartHover, ge(), xe.value += 1, ke.value += 1, _e.value += 1, U.value.showTable = e.value.table.show;
104
- }, { deep: !0 }), Ue(() => p.dataset, (l) => {
105
- ye();
106
- }, { deep: !0 });
107
- const { isPrinting: $e, isImaging: Ae, generatePdf: Ie, generateImage: Ne } = St({
108
- elementId: E.value,
109
- fileName: e.value.style.chart.title.text || "vue-ui-donut-evolution",
110
- options: e.value.userOptions.print
111
- }), at = x(() => e.value.userOptions.show && !e.value.style.chart.title.text), ot = x(() => xt(e.value.customPalette)), U = b({
112
- showTable: e.value.table.show
113
- }), n = x(() => ({
114
- top: e.value.style.chart.layout.padding.top,
115
- right: e.value.style.chart.layout.padding.right,
116
- bottom: e.value.style.chart.layout.padding.bottom,
117
- left: e.value.style.chart.layout.padding.left
118
- })), i = x(() => {
119
- const l = e.value.style.chart.layout.height, u = e.value.style.chart.layout.width, t = l - n.value.top - n.value.bottom, r = u - n.value.left - n.value.right;
120
- return {
121
- absoluteHeight: l,
122
- absoluteWidth: u,
123
- centerX: n.value.left + r / 2,
124
- centerY: n.value.top + t / 2,
125
- height: t,
126
- width: r
127
- };
128
- }), P = x(() => (p.dataset.forEach((l, u) => {
129
- [null, void 0].includes(l.name) && Q({
130
- componentName: "VueUiDonutEvolution",
131
- type: "datasetSerieAttribute",
132
- property: "name",
133
- index: u
134
- }), [null, void 0].includes(l.values) && Q({
135
- componentName: "VueUiDonutEvolution",
136
- type: "datasetSerieAttribute",
137
- property: "values",
138
- index: u
139
- });
140
- }), p.dataset.map((l, u) => ({
141
- ...l,
142
- values: kt(l.values),
143
- color: ve(l.color) || ot.value[u] || ee[u] || ee[u % ee.length],
144
- length: (l.values || []).length,
145
- uid: Xe()
146
- })))), W = x(() => P.value.filter((l) => !C.value.includes(l.uid)).map((l) => ({
147
- ...l,
148
- values: l.values.filter((u, t) => t >= d.value.start && t <= d.value.end)
149
- }))), T = x(() => Math.max(...W.value.map((l) => l.length))), z = x(() => i.value.width / (d.value.end - d.value.start)), w = x(() => {
150
- const l = [];
151
- for (let s = 0; s < d.value.end - d.value.start; s += 1) {
152
- const f = W.value.map((F) => F.values[s] ?? null), h = f.filter((F) => [void 0, null].includes(F)).length === f.length, N = f.reduce((F, L) => F + L, 0), ce = f.map((F) => F / N), M = n.value.left + z.value * s + z.value / 2;
153
- l.push({
154
- index: s,
155
- percentages: ce,
156
- subtotal: h || N < 0 ? null : N,
157
- values: f,
158
- x: M
159
- });
160
- }
161
- const u = 0, t = Math.max(...l.map((s) => s.subtotal)), r = l.length === 1 ? t * 2 : t;
162
- return l.map((s, f) => {
163
- const h = z.value / 2 * 0.7, N = h > i.value.width / 16 ? i.value.width / 16 : h, ce = g.value === s.index ? i.value.width / 16 : N, M = l.length > 4 ? h * 2 : h * 2 > z.value / 2 * 0.7 ? z.value / 2 * 0.7 : h * 2, F = i.value.absoluteHeight - n.value.bottom - i.value.height * s.subtotal / Ge(u, r, e.value.style.chart.layout.grid.yAxis.dataLabels.steps).max;
164
- return {
165
- ...s,
166
- y: F,
167
- radius: N,
168
- activeRadius: ce,
169
- hoverRadius: M,
170
- donut: de({
171
- series: W.value.map((L, Me) => ({
172
- color: L.color,
173
- name: L.name,
174
- value: L.values[f] ?? 0
175
- }))
176
- }, s.x, F, N, N, 1.99999, 2, 1, 360, 105.25, N / 2),
177
- donutHover: de({
178
- series: W.value.map((L, Me) => ({
179
- color: L.color,
180
- name: L.name,
181
- value: L.values[f] ?? 0
182
- }))
183
- }, s.x, F, M, M, 1.99999, 2, 1, 360, 105.25, M / 2),
184
- donutFocus: de({
185
- series: W.value.map((L, Me) => ({
186
- color: L.color,
187
- name: L.name,
188
- value: L.values[f] ?? 0
189
- }))
190
- }, i.value.centerX, i.value.centerY, i.value.height / 3.6, i.value.height / 3.6, 1.99999, 2, 1, 360, 105.25, i.value.height / 6)
191
- };
192
- });
193
- });
194
- function K(l, u, t) {
195
- return he(
196
- e.value.style.chart.layout.dataLabels.formatter,
197
- l,
198
- te({
199
- p: e.value.style.chart.layout.dataLabels.prefix,
200
- v: l,
201
- s: e.value.style.chart.layout.dataLabels.suffix,
202
- r: e.value.style.chart.layout.dataLabels.rounding
203
- }),
204
- { datapoint: u, index: t }
205
- );
206
- }
207
- const ue = x(() => ({
208
- max: Math.max(...w.value.map((l) => l.subtotal)),
209
- min: 0
210
- })), H = x(() => {
211
- const l = w.value.length === 1 ? ue.value.max * 2 : ue.value.max;
212
- return Ge(ue.value.min, l, e.value.style.chart.layout.grid.yAxis.dataLabels.steps);
213
- });
214
- function ut(l) {
215
- return l / H.value.max;
216
- }
217
- const st = x(() => H.value.ticks.map((l) => ({
218
- y: i.value.absoluteHeight - n.value.bottom - i.value.height * ut(l),
219
- value: l
220
- })));
221
- function Fe(l, u) {
222
- return isNaN(l.value / qe(u, "value")) ? 0 : (l.value / qe(u, "value") * 100).toFixed(0) + "%";
223
- }
224
- function Oe() {
225
- A.value || (g.value = null, ae.value = null);
226
- }
227
- function nt(l) {
228
- A.value || (g.value = l.index, ae.value = l);
229
- }
230
- const se = b(null);
231
- function ne(l, u) {
232
- l.subtotal && (ae.value = null, g.value = null, A.value = !0, I.value = l, [null, void 0].includes(u) || (se.value = u));
233
- }
234
- function Pe() {
235
- I.value = null, A.value = !1, se.value = null;
236
- }
237
- const De = x(() => P.value.map((l, u) => ({
238
- name: l.name,
239
- value: l.values.slice(d.value.start, d.value.end).reduce((t, r) => t + r, 0),
240
- shape: "circle",
241
- uid: l.uid,
242
- color: l.color
243
- })).sort((l, u) => u.value - l.value).map((l) => ({
244
- ...l,
245
- opacity: C.value.includes(l.uid) ? 0.5 : 1,
246
- segregate: () => re(l.uid),
247
- isSegregated: C.value.includes(l.uid)
248
- }))), Ee = x(() => w.value.map((l) => l.subtotal).reduce((l, u) => l + u, 0)), rt = x(() => ({
249
- cy: "donut-div-legend",
250
- backgroundColor: e.value.style.chart.legend.backgroundColor,
251
- color: e.value.style.chart.legend.color,
252
- fontSize: e.value.style.chart.legend.fontSize,
253
- paddingBottom: 12,
254
- fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
255
- }));
256
- function re(l) {
257
- if (C.value.includes(l))
258
- C.value = C.value.filter((u) => u !== l), Ce("selectLegend", null);
259
- else {
260
- if (C.value.length === P.value.length - 1) return;
261
- C.value.push(l), Ce("selectLegend", P.value.find((u) => u.uid === l));
262
- }
263
- I.value && ne(w.value.find((u, t) => t === se.value));
264
- }
265
- const R = x(() => {
266
- const l = [""].concat(P.value.filter((s) => !C.value.includes(s.uid)).map((s) => ({
267
- name: s.name,
268
- color: s.color
269
- }))).concat(["Σ"]);
270
- let u = [];
271
- for (let s = 0; s < T.value; s += 1) {
272
- const f = P.value.filter((h) => !C.value.includes(h.uid)).map((h) => h.values[s] ?? 0).reduce((h, N) => h + N, 0);
273
- u.push([e.value.style.chart.layout.grid.xAxis.dataLabels.values[s] ?? "-"].concat(P.value.filter((h) => !C.value.includes(h.uid)).map((h) => ({
274
- value: h.values[s] ?? 0,
275
- percentage: h.values[s] ? h.values[s] / f * 100 : 0
276
- }))).concat([`${e.value.style.chart.layout.dataLabels.prefix}${Number(f.toFixed(e.value.table.td.roundingValue))}${e.value.style.chart.layout.dataLabels.suffix}`]));
277
- }
278
- const t = {
279
- th: {
280
- backgroundColor: e.value.table.th.backgroundColor,
281
- color: e.value.table.th.color,
282
- outline: e.value.table.th.outline
283
- },
284
- td: {
285
- backgroundColor: e.value.table.td.backgroundColor,
286
- color: e.value.table.td.color,
287
- outline: e.value.table.td.outline
288
- },
289
- breakpoint: e.value.table.responsiveBreakpoint
290
- }, r = [
291
- e.value.table.columnNames.period
292
- ].concat(P.value.filter((s) => !C.value.includes(s.uid)).map((s) => s.name)).concat(e.value.table.columnNames.total);
293
- return { head: l, body: u, config: t, colNames: r };
294
- });
295
- function it() {
296
- return P.value;
297
- }
298
- function Te() {
299
- j(() => {
300
- const l = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [""]], u = [...R.value.head.map((f) => f.name ?? f)], t = [...R.value.body.map((f) => f.map((h) => h.value ?? h))], r = l.concat([u]).concat(t), s = wt(r);
301
- zt({ csvContent: s, title: e.value.style.chart.title.text || "vue-ui-donut-evolution" });
302
- });
303
- }
304
- const X = b(!1);
305
- function ct(l) {
306
- X.value = l, me.value += 1;
307
- }
308
- function Ve() {
309
- U.value.showTable = !U.value.showTable;
310
- }
311
- const Z = b(!1);
312
- function ie() {
313
- Z.value = !Z.value;
314
- }
315
- function He(l) {
316
- return l.proportion * 100 > e.value.style.chart.donuts.hover.hideLabelsUnderValue;
317
- }
318
- function Re(l) {
319
- return l.proportion * 100 > e.value.style.chart.donuts.zoom.hideLabelsUnderValue;
320
- }
321
- return Je({
322
- getData: it,
323
- generatePdf: Ie,
324
- generateCsv: Te,
325
- generateImage: Ne,
326
- toggleTable: Ve,
327
- toggleAnnotator: ie
328
- }), (l, u) => (a(), o("div", {
329
- ref_key: "donutEvolutionChart",
330
- ref: be,
331
- class: O(`vue-ui-donut-evolution ${X.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
332
- style: J(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;background:${e.value.style.chart.backgroundColor}`),
333
- id: E.value,
334
- onMouseenter: u[4] || (u[4] = () => c(we)(!0)),
335
- onMouseleave: u[5] || (u[5] = () => c(we)(!1))
336
- }, [
337
- e.value.userOptions.buttons.annotator ? (a(), D(Dt, {
338
- key: 0,
339
- svgRef: c(Le),
340
- backgroundColor: e.value.style.chart.backgroundColor,
341
- color: e.value.style.chart.color,
342
- active: Z.value,
343
- onClose: ie
344
- }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : v("", !0),
345
- at.value ? (a(), o("div", {
346
- key: 1,
347
- ref_key: "noTitle",
348
- ref: lt,
349
- class: "vue-data-ui-no-title-space",
350
- style: "height:36px; width: 100%;background:transparent"
351
- }, null, 512)) : v("", !0),
352
- e.value.style.chart.title.text ? (a(), o("div", {
353
- key: 2,
354
- style: "width:100%;background:transparent;padding-bottom:24px",
355
- onMouseleave: Oe
356
- }, [
357
- (a(), D(Lt, {
358
- key: `title_${xe.value}`,
359
- config: {
360
- title: {
361
- cy: "donut-evolution-div-title",
362
- ...e.value.style.chart.title
363
- },
364
- subtitle: {
365
- cy: "donut-evolution-div-subtitle",
366
- ...e.value.style.chart.title.subtitle
367
- }
368
- }
369
- }, null, 8, ["config"]))
370
- ], 32)) : v("", !0),
371
- e.value.userOptions.show && q.value && (c(ze) || c(oe)) ? (a(), D($t, {
372
- ref: "details",
373
- key: `user_options_${me.value}`,
374
- backgroundColor: e.value.style.chart.backgroundColor,
375
- color: e.value.style.chart.color,
376
- isPrinting: c($e),
377
- isImaging: c(Ae),
378
- uid: E.value,
379
- hasPdf: e.value.userOptions.buttons.pdf,
380
- hasImg: e.value.userOptions.buttons.img,
381
- hasXls: e.value.userOptions.buttons.csv,
382
- hasTable: e.value.userOptions.buttons.table,
383
- hasFullscreen: e.value.userOptions.buttons.fullscreen,
384
- isFullscreen: X.value,
385
- titles: { ...e.value.userOptions.buttonTitles },
386
- chartElement: be.value,
387
- position: e.value.userOptions.position,
388
- hasAnnotator: e.value.userOptions.buttons.annotator,
389
- isAnnotation: Z.value,
390
- onToggleFullscreen: ct,
391
- onGeneratePdf: c(Ie),
392
- onGenerateCsv: Te,
393
- onGenerateImage: c(Ne),
394
- onToggleTable: Ve,
395
- onToggleAnnotator: ie,
396
- style: J({
397
- visibility: c(ze) ? c(oe) ? "visible" : "hidden" : "visible"
398
- })
399
- }, dt({ _: 2 }, [
400
- l.$slots.menuIcon ? {
401
- name: "menuIcon",
402
- fn: $(({ isOpen: t, color: r }) => [
403
- S(l.$slots, "menuIcon", B(G({ isOpen: t, color: r })), void 0, !0)
404
- ]),
405
- key: "0"
406
- } : void 0,
407
- l.$slots.optionPdf ? {
408
- name: "optionPdf",
409
- fn: $(() => [
410
- S(l.$slots, "optionPdf", {}, void 0, !0)
411
- ]),
412
- key: "1"
413
- } : void 0,
414
- l.$slots.optionCsv ? {
415
- name: "optionCsv",
416
- fn: $(() => [
417
- S(l.$slots, "optionCsv", {}, void 0, !0)
418
- ]),
419
- key: "2"
420
- } : void 0,
421
- l.$slots.optionImg ? {
422
- name: "optionImg",
423
- fn: $(() => [
424
- S(l.$slots, "optionImg", {}, void 0, !0)
425
- ]),
426
- key: "3"
427
- } : void 0,
428
- l.$slots.optionTable ? {
429
- name: "optionTable",
430
- fn: $(() => [
431
- S(l.$slots, "optionTable", {}, void 0, !0)
432
- ]),
433
- key: "4"
434
- } : void 0,
435
- l.$slots.optionFullscreen ? {
436
- name: "optionFullscreen",
437
- fn: $(({ toggleFullscreen: t, isFullscreen: r }) => [
438
- S(l.$slots, "optionFullscreen", B(G({ toggleFullscreen: t, isFullscreen: r })), void 0, !0)
439
- ]),
440
- key: "5"
441
- } : void 0,
442
- l.$slots.optionAnnotator ? {
443
- name: "optionAnnotator",
444
- fn: $(({ toggleAnnotator: t, isAnnotator: r }) => [
445
- S(l.$slots, "optionAnnotator", B(G({ toggleAnnotator: t, isAnnotator: r })), void 0, !0)
446
- ]),
447
- key: "6"
448
- } : void 0
449
- ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasPdf", "hasImg", "hasXls", "hasTable", "hasFullscreen", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "onGeneratePdf", "onGenerateImage", "style"])) : v("", !0),
450
- q.value ? (a(), o("svg", {
451
- key: 4,
452
- ref_key: "svgRef",
453
- ref: Le,
454
- xmlns: c(_t),
455
- class: O({ "vue-data-ui-fullscreen--on": X.value, "vue-data-ui-fulscreen--off": !X.value }),
456
- viewBox: `0 0 ${i.value.absoluteWidth} ${i.value.absoluteHeight}`,
457
- style: J(`max-width:100%; overflow: visible; background:transparent;color:${e.value.style.chart.color}`)
458
- }, [
459
- ht(Pt),
460
- l.$slots["chart-background"] ? (a(), o("foreignObject", {
461
- key: 0,
462
- x: n.value.left,
463
- y: n.value.top,
464
- width: i.value.width,
465
- height: i.value.height,
466
- style: {
467
- pointerEvents: "none"
468
- }
469
- }, [
470
- S(l.$slots, "chart-background", {}, void 0, !0)
471
- ], 8, Mt)) : v("", !0),
472
- y("defs", null, [
473
- y("linearGradient", {
474
- id: `hover_${E.value}`,
475
- x1: "0%",
476
- y1: "0%",
477
- x2: "0%",
478
- y2: "100%"
479
- }, [
480
- y("stop", {
481
- offset: "0%",
482
- "stop-color": c(Y)(e.value.style.chart.backgroundColor, e.value.style.chart.layout.highlighter.opacity)
483
- }, null, 8, Wt),
484
- y("stop", {
485
- offset: "100%",
486
- "stop-color": c(Y)(e.value.style.chart.layout.highlighter.color, e.value.style.chart.layout.highlighter.opacity)
487
- }, null, 8, Xt)
488
- ], 8, Ut),
489
- y("radialGradient", {
490
- id: `focus_${E.value}`
491
- }, [
492
- y("stop", {
493
- offset: "0%",
494
- "stop-color": c(Y)(c(ve)(e.value.style.chart.backgroundColor), 0)
495
- }, null, 8, Gt),
496
- y("stop", {
497
- offset: "77%",
498
- "stop-color": c(Y)("#FFFFFF", 30)
499
- }, null, 8, jt),
500
- y("stop", {
501
- offset: "100%",
502
- "stop-color": c(Y)(c(ve)(e.value.style.chart.backgroundColor), 0)
503
- }, null, 8, Yt)
504
- ], 8, Bt)
505
- ]),
506
- e.value.style.chart.layout.grid.show ? (a(), o("g", qt, [
507
- y("line", {
508
- x1: n.value.left,
509
- x2: n.value.left,
510
- y1: n.value.top,
511
- y2: n.value.top + i.value.height,
512
- stroke: e.value.style.chart.layout.grid.stroke,
513
- "stroke-width": e.value.style.chart.layout.grid.strokeWidth,
514
- "stroke-linecap": "round"
515
- }, null, 8, Kt),
516
- y("line", {
517
- x1: n.value.left,
518
- x2: i.value.absoluteWidth - n.value.right,
519
- y1: i.value.absoluteHeight - n.value.bottom,
520
- y2: i.value.absoluteHeight - n.value.bottom,
521
- stroke: e.value.style.chart.layout.grid.stroke,
522
- "stroke-width": e.value.style.chart.layout.grid.strokeWidth,
523
- "stroke-linecap": "round"
524
- }, null, 8, Zt),
525
- e.value.style.chart.layout.grid.showVerticalLines ? (a(), o("g", Jt, [
526
- (a(!0), o(k, null, _(d.value.end - d.value.start, (t, r) => (a(), o("line", {
527
- x1: n.value.left + (r + 1) * z.value,
528
- x2: n.value.left + (r + 1) * z.value,
529
- y1: n.value.top,
530
- y2: i.value.absoluteHeight - n.value.bottom,
531
- stroke: e.value.style.chart.layout.grid.stroke,
532
- "stroke-width": e.value.style.chart.layout.grid.strokeWidth,
533
- "stroke-linecap": "round"
534
- }, null, 8, Qt))), 256))
535
- ])) : v("", !0)
536
- ])) : v("", !0),
537
- e.value.style.chart.layout.grid.yAxis.dataLabels.show ? (a(), o("g", {
538
- key: 2,
539
- class: O({ "donut-opacity": !0, "donut-behind": g.value !== null || A.value })
540
- }, [
541
- (a(!0), o(k, null, _(st.value, (t, r) => (a(), o("g", null, [
542
- t.value >= H.value.min && t.value <= H.value.max ? (a(), o("line", {
543
- key: 0,
544
- x1: n.value.left,
545
- x2: n.value.left - 5,
546
- y1: t.y,
547
- y2: t.y,
548
- stroke: e.value.style.chart.layout.grid.stroke,
549
- "stroke-width": e.value.style.chart.layout.grid.strokeWidth
550
- }, null, 8, el)) : v("", !0),
551
- t.value >= H.value.min && t.value <= H.value.max ? (a(), o("text", {
552
- key: 1,
553
- x: n.value.left - 8 + e.value.style.chart.layout.grid.yAxis.dataLabels.offsetX,
554
- y: t.y + e.value.style.chart.layout.grid.yAxis.dataLabels.fontSize / 3,
555
- "font-size": e.value.style.chart.layout.grid.yAxis.dataLabels.fontSize,
556
- "text-anchor": "end",
557
- fill: e.value.style.chart.layout.grid.yAxis.dataLabels.color,
558
- "font-weight": e.value.style.chart.layout.grid.yAxis.dataLabels.bold ? "bold" : "normal"
559
- }, m(c(Ct)(t.value) ? c(he)(
560
- e.value.style.chart.layout.dataLabels.formatter,
561
- t.value,
562
- c(te)({
563
- p: e.value.style.chart.layout.dataLabels.prefix,
564
- v: t.value,
565
- s: e.value.style.chart.layout.dataLabels.suffix,
566
- r: e.value.style.chart.layout.grid.yAxis.dataLabels.roundingValue
567
- }),
568
- { datapoint: t, seriesIndex: r }
569
- ) : ""), 9, tl)) : v("", !0)
570
- ]))), 256))
571
- ], 2)) : v("", !0),
572
- e.value.style.chart.layout.grid.xAxis.dataLabels.show ? (a(), o("g", {
573
- key: 3,
574
- class: O({ "donut-opacity": !0, "donut-behind": A.value })
575
- }, [
576
- (a(!0), o(k, null, _(d.value.end - d.value.start, (t, r) => (a(), o("g", null, [
577
- e.value.style.chart.layout.grid.xAxis.dataLabels.showOnlyFirstAndLast && (r === 0 || r === T.value - 1) || !e.value.style.chart.layout.grid.xAxis.dataLabels.showOnlyFirstAndLast ? (a(), o("text", {
578
- key: 0,
579
- "text-anchor": e.value.style.chart.layout.grid.xAxis.dataLabels.rotation > 0 ? "start" : e.value.style.chart.layout.grid.xAxis.dataLabels.rotation < 0 ? "end" : "middle",
580
- "font-size": e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize,
581
- fill: e.value.style.chart.layout.grid.xAxis.dataLabels.color,
582
- transform: `translate(${n.value.left + z.value * r + z.value / 2}, ${e.value.style.chart.layout.grid.xAxis.dataLabels.offsetY + i.value.absoluteHeight - n.value.bottom + e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize * 2}), rotate(${e.value.style.chart.layout.grid.xAxis.dataLabels.rotation})`
583
- }, m(e.value.style.chart.layout.grid.xAxis.dataLabels.values[Number(r) + Number(d.value.start)] ?? ""), 9, ll)) : v("", !0)
584
- ]))), 256))
585
- ], 2)) : v("", !0),
586
- (a(!0), o(k, null, _(w.value, (t, r) => (a(), o("g", null, [
587
- e.value.style.chart.layout.line.show && r < w.value.length - 1 && ![t.subtotal, w.value[r + 1].subtotal].includes(null) ? (a(), o("line", {
588
- key: 0,
589
- class: O({ "donut-opacity": !0, "donut-behind": g.value !== null || A.value }),
590
- x1: t.x,
591
- y1: t.y,
592
- x2: w.value[r + 1].x,
593
- y2: w.value[r + 1].y,
594
- stroke: e.value.style.chart.layout.line.stroke,
595
- "stroke-width": e.value.style.chart.layout.line.strokeWidth,
596
- "stroke-linecap": "round",
597
- "stroke-linejoin": "round"
598
- }, null, 10, al)) : v("", !0),
599
- t.subtotal !== null ? (a(), o("g", ol, [
600
- t.subtotal ? (a(), o("circle", {
601
- key: 0,
602
- cx: t.x,
603
- cy: t.y,
604
- r: t.activeRadius,
605
- fill: e.value.style.chart.backgroundColor
606
- }, null, 8, ul)) : v("", !0)
607
- ])) : v("", !0)
608
- ]))), 256)),
609
- (a(!0), o(k, null, _(w.value, (t, r) => (a(), o("g", {
610
- class: O({ "donut-opacity": !0, "donut-behind": r !== g.value && g.value !== null || A.value })
611
- }, [
612
- t.subtotal ? (a(), o("g", sl, [
613
- g.value !== null && g.value === r ? (a(), o("g", nl, [
614
- (a(!0), o(k, null, _(t.donutHover, (s) => (a(), o("g", null, [
615
- He(s) ? (a(), o("path", {
616
- key: 0,
617
- d: c(je)(s, { x: s.center.endX, y: s.center.endY }, 12, 12, { x: t.x, y: t.y }, !1, 20),
618
- stroke: s.color,
619
- "stroke-width": "1",
620
- "stroke-linecap": "round",
621
- "stroke-linejoin": "round",
622
- fill: "none"
623
- }, null, 8, rl)) : v("", !0)
624
- ]))), 256)),
625
- (a(!0), o(k, null, _(t.donutHover, (s, f) => (a(), o("g", null, [
626
- He(s) ? (a(), o("text", {
627
- key: 0,
628
- "data-cy-hover-label": "",
629
- "text-anchor": c(le)(s, !0, 0).anchor,
630
- x: c(le)(s, !0, 9).x,
631
- y: c(Ye)(s, 14, 10),
632
- fill: e.value.style.chart.layout.grid.yAxis.dataLabels.color,
633
- "font-size": 8,
634
- "font-weight": "bold"
635
- }, m(s.name) + ": " + m(Fe(s, t.donut)) + " (" + m(s.value === null ? "-" : K(s.value, s, f)) + ") ", 9, il)) : v("", !0)
636
- ]))), 256)),
637
- y("g", null, [
638
- y("circle", {
639
- cx: t.x,
640
- cy: t.y,
641
- r: t.hoverRadius,
642
- fill: e.value.style.chart.backgroundColor
643
- }, null, 8, cl)
644
- ])
645
- ])) : v("", !0)
646
- ])) : v("", !0)
647
- ], 2))), 256)),
648
- (a(!0), o(k, null, _(w.value, (t, r) => (a(), o("g", {
649
- class: O({ "donut-opacity": !0, "donut-behind": r !== g.value && g.value !== null || A.value })
650
- }, [
651
- t.subtotal !== null ? (a(), o("g", vl, [
652
- t.subtotal === 0 ? (a(), o("circle", {
653
- key: 0,
654
- cx: t.x,
655
- cy: t.y,
656
- r: 3,
657
- fill: e.value.style.chart.color
658
- }, null, 8, dl)) : g.value !== null && g.value === r ? (a(), o("g", hl, [
659
- (a(!0), o(k, null, _(t.donutHover, (s, f) => (a(), o("path", {
660
- d: s.arcSlice,
661
- fill: `${s.color}`,
662
- "stroke-width": 1,
663
- stroke: e.value.style.chart.backgroundColor
664
- }, null, 8, yl))), 256))
665
- ])) : (a(), o("g", fl, [
666
- (a(!0), o(k, null, _(t.donut, (s, f) => (a(), o("path", {
667
- d: s.arcSlice,
668
- fill: `${s.color}`,
669
- "stroke-width": 0.5,
670
- stroke: e.value.style.chart.backgroundColor
671
- }, null, 8, gl))), 256))
672
- ]))
673
- ])) : v("", !0)
674
- ], 2))), 256)),
675
- (a(!0), o(k, null, _(w.value, (t, r) => (a(), o("g", {
676
- class: O({ "donut-opacity": !0, "donut-behind": r !== g.value && g.value !== null || A.value })
677
- }, [
678
- t.subtotal !== null && e.value.style.chart.layout.dataLabels.show ? (a(), o("text", {
679
- key: 0,
680
- "text-anchor": "middle",
681
- x: t.x,
682
- y: g.value === t.index && t.subtotal ? t.y + e.value.style.chart.layout.dataLabels.fontSize / 3 : t.y - t.radius - e.value.style.chart.layout.dataLabels.fontSize + e.value.style.chart.layout.dataLabels.offsetY,
683
- "font-size": e.value.style.chart.layout.dataLabels.fontSize,
684
- "font-weight": "bold",
685
- fill: e.value.style.chart.layout.dataLabels.color
686
- }, m(K(t.subtotal, t, r)), 9, bl)) : v("", !0)
687
- ], 2))), 256)),
688
- (a(!0), o(k, null, _(w.value, (t, r) => (a(), o("rect", {
689
- x: n.value.left + r * z.value,
690
- y: i.value.absoluteHeight - n.value.bottom - 10,
691
- width: z.value,
692
- height: 10,
693
- fill: g.value === t.index ? `url(#hover_${E.value})` : "transparent",
694
- onClick: (s) => ne(t, r),
695
- class: O({ "donut-hover": g.value === t.index && t.subtotal })
696
- }, null, 10, ml))), 256)),
697
- (a(!0), o(k, null, _(w.value, (t, r) => (a(), o("rect", {
698
- "data-cy-trap": "",
699
- x: n.value.left + r * z.value,
700
- y: n.value.top,
701
- width: z.value,
702
- height: i.value.height,
703
- fill: "transparent",
704
- onMouseenter: (s) => nt(t),
705
- onMouseleave: Oe,
706
- onClick: (s) => ne(t, r),
707
- class: O({ "donut-hover": g.value === t.index && t.subtotal })
708
- }, null, 42, pl))), 256)),
709
- A.value ? (a(), o("g", xl, [
710
- y("rect", {
711
- rx: 4,
712
- x: n.value.left,
713
- y: n.value.top,
714
- width: i.value.width,
715
- height: i.value.height,
716
- fill: e.value.style.chart.backgroundColor,
717
- style: { filter: "drop-shadow(0 12px 12px rgba(0,0,0,0.3))" }
718
- }, null, 8, kl),
719
- y("line", {
720
- "data-dom-to-png-ignore": "",
721
- x1: i.value.absoluteWidth - n.value.right - 15,
722
- y1: n.value.top + 5,
723
- x2: i.value.absoluteWidth - n.value.right - 4,
724
- y2: n.value.top + 15.5,
725
- "stroke-linecap": "round",
726
- stroke: e.value.style.chart.color,
727
- "stroke-width": "1.5"
728
- }, null, 8, _l),
729
- y("line", {
730
- "data-dom-to-png-ignore": "",
731
- x1: i.value.absoluteWidth - n.value.right - 15,
732
- y2: n.value.top + 5,
733
- x2: i.value.absoluteWidth - n.value.right - 4,
734
- y1: n.value.top + 15.5,
735
- "stroke-linecap": "round",
736
- stroke: e.value.style.chart.color,
737
- "stroke-width": "1.5"
738
- }, null, 8, Cl),
739
- y("circle", {
740
- "data-cy-close": "",
741
- onClick: Pe,
742
- onKeypress: yt(Pe, ["enter"]),
743
- cx: i.value.absoluteWidth - n.value.right - i.value.width / 40,
744
- cy: n.value.top + i.value.height / 30,
745
- r: i.value.height / 12,
746
- fill: "transparent",
747
- style: { cursor: "pointer" },
748
- tabindex: "0"
749
- }, null, 40, wl),
750
- (a(!0), o(k, null, _(I.value.donutFocus, (t) => (a(), o("g", null, [
751
- Re(t) ? (a(), o("path", {
752
- key: 0,
753
- "data-cy-zoom-donut": "",
754
- d: c(je)(t, { x: i.value.centerX, y: i.value.centerY }, 12, 12, !1, !1, 15),
755
- stroke: t.color,
756
- "stroke-width": "1",
757
- "stroke-linecap": "round",
758
- "stroke-linejoin": "round",
759
- fill: "none",
760
- class: "vue-ui-donut-evolution-focus"
761
- }, null, 8, zl)) : v("", !0)
762
- ]))), 256)),
763
- y("circle", {
764
- cx: n.value.left + i.value.width / 2,
765
- cy: n.value.top + i.value.height / 2,
766
- r: i.value.height / 7,
767
- fill: e.value.style.chart.backgroundColor
768
- }, null, 8, Ll),
769
- (a(!0), o(k, null, _(I.value.donutFocus, (t, r) => (a(), o("path", {
770
- d: t.arcSlice,
771
- fill: `${t.color}`,
772
- "stroke-width": 1,
773
- stroke: e.value.style.chart.backgroundColor,
774
- class: "vue-ui-donut-evolution-focus"
775
- }, null, 8, Sl))), 256)),
776
- (a(!0), o(k, null, _(I.value.donutFocus, (t, r) => (a(), o("g", $l, [
777
- Re(t) ? (a(), o("text", {
778
- key: 0,
779
- "text-anchor": c(le)(t, !0, 20).anchor,
780
- x: c(le)(t, !0, 10).x,
781
- y: c(Ye)(t),
782
- fill: e.value.style.chart.layout.grid.yAxis.dataLabels.color,
783
- "font-size": 10,
784
- "font-weight": "bold"
785
- }, m(t.name) + ": " + m(Fe(t, I.value.donutFocus)) + " (" + m(t.value === null ? "-" : K(t.value, t, r)) + ") ", 9, Al)) : v("", !0)
786
- ]))), 256)),
787
- y("circle", {
788
- cx: n.value.left + i.value.width / 2,
789
- cy: n.value.top + i.value.height / 2,
790
- r: i.value.height / 3.8,
791
- fill: `url(#focus_${E.value})`
792
- }, null, 8, Il),
793
- y("circle", {
794
- cx: n.value.left + i.value.width / 2,
795
- cy: n.value.top + i.value.height / 2,
796
- r: i.value.height / 7.7,
797
- fill: e.value.style.chart.backgroundColor
798
- }, null, 8, Nl),
799
- y("text", {
800
- "text-anchor": "middle",
801
- x: n.value.left + i.value.width / 2,
802
- y: n.value.top + i.value.height / 2 + 14 / 3,
803
- "font-size": 14,
804
- "font-weight": "bold",
805
- fill: e.value.style.chart.layout.dataLabels.color,
806
- class: "vue-ui-donut-evolution-focus"
807
- }, m(K(I.value.subtotal, I.value, null)), 9, Fl),
808
- e.value.style.chart.layout.grid.xAxis.dataLabels.values[I.value.index] ? (a(), o("text", {
809
- key: 0,
810
- x: n.value.left + 6,
811
- y: n.value.top + e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize * 2,
812
- "font-size": e.value.style.chart.layout.grid.xAxis.dataLabels.fontSize * 1.6,
813
- fill: e.value.style.chart.layout.dataLabels.color
814
- }, m(e.value.style.chart.layout.grid.xAxis.dataLabels.values[Number(I.value.index) + Number(d.value.start)]), 9, Ol)) : v("", !0)
815
- ])) : v("", !0),
816
- S(l.$slots, "svg", { svg: i.value }, void 0, !0)
817
- ], 14, Rt)) : v("", !0),
818
- l.$slots.watermark ? (a(), o("div", Pl, [
819
- S(l.$slots, "watermark", B(G({ isPrinting: c($e) || c(Ae) })), void 0, !0)
820
- ])) : v("", !0),
821
- q.value ? v("", !0) : (a(), D(Nt, {
822
- key: 6,
823
- config: {
824
- type: "donutEvolution",
825
- style: {
826
- backgroundColor: e.value.style.chart.backgroundColor,
827
- donutEvolution: {
828
- axis: {
829
- color: "#CCCCCC"
830
- },
831
- donuts: {
832
- color: "#CCCCCC"
833
- }
834
- }
835
- }
836
- }
837
- }, null, 8, ["config"])),
838
- T.value > 1 && e.value.style.chart.zoom.show ? (a(), D(Ft, {
839
- ref_key: "slicerComponent",
840
- ref: V,
841
- key: `slicer_${pe.value}`,
842
- background: e.value.style.chart.zoom.color,
843
- borderColor: e.value.style.chart.backgroundColor,
844
- fontSize: e.value.style.chart.zoom.fontSize,
845
- useResetSlot: e.value.style.chart.zoom.useResetSlot,
846
- labelLeft: e.value.style.chart.layout.grid.xAxis.dataLabels.values[Number(d.value.start)] || "",
847
- labelRight: e.value.style.chart.layout.grid.xAxis.dataLabels.values[Number(d.value.end) - 1] || "",
848
- textColor: e.value.style.chart.color,
849
- inputColor: e.value.style.chart.zoom.color,
850
- selectColor: e.value.style.chart.zoom.highlightColor,
851
- max: T.value,
852
- min: 0,
853
- valueStart: d.value.start,
854
- valueEnd: d.value.end,
855
- start: d.value.start,
856
- "onUpdate:start": u[0] || (u[0] = (t) => d.value.start = t),
857
- end: d.value.end,
858
- "onUpdate:end": u[1] || (u[1] = (t) => d.value.end = t),
859
- refreshStartPoint: e.value.style.chart.zoom.startIndex !== null ? e.value.style.chart.zoom.startIndex : 0,
860
- refreshEndPoint: e.value.style.chart.zoom.endIndex !== null ? e.value.style.chart.zoom.endIndex + 1 : T.value,
861
- enableRangeHandles: e.value.style.chart.zoom.enableRangeHandles,
862
- enableSelectionDrag: e.value.style.chart.zoom.enableSelectionDrag,
863
- onReset: ye
864
- }, {
865
- "reset-action": $(({ reset: t }) => [
866
- S(l.$slots, "reset-action", B(G({ reset: t })), void 0, !0)
867
- ]),
868
- _: 3
869
- }, 8, ["background", "borderColor", "fontSize", "useResetSlot", "labelLeft", "labelRight", "textColor", "inputColor", "selectColor", "max", "valueStart", "valueEnd", "start", "end", "refreshStartPoint", "refreshEndPoint", "enableRangeHandles", "enableSelectionDrag"])) : v("", !0),
870
- e.value.style.chart.legend.show ? (a(), D(It, {
871
- key: `legend_${_e.value}`,
872
- legendSet: De.value,
873
- config: rt.value,
874
- onClickMarker: u[2] || (u[2] = ({ legend: t }) => re(t.uid))
875
- }, {
876
- item: $(({ legend: t, index: r }) => [
877
- y("div", {
878
- onClick: (s) => re(t.uid),
879
- style: J(`opacity:${C.value.includes(t.uid) ? 0.5 : 1}`)
880
- }, [
881
- We(m(t.name) + ": " + m(c(he)(
882
- e.value.style.chart.layout.dataLabels.formatter,
883
- t.value,
884
- c(te)({
885
- p: e.value.style.chart.layout.dataLabels.prefix,
886
- v: t.value,
887
- s: e.value.style.chart.layout.dataLabels.suffix,
888
- r: e.value.style.chart.legend.roundingValue
889
- }),
890
- { datapoint: t, seriesIndex: r }
891
- )) + " ", 1),
892
- C.value.includes(t.uid) ? (a(), o("span", Tl, " ( - % ) ")) : (a(), o("span", El, " (" + m(isNaN(t.value / Ee.value) ? "-" : c(te)({
893
- v: t.value / Ee.value * 100,
894
- s: "%",
895
- r: e.value.style.chart.legend.roundingPercentage
896
- })) + ") ", 1))
897
- ], 12, Dl)
898
- ]),
899
- _: 1
900
- }, 8, ["legendSet", "config"])) : v("", !0),
901
- S(l.$slots, "legend", { legend: De.value }, void 0, !0),
902
- l.$slots.source ? (a(), o("div", Vl, [
903
- S(l.$slots, "source", {}, void 0, !0)
904
- ], 512)) : v("", !0),
905
- q.value ? (a(), D(Ot, {
906
- key: 10,
907
- hideDetails: "",
908
- config: {
909
- open: U.value.showTable,
910
- maxHeight: 1e4,
911
- body: {
912
- backgroundColor: e.value.style.chart.backgroundColor,
913
- color: e.value.style.chart.color
914
- },
915
- head: {
916
- backgroundColor: e.value.style.chart.backgroundColor,
917
- color: e.value.style.chart.color
918
- }
919
- }
920
- }, {
921
- content: $(() => [
922
- (a(), D(At, {
923
- key: `table_${ke.value}`,
924
- colNames: R.value.colNames,
925
- head: R.value.head,
926
- body: R.value.body,
927
- config: R.value.config,
928
- title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? ` : ${e.value.style.chart.title.subtitle.text}` : ""}`,
929
- onClose: u[3] || (u[3] = (t) => U.value.showTable = !1)
930
- }, {
931
- th: $(({ th: t }) => [
932
- We(m(t.name ?? t), 1)
933
- ]),
934
- td: $(({ td: t }) => [
935
- t.value === null ? (a(), o("span", Hl, "-")) : (a(), o("b", Rl, m(isNaN(t.value) ? "" : e.value.style.chart.layout.dataLabels.prefix) + m(!isNaN(t.value) && t.value !== null ? Number(t.value.toFixed(e.value.table.td.roundingValue)).toLocaleString() : t) + m(isNaN(t.value) ? "" : e.value.style.chart.layout.dataLabels.suffix), 1)),
936
- y("span", null, m(t.percentage && !isNaN(t.percentage) ? `(${Number(t.percentage.toFixed(e.value.table.td.roundingPercentage)).toLocaleString()}%)` : ""), 1)
937
- ]),
938
- _: 1
939
- }, 8, ["colNames", "head", "body", "config", "title"]))
940
- ]),
941
- _: 1
942
- }, 8, ["config"])) : v("", !0)
943
- ], 46, Ht));
944
- }
945
- }, aa = /* @__PURE__ */ Vt(Ml, [["__scopeId", "data-v-5d9bec59"]]);
946
- export {
947
- aa as default
948
- };