vue-data-ui 3.26.5 → 3.27.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 (200) hide show
  1. package/dist/{Arrow-BQbcOtfC.js → Arrow-DKO1l8oR.js} +1 -1
  2. package/dist/{BaseDraggableDialog-BCFCiP_6.js → BaseDraggableDialog-C50TEJFv.js} +2 -2
  3. package/dist/{BaseIcon-CIK6Sqo3.js → BaseIcon-Cx9FD751.js} +1 -1
  4. package/dist/{BaseLegendToggle-Doa5rYP2.js → BaseLegendToggle-CP3sddwv.js} +1 -1
  5. package/dist/{BaseZoomControls-BGQM8B5F.js → BaseZoomControls-vNi8YykO.js} +2 -2
  6. package/dist/{ColorPicker-Cb7qpvFt.js → ColorPicker-hmC2bvwS.js} +2 -2
  7. package/dist/{DataTable-B6LDCXBz.js → DataTable-CjF_An2h.js} +2 -2
  8. package/dist/{HillActions-CwdgCb7Q.js → HillActions-DqqGB33u.js} +1 -1
  9. package/dist/{Legend-D9FGXIbQ.js → Legend-CulFgjUY.js} +2 -2
  10. package/dist/{NonSvgPenAndPaper-9T4MSwXC.js → NonSvgPenAndPaper-BK1v_MfW.js} +3 -3
  11. package/dist/{PackageVersion-CslTvFsC.js → PackageVersion-D7H9nfK0.js} +1 -1
  12. package/dist/{PenAndPaper-C1EcBgJW.js → PenAndPaper-CNiuGw6k.js} +3 -3
  13. package/dist/{Shape-BZgQLgu5.js → Shape-DSwamtmO.js} +1 -1
  14. package/dist/{SlicerPreview-DyYv_G-_.js → SlicerPreview-k5YerMA9.js} +12 -12
  15. package/dist/{SparkTooltip-D4cRlyuq.js → SparkTooltip-D35KVv6N.js} +6 -6
  16. package/dist/{Title-Bd98RysU.js → Title-BMCuINbv.js} +1 -1
  17. package/dist/{Tooltip-DmQeI5WE.js → Tooltip-C4ZTwkLF.js} +1 -1
  18. package/dist/{UserOptions-B_yBcZ1-.js → UserOptions-CORYQiif.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-B_RJohlM.js → dom-to-png-CBusMkua.js} +1 -1
  91. package/dist/{exposedLib-C-JlvWAt.js → exposedLib-UNxZlnAS.js} +10 -10
  92. package/dist/{img-KURaWjZI.js → img-Bb5rHcpO.js} +1 -1
  93. package/dist/{labelUtils-DShv2Mbg.js → labelUtils-Ccn9kK7T.js} +1 -1
  94. package/dist/{lib-TWIH5fGr.js → lib-D4wK6ljP.js} +127 -133
  95. package/dist/{package-DbTqd5lc.js → package-DmQufM0G.js} +1 -1
  96. package/dist/{pdf-CLl24Afl.js → pdf-BzIQHx-F.js} +1 -1
  97. package/dist/{render-common-CKv-jztN.js → render-common-BtfjXdkJ.js} +10 -10
  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 +212 -59
  103. package/dist/types/vue-ui-stackbar.d.ts +10 -0
  104. package/dist/{useConfig-DObkR9Aa.js → useConfig-D_6ZrPMD.js} +82 -0
  105. package/dist/{useNestedProp-BxOdWM0c.js → useNestedProp-DR_8JPol.js} +1 -1
  106. package/dist/{useObjectBindings-CPmyIJxB.js → useObjectBindings-DvasYMGu.js} +2 -2
  107. package/dist/{usePrinter-8Y1Rju0Y.js → usePrinter-DdW2GSm0.js} +2 -2
  108. package/dist/utils.js +10 -10
  109. package/dist/{vue-data-ui-C3G5Zdl5.js → vue-data-ui-Df7WV80w.js} +70 -70
  110. package/dist/vue-data-ui.js +75 -75
  111. package/dist/{vue-ui-3d-bar-Cl6-fBV8.js → vue-ui-3d-bar-CJjNPwhG.js} +463 -463
  112. package/dist/{vue-ui-accordion-AyyZDab3.js → vue-ui-accordion-CaoNWreI.js} +4 -4
  113. package/dist/{vue-ui-age-pyramid-DOtWAL8s.js → vue-ui-age-pyramid-BYcM0uIP.js} +22 -22
  114. package/dist/{vue-ui-annotator-BCVjlojM.js → vue-ui-annotator-BmqjDjRF.js} +10 -10
  115. package/dist/{vue-ui-bullet-B_1Ctjvq.js → vue-ui-bullet-DBOAvpBB.js} +18 -18
  116. package/dist/vue-ui-bump-rPYwDJ4o.js +1242 -0
  117. package/dist/{vue-ui-candlestick-KvhjbAxt.js → vue-ui-candlestick-WQHIQNv_.js} +625 -625
  118. package/dist/{vue-ui-carousel-table-ArMiO0cG.js → vue-ui-carousel-table-Dojcvt49.js} +106 -106
  119. package/dist/{vue-ui-chestnut-DSM0U27X.js → vue-ui-chestnut-BdhEByUf.js} +65 -65
  120. package/dist/{vue-ui-chord-64akfaem.js → vue-ui-chord-MF4xF5az.js} +46 -46
  121. package/dist/{vue-ui-circle-pack-CaR_aNEh.js → vue-ui-circle-pack-BwDim7G8.js} +26 -26
  122. package/dist/{vue-ui-cursor-DCgqYZiz.js → vue-ui-cursor-w_5cbpSb.js} +61 -61
  123. package/dist/{vue-ui-dag-8uKK0Rlp.js → vue-ui-dag-D2EUqeDN.js} +65 -65
  124. package/dist/{vue-ui-dashboard-DeccYtSY.js → vue-ui-dashboard-BLnVXosj.js} +70 -70
  125. package/dist/{vue-ui-digits-BvK7bVuJ.js → vue-ui-digits-zSqwYWHm.js} +4 -4
  126. package/dist/{vue-ui-donut-8joMj08Z.js → vue-ui-donut-ZYZfqIhi.js} +117 -117
  127. package/dist/{vue-ui-donut-evolution-DgITf95R.js → vue-ui-donut-evolution-DtLbWi3h.js} +216 -216
  128. package/dist/vue-ui-donut-nLDLZwig.js +2427 -0
  129. package/dist/{vue-ui-dumbbell-U2L4ZYhB.js → vue-ui-dumbbell-Qgn3wRyI.js} +20 -20
  130. package/dist/{vue-ui-flow-DD20fJu_.js → vue-ui-flow-iSH6dyGw.js} +109 -109
  131. package/dist/vue-ui-funnel-Cc2z2zS5.js +749 -0
  132. package/dist/{vue-ui-galaxy-VZFZnHPv.js → vue-ui-galaxy-GhuBSU0o.js} +267 -267
  133. package/dist/vue-ui-gauge-BAjBO13a.js +934 -0
  134. package/dist/{vue-ui-geo-DeDQ6ubl.js → vue-ui-geo-mwTtvIHY.js} +19 -19
  135. package/dist/{vue-ui-gizmo-D5oUKIsP.js → vue-ui-gizmo-B5vOOrZX.js} +4 -4
  136. package/dist/vue-ui-heatmap-fimkY1nN.js +1613 -0
  137. package/dist/{vue-ui-hill-DONFacXR.js → vue-ui-hill-DPfTt3UE.js} +18 -18
  138. package/dist/{vue-ui-history-plot-BMy_y9S6.js → vue-ui-history-plot-B1WgzqTb.js} +53 -53
  139. package/dist/vue-ui-horizontal-bar-Bkp5HQdt.js +1723 -0
  140. package/dist/{vue-ui-kpi-Bol0OWs3.js → vue-ui-kpi-D-p0CSQh.js} +4 -4
  141. package/dist/{vue-ui-label-cwjXaEDQ.js → vue-ui-label-r3-QloJL.js} +65 -65
  142. package/dist/{vue-ui-mini-loader-kdpasmXb.js → vue-ui-mini-loader-CnrBGAtM.js} +3 -3
  143. package/dist/vue-ui-molecule-BhdAYX_H.js +941 -0
  144. package/dist/vue-ui-mood-radar-CdlnPrQf.js +1111 -0
  145. package/dist/{vue-ui-nested-donuts-ZmGGEvRk.js → vue-ui-nested-donuts-DceVEyUc.js} +341 -341
  146. package/dist/{vue-ui-onion-D6IKPpL-.js → vue-ui-onion-_L0uEATI.js} +209 -209
  147. package/dist/vue-ui-parallel-coordinate-plot-CbXwIM47.js +1444 -0
  148. package/dist/{vue-ui-quadrant-CueHa1Pm.js → vue-ui-quadrant-CDDFLRcX.js} +55 -55
  149. package/dist/{vue-ui-quick-chart-C8ZxX1Zw.js → vue-ui-quick-chart-Dom257hl.js} +377 -377
  150. package/dist/vue-ui-radar-BLdri1bA.js +1386 -0
  151. package/dist/{vue-ui-rating-V_OnJN9Y.js → vue-ui-rating-C_iTttXB.js} +25 -25
  152. package/dist/vue-ui-relation-circle-BmxTSgjd.js +905 -0
  153. package/dist/vue-ui-ridgeline-CsUrcVmL.js +1630 -0
  154. package/dist/{vue-ui-rings-Bf9IKwDr.js → vue-ui-rings-D_GPkgbD.js} +318 -318
  155. package/dist/vue-ui-scatter-D_C-IhnW.js +2418 -0
  156. package/dist/{vue-ui-skeleton-dyXWT6JX.js → vue-ui-skeleton-t7e6KEZ2.js} +60 -60
  157. package/dist/{vue-ui-smiley-w6nH1I0E.js → vue-ui-smiley-Dl95YWVo.js} +14 -14
  158. package/dist/{vue-ui-spark-trend-Bso9bwmY.js → vue-ui-spark-trend-pkZA7u5V.js} +20 -20
  159. package/dist/{vue-ui-sparkbar-CL06Yt56.js → vue-ui-sparkbar-Ds7OJjhG.js} +77 -77
  160. package/dist/{vue-ui-sparkgauge-BHDM5Hbr.js → vue-ui-sparkgauge-US1M88qc.js} +6 -6
  161. package/dist/vue-ui-sparkhistogram-FISVpSvv.js +589 -0
  162. package/dist/{vue-ui-sparkline-znaswFQj.js → vue-ui-sparkline-DvE1dHcs.js} +37 -37
  163. package/dist/{vue-ui-sparkstackbar-BOzVoWoa.js → vue-ui-sparkstackbar-CWtF9eG-.js} +39 -39
  164. package/dist/vue-ui-stackbar-fMgrHzZe.js +3273 -0
  165. package/dist/{vue-ui-stackline-qcLrNL09.js → vue-ui-stackline-CSMuUup2.js} +303 -303
  166. package/dist/vue-ui-strip-plot-TGD2UFHS.js +1752 -0
  167. package/dist/{vue-ui-table-D295mJIf.js → vue-ui-table-BCEIbg8-.js} +14 -14
  168. package/dist/{vue-ui-table-heatmap-CXeMKqKz.js → vue-ui-table-heatmap-CvUcFWMf.js} +9 -9
  169. package/dist/vue-ui-table-sparkline-CoVQ1qGY.js +738 -0
  170. package/dist/vue-ui-thermometer-BYFAZCzh.js +758 -0
  171. package/dist/{vue-ui-timer-BULpjYiI.js → vue-ui-timer-BKr8RVnn.js} +10 -10
  172. package/dist/{vue-ui-tiremarks-B7bTeU8h.js → vue-ui-tiremarks-BYu3cEoy.js} +35 -35
  173. package/dist/{vue-ui-treemap-DkqDz9W4.js → vue-ui-treemap-BR3rX5_L.js} +50 -50
  174. package/dist/{vue-ui-waffle-Cn7WBzqh.js → vue-ui-waffle-mP8g5aQk.js} +275 -275
  175. package/dist/{vue-ui-wheel-Cy7kBvEx.js → vue-ui-wheel-CZsSO2R6.js} +187 -187
  176. package/dist/{vue-ui-word-cloud-tRqc2ZMR.js → vue-ui-word-cloud-CJ30onqy.js} +35 -35
  177. package/dist/{vue-ui-world-B755-zji.js → vue-ui-world-BZ09DOiF.js} +498 -498
  178. package/dist/{vue-ui-xy-BiHIJ7rK.js → vue-ui-xy-C3h54loZ.js} +405 -405
  179. package/dist/{vue-ui-xy-canvas-DGuMC_Rf.js → vue-ui-xy-canvas-BwgK8drp.js} +165 -165
  180. package/dist/{vue-ui-xy-DWYTZz_v.js → vue-ui-xy-jemv5dsf.js} +288 -288
  181. package/dist/{vue_ui_stackbar-DdjDL6aq.js → vue_ui_stackbar-yQyvT4Su.js} +46 -0
  182. package/package.json +1 -1
  183. package/dist/vue-ui-bump-kOK6x4al.js +0 -1242
  184. package/dist/vue-ui-donut-CvbfzzdT.js +0 -2427
  185. package/dist/vue-ui-funnel-Cx8hVlZV.js +0 -749
  186. package/dist/vue-ui-gauge-Copa7G58.js +0 -934
  187. package/dist/vue-ui-heatmap-BukWtNsd.js +0 -1613
  188. package/dist/vue-ui-horizontal-bar-bcPSs999.js +0 -1723
  189. package/dist/vue-ui-molecule-BiAI5lbh.js +0 -941
  190. package/dist/vue-ui-mood-radar-f4xXkiBs.js +0 -1111
  191. package/dist/vue-ui-parallel-coordinate-plot-BbfModz3.js +0 -1444
  192. package/dist/vue-ui-radar-BcD7Zqvb.js +0 -1386
  193. package/dist/vue-ui-relation-circle-DlN4r83K.js +0 -905
  194. package/dist/vue-ui-ridgeline-BlQnTWXi.js +0 -1630
  195. package/dist/vue-ui-scatter-arPbS9MH.js +0 -2418
  196. package/dist/vue-ui-sparkhistogram-3Tw8PEms.js +0 -589
  197. package/dist/vue-ui-stackbar-BTOvMsP8.js +0 -2755
  198. package/dist/vue-ui-strip-plot-BLNaCPm8.js +0 -1752
  199. package/dist/vue-ui-table-sparkline-BYuwQrwA.js +0 -738
  200. package/dist/vue-ui-thermometer-BwJ0oF-H.js +0 -758
