vue-data-ui 3.25.11 → 3.25.13

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 (205) hide show
  1. package/dist/{Arrow-DLn-pcrh.js → Arrow-BhZDUeMp.js} +1 -1
  2. package/dist/{BaseDraggableDialog-Gm4Q30j0.js → BaseDraggableDialog-Ck6R5Q0K.js} +2 -2
  3. package/dist/{BaseIcon-D8R6_sKH.js → BaseIcon-Dlz7gfx0.js} +1 -1
  4. package/dist/{BaseLegendToggle-CXQrLjd-.js → BaseLegendToggle-DGG65LAR.js} +1 -1
  5. package/dist/{BaseZoomControls-BTzjVDPM.js → BaseZoomControls-BK0PxEa8.js} +2 -2
  6. package/dist/{ColorPicker-CUy15T72.js → ColorPicker-DMTwxvi_.js} +2 -2
  7. package/dist/{DataTable-oiM9uWrQ.js → DataTable-BD1eZ0zB.js} +2 -2
  8. package/dist/{HillActions-Dn8aKOVJ.js → HillActions-CiP2m7Nz.js} +1 -1
  9. package/dist/{Legend-X4kF4PvW.js → Legend-C0Ln0VNe.js} +2 -2
  10. package/dist/{NonSvgPenAndPaper-DFXjpRyl.js → NonSvgPenAndPaper-BjrMLISf.js} +3 -3
  11. package/dist/{PackageVersion-CEvZNFTz.js → PackageVersion-D5QkTJQU.js} +1 -1
  12. package/dist/{PenAndPaper-Cd3nItcO.js → PenAndPaper-XdUD8uB3.js} +3 -3
  13. package/dist/{Shape-CIqU-p2F.js → Shape-VCdxvFV9.js} +3 -3
  14. package/dist/{SlicerPreview-Ccss7Vsq.js → SlicerPreview-BJ4usfYd.js} +21 -21
  15. package/dist/{SparkTooltip-L3SliZbR.js → SparkTooltip-B1gRxPfb.js} +6 -6
  16. package/dist/{Title-CPHi-evi.js → Title-DeqmC-vN.js} +1 -1
  17. package/dist/{Tooltip-hhrkQ3Lk.js → Tooltip-DZ4a3XJQ.js} +1 -1
  18. package/dist/{UserOptions-qo_Tsqci.js → UserOptions-wFD9vo9g.js} +2 -2
  19. package/dist/components/arrow.js +1 -1
  20. package/dist/components/vue-ui-3d-bar.js +1 -1
  21. package/dist/components/vue-ui-accordion.js +1 -1
  22. package/dist/components/vue-ui-age-pyramid.js +1 -1
  23. package/dist/components/vue-ui-annotator.js +1 -1
  24. package/dist/components/vue-ui-bullet.js +1 -1
  25. package/dist/components/vue-ui-bump.js +1 -1
  26. package/dist/components/vue-ui-candlestick.js +1 -1
  27. package/dist/components/vue-ui-carousel-table.js +1 -1
  28. package/dist/components/vue-ui-chestnut.js +1 -1
  29. package/dist/components/vue-ui-chord.js +1 -1
  30. package/dist/components/vue-ui-circle-pack.js +1 -1
  31. package/dist/components/vue-ui-cursor.js +1 -1
  32. package/dist/components/vue-ui-dag.js +1 -1
  33. package/dist/components/vue-ui-dashboard.js +1 -1
  34. package/dist/components/vue-ui-digits.js +1 -1
  35. package/dist/components/vue-ui-donut-evolution.js +1 -1
  36. package/dist/components/vue-ui-donut.js +1 -1
  37. package/dist/components/vue-ui-dumbbell.js +1 -1
  38. package/dist/components/vue-ui-flow.js +1 -1
  39. package/dist/components/vue-ui-funnel.js +1 -1
  40. package/dist/components/vue-ui-galaxy.js +1 -1
  41. package/dist/components/vue-ui-gauge.js +1 -1
  42. package/dist/components/vue-ui-geo.js +1 -1
  43. package/dist/components/vue-ui-gizmo.js +1 -1
  44. package/dist/components/vue-ui-heatmap.js +1 -1
  45. package/dist/components/vue-ui-hill.js +1 -1
  46. package/dist/components/vue-ui-history-plot.js +1 -1
  47. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  48. package/dist/components/vue-ui-icon.js +1 -1
  49. package/dist/components/vue-ui-kpi.js +1 -1
  50. package/dist/components/vue-ui-label.js +1 -1
  51. package/dist/components/vue-ui-mini-loader.js +1 -1
  52. package/dist/components/vue-ui-molecule.js +1 -1
  53. package/dist/components/vue-ui-mood-radar.js +1 -1
  54. package/dist/components/vue-ui-nested-donuts.js +1 -1
  55. package/dist/components/vue-ui-onion.js +1 -1
  56. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  57. package/dist/components/vue-ui-quadrant.js +1 -1
  58. package/dist/components/vue-ui-quick-chart.js +1 -1
  59. package/dist/components/vue-ui-radar.js +1 -1
  60. package/dist/components/vue-ui-rating.js +1 -1
  61. package/dist/components/vue-ui-relation-circle.js +1 -1
  62. package/dist/components/vue-ui-ridgeline.js +1 -1
  63. package/dist/components/vue-ui-rings.js +1 -1
  64. package/dist/components/vue-ui-scatter.js +1 -1
  65. package/dist/components/vue-ui-skeleton.js +1 -1
  66. package/dist/components/vue-ui-smiley.js +1 -1
  67. package/dist/components/vue-ui-spark-trend.js +1 -1
  68. package/dist/components/vue-ui-sparkbar.js +1 -1
  69. package/dist/components/vue-ui-sparkgauge.js +1 -1
  70. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  71. package/dist/components/vue-ui-sparkline.js +1 -1
  72. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  73. package/dist/components/vue-ui-stackbar.js +1 -1
  74. package/dist/components/vue-ui-stackline.js +1 -1
  75. package/dist/components/vue-ui-strip-plot.js +1 -1
  76. package/dist/components/vue-ui-table-heatmap.js +1 -1
  77. package/dist/components/vue-ui-table-sparkline.js +1 -1
  78. package/dist/components/vue-ui-table.js +1 -1
  79. package/dist/components/vue-ui-thermometer.js +1 -1
  80. package/dist/components/vue-ui-timer.js +1 -1
  81. package/dist/components/vue-ui-tiremarks.js +1 -1
  82. package/dist/components/vue-ui-treemap.js +1 -1
  83. package/dist/components/vue-ui-vertical-bar.js +1 -1
  84. package/dist/components/vue-ui-waffle.js +1 -1
  85. package/dist/components/vue-ui-wheel.js +1 -1
  86. package/dist/components/vue-ui-word-cloud.js +1 -1
  87. package/dist/components/vue-ui-world.js +1 -1
  88. package/dist/components/vue-ui-xy-canvas.js +1 -1
  89. package/dist/components/vue-ui-xy.js +1 -1
  90. package/dist/{dom-to-png-BR4imuKV.js → dom-to-png-DdqmzDdY.js} +1 -1
  91. package/dist/exposedLib-BBtjpydc.js +28 -0
  92. package/dist/{img-BkMKbWsI.js → img-W50sC9SC.js} +1 -1
  93. package/dist/{labelUtils-BXX2NzRe.js → labelUtils-Dvm-7rse.js} +1 -1
  94. package/dist/{lib-Dql7cqyA.js → lib-DOpaUOQx.js} +191 -88
  95. package/dist/{package-B10eQN5L.js → package-Cmcke8zR.js} +1 -1
  96. package/dist/{pdf-BSOs_GZz.js → pdf-zGbDDpCi.js} +1 -1
  97. package/dist/{render-common-CZ6-MONw.js → render-common-CG1wuHZY.js} +16 -16
  98. package/dist/ssr/vue-ui-donut.js +1 -1
  99. package/dist/ssr/vue-ui-xy.js +1 -1
  100. package/dist/ssr.js +2 -2
  101. package/dist/style.css +1 -1
  102. package/dist/types/vue-data-ui.d.ts +6 -0
  103. package/dist/{useConfig-D32D002m.js → useConfig-C2uy4ltq.js} +2 -0
  104. package/dist/{useNestedProp-Chvyfpl-.js → useNestedProp-Bux0f4iY.js} +1 -1
  105. package/dist/{useObjectBindings-Cd_WuYIn.js → useObjectBindings-CEuNiBIT.js} +1 -1
  106. package/dist/{usePrinter-hohanNCX.js → usePrinter-BBBooAGP.js} +2 -2
  107. package/dist/utils.js +13 -13
  108. package/dist/{vue-data-ui-zJ1rNxIN.js → vue-data-ui-BVzA0tEV.js} +70 -70
  109. package/dist/vue-data-ui.js +75 -75
  110. package/dist/{vue-ui-3d-bar-CKTAkCAN.js → vue-ui-3d-bar-Ckauu3d4.js} +536 -536
  111. package/dist/{vue-ui-accordion-DmkL8A59.js → vue-ui-accordion-yHZMJLaY.js} +4 -4
  112. package/dist/vue-ui-age-pyramid-BczIt1-U.js +1305 -0
  113. package/dist/{vue-ui-annotator-BLYRy--7.js → vue-ui-annotator-BGB6K6u0.js} +60 -60
  114. package/dist/{vue-ui-bullet-Ck398xn8.js → vue-ui-bullet-BoTsLccZ.js} +84 -84
  115. package/dist/{vue-ui-bump-DyA47yse.js → vue-ui-bump-B5ztSSQO.js} +105 -105
  116. package/dist/{vue-ui-candlestick-DCavjk1j.js → vue-ui-candlestick-BJtdA4Yu.js} +98 -98
  117. package/dist/vue-ui-carousel-table-D-3KSWok.js +467 -0
  118. package/dist/vue-ui-chestnut-W2l-W0_e.js +2016 -0
  119. package/dist/{vue-ui-chord-GgA7QFUH.js → vue-ui-chord-BFPQsMj8.js} +63 -63
  120. package/dist/{vue-ui-circle-pack-BUXTVdy3.js → vue-ui-circle-pack-BtPc1BR3.js} +50 -50
  121. package/dist/{vue-ui-cursor-CEejESe_.js → vue-ui-cursor-CpNOiwkt.js} +61 -61
  122. package/dist/{vue-ui-dag-C1c6scxC.js → vue-ui-dag-i-zPwLcN.js} +44 -44
  123. package/dist/{vue-ui-dashboard-BZBJM7dN.js → vue-ui-dashboard-DtaW9a2P.js} +70 -70
  124. package/dist/{vue-ui-digits-CsougDlU.js → vue-ui-digits-BIlec9af.js} +4 -4
  125. package/dist/{vue-ui-donut-lBgSYKgO.js → vue-ui-donut-Bgf-n95J.js} +551 -551
  126. package/dist/{vue-ui-donut-Be9jKelz.js → vue-ui-donut-CJlBEyxu.js} +203 -203
  127. package/dist/vue-ui-donut-evolution-C0BKntfL.js +1552 -0
  128. package/dist/{vue-ui-dumbbell-CwmA5x9G.js → vue-ui-dumbbell-C112YLkC.js} +87 -87
  129. package/dist/{vue-ui-flow-CRhh8SSN.js → vue-ui-flow-j4bDg9Zd.js} +99 -99
  130. package/dist/{vue-ui-funnel-DH1hW8Gw.js → vue-ui-funnel-CVHpfBCW.js} +40 -40
  131. package/dist/vue-ui-galaxy-ChGpUWh8.js +1097 -0
  132. package/dist/{vue-ui-gauge-CV4-Rn7K.js → vue-ui-gauge-Cp00vXfG.js} +190 -190
  133. package/dist/{vue-ui-geo-BocLrguL.js → vue-ui-geo-B4hDk5NO.js} +12 -12
  134. package/dist/{vue-ui-gizmo-6wKlI5PC.js → vue-ui-gizmo-D6nCCsS4.js} +54 -54
  135. package/dist/vue-ui-heatmap-scVJc1cw.js +1606 -0
  136. package/dist/{vue-ui-hill-CeIZZFf5.js → vue-ui-hill-DnYUHGAK.js} +21 -21
  137. package/dist/vue-ui-history-plot-C5qAMaaW.js +1710 -0
  138. package/dist/{vue-ui-horizontal-bar-D2aw-8tx.js → vue-ui-horizontal-bar-nEG4uvpv.js} +85 -85
  139. package/dist/{vue-ui-kpi-BQ967gzv.js → vue-ui-kpi-DOxId6xg.js} +12 -12
  140. package/dist/{vue-ui-label-Cs4ZlAqr.js → vue-ui-label-BDKY7BI7.js} +4 -4
  141. package/dist/{vue-ui-mini-loader-wGeACd-Y.js → vue-ui-mini-loader-BknVs9VJ.js} +3 -3
  142. package/dist/vue-ui-molecule-_x232mMu.js +941 -0
  143. package/dist/vue-ui-mood-radar-D-F4855V.js +1111 -0
  144. package/dist/{vue-ui-nested-donuts-DT2zkLx2.js → vue-ui-nested-donuts-0E5IllFW.js} +481 -481
  145. package/dist/vue-ui-onion-Eip0S1H7.js +1247 -0
  146. package/dist/vue-ui-parallel-coordinate-plot-DO0sQdJw.js +1444 -0
  147. package/dist/vue-ui-quadrant-CA0ClWfL.js +1979 -0
  148. package/dist/{vue-ui-quick-chart-CkPu6GMh.js → vue-ui-quick-chart-D-VuAoll.js} +169 -169
  149. package/dist/vue-ui-radar-BTD7Y0Ps.js +1386 -0
  150. package/dist/vue-ui-rating-C_Qj6gnP.js +359 -0
  151. package/dist/vue-ui-relation-circle-CcxLBVFV.js +905 -0
  152. package/dist/vue-ui-ridgeline-BZrzbbhb.js +1630 -0
  153. package/dist/{vue-ui-rings-CBtHZ5Pp.js → vue-ui-rings-CO48GOP2.js} +78 -78
  154. package/dist/{vue-ui-scatter-DzePsQEe.js → vue-ui-scatter-DrxUgZbQ.js} +136 -136
  155. package/dist/{vue-ui-skeleton-C347nFnE.js → vue-ui-skeleton-CeKjW4MX.js} +510 -510
  156. package/dist/{vue-ui-smiley-BIjAIpJ9.js → vue-ui-smiley-BvRwx69s.js} +6 -6
  157. package/dist/{vue-ui-spark-trend-Di_7Da43.js → vue-ui-spark-trend-DnujGRyt.js} +96 -96
  158. package/dist/{vue-ui-sparkbar-CbJ-fKc6.js → vue-ui-sparkbar-Cd_uhYGD.js} +113 -113
  159. package/dist/vue-ui-sparkgauge-hT31YEtt.js +268 -0
  160. package/dist/vue-ui-sparkhistogram-PKlTYhKA.js +589 -0
  161. package/dist/vue-ui-sparkline-BSu1uRvP.js +1610 -0
  162. package/dist/{vue-ui-sparkstackbar-IM_l98X-.js → vue-ui-sparkstackbar-R0ij2vi1.js} +183 -183
  163. package/dist/vue-ui-stackbar-BrzzkGFk.js +2369 -0
  164. package/dist/vue-ui-stackline-zEX3gR3y.js +2483 -0
  165. package/dist/{vue-ui-strip-plot-CVV0t6mb.js → vue-ui-strip-plot-DR3N56rS.js} +253 -253
  166. package/dist/{vue-ui-table-nAGCIZKg.js → vue-ui-table-Bg6BeLrf.js} +117 -117
  167. package/dist/{vue-ui-table-heatmap-D5F5bLx5.js → vue-ui-table-heatmap-C1b1Pcp8.js} +95 -95
  168. package/dist/vue-ui-table-sparkline-CkVXyequ.js +738 -0
  169. package/dist/{vue-ui-thermometer-Ccr2ZnzI.js → vue-ui-thermometer-CqkaMF7Z.js} +23 -23
  170. package/dist/{vue-ui-timer-DkW-P6EG.js → vue-ui-timer-CgJvNwBv.js} +13 -13
  171. package/dist/{vue-ui-tiremarks-Bf2anKLr.js → vue-ui-tiremarks-B078YJ9M.js} +30 -30
  172. package/dist/{vue-ui-treemap-Wy61KlkN.js → vue-ui-treemap-Cfjf8mDl.js} +77 -77
  173. package/dist/vue-ui-waffle-BZIcPa0l.js +1633 -0
  174. package/dist/{vue-ui-wheel-DGhu_B8n.js → vue-ui-wheel-CPTm8AHn.js} +185 -185
  175. package/dist/{vue-ui-word-cloud-CdRMst8U.js → vue-ui-word-cloud-DnGblUwj.js} +46 -46
  176. package/dist/{vue-ui-world-Bc4hMzzB.js → vue-ui-world-KkcpeKqp.js} +133 -133
  177. package/dist/vue-ui-xy-C6lVqZnx.js +5367 -0
  178. package/dist/{vue-ui-xy-CbgQs7yW.js → vue-ui-xy-ClCV7xA5.js} +169 -169
  179. package/dist/{vue-ui-xy-canvas-R2xbgDOy.js → vue-ui-xy-canvas-BlpCbXKR.js} +435 -435
  180. package/package.json +1 -1
  181. package/dist/exposedLib-CG3aXJ-v.js +0 -28
  182. package/dist/vue-ui-age-pyramid-SpPactMh.js +0 -1305
  183. package/dist/vue-ui-carousel-table-DCnVD0BJ.js +0 -467
  184. package/dist/vue-ui-chestnut-BDBdizBp.js +0 -2016
  185. package/dist/vue-ui-donut-evolution-vLMhwz4K.js +0 -1552
  186. package/dist/vue-ui-galaxy-CiqILfxR.js +0 -1097
  187. package/dist/vue-ui-heatmap-DGXXRsr4.js +0 -1606
  188. package/dist/vue-ui-history-plot-CporPpg9.js +0 -1710
  189. package/dist/vue-ui-molecule-CvDC9Ht5.js +0 -941
  190. package/dist/vue-ui-mood-radar-BK1va5-H.js +0 -1111
  191. package/dist/vue-ui-onion-DPMikBzZ.js +0 -1247
  192. package/dist/vue-ui-parallel-coordinate-plot-DMPxUL3p.js +0 -1444
  193. package/dist/vue-ui-quadrant-DFkIeJXo.js +0 -1979
  194. package/dist/vue-ui-radar-B3OOLJal.js +0 -1386
  195. package/dist/vue-ui-rating-Criq0ofQ.js +0 -359
  196. package/dist/vue-ui-relation-circle-I6e5UxgY.js +0 -905
  197. package/dist/vue-ui-ridgeline-FmmdCdy9.js +0 -1630
  198. package/dist/vue-ui-sparkgauge-Bb9-yFTb.js +0 -268
  199. package/dist/vue-ui-sparkhistogram-kbbbDVul.js +0 -589
  200. package/dist/vue-ui-sparkline-BF0Fdo6v.js +0 -1587
  201. package/dist/vue-ui-stackbar-CaEXVeo5.js +0 -2369
  202. package/dist/vue-ui-stackline-MgvhcBfm.js +0 -2483
  203. package/dist/vue-ui-table-sparkline-Bf2hjBwq.js +0 -738
  204. package/dist/vue-ui-waffle-CkIFp-AN.js +0 -1633
  205. package/dist/vue-ui-xy-DybWfQrI.js +0 -5298
