vue-data-ui 3.4.9 → 3.5.1

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 (151) hide show
  1. package/README.md +114 -37
  2. package/dist/{ColorPicker-J5wOPCeB.js → ColorPicker-ChuwChMo.js} +58 -56
  3. package/dist/{NonSvgPenAndPaper-C7TRn0_3.js → NonSvgPenAndPaper-DVgKKLIf.js} +1 -1
  4. package/dist/{PackageVersion-CTUqGqWV.js → PackageVersion-DQvyATVa.js} +1 -1
  5. package/dist/PenAndPaper-SZQIAgkg.js +388 -0
  6. package/dist/{Title-l36lOBMx.js → Title-isbiM8i8.js} +1 -1
  7. package/dist/components/vue-ui-3d-bar.js +1 -1
  8. package/dist/components/vue-ui-accordion.js +1 -1
  9. package/dist/components/vue-ui-age-pyramid.js +1 -1
  10. package/dist/components/vue-ui-annotator.js +1 -1
  11. package/dist/components/vue-ui-bullet.js +1 -1
  12. package/dist/components/vue-ui-candlestick.js +1 -1
  13. package/dist/components/vue-ui-carousel-table.js +1 -1
  14. package/dist/components/vue-ui-chestnut.js +1 -1
  15. package/dist/components/vue-ui-chord.js +1 -1
  16. package/dist/components/vue-ui-circle-pack.js +1 -1
  17. package/dist/components/vue-ui-cursor.js +1 -1
  18. package/dist/components/vue-ui-dashboard.js +1 -1
  19. package/dist/components/vue-ui-digits.js +1 -1
  20. package/dist/components/vue-ui-donut-evolution.js +1 -1
  21. package/dist/components/vue-ui-donut.js +1 -1
  22. package/dist/components/vue-ui-dumbbell.js +1 -1
  23. package/dist/components/vue-ui-flow.js +1 -1
  24. package/dist/components/vue-ui-funnel.js +1 -1
  25. package/dist/components/vue-ui-galaxy.js +1 -1
  26. package/dist/components/vue-ui-gauge.js +1 -1
  27. package/dist/components/vue-ui-gizmo.js +1 -1
  28. package/dist/components/vue-ui-heatmap.js +1 -1
  29. package/dist/components/vue-ui-history-plot.js +1 -1
  30. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  31. package/dist/components/vue-ui-kpi.js +1 -1
  32. package/dist/components/vue-ui-mini-loader.js +1 -1
  33. package/dist/components/vue-ui-molecule.js +1 -1
  34. package/dist/components/vue-ui-mood-radar.js +1 -1
  35. package/dist/components/vue-ui-nested-donuts.js +1 -1
  36. package/dist/components/vue-ui-onion.js +1 -1
  37. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  38. package/dist/components/vue-ui-quadrant.js +1 -1
  39. package/dist/components/vue-ui-quick-chart.js +1 -1
  40. package/dist/components/vue-ui-radar.js +1 -1
  41. package/dist/components/vue-ui-rating.js +1 -1
  42. package/dist/components/vue-ui-relation-circle.js +1 -1
  43. package/dist/components/vue-ui-ridgeline.js +1 -1
  44. package/dist/components/vue-ui-rings.js +1 -1
  45. package/dist/components/vue-ui-scatter.js +1 -1
  46. package/dist/components/vue-ui-skeleton.js +1 -1
  47. package/dist/components/vue-ui-smiley.js +1 -1
  48. package/dist/components/vue-ui-spark-trend.js +1 -1
  49. package/dist/components/vue-ui-sparkbar.js +1 -1
  50. package/dist/components/vue-ui-sparkgauge.js +1 -1
  51. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  52. package/dist/components/vue-ui-sparkline.js +1 -1
  53. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  54. package/dist/components/vue-ui-stackbar.js +1 -1
  55. package/dist/components/vue-ui-strip-plot.js +1 -1
  56. package/dist/components/vue-ui-table-heatmap.js +1 -1
  57. package/dist/components/vue-ui-table-sparkline.js +1 -1
  58. package/dist/components/vue-ui-table.js +1 -1
  59. package/dist/components/vue-ui-thermometer.js +1 -1
  60. package/dist/components/vue-ui-timer.js +1 -1
  61. package/dist/components/vue-ui-tiremarks.js +1 -1
  62. package/dist/components/vue-ui-treemap.js +1 -1
  63. package/dist/components/vue-ui-vertical-bar.js +1 -1
  64. package/dist/components/vue-ui-waffle.js +1 -1
  65. package/dist/components/vue-ui-wheel.js +1 -1
  66. package/dist/components/vue-ui-word-cloud.js +1 -1
  67. package/dist/components/vue-ui-world.js +1 -1
  68. package/dist/components/vue-ui-xy-canvas.js +1 -1
  69. package/dist/components/vue-ui-xy.js +1 -1
  70. package/dist/style.css +1 -1
  71. package/dist/types/vue-data-ui.d.ts +17 -8
  72. package/dist/{useNestedProp-BjZe1Y85.js → useNestedProp-DjGXw6S9.js} +22 -8
  73. package/dist/{vue-data-ui-DjxWWa78.js → vue-data-ui-B_RxfmEm.js} +113 -107
  74. package/dist/vue-data-ui.js +64 -64
  75. package/dist/{vue-ui-3d-bar-CLE7f9pl.js → vue-ui-3d-bar-CMNYyVa2.js} +454 -434
  76. package/dist/{vue-ui-accordion-CZ0thhxa.js → vue-ui-accordion-CqhVCfc2.js} +1 -1
  77. package/dist/{vue-ui-age-pyramid-D73uIOPm.js → vue-ui-age-pyramid-Vqa9iYXE.js} +180 -160
  78. package/dist/{vue-ui-annotator-BylDgUVb.js → vue-ui-annotator-nNv10fBm.js} +3 -3
  79. package/dist/{vue-ui-bullet-Bybo0xK2.js → vue-ui-bullet-BWEBeYV5.js} +190 -170
  80. package/dist/{vue-ui-candlestick-D_FyMdqH.js → vue-ui-candlestick-BoLzL0g1.js} +201 -181
  81. package/dist/{vue-ui-carousel-table-BvMlNdVo.js → vue-ui-carousel-table-Bi6wvUUU.js} +2 -2
  82. package/dist/{vue-ui-chestnut-DA0g0bDV.js → vue-ui-chestnut-BGz1TLXG.js} +375 -355
  83. package/dist/vue-ui-chord-CebhS7ln.js +1153 -0
  84. package/dist/{vue-ui-circle-pack-BPDm-ro5.js → vue-ui-circle-pack-7PJVyKjp.js} +289 -269
  85. package/dist/{vue-ui-cursor-ik59bfC4.js → vue-ui-cursor-qYLAwvzn.js} +1 -1
  86. package/dist/vue-ui-dashboard-DcmMvhgM.js +432 -0
  87. package/dist/{vue-ui-digits-ByNNcWXi.js → vue-ui-digits-DyE8eU1m.js} +1 -1
  88. package/dist/vue-ui-donut-CxZcJFTo.js +1681 -0
  89. package/dist/{vue-ui-donut-evolution-Ca3Svr0B.js → vue-ui-donut-evolution-BVYL-BUJ.js} +480 -444
  90. package/dist/{vue-ui-dumbbell-CxCE2luV.js → vue-ui-dumbbell-QxZn86A3.js} +210 -190
  91. package/dist/{vue-ui-flow-DEvwXd4W.js → vue-ui-flow-DEI5LRch.js} +339 -319
  92. package/dist/{vue-ui-funnel-Bgcx7xia.js → vue-ui-funnel-B_A5orFg.js} +218 -198
  93. package/dist/{vue-ui-galaxy-BWr1EMob.js → vue-ui-galaxy-CUoDRr-O.js} +313 -277
  94. package/dist/{vue-ui-gauge-DQricvo2.js → vue-ui-gauge-46tSRZN5.js} +311 -291
  95. package/dist/{vue-ui-gizmo-C-fKe3io.js → vue-ui-gizmo-BOgbsXao.js} +2 -2
  96. package/dist/{vue-ui-heatmap-B-o_i7Hu.js → vue-ui-heatmap-DKKjl1A2.js} +303 -283
  97. package/dist/{vue-ui-history-plot-DzQ9DPUJ.js → vue-ui-history-plot-C6p_aThr.js} +478 -442
  98. package/dist/{vue-ui-kpi-BGGff8LM.js → vue-ui-kpi-B1yJ83aF.js} +2 -2
  99. package/dist/{vue-ui-mini-loader-CSF-7TJL.js → vue-ui-mini-loader-BudcNBg-.js} +1 -1
  100. package/dist/{vue-ui-molecule-I2OhrCR2.js → vue-ui-molecule-L90GnHee.js} +156 -136
  101. package/dist/{vue-ui-mood-radar-BAT7kZUy.js → vue-ui-mood-radar-Dhigm5rw.js} +266 -246
  102. package/dist/{vue-ui-nested-donuts-CjhJDAQi.js → vue-ui-nested-donuts-D0MCLs5n.js} +597 -557
  103. package/dist/vue-ui-onion-B7yPJ3gL.js +915 -0
  104. package/dist/vue-ui-parallel-coordinate-plot-DY21ivNe.js +1051 -0
  105. package/dist/{vue-ui-quadrant-DGnasrCR.js → vue-ui-quadrant-b0vMRaq-.js} +532 -495
  106. package/dist/{vue-ui-quick-chart-Cam_sWet.js → vue-ui-quick-chart-VK2EN7sh.js} +288 -268
  107. package/dist/{vue-ui-radar-DNI9WI2R.js → vue-ui-radar-B5Vkoz9M.js} +412 -373
  108. package/dist/{vue-ui-rating-CiMoFM_c.js → vue-ui-rating-BH4DW1ZY.js} +1 -1
  109. package/dist/{vue-ui-relation-circle-Dj1jhcsl.js → vue-ui-relation-circle-XHbE-ZUX.js} +228 -208
  110. package/dist/{vue-ui-ridgeline-adIls6bj.js → vue-ui-ridgeline-CAMNq-p_.js} +517 -481
  111. package/dist/vue-ui-rings-ImGOqm_J.js +855 -0
  112. package/dist/vue-ui-scatter-CterNJYe.js +1590 -0
  113. package/dist/{vue-ui-skeleton-DUdI2uOO.js → vue-ui-skeleton-CykXHWj-.js} +2 -2
  114. package/dist/{vue-ui-smiley-sGFRbn31.js → vue-ui-smiley-DnGm6qrK.js} +1 -1
  115. package/dist/{vue-ui-spark-trend-DxpRfUJz.js → vue-ui-spark-trend-N1AsNQJA.js} +2 -2
  116. package/dist/{vue-ui-sparkbar-B44oER5n.js → vue-ui-sparkbar-Bvsi5DTT.js} +2 -2
  117. package/dist/{vue-ui-sparkgauge-ix12NZ7M.js → vue-ui-sparkgauge-DyJmWCWT.js} +2 -2
  118. package/dist/{vue-ui-sparkhistogram-Cs-QDYBR.js → vue-ui-sparkhistogram-5eKrkmSb.js} +143 -140
  119. package/dist/{vue-ui-sparkline-Cb8ZmyUq.js → vue-ui-sparkline-ChKAzlVq.js} +2 -2
  120. package/dist/vue-ui-sparkstackbar-BXNy6nuw.js +441 -0
  121. package/dist/vue-ui-stackbar-1IwvUYBO.js +1827 -0
  122. package/dist/{vue-ui-strip-plot-BjG-Jxnb.js → vue-ui-strip-plot-B1wGxP8-.js} +245 -225
  123. package/dist/{vue-ui-table-DdBdLrAL.js → vue-ui-table-DSsIrT4L.js} +3 -3
  124. package/dist/{vue-ui-table-heatmap-BqCEBoUf.js → vue-ui-table-heatmap-DXFHy7-E.js} +1 -1
  125. package/dist/{vue-ui-table-sparkline-EpCo2Be5.js → vue-ui-table-sparkline-DpqY_4ay.js} +2 -2
  126. package/dist/vue-ui-thermometer-CMKvSA8p.js +584 -0
  127. package/dist/{vue-ui-timer-Br3wp8hG.js → vue-ui-timer-BpdCY_wg.js} +3 -3
  128. package/dist/vue-ui-tiremarks-CNipzVli.js +450 -0
  129. package/dist/vue-ui-treemap-DPE8SY0_.js +1330 -0
  130. package/dist/{vue-ui-vertical-bar-yfbEfLqy.js → vue-ui-vertical-bar-ZU1GCbX0.js} +484 -448
  131. package/dist/{vue-ui-waffle-m-9sqQik.js → vue-ui-waffle-z7nuSuSV.js} +398 -362
  132. package/dist/vue-ui-wheel-DLRoRjeM.js +663 -0
  133. package/dist/{vue-ui-word-cloud-vNwswYZD.js → vue-ui-word-cloud-D2r5E3pP.js} +248 -228
  134. package/dist/{vue-ui-world-BsCNyZy_.js → vue-ui-world-goXYnTyM.js} +287 -267
  135. package/dist/{vue-ui-xy-CIrw1lWQ.js → vue-ui-xy-NDDbNbds.js} +1263 -1227
  136. package/dist/{vue-ui-xy-canvas-DXnLFwW3.js → vue-ui-xy-canvas-2a6NlQe3.js} +338 -322
  137. package/package.json +4 -4
  138. package/dist/PenAndPaper-DSvu9dwa.js +0 -373
  139. package/dist/vue-ui-chord-CDgzolI-.js +0 -1133
  140. package/dist/vue-ui-dashboard-CeJwbiON.js +0 -412
  141. package/dist/vue-ui-donut-DjQXHBJE.js +0 -1645
  142. package/dist/vue-ui-onion-DTY2p87s.js +0 -873
  143. package/dist/vue-ui-parallel-coordinate-plot-C8aWTcNn.js +0 -1014
  144. package/dist/vue-ui-rings-CnTMFK6R.js +0 -813
  145. package/dist/vue-ui-scatter-fzR2c0St.js +0 -1554
  146. package/dist/vue-ui-sparkstackbar-BiRZ51OU.js +0 -424
  147. package/dist/vue-ui-stackbar-DubS6Pg8.js +0 -1708
  148. package/dist/vue-ui-thermometer-DTnfnf9z.js +0 -564
  149. package/dist/vue-ui-tiremarks-CrC_tlIx.js +0 -430
  150. package/dist/vue-ui-treemap-kyuyi2ES.js +0 -1294
  151. package/dist/vue-ui-wheel-BasM7FWt.js +0 -643