@@ -0,0 +1,1613 @@
1
+ import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
+ import { $ as t, D as n, Dt as r, Tt as i, X as a, at as o, b as s, et as c, i as l, in as u, nn as d, nt as f, pt as p, r as m, t as ee, yt as te, zt as ne } from "./lib-D4wK6ljP.js";
3
+ import { n as re, t as ie } from "./useHints-Dq_w2E8B.js";
4
+ import { t as ae } from "./useTimeLabels-d2f-W1L4.js";
5
+ import { t as oe } from "./useConfig-D_6ZrPMD.js";
6
+ import { t as se } from "./usePrinter-DdW2GSm0.js";
7
+ import { n as ce, t as le } from "./BaseScanner-Dzc8VT3j.js";
8
+ import { t as ue } from "./useNestedProp-DR_8JPol.js";
9
+ import { t as de } from "./useThemeCheck-C43Tcqmk.js";
10
+ import { t as fe } from "./useChartExport-iwOqiIWX.js";
11
+ import { t as pe } from "./useTimeLabelCollider-AEcY4Ioe.js";
12
+ import { t as me } from "./img-Bb5rHcpO.js";
13
+ import { n as he } from "./Title-BMCuINbv.js";
14
+ import { t as ge } from "./_plugin-vue_export-helper-B3ysoDQm.js";
15
+ import { l as _e, t as ve } from "./useResponsive-ZtArZtUf.js";
16
+ import { t as ye } from "./vue-ui-accordion-CaoNWreI.js";
17
+ import { t as be } from "./A11yDataTable-DdRsVULz.js";
18
+ import { t as xe } from "./useUserOptionState-DK-_1ddE.js";
19
+ import { t as Se } from "./useChartAccessibility-DYqac8yF.js";
20
+ import { t as Ce } from "./useTableResponsive-BAqJPR68.js";
21
+ import { t as we } from "./vue_ui_heatmap-B2BBBSWG.js";
22
+ import { Fragment as h, computed as g, createBlock as Te, createCommentVNode as _, createElementBlock as v, createElementVNode as y, createSlots as Ee, createTextVNode as De, createVNode as Oe, defineAsyncComponent as ke, guardReactiveProps as b, mergeProps as Ae, nextTick as je, normalizeClass as Me, normalizeProps as x, normalizeStyle as S, onBeforeUnmount as Ne, onMounted as Pe, openBlock as C, reactive as Fe, ref as w, renderList as T, renderSlot as E, resolveDynamicComponent as Ie, shallowRef as Le, toDisplayString as D, toRefs as Re, unref as O, useCssVars as ze, vShow as Be, watch as Ve, watchEffect as He, withCtx as k, withDirectives as Ue, withKeys as We } from "vue";
23
+ //#region src/useLabelObserverEfffect.js
24
+ function Ge({ elementRef: e, callback: t, attr: n, earlyReturn: r = !1, retryFrames: i = 12, alsoAfterFontsReady: a = !0 }) {
25
+ if (r) return;
26
+ let o = (e) => {
27
+ if (!e) return;
28
+ let r;
29
+ if (typeof e.getBBox == "function") try {
30
+ let t = e.getBBox();
31
+ r = n === "width" ? t.width : t.height;
32
+ } catch {}
33
+ if (typeof r != "number" || Number.isNaN(r)) try {
34
+ let t = e.getBoundingClientRect();
35
+ r = n === "width" ? t.width : t.height;
36
+ } catch {
37
+ r = void 0;
38
+ }
39
+ typeof r == "number" && !Number.isNaN(r) && t(r);
40
+ };
41
+ He((t) => {
42
+ let n = e.value;
43
+ if (!n) return;
44
+ let r = !1;
45
+ (async () => {
46
+ await je();
47
+ for (let t = 0; t < i; t += 1) {
48
+ if (r) return;
49
+ await new Promise((e) => requestAnimationFrame(e));
50
+ let t = e.value;
51
+ if (!t) return;
52
+ o(t);
53
+ }
54
+ if (a && typeof document < "u" && document.fonts && document.fonts.ready) {
55
+ try {
56
+ await document.fonts.ready;
57
+ } catch {}
58
+ !r && e.value && o(e.value);
59
+ }
60
+ })();
61
+ let s = new MutationObserver(() => {
62
+ e.value && requestAnimationFrame(() => {
63
+ e.value && o(e.value);
64
+ });
65
+ });
66
+ s.observe(n, {
67
+ childList: !0,
68
+ subtree: !0,
69
+ characterData: !0,
70
+ attributes: !0,
71
+ attributeFilter: [
72
+ "transform",
73
+ "style",
74
+ "class"
75
+ ]
76
+ });
77
+ let c;
78
+ if (typeof ResizeObserver < "u") {
79
+ let t = n.ownerSVGElement ? n.ownerSVGElement : n;
80
+ c = new ResizeObserver(() => {
81
+ let t = e.value;
82
+ t && o(t);
83
+ }), c.observe(t);
84
+ }
85
+ t(() => {
86
+ r = !0, s.disconnect(), c && c.disconnect();
87
+ });
88
+ }, { flush: "post" });
89
+ }
90
+ //#endregion
91
+ //#region src/directives/vFitText.js
92
+ var Ke = {
93
+ mounted(e, t) {
94
+ qe(e, t.value);
95
+ },
96
+ updated(e, t) {
97
+ qe(e, t.value);
98
+ }
99
+ };
100
+ function qe(e, { cellWidth: t, cellHeight: n, maxFontSize: r, minFontSize: i, index: a, reportRotation: o, reportHide: s, rotateAll: c, hideAll: l }) {
101
+ e.removeAttribute("transform"), e.removeAttribute("visibility");
102
+ let u = !1, d = !1;
103
+ e.setAttribute("font-size", r);
104
+ let f = e.getComputedTextLength();
105
+ if (f <= t) o(a, !1), s(a, !1);
106
+ else {
107
+ let n = Math.floor(r * t / f);
108
+ n >= i ? (e.setAttribute("font-size", n), o(a, !1), s(a, !1)) : (o(a, !0), s(a, !1), u = !0);
109
+ }
110
+ if (c && (u = !0), u) {
111
+ e.setAttribute("font-size", r);
112
+ let t = e.getBBox(), o = t.x + t.width / 2, c = t.y + t.height / 2;
113
+ e.setAttribute("transform", `rotate(-90 ${o} ${c})`);
114
+ let l = e.getBBox().width;
115
+ if (l <= n) s(a, !1);
116
+ else {
117
+ let t = Math.floor(r * n / l);
118
+ t >= i ? (e.setAttribute("font-size", t), s(a, !1)) : (d = !0, s(a, !0));
119
+ }
120
+ }
121
+ (l || d) && e.setAttribute("visibility", "hidden");
122
+ }
123
+ //#endregion
124
+ //#region src/components/vue-ui-heatmap.vue
125
+ var Je = /* @__PURE__ */ e({ default: () => Et }), Ye = ["id"], Xe = ["id"], Ze = [
126
+ "xmlns",
127
+ "aria-describedby",
128
+ "viewBox"
129
+ ], Qe = [
130
+ "x",
131
+ "y",
132
+ "width",
133
+ "height"
134
+ ], $e = [
135
+ "x",
136
+ "y",
137
+ "height",
138
+ "width",
139
+ "fill",
140
+ "stroke",
141
+ "stroke-width"
142
+ ], et = [
143
+ "x",
144
+ "y",
145
+ "height",
146
+ "width",
147
+ "fill",
148
+ "stroke",
149
+ "stroke-width"
150
+ ], tt = [
151
+ "x",
152
+ "y",
153
+ "width",
154
+ "height",
155
+ "fill",
156
+ "stroke",
157
+ "stroke-width"
158
+ ], nt = [
159
+ "data-a11y-cell-id",
160
+ "x",
161
+ "y",
162
+ "width",
163
+ "height",
164
+ "fill",
165
+ "stroke",
166
+ "stroke-width",
167
+ "aria-label",
168
+ "onMouseover",
169
+ "onMouseout",
170
+ "onClick"
171
+ ], rt = [
172
+ "font-size",
173
+ "font-weight",
174
+ "fill",
175
+ "x",
176
+ "y"
177
+ ], it = [
178
+ "x",
179
+ "y",
180
+ "width",
181
+ "height",
182
+ "fill",
183
+ "stroke",
184
+ "stroke-width"
185
+ ], at = [
186
+ "x",
187
+ "y",
188
+ "width",
189
+ "height",
190
+ "fill",
191
+ "stroke",
192
+ "stroke-width"
193
+ ], ot = [
194
+ "font-size",
195
+ "fill",
196
+ "x",
197
+ "y",
198
+ "font-weight"
199
+ ], st = [
200
+ "font-size",
201
+ "fill",
202
+ "x",
203
+ "y",
204
+ "font-weight"
205
+ ], ct = [
206
+ "text-anchor",
207
+ "font-size",
208
+ "fill",
209
+ "font-weight",
210
+ "transform"
211
+ ], lt = [
212
+ "text-anchor",
213
+ "font-size",
214
+ "fill",
215
+ "font-weight",
216
+ "transform"
217
+ ], ut = { key: 6 }, dt = [
218
+ "x",
219
+ "y",
220
+ "width",
221
+ "height",
222
+ "stroke",
223
+ "stroke-width"
224
+ ], ft = { key: 7 }, pt = [
225
+ "x1",
226
+ "x2",
227
+ "y1",
228
+ "y2",
229
+ "stroke",
230
+ "stroke-width",
231
+ "stroke-dasharray"
232
+ ], mt = [
233
+ "x1",
234
+ "x2",
235
+ "y1",
236
+ "y2",
237
+ "stroke",
238
+ "stroke-width",
239
+ "stroke-dasharray"
240
+ ], ht = { class: "vue-ui-heatmap-legend-gauge-right" }, gt = ["data-value"], _t = { class: "vue-ui-heatmap-gauge-indicator-value" }, vt = {
241
+ key: 1,
242
+ style: {
243
+ position: "absolute",
244
+ top: "100%",
245
+ left: "0",
246
+ width: "100%"
247
+ },
248
+ "data-dom-to-png-ignore": "",
249
+ "aria-hidden": "true"
250
+ }, yt = {
251
+ key: 5,
252
+ class: "vue-data-ui-watermark"
253
+ }, bt = { class: "vue-ui-data-table" }, xt = { key: 0 }, St = ["data-cell"], Ct = { style: {
254
+ display: "flex",
255
+ "align-items": "center",
256
+ gap: "5px",
257
+ "justify-content": "flex-end",
258
+ width: "100%",
259
+ "padding-right": "3px"
260
+ } }, wt = ["data-cell"], Tt = { style: {
261
+ display: "flex",
262
+ "align-items": "center",
263
+ gap: "5px",
264
+ "justify-content": "flex-end",
265
+ width: "100%",
266
+ "padding-right": "3px"
267
+ } }, Et = /*#__PURE__*/ ge({
268
+ __name: "vue-ui-heatmap",
269
+ props: {
270
+ config: {
271
+ type: Object,
272
+ default() {
273
+ return {};
274
+ }
275
+ },
276
+ dataset: {
277
+ type: Array,
278
+ default() {
279
+ return [];
280
+ }
281
+ }
282
+ },
283
+ emits: ["selectDatapoint", "copyAlt"],
284
+ setup(e, { expose: ge, emit: qe }) {
285
+ ze((e) => ({ v54bd95c1: e.tdo }));
286
+ let Je = ke(() => import("./Tooltip-C4ZTwkLF.js")), Et = ke(() => import("./BaseIcon-Cx9FD751.js").then((e) => e.n)), Dt = ke(() => import("./PenAndPaper-CNiuGw6k.js").then((e) => e.t)), Ot = ke(() => import("./UserOptions-CORYQiif.js").then((e) => e.n)), kt = ke(() => import("./PackageVersion-D7H9nfK0.js").then((e) => e.t)), At = ke(() => import("./BaseDraggableDialog-C50TEJFv.js").then((e) => e.n)), { vue_ui_heatmap: jt } = oe(), { isThemeValid: Mt, warnInvalidTheme: Nt } = de(), A = e, Pt = qe, Ft = g({
287
+ get() {
288
+ return !!A.dataset && A.dataset.length;
289
+ },
290
+ set(e) {
291
+ return e;
292
+ }
293
+ }), It = w(a()), j = w(null), Lt = w(!1), Rt = w(""), zt = w(void 0), M = w(null), Bt = w(0), Vt = w(null), Ht = w(0), Ut = w(null), Wt = w(null), Gt = w(null), Kt = w(null), qt = w(null), Jt = w(null), Yt = w(null), Xt = w(null), Zt = w(null), Qt = w(null), $t = w(null), en = w(null), tn = Le(null), N = w(null), nn = w(null), rn = w({
294
+ x: 0,
295
+ y: 0
296
+ }), an = w("pointer"), on = w(!1), P = w(gn()), F = g(() => P.value.style.layout.cells), I = g(() => P.value.style.layout.dataLabels), L = g(() => P.value.style.layout);
297
+ re({
298
+ config: () => P.value,
299
+ dataset: () => A.dataset,
300
+ component: "VueUiHeatmap",
301
+ rules: [ie.emptyArray, ie.noHint]
302
+ });
303
+ let sn = g(() => P.value.userOptions.useCursorPointer);
304
+ function cn() {
305
+ let e = Array(7).fill("_"), t = [], n = e.length;
306
+ for (let r = 0; r < n; r += 1) {
307
+ let n = [];
308
+ for (let e = 0; e < 14; e += 1) n.push(r + e * 2);
309
+ t.push({
310
+ name: `${e[r]}`,
311
+ values: n
312
+ });
313
+ }
314
+ return t;
315
+ }
316
+ let ln = g(() => d({
317
+ defaultConfig: {
318
+ table: { show: !1 },
319
+ userOptions: { show: !1 },
320
+ style: {
321
+ backgroundColor: "#99999930",
322
+ layout: {
323
+ cells: {
324
+ colors: {
325
+ hot: "#999999",
326
+ cold: "#CACACA"
327
+ },
328
+ columnTotal: { value: { show: !1 } },
329
+ rowTotal: { value: { show: !1 } },
330
+ value: { show: !1 }
331
+ },
332
+ dataLabels: {
333
+ xAxis: { show: !1 },
334
+ yAxis: { show: !1 }
335
+ }
336
+ }
337
+ }
338
+ },
339
+ userConfig: P.value.skeletonConfig ?? {}
340
+ })), { loading: un, FINAL_DATASET: R, manualLoading: dn } = ce({
341
+ ...Re(A),
342
+ FINAL_CONFIG: P,
343
+ prepareConfig: gn,
344
+ callback: () => {
345
+ Promise.resolve().then(async () => {
346
+ await je(), j.value && u(j.value, {
347
+ delta: .1,
348
+ delay: 250
349
+ });
350
+ });
351
+ },
352
+ skeletonDataset: A.config?.skeletonDataset ?? cn(),
353
+ skeletonConfig: d({
354
+ defaultConfig: P.value,
355
+ userConfig: ln.value
356
+ })
357
+ }), { userOptionsVisible: fn, setUserOptionsVisibility: pn, keepUserOptionState: mn } = xe({ config: P.value }), { svgRef: z } = Se({ config: P.value.style.title });
358
+ function hn(e) {
359
+ pn(e);
360
+ }
361
+ function gn() {
362
+ let e = ue({
363
+ userConfig: A.config,
364
+ defaultConfig: jt
365
+ }), t = {}, n = e.theme;
366
+ if (n) {
367
+ if (!Mt.value(e)) Nt(e), t = e;
368
+ else {
369
+ let r = ue({
370
+ userConfig: we[n] || A.config,
371
+ defaultConfig: e
372
+ });
373
+ t = { ...ue({
374
+ userConfig: A.config,
375
+ defaultConfig: r
376
+ }) };
377
+ }
378
+ } else t = e;
379
+ return t;
380
+ }
381
+ function _n(e) {
382
+ let t = c(e);
383
+ return t?.style && delete t.style.tooltip, JSON.stringify(t);
384
+ }
385
+ let vn = _n(A.config);
386
+ Ve(() => A.config, (e, t) => {
387
+ let n = _n(e), r = n !== vn;
388
+ vn = n;
389
+ let i = gn();
390
+ if (!r) {
391
+ P.value.style.tooltip = i.style.tooltip, B.value.showTooltip = P.value.style.tooltip.show;
392
+ return;
393
+ }
394
+ un.value || (P.value = i), fn.value = !P.value.userOptions.showOnChartHover, En(), Ht.value += 1, B.value.showTable = P.value.table.show, B.value.showTooltip = P.value.style.tooltip.show, Dn.value = L.value.width, On.value = L.value.height;
395
+ }, { deep: !0 }), Ve(() => A.dataset, (e) => {
396
+ Array.isArray(e) && e.length > 0 && (dn.value = !1), En();
397
+ }, { deep: !0 });
398
+ let { isPrinting: yn, isImaging: bn, generatePdf: xn, generateImage: Sn } = se({
399
+ elementId: `heatmap__${It.value}`,
400
+ fileName: P.value.style.title.text || "vue-ui-heatmap",
401
+ options: P.value.userOptions.print
402
+ }), Cn = g(() => P.value.userOptions.show && !P.value.style.title.text), B = w({
403
+ showTable: P.value.table.show,
404
+ showTooltip: P.value.style.tooltip.show
405
+ });
406
+ Ve(P, () => {
407
+ B.value = {
408
+ showTable: P.value.table.show,
409
+ showTooltip: P.value.style.tooltip.show
410
+ };
411
+ }, { immediate: !0 });
412
+ let wn = g(() => P.value.table.responsiveBreakpoint), V = w(null), Tn = g(() => P.value.debug);
413
+ function En() {
414
+ if (ne(A.dataset) && (o({
415
+ componentName: "VueUiHeatmap",
416
+ type: "dataset",
417
+ debug: Tn.value
418
+ }), Ft.value = !1, dn.value = !0), ne(A.dataset) || (dn.value = P.value.loading), P.value.responsive) {
419
+ let e = _e(() => {
420
+ let { width: e, height: t } = ve({
421
+ chart: j.value,
422
+ title: P.value.style.title.text ? Kt.value : null,
423
+ source: en.value,
424
+ noTitle: qt.value
425
+ });
426
+ requestAnimationFrame(() => {
427
+ Dn.value = e, On.value = t;
428
+ });
429
+ });
430
+ V.value && (tn.value && V.value.unobserve(tn.value), V.value.disconnect()), V.value = new ResizeObserver(e), tn.value = j.value.parentNode, V.value.observe(tn.value);
431
+ }
432
+ }
433
+ Ne(() => {
434
+ V.value && (tn.value && V.value.unobserve(tn.value), V.value.disconnect());
435
+ }), Pe(() => {
436
+ En();
437
+ });
438
+ let H = g(() => Math.max(...R.value.flatMap((e) => (e.values || []).length))), Dn = w(L.value.width), On = w(L.value.height), U = g(() => ({
439
+ width: Math.max(10, Dn.value),
440
+ height: Math.max(10, On.value)
441
+ })), kn = w(0);
442
+ Ge({
443
+ elementRef: Zt,
444
+ callback: _e((e) => {
445
+ e !== kn.value && (kn.value = e);
446
+ }, 100),
447
+ attr: "height"
448
+ });
449
+ let W = w(0);
450
+ Ge({
451
+ elementRef: Yt,
452
+ callback: _e((e) => {
453
+ e !== W.value && (W.value = e);
454
+ }, 100),
455
+ attr: "width"
456
+ });
457
+ let An = w(0);
458
+ Ge({
459
+ elementRef: Qt,
460
+ callback: _e((e) => {
461
+ e !== An.value && (An.value = e);
462
+ }, 100),
463
+ attr: "height"
464
+ }), Ne(() => {
465
+ kn.value = 0, W.value = 0, An.value = 0;
466
+ });
467
+ let G = g(() => Math.min(U.value.height, U.value.width) / 1e3 * F.value.spacing), K = g(() => {
468
+ let e = 0;
469
+ P.value.style.legend.show && (e = P.value.style.legend.width);
470
+ let t = L.value.padding, n = I.value.xAxis.fontSize / 3, r = I.value.xAxis.fontSize / 2, i = U.value.height - t.top - t.bottom - kn.value - n, a = U.value.width / 60, o = {
471
+ x: G.value * H.value,
472
+ y: G.value * ((R.value || []).length + 1)
473
+ }, s = U.value.width - t.left - t.right - o.x - a * 2 - 2 - e - W.value, c = i - a - o.y - An.value - r - F.value.columnTotal.value.offsetY, l = {
474
+ width: Math.max(3, s / H.value),
475
+ height: Math.max(3, c / (R.value.length ?? 1))
476
+ };
477
+ return {
478
+ top: t.top + kn.value + a + n,
479
+ topLabelsHeight: kn.value,
480
+ sumCellXHeight: a,
481
+ height: c,
482
+ left: t.left + W.value + a / 2,
483
+ right: t.right - e,
484
+ bottom: U.value.height - t.bottom - An.value,
485
+ width: s,
486
+ cellSize: l
487
+ };
488
+ }), jn = g(() => Math.max(...R.value.flatMap((e) => e.values))), Mn = g(() => Math.min(...R.value.flatMap((e) => e.values))), q = g(() => F.value.scaleMax === null ? jn.value : F.value.scaleMax), J = g(() => F.value.scaleMin === null ? Mn.value : F.value.scaleMin), Y = g(() => {
489
+ let e = R.value.flatMap((e) => e.values);
490
+ return e.reduce((e, t) => e + t, 0) / e.length;
491
+ }), Nn = w([]), Pn = w([]), Fn = 0;
492
+ He(() => {
493
+ let e = ++Fn;
494
+ (async () => {
495
+ let t = I.value.yAxis, n = await ae({
496
+ values: t.values.length ? t.values : R.value.map((e) => e.name),
497
+ maxDatapoints: R.value.length,
498
+ formatter: t.datetimeFormatter,
499
+ start: 0,
500
+ end: R.value.length
501
+ });
502
+ e === Fn && (Nn.value = n);
503
+ })();
504
+ });
505
+ let In = 0;
506
+ He(() => {
507
+ let e = ++In;
508
+ (async () => {
509
+ let t = I.value.xAxis, n = await ae({
510
+ values: t.values,
511
+ maxDatapoints: H.value,
512
+ formatter: t.datetimeFormatter,
513
+ start: 0,
514
+ end: H.value
515
+ });
516
+ e === In && (Pn.value = n);
517
+ })();
518
+ });
519
+ function Ln(e, t, n) {
520
+ if (t === n) return F.value.colors.hot;
521
+ let r = Math.min(Math.max(e, t), n);
522
+ return i(F.value.colors.cold, F.value.colors.hot, t, n, r);
523
+ }
524
+ function Rn(e) {
525
+ if ([void 0, null].includes(e)) return 0;
526
+ let t = J.value, n = q.value;
527
+ if (t === n) return 0;
528
+ let r = (e - t) / (n - t);
529
+ return (1 - Math.min(Math.max(r, 0), 1)) * 100;
530
+ }
531
+ let X = g(() => {
532
+ let e = Nn.value.map((e) => e.text), t = Pn.value.map((e) => e.text), n = F.value.scaleMin !== null || F.value.scaleMax !== null, r = R.value.map((e) => e.values.reduce((e, t) => e + t, 0)), i = R.value.map((e) => Math.max(1, e.values.length)), a = Math.max(...r), o = Math.min(...r), s = [], c = [];
533
+ for (let e = 0; e < H.value; e += 1) {
534
+ let t = 0, n = 0;
535
+ R.value.forEach((r) => {
536
+ e < r.values.length && (t += r.values[e] || 0, n += 1);
537
+ }), s.push(t), c.push(Math.max(1, n));
538
+ }
539
+ let l = Math.max(...s), u = Math.min(...s);
540
+ return {
541
+ yTotals: r.map((e, t) => {
542
+ let r = isNaN(e / a) ? 0 : e / a, s = i[t], c = J.value * s, l = q.value * s;
543
+ return {
544
+ total: e,
545
+ proportion: r,
546
+ color: n ? Ln(e, c, l) : Ln(e, o, a)
547
+ };
548
+ }),
549
+ xTotals: s.map((e, t) => {
550
+ let r = isNaN(e / l) ? 0 : e / l, i = c[t], a = J.value * i, o = q.value * i;
551
+ return {
552
+ total: e,
553
+ proportion: r,
554
+ color: n ? Ln(e, a, o) : Ln(e, u, l)
555
+ };
556
+ }),
557
+ yLabels: e,
558
+ xLabels: t.slice(0, H.value)
559
+ };
560
+ }), Z = g(() => (R.value.forEach((e, t) => {
561
+ te({
562
+ datasetObject: e,
563
+ requiredAttributes: ["values"]
564
+ }).forEach((e) => {
565
+ o({
566
+ componentName: "VueUiHeatmap",
567
+ type: "datasetSerieAttribute",
568
+ property: "values",
569
+ index: t,
570
+ debug: Tn.value
571
+ });
572
+ });
573
+ }), R.value.map((e, t) => ({
574
+ ...e,
575
+ temperatures: (e.values || []).map((e, n) => e >= Y.value ? {
576
+ side: "up",
577
+ color: Ln(e, J.value, q.value),
578
+ ratio: Math.abs(Math.abs(e - Y.value) / Math.abs(jn.value - Y.value)) > 1 ? 1 : Math.abs(Math.abs(e - Y.value) / Math.abs(jn.value - Y.value)),
579
+ value: e,
580
+ yAxisName: X.value.yLabels[t],
581
+ xAxisName: X.value.xLabels[n],
582
+ id: `vue-data-ui-heatmap-cell-${a()}`
583
+ } : {
584
+ side: "down",
585
+ ratio: Math.abs(1 - Math.abs(e) / Math.abs(Y.value)) > 1 ? 1 : Math.abs(1 - Math.abs(e) / Math.abs(Y.value)),
586
+ color: Ln(e, J.value, q.value),
587
+ value: e,
588
+ yAxisName: X.value.yLabels[t],
589
+ xAxisName: X.value.xLabels[n],
590
+ id: `vue-data-ui-heatmap-cell-${a()}`
591
+ })
592
+ })))), zn = g(() => Z.value.flatMap((e, t) => e.temperatures.map((e, n) => {
593
+ let r = K.value.left + K.value.cellSize.width * n, i = K.value.top + K.value.cellSize.height * t;
594
+ return {
595
+ datapoint: e,
596
+ rowIndex: t,
597
+ columnIndex: n,
598
+ x: r + G.value / 2 + K.value.sumCellXHeight,
599
+ y: i + G.value / 2,
600
+ width: K.value.cellSize.width - G.value,
601
+ height: K.value.cellSize.height - G.value,
602
+ labelX: r + K.value.cellSize.width / 2 + K.value.sumCellXHeight,
603
+ labelY: i + K.value.cellSize.height / 2 + F.value.value.fontSize / 3,
604
+ selectionX: r,
605
+ selectionY: i
606
+ };
607
+ }))), Bn = g(() => R.value.length), Vn = Fe(Array(Bn.value * H.value || 1).fill(!1)), Hn = g(() => Vn.some((e) => e));
608
+ function Un(e, t) {
609
+ Vn[e] = t;
610
+ }
611
+ let Wn = Fe(Array(Bn.value * H.value || 1).fill(!1)), Gn = g(() => Wn.some((e) => e));
612
+ function Kn(e, t) {
613
+ Wn[e] = t;
614
+ }
615
+ let Q = w(null), qn = w(null);
616
+ function Jn() {
617
+ Lt.value = !1, zt.value = void 0, Q.value = null, M.value = null, N.value = null, nn.value = null;
618
+ }
619
+ function Yn(e) {
620
+ if (!z.value || !e) return;
621
+ let t = z.value.querySelector(`[data-a11y-cell-id="${e}"]`);
622
+ if (!t) return;
623
+ let n = t.getBoundingClientRect();
624
+ rn.value = {
625
+ x: n.left + n.width / 2,
626
+ y: n.top + n.height / 2
627
+ };
628
+ }
629
+ function Xn(e, n, i, a, o = "pointer", s = null) {
630
+ let c = K.value.cellSize.width - G.value, u = {
631
+ ...e,
632
+ x: i + c,
633
+ y: a,
634
+ width: K.value.cellSize.width - G.value,
635
+ height: K.value.cellSize.height - G.value
636
+ };
637
+ if (P.value.events.datapointEnter && P.value.events.datapointEnter({
638
+ datapoint: u,
639
+ seriesIndex: n
640
+ }), !B.value.showTooltip) return;
641
+ an.value = o, N.value = s, nn.value = e.id, M.value = {
642
+ x: i,
643
+ y: a
644
+ };
645
+ let { value: d, yAxisName: f, xAxisName: m, id: ee } = e;
646
+ zt.value = ee, Q.value = d, qn.value = {
647
+ datapoint: e,
648
+ seriesIndex: n,
649
+ series: Z.value,
650
+ config: P.value
651
+ }, Lt.value = !0;
652
+ let te = "", ne = P.value.style.tooltip.customFormat;
653
+ r(ne) && p(() => ne({
654
+ datapoint: e,
655
+ seriesIndex: n,
656
+ series: Z.value,
657
+ config: P.value
658
+ })) ? Rt.value = ne({
659
+ datapoint: e,
660
+ seriesIndex: n,
661
+ series: Z.value,
662
+ config: P.value
663
+ }) : (te += `<div>${f} ${m ? f ? ` - ${m}` : `${m}` : ""}</div>`, te += `<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${P.value.style.tooltip.borderColor};font-weight:bold;display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:center"><span style="color:${Ln(d, J.value, q.value)}">⬤</span><span>${isNaN(d) ? "-" : l(F.value.value.formatter, d, t({
664
+ p: I.value.prefix,
665
+ v: d,
666
+ s: I.value.suffix,
667
+ r: P.value.style.tooltip.roundingValue
668
+ }), {
669
+ datapoint: e,
670
+ seriesIndex: n
671
+ })}</span></div>`, Rt.value = `<div style="font-size:${P.value.style.tooltip.fontSize}px">${te}</div>`), o === "keyboard" && je(() => {
672
+ Yn(e.id);
673
+ });
674
+ }
675
+ function Zn({ datapoint: e, seriesIndex: t }) {
676
+ P.value.events.datapointLeave && P.value.events.datapointLeave({
677
+ datapoint: e,
678
+ seriesIndex: t
679
+ }), (nn.value !== e.id || an.value !== "keyboard") && (Lt.value = !1, zt.value = void 0, Q.value = null, M.value = null);
680
+ }
681
+ function Qn(e) {
682
+ return l(F.value.value.formatter, X.value.yTotals[e].total, t({
683
+ p: I.value.prefix,
684
+ v: X.value.yTotals[e].total,
685
+ s: I.value.suffix,
686
+ r: F.value.value.roundingValue
687
+ }), {
688
+ datapoint: X.value.yTotals[e],
689
+ rowIndex: e
690
+ });
691
+ }
692
+ function $n(e) {
693
+ return l(F.value.value.formatter, X.value.xTotals[e].total, t({
694
+ p: I.value.prefix,
695
+ v: X.value.xTotals[e].total,
696
+ s: I.value.suffix,
697
+ r: F.value.value.roundingValue
698
+ }), {
699
+ datapoint: X.value.xTotals[e],
700
+ colIndex: e
701
+ });
702
+ }
703
+ g(() => ({
704
+ head: R.value.map((e) => ({ name: e.name })),
705
+ body: R.value.map((e) => e.values)
706
+ }));
707
+ function er(e = null) {
708
+ je(() => {
709
+ let t = ["", ...R.value.map((e, t) => e.name)], r = [];
710
+ for (let e = 0; e < X.value.xLabels.length; e += 1) {
711
+ let t = [X.value.xLabels[e]];
712
+ for (let n = 0; n < R.value.length; n += 1) t.push([R.value[n].values[e]]);
713
+ r.push(t);
714
+ }
715
+ let i = [
716
+ [P.value.style.title.text],
717
+ [P.value.style.title.subtitle.text],
718
+ [
719
+ [""],
720
+ [""],
721
+ [""]
722
+ ],
723
+ t
724
+ ].concat(r), a = n(i);
725
+ e ? e(a) : f({
726
+ csvContent: a,
727
+ title: P.value.style.title.text || "vue-ui-heatmap"
728
+ });
729
+ });
730
+ }
731
+ let tr = w(!1);
732
+ function nr(e) {
733
+ tr.value = e, Bt.value += 1;
734
+ }
735
+ function rr() {
736
+ B.value.showTable = !B.value.showTable;
737
+ }
738
+ function ir() {
739
+ B.value.showTooltip = !B.value.showTooltip;
740
+ }
741
+ let ar = w(!1);
742
+ function or() {
743
+ ar.value = !ar.value;
744
+ }
745
+ function sr(e, t) {
746
+ P.value.events.datapointClick && P.value.events.datapointClick({
747
+ datapoint: e,
748
+ seriesIndex: t
749
+ }), Pt("selectDatapoint", e);
750
+ }
751
+ function cr() {
752
+ return Z.value;
753
+ }
754
+ async function lr({ scale: e = 2 } = {}) {
755
+ if (!j.value) return;
756
+ let { width: t, height: n } = j.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await me({
757
+ domElement: j.value,
758
+ base64: !0,
759
+ img: !0,
760
+ scale: e
761
+ });
762
+ return {
763
+ imageUri: i,
764
+ base64: a,
765
+ title: P.value.style.title.text,
766
+ width: t,
767
+ height: n,
768
+ aspectRatio: r
769
+ };
770
+ }
771
+ let ur = g(() => ({
772
+ start: 0,
773
+ end: H.value
774
+ })), dr = g(() => X.value.xLabels);
775
+ pe({
776
+ timeLabelsEls: Zt,
777
+ timeLabels: dr,
778
+ slicer: ur,
779
+ configRef: P,
780
+ rotationPath: [
781
+ "style",
782
+ "layout",
783
+ "dataLabels",
784
+ "xAxis",
785
+ "rotation"
786
+ ],
787
+ autoRotatePath: [
788
+ "style",
789
+ "layout",
790
+ "dataLabels",
791
+ "xAxis",
792
+ "autoRotate",
793
+ "enable"
794
+ ],
795
+ isAutoSize: !1,
796
+ targetClass: ".vue-ui-heatmap-col-name",
797
+ rotation: I.value.xAxis.autoRotate.angle,
798
+ width: Dn,
799
+ height: On
800
+ }), pe({
801
+ timeLabelsEls: Qt,
802
+ timeLabels: dr,
803
+ slicer: ur,
804
+ configRef: P,
805
+ rotationPath: [
806
+ "style",
807
+ "layout",
808
+ "cells",
809
+ "columnTotal",
810
+ "value",
811
+ "rotation"
812
+ ],
813
+ autoRotatePath: [
814
+ "style",
815
+ "layout",
816
+ "cells",
817
+ "columnTotal",
818
+ "value",
819
+ "autoRotate",
820
+ "enable"
821
+ ],
822
+ isAutoSize: !1,
823
+ targetClass: ".vue-ui-heatmap-col-total",
824
+ rotation: F.value.columnTotal.value.autoRotate.angle,
825
+ width: Dn,
826
+ height: On
827
+ });
828
+ let fr = g(() => {
829
+ let e = P.value.table.useDialog && !P.value.table.show, t = B.value.showTable;
830
+ return {
831
+ component: e ? At : ye,
832
+ title: `${P.value.style.title.text}${P.value.style.title.subtitle.text ? `: ${P.value.style.title.subtitle.text}` : ""}`,
833
+ props: e ? {
834
+ backgroundColor: P.value.table.th.backgroundColor,
835
+ color: P.value.table.th.color,
836
+ headerColor: P.value.table.th.color,
837
+ headerBg: P.value.table.th.backgroundColor,
838
+ isFullscreen: tr.value,
839
+ fullscreenParent: j.value,
840
+ forcedWidth: Math.min(800, window.innerWidth * .8),
841
+ isCursorPointer: sn.value
842
+ } : {
843
+ hideDetails: !0,
844
+ config: {
845
+ open: t,
846
+ maxHeight: 1e4,
847
+ body: {
848
+ backgroundColor: P.value.style.backgroundColor,
849
+ color: P.value.style.color
850
+ },
851
+ head: {
852
+ backgroundColor: P.value.style.backgroundColor,
853
+ color: P.value.style.color
854
+ }
855
+ }
856
+ }
857
+ };
858
+ });
859
+ Ve(() => B.value.showTable, async (e) => {
860
+ P.value.table.show || (e && P.value.table.useDialog && Wt.value ? (await je(), Wt.value.open()) : "close" in Wt.value && Wt.value.close());
861
+ });
862
+ let { isResponsive: pr } = Ce(Vt, wn);
863
+ function mr() {
864
+ B.value.showTable = !1, Gt.value && Gt.value.setTableIconState(!1);
865
+ }
866
+ let hr = g(() => P.value.style.backgroundColor), gr = g(() => P.value.style.title), { isCallbackImaging: _r, isCallbackSvg: vr, generateSvg: yr, onGenerateImage: br } = fe({
867
+ svg: z,
868
+ title: gr,
869
+ legend: null,
870
+ legendItems: null,
871
+ backgroundColor: hr,
872
+ getSvgCallback: () => P.value.userOptions.callbacks.svg,
873
+ generateImage: Sn
874
+ });
875
+ async function xr() {
876
+ if (Pt("copyAlt", {
877
+ config: P.value,
878
+ dataset: Z.value
879
+ }), !P.value.userOptions.callbacks.altCopy) {
880
+ console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
881
+ return;
882
+ }
883
+ await Promise.resolve(P.value.userOptions.callbacks.altCopy({
884
+ config: P.value,
885
+ dataset: Z.value
886
+ }));
887
+ }
888
+ function Sr(e, t) {
889
+ let n = Z.value[e];
890
+ if (!n) return null;
891
+ let r = n.temperatures[t];
892
+ return r ? {
893
+ cell: r,
894
+ rowIndex: e,
895
+ columnIndex: t
896
+ } : null;
897
+ }
898
+ function Cr(e, t) {
899
+ let n = 0;
900
+ for (let t = 0; t < e; t += 1) n += Z.value[t]?.temperatures?.length || 0;
901
+ return n + t;
902
+ }
903
+ function wr() {
904
+ N.value = null, nn.value = null, on.value = !0;
905
+ }
906
+ function Tr() {
907
+ Jn(), on.value = !1;
908
+ }
909
+ function Er(e) {
910
+ if (!z.value || ar.value || document.activeElement !== z.value || !$.value.length) return;
911
+ let t = e.key === "ArrowLeft", n = e.key === "ArrowRight", r = e.key === "ArrowUp", i = e.key === "ArrowDown", a = e.key === "Enter" || e.key === " ", o = e.key === "Escape";
912
+ if (!t && !n && !r && !i && !a && !o) return;
913
+ if (e.preventDefault(), e.stopPropagation(), o) {
914
+ Jn();
915
+ return;
916
+ }
917
+ if (a) {
918
+ if (N.value === null) return;
919
+ let e = $.value[N.value];
920
+ if (!e) return;
921
+ sr(e.cell, e.rowIndex);
922
+ return;
923
+ }
924
+ let s = N.value === null ? null : $.value[N.value];
925
+ if (!s) {
926
+ let e = zt.value ? $.value.findIndex((e) => e.cell.id === zt.value) : null;
927
+ if (e !== null && e >= 0 && e < $.value.length) {
928
+ let a = $.value[e];
929
+ if (!a) return;
930
+ let o = a.rowIndex, s = a.columnIndex;
931
+ n ? s += 1 : t ? --s : i ? o += 1 : r && --o;
932
+ let c = Or.value.rowCount;
933
+ if (c <= 0) return;
934
+ o < 0 && (o = c - 1), o >= c && (o = 0);
935
+ let l = Z.value[o];
936
+ if (!l || !l.temperatures.length) return;
937
+ let u = l.temperatures.length;
938
+ s < 0 && (s = u - 1), s >= u && (s = 0);
939
+ let d = Sr(o, s);
940
+ if (!d) return;
941
+ let f = Cr(o, s), p = K.value.left + K.value.cellSize.width * d.columnIndex, m = K.value.top + K.value.cellSize.height * d.rowIndex;
942
+ Xn(d.cell, d.rowIndex, p, m, "keyboard", f);
943
+ return;
944
+ }
945
+ let a = $.value[0];
946
+ if (!a) return;
947
+ let o = K.value.left + K.value.cellSize.width * a.columnIndex, s = K.value.top + K.value.cellSize.height * a.rowIndex;
948
+ Xn(a.cell, a.rowIndex, o, s, "keyboard", 0);
949
+ return;
950
+ }
951
+ let c = s.rowIndex, l = s.columnIndex;
952
+ n ? l += 1 : t ? --l : i ? c += 1 : r && --c;
953
+ let u = Or.value.rowCount;
954
+ if (u <= 0) return;
955
+ c < 0 && (c = u - 1), c >= u && (c = 0);
956
+ let d = Z.value[c];
957
+ if (!d || !d.temperatures.length) return;
958
+ let f = d.temperatures.length;
959
+ l < 0 && (l = f - 1), l >= f && (l = 0);
960
+ let p = Sr(c, l);
961
+ if (!p) return;
962
+ let m = Cr(c, l), ee = K.value.left + K.value.cellSize.width * p.columnIndex, te = K.value.top + K.value.cellSize.height * p.rowIndex;
963
+ Xn(p.cell, p.rowIndex, ee, te, "keyboard", m);
964
+ }
965
+ let Dr = g(() => ({
966
+ headers: [P.value.table.colNames.xAxis, ...R.value.map((e) => e.name)],
967
+ rows: X.value.xLabels.map((e, n) => [e, ...R.value.map((e) => {
968
+ let r = e.values?.[n];
969
+ return isNaN(r) ? "-" : t({
970
+ p: I.value.prefix,
971
+ v: r,
972
+ s: I.value.suffix,
973
+ r: P.value.table.td.roundingValue
974
+ });
975
+ })])
976
+ })), Or = g(() => ({
977
+ rowCount: Z.value.length,
978
+ columnCount: Math.max(0, ...Z.value.map((e) => e.temperatures.length))
979
+ })), $ = g(() => Z.value.flatMap((e, t) => e.temperatures.map((e, n) => ({
980
+ cell: e,
981
+ rowIndex: t,
982
+ columnIndex: n
983
+ }))));
984
+ return ge({
985
+ getData: cr,
986
+ getImage: lr,
987
+ generatePdf: xn,
988
+ generateCsv: er,
989
+ generateImage: Sn,
990
+ generateSvg: yr,
991
+ toggleTable: rr,
992
+ toggleTooltip: ir,
993
+ toggleAnnotator: or,
994
+ toggleFullscreen: nr,
995
+ copyAlt: xr
996
+ }), (n, r) => (C(), v("div", {
997
+ ref_key: "heatmapChart",
998
+ ref: j,
999
+ class: Me(`vue-data-ui-component vue-ui-heatmap ${tr.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
1000
+ style: S(`font-family:${P.value.style.fontFamily};width:100%;${P.value.responsive ? "height: 100%;" : ""} text-align:center;background:${P.value.style.backgroundColor}`),
1001
+ id: `heatmap__${It.value}`,
1002
+ onMouseenter: r[1] ||= () => hn(!0),
1003
+ onMouseleave: r[2] ||= () => {
1004
+ hn(!1), on.value || Jn();
1005
+ }
1006
+ }, [
1007
+ y("div", {
1008
+ id: `chart-instructions-${It.value}`,
1009
+ class: "sr-only"
1010
+ }, [y("p", null, D(P.value.a11y.translations.keyboardNavigation), 1)], 8, Xe),
1011
+ Dr.value?.rows?.length ? (C(), Te(be, {
1012
+ key: 0,
1013
+ uid: It.value,
1014
+ head: Dr.value.headers,
1015
+ body: Dr.value.rows,
1016
+ notice: P.value.a11y.translations.tableAvailable,
1017
+ caption: P.value.a11y.translations.tableCaption
1018
+ }, null, 8, [
1019
+ "uid",
1020
+ "head",
1021
+ "body",
1022
+ "notice",
1023
+ "caption"
1024
+ ])) : _("", !0),
1025
+ P.value.userOptions.buttons.annotator ? (C(), Te(O(Dt), {
1026
+ key: 1,
1027
+ svgRef: O(z),
1028
+ backgroundColor: P.value.style.backgroundColor,
1029
+ color: P.value.style.color,
1030
+ active: ar.value,
1031
+ isCursorPointer: sn.value,
1032
+ palette: P.value.userOptions.annotatorPalette,
1033
+ onClose: or
1034
+ }, {
1035
+ "annotator-action-close": k(() => [E(n.$slots, "annotator-action-close", {}, void 0, !0)]),
1036
+ "annotator-action-color": k(({ color: e }) => [E(n.$slots, "annotator-action-color", x(b({ color: e })), void 0, !0)]),
1037
+ "annotator-action-draw": k(({ mode: e }) => [E(n.$slots, "annotator-action-draw", x(b({ mode: e })), void 0, !0)]),
1038
+ "annotator-action-undo": k(({ disabled: e }) => [E(n.$slots, "annotator-action-undo", x(b({ disabled: e })), void 0, !0)]),
1039
+ "annotator-action-redo": k(({ disabled: e }) => [E(n.$slots, "annotator-action-redo", x(b({ disabled: e })), void 0, !0)]),
1040
+ "annotator-action-delete": k(({ disabled: e }) => [E(n.$slots, "annotator-action-delete", x(b({ disabled: e })), void 0, !0)]),
1041
+ _: 3
1042
+ }, 8, [
1043
+ "svgRef",
1044
+ "backgroundColor",
1045
+ "color",
1046
+ "active",
1047
+ "isCursorPointer",
1048
+ "palette"
1049
+ ])) : _("", !0),
1050
+ Cn.value ? (C(), v("div", {
1051
+ key: 2,
1052
+ ref_key: "noTitle",
1053
+ ref: qt,
1054
+ class: "vue-data-ui-no-title-space",
1055
+ style: "height:36px; width: 100%;background:transparent"
1056
+ }, null, 512)) : _("", !0),
1057
+ P.value.style.title.text ? (C(), v("div", {
1058
+ key: 3,
1059
+ ref_key: "chartTitle",
1060
+ ref: Kt,
1061
+ style: "width:100%;background:transparent"
1062
+ }, [(C(), Te(he, {
1063
+ key: `title_${Ht.value}`,
1064
+ config: {
1065
+ title: {
1066
+ cy: "heatmap-div-title",
1067
+ ...P.value.style.title
1068
+ },
1069
+ subtitle: {
1070
+ cy: "heatmap-div-subtitle",
1071
+ ...P.value.style.title.subtitle
1072
+ }
1073
+ }
1074
+ }, null, 8, ["config"]))], 512)) : _("", !0),
1075
+ P.value.userOptions.show && Ft.value && (O(mn) || O(fn)) ? (C(), Te(O(Ot), {
1076
+ ref_key: "userOptionsRef",
1077
+ ref: Gt,
1078
+ key: `user_options_${Bt.value}`,
1079
+ backgroundColor: P.value.style.backgroundColor,
1080
+ color: P.value.style.color,
1081
+ isImaging: O(bn),
1082
+ isPrinting: O(yn),
1083
+ uid: It.value,
1084
+ hasTooltip: P.value.userOptions.buttons.tooltip && P.value.style.tooltip.show,
1085
+ hasPdf: P.value.userOptions.buttons.pdf,
1086
+ hasImg: P.value.userOptions.buttons.img,
1087
+ hasSvg: P.value.userOptions.buttons.svg,
1088
+ hasXls: P.value.userOptions.buttons.csv,
1089
+ hasTable: P.value.userOptions.buttons.table,
1090
+ hasFullscreen: P.value.userOptions.buttons.fullscreen,
1091
+ hasAltCopy: P.value.userOptions.buttons.altCopy,
1092
+ isFullscreen: tr.value,
1093
+ isTooltip: B.value.showTooltip,
1094
+ titles: { ...P.value.userOptions.buttonTitles },
1095
+ chartElement: j.value,
1096
+ position: P.value.userOptions.position,
1097
+ hasAnnotator: P.value.userOptions.buttons.annotator,
1098
+ isAnnotation: ar.value,
1099
+ callbacks: P.value.userOptions.callbacks,
1100
+ printScale: P.value.userOptions.print.scale,
1101
+ tableDialog: P.value.table.useDialog,
1102
+ isCursorPointer: sn.value,
1103
+ onToggleFullscreen: nr,
1104
+ onGeneratePdf: O(xn),
1105
+ onGenerateCsv: er,
1106
+ onGenerateImage: O(br),
1107
+ onGenerateSvg: O(yr),
1108
+ onToggleTable: rr,
1109
+ onToggleTooltip: ir,
1110
+ onToggleAnnotator: or,
1111
+ onCopyAlt: xr,
1112
+ style: S({ visibility: O(mn) ? O(fn) ? "visible" : "hidden" : "visible" })
1113
+ }, Ee({ _: 2 }, [
1114
+ n.$slots.menuIcon ? {
1115
+ name: "menuIcon",
1116
+ fn: k(({ isOpen: e, color: t }) => [E(n.$slots, "menuIcon", x(b({
1117
+ isOpen: e,
1118
+ color: t
1119
+ })), void 0, !0)]),
1120
+ key: "0"
1121
+ } : void 0,
1122
+ n.$slots.optionTooltip ? {
1123
+ name: "optionTooltip",
1124
+ fn: k(() => [E(n.$slots, "optionTooltip", {}, void 0, !0)]),
1125
+ key: "1"
1126
+ } : void 0,
1127
+ n.$slots.optionPdf ? {
1128
+ name: "optionPdf",
1129
+ fn: k(() => [E(n.$slots, "optionPdf", {}, void 0, !0)]),
1130
+ key: "2"
1131
+ } : void 0,
1132
+ n.$slots.optionCsv ? {
1133
+ name: "optionCsv",
1134
+ fn: k(() => [E(n.$slots, "optionCsv", {}, void 0, !0)]),
1135
+ key: "3"
1136
+ } : void 0,
1137
+ n.$slots.optionImg ? {
1138
+ name: "optionImg",
1139
+ fn: k(() => [E(n.$slots, "optionImg", {}, void 0, !0)]),
1140
+ key: "4"
1141
+ } : void 0,
1142
+ n.$slots.optionSvg ? {
1143
+ name: "optionSvg",
1144
+ fn: k(() => [E(n.$slots, "optionSvg", {}, void 0, !0)]),
1145
+ key: "5"
1146
+ } : void 0,
1147
+ n.$slots.optionTable ? {
1148
+ name: "optionTable",
1149
+ fn: k(() => [E(n.$slots, "optionTable", {}, void 0, !0)]),
1150
+ key: "6"
1151
+ } : void 0,
1152
+ n.$slots.optionFullscreen ? {
1153
+ name: "optionFullscreen",
1154
+ fn: k(({ toggleFullscreen: e, isFullscreen: t }) => [E(n.$slots, "optionFullscreen", x(b({
1155
+ toggleFullscreen: e,
1156
+ isFullscreen: t
1157
+ })), void 0, !0)]),
1158
+ key: "7"
1159
+ } : void 0,
1160
+ n.$slots.optionAnnotator ? {
1161
+ name: "optionAnnotator",
1162
+ fn: k(({ toggleAnnotator: e, isAnnotator: t }) => [E(n.$slots, "optionAnnotator", x(b({
1163
+ toggleAnnotator: e,
1164
+ isAnnotator: t
1165
+ })), void 0, !0)]),
1166
+ key: "8"
1167
+ } : void 0,
1168
+ n.$slots.optionAltCopy ? {
1169
+ name: "optionAltCopy",
1170
+ fn: k(({ altCopy: e }) => [E(n.$slots, "optionAltCopy", x(b({ altCopy: e })), void 0, !0)]),
1171
+ key: "9"
1172
+ } : void 0,
1173
+ n.$slots["custom-menu-before"] ? {
1174
+ name: "custom-menu-before",
1175
+ fn: k(() => [E(n.$slots, "custom-menu-before", {}, void 0, !0)]),
1176
+ key: "10"
1177
+ } : void 0,
1178
+ n.$slots["custom-menu-after"] ? {
1179
+ name: "custom-menu-after",
1180
+ fn: k(() => [E(n.$slots, "custom-menu-after", {}, void 0, !0)]),
1181
+ key: "11"
1182
+ } : void 0
1183
+ ]), 1032, /* @__PURE__ */ "backgroundColor.color.isImaging.isPrinting.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("."))) : _("", !0),
1184
+ y("div", { class: Me({
1185
+ "vue-ui-heatmap-chart-wrapper": !0,
1186
+ "vue-ui-heatmap-chart-wrapper-legend-right": P.value.style.legend.show
1187
+ }) }, [
1188
+ (C(), v("svg", {
1189
+ ref_key: "svgRef",
1190
+ ref: z,
1191
+ xmlns: O(ee),
1192
+ "aria-describedby": `chart-instructions-${It.value}`,
1193
+ class: Me({
1194
+ "vue-data-ui-fullscreen--on": tr.value,
1195
+ "vue-data-ui-fulscreen--off": !tr.value
1196
+ }),
1197
+ viewBox: `0 0 ${U.value.width} ${U.value.height}`,
1198
+ width: "100%",
1199
+ style: S(`overflow: visible; background:transparent;color:${P.value.style.color}`),
1200
+ "aria-live": "polite",
1201
+ role: "img",
1202
+ preserveAspectRatio: "xMidYMid",
1203
+ tabindex: "0",
1204
+ onFocus: wr,
1205
+ onBlur: Tr,
1206
+ onKeydown: Er
1207
+ }, [
1208
+ Oe(O(kt)),
1209
+ n.$slots["chart-background"] ? (C(), v("foreignObject", {
1210
+ key: 0,
1211
+ x: K.value.left,
1212
+ y: K.value.top,
1213
+ width: K.value.width,
1214
+ height: K.value.height,
1215
+ style: { pointerEvents: "none" }
1216
+ }, [E(n.$slots, "chart-background", {}, void 0, !0)], 8, Qe)) : _("", !0),
1217
+ F.value.columnTotal.color.show ? (C(), v("g", {
1218
+ key: 1,
1219
+ ref_key: "xAxisSumRects",
1220
+ ref: $t
1221
+ }, [(C(!0), v(h, null, T(X.value.xTotals, (e, t) => (C(), v("rect", {
1222
+ x: K.value.left + K.value.cellSize.width * t + G.value / 2 + K.value.sumCellXHeight,
1223
+ y: K.value.top - K.value.sumCellXHeight + G.value * (U.value.height / U.value.width),
1224
+ height: K.value.sumCellXHeight,
1225
+ width: K.value.cellSize.width - G.value,
1226
+ fill: F.value.colors.underlayer,
1227
+ stroke: P.value.style.backgroundColor,
1228
+ "stroke-width": G.value
1229
+ }, null, 8, $e))), 256)), (C(!0), v(h, null, T(X.value.xTotals, (e, t) => (C(), v("rect", {
1230
+ x: K.value.left + K.value.cellSize.width * t + G.value / 2 + K.value.sumCellXHeight,
1231
+ y: K.value.top - K.value.sumCellXHeight + G.value * (U.value.height / U.value.width),
1232
+ height: K.value.sumCellXHeight,
1233
+ width: K.value.cellSize.width - G.value,
1234
+ fill: e.color,
1235
+ stroke: P.value.style.backgroundColor,
1236
+ "stroke-width": G.value
1237
+ }, null, 8, et))), 256))], 512)) : _("", !0),
1238
+ y("g", {
1239
+ ref_key: "datapoints",
1240
+ ref: Ut
1241
+ }, [(C(!0), v(h, null, T(zn.value, (e) => (C(), v("g", null, [
1242
+ y("rect", {
1243
+ x: e.x,
1244
+ y: e.y,
1245
+ width: e.width,
1246
+ height: e.height,
1247
+ fill: F.value.colors.underlayer,
1248
+ stroke: P.value.style.backgroundColor,
1249
+ "stroke-width": G.value
1250
+ }, null, 8, tt),
1251
+ y("rect", {
1252
+ "data-a11y-cell-id": e.datapoint.id,
1253
+ x: e.x,
1254
+ y: e.y,
1255
+ width: e.width,
1256
+ height: e.height,
1257
+ fill: e.datapoint.color,
1258
+ stroke: P.value.style.backgroundColor,
1259
+ "stroke-width": G.value,
1260
+ "aria-label": `${e.datapoint.yAxisName}${e.datapoint.xAxisName ? ` - ${e.datapoint.xAxisName}` : ""}: ${isNaN(e.datapoint.value) ? "-" : e.datapoint.value}`,
1261
+ onMouseover: (t) => Xn(e.datapoint, e.rowIndex, e.selectionX, e.selectionY, "pointer", Cr(e.rowIndex, e.columnIndex)),
1262
+ onMouseout: () => Zn({
1263
+ datapoint: e.datapoint,
1264
+ seriesIndex: e.rowIndex
1265
+ }),
1266
+ onClick: () => sr(e.datapoint, e.rowIndex)
1267
+ }, null, 40, nt),
1268
+ F.value.value.show ? Ue((C(), v("text", {
1269
+ key: 0,
1270
+ "text-anchor": "middle",
1271
+ "font-size": F.value.value.fontSize,
1272
+ "font-weight": F.value.value.bold ? "bold" : "normal",
1273
+ fill: O(m)(e.datapoint.color),
1274
+ x: e.labelX,
1275
+ y: e.labelY,
1276
+ style: {
1277
+ pointerEvents: "none",
1278
+ userSelect: "none"
1279
+ }
1280
+ }, [De(D(O(l)(F.value.value.formatter, e.datapoint.value, O(t)({
1281
+ p: I.value.prefix,
1282
+ v: e.datapoint.value,
1283
+ s: I.value.suffix,
1284
+ r: F.value.value.roundingValue
1285
+ }), { datapoint: e.datapoint })), 1)], 8, rt)), [[O(Ke), {
1286
+ cellWidth: e.width,
1287
+ cellHeight: e.height,
1288
+ maxFontSize: F.value.value.fontSize,
1289
+ minFontSize: 10,
1290
+ index: e.rowIndex * H.value + e.columnIndex,
1291
+ reportHide: Kn,
1292
+ reportRotation: Un,
1293
+ hideAll: Gn.value,
1294
+ rotateAll: Hn.value
1295
+ }]]) : _("", !0)
1296
+ ]))), 256))], 512),
1297
+ F.value.rowTotal.color.show ? (C(), v("g", {
1298
+ key: 2,
1299
+ ref_key: "yAxisSumRects",
1300
+ ref: Xt
1301
+ }, [(C(!0), v(h, null, T(Z.value, (e, t) => (C(), v(h, null, [y("rect", {
1302
+ x: K.value.left,
1303
+ y: K.value.top + K.value.cellSize.height * t,
1304
+ width: K.value.sumCellXHeight,
1305
+ height: K.value.cellSize.height - G.value,
1306
+ fill: F.value.colors.underlayer,
1307
+ stroke: P.value.style.backgroundColor,
1308
+ "stroke-width": G.value
1309
+ }, null, 8, it), y("rect", {
1310
+ x: K.value.left,
1311
+ y: K.value.top + K.value.cellSize.height * t + G.value / 2,
1312
+ width: K.value.sumCellXHeight,
1313
+ height: K.value.cellSize.height - G.value,
1314
+ fill: X.value.yTotals[t].color,
1315
+ stroke: P.value.style.backgroundColor,
1316
+ "stroke-width": G.value
1317
+ }, null, 8, at)], 64))), 256))], 512)) : _("", !0),
1318
+ I.value.yAxis.show ? (C(), v("g", {
1319
+ key: 3,
1320
+ ref_key: "yAxisLabels",
1321
+ ref: Yt
1322
+ }, [(C(!0), v(h, null, T(Z.value, (e, t) => (C(), v(h, null, [y("text", {
1323
+ class: "vue-ui-heatmap-row-name",
1324
+ "font-size": I.value.yAxis.fontSize,
1325
+ fill: I.value.yAxis.color,
1326
+ x: W.value + I.value.yAxis.offsetX,
1327
+ y: K.value.top + K.value.cellSize.height * t + K.value.cellSize.height / 2 + I.value.yAxis.fontSize / 3 + I.value.yAxis.offsetY - (F.value.rowTotal.value.show ? I.value.yAxis.fontSize / 1.5 : 0),
1328
+ "text-anchor": "end",
1329
+ "font-weight": I.value.yAxis.bold ? "bold" : "normal"
1330
+ }, D(X.value.yLabels[t]), 9, ot), F.value.rowTotal.value.show ? (C(), v("text", {
1331
+ key: 0,
1332
+ class: "vue-ui-heatmap-row-total",
1333
+ "font-size": I.value.yAxis.fontSize,
1334
+ fill: I.value.yAxis.color,
1335
+ x: W.value,
1336
+ y: K.value.top + K.value.cellSize.height * t + K.value.cellSize.height / 2 + I.value.yAxis.fontSize + I.value.yAxis.offsetY,
1337
+ "text-anchor": "end",
1338
+ "font-weight": I.value.yAxis.bold ? "bold" : "normal"
1339
+ }, D(Qn(t)), 9, st)) : _("", !0)], 64))), 256))], 512)) : _("", !0),
1340
+ I.value.xAxis.show ? (C(), v("g", {
1341
+ key: 4,
1342
+ ref_key: "xAxisLabels",
1343
+ ref: Zt
1344
+ }, [(C(!0), v(h, null, T(X.value.xLabels, (e, t) => (C(), v(h, null, [!I.value.xAxis.showOnlyAtModulo || I.value.xAxis.showOnlyAtModulo && t % I.value.xAxis.showOnlyAtModulo === 0 ? (C(), v("text", {
1345
+ key: 0,
1346
+ class: "vue-ui-heatmap-col-name",
1347
+ "text-anchor": I.value.xAxis.rotation === 0 ? "middle" : I.value.xAxis.rotation < 0 ? "start" : "end",
1348
+ "font-size": I.value.xAxis.fontSize,
1349
+ fill: I.value.xAxis.color,
1350
+ "font-weight": I.value.xAxis.bold ? "bold" : "normal",
1351
+ transform: `translate(${K.value.left + K.value.cellSize.width / 2 + K.value.width / X.value.xLabels.length * t + I.value.xAxis.offsetX + K.value.sumCellXHeight}, ${K.value.topLabelsHeight + I.value.xAxis.offsetY}), rotate(${I.value.xAxis.rotation})`
1352
+ }, D(e), 9, ct)) : _("", !0)], 64))), 256))], 512)) : _("", !0),
1353
+ F.value.columnTotal.value.show ? (C(), v("g", {
1354
+ key: 5,
1355
+ ref_key: "xAxisSums",
1356
+ ref: Qt
1357
+ }, [(C(!0), v(h, null, T(X.value.xLabels, (e, t) => (C(), v("text", {
1358
+ class: "vue-ui-heatmap-col-total",
1359
+ "text-anchor": F.value.columnTotal.value.rotation === 0 ? "middle" : F.value.columnTotal.value.rotation < 0 ? "end" : "start",
1360
+ "font-size": I.value.xAxis.fontSize,
1361
+ fill: I.value.xAxis.color,
1362
+ "font-weight": I.value.xAxis.bold ? "bold" : "normal",
1363
+ transform: `translate(${K.value.left + K.value.cellSize.width / 2 + K.value.width / X.value.xLabels.length * t + I.value.xAxis.offsetX + F.value.columnTotal.value.offsetX + K.value.sumCellXHeight}, ${K.value.bottom + I.value.xAxis.fontSize / 2}), rotate(${F.value.columnTotal.value.rotation})`
1364
+ }, D($n(t)), 9, lt))), 256))], 512)) : _("", !0),
1365
+ M.value ? (C(), v("g", ut, [y("rect", {
1366
+ style: { "pointer-events": "none" },
1367
+ x: M.value.x - F.value.selected.border / 2 + G.value + K.value.sumCellXHeight,
1368
+ y: M.value.y - F.value.selected.border / 2 + G.value,
1369
+ width: K.value.cellSize.width - G.value + F.value.selected.border - G.value,
1370
+ height: K.value.cellSize.height - G.value + F.value.selected.border - G.value,
1371
+ fill: "transparent",
1372
+ stroke: F.value.selected.color,
1373
+ "stroke-width": F.value.selected.border,
1374
+ rx: 1
1375
+ }, null, 8, dt)])) : _("", !0),
1376
+ L.value.crosshairs.show && M.value ? (C(), v("g", ft, [y("line", {
1377
+ x1: K.value.left + K.value.sumCellXHeight,
1378
+ x2: M.value.x + K.value.sumCellXHeight,
1379
+ y1: M.value.y + (K.value.cellSize.height - G.value) / 2,
1380
+ y2: M.value.y + (K.value.cellSize.height - G.value) / 2,
1381
+ stroke: L.value.crosshairs.stroke,
1382
+ "stroke-width": L.value.crosshairs.strokeWidth,
1383
+ "stroke-dasharray": L.value.crosshairs.strokeDasharray,
1384
+ "stroke-linecap": "round"
1385
+ }, null, 8, pt), y("line", {
1386
+ x1: M.value.x + K.value.sumCellXHeight + (K.value.cellSize.width - G.value) / 2,
1387
+ x2: M.value.x + K.value.sumCellXHeight + (K.value.cellSize.width - G.value) / 2,
1388
+ y1: M.value.y,
1389
+ y2: K.value.top,
1390
+ stroke: L.value.crosshairs.stroke,
1391
+ "stroke-width": L.value.crosshairs.strokeWidth,
1392
+ "stroke-dasharray": L.value.crosshairs.strokeDasharray,
1393
+ "stroke-linecap": "round"
1394
+ }, null, 8, mt)])) : _("", !0),
1395
+ E(n.$slots, "svg", { svg: {
1396
+ ...U.value,
1397
+ drawingArea: K.value,
1398
+ cells: zn.value,
1399
+ isPrintingImg: O(yn) || O(bn) || O(_r),
1400
+ isPrintingSvg: O(vr)
1401
+ } }, void 0, !0)
1402
+ ], 46, Ze)),
1403
+ P.value.style.legend.show ? (C(), v("div", {
1404
+ key: 0,
1405
+ ref_key: "legendRight",
1406
+ ref: Jt,
1407
+ class: "vue-ui-heatmap-legend-right",
1408
+ style: S({ "--legend-width": P.value.style.legend.width + "px" })
1409
+ }, [
1410
+ O(un) ? _("", !0) : (C(), v("div", {
1411
+ key: 0,
1412
+ class: "vue-ui-heatmap-legend-label-max",
1413
+ style: S({
1414
+ fontSize: P.value.style.legend.fontSize + "px",
1415
+ color: P.value.style.legend.color
1416
+ })
1417
+ }, D(O(l)(F.value.value.formatter, O(s)(q.value), O(t)({
1418
+ p: I.value.prefix,
1419
+ v: O(s)(q.value),
1420
+ s: I.value.suffix,
1421
+ r: P.value.style.legend.roundingValue
1422
+ }))), 5)),
1423
+ y("div", ht, [y("div", {
1424
+ class: "vue-ui-heatmap-gauge",
1425
+ style: S({ background: `linear-gradient(to bottom, ${F.value.colors.hot}, ${F.value.colors.cold})` })
1426
+ }, [Ue(y("div", {
1427
+ class: "vue-ui-heatmap-gauge-indicator",
1428
+ "data-value": O(l)(F.value.value.formatter, O(s)(Q.value), O(t)({
1429
+ p: I.value.prefix,
1430
+ v: O(s)(Q.value),
1431
+ s: I.value.suffix,
1432
+ r: P.value.style.legend.roundingValue
1433
+ })),
1434
+ style: S({
1435
+ position: "absolute",
1436
+ width: "100%",
1437
+ height: "2px",
1438
+ background: [void 0, null].includes(Q.value) ? "transparent" : O(m)(qn.value.datapoint.color),
1439
+ top: `${Rn(Q.value)}%`,
1440
+ transition: "all 0.2s ease-in-out",
1441
+ "--background-color": P.value.style.backgroundColor,
1442
+ "--gauge-arrow-color": O(m)(P.value.style.backgroundColor),
1443
+ "--gauge-arrow-text-color": O(m)(P.value.style.backgroundColor),
1444
+ "--gauge-arrow-value": Q.value,
1445
+ "--gauge-arrow-font-size": P.value.style.legend.fontSize + "px"
1446
+ })
1447
+ }, [y("div", _t, D(O(l)(F.value.value.formatter, O(s)(Q.value), O(t)({
1448
+ p: I.value.prefix,
1449
+ v: O(s)(Q.value),
1450
+ s: I.value.suffix,
1451
+ r: P.value.style.legend.roundingValue
1452
+ }))), 1)], 12, gt), [[Be, ![void 0, null].includes(Q.value)]])], 4)]),
1453
+ O(un) ? _("", !0) : (C(), v("div", {
1454
+ key: 1,
1455
+ class: "vue-ui-heatmap-legend-label-min",
1456
+ style: S({
1457
+ fontSize: P.value.style.legend.fontSize + "px",
1458
+ color: P.value.style.legend.color
1459
+ })
1460
+ }, D(O(l)(F.value.value.formatter, O(s)(J.value), O(t)({
1461
+ p: I.value.prefix,
1462
+ v: O(s)(J.value),
1463
+ s: I.value.suffix,
1464
+ r: P.value.style.legend.roundingValue
1465
+ }))), 5))
1466
+ ], 4)) : _("", !0),
1467
+ n.$slots.hint ? (C(), v("div", vt, [E(n.$slots, "hint", x(b({
1468
+ hint: P.value.a11y.translations.keyboardNavigation,
1469
+ isVisible: on.value
1470
+ })), void 0, !0)])) : _("", !0)
1471
+ ], 2),
1472
+ n.$slots.watermark ? (C(), v("div", yt, [E(n.$slots, "watermark", x(b({ isPrinting: O(yn) || O(bn) || O(_r) || O(vr) })), void 0, !0)])) : _("", !0),
1473
+ n.$slots.source ? (C(), v("div", {
1474
+ key: 6,
1475
+ ref_key: "source",
1476
+ ref: en,
1477
+ dir: "auto"
1478
+ }, [E(n.$slots, "source", {}, void 0, !0)], 512)) : _("", !0),
1479
+ Oe(O(Je), {
1480
+ teleportTo: P.value.style.tooltip.teleportTo,
1481
+ show: B.value.showTooltip && Lt.value,
1482
+ backgroundColor: P.value.style.tooltip.backgroundColor,
1483
+ color: P.value.style.tooltip.color,
1484
+ borderRadius: P.value.style.tooltip.borderRadius,
1485
+ borderColor: P.value.style.tooltip.borderColor,
1486
+ borderWidth: P.value.style.tooltip.borderWidth,
1487
+ fontSize: P.value.style.tooltip.fontSize,
1488
+ backgroundOpacity: P.value.style.tooltip.backgroundOpacity,
1489
+ position: P.value.style.tooltip.position,
1490
+ offsetX: P.value.style.tooltip.offsetX,
1491
+ offsetY: P.value.style.tooltip.offsetY,
1492
+ parent: j.value,
1493
+ content: Rt.value,
1494
+ isFullscreen: tr.value,
1495
+ isCustom: P.value.style.tooltip.customFormat && typeof P.value.style.tooltip.customFormat == "function",
1496
+ smooth: P.value.style.tooltip.smooth,
1497
+ backdropFilter: P.value.style.tooltip.backdropFilter,
1498
+ smoothForce: P.value.style.tooltip.smoothForce,
1499
+ smoothSnapThreshold: P.value.style.tooltip.smoothSnapThreshold,
1500
+ isA11yMode: an.value === "keyboard",
1501
+ a11yPosition: rn.value
1502
+ }, {
1503
+ "tooltip-before": k(() => [E(n.$slots, "tooltip-before", x(b({ ...qn.value })), void 0, !0)]),
1504
+ tooltip: k(() => [E(n.$slots, "tooltip", x(b({ ...qn.value })), void 0, !0)]),
1505
+ "tooltip-after": k(() => [E(n.$slots, "tooltip-after", x(b({ ...qn.value })), void 0, !0)]),
1506
+ _: 3
1507
+ }, 8, [
1508
+ "teleportTo",
1509
+ "show",
1510
+ "backgroundColor",
1511
+ "color",
1512
+ "borderRadius",
1513
+ "borderColor",
1514
+ "borderWidth",
1515
+ "fontSize",
1516
+ "backgroundOpacity",
1517
+ "position",
1518
+ "offsetX",
1519
+ "offsetY",
1520
+ "parent",
1521
+ "content",
1522
+ "isFullscreen",
1523
+ "isCustom",
1524
+ "smooth",
1525
+ "backdropFilter",
1526
+ "smoothForce",
1527
+ "smoothSnapThreshold",
1528
+ "isA11yMode",
1529
+ "a11yPosition"
1530
+ ]),
1531
+ Ft.value && P.value.userOptions.buttons.table ? (C(), Te(Ie(fr.value.component), Ae({ key: 7 }, fr.value.props, {
1532
+ ref_key: "tableUnit",
1533
+ ref: Wt,
1534
+ onClose: mr
1535
+ }), Ee({
1536
+ content: k(() => [y("div", {
1537
+ ref_key: "tableContainer",
1538
+ ref: Vt,
1539
+ class: "vue-ui-heatmap-table atom-data-table",
1540
+ style: S(`${P.value.table.useDialog ? "" : "max-height: 300px; margin-top: 24px;"}`)
1541
+ }, [y("div", {
1542
+ style: S(`width:100%;overflow-x:auto;position:relative;${P.value.table.useDialog ? "" : "padding-top:36px"};`),
1543
+ class: Me({ "vue-ui-responsive": O(pr) })
1544
+ }, [P.value.table.useDialog ? _("", !0) : (C(), v("div", {
1545
+ key: 0,
1546
+ role: "button",
1547
+ tabindex: "0",
1548
+ style: S(`width:32px; position: absolute; top: 0; left:4px; padding: 0 0px; display: flex; align-items:center;justify-content:center;height: 36px; width: 32px; cursor:pointer; background:${P.value.table.th.backgroundColor};`),
1549
+ onClick: mr,
1550
+ onKeypress: We(mr, ["enter"])
1551
+ }, [Oe(O(Et), {
1552
+ name: "close",
1553
+ stroke: P.value.table.th.color,
1554
+ "stroke-width": 2
1555
+ }, null, 8, ["stroke"])], 36)), y("table", bt, [
1556
+ P.value.table.useDialog ? _("", !0) : (C(), v("caption", {
1557
+ key: 0,
1558
+ style: S(`backgroundColor:${P.value.table.th.backgroundColor};color:${P.value.table.th.color};outline:${P.value.table.th.outline}`)
1559
+ }, [De(D(P.value.style.title.text) + " ", 1), P.value.style.title.subtitle.text ? (C(), v("span", xt, D(P.value.style.title.subtitle.text), 1)) : _("", !0)], 4)),
1560
+ y("thead", null, [y("tr", {
1561
+ role: "row",
1562
+ style: S(`background:${P.value.table.th.backgroundColor};color:${P.value.table.th.color}`)
1563
+ }, [y("th", { style: S(`outline:${P.value.table.th.outline};padding-right:6px`) }, null, 4), (C(!0), v(h, null, T(e.dataset, (e, t) => (C(), v("th", {
1564
+ align: "right",
1565
+ style: S(`outline:${P.value.table.th.outline};padding-right:6px`)
1566
+ }, D(e.name), 5))), 256))], 4)]),
1567
+ y("tbody", null, [(C(!0), v(h, null, T(X.value.xLabels, (n, r) => (C(), v("tr", {
1568
+ role: "row",
1569
+ class: Me({
1570
+ "vue-ui-data-table__tbody__row": !0,
1571
+ "vue-ui-data-table__tbody__row-even": r % 2 == 0,
1572
+ "vue-ui-data-table__tbody__row-odd": r % 2 != 0
1573
+ }),
1574
+ style: S(`background:${P.value.table.td.backgroundColor};color:${P.value.table.td.color}`)
1575
+ }, [y("td", {
1576
+ "data-cell": P.value.table.colNames.xAxis,
1577
+ class: "vue-ui-data-table__tbody__td",
1578
+ style: S(`outline:${P.value.table.td.outline}`)
1579
+ }, [y("div", Ct, D(n), 1)], 12, St), (C(!0), v(h, null, T(e.dataset, (n, i) => (C(), v("td", {
1580
+ class: "vue-ui-data-table__tbody__td",
1581
+ "data-cell": e.dataset[i].name,
1582
+ style: S(`outline:${P.value.table.td.outline}`)
1583
+ }, [y("div", Tt, D(isNaN(n.values[r]) ? "-" : O(t)({
1584
+ p: I.value.prefix,
1585
+ v: n.values[r],
1586
+ s: I.value.suffix,
1587
+ r: P.value.table.td.roundingValue
1588
+ })), 1)], 12, wt))), 256))], 6))), 256))])
1589
+ ])], 6)], 4)]),
1590
+ _: 2
1591
+ }, [P.value.table.useDialog ? {
1592
+ name: "title",
1593
+ fn: k(() => [De(D(fr.value.title), 1)]),
1594
+ key: "0"
1595
+ } : void 0, P.value.table.useDialog ? {
1596
+ name: "actions",
1597
+ fn: k(() => [y("button", {
1598
+ tabindex: "0",
1599
+ class: "vue-ui-user-options-button",
1600
+ onClick: r[0] ||= (e) => er(P.value.userOptions.callbacks.csv),
1601
+ style: S({ cursor: sn.value ? "pointer" : "default" })
1602
+ }, [Oe(O(Et), {
1603
+ name: "fileCsv",
1604
+ stroke: fr.value.props.color
1605
+ }, null, 8, ["stroke"])], 4)]),
1606
+ key: "1"
1607
+ } : void 0]), 1040)) : _("", !0),
1608
+ E(n.$slots, "skeleton", {}, () => [O(un) ? (C(), Te(le, { key: 0 })) : _("", !0)], !0)
1609
+ ], 46, Ye));
1610
+ }
1611
+ }, [["__scopeId", "data-v-73e24ad6"]]);
1612
+ //#endregion
1613
+ export { Je as n, Et as t };