vue-data-ui 3.5.2 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/README.md +36 -27
  2. package/dist/{Arrow-BGVin3AS.js → Arrow-CWYIBV-7.js} +1 -1
  3. package/dist/{BaseDraggableDialog-ymf2sfB8.js → BaseDraggableDialog-CRF94NJQ.js} +2 -2
  4. package/dist/{BaseIcon-BmMbm4d0.js → BaseIcon-CofSxalQ.js} +6 -5
  5. package/dist/{ColorPicker-ChuwChMo.js → ColorPicker-e1-OSGlQ.js} +10 -10
  6. package/dist/{DataTable-BT7VF2ua.js → DataTable-CHaOCmsE.js} +2 -2
  7. package/dist/{Legend-G6GMcdAc.js → Legend-Web3GjlR.js} +10 -10
  8. package/dist/{NonSvgPenAndPaper-DVgKKLIf.js → NonSvgPenAndPaper-CjYFLlns.js} +3 -3
  9. package/dist/{PackageVersion-Y7t79Jtq.js → PackageVersion-Bq_mtsqr.js} +1 -1
  10. package/dist/{PenAndPaper-SZQIAgkg.js → PenAndPaper-HCZQTkqi.js} +20 -20
  11. package/dist/{Shape-CNXKB8O0.js → Shape-DE6X_t31.js} +3 -3
  12. package/dist/{Slicer-D2wm0coO.js → Slicer-BFBBG6xv.js} +23 -23
  13. package/dist/{SlicerPreview-ij72TAs6.js → SlicerPreview-D76aSViW.js} +2 -2
  14. package/dist/{SparkTooltip-BEewz-_Q.js → SparkTooltip-B2rpVWE1.js} +6 -6
  15. package/dist/{Title-BzH_LEA3.js → Title-DfFUb9hd.js} +1 -1
  16. package/dist/{Tooltip-oWCO1HKy.js → Tooltip-WD0Ros6G.js} +1 -1
  17. package/dist/{UserOptions-CGnQt6Fd.js → UserOptions-B3I-s3Lw.js} +2 -2
  18. package/dist/components/arrow.js +1 -1
  19. package/dist/components/vue-ui-3d-bar.js +3 -3
  20. package/dist/components/vue-ui-accordion.js +1 -1
  21. package/dist/components/vue-ui-age-pyramid.js +3 -3
  22. package/dist/components/vue-ui-annotator.js +1 -1
  23. package/dist/components/vue-ui-bullet.js +3 -3
  24. package/dist/components/vue-ui-candlestick.js +3 -3
  25. package/dist/components/vue-ui-carousel-table.js +1 -1
  26. package/dist/components/vue-ui-chestnut.js +3 -3
  27. package/dist/components/vue-ui-chord.js +3 -3
  28. package/dist/components/vue-ui-circle-pack.js +3 -3
  29. package/dist/components/vue-ui-cursor.js +1 -1
  30. package/dist/components/vue-ui-dashboard.js +1 -1
  31. package/dist/components/vue-ui-digits.js +1 -1
  32. package/dist/components/vue-ui-donut-evolution.js +2 -2
  33. package/dist/components/vue-ui-donut.js +3 -3
  34. package/dist/components/vue-ui-dumbbell.js +3 -3
  35. package/dist/components/vue-ui-flow.js +3 -3
  36. package/dist/components/vue-ui-funnel.js +2 -2
  37. package/dist/components/vue-ui-galaxy.js +1 -1
  38. package/dist/components/vue-ui-gauge.js +1 -1
  39. package/dist/components/vue-ui-gizmo.js +1 -1
  40. package/dist/components/vue-ui-heatmap.js +1 -1
  41. package/dist/components/vue-ui-history-plot.js +3 -3
  42. package/dist/components/vue-ui-horizontal-bar.js +3 -3
  43. package/dist/components/vue-ui-icon.js +1 -1
  44. package/dist/components/vue-ui-kpi.js +1 -1
  45. package/dist/components/vue-ui-mini-loader.js +1 -1
  46. package/dist/components/vue-ui-molecule.js +3 -3
  47. package/dist/components/vue-ui-mood-radar.js +3 -3
  48. package/dist/components/vue-ui-nested-donuts.js +2 -2
  49. package/dist/components/vue-ui-onion.js +3 -3
  50. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  51. package/dist/components/vue-ui-quadrant.js +3 -3
  52. package/dist/components/vue-ui-quick-chart.js +3 -3
  53. package/dist/components/vue-ui-radar.js +3 -3
  54. package/dist/components/vue-ui-rating.js +1 -1
  55. package/dist/components/vue-ui-relation-circle.js +3 -3
  56. package/dist/components/vue-ui-ridgeline.js +3 -3
  57. package/dist/components/vue-ui-rings.js +3 -3
  58. package/dist/components/vue-ui-scatter.js +3 -3
  59. package/dist/components/vue-ui-skeleton.js +1 -1
  60. package/dist/components/vue-ui-smiley.js +1 -1
  61. package/dist/components/vue-ui-spark-trend.js +1 -1
  62. package/dist/components/vue-ui-sparkbar.js +2 -2
  63. package/dist/components/vue-ui-sparkgauge.js +3 -3
  64. package/dist/components/vue-ui-sparkhistogram.js +3 -3
  65. package/dist/components/vue-ui-sparkline.js +3 -3
  66. package/dist/components/vue-ui-sparkstackbar.js +2 -2
  67. package/dist/components/vue-ui-stackbar.js +3 -3
  68. package/dist/components/vue-ui-stackline.js +5 -0
  69. package/dist/components/vue-ui-strip-plot.js +3 -3
  70. package/dist/components/vue-ui-table-heatmap.js +1 -1
  71. package/dist/components/vue-ui-table-sparkline.js +2 -2
  72. package/dist/components/vue-ui-table.js +1 -1
  73. package/dist/components/vue-ui-thermometer.js +3 -3
  74. package/dist/components/vue-ui-timer.js +1 -1
  75. package/dist/components/vue-ui-tiremarks.js +2 -2
  76. package/dist/components/vue-ui-treemap.js +3 -3
  77. package/dist/components/vue-ui-vertical-bar.js +1 -1
  78. package/dist/components/vue-ui-waffle.js +2 -2
  79. package/dist/components/vue-ui-wheel.js +1 -1
  80. package/dist/components/vue-ui-word-cloud.js +3 -3
  81. package/dist/components/vue-ui-world.js +1 -1
  82. package/dist/components/vue-ui-xy-canvas.js +3 -3
  83. package/dist/components/vue-ui-xy.js +3 -3
  84. package/dist/{dom-to-png--BNgrTZV.js → dom-to-png-CH2DfsJe.js} +1 -1
  85. package/dist/{img-BecE5qXd.js → img-DUzJeMlr.js} +1 -1
  86. package/dist/{lib-C_mNZmhD.js → lib-C5BH09_g.js} +111 -110
  87. package/dist/{pdf-DuG5j3Wv.js → pdf-BSWQncok.js} +1 -1
  88. package/dist/style.css +1 -1
  89. package/dist/types/vue-data-ui.d.ts +303 -9
  90. package/dist/types/vue-ui-stackline.d.ts +18 -0
  91. package/dist/{useAutoSizeLabelsInsideViewbox-BhzfwQ_k.js → useAutoSizeLabelsInsideViewbox-DOALwU4q.js} +7 -7
  92. package/dist/{useNestedProp-CReNavA0.js → useNestedProp-CWo6bftQ.js} +535 -329
  93. package/dist/{usePrinter-DTzqpYKF.js → usePrinter-DCJzEiS8.js} +2 -2
  94. package/dist/useThemeCheck-DGJ31Vi5.js +32 -0
  95. package/dist/{useTimeLabels-BGFjWgrv.js → useTimeLabels-C5qMhpbe.js} +50 -49
  96. package/dist/{vue-data-ui-BRaq4hRp.js → vue-data-ui-ByLTJx5V.js} +79 -77
  97. package/dist/vue-data-ui.js +226 -204
  98. package/dist/{vue-ui-3d-bar-BB4ii8Nt.js → vue-ui-3d-bar-Dkds4k5N.js} +546 -517
  99. package/dist/{vue-ui-accordion-BmFTVF1a.js → vue-ui-accordion-DSdZUn2C.js} +3 -3
  100. package/dist/vue-ui-age-pyramid-C-fwZRYE.js +960 -0
  101. package/dist/{vue-ui-annotator-CcpaXBNK.js → vue-ui-annotator-DRaH8hXn.js} +7 -7
  102. package/dist/vue-ui-bullet-BKVJRjGh.js +657 -0
  103. package/dist/{vue-ui-candlestick-CMP7UL6z.js → vue-ui-candlestick-BKFWHU4O.js} +596 -561
  104. package/dist/{vue-ui-carousel-table-CzOcKsDj.js → vue-ui-carousel-table-VmPH6y2g.js} +48 -48
  105. package/dist/{vue-ui-chestnut-S787oASt.js → vue-ui-chestnut-DpMHe-OI.js} +534 -505
  106. package/dist/vue-ui-chord-Djdr0PY_.js +1182 -0
  107. package/dist/vue-ui-circle-pack-CyUqNJQt.js +832 -0
  108. package/dist/{vue-ui-cursor-C3yD_TUr.js → vue-ui-cursor-BMe8ZiV6.js} +2 -2
  109. package/dist/{vue-ui-dashboard-BfEcVRxQ.js → vue-ui-dashboard-eBXj-KCw.js} +140 -140
  110. package/dist/{vue-ui-digits-pRh179Gg.js → vue-ui-digits-D382I0-w.js} +2 -2
  111. package/dist/{vue-ui-donut-B_tEm4dT.js → vue-ui-donut-BLb0kj_P.js} +634 -602
  112. package/dist/vue-ui-donut-evolution-BqrldXpI.js +1243 -0
  113. package/dist/vue-ui-dumbbell-BuZT5a-d.js +1258 -0
  114. package/dist/vue-ui-flow-LLp6ntEP.js +1026 -0
  115. package/dist/vue-ui-funnel-pILUR-OG.js +743 -0
  116. package/dist/vue-ui-galaxy-X6yiw8kx.js +837 -0
  117. package/dist/vue-ui-gauge-DBh-vFb9.js +864 -0
  118. package/dist/{vue-ui-gizmo-BQzQlUJ8.js → vue-ui-gizmo-DtyEukIP.js} +3 -3
  119. package/dist/{vue-ui-heatmap-C9MhHWpp.js → vue-ui-heatmap-mkD6QkXo.js} +501 -466
  120. package/dist/vue-ui-history-plot-CyTaBaxA.js +1239 -0
  121. package/dist/{vue-ui-kpi-jcrPjW4C.js → vue-ui-kpi-CKMZDc3n.js} +3 -3
  122. package/dist/{vue-ui-mini-loader-DTM98mRN.js → vue-ui-mini-loader-BN72OfS0.js} +2 -2
  123. package/dist/vue-ui-molecule-UzQ3o5HW.js +782 -0
  124. package/dist/vue-ui-mood-radar-C2zkRLGy.js +930 -0
  125. package/dist/vue-ui-nested-donuts-B5OpvmJ9.js +1454 -0
  126. package/dist/vue-ui-onion-DbhIOGtF.js +944 -0
  127. package/dist/vue-ui-parallel-coordinate-plot-Dv_T4mWW.js +1080 -0
  128. package/dist/{vue-ui-quadrant-CeM23s0z.js → vue-ui-quadrant-CG6_CWsQ.js} +510 -481
  129. package/dist/{vue-ui-quick-chart-C0RMQzjC.js → vue-ui-quick-chart-DOeRhk7r.js} +795 -758
  130. package/dist/vue-ui-radar-DdHa9Hsh.js +1013 -0
  131. package/dist/{vue-ui-rating-tj97undO.js → vue-ui-rating-DtzmtJwF.js} +26 -26
  132. package/dist/vue-ui-relation-circle-B5lL4l9w.js +670 -0
  133. package/dist/vue-ui-ridgeline-3pk4Mlft.js +1302 -0
  134. package/dist/vue-ui-rings-DhyrjrZi.js +884 -0
  135. package/dist/vue-ui-scatter-DKCD70mi.js +1619 -0
  136. package/dist/{vue-ui-skeleton-87TORm6s.js → vue-ui-skeleton-CzzdmraB.js} +3 -3
  137. package/dist/{vue-ui-smiley-B74geHT3.js → vue-ui-smiley-OYyM-ukP.js} +2 -2
  138. package/dist/vue-ui-spark-trend-BMTcxeCT.js +364 -0
  139. package/dist/vue-ui-sparkbar-DVk1JiPL.js +381 -0
  140. package/dist/vue-ui-sparkgauge-Cq9Nw_xu.js +260 -0
  141. package/dist/vue-ui-sparkhistogram-PFHlCE_k.js +411 -0
  142. package/dist/vue-ui-sparkline-BHHwO_cV.js +549 -0
  143. package/dist/vue-ui-sparkstackbar-BosVkkiC.js +470 -0
  144. package/dist/vue-ui-stackbar-Djk5CPUy.js +1867 -0
  145. package/dist/vue-ui-stackline-mU4CSol9.js +1963 -0
  146. package/dist/{vue-ui-strip-plot-C1N2n39d.js → vue-ui-strip-plot-CZQSL0GK.js} +343 -314
  147. package/dist/{vue-ui-table-CcuoPHgI.js → vue-ui-table-DMM090pe.js} +5 -5
  148. package/dist/vue-ui-table-heatmap-vQEFrjCX.js +307 -0
  149. package/dist/{vue-ui-table-sparkline-BAxmZRff.js → vue-ui-table-sparkline-CQJc0mJY.js} +292 -263
  150. package/dist/vue-ui-thermometer-D1uxoVeZ.js +613 -0
  151. package/dist/{vue-ui-timer-BVsUQJz_.js → vue-ui-timer-jTnS3ES5.js} +25 -25
  152. package/dist/vue-ui-tiremarks-Bv-oIFVV.js +477 -0
  153. package/dist/vue-ui-treemap-B9MVtunp.js +1359 -0
  154. package/dist/{vue-ui-vertical-bar-B3gfBqD_.js → vue-ui-vertical-bar-BSbDj5qZ.js} +520 -485
  155. package/dist/{vue-ui-waffle-Bhlqo4xM.js → vue-ui-waffle-DIALVfvc.js} +376 -347
  156. package/dist/vue-ui-wheel-aUhrFpGk.js +690 -0
  157. package/dist/vue-ui-word-cloud-DZmMWsUu.js +904 -0
  158. package/dist/{vue-ui-world-C8KVyDim.js → vue-ui-world-CVLlgp2f.js} +57 -57
  159. package/dist/vue-ui-xy-Cy7mOurZ.js +3455 -0
  160. package/dist/vue-ui-xy-canvas-Cr13t9M5.js +1599 -0
  161. package/dist/vue_ui_vertical_bar-CELc39b8.js +18 -0
  162. package/package.json +5 -5
  163. package/dist/themes-AUNCOb2G.js +0 -53
  164. package/dist/vue-ui-age-pyramid-8bUepd28.js +0 -933
  165. package/dist/vue-ui-bullet-BvT4scFv.js +0 -630
  166. package/dist/vue-ui-chord-Dl9Y4mcz.js +0 -1153
  167. package/dist/vue-ui-circle-pack-CU09BzOV.js +0 -803
  168. package/dist/vue-ui-donut-evolution-DiGhMwMO.js +0 -1208
  169. package/dist/vue-ui-dumbbell-BlF3CLbN.js +0 -1231
  170. package/dist/vue-ui-flow-BQi5L8mJ.js +0 -991
  171. package/dist/vue-ui-funnel-CM_6Sare.js +0 -716
  172. package/dist/vue-ui-galaxy-BnZA62Li.js +0 -808
  173. package/dist/vue-ui-gauge-DAk72bez.js +0 -835
  174. package/dist/vue-ui-history-plot-BYQh3E8U.js +0 -1204
  175. package/dist/vue-ui-molecule-Bd1OXvl3.js +0 -753
  176. package/dist/vue-ui-mood-radar-DuoiTsYn.js +0 -903
  177. package/dist/vue-ui-nested-donuts-BTswQFjz.js +0 -1419
  178. package/dist/vue-ui-onion-D-1U2Qgl.js +0 -915
  179. package/dist/vue-ui-parallel-coordinate-plot-D-7VFHas.js +0 -1051
  180. package/dist/vue-ui-radar-BSfxyur3.js +0 -984
  181. package/dist/vue-ui-relation-circle-C7uV2mIj.js +0 -641
  182. package/dist/vue-ui-ridgeline-CYMfTlwI.js +0 -1273
  183. package/dist/vue-ui-rings-C96aj57d.js +0 -855
  184. package/dist/vue-ui-scatter-CtvOXUnx.js +0 -1590
  185. package/dist/vue-ui-spark-trend-6_Ibziyv.js +0 -337
  186. package/dist/vue-ui-sparkbar-BDCocMLI.js +0 -352
  187. package/dist/vue-ui-sparkgauge-CQ4Zk9-f.js +0 -233
  188. package/dist/vue-ui-sparkhistogram-BlTV9wfn.js +0 -384
  189. package/dist/vue-ui-sparkline-DWESyiqL.js +0 -514
  190. package/dist/vue-ui-sparkstackbar-DK_7X8mL.js +0 -441
  191. package/dist/vue-ui-stackbar-BWuw8ff4.js +0 -1827
  192. package/dist/vue-ui-table-heatmap-C9EMEM3Z.js +0 -282
  193. package/dist/vue-ui-thermometer-CDrM-WFq.js +0 -584
  194. package/dist/vue-ui-tiremarks-BQH2pNkG.js +0 -450
  195. package/dist/vue-ui-treemap-6WLoCHsH.js +0 -1330
  196. package/dist/vue-ui-wheel-CqHw1WuW.js +0 -663
  197. package/dist/vue-ui-word-cloud-CKuWZGLv.js +0 -875
  198. package/dist/vue-ui-xy-Cz2qIEfi.js +0 -3424
  199. package/dist/vue-ui-xy-canvas-y4h7gEFp.js +0 -1564