@@ -1,813 +0,0 @@
1
- import { defineAsyncComponent as O, useSlots as $t, ref as r, computed as c, toRefs as Tt, watch as Y, shallowRef as Me, onMounted as _t, onBeforeUnmount as xt, createElementBlock as g, openBlock as i, unref as s, normalizeStyle as L, normalizeClass as U, createBlock as A, createCommentVNode as b, createElementVNode as C, createVNode as q, createSlots as ie, withCtx as d, renderSlot as p, normalizeProps as B, guardReactiveProps as V, Fragment as ve, renderList as ce, mergeProps as ze, Teleport as St, toDisplayString as de, resolveDynamicComponent as Ot, createTextVNode as Ee, nextTick as At } from "vue";
2
- import { c as Ue, t as Ft, b as It, p as N, o as We, f as pe, g as Pt, e as Lt, a1 as Nt, h as Ge, a as He, d as D, X as Dt, s as Rt, i as Bt, x as Q, P as Vt, Q as Mt, G as zt, H as Et } from "./lib-C_mNZmhD.js";
3
- import { t as Ut, u as Wt } from "./useResponsive-DfdjqQps.js";
4
- import { u as Gt, a as je } from "./useNestedProp-BjZe1Y85.js";
5
- import { u as Ht } from "./usePrinter-DTzqpYKF.js";
6
- import { u as jt, B as Xt } from "./BaseScanner-BgWxam9d.js";
7
- import { u as Yt } from "./useSvgExport-DrjCWun4.js";
8
- import { u as qt } from "./useUserOptionState-BIvW1Kz7.js";
9
- import { u as Qt } from "./useChartAccessibility-9icAAmYg.js";
10
- import Jt from "./img-BecE5qXd.js";
11
- import { _ as Kt } from "./Shape-CNXKB8O0.js";
12
- import Zt from "./Title-l36lOBMx.js";
13
- import { t as el } from "./themes-AUNCOb2G.js";
14
- import tl from "./Legend-G6GMcdAc.js";
15
- import { _ as ll } from "./_plugin-vue_export-helper-CHgC5LLL.js";
16
- const ol = ["id"], al = ["id"], sl = ["xmlns", "viewBox"], nl = ["width", "height"], ul = ["id"], rl = ["stop-color"], il = ["stop-color"], vl = { key: 1 }, cl = ["stroke", "cx", "cy", "r", "fill"], dl = ["stroke", "stroke-width", "cx", "cy", "r", "fill"], pl = ["stroke", "stroke-width", "cx", "cy", "r", "fill"], hl = ["cx", "cy", "r", "onMouseenter", "onMouseleave", "onClick"], gl = {
17
- key: 4,
18
- class: "vue-data-ui-watermark"
19
- }, fl = ["id"], yl = ["onClick"], ml = ["innerHTML"], bl = {
20
- __name: "vue-ui-rings",
21
- props: {
22
- config: {
23
- type: Object,
24
- default() {
25
- return {};
26
- }
27
- },
28
- dataset: {
29
- type: Array,
30
- default() {
31
- return [];
32
- }
33
- }
34
- },
35
- emits: ["selectLegend"],
36
- setup(Xe, { expose: Ye, emit: qe }) {
37
- const Qe = O(() => import("./Tooltip-oWCO1HKy.js")), Je = O(() => import("./BaseIcon-BmMbm4d0.js")), Ke = O(() => import("./vue-ui-accordion-CZ0thhxa.js")), Ze = O(() => import("./DataTable-BT7VF2ua.js")), et = O(() => import("./PenAndPaper-DSvu9dwa.js")), tt = O(() => import("./UserOptions-CGnQt6Fd.js")), lt = O(() => import("./PackageVersion-CTUqGqWV.js")), ot = O(() => import("./BaseDraggableDialog-ymf2sfB8.js")), { vue_ui_rings: at } = Gt(), st = $t(), k = Xe, F = r(!1), he = c(() => !!k.dataset && k.dataset.length), y = r(Ue()), W = r(!1), J = r(""), T = r(null), ge = r(0), _ = r(null), fe = r(null), ye = r(null), me = r(null), be = r(null), ke = r(0), we = r(0), Ce = r(0), K = r(!1), $e = r(!1), M = r(null), Z = r(null), e = r(le()), { loading: I, FINAL_DATASET: Te, manualLoading: G } = jt({
38
- ...Tt(k),
39
- FINAL_CONFIG: e,
40
- prepareConfig: le,
41
- skeletonDataset: [
42
- { name: "_", values: [13], color: "#808080" },
43
- { name: "_", values: [8], color: "#969696" },
44
- { name: "_", values: [5], color: "#ADADAD" },
45
- { name: "_", values: [3], color: "#C4C4C4" },
46
- { name: "_", values: [2], color: "#DBDBDB" }
47
- ],
48
- skeletonConfig: Ft({
49
- defaultConfig: e.value,
50
- userConfig: {
51
- userOptions: { show: !1 },
52
- table: { show: !1 },
53
- style: {
54
- chart: {
55
- backgroundColor: "#99999930",
56
- layout: {
57
- rings: {
58
- stroke: "#6A6A6A",
59
- gradient: {
60
- underlayerColor: "#FFFFFF"
61
- }
62
- }
63
- },
64
- legend: {
65
- backgroundColor: "transparent"
66
- }
67
- }
68
- }
69
- }
70
- })
71
- }), { userOptionsVisible: ee, setUserOptionsVisibility: _e, keepUserOptionState: xe } = qt({ config: e.value }), { svgRef: te } = Qt({ config: e.value.style.chart.title });
72
- function le() {
73
- const t = je({
74
- userConfig: k.config,
75
- defaultConfig: at
76
- });
77
- return t.theme ? {
78
- ...je({
79
- userConfig: el.vue_ui_rings[t.theme] || k.config,
80
- defaultConfig: t
81
- }),
82
- customPalette: It[t.theme] || N
83
- } : t;
84
- }
85
- Y(() => k.config, (t) => {
86
- I.value || (e.value = le()), ee.value = !e.value.userOptions.showOnChartHover, Se(), ke.value += 1, we.value += 1, Ce.value += 1, w.value.showTable = e.value.table.show, w.value.showTooltip = e.value.style.chart.tooltip.show;
87
- }, { deep: !0 }), Y(() => k.dataset, (t) => {
88
- Array.isArray(t) && t.length > 0 && (G.value = !1);
89
- }, { deep: !0 });
90
- const x = Me(null), R = Me(null);
91
- _t(() => {
92
- $e.value = !0, Se();
93
- });
94
- const oe = c(() => !!e.value.debug);
95
- function Se() {
96
- if (We(k.dataset) ? (pe({
97
- componentName: "VueUiRings",
98
- type: "dataset",
99
- debug: oe.value
100
- }), G.value = !0) : k.dataset.forEach((t, o) => {
101
- t.values.length || (pe({
102
- componentName: "VueUiRings",
103
- type: "dataset",
104
- debug: oe.value
105
- }), G.value = !0), Pt({
106
- datasetObject: t,
107
- requiredAttributes: ["name", "values"]
108
- }).forEach((l) => {
109
- pe({
110
- componentName: "VueUiRings",
111
- type: "datasetSerieAttribute",
112
- property: l,
113
- index: o,
114
- debug: oe.value
115
- });
116
- });
117
- }), We(k.dataset) || (G.value = e.value.loading), e.value.responsive) {
118
- const t = Ut(() => {
119
- K.value = !0;
120
- const { width: o, height: l } = Wt({
121
- chart: _.value,
122
- title: e.value.style.chart.title.text ? fe.value : null,
123
- legend: e.value.style.chart.legend.show ? ye.value : null,
124
- source: me.value,
125
- noTitle: be.value
126
- });
127
- requestAnimationFrame(() => {
128
- u.value.width = o, u.value.height = l - 12, K.value = !1;
129
- });
130
- });
131
- x.value && (R.value && x.value.unobserve(R.value), x.value.disconnect()), x.value = new ResizeObserver(t), R.value = _.value.parentNode, x.value.observe(R.value);
132
- }
133
- setTimeout(() => {
134
- F.value = !0;
135
- }, 600);
136
- }
137
- xt(() => {
138
- x.value && (R.value && x.value.unobserve(R.value), x.value.disconnect());
139
- });
140
- const { isPrinting: Oe, isImaging: Ae, generatePdf: Fe, generateImage: Ie } = Ht({
141
- elementId: `rings_${y.value}`,
142
- fileName: e.value.style.chart.title.text || "vue-ui-rings",
143
- options: e.value.userOptions.print
144
- }), nt = c(() => e.value.userOptions.show && !e.value.style.chart.title.text), Pe = c(() => Lt(e.value.customPalette)), w = r({
145
- showTable: e.value.table.show,
146
- showTooltip: e.value.style.chart.tooltip.show
147
- });
148
- Y(e, () => {
149
- w.value = {
150
- showTable: e.value.table.show,
151
- showTooltip: e.value.style.chart.tooltip.show
152
- };
153
- }, { immediate: !0 });
154
- const u = r({
155
- height: 360,
156
- width: 360
157
- }), ut = c(() => Math.min(u.value.height, u.value.width)), rt = qe, m = r([]);
158
- function ae(t) {
159
- m.value.includes(t) ? m.value = m.value.filter((o) => o !== t) : m.value.push(t), rt("selectLegend", f.value.map((o) => ({
160
- name: o.name,
161
- color: o.color,
162
- value: o.value
163
- })));
164
- }
165
- const it = c(() => Math.max(
166
- ...H.value.filter((t) => !m.value.includes(t.uid)).map(({ value: t }) => t)
167
- ));
168
- function Le(t) {
169
- return t / it.value;
170
- }
171
- const H = c(() => Te.value.map(({ values: t, name: o, color: l = null }, a) => {
172
- const n = Nt(t).reduce((v, E) => v + E, 0);
173
- return {
174
- name: o,
175
- color: l || Ge(l) || Pe.value[a] || N[a] || N[a % N.length],
176
- value: n,
177
- proportion: n / Te.value.map((v) => (v.values || []).reduce((E, Ct) => E + Ct, 0)).reduce((v, E) => v + E, 0),
178
- uid: Ue(),
179
- absoluteIndex: a
180
- };
181
- })), se = c(() => H.value.map((t, o) => ({
182
- ...t,
183
- shape: "circle",
184
- opacity: m.value.includes(t.uid) ? 0.5 : 1,
185
- segregate: () => ae(t.uid),
186
- isSegregated: m.value.includes(t.uid),
187
- display: `${t.name}${e.value.style.chart.legend.showPercentage || e.value.style.chart.legend.showValue ? ": " : ""}${e.value.style.chart.legend.showValue ? He(e.value.style.chart.layout.labels.dataLabels.formatter, t.value, D({
188
- p: e.value.style.chart.layout.labels.dataLabels.prefix,
189
- v: t.value,
190
- s: e.value.style.chart.layout.labels.dataLabels.suffix,
191
- r: e.value.style.chart.legend.roundingValue
192
- }), { datapoint: t, index: o }) : ""}${e.value.style.chart.legend.showPercentage ? m.value.includes(t.uid) ? `${e.value.style.chart.legend.showValue ? " (" : ""}- %${e.value.style.chart.legend.showValue ? ")" : ""}` : `${e.value.style.chart.legend.showValue ? " (" : ""}${isNaN(t.value / $.value) ? "-" : D({ v: t.value / $.value * 100, s: "%", r: e.value.style.chart.legend.roundingPercentage })}${e.value.style.chart.legend.showValue ? ")" : ""}` : ""}`
193
- })).toSorted((t, o) => o.value - t.value)), vt = c(() => ({
194
- cy: "rings-div-legend",
195
- backgroundColor: e.value.style.chart.legend.backgroundColor,
196
- color: e.value.style.chart.legend.color,
197
- fontSize: e.value.style.chart.legend.fontSize,
198
- paddingBottom: 12,
199
- fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
200
- })), $ = c(() => H.value.filter((t) => !m.value.includes(t.uid)).map(({ value: t }) => t).reduce((t, o) => t + o, 0)), f = c(() => H.value.filter((t) => !m.value.includes(t.uid)).map(({ name: t, value: o, color: l = null, uid: a, absoluteIndex: n }, v) => ({
201
- absoluteIndex: n,
202
- uid: a,
203
- name: t,
204
- color: l || Ge(l) || Pe.value[v] || N[v] || N[v % N.length],
205
- value: o,
206
- proportion: Le(o),
207
- percentage: o / $.value * 100,
208
- strokeWidth: e.value.style.chart.layout.rings.strokeWidth * Le(o)
209
- })).toSorted((t, o) => o.value - t.value));
210
- function ct() {
211
- return f.value.map(
212
- ({ name: t, color: o, value: l, absoluteValues: a, percentage: n }) => ({
213
- name: t,
214
- color: o,
215
- value: l,
216
- absoluteValues: a,
217
- percentage: n
218
- })
219
- );
220
- }
221
- const h = c(() => ut.value - e.value.style.chart.layout.rings.strokeWidth * 2);
222
- function dt(t, o) {
223
- e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: t, seriesIndex: o });
224
- }
225
- function pt(t, o) {
226
- T.value = null, W.value = !1, e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: t, seriesIndex: o });
227
- }
228
- const ne = r(null);
229
- function ht(t, o) {
230
- if (e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: o }), m.value.length === k.dataset.length) return;
231
- ne.value = {
232
- datapoint: t,
233
- seriesIndex: o,
234
- series: f.value,
235
- config: e.value
236
- }, T.value = o;
237
- const l = f.value[o], a = e.value.style.chart.tooltip.customFormat;
238
- if (zt(a) && Et(() => a({
239
- seriesIndex: o,
240
- datapoint: t,
241
- series: f.value,
242
- config: e.value
243
- })))
244
- J.value = a({
245
- seriesIndex: o,
246
- datapoint: t,
247
- series: f.value,
248
- config: e.value
249
- });
250
- else {
251
- let n = "";
252
- n += `<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>`, n += `<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}" />${st.pattern ? `<circle cx="30" cy="30" r="30" stroke="none" fill="url(#pattern_${y.value}_${t.absoluteIndex})" />` : ""}</svg>`, e.value.style.chart.tooltip.showValue && (n += `<b>${He(
253
- e.value.style.chart.layout.labels.dataLabels.formatter,
254
- l.value,
255
- D({
256
- p: e.value.style.chart.layout.labels.dataLabels.prefix,
257
- v: l.value,
258
- s: e.value.style.chart.layout.labels.dataLabels.suffix,
259
- r: e.value.style.chart.tooltip.roundingValue
260
- }),
261
- { datapoint: t, seriesIndex: o }
262
- )}
263
- </b>`), e.value.style.chart.tooltip.showPercentage && (e.value.style.chart.tooltip.showValue ? n += `<span>(${D({
264
- v: l.value / $.value * 100,
265
- s: "%",
266
- r: e.value.style.chart.tooltip.roundingPercentage
267
- })})</span></div>` : n += `<b>${D({
268
- v: l.value / $.value * 100,
269
- s: "%",
270
- r: e.value.style.chart.tooltip.roundingPercentage
271
- })}</b></div>`), J.value = n;
272
- }
273
- W.value = !0;
274
- }
275
- const S = c(() => {
276
- const t = f.value.map((l) => ({
277
- name: l.name,
278
- color: l.color
279
- })), o = f.value.map((l) => l.value);
280
- return { head: t, body: o };
281
- }), j = c(() => {
282
- const t = [
283
- ' <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>',
284
- 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 }),
285
- "100%"
286
- ], o = S.value.head.map((n, v) => [
287
- {
288
- color: n.color,
289
- name: n.name
290
- },
291
- D({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: S.value.body[v], s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
292
- isNaN(S.value.body[v] / $.value) ? "-" : (S.value.body[v] / $.value * 100).toFixed(e.value.table.td.roundingPercentage) + "%"
293
- ]), l = {
294
- th: {
295
- backgroundColor: e.value.table.th.backgroundColor,
296
- color: e.value.table.th.color,
297
- outline: e.value.table.th.outline
298
- },
299
- td: {
300
- backgroundColor: e.value.table.td.backgroundColor,
301
- color: e.value.table.td.color,
302
- outline: e.value.table.td.outline
303
- },
304
- breakpoint: e.value.table.responsiveBreakpoint
305
- }, a = [
306
- e.value.table.columnNames.series,
307
- e.value.table.columnNames.value,
308
- e.value.table.columnNames.percentage
309
- ];
310
- return {
311
- head: t,
312
- body: o,
313
- config: l,
314
- colNames: a
315
- };
316
- });
317
- function ue(t = null) {
318
- At(() => {
319
- const o = S.value.head.map((n, v) => [[
320
- n.name
321
- ], [S.value.body[v]], [isNaN(S.value.body[v] / $.value) ? "-" : S.value.body[v] / $.value * 100]]), l = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [[""], ["val"], ["%"]]].concat(o), a = Vt(l);
322
- t ? t(a) : Mt({ csvContent: a, title: e.value.style.chart.title.text || "vue-ui-rings" });
323
- });
324
- }
325
- const P = r(!1);
326
- function Ne(t) {
327
- P.value = t, ge.value += 1;
328
- }
329
- function De() {
330
- w.value.showTable = !w.value.showTable;
331
- }
332
- function Re() {
333
- w.value.showTooltip = !w.value.showTooltip;
334
- }
335
- const X = r(!1);
336
- function re() {
337
- X.value = !X.value;
338
- }
339
- async function gt({ scale: t = 2 } = {}) {
340
- if (!_.value) return;
341
- const { width: o, height: l } = _.value.getBoundingClientRect(), a = o / l, { imageUri: n, base64: v } = await Jt({ domElement: _.value, base64: !0, img: !0, scale: t });
342
- return {
343
- imageUri: n,
344
- base64: v,
345
- title: e.value.style.chart.title.text,
346
- width: o,
347
- height: l,
348
- aspectRatio: a
349
- };
350
- }
351
- const z = c(() => {
352
- const t = e.value.table.useDialog && !e.value.table.show, o = w.value.showTable;
353
- return {
354
- component: t ? ot : Ke,
355
- title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
356
- props: t ? {
357
- backgroundColor: e.value.table.th.backgroundColor,
358
- color: e.value.table.th.color,
359
- headerColor: e.value.table.th.color,
360
- headerBg: e.value.table.th.backgroundColor,
361
- isFullscreen: P.value,
362
- fullscreenParent: _.value,
363
- forcedWidth: Math.min(800, window.innerWidth * 0.8)
364
- } : {
365
- hideDetails: !0,
366
- config: {
367
- open: o,
368
- maxHeight: 1e4,
369
- body: {
370
- backgroundColor: e.value.style.chart.backgroundColor,
371
- color: e.value.style.chart.color
372
- },
373
- head: {
374
- backgroundColor: e.value.style.chart.backgroundColor,
375
- color: e.value.style.chart.color
376
- }
377
- }
378
- }
379
- };
380
- });
381
- Y(() => w.value.showTable, (t) => {
382
- e.value.table.show || (t && e.value.table.useDialog && M.value ? M.value.open() : "close" in M.value && M.value.close());
383
- });
384
- function Be() {
385
- w.value.showTable = !1, Z.value && Z.value.setTableIconState(!1);
386
- }
387
- const ft = c(() => se.value.map((t) => ({
388
- ...t,
389
- name: t.display
390
- }))), yt = c(() => e.value.style.chart.backgroundColor), mt = c(() => e.value.style.chart.legend), bt = c(() => e.value.style.chart.title), { exportSvg: kt, getSvg: wt } = Yt({
391
- svg: te,
392
- title: bt,
393
- legend: mt,
394
- legendItems: ft,
395
- backgroundColor: yt
396
- });
397
- async function Ve({ isCb: t }) {
398
- if (t) {
399
- const { blob: o, url: l, text: a, dataUrl: n } = await wt();
400
- e.value.userOptions.callbacks.svg({ blob: o, url: l, text: a, dataUrl: n });
401
- } else
402
- kt();
403
- }
404
- return Ye({
405
- getData: ct,
406
- getImage: gt,
407
- generatePdf: Fe,
408
- generateCsv: ue,
409
- generateImage: Ie,
410
- generateSvg: Ve,
411
- toggleTable: De,
412
- toggleTooltip: Re,
413
- toggleAnnotator: re,
414
- toggleFullscreen: Ne
415
- }), (t, o) => (i(), g("div", {
416
- ref_key: "ringsChart",
417
- ref: _,
418
- class: U(`vue-data-ui-component vue-ui-rings ${P.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
419
- style: L(`font-family:${e.value.style.fontFamily};text-align:center;width:100%;background:${e.value.style.chart.backgroundColor};${e.value.responsive ? "height: 100%" : ""}`),
420
- id: `rings_${y.value}`,
421
- onMouseleave: o[2] || (o[2] = (l) => {
422
- T.value = null, W.value = !1, s(_e)(!1);
423
- }),
424
- onMouseenter: o[3] || (o[3] = () => s(_e)(!0))
425
- }, [
426
- e.value.userOptions.buttons.annotator ? (i(), A(s(et), {
427
- key: 0,
428
- svgRef: s(te),
429
- backgroundColor: e.value.style.chart.backgroundColor,
430
- color: e.value.style.chart.color,
431
- active: X.value,
432
- onClose: re
433
- }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : b("", !0),
434
- nt.value ? (i(), g("div", {
435
- key: 1,
436
- ref_key: "noTitle",
437
- ref: be,
438
- class: "vue-data-ui-no-title-space",
439
- style: "height:36px; width: 100%;background:transparent"
440
- }, null, 512)) : b("", !0),
441
- e.value.style.chart.title.text ? (i(), g("div", {
442
- key: 2,
443
- ref_key: "chartTitle",
444
- ref: fe,
445
- style: "width:100%;background:transparent"
446
- }, [
447
- (i(), A(Zt, {
448
- key: `title_${ke.value}`,
449
- config: {
450
- title: {
451
- cy: "rings-div-title",
452
- ...e.value.style.chart.title
453
- },
454
- subtitle: {
455
- cy: "rings-div-subtitle",
456
- ...e.value.style.chart.title.subtitle
457
- }
458
- }
459
- }, null, 8, ["config"]))
460
- ], 512)) : b("", !0),
461
- C("div", {
462
- id: `legend-top-${y.value}`
463
- }, null, 8, al),
464
- e.value.userOptions.show && he.value && (s(xe) || s(ee)) ? (i(), A(s(tt), {
465
- ref_key: "userOptionsRef",
466
- ref: Z,
467
- key: `user_options_${ge.value}`,
468
- backgroundColor: e.value.style.chart.backgroundColor,
469
- color: e.value.style.chart.color,
470
- isPrinting: s(Oe),
471
- isImaging: s(Ae),
472
- uid: y.value,
473
- hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.chart.tooltip.show,
474
- hasPdf: e.value.userOptions.buttons.pdf,
475
- hasXls: e.value.userOptions.buttons.csv,
476
- hasImg: e.value.userOptions.buttons.img,
477
- hasSvg: e.value.userOptions.buttons.svg,
478
- hasTable: e.value.userOptions.buttons.table,
479
- hasFullscreen: e.value.userOptions.buttons.fullscreen,
480
- isTooltip: w.value.showTooltip,
481
- isFullscreen: P.value,
482
- titles: { ...e.value.userOptions.buttonTitles },
483
- chartElement: _.value,
484
- position: e.value.userOptions.position,
485
- hasAnnotator: e.value.userOptions.buttons.annotator,
486
- isAnnotation: X.value,
487
- callbacks: e.value.userOptions.callbacks,
488
- printScale: e.value.userOptions.print.scale,
489
- tableDialog: e.value.table.useDialog,
490
- onToggleFullscreen: Ne,
491
- onGeneratePdf: s(Fe),
492
- onGenerateCsv: ue,
493
- onGenerateImage: s(Ie),
494
- onGenerateSvg: Ve,
495
- onToggleTable: De,
496
- onToggleTooltip: Re,
497
- onToggleAnnotator: re,
498
- style: L({
499
- visibility: s(xe) ? s(ee) ? "visible" : "hidden" : "visible"
500
- })
501
- }, ie({ _: 2 }, [
502
- t.$slots.menuIcon ? {
503
- name: "menuIcon",
504
- fn: d(({ isOpen: l, color: a }) => [
505
- p(t.$slots, "menuIcon", B(V({ isOpen: l, color: a })), void 0, !0)
506
- ]),
507
- key: "0"
508
- } : void 0,
509
- t.$slots.optionTooltip ? {
510
- name: "optionTooltip",
511
- fn: d(() => [
512
- p(t.$slots, "optionTooltip", {}, void 0, !0)
513
- ]),
514
- key: "1"
515
- } : void 0,
516
- t.$slots.optionPdf ? {
517
- name: "optionPdf",
518
- fn: d(() => [
519
- p(t.$slots, "optionPdf", {}, void 0, !0)
520
- ]),
521
- key: "2"
522
- } : void 0,
523
- t.$slots.optionCsv ? {
524
- name: "optionCsv",
525
- fn: d(() => [
526
- p(t.$slots, "optionCsv", {}, void 0, !0)
527
- ]),
528
- key: "3"
529
- } : void 0,
530
- t.$slots.optionImg ? {
531
- name: "optionImg",
532
- fn: d(() => [
533
- p(t.$slots, "optionImg", {}, void 0, !0)
534
- ]),
535
- key: "4"
536
- } : void 0,
537
- t.$slots.optionSvg ? {
538
- name: "optionSvg",
539
- fn: d(() => [
540
- p(t.$slots, "optionSvg", {}, void 0, !0)
541
- ]),
542
- key: "5"
543
- } : void 0,
544
- t.$slots.optionTable ? {
545
- name: "optionTable",
546
- fn: d(() => [
547
- p(t.$slots, "optionTable", {}, void 0, !0)
548
- ]),
549
- key: "6"
550
- } : void 0,
551
- t.$slots.optionFullscreen ? {
552
- name: "optionFullscreen",
553
- fn: d(({ toggleFullscreen: l, isFullscreen: a }) => [
554
- p(t.$slots, "optionFullscreen", B(V({ toggleFullscreen: l, isFullscreen: a })), void 0, !0)
555
- ]),
556
- key: "7"
557
- } : void 0,
558
- t.$slots.optionAnnotator ? {
559
- name: "optionAnnotator",
560
- fn: d(({ toggleAnnotator: l, isAnnotator: a }) => [
561
- p(t.$slots, "optionAnnotator", B(V({ toggleAnnotator: l, isAnnotator: a })), void 0, !0)
562
- ]),
563
- key: "8"
564
- } : void 0
565
- ]), 1032, ["backgroundColor", "color", "isPrinting", "isImaging", "uid", "hasTooltip", "hasPdf", "hasXls", "hasImg", "hasSvg", "hasTable", "hasFullscreen", "isTooltip", "isFullscreen", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "tableDialog", "onGeneratePdf", "onGenerateImage", "style"])) : b("", !0),
566
- (i(), g("svg", {
567
- ref_key: "svgRef",
568
- ref: te,
569
- xmlns: s(Dt),
570
- class: U({ "vue-data-ui-fullscreen--on": P.value, "vue-data-ui-fulscreen--off": !P.value, resizing: K.value || s(I) }),
571
- viewBox: `0 0 ${u.value.width <= 0 ? 10 : u.value.width} ${u.value.height <= 0 ? 10 : u.value.height}`,
572
- style: L(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.chart.color}`)
573
- }, [
574
- q(s(lt)),
575
- t.$slots["chart-background"] ? (i(), g("foreignObject", {
576
- key: 0,
577
- x: 0,
578
- y: 0,
579
- width: u.value.width <= 0 ? 10 : u.value.width,
580
- height: u.value.height <= 0 ? 10 : u.value.height,
581
- style: {
582
- pointerEvents: "none"
583
- }
584
- }, [
585
- p(t.$slots, "chart-background", {}, void 0, !0)
586
- ], 8, nl)) : b("", !0),
587
- C("defs", null, [
588
- (i(!0), g(ve, null, ce(f.value, (l, a) => (i(), g("radialGradient", {
589
- cx: "50%",
590
- cy: "30%",
591
- r: "50%",
592
- fx: "50%",
593
- fy: "50%",
594
- id: `gradient_${y.value}_${a}`
595
- }, [
596
- C("stop", {
597
- offset: "0%",
598
- "stop-color": s(Rt)(s(Bt)(l.color, 0.05), 100 - e.value.style.chart.layout.rings.gradient.intensity)
599
- }, null, 8, rl),
600
- C("stop", {
601
- offset: "100%",
602
- "stop-color": l.color
603
- }, null, 8, il)
604
- ], 8, ul))), 256))
605
- ]),
606
- t.$slots.pattern ? (i(), g("g", vl, [
607
- (i(!0), g(ve, null, ce(f.value, (l) => (i(), g("defs", null, [
608
- p(t.$slots, "pattern", ze({ ref_for: !0 }, { seriesIndex: l.absoluteIndex, patternId: `pattern_${y.value}_${l.absoluteIndex}` }), void 0, !0)
609
- ]))), 256))
610
- ])) : b("", !0),
611
- (i(!0), g(ve, null, ce(f.value, (l, a) => (i(), g("g", null, [
612
- C("circle", {
613
- class: U({
614
- "vue-ui-rings-item": F.value && e.value.useCssAnimation,
615
- "vue-rings-item-onload": !F.value && e.value.useCssAnimation && !s(I),
616
- "vue-ui-rings-opacity": T.value !== null && T.value !== a
617
- }),
618
- style: L(`animation-delay:${a * 100}ms`),
619
- stroke: e.value.style.chart.layout.rings.stroke,
620
- cx: u.value.width / 2,
621
- cy: a === 0 ? u.value.height / 2 : u.value.height / 2 + h.value * f.value[0].proportion / 2 - h.value * l.proportion / 2 - 2 * (a + 1),
622
- r: s(Q)(h.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : h.value * l.proportion / 2 * 0.9),
623
- fill: e.value.style.chart.layout.rings.gradient.underlayerColor
624
- }, null, 14, cl),
625
- C("circle", {
626
- class: U({
627
- "vue-ui-rings-item": F.value && e.value.useCssAnimation,
628
- "vue-rings-item-onload": !F.value && e.value.useCssAnimation && !s(I),
629
- "vue-ui-rings-shadow": e.value.style.chart.layout.rings.useShadow,
630
- "vue-ui-rings-blur": T.value !== null && T.value !== a
631
- }),
632
- style: L(`animation-delay:${a * 100}ms`),
633
- stroke: e.value.style.chart.layout.rings.stroke,
634
- "stroke-width": l.strokeWidth < 0.5 ? 0.5 : l.strokeWidth,
635
- cx: u.value.width / 2,
636
- cy: a === 0 ? u.value.height / 2 : u.value.height / 2 + h.value * f.value[0].proportion / 2 - h.value * l.proportion / 2 - 2 * (a + 1),
637
- r: s(Q)(h.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : h.value * l.proportion / 2 * 0.9),
638
- fill: e.value.style.chart.layout.rings.gradient.show ? `url(#gradient_${y.value}_${a})` : l.color
639
- }, null, 14, dl),
640
- t.$slots.pattern ? (i(), g("circle", {
641
- key: 0,
642
- class: U({
643
- "vue-ui-rings-item": F.value && e.value.useCssAnimation,
644
- "vue-rings-item-onload": !F.value && e.value.useCssAnimation && !s(I),
645
- "vue-ui-rings-shadow": e.value.style.chart.layout.rings.useShadow,
646
- "vue-ui-rings-blur": T.value !== null && T.value !== a
647
- }),
648
- style: L(`animation-delay:${a * 100}ms`),
649
- stroke: e.value.style.chart.layout.rings.stroke,
650
- "stroke-width": l.strokeWidth < 0.5 ? 0.5 : l.strokeWidth,
651
- cx: u.value.width / 2,
652
- cy: a === 0 ? u.value.height / 2 : u.value.height / 2 + h.value * f.value[0].proportion / 2 - h.value * l.proportion / 2 - 2 * (a + 1),
653
- r: s(Q)(h.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : h.value * l.proportion / 2 * 0.9),
654
- fill: `url(#pattern_${y.value}_${l.absoluteIndex})`
655
- }, null, 14, pl)) : b("", !0),
656
- C("circle", {
657
- stroke: "none",
658
- cx: u.value.width / 2,
659
- cy: a === 0 ? u.value.height / 2 : u.value.height / 2 + h.value * f.value[0].proportion / 2 - h.value * l.proportion / 2 - 2 * (a + 1),
660
- r: s(Q)(h.value * l.proportion / 2 * 0.9 <= 0 ? 1e-4 : h.value * l.proportion / 2 * 0.9),
661
- fill: "transparent",
662
- onMouseenter: (n) => ht(l, a),
663
- onMouseleave: (n) => pt(l, a),
664
- onClick: (n) => dt(l, a)
665
- }, null, 40, hl)
666
- ]))), 256)),
667
- p(t.$slots, "svg", { svg: u.value }, void 0, !0)
668
- ], 14, sl)),
669
- t.$slots.watermark ? (i(), g("div", gl, [
670
- p(t.$slots, "watermark", B(V({ isPrinting: s(Oe) || s(Ae) })), void 0, !0)
671
- ])) : b("", !0),
672
- C("div", {
673
- id: `legend-bottom-${y.value}`
674
- }, null, 8, fl),
675
- $e.value ? (i(), A(St, {
676
- key: 5,
677
- to: e.value.style.chart.legend.position === "top" ? `#legend-top-${y.value}` : `#legend-bottom-${y.value}`
678
- }, [
679
- C("div", {
680
- ref_key: "chartLegend",
681
- ref: ye
682
- }, [
683
- e.value.style.chart.legend.show ? (i(), A(tl, {
684
- key: `legend_${Ce.value}`,
685
- legendSet: se.value,
686
- config: vt.value,
687
- onClickMarker: o[0] || (o[0] = ({ legend: l }) => ae(l.uid))
688
- }, ie({
689
- item: d(({ legend: l, index: a }) => [
690
- s(I) ? b("", !0) : (i(), g("div", {
691
- key: 0,
692
- onClick: (n) => ae(l.uid),
693
- style: L(`opacity:${m.value.includes(l.uid) ? 0.5 : 1}`)
694
- }, de(l.display), 13, yl))
695
- ]),
696
- _: 2
697
- }, [
698
- t.$slots.pattern ? {
699
- name: "legend-pattern",
700
- fn: d(({ legend: l, index: a }) => [
701
- q(Kt, {
702
- shape: l.shape,
703
- radius: 30,
704
- stroke: "none",
705
- plot: { x: 30, y: 30 },
706
- fill: `url(#pattern_${y.value}_${a})`
707
- }, null, 8, ["shape", "fill"])
708
- ]),
709
- key: "0"
710
- } : void 0
711
- ]), 1032, ["legendSet", "config"])) : p(t.$slots, "legend", {
712
- key: 1,
713
- legend: se.value
714
- }, void 0, !0)
715
- ], 512)
716
- ], 8, ["to"])) : b("", !0),
717
- t.$slots.source ? (i(), g("div", {
718
- key: 6,
719
- ref_key: "source",
720
- ref: me,
721
- dir: "auto"
722
- }, [
723
- p(t.$slots, "source", {}, void 0, !0)
724
- ], 512)) : b("", !0),
725
- q(s(Qe), {
726
- show: w.value.showTooltip && W.value && m.value.length < k.dataset.length,
727
- backgroundColor: e.value.style.chart.tooltip.backgroundColor,
728
- color: e.value.style.chart.tooltip.color,
729
- borderRadius: e.value.style.chart.tooltip.borderRadius,
730
- borderColor: e.value.style.chart.tooltip.borderColor,
731
- borderWidth: e.value.style.chart.tooltip.borderWidth,
732
- fontSize: e.value.style.chart.tooltip.fontSize,
733
- backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
734
- position: e.value.style.chart.tooltip.position,
735
- offsetY: e.value.style.chart.tooltip.offsetY,
736
- parent: _.value,
737
- content: J.value,
738
- isFullscreen: P.value,
739
- isCustom: e.value.style.chart.tooltip.customFormat && typeof e.value.style.chart.tooltip.customFormat == "function",
740
- smooth: e.value.style.chart.tooltip.smooth,
741
- backdropFilter: e.value.style.chart.tooltip.backdropFilter,
742
- smoothForce: e.value.style.chart.tooltip.smoothForce,
743
- smoothSnapThreshold: e.value.style.chart.tooltip.smoothSnapThreshold
744
- }, {
745
- "tooltip-before": d(() => [
746
- p(t.$slots, "tooltip-before", B(V({ ...ne.value })), void 0, !0)
747
- ]),
748
- "tooltip-after": d(() => [
749
- p(t.$slots, "tooltip-after", B(V({ ...ne.value })), void 0, !0)
750
- ]),
751
- _: 3
752
- }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
753
- he.value && e.value.userOptions.buttons.table ? (i(), A(Ot(z.value.component), ze({ key: 7 }, z.value.props, {
754
- ref_key: "tableUnit",
755
- ref: M,
756
- onClose: Be
757
- }), ie({
758
- content: d(() => [
759
- (i(), A(s(Ze), {
760
- key: `table_${we.value}`,
761
- colNames: j.value.colNames,
762
- head: j.value.head,
763
- body: j.value.body,
764
- config: j.value.config,
765
- title: e.value.table.useDialog ? "" : z.value.title,
766
- withCloseButton: !e.value.table.useDialog,
767
- onClose: Be
768
- }, {
769
- th: d(({ th: l }) => [
770
- C("div", {
771
- innerHTML: l,
772
- style: { display: "flex", "align-items": "center" }
773
- }, null, 8, ml)
774
- ]),
775
- td: d(({ td: l }) => [
776
- Ee(de(l.name || l), 1)
777
- ]),
778
- _: 1
779
- }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
780
- ]),
781
- _: 2
782
- }, [
783
- e.value.table.useDialog ? {
784
- name: "title",
785
- fn: d(() => [
786
- Ee(de(z.value.title), 1)
787
- ]),
788
- key: "0"
789
- } : void 0,
790
- e.value.table.useDialog ? {
791
- name: "actions",
792
- fn: d(() => [
793
- C("button", {
794
- tabindex: "0",
795
- class: "vue-ui-user-options-button",
796
- onClick: o[1] || (o[1] = (l) => ue(e.value.userOptions.callbacks.csv))
797
- }, [
798
- q(s(Je), {
799
- name: "excel",
800
- stroke: z.value.props.color
801
- }, null, 8, ["stroke"])
802
- ])
803
- ]),
804
- key: "1"
805
- } : void 0
806
- ]), 1040)) : b("", !0),
807
- s(I) ? (i(), A(Xt, { key: 8 })) : b("", !0)
808
- ], 46, ol));
809
- }
810
- }, Dl = /* @__PURE__ */ ll(bl, [["__scopeId", "data-v-618dffa7"]]);
811
- export {
812
- Dl as default
813
- };