@@ -1,1633 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { $ as t, Ct as n, D as r, Lt as i, Pt as a, S as o, Ut as s, Wt as ee, X as c, Yt as te, Z as ne, Zt as re, ht as ie, i as ae, lt as oe, n as se, nt as ce, q as le, r as ue, t as de, w as fe } from "./lib-Dql7cqyA.js";
3
- import { n as pe, t as me } from "./useHints-Dq_w2E8B.js";
4
- import { t as he } from "./useConfig-D32D002m.js";
5
- import { t as ge } from "./usePrinter-hohanNCX.js";
6
- import { n as _e, t as ve } from "./BaseScanner-Dzc8VT3j.js";
7
- import { t as ye } from "./useNestedProp-Chvyfpl-.js";
8
- import { t as be } from "./useThemeCheck-C43Tcqmk.js";
9
- import { t as xe } from "./useChartExport-iwOqiIWX.js";
10
- import { t as Se } from "./useTransitions-g_zBREk2.js";
11
- import { t as Ce } from "./img-BkMKbWsI.js";
12
- import { n as we } from "./Title-CPHi-evi.js";
13
- import { t as Te } from "./Shape-CIqU-p2F.js";
14
- import { t as Ee } from "./_plugin-vue_export-helper-B3ysoDQm.js";
15
- import { l as De, t as Oe } from "./useResponsive-ZtArZtUf.js";
16
- import { t as ke } from "./DefGrad-DVBqDjhO.js";
17
- import { t as Ae } from "./BaseLegendToggle-CXQrLjd-.js";
18
- import { t as je } from "./A11yDataTable-DdRsVULz.js";
19
- import { t as Me } from "./useUserOptionState-DK-_1ddE.js";
20
- import { t as Ne } from "./useChartAccessibility-DYqac8yF.js";
21
- import { t as Pe } from "./labelUtils-BXX2NzRe.js";
22
- import { t as Fe } from "./Legend-X4kF4PvW.js";
23
- import { t as Ie } from "./usePrefersMotion-BC-CsqR1.js";
24
- import { t as Le } from "./vue_ui_waffle-DE_DiSVP.js";
25
- import { Fragment as l, Teleport as Re, computed as u, createBlock as d, createCommentVNode as f, createElementBlock as p, createElementVNode as m, createSlots as ze, createTextVNode as Be, createVNode as Ve, defineAsyncComponent as He, guardReactiveProps as h, mergeProps as Ue, nextTick as We, normalizeClass as g, normalizeProps as _, normalizeStyle as v, onBeforeUnmount as Ge, onMounted as Ke, openBlock as y, ref as b, renderList as x, renderSlot as S, resolveDynamicComponent as qe, shallowRef as Je, toDisplayString as Ye, toRefs as Xe, unref as C, useSlots as Ze, watch as Qe, withCtx as w } from "vue";
26
- //#region src/components/vue-ui-waffle.vue
27
- var $e = /* @__PURE__ */ e({ default: () => Dt }), et = ["id"], tt = ["id"], nt = ["id"], rt = { style: { position: "relative" } }, it = [
28
- "xmlns",
29
- "aria-describedby",
30
- "viewBox"
31
- ], at = ["id"], ot = [
32
- "x",
33
- "y",
34
- "height",
35
- "width"
36
- ], st = ["height", "width"], ct = { key: 0 }, lt = [
37
- "d",
38
- "stroke",
39
- "stroke-width",
40
- "filter"
41
- ], ut = [
42
- "d",
43
- "fill",
44
- "stroke",
45
- "stroke-width",
46
- "filter"
47
- ], dt = { key: 0 }, ft = [
48
- "d",
49
- "fill",
50
- "filter"
51
- ], pt = [
52
- "rx",
53
- "x",
54
- "y",
55
- "height",
56
- "width",
57
- "stroke",
58
- "stroke-width",
59
- "filter"
60
- ], mt = [
61
- "rx",
62
- "x",
63
- "y",
64
- "height",
65
- "width",
66
- "fill",
67
- "stroke",
68
- "stroke-width",
69
- "filter"
70
- ], ht = { key: 0 }, gt = [
71
- "rx",
72
- "x",
73
- "y",
74
- "height",
75
- "width",
76
- "fill",
77
- "filter"
78
- ], _t = [
79
- "points",
80
- "stroke",
81
- "stroke-width",
82
- "stroke-linejoin"
83
- ], vt = [
84
- "textContent",
85
- "x",
86
- "y",
87
- "font-size",
88
- "fill",
89
- "filter"
90
- ], yt = [
91
- "d",
92
- "onMouseover",
93
- "onMouseleave",
94
- "onClick"
95
- ], bt = [
96
- "x",
97
- "y",
98
- "height",
99
- "width",
100
- "onMouseover",
101
- "onMouseleave",
102
- "onClick"
103
- ], xt = {
104
- key: 0,
105
- style: {
106
- position: "absolute",
107
- top: "100%",
108
- left: "0",
109
- width: "100%"
110
- },
111
- "data-dom-to-png-ignore": "",
112
- "aria-hidden": "true"
113
- }, St = {
114
- key: 5,
115
- class: "vue-data-ui-watermark"
116
- }, Ct = ["id"], wt = ["onClick"], Tt = { key: 0 }, Et = { key: 1 }, Dt = /*#__PURE__*/ Ee({
117
- __name: "vue-ui-waffle",
118
- props: {
119
- config: {
120
- type: Object,
121
- default() {
122
- return {};
123
- }
124
- },
125
- dataset: {
126
- type: Array,
127
- default() {
128
- return [];
129
- }
130
- }
131
- },
132
- emits: ["selectLegend", "copyAlt"],
133
- setup(e, { expose: Ee, emit: $e }) {
134
- let Dt = He(() => import("./Tooltip-hhrkQ3Lk.js")), Ot = He(() => import("./BaseIcon-D8R6_sKH.js").then((e) => e.n)), kt = He(() => import("./DataTable-oiM9uWrQ.js")), At = He(() => import("./vue-ui-accordion-DmkL8A59.js").then((e) => e.n)), jt = He(() => import("./UserOptions-qo_Tsqci.js").then((e) => e.n)), Mt = He(() => import("./PenAndPaper-Cd3nItcO.js").then((e) => e.t)), Nt = He(() => import("./PackageVersion-CEvZNFTz.js").then((e) => e.t)), Pt = He(() => import("./BaseDraggableDialog-Gm4Q30j0.js").then((e) => e.n)), { vue_ui_waffle: Ft } = he(), { isThemeValid: It, warnInvalidTheme: Lt } = be(), Rt = Ie(), T = e, zt = Ze(), Bt = u({
135
- get() {
136
- return !!T.dataset && T.dataset.length;
137
- },
138
- set(e) {
139
- return e;
140
- }
141
- }), E = b(le()), Vt = b(!1), Ht = b(""), D = b(null), Ut = b(0), O = b(null), Wt = b(null), Gt = b(null), Kt = b(null), qt = b(null), Jt = b(0), Yt = b(0), Xt = b(0), Zt = b(!1), Qt = b(null), $t = b(null), k = b(null), en = b({
142
- x: 0,
143
- y: 0
144
- }), tn = b("pointer"), nn = b(!1), A = b(pn()), j = u(() => A.value.userOptions), M = u(() => A.value.style.chart.tooltip), N = u(() => A.value.style.chart.legend), P = u(() => A.value.style.chart.layout.rect), F = u(() => A.value.style.chart.layout.grid), I = u(() => A.value.style.chart.layout), L = u(() => A.value.style.chart), { transitionEnabled: R } = Se({
145
- config: () => A.value.transitions,
146
- dataset: () => T.dataset
147
- });
148
- pe({
149
- config: () => A.value,
150
- dataset: () => T.dataset,
151
- component: "VueUiWaffle",
152
- rules: [
153
- me.singleSeries,
154
- me.emptyArray,
155
- {
156
- test: (e) => e.length > 6,
157
- message: [
158
- "👀 The number of series is > 6. Consider:",
159
- "",
160
- "▶️ Grouping small values dynamically into a single \"Other\" series.",
161
- "",
162
- "▶️ Using filters to let users choose a maximum number of series to display.",
163
- "",
164
- "▶️ Using VueUiHorizontalBar instead to make the dataset breakdown easier to read."
165
- ]
166
- }
167
- ]
168
- });
169
- let rn = u(() => A.value.userOptions.useCursorPointer), an = u(() => re({
170
- defaultConfig: {
171
- useCustomCells: !1,
172
- userOptions: { show: !1 },
173
- table: { show: !1 },
174
- style: { chart: {
175
- backgroundColor: "#99999930",
176
- layout: {
177
- labels: { captions: { show: !1 } },
178
- rect: { stroke: "#999999" }
179
- },
180
- legend: {
181
- backgroundColor: "transparent",
182
- showValue: !1,
183
- showPercentage: !1
184
- }
185
- } }
186
- },
187
- userConfig: A.value.skeletonConfig ?? {}
188
- })), { loading: on, FINAL_DATASET: sn, manualLoading: cn } = _e({
189
- ...Xe(T),
190
- FINAL_CONFIG: A,
191
- prepareConfig: pn,
192
- callback: () => {
193
- Promise.resolve().then(async () => {
194
- G.value = kn();
195
- });
196
- },
197
- skeletonDataset: T.config?.skeletonDataset ?? [
198
- {
199
- name: "",
200
- values: [1],
201
- color: "#AAAAAA"
202
- },
203
- {
204
- name: "",
205
- values: [1],
206
- color: "#BABABA"
207
- },
208
- {
209
- name: "",
210
- values: [1],
211
- color: "#CACACA"
212
- }
213
- ],
214
- skeletonConfig: re({
215
- defaultConfig: A.value,
216
- userConfig: an.value
217
- })
218
- }), { userOptionsVisible: ln, setUserOptionsVisibility: un, keepUserOptionState: dn } = Me({ config: A.value }), { svgRef: fn } = Ne({ config: L.value.title });
219
- function pn() {
220
- let e = ye({
221
- userConfig: T.config,
222
- defaultConfig: Ft
223
- }), t = e.theme;
224
- if (!t) return e;
225
- if (!It.value(e)) return Lt(e), e;
226
- let n = ye({
227
- userConfig: Le[t] || T.config,
228
- defaultConfig: e
229
- }), r = ye({
230
- userConfig: T.config,
231
- defaultConfig: n
232
- });
233
- return {
234
- ...r,
235
- customPalette: r.customPalette.length ? r.customPalette : te[t] || i
236
- };
237
- }
238
- function mn(e) {
239
- let t = ne(e);
240
- return t?.style?.chart && delete t.style.chart.tooltip, JSON.stringify(t);
241
- }
242
- let hn = mn(T.config);
243
- Qe(() => T.config, (e, t) => {
244
- let n = mn(e), r = n !== hn;
245
- hn = n;
246
- let i = pn();
247
- if (!r) {
248
- A.value.style.chart.tooltip = i.style.chart.tooltip, B.value.showTooltip = A.value.style.chart.tooltip.show;
249
- return;
250
- }
251
- on.value || (A.value = i), ln.value = !A.value.userOptions.showOnChartHover, vn(), Jt.value += 1, Yt.value += 1, Xt.value += 1, B.value.showTable = A.value.table.show, B.value.showTooltip = M.value.show;
252
- }, { deep: !0 });
253
- let z = Je(null), gn = Je(null), _n = u(() => A.value.debug);
254
- function vn() {
255
- if (a(T.dataset) ? (ce({
256
- componentName: "VueUiWaffle",
257
- type: "dataset",
258
- debug: _n.value
259
- }), Bt.value = !1, cn.value = !0) : _n.value && T.dataset.forEach((e, t) => {
260
- ie({
261
- datasetObject: e,
262
- requiredAttributes: ["name", "values"]
263
- }).forEach((e) => {
264
- ce({
265
- componentName: "VueUiWaffle",
266
- type: "datasetSerieAttribute",
267
- property: e,
268
- index: t
269
- });
270
- });
271
- }), a(T.dataset) || (cn.value = A.value.loading), A.value.responsive) {
272
- let e = De(() => {
273
- let { width: e, height: t } = Oe({
274
- chart: O.value,
275
- title: L.value.title.text ? Wt.value : null,
276
- legend: N.value.show ? Gt.value : null,
277
- source: Kt.value,
278
- noTitle: qt.value
279
- });
280
- requestAnimationFrame(() => {
281
- V.value.width = e, V.value.height = t, H.value.width = e, H.value.height = t;
282
- });
283
- });
284
- z.value && (gn.value && z.value.unobserve(gn.value), z.value.disconnect()), z.value = new ResizeObserver(e), gn.value = O.value.parentNode, z.value.observe(gn.value);
285
- }
286
- }
287
- Ke(() => {
288
- Zt.value = !0, vn();
289
- }), Ge(() => {
290
- z.value && (gn.value && z.value.unobserve(gn.value), z.value.disconnect());
291
- });
292
- let { isPrinting: yn, isImaging: bn, generatePdf: xn, generateImage: Sn } = ge({
293
- elementId: `vue-ui-waffle_${E.value}`,
294
- fileName: L.value.title.text || "vue-ui-waffle",
295
- options: A.value.userOptions.print
296
- }), Cn = u(() => A.value.userOptions.show && !L.value.title.text), wn = u(() => fe(A.value.customPalette)), B = b({
297
- showTable: A.value.table.show,
298
- showTooltip: M.value.show
299
- });
300
- Qe(A, () => {
301
- B.value = {
302
- showTable: A.value.table.show,
303
- showTooltip: M.value.show
304
- };
305
- }, { immediate: !0 });
306
- let V = b({
307
- height: 512,
308
- width: 512
309
- }), H = b({
310
- top: 0,
311
- left: 0,
312
- height: 512,
313
- width: 512
314
- }), U = u(() => (H.value.width - F.value.size * F.value.spaceBetween) / F.value.size), W = u(() => (H.value.height - F.value.size * F.value.spaceBetween) / F.value.size), Tn = u(() => Math.max(1e-4, H.value.width / F.value.size)), En = u(() => Math.max(1e-4, H.value.height / F.value.size));
315
- function Dn(e) {
316
- let t = F.value.size * F.value.size, n = e.reduce((e, t) => e + t, 0), r = e.map((e) => e / n * t), i = r.map(Math.floor), a = r.map((e) => e % 1), o = t - i.reduce((e, t) => e + t, 0);
317
- for (; o > 0;) {
318
- let e = a.indexOf(Math.max(...a));
319
- i[e] += 1, a[e] = 0, --o;
320
- }
321
- return i;
322
- }
323
- let On = b(!1);
324
- function kn() {
325
- return On.value = sn.value.flatMap((e) => e.values.reduce((e, t) => e + t, 0)).reduce((e, t) => e + t, 0) === 0, sn.value.map((e, t) => ({
326
- ...e,
327
- color: o(e.color) || wn.value[t] || i[t] || i[t % i.length],
328
- uid: `serie_${t}`,
329
- absoluteIndex: t
330
- }));
331
- }
332
- let An = u(() => kn()), G = b(An.value);
333
- Qe(() => T.dataset, (e) => {
334
- Array.isArray(e) && e.length > 0 && (cn.value = !1);
335
- }, { immediate: !0 }), Qe(() => T.dataset, (e) => {
336
- G.value = kn();
337
- }, { deep: !0 });
338
- let jn = u(() => Dn(G.value.filter((e, t) => !Y.value.includes(e.uid)).map((e, t) => On.value ? 1 : (e.values || []).reduce((e, t) => e + t, 0)))), Mn = u(() => Dn(G.value.map((e, t) => On.value ? 1 : (e.values || []).reduce((e, t) => e + t)))), Nn = u(() => F.value.size ** 2), K = u(() => (_n.value && sn.value.forEach((e, t) => {
339
- [null, void 0].includes(e.values) && ce({
340
- componentName: "VueUiWaffle",
341
- type: "datasetSerieAttribute",
342
- property: "values (number[])",
343
- index: t
344
- });
345
- }), G.value.filter((e, t) => !Y.value.includes(e.uid)).map((e, t) => {
346
- let n = jn.value[t];
347
- return {
348
- absoluteIndex: e.absoluteIndex,
349
- uid: e.uid,
350
- name: e.name,
351
- color: e.color,
352
- value: (e.values || []).reduce((e, t) => e + t, 0),
353
- absoluteValues: e.values || [],
354
- squareCount: n,
355
- proportion: n / Nn.value
356
- };
357
- }))), Pn = u(() => G.value.map((e, t) => {
358
- let n = Mn.value[t];
359
- return {
360
- absoluteIndex: e.absoluteIndex,
361
- uid: e.uid,
362
- name: e.name,
363
- color: e.color,
364
- value: (e.values || []).reduce((e, t) => e + t, 0),
365
- absoluteValues: e.values || [],
366
- squareCount: n,
367
- proportion: n / Nn.value
368
- };
369
- }));
370
- function Fn() {
371
- return Pn.value.map((e) => ({
372
- name: e.name,
373
- color: e.color,
374
- value: e.value,
375
- squareCount: e.squareCount,
376
- proportion: e.proportion
377
- }));
378
- }
379
- let In = u(() => {
380
- let e = 0;
381
- return K.value.map((t, n) => {
382
- let r = e, i = r + t.squareCount, a = [];
383
- for (let e = Math.floor(r); e < Math.floor(i); e += 1) a.push(e);
384
- return e = i, {
385
- ...t,
386
- start: r,
387
- rects: a
388
- };
389
- });
390
- }), q = u(() => In.value.flatMap((e, t) => e.rects.map((n, r) => ({
391
- isFirst: r === 0,
392
- isLongEnough: n.length > 2,
393
- name: e.name,
394
- color: e.color,
395
- value: e.value,
396
- serieIndex: t,
397
- absoluteStartIndex: r < 3,
398
- serieId: e.uid,
399
- ...e
400
- }))).map((e, t) => ({
401
- ...e,
402
- isAbsoluteFirst: t % F.value.size === 0
403
- }))), J = u(() => {
404
- let e = [];
405
- for (let t = 0; t < F.value.size; t += 1) for (let n = 0; n < F.value.size; n += 1) e.push({
406
- isStartOfLine: n === 0,
407
- position: F.value.vertical ? t : n,
408
- x: (F.value.vertical ? t : n) * (U.value + F.value.spaceBetween),
409
- y: (F.value.vertical ? n : t) * (W.value + F.value.spaceBetween) + H.value.top
410
- });
411
- return e;
412
- }), Y = b([]), Ln = b(!1), Rn = b(Object.create(null)), zn = b(Object.create(null)), X = b(0);
413
- function Bn(e, t) {
414
- G.value = G.value.map((n) => n.uid === e ? {
415
- ...n,
416
- values: [t]
417
- } : n);
418
- }
419
- function Vn(e, t) {
420
- let n = t.find((t) => t.uid === e);
421
- return n ? (n.values || []).reduce((e, t) => e + t, 0) : 0;
422
- }
423
- function Hn(e) {
424
- let t = !1;
425
- Rn.value[e] && (cancelAnimationFrame(Rn.value[e]), delete Rn.value[e], t = !0), zn.value[e] && (cancelAnimationFrame(zn.value[e]), delete zn.value[e], t = !0), t && (X.value = Math.max(0, X.value - 1), Ln.value = X.value > 0);
426
- }
427
- function Un({ seriesId: e, fromValue: t, toValue: n, mode: r }) {
428
- Hn(e), X.value += 1, Ln.value = !0;
429
- let i = t;
430
- return new Promise((a) => {
431
- function o() {
432
- if (r === "increase") {
433
- if (i >= n) {
434
- Bn(e, n), --X.value, X.value <= 0 && (Ln.value = !1), delete Rn.value[e], a();
435
- return;
436
- }
437
- i += n * .025, i > n && (i = n), Bn(e, i), Rn.value[e] = requestAnimationFrame(o);
438
- } else {
439
- if (i <= t / 100) {
440
- Bn(e, 0), --X.value, X.value <= 0 && (Ln.value = !1), delete zn.value[e], a();
441
- return;
442
- }
443
- i /= 1.15, Bn(e, i), zn.value[e] = requestAnimationFrame(o);
444
- }
445
- }
446
- o();
447
- });
448
- }
449
- function Wn() {
450
- G.value = An.value;
451
- let e = Y.value.length > 0;
452
- if (!A.value.useAnimation) {
453
- e ? Y.value = [] : Y.value = Xn.value.map((e) => e.uid);
454
- return;
455
- }
456
- e ? [...Y.value].forEach((e) => {
457
- Gn(e, !0);
458
- }) : Xn.value.map((e) => e.uid).forEach((e) => {
459
- Gn(e, !0);
460
- });
461
- }
462
- function Gn(e, t = !1) {
463
- if (On.value && !t) return;
464
- let n = t || Y.value.length < Xn.value.length - 1 && Xn.value.length > 1;
465
- if (!A.value.useAnimation) {
466
- Y.value.includes(e) ? Y.value = Y.value.filter((t) => t !== e) : n && Y.value.push(e);
467
- return;
468
- }
469
- let r = Vn(e, An.value), i = Vn(e, G.value);
470
- if (i !== 0 || r !== 0) {
471
- if (Y.value.includes(e)) {
472
- if (Y.value = Y.value.filter((t) => t !== e), Rt.value) {
473
- Hn(e), Bn(e, r), ar("selectLegend", K.value.map((e) => ({
474
- name: e.name,
475
- color: e.color,
476
- value: e.value,
477
- proportion: e.proportion
478
- })));
479
- return;
480
- }
481
- Un({
482
- seriesId: e,
483
- fromValue: i,
484
- toValue: r,
485
- mode: "increase"
486
- }).then(() => {
487
- ar("selectLegend", K.value.map((e) => ({
488
- name: e.name,
489
- color: e.color,
490
- value: e.value,
491
- proportion: e.proportion
492
- })));
493
- });
494
- return;
495
- }
496
- if (n) {
497
- if (Rt.value) {
498
- Hn(e), Y.value.includes(e) || Y.value.push(e), Bn(e, 0), ar("selectLegend", K.value.map((e) => ({
499
- name: e.name,
500
- color: e.color,
501
- value: e.value,
502
- proportion: e.proportion
503
- })));
504
- return;
505
- }
506
- Un({
507
- seriesId: e,
508
- fromValue: i,
509
- toValue: 0,
510
- mode: "decrease"
511
- }).then(() => {
512
- Y.value.includes(e) || Y.value.push(e), Bn(e, 0), ar("selectLegend", K.value.map((e) => ({
513
- name: e.name,
514
- color: e.color,
515
- value: e.value,
516
- proportion: e.proportion
517
- })));
518
- });
519
- }
520
- }
521
- }
522
- function Kn(e) {
523
- return Pn.value.length ? Pn.value.find((t) => t.name === e) || (_n.value && console.warn(`VueUiWaffle - Series name not found "${e}"`), null) : (_n.value && console.warn("VueUiWaffle - There are no series to show."), null);
524
- }
525
- function qn(e) {
526
- let t = Kn(e);
527
- t !== null && Y.value.includes(t.uid) && Gn(t.uid);
528
- }
529
- function Jn(e) {
530
- let t = Kn(e);
531
- t !== null && (Y.value.includes(t.uid) || Gn(t.uid));
532
- }
533
- function Yn({ val: e, percentage: t, showVal: n, showPercentage: r, config: i }) {
534
- return Pe({
535
- config: i,
536
- val: e,
537
- percentage: t,
538
- showVal: n,
539
- showPercentage: r
540
- });
541
- }
542
- let Xn = u(() => G.value.map((e, t) => {
543
- let n = (e.values || []).reduce((e, t) => e + t, 0), r = n / G.value.map((e) => (e.values || []).reduce((e, t) => e + t, 0)).reduce((e, t) => e + t, 0);
544
- return {
545
- name: e.name,
546
- color: e.color || wn[t] || i[t] || i[t % i.length],
547
- value: n,
548
- proportion: r,
549
- uid: e.uid,
550
- shape: "square"
551
- };
552
- }).map((e, t) => {
553
- let n = Yn({
554
- val: ae(I.value.labels.dataLabels.formatter, e.value, c({
555
- p: I.value.labels.dataLabels.prefix,
556
- v: e.value,
557
- s: I.value.labels.dataLabels.suffix,
558
- r: N.value.roundingValue
559
- }), {
560
- datapoint: e,
561
- index: t
562
- }),
563
- percentage: isNaN(e.value / Z.value) ? "-" : c({
564
- v: e.value / Z.value * 100,
565
- s: "%",
566
- r: N.value.roundingPercentage
567
- }),
568
- showVal: N.value.showValue,
569
- showPercentage: N.value.showPercentage,
570
- config: N.value
571
- });
572
- return {
573
- ...e,
574
- opacity: Y.value.includes(e.uid) ? .5 : 1,
575
- segregate: () => Gn(e.uid),
576
- isSegregated: Y.value.includes(e.uid),
577
- display: `${e.name}${N.value.showPercentage || N.value.showValue ? ": " : ""}${n}`
578
- };
579
- })), Zn = u(() => ({
580
- cy: "waffle-div-legend",
581
- backgroundColor: N.value.backgroundColor,
582
- color: N.value.color,
583
- fontSize: N.value.fontSize,
584
- paddingBottom: 12,
585
- fontWeight: N.value.bold ? "bold" : ""
586
- })), Z = u(() => K.value.map((e) => e.value).reduce((e, t) => e + t, 0)), Qn = b(null), $n = b(null), Q = u(() => {
587
- let e = /* @__PURE__ */ new Map();
588
- return q.value.forEach((t, n) => {
589
- e.has(t.serieIndex) ? e.get(t.serieIndex).rectIndexes.push(n) : e.set(t.serieIndex, {
590
- serieIndex: t.serieIndex,
591
- absoluteIndex: t.absoluteIndex,
592
- serieId: t.serieId,
593
- name: t.name,
594
- color: t.color,
595
- value: t.value,
596
- proportion: t.proportion,
597
- rectIndexes: [n]
598
- });
599
- }), Array.from(e.values()).sort((e, t) => e.serieIndex - t.serieIndex);
600
- });
601
- function er(e) {
602
- return Q.value.find((t) => t.serieIndex === e) || null;
603
- }
604
- function tr(e) {
605
- let t = er(e);
606
- return !t || !t.rectIndexes.length ? null : t.rectIndexes[0];
607
- }
608
- function nr(e) {
609
- let t = q.value[e];
610
- A.value.events.datapointClick && A.value.events.datapointClick({
611
- datapoint: t,
612
- seriesIndex: t.serieIndex
613
- });
614
- }
615
- function rr(e) {
616
- let t = q.value[e];
617
- A.value.events.datapointLeave && A.value.events.datapointLeave({
618
- datapoint: t,
619
- seriesIndex: t.serieIndex
620
- }), $n.value = null, Vt.value = !1, D.value = null, k.value = null, tn.value = "pointer";
621
- }
622
- function ir(e, t = "pointer") {
623
- if (Y.value.length === T.dataset.length) return;
624
- let r = q.value[e];
625
- if (!r) return;
626
- tn.value = t, k.value = r.serieIndex, Qn.value = {
627
- datapoint: r,
628
- seriesIndex: r.absoluteIndex,
629
- series: G.value,
630
- config: A.value
631
- }, A.value.events.datapointEnter && $n.value !== r.serieIndex && A.value.events.datapointEnter({
632
- datapoint: r,
633
- seriesIndex: r.serieIndex
634
- }), $n.value = r.serieIndex, Vt.value = !0, D.value = r.serieIndex;
635
- let i = M.value.customFormat;
636
- if (n(i) && oe(() => i({
637
- seriesIndex: r.absoluteIndex,
638
- datapoint: r,
639
- series: G.value,
640
- config: A.value
641
- }))) Ht.value = i({
642
- seriesIndex: r.absoluteIndex,
643
- datapoint: r,
644
- series: G.value,
645
- config: A.value
646
- });
647
- else {
648
- let e = "";
649
- e += `<div style="width:100%;text-align:center;border-bottom:1px solid ${M.value.borderColor};padding-bottom:6px;margin-bottom:3px;">${r.name}</div>`, e += `<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 60 60" height="14" width="14"><rect x="0" y="0" height="60" width="60" stroke="none" rx="1" fill="${r.color}" />${zt.pattern ? `<rect x="0" y="0" height="60" width="60" stroke="none" rx="1" stroke="none" fill="url(#pattern_${E.value}_${r.absoluteIndex})"/>` : ""}</svg>`, e += `<b>${Yn({
650
- config: M.value,
651
- showVal: M.value.showValue,
652
- showPercentage: M.value.showPercentage,
653
- val: `<span>${ae(I.value.labels.dataLabels.formatter, r.value, c({
654
- p: I.value.labels.dataLabels.prefix,
655
- v: r.value,
656
- s: I.value.labels.dataLabels.suffix,
657
- r: M.value.roundingValue
658
- }), {
659
- datapoint: r,
660
- seriesIndex: r.absoluteIndex,
661
- series: G.value
662
- })}</span>`,
663
- percentage: `<span>${c({
664
- v: On.value ? 1 / sn.value.length * 100 : r.value / Z.value * 100,
665
- s: "%",
666
- r: M.value.roundingPercentage
667
- })}</span>`
668
- })}</b></div>`, Ht.value = e;
669
- }
670
- }
671
- let ar = $e, $ = u(() => ({
672
- head: K.value.map((e) => ({
673
- name: e.name,
674
- color: e.color
675
- })),
676
- body: K.value.map((e) => e.value)
677
- }));
678
- function or(e) {
679
- return A.value.useBlurOnHover && ![null, void 0].includes(D.value) && D.value !== e ? `url(#blur_${E.value})` : "";
680
- }
681
- function sr(e) {
682
- return [null, void 0].includes(D.value) || D.value === e ? { opacity: 1 } : { opacity: P.value.selection.unselectedOpacity };
683
- }
684
- function cr(e) {
685
- return e.length <= 3 ? e : e.filter((t, n) => {
686
- let r = e[(n - 1 + e.length) % e.length], i = e[(n + 1) % e.length], a = r.x === t.x && t.x === i.x, o = r.y === t.y && t.y === i.y;
687
- return !a && !o;
688
- });
689
- }
690
- function lr(e) {
691
- if (!e.length) return [];
692
- let t = new Set(e.map(({ row: e, col: t }) => `${e}:${t}`)), n = [], r = /* @__PURE__ */ new Set(), i = [
693
- [-1, 0],
694
- [0, 1],
695
- [1, 0],
696
- [0, -1]
697
- ];
698
- e.forEach((e) => {
699
- let a = `${e.row}:${e.col}`;
700
- if (r.has(a)) return;
701
- let o = [], s = [e];
702
- for (r.add(a); s.length;) {
703
- let e = s.shift();
704
- o.push(e), i.forEach(([n, i]) => {
705
- let a = e.row + n, o = e.col + i, ee = `${a}:${o}`;
706
- t.has(ee) && !r.has(ee) && (r.add(ee), s.push({
707
- row: a,
708
- col: o
709
- }));
710
- });
711
- }
712
- n.push(o);
713
- });
714
- let a = [];
715
- return n.forEach((e) => {
716
- let t = new Set(e.map(({ row: e, col: t }) => `${e}:${t}`)), n = [];
717
- e.forEach(({ row: e, col: r }) => {
718
- t.has(`${e - 1}:${r}`) || n.push({
719
- start: {
720
- x: r,
721
- y: e
722
- },
723
- end: {
724
- x: r + 1,
725
- y: e
726
- }
727
- }), t.has(`${e}:${r + 1}`) || n.push({
728
- start: {
729
- x: r + 1,
730
- y: e
731
- },
732
- end: {
733
- x: r + 1,
734
- y: e + 1
735
- }
736
- }), t.has(`${e + 1}:${r}`) || n.push({
737
- start: {
738
- x: r + 1,
739
- y: e + 1
740
- },
741
- end: {
742
- x: r,
743
- y: e + 1
744
- }
745
- }), t.has(`${e}:${r - 1}`) || n.push({
746
- start: {
747
- x: r,
748
- y: e + 1
749
- },
750
- end: {
751
- x: r,
752
- y: e
753
- }
754
- });
755
- });
756
- let r = /* @__PURE__ */ new Map(), i = (e) => `${e.start.x}:${e.start.y}>${e.end.x}:${e.end.y}`, o = (e) => `${e.x}:${e.y}`, s = new Set(n.map(i));
757
- for (n.forEach((e) => {
758
- let t = o(e.start);
759
- r.has(t) || r.set(t, []), r.get(t).push(e);
760
- }); s.size;) {
761
- let e = s.values().next().value, t = n.find((t) => i(t) === e), ee = t.start, c = [ee], te = t;
762
- for (; te;) {
763
- s.delete(i(te));
764
- let e = te.end;
765
- if (o(e) === o(ee)) break;
766
- c.push(e), te = (r.get(o(e)) || []).find((e) => s.has(i(e)));
767
- }
768
- c.length >= 4 && a.push(cr(c));
769
- }
770
- }), a;
771
- }
772
- function ur(e) {
773
- let t = F.value.size, n = F.value.vertical, r = [];
774
- return q.value.forEach((i, a) => {
775
- if (i.serieIndex !== e) return;
776
- let o = Math.floor(a / t), s = a % t;
777
- r.push({
778
- row: n ? s : o,
779
- col: n ? o : s
780
- });
781
- }), r;
782
- }
783
- function dr(e) {
784
- let t = Tn.value, n = En.value;
785
- return lr(ur(e)).map((e) => e.map(({ x: e, y: r }) => ({
786
- x: e * t,
787
- y: H.value.top + r * n
788
- })));
789
- }
790
- function fr(e) {
791
- return e.map(({ x: e, y: t }) => `${e},${t}`).join(" ");
792
- }
793
- function pr(e) {
794
- return e.map((e) => {
795
- if (!e.length) return "";
796
- let [t, ...n] = e, r = n.map(({ x: e, y: t }) => `L ${e} ${t}`).join(" ");
797
- return `M ${t.x} ${t.y} ${r} Z`;
798
- }).filter(Boolean).join(" ");
799
- }
800
- let mr = u(() => !P.value.selection?.wrap?.show || [null, void 0].includes(D.value) ? [] : dr(D.value).map(fr)), hr = u(() => {
801
- if (!P.value.merged) return [];
802
- let e = /* @__PURE__ */ new Map();
803
- return q.value.forEach((t, n) => {
804
- e.has(t.serieIndex) || e.set(t.serieIndex, {
805
- serieIndex: t.serieIndex,
806
- absoluteIndex: t.absoluteIndex,
807
- color: t.color,
808
- gradientIndex: n,
809
- rectIndex: n
810
- });
811
- }), Array.from(e.values()).map((e) => ({
812
- ...e,
813
- d: pr(dr(e.serieIndex))
814
- })).filter((e) => e.d);
815
- });
816
- function gr(e, t) {
817
- return I.value.labels.captions.show ? q.value.length && !Ln.value && !F.value.vertical && (q.value[e].isFirst && t.position < F.value.size - 2 || q.value[e].isAbsoluteFirst && e % F.value.size === 0 && q.value[e].absoluteStartIndex) : !1;
818
- }
819
- function _r(e, t = null) {
820
- let n = ae(I.value.labels.dataLabels.formatter, q.value[e].value, c({
821
- p: I.value.labels.dataLabels.prefix,
822
- v: q.value[e].value,
823
- s: I.value.labels.dataLabels.suffix,
824
- r: I.value.labels.captions.roundingValue
825
- }), {
826
- datapoint: q.value[e],
827
- position: t
828
- }), r = c({
829
- v: q.value[e].proportion * 100,
830
- s: "%",
831
- r: I.value.labels.captions.roundingPercentage
832
- }), i = (I.value.labels.captions.serieNameAbbreviation ? se({
833
- source: q.value[e].name,
834
- length: I.value.labels.captions.serieNameMaxAbbreviationSize
835
- }) : q.value[e].name) + (I.value.labels.captions.showPercentage || I.value.labels.captions.showValue ? ":" : "");
836
- return `${I.value.labels.captions.showSerieName ? i : ""} ${Yn({
837
- val: n,
838
- percentage: r,
839
- showVal: I.value.labels.captions.showValue,
840
- showPercentage: I.value.labels.captions.showPercentage,
841
- config: I.value.labels.dataLabels
842
- })}`;
843
- }
844
- function vr(e = null) {
845
- We(() => {
846
- let n = $.value.head.map((e, t) => [
847
- [e.name],
848
- [$.value.body[t]],
849
- [isNaN($.value.body[t] / Z.value) ? "-" : $.value.body[t] / Z.value * 100]
850
- ]), i = [
851
- [L.value.title.text],
852
- [L.value.title.subtitle.text],
853
- [
854
- [""],
855
- ["val"],
856
- ["%"]
857
- ]
858
- ].concat(n), a = r(i);
859
- e ? e(a) : t({
860
- csvContent: a,
861
- title: L.value.title.text || "vue-ui-waffle"
862
- });
863
- });
864
- }
865
- let yr = u(() => ({
866
- head: [
867
- "__SUM__",
868
- ae(I.value.labels.dataLabels.formatter, Z.value, c({
869
- p: I.value.labels.dataLabels.prefix,
870
- v: Z.value,
871
- s: I.value.labels.dataLabels.suffix,
872
- r: A.value.table.td.roundingValue
873
- })),
874
- "100%"
875
- ],
876
- body: $.value.head.map((e, t) => [
877
- {
878
- color: e.color,
879
- name: e.name
880
- },
881
- ae(I.value.labels.dataLabels.formatter, $.value.body[t], c({
882
- p: I.value.labels.dataLabels.prefix,
883
- v: $.value.body[t],
884
- s: I.value.labels.dataLabels.suffix,
885
- r: A.value.table.td.roundingValue
886
- })),
887
- isNaN($.value.body[t] / Z.value) ? "-" : c({
888
- v: $.value.body[t] / Z.value * 100,
889
- s: "%",
890
- r: A.value.table.td.roundingPercentage
891
- })
892
- ]),
893
- config: {
894
- th: {
895
- backgroundColor: A.value.table.th.backgroundColor,
896
- color: A.value.table.th.color,
897
- outline: A.value.table.th.outline
898
- },
899
- td: {
900
- backgroundColor: A.value.table.td.backgroundColor,
901
- color: A.value.table.td.color,
902
- outline: A.value.table.td.outline
903
- },
904
- shape: "square",
905
- breakpoint: A.value.table.responsiveBreakpoint
906
- },
907
- colNames: [
908
- A.value.table.columnNames.series,
909
- A.value.table.columnNames.value,
910
- A.value.table.columnNames.percentage
911
- ]
912
- })), br = b(!1);
913
- function xr(e) {
914
- br.value = e, Ut.value += 1;
915
- }
916
- function Sr() {
917
- B.value.showTable = !B.value.showTable;
918
- }
919
- function Cr() {
920
- B.value.showTooltip = !B.value.showTooltip;
921
- }
922
- let wr = b(!1);
923
- function Tr() {
924
- wr.value = !wr.value;
925
- }
926
- async function Er({ scale: e = 2 } = {}) {
927
- if (!O.value) return;
928
- let { width: t, height: n } = O.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await Ce({
929
- domElement: O.value,
930
- base64: !0,
931
- img: !0,
932
- scale: e
933
- });
934
- return {
935
- imageUri: i,
936
- base64: a,
937
- title: L.value.title.text,
938
- width: t,
939
- height: n,
940
- aspectRatio: r
941
- };
942
- }
943
- let Dr = u(() => {
944
- let e = A.value.table.useDialog && !A.value.table.show, t = B.value.showTable;
945
- return {
946
- component: e ? Pt : At,
947
- title: `${L.value.title.text}${L.value.title.subtitle.text ? `: ${L.value.title.subtitle.text}` : ""}`,
948
- props: e ? {
949
- backgroundColor: A.value.table.th.backgroundColor,
950
- color: A.value.table.th.color,
951
- headerColor: A.value.table.th.color,
952
- headerBg: A.value.table.th.backgroundColor,
953
- isFullscreen: br.value,
954
- fullscreenParent: O.value,
955
- forcedWidth: Math.min(500, window.innerWidth * .8),
956
- isCursorPointer: rn.value
957
- } : {
958
- hideDetails: !0,
959
- config: {
960
- open: t,
961
- maxHeight: 1e4,
962
- body: {
963
- backgroundColor: L.value.backgroundColor,
964
- color: L.value.color
965
- },
966
- head: {
967
- backgroundColor: L.value.backgroundColor,
968
- color: L.value.color
969
- }
970
- }
971
- }
972
- };
973
- });
974
- Qe(() => B.value.showTable, (e) => {
975
- A.value.table.show || (e && A.value.table.useDialog && Qt.value ? Qt.value.open() : "close" in Qt.value && Qt.value.close());
976
- });
977
- function Or() {
978
- B.value.showTable = !1, $t.value && $t.value.setTableIconState(!1);
979
- }
980
- let kr = u(() => Xn.value.map((e) => ({
981
- ...e,
982
- name: e.display
983
- }))), Ar = u(() => L.value.backgroundColor), jr = u(() => L.value.title), { isCallbackImaging: Mr, isCallbackSvg: Nr, generateSvg: Pr, onGenerateImage: Fr } = xe({
984
- svg: fn,
985
- title: jr,
986
- legend: N,
987
- legendItems: kr,
988
- backgroundColor: Ar,
989
- getSvgCallback: () => A.value.userOptions.callbacks.svg,
990
- generateImage: Sn
991
- });
992
- async function Ir() {
993
- if (ar("copyAlt", {
994
- config: A.value,
995
- dataset: Pn.value
996
- }), !A.value.userOptions.callbacks.altCopy) {
997
- console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
998
- return;
999
- }
1000
- await Promise.resolve(A.value.userOptions.callbacks.altCopy({
1001
- config: A.value,
1002
- dataset: Pn.value
1003
- }));
1004
- }
1005
- function Lr() {
1006
- k.value = null, nn.value = !0;
1007
- }
1008
- function Rr() {
1009
- k.value = null, tn.value = "pointer", Vt.value = !1, D.value = null, $n.value = null, nn.value = !1;
1010
- }
1011
- function zr(e) {
1012
- if (!fn.value || wr.value || document.activeElement !== fn.value || !Q.value.length || Y.value.length === T.dataset.length) return;
1013
- let t = ["ArrowLeft", "ArrowUp"].includes(e.key), n = ["ArrowRight", "ArrowDown"].includes(e.key), r = e.key === "Enter" || e.key === " ", i = e.key === "Escape";
1014
- if (!t && !n && !r && !i) return;
1015
- if (e.preventDefault(), e.stopPropagation(), i) {
1016
- k.value = null, tn.value = "pointer", Vt.value = !1, D.value = null, $n.value = null;
1017
- return;
1018
- }
1019
- if (r) {
1020
- if (k.value === null) return;
1021
- let e = tr(k.value);
1022
- if (e === null) return;
1023
- nr(e);
1024
- return;
1025
- }
1026
- let a = Q.value.findIndex((e) => e.serieIndex === k.value), o = null;
1027
- if (o = a === -1 ? n ? Q.value[0] : Q.value[Q.value.length - 1] : n ? Q.value[(a + 1) % Q.value.length] : Q.value[(a - 1 + Q.value.length) % Q.value.length], !o) return;
1028
- let s = tr(o.serieIndex);
1029
- s !== null && (Br(o.serieIndex), ir(s, "keyboard"));
1030
- }
1031
- function Br(e) {
1032
- if (!Number.isFinite(e) || !fn.value) return;
1033
- let t = er(e);
1034
- if (!t || !t.rectIndexes.length) return;
1035
- let n = t.rectIndexes.map((e) => {
1036
- let t = J.value[e];
1037
- return t ? {
1038
- x: t.x + F.value.spaceBetween / 2 + Tn.value / 2,
1039
- y: t.y + F.value.spaceBetween / 2 + En.value / 2
1040
- } : null;
1041
- }).filter(Boolean);
1042
- if (!n.length) return;
1043
- let r = Math.min(...n.map((e) => e.x)), i = Math.max(...n.map((e) => e.x)), a = Math.min(...n.map((e) => e.y)), o = Math.max(...n.map((e) => e.y)), s = (r + i) / 2, ee = (a + o) / 2, c = fn.value.getBoundingClientRect();
1044
- en.value = {
1045
- x: c.left + s / V.value.width * c.width,
1046
- y: c.top + ee / V.value.height * c.height
1047
- };
1048
- }
1049
- let Vr = u(() => ({
1050
- headers: yr.value?.colNames ?? [],
1051
- rows: yr.value?.body ?? []
1052
- }));
1053
- return Ee({
1054
- getData: Fn,
1055
- getImage: Er,
1056
- generatePdf: xn,
1057
- generateCsv: vr,
1058
- generateImage: Sn,
1059
- generateSvg: Pr,
1060
- hideSeries: Jn,
1061
- showSeries: qn,
1062
- toggleTable: Sr,
1063
- toggleTooltip: Cr,
1064
- toggleAnnotator: Tr,
1065
- toggleFullscreen: xr,
1066
- copyAlt: Ir
1067
- }), (e, t) => (y(), p("div", {
1068
- class: g(`vue-data-ui-component vue-ui-waffle ${br.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
1069
- ref_key: "waffleChart",
1070
- ref: O,
1071
- id: `vue-ui-waffle_${E.value}`,
1072
- style: v(`font-family:${A.value.style.fontFamily};width:100%; text-align:center;background:${L.value.backgroundColor};${A.value.responsive ? "height: 100%" : ""}`),
1073
- onMouseenter: t[2] ||= () => C(un)(!0),
1074
- onMouseleave: t[3] ||= () => C(un)(!1)
1075
- }, [
1076
- m("div", {
1077
- id: `chart-instructions-${E.value}`,
1078
- class: "sr-only"
1079
- }, [m("p", null, Ye(A.value.a11y.translations.keyboardNavigation), 1)], 8, tt),
1080
- Vr.value?.rows?.length ? (y(), d(je, {
1081
- key: 0,
1082
- uid: E.value,
1083
- head: Vr.value.headers,
1084
- body: Vr.value.rows,
1085
- notice: A.value.a11y.translations.tableAvailable,
1086
- caption: A.value.a11y.translations.tableCaption
1087
- }, null, 8, [
1088
- "uid",
1089
- "head",
1090
- "body",
1091
- "notice",
1092
- "caption"
1093
- ])) : f("", !0),
1094
- j.value.buttons.annotator ? (y(), d(C(Mt), {
1095
- key: 1,
1096
- svgRef: C(fn),
1097
- backgroundColor: L.value.backgroundColor,
1098
- color: L.value.color,
1099
- active: wr.value,
1100
- isCursorPointer: rn.value,
1101
- palette: j.value.annotatorPalette,
1102
- onClose: Tr
1103
- }, {
1104
- "annotator-action-close": w(() => [S(e.$slots, "annotator-action-close", {}, void 0, !0)]),
1105
- "annotator-action-color": w(({ color: t }) => [S(e.$slots, "annotator-action-color", _(h({ color: t })), void 0, !0)]),
1106
- "annotator-action-draw": w(({ mode: t }) => [S(e.$slots, "annotator-action-draw", _(h({ mode: t })), void 0, !0)]),
1107
- "annotator-action-undo": w(({ disabled: t }) => [S(e.$slots, "annotator-action-undo", _(h({ disabled: t })), void 0, !0)]),
1108
- "annotator-action-redo": w(({ disabled: t }) => [S(e.$slots, "annotator-action-redo", _(h({ disabled: t })), void 0, !0)]),
1109
- "annotator-action-delete": w(({ disabled: t }) => [S(e.$slots, "annotator-action-delete", _(h({ disabled: t })), void 0, !0)]),
1110
- _: 3
1111
- }, 8, [
1112
- "svgRef",
1113
- "backgroundColor",
1114
- "color",
1115
- "active",
1116
- "isCursorPointer",
1117
- "palette"
1118
- ])) : f("", !0),
1119
- Cn.value ? (y(), p("div", {
1120
- key: 2,
1121
- ref_key: "noTitle",
1122
- ref: qt,
1123
- class: "vue-data-ui-no-title-space",
1124
- style: "height:36px; width: 100%;background:transparent"
1125
- }, null, 512)) : f("", !0),
1126
- L.value.title.text ? (y(), p("div", {
1127
- key: 3,
1128
- ref_key: "chartTitle",
1129
- ref: Wt,
1130
- style: "width:100%;background:transparent;padding-bottom:12px"
1131
- }, [(y(), d(we, {
1132
- key: `title_${Jt.value}`,
1133
- config: {
1134
- title: {
1135
- cy: "waffle-title",
1136
- ...L.value.title
1137
- },
1138
- subtitle: {
1139
- cy: "waffle-subtitle",
1140
- ...L.value.title.subtitle
1141
- }
1142
- }
1143
- }, null, 8, ["config"]))], 512)) : f("", !0),
1144
- m("div", { id: `legend-top-${E.value}` }, null, 8, nt),
1145
- j.value.show && Bt.value && (C(dn) || C(ln)) ? (y(), d(C(jt), {
1146
- ref_key: "userOptionsRef",
1147
- ref: $t,
1148
- key: `user_options_${Ut.value}`,
1149
- backgroundColor: L.value.backgroundColor,
1150
- color: L.value.color,
1151
- isPrinting: C(yn),
1152
- isImaging: C(bn),
1153
- uid: E.value,
1154
- hasTooltip: j.value.buttons.tooltip && M.value.show,
1155
- hasPdf: j.value.buttons.pdf,
1156
- hasImg: j.value.buttons.img,
1157
- hasSvg: j.value.buttons.svg,
1158
- hasXls: j.value.buttons.csv,
1159
- hasTable: j.value.buttons.table,
1160
- hasFullscreen: j.value.buttons.fullscreen,
1161
- hasAltCopy: j.value.buttons.altCopy,
1162
- isFullscreen: br.value,
1163
- isTooltip: B.value.showTooltip,
1164
- titles: { ...j.value.buttonTitles },
1165
- chartElement: O.value,
1166
- position: j.value.position,
1167
- hasAnnotator: j.value.buttons.annotator,
1168
- isAnnotation: wr.value,
1169
- callbacks: j.value.callbacks,
1170
- printScale: j.value.print.scale,
1171
- tableDialog: A.value.table.useDialog,
1172
- isCursorPointer: rn.value,
1173
- onToggleFullscreen: xr,
1174
- onGeneratePdf: C(xn),
1175
- onGenerateCsv: vr,
1176
- onGenerateImage: C(Fr),
1177
- onGenerateSvg: C(Pr),
1178
- onToggleTable: Sr,
1179
- onToggleTooltip: Cr,
1180
- onToggleAnnotator: Tr,
1181
- onCopyAlt: Ir,
1182
- style: v({ visibility: C(dn) ? C(ln) ? "visible" : "hidden" : "visible" })
1183
- }, ze({ _: 2 }, [
1184
- e.$slots.menuIcon ? {
1185
- name: "menuIcon",
1186
- fn: w(({ isOpen: t, color: n }) => [S(e.$slots, "menuIcon", _(h({
1187
- isOpen: t,
1188
- color: n
1189
- })), void 0, !0)]),
1190
- key: "0"
1191
- } : void 0,
1192
- e.$slots.optionTooltip ? {
1193
- name: "optionTooltip",
1194
- fn: w(() => [S(e.$slots, "optionTooltip", {}, void 0, !0)]),
1195
- key: "1"
1196
- } : void 0,
1197
- e.$slots.optionPdf ? {
1198
- name: "optionPdf",
1199
- fn: w(() => [S(e.$slots, "optionPdf", {}, void 0, !0)]),
1200
- key: "2"
1201
- } : void 0,
1202
- e.$slots.optionCsv ? {
1203
- name: "optionCsv",
1204
- fn: w(() => [S(e.$slots, "optionCsv", {}, void 0, !0)]),
1205
- key: "3"
1206
- } : void 0,
1207
- e.$slots.optionImg ? {
1208
- name: "optionImg",
1209
- fn: w(() => [S(e.$slots, "optionImg", {}, void 0, !0)]),
1210
- key: "4"
1211
- } : void 0,
1212
- e.$slots.optionSvg ? {
1213
- name: "optionSvg",
1214
- fn: w(() => [S(e.$slots, "optionSvg", {}, void 0, !0)]),
1215
- key: "5"
1216
- } : void 0,
1217
- e.$slots.optionTable ? {
1218
- name: "optionTable",
1219
- fn: w(() => [S(e.$slots, "optionTable", {}, void 0, !0)]),
1220
- key: "6"
1221
- } : void 0,
1222
- e.$slots.optionFullscreen ? {
1223
- name: "optionFullscreen",
1224
- fn: w(({ toggleFullscreen: t, isFullscreen: n }) => [S(e.$slots, "optionFullscreen", _(h({
1225
- toggleFullscreen: t,
1226
- isFullscreen: n
1227
- })), void 0, !0)]),
1228
- key: "7"
1229
- } : void 0,
1230
- e.$slots.optionAnnotator ? {
1231
- name: "optionAnnotator",
1232
- fn: w(({ toggleAnnotator: t, isAnnotator: n }) => [S(e.$slots, "optionAnnotator", _(h({
1233
- toggleAnnotator: t,
1234
- isAnnotator: n
1235
- })), void 0, !0)]),
1236
- key: "8"
1237
- } : void 0,
1238
- e.$slots.optionAltCopy ? {
1239
- name: "optionAltCopy",
1240
- fn: w(({ altCopy: t }) => [S(e.$slots, "optionAltCopy", _(h({ altCopy: t })), void 0, !0)]),
1241
- key: "9"
1242
- } : void 0,
1243
- e.$slots["custom-menu-before"] ? {
1244
- name: "custom-menu-before",
1245
- fn: w(() => [S(e.$slots, "custom-menu-before", {}, void 0, !0)]),
1246
- key: "10"
1247
- } : void 0,
1248
- e.$slots["custom-menu-after"] ? {
1249
- name: "custom-menu-after",
1250
- fn: w(() => [S(e.$slots, "custom-menu-after", {}, void 0, !0)]),
1251
- key: "11"
1252
- } : void 0
1253
- ]), 1032, /* @__PURE__ */ "backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style".split("."))) : f("", !0),
1254
- m("div", rt, [(y(), p("svg", {
1255
- ref_key: "svgRef",
1256
- ref: fn,
1257
- xmlns: C(de),
1258
- "aria-describedby": `chart-instructions-${E.value}`,
1259
- class: g({
1260
- "vue-data-ui-fullscreen--on": br.value,
1261
- "vue-data-ui-fulscreen--off": !br.value,
1262
- "vue-data-ui-no-transition": !C(R)
1263
- }),
1264
- tabindex: "0",
1265
- viewBox: `0 0 ${V.value.width <= 0 ? 10 : V.value.width} ${V.value.height <= 0 ? 10 : V.value.height}`,
1266
- style: v(`max-width:100%;overflow:visible;background:transparent;color:${L.value.color}`),
1267
- onFocus: Lr,
1268
- onBlur: Rr,
1269
- onKeydown: zr
1270
- }, [
1271
- Ve(C(Nt)),
1272
- m("defs", null, [(y(!0), p(l, null, x(q.value, (e, t) => (y(), d(ke, {
1273
- t: "radial",
1274
- cx: "50%",
1275
- cy: "50%",
1276
- r: "50%",
1277
- fx: "50%",
1278
- fy: "50%",
1279
- id: `gradient_${E.value}_${t}`,
1280
- key: `gradient_${E.value}_${t}`,
1281
- stops: [[
1282
- "0%",
1283
- C(s)(C(ee)(e.color, .05), 100 - P.value.gradientIntensity),
1284
- 1
1285
- ], [
1286
- "100%",
1287
- e.color,
1288
- 1
1289
- ]]
1290
- }, null, 8, ["id", "stops"]))), 128))]),
1291
- m("defs", null, [m("filter", {
1292
- id: `blur_${E.value}`,
1293
- x: "-50%",
1294
- y: "-50%",
1295
- width: "200%",
1296
- height: "200%"
1297
- }, [...t[4] ||= [m("feGaussianBlur", {
1298
- in: "SourceGraphic",
1299
- stdDeviation: 2
1300
- }, null, -1), m("feColorMatrix", {
1301
- type: "saturate",
1302
- values: "0"
1303
- }, null, -1)]], 8, at)]),
1304
- A.value.useCustomCells && q.value.length && e.$slots.cell ? (y(!0), p(l, { key: 0 }, x(J.value, (t, n) => (y(), p("foreignObject", {
1305
- x: t.x,
1306
- y: t.y,
1307
- height: W.value <= 0 ? 1e-4 : W.value,
1308
- width: U.value <= 0 ? 1e-4 : U.value,
1309
- class: "vue-ui-waffle-custom-cell-foreignObject"
1310
- }, [S(e.$slots, "cell", Ue({ ref_for: !0 }, {
1311
- cell: {
1312
- ...t,
1313
- color: q.value[n].color,
1314
- height: Math.max(0, W.value),
1315
- width: Math.max(0, U.value),
1316
- ...q.value[n]
1317
- },
1318
- isSelected: [null, void 0].includes(D.value) ? !0 : q.value[n].serieIndex === D.value
1319
- }), void 0, !0)], 8, ot))), 256)) : f("", !0),
1320
- !q.value.length && !A.value.useCustomCells ? (y(), p("rect", {
1321
- key: 1,
1322
- x: 12,
1323
- y: 12,
1324
- height: H.value.height - 24,
1325
- width: H.value.width - 24,
1326
- rx: 3,
1327
- fill: "none",
1328
- stroke: "black"
1329
- }, null, 8, st)) : q.value.length && !A.value.useCustomCells ? (y(), p(l, { key: 2 }, [e.$slots.pattern ? (y(), p("g", ct, [(y(!0), p(l, null, x(An.value, (t) => (y(), p("defs", null, [S(e.$slots, "pattern", Ue({ ref_for: !0 }, {
1330
- seriesIndex: t.absoluteIndex,
1331
- patternId: `pattern_${E.value}_${t.absoluteIndex}`
1332
- }), void 0, !0)]))), 256))])) : f("", !0), P.value.merged ? (y(), p(l, { key: 1 }, [
1333
- (y(!0), p(l, null, x(hr.value, (e) => (y(), p("path", {
1334
- key: `merged-underlayer-${e.serieIndex}`,
1335
- d: e.d,
1336
- fill: "white",
1337
- "fill-rule": "evenodd",
1338
- stroke: P.value.stroke,
1339
- "stroke-width": P.value.strokeWidth,
1340
- "stroke-linejoin": "round",
1341
- filter: or(e.serieIndex),
1342
- style: v(sr(e.serieIndex)),
1343
- class: g({ "vue-data-ui-transition": C(R) })
1344
- }, null, 14, lt))), 128)),
1345
- (y(!0), p(l, null, x(hr.value, (e) => (y(), p("path", {
1346
- key: `merged-serie-${e.serieIndex}`,
1347
- d: e.d,
1348
- fill: P.value.useGradient && P.value.gradientIntensity > 0 ? `url(#gradient_${E.value}_${e.gradientIndex})` : e.color,
1349
- "fill-rule": "evenodd",
1350
- stroke: P.value.stroke,
1351
- "stroke-width": P.value.strokeWidth,
1352
- "stroke-linejoin": "round",
1353
- filter: or(e.serieIndex),
1354
- style: v(sr(e.serieIndex)),
1355
- class: g({ "vue-data-ui-transition": C(R) })
1356
- }, null, 14, ut))), 128)),
1357
- e.$slots.pattern ? (y(), p("g", dt, [(y(!0), p(l, null, x(hr.value, (e) => (y(), p("path", {
1358
- key: `merged-pattern-${e.serieIndex}`,
1359
- d: e.d,
1360
- fill: `url(#pattern_${E.value}_${e.absoluteIndex})`,
1361
- "fill-rule": "evenodd",
1362
- stroke: "none",
1363
- filter: or(e.serieIndex),
1364
- style: v(sr(e.serieIndex)),
1365
- class: g({ "vue-data-ui-transition": C(R) })
1366
- }, null, 14, ft))), 128))])) : f("", !0)
1367
- ], 64)) : (y(), p(l, { key: 2 }, [
1368
- (y(!0), p(l, null, x(J.value, (e, t) => (y(), p("rect", {
1369
- rx: P.value.rounded ? P.value.rounding : 0,
1370
- x: e.x + F.value.spaceBetween / 2,
1371
- y: e.y + F.value.spaceBetween / 2,
1372
- height: W.value <= 0 ? 1e-4 : W.value,
1373
- width: U.value <= 0 ? 1e-4 : U.value,
1374
- fill: "white",
1375
- stroke: P.value.stroke,
1376
- "stroke-width": P.value.strokeWidth,
1377
- filter: or(q.value[t].serieIndex),
1378
- style: v(sr(q.value[t].serieIndex)),
1379
- class: g({ "vue-data-ui-transition": C(R) })
1380
- }, null, 14, pt))), 256)),
1381
- (y(!0), p(l, null, x(J.value, (e, t) => (y(), p("rect", {
1382
- rx: P.value.rounded ? P.value.rounding : 0,
1383
- x: e.x + F.value.spaceBetween / 2,
1384
- y: e.y + F.value.spaceBetween / 2,
1385
- height: W.value <= 0 ? 1e-4 : W.value,
1386
- width: U.value <= 0 ? 1e-4 : U.value,
1387
- fill: P.value.useGradient && P.value.gradientIntensity > 0 ? `url(#gradient_${E.value}_${t})` : q.value[t].color,
1388
- stroke: P.value.stroke,
1389
- "stroke-width": P.value.strokeWidth,
1390
- filter: or(q.value[t].serieIndex),
1391
- style: v(sr(q.value[t].serieIndex)),
1392
- class: g({ "vue-data-ui-transition": C(R) })
1393
- }, null, 14, mt))), 256)),
1394
- e.$slots.pattern ? (y(), p("g", ht, [(y(!0), p(l, null, x(J.value, (e, t) => (y(), p("rect", {
1395
- rx: P.value.rounded ? P.value.rounding : 0,
1396
- x: e.x + F.value.spaceBetween / 2,
1397
- y: e.y + F.value.spaceBetween / 2,
1398
- height: W.value <= 0 ? 1e-4 : W.value,
1399
- width: U.value <= 0 ? 1e-4 : U.value,
1400
- fill: `url(#pattern_${E.value}_${q.value[t].absoluteIndex})`,
1401
- stroke: "none",
1402
- filter: or(q.value[t].serieIndex),
1403
- style: v(sr(q.value[t].serieIndex)),
1404
- class: g({ "vue-data-ui-transition": C(R) })
1405
- }, null, 14, gt))), 256))])) : f("", !0)
1406
- ], 64))], 64)) : f("", !0),
1407
- e.$slots.cellSvg ? (y(!0), p(l, { key: 3 }, x(J.value, (t, n) => (y(), p("g", null, [S(e.$slots, "cellSvg", Ue({ ref_for: !0 }, {
1408
- cell: {
1409
- ...t,
1410
- color: q.value[n].color,
1411
- height: Math.max(0, W.value),
1412
- width: Math.max(0, U.value),
1413
- ...q.value[n]
1414
- },
1415
- isSelected: [null, void 0].includes(D.value) ? !0 : q.value[n].serieIndex === D.value
1416
- }), void 0, !0)]))), 256)) : f("", !0),
1417
- (y(!0), p(l, null, x(mr.value, (e, t) => (y(), p("polygon", {
1418
- key: `selected-series-wrap-${t}`,
1419
- points: e,
1420
- fill: "none",
1421
- stroke: P.value.selection.wrap.stroke,
1422
- "stroke-width": P.value.selection.wrap.strokeWidth,
1423
- "stroke-linejoin": P.value.selection.wrap.strokeLinejoin,
1424
- "pointer-events": "none"
1425
- }, null, 8, _t))), 128)),
1426
- (y(!0), p(l, null, x(J.value, (e, t) => (y(), p(l, null, [gr(t, e) ? (y(), p("text", {
1427
- key: `datalabel_${t}`,
1428
- textContent: Ye(_r(t, e)),
1429
- x: e.x + I.value.labels.captions.offsetX + F.value.spaceBetween / 2 + 6,
1430
- y: e.y + I.value.labels.captions.offsetY + F.value.spaceBetween / 2 + En.value / 2 + I.value.labels.captions.fontSize / 3,
1431
- "font-size": I.value.labels.captions.fontSize,
1432
- fill: C(ue)(q.value[t].color),
1433
- filter: or(q.value[t].serieIndex),
1434
- class: g({ "vue-data-ui-transition": C(R) })
1435
- }, null, 10, vt)) : f("", !0)], 64))), 256)),
1436
- P.value.merged && !A.value.useCustomCells ? (y(!0), p(l, { key: 4 }, x(hr.value, (e) => (y(), p("path", {
1437
- key: `tooltip-trap-${e.serieIndex}`,
1438
- d: e.d,
1439
- fill: "transparent",
1440
- "fill-rule": "evenodd",
1441
- stroke: "none",
1442
- "pointer-events": "fill",
1443
- onMouseover: (t) => ir(e.rectIndex),
1444
- onMouseleave: (t) => rr(e.rectIndex),
1445
- onClick: (t) => nr(e.rectIndex)
1446
- }, null, 40, yt))), 128)) : (y(!0), p(l, { key: 5 }, x(J.value, (e, t) => (y(), p("rect", {
1447
- key: `tooltip-trap-${t}`,
1448
- x: e.x + F.value.spaceBetween / 2,
1449
- y: e.y + F.value.spaceBetween / 2,
1450
- height: En.value,
1451
- width: Tn.value,
1452
- fill: "transparent",
1453
- stroke: "none",
1454
- onMouseover: (e) => ir(t),
1455
- onMouseleave: (e) => rr(t),
1456
- onClick: (e) => nr(t)
1457
- }, null, 40, bt))), 128)),
1458
- S(e.$slots, "svg", { svg: {
1459
- ...V.value,
1460
- isPrintingImg: C(yn) || C(bn) || C(Mr),
1461
- isPrintingSvg: C(Nr)
1462
- } }, void 0, !0)
1463
- ], 46, it)), e.$slots.hint ? (y(), p("div", xt, [S(e.$slots, "hint", _(h({
1464
- hint: A.value.a11y.translations.keyboardNavigation,
1465
- isVisible: nn.value
1466
- })), void 0, !0)])) : f("", !0)]),
1467
- e.$slots.watermark ? (y(), p("div", St, [S(e.$slots, "watermark", _(h({ isPrinting: C(yn) || C(bn) || C(Mr) || C(Nr) })), void 0, !0)])) : f("", !0),
1468
- m("div", { id: `legend-bottom-${E.value}` }, null, 8, Ct),
1469
- Zt.value && (N.value.show || e.$slots.legend) ? (y(), d(Re, {
1470
- key: 6,
1471
- to: N.value.position === "top" ? `#legend-top-${E.value}` : `#legend-bottom-${E.value}`
1472
- }, [m("div", {
1473
- ref_key: "chartLegend",
1474
- ref: Gt
1475
- }, [S(e.$slots, "legend", { legend: Xn.value }, () => [N.value.show ? (y(), d(Fe, {
1476
- key: `legend_${Xt.value}`,
1477
- legendSet: Xn.value,
1478
- config: Zn.value,
1479
- isCursorPointer: rn.value,
1480
- onClickMarker: t[0] ||= ({ legend: e }) => Gn(e.uid)
1481
- }, ze({
1482
- item: w(({ legend: e }) => [m("div", {
1483
- onClick: (t) => e.segregate(),
1484
- style: v(`opacity:${Y.value.includes(e.uid) ? .5 : 1}`)
1485
- }, Ye(e.display), 13, wt)]),
1486
- legendToggle: w(() => [Xn.value.length > 2 && N.value.selectAllToggle.show && !C(on) ? (y(), d(Ae, {
1487
- key: 0,
1488
- backgroundColor: N.value.selectAllToggle.backgroundColor,
1489
- color: N.value.selectAllToggle.color,
1490
- fontSize: N.value.fontSize,
1491
- checked: Y.value.length > 0,
1492
- isCursorPointer: rn.value,
1493
- onToggle: Wn
1494
- }, null, 8, [
1495
- "backgroundColor",
1496
- "color",
1497
- "fontSize",
1498
- "checked",
1499
- "isCursorPointer"
1500
- ])) : f("", !0)]),
1501
- _: 2
1502
- }, [e.$slots.pattern ? {
1503
- name: "legend-pattern",
1504
- fn: w(({ legend: e, index: t }) => [Ve(Te, {
1505
- shape: e.shape,
1506
- radius: 30,
1507
- stroke: "none",
1508
- plot: {
1509
- x: 30,
1510
- y: 30
1511
- },
1512
- fill: `url(#pattern_${E.value}_${t})`
1513
- }, null, 8, ["shape", "fill"])]),
1514
- key: "0"
1515
- } : void 0]), 1032, [
1516
- "legendSet",
1517
- "config",
1518
- "isCursorPointer"
1519
- ])) : f("", !0)], !0)], 512)], 8, ["to"])) : f("", !0),
1520
- e.$slots.source ? (y(), p("div", {
1521
- key: 7,
1522
- ref_key: "source",
1523
- ref: Kt,
1524
- dir: "auto"
1525
- }, [S(e.$slots, "source", {}, void 0, !0)], 512)) : f("", !0),
1526
- Ve(C(Dt), {
1527
- teleportTo: M.value.teleportTo,
1528
- show: B.value.showTooltip && Vt.value && Y.value.length < T.dataset.length,
1529
- backgroundColor: M.value.backgroundColor,
1530
- color: M.value.color,
1531
- borderRadius: M.value.borderRadius,
1532
- borderColor: M.value.borderColor,
1533
- borderWidth: M.value.borderWidth,
1534
- backgroundOpacity: M.value.backgroundOpacity,
1535
- position: M.value.position,
1536
- offsetX: M.value.offsetX,
1537
- offsetY: M.value.offsetY,
1538
- parent: O.value,
1539
- content: Ht.value,
1540
- isCustom: M.value.customFormat && typeof M.value.customFormat == "function",
1541
- fontSize: M.value.fontSize,
1542
- isFullscreen: br.value,
1543
- smooth: M.value.smooth,
1544
- backdropFilter: M.value.backdropFilter,
1545
- smoothForce: M.value.smoothForce,
1546
- smoothSnapThreshold: M.value.smoothSnapThreshold,
1547
- isA11yMode: tn.value === "keyboard",
1548
- a11yPosition: en.value
1549
- }, {
1550
- "tooltip-before": w(() => [S(e.$slots, "tooltip-before", _(h({ ...Qn.value })), void 0, !0)]),
1551
- tooltip: w(() => [S(e.$slots, "tooltip", _(h({ ...Qn.value })), void 0, !0)]),
1552
- "tooltip-after": w(() => [S(e.$slots, "tooltip-after", _(h({ ...Qn.value })), void 0, !0)]),
1553
- _: 3
1554
- }, 8, [
1555
- "teleportTo",
1556
- "show",
1557
- "backgroundColor",
1558
- "color",
1559
- "borderRadius",
1560
- "borderColor",
1561
- "borderWidth",
1562
- "backgroundOpacity",
1563
- "position",
1564
- "offsetX",
1565
- "offsetY",
1566
- "parent",
1567
- "content",
1568
- "isCustom",
1569
- "fontSize",
1570
- "isFullscreen",
1571
- "smooth",
1572
- "backdropFilter",
1573
- "smoothForce",
1574
- "smoothSnapThreshold",
1575
- "isA11yMode",
1576
- "a11yPosition"
1577
- ]),
1578
- Bt.value && j.value.buttons.table ? (y(), d(qe(Dr.value.component), Ue({ key: 8 }, Dr.value.props, {
1579
- ref_key: "tableUnit",
1580
- ref: Qt,
1581
- onClose: Or
1582
- }), ze({
1583
- content: w(() => [(y(), d(C(kt), {
1584
- key: `table_${Yt.value}`,
1585
- colNames: yr.value.colNames,
1586
- head: yr.value.head,
1587
- body: yr.value.body,
1588
- config: yr.value.config,
1589
- title: A.value.table.useDialog ? "" : Dr.value.title,
1590
- withCloseButton: !A.value.table.useDialog,
1591
- isCursorPointer: rn.value,
1592
- onClose: Or
1593
- }, {
1594
- th: w(({ th: e }) => [e === "__SUM__" ? (y(), p("div", Tt, [Ve(C(Ot), {
1595
- name: "sigma",
1596
- stroke: yr.value.config.th.color,
1597
- size: 16
1598
- }, null, 8, ["stroke"])])) : (y(), p("div", Et, Ye(e), 1))]),
1599
- td: w(({ td: e }) => [Be(Ye(e.name || e), 1)]),
1600
- _: 1
1601
- }, 8, [
1602
- "colNames",
1603
- "head",
1604
- "body",
1605
- "config",
1606
- "title",
1607
- "withCloseButton",
1608
- "isCursorPointer"
1609
- ]))]),
1610
- _: 2
1611
- }, [A.value.table.useDialog ? {
1612
- name: "title",
1613
- fn: w(() => [Be(Ye(Dr.value.title), 1)]),
1614
- key: "0"
1615
- } : void 0, A.value.table.useDialog ? {
1616
- name: "actions",
1617
- fn: w(() => [m("button", {
1618
- tabindex: "0",
1619
- class: "vue-ui-user-options-button",
1620
- onClick: t[1] ||= (e) => vr(j.value.callbacks.csv),
1621
- style: v({ cursor: rn.value ? "pointer" : "default" })
1622
- }, [Ve(C(Ot), {
1623
- name: "fileCsv",
1624
- stroke: Dr.value.props.color
1625
- }, null, 8, ["stroke"])], 4)]),
1626
- key: "1"
1627
- } : void 0]), 1040)) : f("", !0),
1628
- S(e.$slots, "skeleton", {}, () => [C(on) ? (y(), d(ve, { key: 0 })) : f("", !0)], !0)
1629
- ], 46, et));
1630
- }
1631
- }, [["__scopeId", "data-v-3cc0d931"]]);
1632
- //#endregion
1633
- export { $e as n, Dt as t };