@@ -0,0 +1,884 @@
1
+ import { defineAsyncComponent as D, useSlots as Pt, ref as u, computed as g, toRefs as Lt, watch as Y, shallowRef as ze, onMounted as Nt, onBeforeUnmount as Rt, createElementBlock as f, openBlock as i, unref as n, normalizeStyle as L, normalizeClass as j, createBlock as x, createCommentVNode as C, createElementVNode as w, createVNode as J, withCtx as c, renderSlot as v, normalizeProps as A, guardReactiveProps as $, createSlots as ie, Fragment as ce, renderList as ve, mergeProps as Ue, Teleport as Vt, toDisplayString as de, resolveDynamicComponent as Mt, createTextVNode as We, nextTick as zt } from "vue";
2
+ import { c as je, t as Ut, i as Wt, p as N, o as Ge, g as ge, k as jt, j as Gt, a5 as Ht, l as He, a as Xe, d as R, X as Xt, s as qt, h as Yt, M as K, u as Jt, q as Kt, x as Qt, R as Zt } from "./lib-C5BH09_g.js";
3
+ import { t as eo, u as to } from "./useResponsive-DfdjqQps.js";
4
+ import { u as oo, a as he } from "./useNestedProp-CWo6bftQ.js";
5
+ import { u as lo } from "./usePrinter-DCJzEiS8.js";
6
+ import { u as ao, B as no } from "./BaseScanner-BgWxam9d.js";
7
+ import { u as ro } from "./useSvgExport-DrjCWun4.js";
8
+ import { u as so } from "./useThemeCheck-DGJ31Vi5.js";
9
+ import { u as uo } from "./useUserOptionState-BIvW1Kz7.js";
10
+ import { u as io } from "./useChartAccessibility-9icAAmYg.js";
11
+ import co from "./img-DUzJeMlr.js";
12
+ import { _ as vo } from "./Shape-DE6X_t31.js";
13
+ import go from "./Title-DfFUb9hd.js";
14
+ import ho from "./Legend-Web3GjlR.js";
15
+ import { _ as po } from "./_plugin-vue_export-helper-CHgC5LLL.js";
16
+ const qe = { style: { chart: { backgroundColor: "#1A1A1A", color: "#CCCCCC", layout: { rings: { stroke: "#3A3A3A" } }, legend: { backgroundColor: "#1A1A1A", color: "#CCCCCC" }, title: { color: "#CCCCCC", subtitle: { color: "#757575" } }, tooltip: { backgroundColor: "#1A1A1A", backgroundOpacity: 70, color: "#CCCCCC", borderColor: "#5A5A5A" } } }, table: { th: { backgroundColor: "#1A1A1A", color: "#CCCCCC" }, td: { backgroundColor: "#1A1A1A", color: "#CCCCCC" } } }, Ye = { style: { chart: { backgroundColor: "#FFF8E1", color: "#424242", layout: { rings: { stroke: "#5D4037", strokeWidth: 10 } }, legend: { backgroundColor: "#FFF8E1", color: "#424242" }, title: { color: "#424242", subtitle: { color: "#757575" } }, tooltip: { backgroundColor: "#FFECB3", backgroundOpacity: 30, color: "#424242", borderColor: "#FF8A65" } } }, table: { th: { backgroundColor: "#FFF8E1", color: "#424242" }, td: { backgroundColor: "#FFF8E1", color: "#424242" } } }, Je = { style: { chart: { backgroundColor: "#1E1E1E", color: "#BDBDBD", layout: { rings: { stroke: "#2E2E2E", strokeWidth: 10 } }, legend: { backgroundColor: "#1E1E1E", color: "#BDBDBD" }, title: { color: "#FFF8E1", subtitle: { color: "#BDBDBD" } }, tooltip: { backgroundColor: "#1E1E1E", backgroundOpacity: 30, color: "#FFF8E1", borderColor: "#FF8A65" } } }, table: { th: { backgroundColor: "#1E1E1E", color: "#BDBDBD" }, td: { backgroundColor: "#1E1E1E", color: "#BDBDBD" } } }, Ke = { style: { chart: { backgroundColor: "#1A1A1A", color: "#99AA99", layout: { rings: { stroke: "#1A1A1A", strokeWidth: 10 } }, legend: { backgroundColor: "#1A1A1A", color: "#99AA99" }, title: { color: "#66CC66", subtitle: { color: "#99AA99" } }, tooltip: { backgroundColor: "#2A2F2A", color: "#AACCAA", borderColor: "#66CC66" } } }, table: { th: { backgroundColor: "#1A1A1A", color: "#99AA99" }, td: { backgroundColor: "#1A1A1A", color: "#AACCAA" } } }, Qe = { style: { chart: { backgroundColor: "#fbfafa", color: "#8A9892", layout: { rings: { stroke: "#fbfafa", strokeWidth: 10 } }, legend: { backgroundColor: "#fbfafa", color: "#99AA99" }, title: { color: "#8A9892", subtitle: { color: "#99AA99" } }, tooltip: { backgroundColor: "#fbfafa", color: "#8A9892" } } }, table: { th: { backgroundColor: "#fbfafa", color: "#8F837A" }, td: { backgroundColor: "#fbfafa", color: "#8F837A" } } }, Ze = { style: { chart: { backgroundColor: "#f6f6fb", color: "#50606C", layout: { rings: { stroke: "#fbfafa", strokeWidth: 10 } }, legend: { backgroundColor: "#f6f6fb", color: "#61747E" }, title: { color: "#50606C", subtitle: { color: "#718890" } }, tooltip: { backgroundColor: "#f6f6fb", color: "#50606C" } } }, table: { th: { backgroundColor: "#f6f6fb", color: "#50606C" }, td: { backgroundColor: "#f6f6fb", color: "#50606C" } } }, et = {
17
+ default: {},
18
+ dark: qe,
19
+ celebration: Ye,
20
+ celebrationNight: Je,
21
+ hack: Ke,
22
+ zen: Qe,
23
+ concrete: Ze
24
+ }, Yo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
25
+ __proto__: null,
26
+ celebration: Ye,
27
+ celebrationNight: Je,
28
+ concrete: Ze,
29
+ dark: qe,
30
+ default: et,
31
+ hack: Ke,
32
+ zen: Qe
33
+ }, Symbol.toStringTag, { value: "Module" })), fo = ["id"], bo = ["id"], yo = ["xmlns", "viewBox"], mo = ["width", "height"], Co = ["id"], ko = ["stop-color"], wo = ["stop-color"], Ao = { key: 1 }, $o = ["stroke", "cx", "cy", "r", "fill"], To = ["stroke", "stroke-width", "cx", "cy", "r", "fill"], Fo = ["stroke", "stroke-width", "cx", "cy", "r", "fill"], _o = ["cx", "cy", "r", "onMouseenter", "onMouseleave", "onClick"], So = {
34
+ key: 4,
35
+ class: "vue-data-ui-watermark"
36
+ }, Oo = ["id"], Do = ["onClick"], xo = ["innerHTML"], Eo = {
37
+ __name: "vue-ui-rings",
38
+ props: {
39
+ config: {
40
+ type: Object,
41
+ default() {
42
+ return {};
43
+ }
44
+ },
45
+ dataset: {
46
+ type: Array,
47
+ default() {
48
+ return [];
49
+ }
50
+ }
51
+ },
52
+ emits: ["selectLegend"],
53
+ setup(tt, { expose: ot, emit: lt }) {
54
+ const at = D(() => import("./Tooltip-WD0Ros6G.js")), nt = D(() => import("./BaseIcon-CofSxalQ.js")), rt = D(() => import("./vue-ui-accordion-DSdZUn2C.js")), st = D(() => import("./DataTable-CHaOCmsE.js")), ut = D(() => import("./PenAndPaper-HCZQTkqi.js")), it = D(() => import("./UserOptions-B3I-s3Lw.js")), ct = D(() => import("./PackageVersion-Bq_mtsqr.js")), vt = D(() => import("./BaseDraggableDialog-CRF94NJQ.js")), { vue_ui_rings: dt } = oo(), { isThemeValid: gt, warnInvalidTheme: ht } = so(), pt = Pt(), y = tt, E = u(!1), pe = g(() => !!y.dataset && y.dataset.length), m = u(je()), G = u(!1), Q = u(""), F = u(null), fe = u(0), _ = u(null), be = u(null), ye = u(null), me = u(null), Ce = u(null), ke = u(0), we = u(0), Ae = u(0), Z = u(!1), $e = u(!1), M = u(null), ee = u(null), e = u(le()), { loading: I, FINAL_DATASET: Te, manualLoading: H } = ao({
55
+ ...Lt(y),
56
+ FINAL_CONFIG: e,
57
+ prepareConfig: le,
58
+ skeletonDataset: [
59
+ { name: "_", values: [13], color: "#808080" },
60
+ { name: "_", values: [8], color: "#969696" },
61
+ { name: "_", values: [5], color: "#ADADAD" },
62
+ { name: "_", values: [3], color: "#C4C4C4" },
63
+ { name: "_", values: [2], color: "#DBDBDB" }
64
+ ],
65
+ skeletonConfig: Ut({
66
+ defaultConfig: e.value,
67
+ userConfig: {
68
+ userOptions: { show: !1 },
69
+ table: { show: !1 },
70
+ style: {
71
+ chart: {
72
+ backgroundColor: "#99999930",
73
+ layout: {
74
+ rings: {
75
+ stroke: "#6A6A6A",
76
+ gradient: {
77
+ underlayerColor: "#FFFFFF"
78
+ }
79
+ }
80
+ },
81
+ legend: {
82
+ backgroundColor: "transparent"
83
+ }
84
+ }
85
+ }
86
+ }
87
+ })
88
+ }), { userOptionsVisible: te, setUserOptionsVisibility: Fe, keepUserOptionState: _e } = uo({ config: e.value }), { svgRef: oe } = io({ config: e.value.style.chart.title });
89
+ function le() {
90
+ const t = he({
91
+ userConfig: y.config,
92
+ defaultConfig: dt
93
+ }), l = t.theme;
94
+ if (!l) return t;
95
+ if (!gt.value(t))
96
+ return ht(t), t;
97
+ const o = he({
98
+ userConfig: et[l] || y.config,
99
+ defaultConfig: t
100
+ });
101
+ return {
102
+ ...he({
103
+ userConfig: y.config,
104
+ defaultConfig: o
105
+ }),
106
+ customPalette: t.customPalette.length ? t.customPalette : Wt[t.theme] || N
107
+ };
108
+ }
109
+ Y(() => y.config, (t) => {
110
+ I.value || (e.value = le()), te.value = !e.value.userOptions.showOnChartHover, Se(), ke.value += 1, we.value += 1, Ae.value += 1, k.value.showTable = e.value.table.show, k.value.showTooltip = e.value.style.chart.tooltip.show;
111
+ }, { deep: !0 }), Y(() => y.dataset, (t) => {
112
+ Array.isArray(t) && t.length > 0 && (H.value = !1);
113
+ }, { deep: !0 });
114
+ const S = ze(null), V = ze(null);
115
+ Nt(() => {
116
+ $e.value = !0, Se();
117
+ });
118
+ const ae = g(() => !!e.value.debug);
119
+ function Se() {
120
+ if (Ge(y.dataset) ? (ge({
121
+ componentName: "VueUiRings",
122
+ type: "dataset",
123
+ debug: ae.value
124
+ }), H.value = !0) : y.dataset.forEach((t, l) => {
125
+ t.values.length || (ge({
126
+ componentName: "VueUiRings",
127
+ type: "dataset",
128
+ debug: ae.value
129
+ }), H.value = !0), jt({
130
+ datasetObject: t,
131
+ requiredAttributes: ["name", "values"]
132
+ }).forEach((o) => {
133
+ ge({
134
+ componentName: "VueUiRings",
135
+ type: "datasetSerieAttribute",
136
+ property: o,
137
+ index: l,
138
+ debug: ae.value
139
+ });
140
+ });
141
+ }), Ge(y.dataset) || (H.value = e.value.loading), e.value.responsive) {
142
+ const t = eo(() => {
143
+ Z.value = !0;
144
+ const { width: l, height: o } = to({
145
+ chart: _.value,
146
+ title: e.value.style.chart.title.text ? be.value : null,
147
+ legend: e.value.style.chart.legend.show ? ye.value : null,
148
+ source: me.value,
149
+ noTitle: Ce.value
150
+ });
151
+ requestAnimationFrame(() => {
152
+ s.value.width = l, s.value.height = o - 12, Z.value = !1;
153
+ });
154
+ });
155
+ S.value && (V.value && S.value.unobserve(V.value), S.value.disconnect()), S.value = new ResizeObserver(t), V.value = _.value.parentNode, S.value.observe(V.value);
156
+ }
157
+ setTimeout(() => {
158
+ E.value = !0;
159
+ }, 600);
160
+ }
161
+ Rt(() => {
162
+ S.value && (V.value && S.value.unobserve(V.value), S.value.disconnect());
163
+ });
164
+ const { isPrinting: Oe, isImaging: De, generatePdf: xe, generateImage: Ee } = lo({
165
+ elementId: `rings_${m.value}`,
166
+ fileName: e.value.style.chart.title.text || "vue-ui-rings",
167
+ options: e.value.userOptions.print
168
+ }), ft = g(() => e.value.userOptions.show && !e.value.style.chart.title.text), Ie = g(() => Gt(e.value.customPalette)), k = u({
169
+ showTable: e.value.table.show,
170
+ showTooltip: e.value.style.chart.tooltip.show
171
+ });
172
+ Y(e, () => {
173
+ k.value = {
174
+ showTable: e.value.table.show,
175
+ showTooltip: e.value.style.chart.tooltip.show
176
+ };
177
+ }, { immediate: !0 });
178
+ const s = u({
179
+ height: 360,
180
+ width: 360
181
+ }), bt = g(() => Math.min(s.value.height, s.value.width)), yt = lt, h = u([]);
182
+ function z(t) {
183
+ if (h.value.includes(t))
184
+ h.value = h.value.filter((l) => l !== t);
185
+ else {
186
+ if (h.value.length === B.value.length - 1) return;
187
+ h.value.push(t);
188
+ }
189
+ yt("selectLegend", b.value.map((l) => ({
190
+ name: l.name,
191
+ color: l.color,
192
+ value: l.value
193
+ })));
194
+ }
195
+ function Be(t) {
196
+ if (!B.value.length)
197
+ return e.value.debug && console.warn("VueUiRings - There are no series to show."), null;
198
+ const l = B.value.find((o) => o.name === t);
199
+ return l || (e.value.debug && console.warn(`VueUiRings - Series name not found "${t}"`), null);
200
+ }
201
+ function mt(t) {
202
+ const l = Be(t);
203
+ l !== null && h.value.includes(l.uid) && z(l.uid);
204
+ }
205
+ function Ct(t) {
206
+ const l = Be(t);
207
+ l !== null && (h.value.includes(l.uid) || z(l.uid));
208
+ }
209
+ const kt = g(() => Math.max(
210
+ ...B.value.filter((t) => !h.value.includes(t.uid)).map(({ value: t }) => t)
211
+ ));
212
+ function Pe(t) {
213
+ return t / kt.value;
214
+ }
215
+ const B = g(() => Te.value.map(({ values: t, name: l, color: o = null }, a) => {
216
+ const r = Ht(t).reduce((d, W) => d + W, 0);
217
+ return {
218
+ name: l,
219
+ color: o || He(o) || Ie.value[a] || N[a] || N[a % N.length],
220
+ value: r,
221
+ proportion: r / Te.value.map((d) => (d.values || []).reduce((W, Bt) => W + Bt, 0)).reduce((d, W) => d + W, 0),
222
+ uid: je(),
223
+ absoluteIndex: a
224
+ };
225
+ })), ne = g(() => B.value.map((t, l) => ({
226
+ ...t,
227
+ shape: "circle",
228
+ opacity: h.value.includes(t.uid) ? 0.5 : 1,
229
+ segregate: () => z(t.uid),
230
+ isSegregated: h.value.includes(t.uid),
231
+ display: `${t.name}${e.value.style.chart.legend.showPercentage || e.value.style.chart.legend.showValue ? ": " : ""}${e.value.style.chart.legend.showValue ? Xe(e.value.style.chart.layout.labels.dataLabels.formatter, t.value, R({
232
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
233
+ v: t.value,
234
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
235
+ r: e.value.style.chart.legend.roundingValue
236
+ }), { datapoint: t, index: l }) : ""}${e.value.style.chart.legend.showPercentage ? h.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 / T.value) ? "-" : R({ v: t.value / T.value * 100, s: "%", r: e.value.style.chart.legend.roundingPercentage })}${e.value.style.chart.legend.showValue ? ")" : ""}` : ""}`
237
+ })).toSorted((t, l) => l.value - t.value)), wt = g(() => ({
238
+ cy: "rings-div-legend",
239
+ backgroundColor: e.value.style.chart.legend.backgroundColor,
240
+ color: e.value.style.chart.legend.color,
241
+ fontSize: e.value.style.chart.legend.fontSize,
242
+ paddingBottom: 12,
243
+ fontWeight: e.value.style.chart.legend.bold ? "bold" : ""
244
+ })), T = g(() => B.value.filter((t) => !h.value.includes(t.uid)).map(({ value: t }) => t).reduce((t, l) => t + l, 0)), b = g(() => B.value.filter((t) => !h.value.includes(t.uid)).map(({ name: t, value: l, color: o = null, uid: a, absoluteIndex: r }, d) => ({
245
+ absoluteIndex: r,
246
+ uid: a,
247
+ name: t,
248
+ color: o || He(o) || Ie.value[d] || N[d] || N[d % N.length],
249
+ value: l,
250
+ proportion: Pe(l),
251
+ percentage: l / T.value * 100,
252
+ strokeWidth: e.value.style.chart.layout.rings.strokeWidth * Pe(l)
253
+ })).toSorted((t, l) => l.value - t.value));
254
+ function At() {
255
+ return b.value.map(
256
+ ({ name: t, color: l, value: o, absoluteValues: a, percentage: r }) => ({
257
+ name: t,
258
+ color: l,
259
+ value: o,
260
+ absoluteValues: a,
261
+ percentage: r
262
+ })
263
+ );
264
+ }
265
+ const p = g(() => bt.value - e.value.style.chart.layout.rings.strokeWidth * 2);
266
+ function $t(t, l) {
267
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: t, seriesIndex: l });
268
+ }
269
+ function Tt(t, l) {
270
+ F.value = null, G.value = !1, e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: t, seriesIndex: l });
271
+ }
272
+ const re = u(null);
273
+ function Ft(t, l) {
274
+ if (e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: t, seriesIndex: l }), h.value.length === y.dataset.length) return;
275
+ re.value = {
276
+ datapoint: t,
277
+ seriesIndex: l,
278
+ series: b.value,
279
+ config: e.value
280
+ }, F.value = l;
281
+ const o = b.value[l], a = e.value.style.chart.tooltip.customFormat;
282
+ if (Qt(a) && Zt(() => a({
283
+ seriesIndex: l,
284
+ datapoint: t,
285
+ series: b.value,
286
+ config: e.value
287
+ })))
288
+ Q.value = a({
289
+ seriesIndex: l,
290
+ datapoint: t,
291
+ series: b.value,
292
+ config: e.value
293
+ });
294
+ else {
295
+ let r = "";
296
+ r += `<div style="width:100%;text-align:center;border-bottom:1px solid ${e.value.style.chart.tooltip.borderColor};padding-bottom:6px;margin-bottom:3px;">${o.name}</div>`, r += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 60 60" height="14" width="14"><circle cx="30" cy="30" r="30" stroke="none" fill="${o.color}" />${pt.pattern ? `<circle cx="30" cy="30" r="30" stroke="none" fill="url(#pattern_${m.value}_${t.absoluteIndex})" />` : ""}</svg>`, e.value.style.chart.tooltip.showValue && (r += `<b>${Xe(
297
+ e.value.style.chart.layout.labels.dataLabels.formatter,
298
+ o.value,
299
+ R({
300
+ p: e.value.style.chart.layout.labels.dataLabels.prefix,
301
+ v: o.value,
302
+ s: e.value.style.chart.layout.labels.dataLabels.suffix,
303
+ r: e.value.style.chart.tooltip.roundingValue
304
+ }),
305
+ { datapoint: t, seriesIndex: l }
306
+ )}
307
+ </b>`), e.value.style.chart.tooltip.showPercentage && (e.value.style.chart.tooltip.showValue ? r += `<span>(${R({
308
+ v: o.value / T.value * 100,
309
+ s: "%",
310
+ r: e.value.style.chart.tooltip.roundingPercentage
311
+ })})</span></div>` : r += `<b>${R({
312
+ v: o.value / T.value * 100,
313
+ s: "%",
314
+ r: e.value.style.chart.tooltip.roundingPercentage
315
+ })}</b></div>`), Q.value = r;
316
+ }
317
+ G.value = !0;
318
+ }
319
+ const O = g(() => {
320
+ const t = b.value.map((o) => ({
321
+ name: o.name,
322
+ color: o.color
323
+ })), l = b.value.map((o) => o.value);
324
+ return { head: t, body: l };
325
+ }), X = g(() => {
326
+ const t = [
327
+ ' <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>',
328
+ R({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: T.value, s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
329
+ "100%"
330
+ ], l = O.value.head.map((r, d) => [
331
+ {
332
+ color: r.color,
333
+ name: r.name
334
+ },
335
+ R({ p: e.value.style.chart.layout.labels.dataLabels.prefix, v: O.value.body[d], s: e.value.style.chart.layout.labels.dataLabels.suffix, r: e.value.table.td.roundingValue }),
336
+ isNaN(O.value.body[d] / T.value) ? "-" : (O.value.body[d] / T.value * 100).toFixed(e.value.table.td.roundingPercentage) + "%"
337
+ ]), o = {
338
+ th: {
339
+ backgroundColor: e.value.table.th.backgroundColor,
340
+ color: e.value.table.th.color,
341
+ outline: e.value.table.th.outline
342
+ },
343
+ td: {
344
+ backgroundColor: e.value.table.td.backgroundColor,
345
+ color: e.value.table.td.color,
346
+ outline: e.value.table.td.outline
347
+ },
348
+ breakpoint: e.value.table.responsiveBreakpoint
349
+ }, a = [
350
+ e.value.table.columnNames.series,
351
+ e.value.table.columnNames.value,
352
+ e.value.table.columnNames.percentage
353
+ ];
354
+ return {
355
+ head: t,
356
+ body: l,
357
+ config: o,
358
+ colNames: a
359
+ };
360
+ });
361
+ function se(t = null) {
362
+ zt(() => {
363
+ const l = O.value.head.map((r, d) => [[
364
+ r.name
365
+ ], [O.value.body[d]], [isNaN(O.value.body[d] / T.value) ? "-" : O.value.body[d] / T.value * 100]]), o = [[e.value.style.chart.title.text], [e.value.style.chart.title.subtitle.text], [[""], ["val"], ["%"]]].concat(l), a = Jt(o);
366
+ t ? t(a) : Kt({ csvContent: a, title: e.value.style.chart.title.text || "vue-ui-rings" });
367
+ });
368
+ }
369
+ const P = u(!1);
370
+ function Le(t) {
371
+ P.value = t, fe.value += 1;
372
+ }
373
+ function Ne() {
374
+ k.value.showTable = !k.value.showTable;
375
+ }
376
+ function Re() {
377
+ k.value.showTooltip = !k.value.showTooltip;
378
+ }
379
+ const q = u(!1);
380
+ function ue() {
381
+ q.value = !q.value;
382
+ }
383
+ async function _t({ scale: t = 2 } = {}) {
384
+ if (!_.value) return;
385
+ const { width: l, height: o } = _.value.getBoundingClientRect(), a = l / o, { imageUri: r, base64: d } = await co({ domElement: _.value, base64: !0, img: !0, scale: t });
386
+ return {
387
+ imageUri: r,
388
+ base64: d,
389
+ title: e.value.style.chart.title.text,
390
+ width: l,
391
+ height: o,
392
+ aspectRatio: a
393
+ };
394
+ }
395
+ const U = g(() => {
396
+ const t = e.value.table.useDialog && !e.value.table.show, l = k.value.showTable;
397
+ return {
398
+ component: t ? vt : rt,
399
+ title: `${e.value.style.chart.title.text}${e.value.style.chart.title.subtitle.text ? `: ${e.value.style.chart.title.subtitle.text}` : ""}`,
400
+ props: t ? {
401
+ backgroundColor: e.value.table.th.backgroundColor,
402
+ color: e.value.table.th.color,
403
+ headerColor: e.value.table.th.color,
404
+ headerBg: e.value.table.th.backgroundColor,
405
+ isFullscreen: P.value,
406
+ fullscreenParent: _.value,
407
+ forcedWidth: Math.min(800, window.innerWidth * 0.8)
408
+ } : {
409
+ hideDetails: !0,
410
+ config: {
411
+ open: l,
412
+ maxHeight: 1e4,
413
+ body: {
414
+ backgroundColor: e.value.style.chart.backgroundColor,
415
+ color: e.value.style.chart.color
416
+ },
417
+ head: {
418
+ backgroundColor: e.value.style.chart.backgroundColor,
419
+ color: e.value.style.chart.color
420
+ }
421
+ }
422
+ }
423
+ };
424
+ });
425
+ Y(() => k.value.showTable, (t) => {
426
+ e.value.table.show || (t && e.value.table.useDialog && M.value ? M.value.open() : "close" in M.value && M.value.close());
427
+ });
428
+ function Ve() {
429
+ k.value.showTable = !1, ee.value && ee.value.setTableIconState(!1);
430
+ }
431
+ const St = g(() => ne.value.map((t) => ({
432
+ ...t,
433
+ name: t.display
434
+ }))), Ot = g(() => e.value.style.chart.backgroundColor), Dt = g(() => e.value.style.chart.legend), xt = g(() => e.value.style.chart.title), { exportSvg: Et, getSvg: It } = ro({
435
+ svg: oe,
436
+ title: xt,
437
+ legend: Dt,
438
+ legendItems: St,
439
+ backgroundColor: Ot
440
+ });
441
+ async function Me({ isCb: t }) {
442
+ if (t) {
443
+ const { blob: l, url: o, text: a, dataUrl: r } = await It();
444
+ e.value.userOptions.callbacks.svg({ blob: l, url: o, text: a, dataUrl: r });
445
+ } else
446
+ Et();
447
+ }
448
+ return ot({
449
+ getData: At,
450
+ getImage: _t,
451
+ generatePdf: xe,
452
+ generateCsv: se,
453
+ generateImage: Ee,
454
+ generateSvg: Me,
455
+ hideSeries: Ct,
456
+ showSeries: mt,
457
+ toggleTable: Ne,
458
+ toggleTooltip: Re,
459
+ toggleAnnotator: ue,
460
+ toggleFullscreen: Le
461
+ }), (t, l) => (i(), f("div", {
462
+ ref_key: "ringsChart",
463
+ ref: _,
464
+ class: j(`vue-data-ui-component vue-ui-rings ${P.value ? "vue-data-ui-wrapper-fullscreen" : ""} ${e.value.useCssAnimation ? "" : "vue-ui-dna"}`),
465
+ style: L(`font-family:${e.value.style.fontFamily};text-align:center;width:100%;background:${e.value.style.chart.backgroundColor};${e.value.responsive ? "height: 100%" : ""}`),
466
+ id: `rings_${m.value}`,
467
+ onMouseleave: l[2] || (l[2] = (o) => {
468
+ F.value = null, G.value = !1, n(Fe)(!1);
469
+ }),
470
+ onMouseenter: l[3] || (l[3] = () => n(Fe)(!0))
471
+ }, [
472
+ e.value.userOptions.buttons.annotator ? (i(), x(n(ut), {
473
+ key: 0,
474
+ svgRef: n(oe),
475
+ backgroundColor: e.value.style.chart.backgroundColor,
476
+ color: e.value.style.chart.color,
477
+ active: q.value,
478
+ onClose: ue
479
+ }, {
480
+ "annotator-action-close": c(() => [
481
+ v(t.$slots, "annotator-action-close", {}, void 0, !0)
482
+ ]),
483
+ "annotator-action-color": c(({ color: o }) => [
484
+ v(t.$slots, "annotator-action-color", A($({ color: o })), void 0, !0)
485
+ ]),
486
+ "annotator-action-draw": c(({ mode: o }) => [
487
+ v(t.$slots, "annotator-action-draw", A($({ mode: o })), void 0, !0)
488
+ ]),
489
+ "annotator-action-undo": c(({ disabled: o }) => [
490
+ v(t.$slots, "annotator-action-undo", A($({ disabled: o })), void 0, !0)
491
+ ]),
492
+ "annotator-action-redo": c(({ disabled: o }) => [
493
+ v(t.$slots, "annotator-action-redo", A($({ disabled: o })), void 0, !0)
494
+ ]),
495
+ "annotator-action-delete": c(({ disabled: o }) => [
496
+ v(t.$slots, "annotator-action-delete", A($({ disabled: o })), void 0, !0)
497
+ ]),
498
+ _: 3
499
+ }, 8, ["svgRef", "backgroundColor", "color", "active"])) : C("", !0),
500
+ ft.value ? (i(), f("div", {
501
+ key: 1,
502
+ ref_key: "noTitle",
503
+ ref: Ce,
504
+ class: "vue-data-ui-no-title-space",
505
+ style: "height:36px; width: 100%;background:transparent"
506
+ }, null, 512)) : C("", !0),
507
+ e.value.style.chart.title.text ? (i(), f("div", {
508
+ key: 2,
509
+ ref_key: "chartTitle",
510
+ ref: be,
511
+ style: "width:100%;background:transparent"
512
+ }, [
513
+ (i(), x(go, {
514
+ key: `title_${ke.value}`,
515
+ config: {
516
+ title: {
517
+ cy: "rings-div-title",
518
+ ...e.value.style.chart.title
519
+ },
520
+ subtitle: {
521
+ cy: "rings-div-subtitle",
522
+ ...e.value.style.chart.title.subtitle
523
+ }
524
+ }
525
+ }, null, 8, ["config"]))
526
+ ], 512)) : C("", !0),
527
+ w("div", {
528
+ id: `legend-top-${m.value}`
529
+ }, null, 8, bo),
530
+ e.value.userOptions.show && pe.value && (n(_e) || n(te)) ? (i(), x(n(it), {
531
+ ref_key: "userOptionsRef",
532
+ ref: ee,
533
+ key: `user_options_${fe.value}`,
534
+ backgroundColor: e.value.style.chart.backgroundColor,
535
+ color: e.value.style.chart.color,
536
+ isPrinting: n(Oe),
537
+ isImaging: n(De),
538
+ uid: m.value,
539
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.chart.tooltip.show,
540
+ hasPdf: e.value.userOptions.buttons.pdf,
541
+ hasXls: e.value.userOptions.buttons.csv,
542
+ hasImg: e.value.userOptions.buttons.img,
543
+ hasSvg: e.value.userOptions.buttons.svg,
544
+ hasTable: e.value.userOptions.buttons.table,
545
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
546
+ isTooltip: k.value.showTooltip,
547
+ isFullscreen: P.value,
548
+ titles: { ...e.value.userOptions.buttonTitles },
549
+ chartElement: _.value,
550
+ position: e.value.userOptions.position,
551
+ hasAnnotator: e.value.userOptions.buttons.annotator,
552
+ isAnnotation: q.value,
553
+ callbacks: e.value.userOptions.callbacks,
554
+ printScale: e.value.userOptions.print.scale,
555
+ tableDialog: e.value.table.useDialog,
556
+ onToggleFullscreen: Le,
557
+ onGeneratePdf: n(xe),
558
+ onGenerateCsv: se,
559
+ onGenerateImage: n(Ee),
560
+ onGenerateSvg: Me,
561
+ onToggleTable: Ne,
562
+ onToggleTooltip: Re,
563
+ onToggleAnnotator: ue,
564
+ style: L({
565
+ visibility: n(_e) ? n(te) ? "visible" : "hidden" : "visible"
566
+ })
567
+ }, ie({ _: 2 }, [
568
+ t.$slots.menuIcon ? {
569
+ name: "menuIcon",
570
+ fn: c(({ isOpen: o, color: a }) => [
571
+ v(t.$slots, "menuIcon", A($({ isOpen: o, color: a })), void 0, !0)
572
+ ]),
573
+ key: "0"
574
+ } : void 0,
575
+ t.$slots.optionTooltip ? {
576
+ name: "optionTooltip",
577
+ fn: c(() => [
578
+ v(t.$slots, "optionTooltip", {}, void 0, !0)
579
+ ]),
580
+ key: "1"
581
+ } : void 0,
582
+ t.$slots.optionPdf ? {
583
+ name: "optionPdf",
584
+ fn: c(() => [
585
+ v(t.$slots, "optionPdf", {}, void 0, !0)
586
+ ]),
587
+ key: "2"
588
+ } : void 0,
589
+ t.$slots.optionCsv ? {
590
+ name: "optionCsv",
591
+ fn: c(() => [
592
+ v(t.$slots, "optionCsv", {}, void 0, !0)
593
+ ]),
594
+ key: "3"
595
+ } : void 0,
596
+ t.$slots.optionImg ? {
597
+ name: "optionImg",
598
+ fn: c(() => [
599
+ v(t.$slots, "optionImg", {}, void 0, !0)
600
+ ]),
601
+ key: "4"
602
+ } : void 0,
603
+ t.$slots.optionSvg ? {
604
+ name: "optionSvg",
605
+ fn: c(() => [
606
+ v(t.$slots, "optionSvg", {}, void 0, !0)
607
+ ]),
608
+ key: "5"
609
+ } : void 0,
610
+ t.$slots.optionTable ? {
611
+ name: "optionTable",
612
+ fn: c(() => [
613
+ v(t.$slots, "optionTable", {}, void 0, !0)
614
+ ]),
615
+ key: "6"
616
+ } : void 0,
617
+ t.$slots.optionFullscreen ? {
618
+ name: "optionFullscreen",
619
+ fn: c(({ toggleFullscreen: o, isFullscreen: a }) => [
620
+ v(t.$slots, "optionFullscreen", A($({ toggleFullscreen: o, isFullscreen: a })), void 0, !0)
621
+ ]),
622
+ key: "7"
623
+ } : void 0,
624
+ t.$slots.optionAnnotator ? {
625
+ name: "optionAnnotator",
626
+ fn: c(({ toggleAnnotator: o, isAnnotator: a }) => [
627
+ v(t.$slots, "optionAnnotator", A($({ toggleAnnotator: o, isAnnotator: a })), void 0, !0)
628
+ ]),
629
+ key: "8"
630
+ } : void 0
631
+ ]), 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"])) : C("", !0),
632
+ (i(), f("svg", {
633
+ ref_key: "svgRef",
634
+ ref: oe,
635
+ xmlns: n(Xt),
636
+ class: j({ "vue-data-ui-fullscreen--on": P.value, "vue-data-ui-fulscreen--off": !P.value, resizing: Z.value || n(I) }),
637
+ viewBox: `0 0 ${s.value.width <= 0 ? 10 : s.value.width} ${s.value.height <= 0 ? 10 : s.value.height}`,
638
+ style: L(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.chart.color}`)
639
+ }, [
640
+ J(n(ct)),
641
+ t.$slots["chart-background"] ? (i(), f("foreignObject", {
642
+ key: 0,
643
+ x: 0,
644
+ y: 0,
645
+ width: s.value.width <= 0 ? 10 : s.value.width,
646
+ height: s.value.height <= 0 ? 10 : s.value.height,
647
+ style: {
648
+ pointerEvents: "none"
649
+ }
650
+ }, [
651
+ v(t.$slots, "chart-background", {}, void 0, !0)
652
+ ], 8, mo)) : C("", !0),
653
+ w("defs", null, [
654
+ (i(!0), f(ce, null, ve(b.value, (o, a) => (i(), f("radialGradient", {
655
+ cx: "50%",
656
+ cy: "30%",
657
+ r: "50%",
658
+ fx: "50%",
659
+ fy: "50%",
660
+ id: `gradient_${m.value}_${a}`
661
+ }, [
662
+ w("stop", {
663
+ offset: "0%",
664
+ "stop-color": n(qt)(n(Yt)(o.color, 0.05), 100 - e.value.style.chart.layout.rings.gradient.intensity)
665
+ }, null, 8, ko),
666
+ w("stop", {
667
+ offset: "100%",
668
+ "stop-color": o.color
669
+ }, null, 8, wo)
670
+ ], 8, Co))), 256))
671
+ ]),
672
+ t.$slots.pattern ? (i(), f("g", Ao, [
673
+ (i(!0), f(ce, null, ve(b.value, (o) => (i(), f("defs", null, [
674
+ v(t.$slots, "pattern", Ue({ ref_for: !0 }, { seriesIndex: o.absoluteIndex, patternId: `pattern_${m.value}_${o.absoluteIndex}` }), void 0, !0)
675
+ ]))), 256))
676
+ ])) : C("", !0),
677
+ (i(!0), f(ce, null, ve(b.value, (o, a) => (i(), f("g", null, [
678
+ w("circle", {
679
+ class: j({
680
+ "vue-ui-rings-item": E.value && e.value.useCssAnimation,
681
+ "vue-rings-item-onload": !E.value && e.value.useCssAnimation && !n(I),
682
+ "vue-ui-rings-opacity": F.value !== null && F.value !== a
683
+ }),
684
+ style: L(`animation-delay:${a * 100}ms`),
685
+ stroke: e.value.style.chart.layout.rings.stroke,
686
+ cx: s.value.width / 2,
687
+ cy: a === 0 ? s.value.height / 2 : s.value.height / 2 + p.value * b.value[0].proportion / 2 - p.value * o.proportion / 2 - 2 * (a + 1),
688
+ r: n(K)(p.value * o.proportion / 2 * 0.9 <= 0 ? 1e-4 : p.value * o.proportion / 2 * 0.9),
689
+ fill: e.value.style.chart.layout.rings.gradient.underlayerColor
690
+ }, null, 14, $o),
691
+ w("circle", {
692
+ class: j({
693
+ "vue-ui-rings-item": E.value && e.value.useCssAnimation,
694
+ "vue-rings-item-onload": !E.value && e.value.useCssAnimation && !n(I),
695
+ "vue-ui-rings-shadow": e.value.style.chart.layout.rings.useShadow,
696
+ "vue-ui-rings-blur": F.value !== null && F.value !== a
697
+ }),
698
+ style: L(`animation-delay:${a * 100}ms`),
699
+ stroke: e.value.style.chart.layout.rings.stroke,
700
+ "stroke-width": o.strokeWidth < 0.5 ? 0.5 : o.strokeWidth,
701
+ cx: s.value.width / 2,
702
+ cy: a === 0 ? s.value.height / 2 : s.value.height / 2 + p.value * b.value[0].proportion / 2 - p.value * o.proportion / 2 - 2 * (a + 1),
703
+ r: n(K)(p.value * o.proportion / 2 * 0.9 <= 0 ? 1e-4 : p.value * o.proportion / 2 * 0.9),
704
+ fill: e.value.style.chart.layout.rings.gradient.show ? `url(#gradient_${m.value}_${a})` : o.color
705
+ }, null, 14, To),
706
+ t.$slots.pattern ? (i(), f("circle", {
707
+ key: 0,
708
+ class: j({
709
+ "vue-ui-rings-item": E.value && e.value.useCssAnimation,
710
+ "vue-rings-item-onload": !E.value && e.value.useCssAnimation && !n(I),
711
+ "vue-ui-rings-shadow": e.value.style.chart.layout.rings.useShadow,
712
+ "vue-ui-rings-blur": F.value !== null && F.value !== a
713
+ }),
714
+ style: L(`animation-delay:${a * 100}ms`),
715
+ stroke: e.value.style.chart.layout.rings.stroke,
716
+ "stroke-width": o.strokeWidth < 0.5 ? 0.5 : o.strokeWidth,
717
+ cx: s.value.width / 2,
718
+ cy: a === 0 ? s.value.height / 2 : s.value.height / 2 + p.value * b.value[0].proportion / 2 - p.value * o.proportion / 2 - 2 * (a + 1),
719
+ r: n(K)(p.value * o.proportion / 2 * 0.9 <= 0 ? 1e-4 : p.value * o.proportion / 2 * 0.9),
720
+ fill: `url(#pattern_${m.value}_${o.absoluteIndex})`
721
+ }, null, 14, Fo)) : C("", !0),
722
+ w("circle", {
723
+ stroke: "none",
724
+ cx: s.value.width / 2,
725
+ cy: a === 0 ? s.value.height / 2 : s.value.height / 2 + p.value * b.value[0].proportion / 2 - p.value * o.proportion / 2 - 2 * (a + 1),
726
+ r: n(K)(p.value * o.proportion / 2 * 0.9 <= 0 ? 1e-4 : p.value * o.proportion / 2 * 0.9),
727
+ fill: "transparent",
728
+ onMouseenter: (r) => Ft(o, a),
729
+ onMouseleave: (r) => Tt(o, a),
730
+ onClick: (r) => $t(o, a)
731
+ }, null, 40, _o)
732
+ ]))), 256)),
733
+ v(t.$slots, "svg", { svg: s.value }, void 0, !0)
734
+ ], 14, yo)),
735
+ t.$slots.watermark ? (i(), f("div", So, [
736
+ v(t.$slots, "watermark", A($({ isPrinting: n(Oe) || n(De) })), void 0, !0)
737
+ ])) : C("", !0),
738
+ w("div", {
739
+ id: `legend-bottom-${m.value}`
740
+ }, null, 8, Oo),
741
+ $e.value ? (i(), x(Vt, {
742
+ key: 5,
743
+ to: e.value.style.chart.legend.position === "top" ? `#legend-top-${m.value}` : `#legend-bottom-${m.value}`
744
+ }, [
745
+ w("div", {
746
+ ref_key: "chartLegend",
747
+ ref: ye
748
+ }, [
749
+ e.value.style.chart.legend.show ? (i(), x(ho, {
750
+ key: `legend_${Ae.value}`,
751
+ legendSet: ne.value,
752
+ config: wt.value,
753
+ onClickMarker: l[0] || (l[0] = ({ legend: o }) => z(o.uid))
754
+ }, ie({
755
+ item: c(({ legend: o, index: a }) => [
756
+ n(I) ? C("", !0) : (i(), f("div", {
757
+ key: 0,
758
+ onClick: (r) => z(o.uid),
759
+ style: L(`opacity:${h.value.includes(o.uid) ? 0.5 : 1}`)
760
+ }, de(o.display), 13, Do))
761
+ ]),
762
+ _: 2
763
+ }, [
764
+ t.$slots.pattern ? {
765
+ name: "legend-pattern",
766
+ fn: c(({ legend: o, index: a }) => [
767
+ J(vo, {
768
+ shape: o.shape,
769
+ radius: 30,
770
+ stroke: "none",
771
+ plot: { x: 30, y: 30 },
772
+ fill: `url(#pattern_${m.value}_${a})`
773
+ }, null, 8, ["shape", "fill"])
774
+ ]),
775
+ key: "0"
776
+ } : void 0
777
+ ]), 1032, ["legendSet", "config"])) : v(t.$slots, "legend", {
778
+ key: 1,
779
+ legend: ne.value
780
+ }, void 0, !0)
781
+ ], 512)
782
+ ], 8, ["to"])) : C("", !0),
783
+ t.$slots.source ? (i(), f("div", {
784
+ key: 6,
785
+ ref_key: "source",
786
+ ref: me,
787
+ dir: "auto"
788
+ }, [
789
+ v(t.$slots, "source", {}, void 0, !0)
790
+ ], 512)) : C("", !0),
791
+ J(n(at), {
792
+ show: k.value.showTooltip && G.value && h.value.length < y.dataset.length,
793
+ backgroundColor: e.value.style.chart.tooltip.backgroundColor,
794
+ color: e.value.style.chart.tooltip.color,
795
+ borderRadius: e.value.style.chart.tooltip.borderRadius,
796
+ borderColor: e.value.style.chart.tooltip.borderColor,
797
+ borderWidth: e.value.style.chart.tooltip.borderWidth,
798
+ fontSize: e.value.style.chart.tooltip.fontSize,
799
+ backgroundOpacity: e.value.style.chart.tooltip.backgroundOpacity,
800
+ position: e.value.style.chart.tooltip.position,
801
+ offsetY: e.value.style.chart.tooltip.offsetY,
802
+ parent: _.value,
803
+ content: Q.value,
804
+ isFullscreen: P.value,
805
+ isCustom: e.value.style.chart.tooltip.customFormat && typeof e.value.style.chart.tooltip.customFormat == "function",
806
+ smooth: e.value.style.chart.tooltip.smooth,
807
+ backdropFilter: e.value.style.chart.tooltip.backdropFilter,
808
+ smoothForce: e.value.style.chart.tooltip.smoothForce,
809
+ smoothSnapThreshold: e.value.style.chart.tooltip.smoothSnapThreshold
810
+ }, {
811
+ "tooltip-before": c(() => [
812
+ v(t.$slots, "tooltip-before", A($({ ...re.value })), void 0, !0)
813
+ ]),
814
+ "tooltip-after": c(() => [
815
+ v(t.$slots, "tooltip-after", A($({ ...re.value })), void 0, !0)
816
+ ]),
817
+ _: 3
818
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter", "smoothForce", "smoothSnapThreshold"]),
819
+ pe.value && e.value.userOptions.buttons.table ? (i(), x(Mt(U.value.component), Ue({ key: 7 }, U.value.props, {
820
+ ref_key: "tableUnit",
821
+ ref: M,
822
+ onClose: Ve
823
+ }), ie({
824
+ content: c(() => [
825
+ (i(), x(n(st), {
826
+ key: `table_${we.value}`,
827
+ colNames: X.value.colNames,
828
+ head: X.value.head,
829
+ body: X.value.body,
830
+ config: X.value.config,
831
+ title: e.value.table.useDialog ? "" : U.value.title,
832
+ withCloseButton: !e.value.table.useDialog,
833
+ onClose: Ve
834
+ }, {
835
+ th: c(({ th: o }) => [
836
+ w("div", {
837
+ innerHTML: o,
838
+ style: { display: "flex", "align-items": "center" }
839
+ }, null, 8, xo)
840
+ ]),
841
+ td: c(({ td: o }) => [
842
+ We(de(o.name || o), 1)
843
+ ]),
844
+ _: 1
845
+ }, 8, ["colNames", "head", "body", "config", "title", "withCloseButton"]))
846
+ ]),
847
+ _: 2
848
+ }, [
849
+ e.value.table.useDialog ? {
850
+ name: "title",
851
+ fn: c(() => [
852
+ We(de(U.value.title), 1)
853
+ ]),
854
+ key: "0"
855
+ } : void 0,
856
+ e.value.table.useDialog ? {
857
+ name: "actions",
858
+ fn: c(() => [
859
+ w("button", {
860
+ tabindex: "0",
861
+ class: "vue-ui-user-options-button",
862
+ onClick: l[1] || (l[1] = (o) => se(e.value.userOptions.callbacks.csv))
863
+ }, [
864
+ J(n(nt), {
865
+ name: "excel",
866
+ stroke: U.value.props.color
867
+ }, null, 8, ["stroke"])
868
+ ])
869
+ ]),
870
+ key: "1"
871
+ } : void 0
872
+ ]), 1040)) : C("", !0),
873
+ n(I) ? (i(), x(no, { key: 8 })) : C("", !0)
874
+ ], 46, fo));
875
+ }
876
+ }, Io = /* @__PURE__ */ po(Eo, [["__scopeId", "data-v-f5946cde"]]), Jo = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
877
+ __proto__: null,
878
+ default: Io
879
+ }, Symbol.toStringTag, { value: "Module" }));
880
+ export {
881
+ Yo as a,
882
+ Jo as b,
883
+ Io as v
884
+ };