vue-data-ui 3.25.4 → 3.25.6

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 (213) hide show
  1. package/README.md +13 -13
  2. package/dist/{BaseDraggableDialog-BM_R41j8.js → BaseDraggableDialog-Gm4Q30j0.js} +1 -1
  3. package/dist/{BaseIcon-t83PDe9k.js → BaseIcon-D8R6_sKH.js} +5 -5
  4. package/dist/{BaseLegendToggle-__JnV08B.js → BaseLegendToggle-CXQrLjd-.js} +1 -1
  5. package/dist/{BaseZoomControls-Xo16vFa4.js → BaseZoomControls-BTzjVDPM.js} +1 -1
  6. package/dist/{ColorPicker-ZJrR3Olp.js → ColorPicker-CUy15T72.js} +102 -100
  7. package/dist/{DataTable-COIO9gi4.js → DataTable-oiM9uWrQ.js} +1 -1
  8. package/dist/{HillActions-Cl-dNBZR.js → HillActions-Dn8aKOVJ.js} +1 -1
  9. package/dist/{NonSvgPenAndPaper-DS84BAOx.js → NonSvgPenAndPaper-DFXjpRyl.js} +2 -2
  10. package/dist/{PackageVersion-5SWftabm.js → PackageVersion-ur6jKRL5.js} +1 -1
  11. package/dist/{PenAndPaper-B_SdRSKH.js → PenAndPaper-KFzKlvbi.js} +20 -4
  12. package/dist/{SlicerPreview-GvsdvE-h.js → SlicerPreview-B6iHOC9L.js} +1 -1
  13. package/dist/{UserOptions-f3Q0nqrj.js → UserOptions-2x4VklMW.js} +1 -1
  14. package/dist/components/vue-ui-3d-bar.js +1 -1
  15. package/dist/components/vue-ui-accordion.js +1 -1
  16. package/dist/components/vue-ui-age-pyramid.js +1 -1
  17. package/dist/components/vue-ui-annotator.js +1 -1
  18. package/dist/components/vue-ui-bullet.js +1 -1
  19. package/dist/components/vue-ui-bump.js +1 -1
  20. package/dist/components/vue-ui-candlestick.js +1 -1
  21. package/dist/components/vue-ui-carousel-table.js +1 -1
  22. package/dist/components/vue-ui-chestnut.js +1 -1
  23. package/dist/components/vue-ui-chord.js +1 -1
  24. package/dist/components/vue-ui-circle-pack.js +1 -1
  25. package/dist/components/vue-ui-cursor.js +1 -1
  26. package/dist/components/vue-ui-dag.js +1 -1
  27. package/dist/components/vue-ui-dashboard.js +1 -1
  28. package/dist/components/vue-ui-digits.js +1 -1
  29. package/dist/components/vue-ui-donut-evolution.js +1 -1
  30. package/dist/components/vue-ui-donut.js +1 -1
  31. package/dist/components/vue-ui-dumbbell.js +1 -1
  32. package/dist/components/vue-ui-flow.js +1 -1
  33. package/dist/components/vue-ui-funnel.js +1 -1
  34. package/dist/components/vue-ui-galaxy.js +1 -1
  35. package/dist/components/vue-ui-gauge.js +1 -1
  36. package/dist/components/vue-ui-geo.js +1 -1
  37. package/dist/components/vue-ui-gizmo.js +1 -1
  38. package/dist/components/vue-ui-heatmap.js +1 -1
  39. package/dist/components/vue-ui-hill.js +1 -1
  40. package/dist/components/vue-ui-history-plot.js +1 -1
  41. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  42. package/dist/components/vue-ui-icon.js +1 -1
  43. package/dist/components/vue-ui-kpi.js +1 -1
  44. package/dist/components/vue-ui-label.js +1 -1
  45. package/dist/components/vue-ui-mini-loader.js +1 -1
  46. package/dist/components/vue-ui-molecule.js +1 -1
  47. package/dist/components/vue-ui-mood-radar.js +1 -1
  48. package/dist/components/vue-ui-nested-donuts.js +1 -1
  49. package/dist/components/vue-ui-onion.js +1 -1
  50. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  51. package/dist/components/vue-ui-quadrant.js +1 -1
  52. package/dist/components/vue-ui-quick-chart.js +1 -1
  53. package/dist/components/vue-ui-radar.js +1 -1
  54. package/dist/components/vue-ui-rating.js +1 -1
  55. package/dist/components/vue-ui-relation-circle.js +1 -1
  56. package/dist/components/vue-ui-ridgeline.js +1 -1
  57. package/dist/components/vue-ui-rings.js +1 -1
  58. package/dist/components/vue-ui-scatter.js +1 -1
  59. package/dist/components/vue-ui-skeleton.js +1 -1
  60. package/dist/components/vue-ui-smiley.js +1 -1
  61. package/dist/components/vue-ui-spark-trend.js +1 -1
  62. package/dist/components/vue-ui-sparkbar.js +1 -1
  63. package/dist/components/vue-ui-sparkgauge.js +1 -1
  64. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  65. package/dist/components/vue-ui-sparkline.js +1 -1
  66. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  67. package/dist/components/vue-ui-stackbar.js +1 -1
  68. package/dist/components/vue-ui-stackline.js +1 -1
  69. package/dist/components/vue-ui-strip-plot.js +1 -1
  70. package/dist/components/vue-ui-table-heatmap.js +1 -1
  71. package/dist/components/vue-ui-table-sparkline.js +1 -1
  72. package/dist/components/vue-ui-table.js +1 -1
  73. package/dist/components/vue-ui-thermometer.js +1 -1
  74. package/dist/components/vue-ui-timer.js +1 -1
  75. package/dist/components/vue-ui-tiremarks.js +1 -1
  76. package/dist/components/vue-ui-treemap.js +1 -1
  77. package/dist/components/vue-ui-vertical-bar.js +1 -1
  78. package/dist/components/vue-ui-waffle.js +1 -1
  79. package/dist/components/vue-ui-wheel.js +1 -1
  80. package/dist/components/vue-ui-word-cloud.js +1 -1
  81. package/dist/components/vue-ui-world.js +1 -1
  82. package/dist/components/vue-ui-xy-canvas.js +1 -1
  83. package/dist/components/vue-ui-xy.js +1 -1
  84. package/dist/{package-DmsdiyeS.js → package-Dx7M6sYy.js} +1 -1
  85. package/dist/{render-common-zoPh9a78.js → render-common-DETHvNhl.js} +1 -1
  86. package/dist/ssr/vue-ui-donut.js +1 -1
  87. package/dist/ssr/vue-ui-xy.js +1 -1
  88. package/dist/ssr.js +2 -2
  89. package/dist/style.css +1 -1
  90. package/dist/types/vue-data-ui.d.ts +80 -1
  91. package/dist/types/vue-ui-annotator.d.ts +58 -2
  92. package/dist/{useConfig-CyCVHo81.js → useConfig-CIQZ6_r7.js} +1339 -1313
  93. package/dist/{useObjectBindings-ByORl1rV.js → useObjectBindings---mHNfbS.js} +2 -2
  94. package/dist/utils.js +1 -1
  95. package/dist/{vue-data-ui-DTj71yB7.js → vue-data-ui-Dh3_EsHb.js} +70 -70
  96. package/dist/vue-data-ui.js +71 -71
  97. package/dist/vue-ui-3d-bar-i1REAKnM.js +1831 -0
  98. package/dist/{vue-ui-accordion-D4zsdacF.js → vue-ui-accordion-BSmBUjwZ.js} +2 -2
  99. package/dist/vue-ui-age-pyramid-DuHblCNO.js +1293 -0
  100. package/dist/vue-ui-annotator-CTQHAPho.js +3325 -0
  101. package/dist/vue-ui-bullet-CYLnKrmM.js +702 -0
  102. package/dist/{vue-ui-bump-BkOtQNWe.js → vue-ui-bump-DhwySwgn.js} +382 -380
  103. package/dist/vue-ui-candlestick-BpiECaDj.js +1859 -0
  104. package/dist/{vue-ui-carousel-table-CRgbs7jR.js → vue-ui-carousel-table-D-T2yA7-.js} +2 -2
  105. package/dist/vue-ui-chestnut-1MsZ9Q3r.js +2016 -0
  106. package/dist/vue-ui-chord-QBQUSe7r.js +1347 -0
  107. package/dist/vue-ui-circle-pack-ZWEwtesD.js +1635 -0
  108. package/dist/{vue-ui-cursor-BHyXRadA.js → vue-ui-cursor-CHQcHAHQ.js} +2 -2
  109. package/dist/{vue-ui-dag-CyVqaLbF.js → vue-ui-dag-C_inEafb.js} +794 -792
  110. package/dist/{vue-ui-dashboard-7I-7wvCP.js → vue-ui-dashboard-Bs2mBur5.js} +74 -72
  111. package/dist/{vue-ui-digits-BBL8uERO.js → vue-ui-digits-DwE4MoXI.js} +2 -2
  112. package/dist/vue-ui-donut-BM9dMHXj.js +2415 -0
  113. package/dist/{vue-ui-donut-DcgUuefk.js → vue-ui-donut-CbOSJmRu.js} +2 -2
  114. package/dist/vue-ui-donut-evolution-C97_RHus.js +1552 -0
  115. package/dist/vue-ui-dumbbell-DwKa5EL5.js +1533 -0
  116. package/dist/vue-ui-flow-DTTr3YL9.js +1217 -0
  117. package/dist/vue-ui-funnel-C4pkBk3D.js +749 -0
  118. package/dist/vue-ui-galaxy-CuAPLOvX.js +1085 -0
  119. package/dist/vue-ui-gauge-DLDULH26.js +934 -0
  120. package/dist/{vue-ui-geo-jR4P4pbt.js → vue-ui-geo-DXIHhp-G.js} +431 -429
  121. package/dist/{vue-ui-gizmo-D6W86s9o.js → vue-ui-gizmo-PuURiePo.js} +2 -2
  122. package/dist/vue-ui-heatmap-mvWLKB99.js +1555 -0
  123. package/dist/{vue-ui-hill-fFq7pm-g.js → vue-ui-hill-DqsVJkmO.js} +472 -470
  124. package/dist/vue-ui-history-plot-BBVLgt9_.js +1698 -0
  125. package/dist/{vue-ui-horizontal-bar-D3Sft4kp.js → vue-ui-horizontal-bar-y8Q8PZwT.js} +513 -511
  126. package/dist/{vue-ui-kpi-fzLsKlyE.js → vue-ui-kpi-B2hf3kpp.js} +2 -2
  127. package/dist/{vue-ui-label-BSgLalWD.js → vue-ui-label-ClMQ5Gez.js} +1 -1
  128. package/dist/{vue-ui-mini-loader-BL2odRfu.js → vue-ui-mini-loader-DtPOVIkK.js} +1 -1
  129. package/dist/vue-ui-molecule-eeW1Pmg8.js +929 -0
  130. package/dist/{vue-ui-mood-radar-bvGx6XgG.js → vue-ui-mood-radar-Dd1qfUiu.js} +378 -376
  131. package/dist/vue-ui-nested-donuts-CUARCr6O.js +1503 -0
  132. package/dist/vue-ui-onion-NoxHP0cG.js +1235 -0
  133. package/dist/{vue-ui-parallel-coordinate-plot-B_QJ4N9o.js → vue-ui-parallel-coordinate-plot-Cp3pCyxK.js} +409 -407
  134. package/dist/vue-ui-quadrant-C3kQtaeX.js +1967 -0
  135. package/dist/{vue-ui-quick-chart-BFscCR59.js → vue-ui-quick-chart-BZq517pL.js} +8 -6
  136. package/dist/vue-ui-radar-DvNrl4uD.js +1374 -0
  137. package/dist/vue-ui-rating-CWFMoYpE.js +359 -0
  138. package/dist/vue-ui-relation-circle-1iS6C0xx.js +905 -0
  139. package/dist/vue-ui-ridgeline-B-EZiPCF.js +1630 -0
  140. package/dist/vue-ui-rings-BXuwrHos.js +1252 -0
  141. package/dist/vue-ui-scatter-ByL-ZZ3B.js +2405 -0
  142. package/dist/{vue-ui-skeleton-zmbcOVEf.js → vue-ui-skeleton-BcU1onF6.js} +698 -698
  143. package/dist/vue-ui-smiley-DJVusLnp.js +376 -0
  144. package/dist/vue-ui-spark-trend-DjS31avb.js +457 -0
  145. package/dist/vue-ui-sparkbar-1Al_TLw1.js +401 -0
  146. package/dist/vue-ui-sparkgauge-CwLo53Y8.js +268 -0
  147. package/dist/vue-ui-sparkhistogram-CGw6SThG.js +589 -0
  148. package/dist/{vue-ui-sparkline-Dv7XrEzO.js → vue-ui-sparkline-CSZGBFfI.js} +511 -511
  149. package/dist/vue-ui-sparkstackbar-B8dloLMp.js +738 -0
  150. package/dist/vue-ui-stackbar-FvNd77t1.js +2355 -0
  151. package/dist/vue-ui-stackline-CP7PkqiG.js +2469 -0
  152. package/dist/vue-ui-strip-plot-DSMlDkv1.js +1740 -0
  153. package/dist/{vue-ui-table-heatmap-Dv_ZKKm3.js → vue-ui-table-heatmap-DnP3pzh2.js} +2 -2
  154. package/dist/vue-ui-table-rwKtnJKt.js +1352 -0
  155. package/dist/vue-ui-table-sparkline-B6wyEAyC.js +738 -0
  156. package/dist/{vue-ui-thermometer-DytlLJ32.js → vue-ui-thermometer-D0_KsB-y.js} +194 -192
  157. package/dist/{vue-ui-timer-CvHP4HoW.js → vue-ui-timer-1Z2zginj.js} +153 -153
  158. package/dist/vue-ui-tiremarks-zbl7aooy.js +540 -0
  159. package/dist/vue-ui-treemap-Drs4gK6L.js +1733 -0
  160. package/dist/vue-ui-waffle-DqUVsVNE.js +1621 -0
  161. package/dist/vue-ui-wheel-DLCBPW9t.js +873 -0
  162. package/dist/vue-ui-word-cloud-8Agk9h6c.js +1710 -0
  163. package/dist/{vue-ui-world-D0_2upjg.js → vue-ui-world-BOBHo7-L.js} +526 -524
  164. package/dist/vue-ui-xy-CSTJzRkk.js +5283 -0
  165. package/dist/{vue-ui-xy-D_5FfaH-.js → vue-ui-xy-Dmk1gQkI.js} +2 -2
  166. package/dist/vue-ui-xy-canvas-DANPuyf4.js +1824 -0
  167. package/dist/{vue_ui_age_pyramid-BY6c-oX_.js → vue_ui_age_pyramid-B2R66DgQ.js} +15 -6
  168. package/package.json +1 -1
  169. package/dist/vue-ui-3d-bar-CH8SpxS2.js +0 -1829
  170. package/dist/vue-ui-age-pyramid-B9MUVi75.js +0 -1241
  171. package/dist/vue-ui-annotator-CmlcWPIm.js +0 -2886
  172. package/dist/vue-ui-bullet-n8KNnDwh.js +0 -700
  173. package/dist/vue-ui-candlestick-Bxlvqk49.js +0 -1857
  174. package/dist/vue-ui-chestnut-ByDKbkG9.js +0 -2014
  175. package/dist/vue-ui-chord-DQRBgVOx.js +0 -1345
  176. package/dist/vue-ui-circle-pack-CBBc0HOe.js +0 -1633
  177. package/dist/vue-ui-donut-DfiocufT.js +0 -2413
  178. package/dist/vue-ui-donut-evolution-BoqO8By2.js +0 -1550
  179. package/dist/vue-ui-dumbbell-7M_oUQdi.js +0 -1529
  180. package/dist/vue-ui-flow-CoylrfnO.js +0 -1215
  181. package/dist/vue-ui-funnel-DaBYHWIC.js +0 -747
  182. package/dist/vue-ui-galaxy-BIebStQ3.js +0 -1083
  183. package/dist/vue-ui-gauge-CwdTmiRP.js +0 -932
  184. package/dist/vue-ui-heatmap-DXYlGwqR.js +0 -1553
  185. package/dist/vue-ui-history-plot-CgIELoD2.js +0 -1696
  186. package/dist/vue-ui-molecule-DeHWkkhy.js +0 -929
  187. package/dist/vue-ui-nested-donuts-CeAV2xPk.js +0 -1501
  188. package/dist/vue-ui-onion-B7oFulsQ.js +0 -1233
  189. package/dist/vue-ui-quadrant-DrKnz37q.js +0 -1965
  190. package/dist/vue-ui-radar-Bzx69q8f.js +0 -1372
  191. package/dist/vue-ui-rating-CimC9FQ9.js +0 -359
  192. package/dist/vue-ui-relation-circle-DIQYyDGb.js +0 -903
  193. package/dist/vue-ui-ridgeline-CPEnM45x.js +0 -1621
  194. package/dist/vue-ui-rings-qPL5Iwji.js +0 -1250
  195. package/dist/vue-ui-scatter-BB0ClTsU.js +0 -2403
  196. package/dist/vue-ui-smiley-DzPkCMN-.js +0 -376
  197. package/dist/vue-ui-spark-trend-Ciq7-k_q.js +0 -457
  198. package/dist/vue-ui-sparkbar-D1M7-naP.js +0 -401
  199. package/dist/vue-ui-sparkgauge-rsqaeR_n.js +0 -268
  200. package/dist/vue-ui-sparkhistogram-C4WXt2Ni.js +0 -589
  201. package/dist/vue-ui-sparkstackbar-DDOXdeV-.js +0 -738
  202. package/dist/vue-ui-stackbar-C_hMnOLb.js +0 -2353
  203. package/dist/vue-ui-stackline-BHGi63lD.js +0 -2467
  204. package/dist/vue-ui-strip-plot-Cygpn-l8.js +0 -1738
  205. package/dist/vue-ui-table-BQna1wL6.js +0 -1352
  206. package/dist/vue-ui-table-sparkline-BCuimtk6.js +0 -738
  207. package/dist/vue-ui-tiremarks-BvjdZwgh.js +0 -538
  208. package/dist/vue-ui-treemap-C5OpqzSc.js +0 -1731
  209. package/dist/vue-ui-waffle-B7T_Zzan.js +0 -1619
  210. package/dist/vue-ui-wheel-D1B0k7IW.js +0 -871
  211. package/dist/vue-ui-word-cloud-C4pX6jop.js +0 -1708
  212. package/dist/vue-ui-xy-Ck41KYqF.js +0 -5281
  213. package/dist/vue-ui-xy-canvas-B_8Mu19r.js +0 -1824
@@ -1,1553 +0,0 @@
1
- import { t as e } from "./rolldown-runtime-Dy4uBu1J.js";
2
- import { $ as t, $t as n, Ct as r, D as i, Pt as a, X as o, Zt as s, b as c, ht as l, i as u, lt as d, nt as f, q as p, r as m, t as ee, xt as te } from "./lib-Dql7cqyA.js";
3
- import { n as ne, t as re } from "./useHints-Dq_w2E8B.js";
4
- import { t as ie } from "./useTimeLabels-d2f-W1L4.js";
5
- import { t as ae } from "./useConfig-CyCVHo81.js";
6
- import { t as oe } from "./usePrinter-DISD7q5m.js";
7
- import { n as se, t as ce } from "./BaseScanner-DZvpgOjM.js";
8
- import { t as le } from "./useNestedProp-Chvyfpl-.js";
9
- import { t as ue } from "./useThemeCheck-C43Tcqmk.js";
10
- import { t as de } from "./useChartExport-iwOqiIWX.js";
11
- import { t as fe } from "./useTimeLabelCollider-AEcY4Ioe.js";
12
- import { t as pe } from "./img-DhGApYG0.js";
13
- import { n as me } from "./Title-CPHi-evi.js";
14
- import { t as he } from "./_plugin-vue_export-helper-B3ysoDQm.js";
15
- import { l as ge, t as _e } from "./useResponsive-ZtArZtUf.js";
16
- import { t as ve } from "./vue-ui-accordion-D4zsdacF.js";
17
- import { t as ye } from "./A11yDataTable-DdRsVULz.js";
18
- import { t as be } from "./useUserOptionState-DK-_1ddE.js";
19
- import { t as xe } from "./useChartAccessibility-DYqac8yF.js";
20
- import { t as Se } from "./useTableResponsive-BAqJPR68.js";
21
- import { t as Ce } from "./vue_ui_heatmap-B2BBBSWG.js";
22
- import { Fragment as h, computed as g, createBlock as we, createCommentVNode as _, createElementBlock as v, createElementVNode as y, createSlots as Te, createTextVNode as Ee, createVNode as De, defineAsyncComponent as b, guardReactiveProps as x, mergeProps as Oe, nextTick as ke, normalizeClass as Ae, normalizeProps as S, normalizeStyle as C, onBeforeUnmount as je, onMounted as Me, openBlock as w, reactive as Ne, ref as T, renderList as E, renderSlot as D, resolveDynamicComponent as Pe, shallowRef as Fe, toDisplayString as O, toRefs as Ie, unref as k, useCssVars as Le, vShow as Re, watch as ze, watchEffect as Be, withCtx as A, withDirectives as Ve, withKeys as He } from "vue";
23
- //#region src/useLabelObserverEfffect.js
24
- function Ue({ 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
- Be((t) => {
42
- let n = e.value;
43
- if (!n) return;
44
- let r = !1;
45
- (async () => {
46
- await ke();
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 We = {
93
- mounted(e, t) {
94
- Ge(e, t.value);
95
- },
96
- updated(e, t) {
97
- Ge(e, t.value);
98
- }
99
- };
100
- function Ge(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 Ke = /* @__PURE__ */ e({ default: () => wt }), qe = ["id"], Je = ["id"], Ye = [
126
- "xmlns",
127
- "aria-describedby",
128
- "viewBox"
129
- ], Xe = [
130
- "x",
131
- "y",
132
- "width",
133
- "height"
134
- ], Ze = [
135
- "x",
136
- "y",
137
- "height",
138
- "width",
139
- "fill",
140
- "stroke",
141
- "stroke-width"
142
- ], Qe = [
143
- "x",
144
- "y",
145
- "height",
146
- "width",
147
- "fill",
148
- "stroke",
149
- "stroke-width"
150
- ], $e = [
151
- "x",
152
- "y",
153
- "width",
154
- "height",
155
- "fill",
156
- "stroke",
157
- "stroke-width"
158
- ], et = [
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
- ], tt = [
172
- "font-size",
173
- "font-weight",
174
- "fill",
175
- "x",
176
- "y"
177
- ], nt = [
178
- "x",
179
- "y",
180
- "width",
181
- "height",
182
- "fill",
183
- "stroke",
184
- "stroke-width"
185
- ], rt = [
186
- "x",
187
- "y",
188
- "width",
189
- "height",
190
- "fill",
191
- "stroke",
192
- "stroke-width"
193
- ], it = [
194
- "font-size",
195
- "fill",
196
- "x",
197
- "y",
198
- "font-weight"
199
- ], at = [
200
- "font-size",
201
- "fill",
202
- "x",
203
- "y",
204
- "font-weight"
205
- ], ot = [
206
- "text-anchor",
207
- "font-size",
208
- "fill",
209
- "font-weight",
210
- "transform"
211
- ], st = [
212
- "text-anchor",
213
- "font-size",
214
- "fill",
215
- "font-weight",
216
- "transform"
217
- ], ct = { key: 6 }, lt = [
218
- "x",
219
- "y",
220
- "width",
221
- "height",
222
- "stroke",
223
- "stroke-width"
224
- ], ut = { key: 7 }, dt = [
225
- "x1",
226
- "x2",
227
- "y1",
228
- "y2",
229
- "stroke",
230
- "stroke-width",
231
- "stroke-dasharray"
232
- ], ft = [
233
- "x1",
234
- "x2",
235
- "y1",
236
- "y2",
237
- "stroke",
238
- "stroke-width",
239
- "stroke-dasharray"
240
- ], pt = { class: "vue-ui-heatmap-legend-gauge-right" }, mt = ["data-value"], ht = { class: "vue-ui-heatmap-gauge-indicator-value" }, gt = {
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
- }, _t = {
251
- key: 5,
252
- class: "vue-data-ui-watermark"
253
- }, vt = { class: "vue-ui-data-table" }, yt = { key: 0 }, bt = ["data-cell"], xt = { style: {
254
- display: "flex",
255
- "align-items": "center",
256
- gap: "5px",
257
- "justify-content": "flex-end",
258
- width: "100%",
259
- "padding-right": "3px"
260
- } }, St = ["data-cell"], Ct = { style: {
261
- display: "flex",
262
- "align-items": "center",
263
- gap: "5px",
264
- "justify-content": "flex-end",
265
- width: "100%",
266
- "padding-right": "3px"
267
- } }, wt = /*#__PURE__*/ he({
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: he, emit: Ge }) {
285
- Le((e) => ({ v3fc9460c: e.tdo }));
286
- let Ke = b(() => import("./Tooltip-hhrkQ3Lk.js")), wt = b(() => import("./BaseIcon-t83PDe9k.js").then((e) => e.n)), Tt = b(() => import("./PenAndPaper-B_SdRSKH.js").then((e) => e.t)), Et = b(() => import("./UserOptions-f3Q0nqrj.js").then((e) => e.n)), Dt = b(() => import("./PackageVersion-5SWftabm.js").then((e) => e.t)), Ot = b(() => import("./BaseDraggableDialog-BM_R41j8.js").then((e) => e.n)), { vue_ui_heatmap: kt } = ae(), { isThemeValid: At, warnInvalidTheme: jt } = ue(), j = e, Mt = Ge, Nt = g({
287
- get() {
288
- return !!j.dataset && j.dataset.length;
289
- },
290
- set(e) {
291
- return e;
292
- }
293
- }), M = T(p()), N = T(null), Pt = T(!1), Ft = T(""), It = T(void 0), P = T(null), Lt = T(0), Rt = T(null), zt = T(0), Bt = T(null), Vt = T(null), Ht = T(null), Ut = T(null), Wt = T(null), Gt = T(null), Kt = T(null), qt = T(null), Jt = T(null), Yt = T(null), Xt = T(null), Zt = T(null), Qt = Fe(null), F = T(null), $t = T(null), en = T({
294
- x: 0,
295
- y: 0
296
- }), tn = T("pointer"), nn = T(!1), I = T(pn());
297
- ne({
298
- config: () => I.value,
299
- dataset: () => j.dataset,
300
- component: "VueUiHeatmap",
301
- rules: [re.emptyArray, re.noHint]
302
- });
303
- let rn = g(() => I.value.userOptions.useCursorPointer);
304
- function an() {
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 on = g(() => s({
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: I.value.skeletonConfig ?? {}
340
- })), { loading: sn, FINAL_DATASET: L, manualLoading: cn } = se({
341
- ...Ie(j),
342
- FINAL_CONFIG: I,
343
- prepareConfig: pn,
344
- callback: () => {
345
- Promise.resolve().then(async () => {
346
- await ke(), N.value && n(N.value, {
347
- delta: .1,
348
- delay: 250
349
- });
350
- });
351
- },
352
- skeletonDataset: j.config?.skeletonDataset ?? an(),
353
- skeletonConfig: s({
354
- defaultConfig: I.value,
355
- userConfig: on.value
356
- })
357
- }), { userOptionsVisible: ln, setUserOptionsVisibility: un, keepUserOptionState: dn } = be({ config: I.value }), { svgRef: R } = xe({ config: I.value.style.title });
358
- function fn(e) {
359
- un(e);
360
- }
361
- function pn() {
362
- let e = le({
363
- userConfig: j.config,
364
- defaultConfig: kt
365
- }), t = {}, n = e.theme;
366
- if (n) {
367
- if (!At.value(e)) jt(e), t = e;
368
- else {
369
- let r = le({
370
- userConfig: Ce[n] || j.config,
371
- defaultConfig: e
372
- });
373
- t = { ...le({
374
- userConfig: j.config,
375
- defaultConfig: r
376
- }) };
377
- }
378
- } else t = e;
379
- return t;
380
- }
381
- ze(() => j.config, (e) => {
382
- sn.value || (I.value = pn()), ln.value = !I.value.userOptions.showOnChartHover, xn(), zt.value += 1, z.value.showTable = I.value.table.show, z.value.showTooltip = I.value.style.tooltip.show, Sn.value = I.value.style.layout.width, Cn.value = I.value.style.layout.height;
383
- }, { deep: !0 }), ze(() => j.dataset, (e) => {
384
- Array.isArray(e) && e.length > 0 && (cn.value = !1), xn();
385
- }, { deep: !0 });
386
- let { isPrinting: mn, isImaging: hn, generatePdf: gn, generateImage: _n } = oe({
387
- elementId: `heatmap__${M.value}`,
388
- fileName: I.value.style.title.text || "vue-ui-heatmap",
389
- options: I.value.userOptions.print
390
- }), vn = g(() => I.value.userOptions.show && !I.value.style.title.text), z = T({
391
- showTable: I.value.table.show,
392
- showTooltip: I.value.style.tooltip.show
393
- });
394
- ze(I, () => {
395
- z.value = {
396
- showTable: I.value.table.show,
397
- showTooltip: I.value.style.tooltip.show
398
- };
399
- }, { immediate: !0 });
400
- let yn = g(() => I.value.table.responsiveBreakpoint), B = T(null), bn = g(() => I.value.debug);
401
- function xn() {
402
- if (a(j.dataset) && (f({
403
- componentName: "VueUiHeatmap",
404
- type: "dataset",
405
- debug: bn.value
406
- }), Nt.value = !1, cn.value = !0), a(j.dataset) || (cn.value = I.value.loading), I.value.responsive) {
407
- let e = ge(() => {
408
- let { width: e, height: t } = _e({
409
- chart: N.value,
410
- title: I.value.style.title.text ? Ut.value : null,
411
- source: Zt.value,
412
- noTitle: Wt.value
413
- });
414
- requestAnimationFrame(() => {
415
- Sn.value = e, Cn.value = t;
416
- });
417
- });
418
- B.value && (Qt.value && B.value.unobserve(Qt.value), B.value.disconnect()), B.value = new ResizeObserver(e), Qt.value = N.value.parentNode, B.value.observe(Qt.value);
419
- }
420
- }
421
- je(() => {
422
- B.value && (Qt.value && B.value.unobserve(Qt.value), B.value.disconnect());
423
- }), Me(() => {
424
- xn();
425
- });
426
- let V = g(() => Math.max(...L.value.flatMap((e) => (e.values || []).length))), Sn = T(I.value.style.layout.width), Cn = T(I.value.style.layout.height), H = g(() => ({
427
- width: Math.max(10, Sn.value),
428
- height: Math.max(10, Cn.value)
429
- })), U = T(0);
430
- Ue({
431
- elementRef: Jt,
432
- callback: ge((e) => {
433
- e !== U.value && (U.value = e);
434
- }, 100),
435
- attr: "height"
436
- });
437
- let W = T(0);
438
- Ue({
439
- elementRef: Kt,
440
- callback: ge((e) => {
441
- e !== W.value && (W.value = e);
442
- }, 100),
443
- attr: "width"
444
- });
445
- let wn = T(0);
446
- Ue({
447
- elementRef: Yt,
448
- callback: ge((e) => {
449
- e !== wn.value && (wn.value = e);
450
- }, 100),
451
- attr: "height"
452
- }), je(() => {
453
- U.value = 0, W.value = 0, wn.value = 0;
454
- });
455
- let G = g(() => Math.min(H.value.height, H.value.width) / 1e3 * I.value.style.layout.cells.spacing), K = g(() => {
456
- let e = 0;
457
- I.value.style.legend.show && (e = I.value.style.legend.width);
458
- let t = I.value.style.layout.padding, n = I.value.style.layout.dataLabels.xAxis.fontSize / 3, r = I.value.style.layout.dataLabels.xAxis.fontSize / 2, i = H.value.height - t.top - t.bottom - U.value - n, a = H.value.width / 60, o = {
459
- x: G.value * V.value,
460
- y: G.value * ((L.value || []).length + 1)
461
- }, s = H.value.width - t.left - t.right - o.x - a * 2 - 2 - e - W.value, c = i - a - o.y - wn.value - r - I.value.style.layout.cells.columnTotal.value.offsetY, l = {
462
- width: Math.max(3, s / V.value),
463
- height: Math.max(3, c / (L.value.length ?? 1))
464
- };
465
- return {
466
- top: t.top + U.value + a + n,
467
- topLabelsHeight: U.value,
468
- sumCellXHeight: a,
469
- height: c,
470
- left: t.left + W.value + a / 2,
471
- right: t.right - e,
472
- bottom: H.value.height - t.bottom - wn.value,
473
- width: s,
474
- cellSize: l
475
- };
476
- }), q = g(() => Math.max(...L.value.flatMap((e) => e.values))), Tn = g(() => Math.min(...L.value.flatMap((e) => e.values))), J = g(() => {
477
- let e = L.value.flatMap((e) => e.values);
478
- return e.reduce((e, t) => e + t, 0) / e.length;
479
- }), En = T([]), Dn = T([]), On = 0;
480
- Be(() => {
481
- let e = ++On;
482
- (async () => {
483
- let t = I.value.style.layout.dataLabels.yAxis, n = await ie({
484
- values: t.values.length ? t.values : L.value.map((e) => e.name),
485
- maxDatapoints: L.value.length,
486
- formatter: t.datetimeFormatter,
487
- start: 0,
488
- end: L.value.length
489
- });
490
- e === On && (En.value = n);
491
- })();
492
- });
493
- let kn = 0;
494
- Be(() => {
495
- let e = ++kn;
496
- (async () => {
497
- let t = I.value.style.layout.dataLabels.xAxis, n = await ie({
498
- values: t.values,
499
- maxDatapoints: V.value,
500
- formatter: t.datetimeFormatter,
501
- start: 0,
502
- end: V.value
503
- });
504
- e === kn && (Dn.value = n);
505
- })();
506
- });
507
- let Y = g(() => {
508
- let e = En.value.map((e) => e.text), t = Dn.value.map((e) => e.text), n = L.value.map((e) => e.values.reduce((e, t) => e + t, 0)), r = Math.max(...n), i = Math.min(...n), a = [];
509
- for (let e = 0; e < V.value; e += 1) a.push(L.value.map((t) => t.values[e] || 0).reduce((e, t) => e + t, 0));
510
- let o = Math.max(...a), s = Math.min(...a);
511
- return {
512
- yTotals: n.map((e) => ({
513
- total: e,
514
- proportion: isNaN(e / r) ? 0 : e / r,
515
- color: te(I.value.style.layout.cells.colors.cold, I.value.style.layout.cells.colors.hot, i, r, e)
516
- })),
517
- xTotals: a.map((e) => ({
518
- total: e,
519
- proportion: isNaN(e / o) ? 0 : e / o,
520
- color: te(I.value.style.layout.cells.colors.cold, I.value.style.layout.cells.colors.hot, s, o, e)
521
- })),
522
- yLabels: e,
523
- xLabels: t.slice(0, V.value)
524
- };
525
- }), X = g(() => (L.value.forEach((e, t) => {
526
- l({
527
- datasetObject: e,
528
- requiredAttributes: ["values"]
529
- }).forEach((e) => {
530
- f({
531
- componentName: "VueUiHeatmap",
532
- type: "datasetSerieAttribute",
533
- property: "values",
534
- index: t,
535
- debug: bn.value
536
- });
537
- });
538
- }), L.value.map((e, t) => ({
539
- ...e,
540
- temperatures: (e.values || []).map((e, n) => e >= J.value ? {
541
- side: "up",
542
- color: te(I.value.style.layout.cells.colors.cold, I.value.style.layout.cells.colors.hot, Tn.value, q.value, e),
543
- ratio: Math.abs(Math.abs(e - J.value) / Math.abs(q.value - J.value)) > 1 ? 1 : Math.abs(Math.abs(e - J.value) / Math.abs(q.value - J.value)),
544
- value: e,
545
- yAxisName: Y.value.yLabels[t],
546
- xAxisName: Y.value.xLabels[n],
547
- id: `vue-data-ui-heatmap-cell-${p()}`
548
- } : {
549
- side: "down",
550
- ratio: Math.abs(1 - Math.abs(e) / Math.abs(J.value)) > 1 ? 1 : Math.abs(1 - Math.abs(e) / Math.abs(J.value)),
551
- color: te(I.value.style.layout.cells.colors.cold, I.value.style.layout.cells.colors.hot, Tn.value, q.value, e),
552
- value: e,
553
- yAxisName: Y.value.yLabels[t],
554
- xAxisName: Y.value.xLabels[n],
555
- id: `vue-data-ui-heatmap-cell-${p()}`
556
- })
557
- })))), An = g(() => L.value.length), jn = Ne(Array(An.value * V.value || 1).fill(!1)), Mn = g(() => jn.some((e) => e));
558
- function Nn(e, t) {
559
- jn[e] = t;
560
- }
561
- let Pn = Ne(Array(An.value * V.value || 1).fill(!1)), Fn = g(() => Pn.some((e) => e));
562
- function In(e, t) {
563
- Pn[e] = t;
564
- }
565
- let Z = T(null), Ln = T(null);
566
- function Rn() {
567
- Pt.value = !1, It.value = void 0, Z.value = null, P.value = null, F.value = null, $t.value = null;
568
- }
569
- function zn(e) {
570
- if (!R.value || !e) return;
571
- let t = R.value.querySelector(`[data-a11y-cell-id="${e}"]`);
572
- if (!t) return;
573
- let n = t.getBoundingClientRect();
574
- en.value = {
575
- x: n.left + n.width / 2,
576
- y: n.top + n.height / 2
577
- };
578
- }
579
- function Bn(e, t, n, i, a = "pointer", s = null) {
580
- if (I.value.events.datapointEnter && I.value.events.datapointEnter({
581
- datapoint: e,
582
- seriesIndex: t
583
- }), !z.value.showTooltip) return;
584
- tn.value = a, F.value = s, $t.value = e.id, P.value = {
585
- x: n,
586
- y: i
587
- };
588
- let { value: c, yAxisName: l, xAxisName: f, id: p } = e;
589
- It.value = p, Z.value = c, Ln.value = {
590
- datapoint: e,
591
- seriesIndex: t,
592
- series: X.value,
593
- config: I.value
594
- }, Pt.value = !0;
595
- let m = "", ee = I.value.style.tooltip.customFormat;
596
- r(ee) && d(() => ee({
597
- datapoint: e,
598
- seriesIndex: t,
599
- series: X.value,
600
- config: I.value
601
- })) ? Ft.value = ee({
602
- datapoint: e,
603
- seriesIndex: t,
604
- series: X.value,
605
- config: I.value
606
- }) : (m += `<div>${l} ${f ? l ? ` - ${f}` : `${f}` : ""}</div>`, m += `<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${I.value.style.tooltip.borderColor};font-weight:bold;display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:center"><span style="color:${te(I.value.style.layout.cells.colors.cold, I.value.style.layout.cells.colors.hot, Tn.value, q.value, c)}">⬤</span><span>${isNaN(c) ? "-" : u(I.value.style.layout.cells.value.formatter, c, o({
607
- p: I.value.style.layout.dataLabels.prefix,
608
- v: c,
609
- s: I.value.style.layout.dataLabels.suffix,
610
- r: I.value.style.tooltip.roundingValue
611
- }), {
612
- datapoint: e,
613
- seriesIndex: t
614
- })}</span></div>`, Ft.value = `<div style="font-size:${I.value.style.tooltip.fontSize}px">${m}</div>`), a === "keyboard" && ke(() => {
615
- zn(e.id);
616
- });
617
- }
618
- function Vn({ datapoint: e, seriesIndex: t }) {
619
- I.value.events.datapointLeave && I.value.events.datapointLeave({
620
- datapoint: e,
621
- seriesIndex: t
622
- }), ($t.value !== e.id || tn.value !== "keyboard") && (Pt.value = !1, It.value = void 0, Z.value = null, P.value = null);
623
- }
624
- function Hn(e) {
625
- return u(I.value.style.layout.cells.value.formatter, Y.value.yTotals[e].total, o({
626
- p: I.value.style.layout.dataLabels.prefix,
627
- v: Y.value.yTotals[e].total,
628
- s: I.value.style.layout.dataLabels.suffix,
629
- r: I.value.style.layout.cells.value.roundingValue
630
- }), {
631
- datapoint: Y.value.yTotals[e],
632
- rowIndex: e
633
- });
634
- }
635
- function Un(e) {
636
- return u(I.value.style.layout.cells.value.formatter, Y.value.xTotals[e].total, o({
637
- p: I.value.style.layout.dataLabels.prefix,
638
- v: Y.value.xTotals[e].total,
639
- s: I.value.style.layout.dataLabels.suffix,
640
- r: I.value.style.layout.cells.value.roundingValue
641
- }), {
642
- datapoint: Y.value.xTotals[e],
643
- colIndex: e
644
- });
645
- }
646
- g(() => ({
647
- head: L.value.map((e) => ({ name: e.name })),
648
- body: L.value.map((e) => e.values)
649
- }));
650
- function Wn(e = null) {
651
- ke(() => {
652
- let n = ["", ...L.value.map((e, t) => e.name)], r = [];
653
- for (let e = 0; e < Y.value.xLabels.length; e += 1) {
654
- let t = [Y.value.xLabels[e]];
655
- for (let n = 0; n < L.value.length; n += 1) t.push([L.value[n].values[e]]);
656
- r.push(t);
657
- }
658
- let a = [
659
- [I.value.style.title.text],
660
- [I.value.style.title.subtitle.text],
661
- [
662
- [""],
663
- [""],
664
- [""]
665
- ],
666
- n
667
- ].concat(r), o = i(a);
668
- e ? e(o) : t({
669
- csvContent: o,
670
- title: I.value.style.title.text || "vue-ui-heatmap"
671
- });
672
- });
673
- }
674
- let Q = T(!1);
675
- function Gn(e) {
676
- Q.value = e, Lt.value += 1;
677
- }
678
- function Kn() {
679
- z.value.showTable = !z.value.showTable;
680
- }
681
- function qn() {
682
- z.value.showTooltip = !z.value.showTooltip;
683
- }
684
- let Jn = T(!1);
685
- function Yn() {
686
- Jn.value = !Jn.value;
687
- }
688
- function Xn(e, t) {
689
- I.value.events.datapointClick && I.value.events.datapointClick({
690
- datapoint: e,
691
- seriesIndex: t
692
- }), Mt("selectDatapoint", e);
693
- }
694
- function Zn() {
695
- return X.value;
696
- }
697
- async function Qn({ scale: e = 2 } = {}) {
698
- if (!N.value) return;
699
- let { width: t, height: n } = N.value.getBoundingClientRect(), r = t / n, { imageUri: i, base64: a } = await pe({
700
- domElement: N.value,
701
- base64: !0,
702
- img: !0,
703
- scale: e
704
- });
705
- return {
706
- imageUri: i,
707
- base64: a,
708
- title: I.value.style.title.text,
709
- width: t,
710
- height: n,
711
- aspectRatio: r
712
- };
713
- }
714
- let $n = g(() => ({
715
- start: 0,
716
- end: V.value
717
- })), er = g(() => Y.value.xLabels);
718
- fe({
719
- timeLabelsEls: Jt,
720
- timeLabels: er,
721
- slicer: $n,
722
- configRef: I,
723
- rotationPath: [
724
- "style",
725
- "layout",
726
- "dataLabels",
727
- "xAxis",
728
- "rotation"
729
- ],
730
- autoRotatePath: [
731
- "style",
732
- "layout",
733
- "dataLabels",
734
- "xAxis",
735
- "autoRotate",
736
- "enable"
737
- ],
738
- isAutoSize: !1,
739
- targetClass: ".vue-ui-heatmap-col-name",
740
- rotation: I.value.style.layout.dataLabels.xAxis.autoRotate.angle,
741
- width: Sn,
742
- height: Cn
743
- }), fe({
744
- timeLabelsEls: Yt,
745
- timeLabels: er,
746
- slicer: $n,
747
- configRef: I,
748
- rotationPath: [
749
- "style",
750
- "layout",
751
- "cells",
752
- "columnTotal",
753
- "value",
754
- "rotation"
755
- ],
756
- autoRotatePath: [
757
- "style",
758
- "layout",
759
- "cells",
760
- "columnTotal",
761
- "value",
762
- "autoRotate",
763
- "enable"
764
- ],
765
- isAutoSize: !1,
766
- targetClass: ".vue-ui-heatmap-col-total",
767
- rotation: I.value.style.layout.cells.columnTotal.value.autoRotate.angle,
768
- width: Sn,
769
- height: Cn
770
- });
771
- let tr = g(() => {
772
- let e = I.value.table.useDialog && !I.value.table.show, t = z.value.showTable;
773
- return {
774
- component: e ? Ot : ve,
775
- title: `${I.value.style.title.text}${I.value.style.title.subtitle.text ? `: ${I.value.style.title.subtitle.text}` : ""}`,
776
- props: e ? {
777
- backgroundColor: I.value.table.th.backgroundColor,
778
- color: I.value.table.th.color,
779
- headerColor: I.value.table.th.color,
780
- headerBg: I.value.table.th.backgroundColor,
781
- isFullscreen: Q.value,
782
- fullscreenParent: N.value,
783
- forcedWidth: Math.min(800, window.innerWidth * .8),
784
- isCursorPointer: rn.value
785
- } : {
786
- hideDetails: !0,
787
- config: {
788
- open: t,
789
- maxHeight: 1e4,
790
- body: {
791
- backgroundColor: I.value.style.backgroundColor,
792
- color: I.value.style.color
793
- },
794
- head: {
795
- backgroundColor: I.value.style.backgroundColor,
796
- color: I.value.style.color
797
- }
798
- }
799
- }
800
- };
801
- });
802
- ze(() => z.value.showTable, async (e) => {
803
- I.value.table.show || (e && I.value.table.useDialog && Vt.value ? (await ke(), Vt.value.open()) : "close" in Vt.value && Vt.value.close());
804
- });
805
- let { isResponsive: nr } = Se(Rt, yn);
806
- function rr() {
807
- z.value.showTable = !1, Ht.value && Ht.value.setTableIconState(!1);
808
- }
809
- let ir = g(() => I.value.style.backgroundColor), ar = g(() => I.value.style.title), { isCallbackImaging: or, isCallbackSvg: sr, generateSvg: cr, onGenerateImage: lr } = de({
810
- svg: R,
811
- title: ar,
812
- legend: null,
813
- legendItems: null,
814
- backgroundColor: ir,
815
- getSvgCallback: () => I.value.userOptions.callbacks.svg,
816
- generateImage: _n
817
- });
818
- async function ur() {
819
- if (Mt("copyAlt", {
820
- config: I.value,
821
- dataset: X.value
822
- }), !I.value.userOptions.callbacks.altCopy) {
823
- console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");
824
- return;
825
- }
826
- await Promise.resolve(I.value.userOptions.callbacks.altCopy({
827
- config: I.value,
828
- dataset: X.value
829
- }));
830
- }
831
- function dr(e, t) {
832
- let n = X.value[e];
833
- if (!n) return null;
834
- let r = n.temperatures[t];
835
- return r ? {
836
- cell: r,
837
- rowIndex: e,
838
- columnIndex: t
839
- } : null;
840
- }
841
- function fr(e, t) {
842
- let n = 0;
843
- for (let t = 0; t < e; t += 1) n += X.value[t]?.temperatures?.length || 0;
844
- return n + t;
845
- }
846
- function pr() {
847
- F.value = null, $t.value = null, nn.value = !0;
848
- }
849
- function mr() {
850
- Rn(), nn.value = !1;
851
- }
852
- function hr(e) {
853
- if (!R.value || Jn.value || document.activeElement !== R.value || !$.value.length) return;
854
- 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";
855
- if (!t && !n && !r && !i && !a && !o) return;
856
- if (e.preventDefault(), e.stopPropagation(), o) {
857
- Rn();
858
- return;
859
- }
860
- if (a) {
861
- if (F.value === null) return;
862
- let e = $.value[F.value];
863
- if (!e) return;
864
- Xn(e.cell, e.rowIndex);
865
- return;
866
- }
867
- let s = F.value === null ? null : $.value[F.value];
868
- if (!s) {
869
- let e = It.value ? $.value.findIndex((e) => e.cell.id === It.value) : null;
870
- if (e !== null && e >= 0 && e < $.value.length) {
871
- let a = $.value[e];
872
- if (!a) return;
873
- let o = a.rowIndex, s = a.columnIndex;
874
- n ? s += 1 : t ? --s : i ? o += 1 : r && --o;
875
- let c = _r.value.rowCount;
876
- if (c <= 0) return;
877
- o < 0 && (o = c - 1), o >= c && (o = 0);
878
- let l = X.value[o];
879
- if (!l || !l.temperatures.length) return;
880
- let u = l.temperatures.length;
881
- s < 0 && (s = u - 1), s >= u && (s = 0);
882
- let d = dr(o, s);
883
- if (!d) return;
884
- let f = fr(o, s), p = K.value.left + K.value.cellSize.width * d.columnIndex, m = K.value.top + K.value.cellSize.height * d.rowIndex;
885
- Bn(d.cell, d.rowIndex, p, m, "keyboard", f);
886
- return;
887
- }
888
- let a = $.value[0];
889
- if (!a) return;
890
- let o = K.value.left + K.value.cellSize.width * a.columnIndex, s = K.value.top + K.value.cellSize.height * a.rowIndex;
891
- Bn(a.cell, a.rowIndex, o, s, "keyboard", 0);
892
- return;
893
- }
894
- let c = s.rowIndex, l = s.columnIndex;
895
- n ? l += 1 : t ? --l : i ? c += 1 : r && --c;
896
- let u = _r.value.rowCount;
897
- if (u <= 0) return;
898
- c < 0 && (c = u - 1), c >= u && (c = 0);
899
- let d = X.value[c];
900
- if (!d || !d.temperatures.length) return;
901
- let f = d.temperatures.length;
902
- l < 0 && (l = f - 1), l >= f && (l = 0);
903
- let p = dr(c, l);
904
- if (!p) return;
905
- let m = fr(c, l), ee = K.value.left + K.value.cellSize.width * p.columnIndex, te = K.value.top + K.value.cellSize.height * p.rowIndex;
906
- Bn(p.cell, p.rowIndex, ee, te, "keyboard", m);
907
- }
908
- let gr = g(() => ({
909
- headers: [I.value.table.colNames.xAxis, ...L.value.map((e) => e.name)],
910
- rows: Y.value.xLabels.map((e, t) => [e, ...L.value.map((e) => {
911
- let n = e.values?.[t];
912
- return isNaN(n) ? "-" : o({
913
- p: I.value.style.layout.dataLabels.prefix,
914
- v: n,
915
- s: I.value.style.layout.dataLabels.suffix,
916
- r: I.value.table.td.roundingValue
917
- });
918
- })])
919
- })), _r = g(() => ({
920
- rowCount: X.value.length,
921
- columnCount: Math.max(0, ...X.value.map((e) => e.temperatures.length))
922
- })), $ = g(() => X.value.flatMap((e, t) => e.temperatures.map((e, n) => ({
923
- cell: e,
924
- rowIndex: t,
925
- columnIndex: n
926
- }))));
927
- return he({
928
- getData: Zn,
929
- getImage: Qn,
930
- generatePdf: gn,
931
- generateCsv: Wn,
932
- generateImage: _n,
933
- generateSvg: cr,
934
- toggleTable: Kn,
935
- toggleTooltip: qn,
936
- toggleAnnotator: Yn,
937
- toggleFullscreen: Gn,
938
- copyAlt: ur
939
- }), (t, n) => (w(), v("div", {
940
- ref_key: "heatmapChart",
941
- ref: N,
942
- class: Ae(`vue-data-ui-component vue-ui-heatmap ${Q.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
943
- style: C(`font-family:${I.value.style.fontFamily};width:100%;${I.value.responsive ? "height: 100%;" : ""} text-align:center;background:${I.value.style.backgroundColor}`),
944
- id: `heatmap__${M.value}`,
945
- onMouseenter: n[1] ||= () => fn(!0),
946
- onMouseleave: n[2] ||= () => {
947
- fn(!1), nn.value || Rn();
948
- }
949
- }, [
950
- y("div", {
951
- id: `chart-instructions-${M.value}`,
952
- class: "sr-only"
953
- }, [y("p", null, O(I.value.a11y.translations.keyboardNavigation), 1)], 8, Je),
954
- gr.value?.rows?.length ? (w(), we(ye, {
955
- key: 0,
956
- uid: M.value,
957
- head: gr.value.headers,
958
- body: gr.value.rows,
959
- notice: I.value.a11y.translations.tableAvailable,
960
- caption: I.value.a11y.translations.tableCaption
961
- }, null, 8, [
962
- "uid",
963
- "head",
964
- "body",
965
- "notice",
966
- "caption"
967
- ])) : _("", !0),
968
- I.value.userOptions.buttons.annotator ? (w(), we(k(Tt), {
969
- key: 1,
970
- svgRef: k(R),
971
- backgroundColor: I.value.style.backgroundColor,
972
- color: I.value.style.color,
973
- active: Jn.value,
974
- isCursorPointer: rn.value,
975
- onClose: Yn
976
- }, {
977
- "annotator-action-close": A(() => [D(t.$slots, "annotator-action-close", {}, void 0, !0)]),
978
- "annotator-action-color": A(({ color: e }) => [D(t.$slots, "annotator-action-color", S(x({ color: e })), void 0, !0)]),
979
- "annotator-action-draw": A(({ mode: e }) => [D(t.$slots, "annotator-action-draw", S(x({ mode: e })), void 0, !0)]),
980
- "annotator-action-undo": A(({ disabled: e }) => [D(t.$slots, "annotator-action-undo", S(x({ disabled: e })), void 0, !0)]),
981
- "annotator-action-redo": A(({ disabled: e }) => [D(t.$slots, "annotator-action-redo", S(x({ disabled: e })), void 0, !0)]),
982
- "annotator-action-delete": A(({ disabled: e }) => [D(t.$slots, "annotator-action-delete", S(x({ disabled: e })), void 0, !0)]),
983
- _: 3
984
- }, 8, [
985
- "svgRef",
986
- "backgroundColor",
987
- "color",
988
- "active",
989
- "isCursorPointer"
990
- ])) : _("", !0),
991
- vn.value ? (w(), v("div", {
992
- key: 2,
993
- ref_key: "noTitle",
994
- ref: Wt,
995
- class: "vue-data-ui-no-title-space",
996
- style: "height:36px; width: 100%;background:transparent"
997
- }, null, 512)) : _("", !0),
998
- I.value.style.title.text ? (w(), v("div", {
999
- key: 3,
1000
- ref_key: "chartTitle",
1001
- ref: Ut,
1002
- style: "width:100%;background:transparent"
1003
- }, [(w(), we(me, {
1004
- key: `title_${zt.value}`,
1005
- config: {
1006
- title: {
1007
- cy: "heatmap-div-title",
1008
- ...I.value.style.title
1009
- },
1010
- subtitle: {
1011
- cy: "heatmap-div-subtitle",
1012
- ...I.value.style.title.subtitle
1013
- }
1014
- }
1015
- }, null, 8, ["config"]))], 512)) : _("", !0),
1016
- I.value.userOptions.show && Nt.value && (k(dn) || k(ln)) ? (w(), we(k(Et), {
1017
- ref_key: "userOptionsRef",
1018
- ref: Ht,
1019
- key: `user_options_${Lt.value}`,
1020
- backgroundColor: I.value.style.backgroundColor,
1021
- color: I.value.style.color,
1022
- isImaging: k(hn),
1023
- isPrinting: k(mn),
1024
- uid: M.value,
1025
- hasTooltip: I.value.userOptions.buttons.tooltip && I.value.style.tooltip.show,
1026
- hasPdf: I.value.userOptions.buttons.pdf,
1027
- hasImg: I.value.userOptions.buttons.img,
1028
- hasSvg: I.value.userOptions.buttons.svg,
1029
- hasXls: I.value.userOptions.buttons.csv,
1030
- hasTable: I.value.userOptions.buttons.table,
1031
- hasFullscreen: I.value.userOptions.buttons.fullscreen,
1032
- hasAltCopy: I.value.userOptions.buttons.altCopy,
1033
- isFullscreen: Q.value,
1034
- isTooltip: z.value.showTooltip,
1035
- titles: { ...I.value.userOptions.buttonTitles },
1036
- chartElement: N.value,
1037
- position: I.value.userOptions.position,
1038
- hasAnnotator: I.value.userOptions.buttons.annotator,
1039
- isAnnotation: Jn.value,
1040
- callbacks: I.value.userOptions.callbacks,
1041
- printScale: I.value.userOptions.print.scale,
1042
- tableDialog: I.value.table.useDialog,
1043
- isCursorPointer: rn.value,
1044
- onToggleFullscreen: Gn,
1045
- onGeneratePdf: k(gn),
1046
- onGenerateCsv: Wn,
1047
- onGenerateImage: k(lr),
1048
- onGenerateSvg: k(cr),
1049
- onToggleTable: Kn,
1050
- onToggleTooltip: qn,
1051
- onToggleAnnotator: Yn,
1052
- onCopyAlt: ur,
1053
- style: C({ visibility: k(dn) ? k(ln) ? "visible" : "hidden" : "visible" })
1054
- }, Te({ _: 2 }, [
1055
- t.$slots.menuIcon ? {
1056
- name: "menuIcon",
1057
- fn: A(({ isOpen: e, color: n }) => [D(t.$slots, "menuIcon", S(x({
1058
- isOpen: e,
1059
- color: n
1060
- })), void 0, !0)]),
1061
- key: "0"
1062
- } : void 0,
1063
- t.$slots.optionTooltip ? {
1064
- name: "optionTooltip",
1065
- fn: A(() => [D(t.$slots, "optionTooltip", {}, void 0, !0)]),
1066
- key: "1"
1067
- } : void 0,
1068
- t.$slots.optionPdf ? {
1069
- name: "optionPdf",
1070
- fn: A(() => [D(t.$slots, "optionPdf", {}, void 0, !0)]),
1071
- key: "2"
1072
- } : void 0,
1073
- t.$slots.optionCsv ? {
1074
- name: "optionCsv",
1075
- fn: A(() => [D(t.$slots, "optionCsv", {}, void 0, !0)]),
1076
- key: "3"
1077
- } : void 0,
1078
- t.$slots.optionImg ? {
1079
- name: "optionImg",
1080
- fn: A(() => [D(t.$slots, "optionImg", {}, void 0, !0)]),
1081
- key: "4"
1082
- } : void 0,
1083
- t.$slots.optionSvg ? {
1084
- name: "optionSvg",
1085
- fn: A(() => [D(t.$slots, "optionSvg", {}, void 0, !0)]),
1086
- key: "5"
1087
- } : void 0,
1088
- t.$slots.optionTable ? {
1089
- name: "optionTable",
1090
- fn: A(() => [D(t.$slots, "optionTable", {}, void 0, !0)]),
1091
- key: "6"
1092
- } : void 0,
1093
- t.$slots.optionFullscreen ? {
1094
- name: "optionFullscreen",
1095
- fn: A(({ toggleFullscreen: e, isFullscreen: n }) => [D(t.$slots, "optionFullscreen", S(x({
1096
- toggleFullscreen: e,
1097
- isFullscreen: n
1098
- })), void 0, !0)]),
1099
- key: "7"
1100
- } : void 0,
1101
- t.$slots.optionAnnotator ? {
1102
- name: "optionAnnotator",
1103
- fn: A(({ toggleAnnotator: e, isAnnotator: n }) => [D(t.$slots, "optionAnnotator", S(x({
1104
- toggleAnnotator: e,
1105
- isAnnotator: n
1106
- })), void 0, !0)]),
1107
- key: "8"
1108
- } : void 0,
1109
- t.$slots.optionAltCopy ? {
1110
- name: "optionAltCopy",
1111
- fn: A(({ altCopy: e }) => [D(t.$slots, "optionAltCopy", S(x({ altCopy: e })), void 0, !0)]),
1112
- key: "9"
1113
- } : void 0,
1114
- t.$slots["custom-menu-before"] ? {
1115
- name: "custom-menu-before",
1116
- fn: A(() => [D(t.$slots, "custom-menu-before", {}, void 0, !0)]),
1117
- key: "10"
1118
- } : void 0,
1119
- t.$slots["custom-menu-after"] ? {
1120
- name: "custom-menu-after",
1121
- fn: A(() => [D(t.$slots, "custom-menu-after", {}, void 0, !0)]),
1122
- key: "11"
1123
- } : void 0
1124
- ]), 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),
1125
- y("div", { class: Ae({
1126
- "vue-ui-heatmap-chart-wrapper": !0,
1127
- "vue-ui-heatmap-chart-wrapper-legend-right": I.value.style.legend.show
1128
- }) }, [
1129
- (w(), v("svg", {
1130
- ref_key: "svgRef",
1131
- ref: R,
1132
- xmlns: k(ee),
1133
- "aria-describedby": `chart-instructions-${M.value}`,
1134
- class: Ae({
1135
- "vue-data-ui-fullscreen--on": Q.value,
1136
- "vue-data-ui-fulscreen--off": !Q.value
1137
- }),
1138
- viewBox: `0 0 ${H.value.width} ${H.value.height}`,
1139
- width: "100%",
1140
- style: C(`overflow: visible; background:transparent;color:${I.value.style.color}`),
1141
- "aria-live": "polite",
1142
- role: "img",
1143
- preserveAspectRatio: "xMidYMid",
1144
- tabindex: "0",
1145
- onFocus: pr,
1146
- onBlur: mr,
1147
- onKeydown: hr
1148
- }, [
1149
- De(k(Dt)),
1150
- t.$slots["chart-background"] ? (w(), v("foreignObject", {
1151
- key: 0,
1152
- x: K.value.left,
1153
- y: K.value.top,
1154
- width: K.value.width,
1155
- height: K.value.height,
1156
- style: { pointerEvents: "none" }
1157
- }, [D(t.$slots, "chart-background", {}, void 0, !0)], 8, Xe)) : _("", !0),
1158
- I.value.style.layout.cells.columnTotal.color.show ? (w(), v("g", {
1159
- key: 1,
1160
- ref_key: "xAxisSumRects",
1161
- ref: Xt
1162
- }, [(w(!0), v(h, null, E(Y.value.xTotals, (e, t) => (w(), v("rect", {
1163
- x: K.value.left + K.value.cellSize.width * t + G.value / 2 + K.value.sumCellXHeight,
1164
- y: K.value.top - K.value.sumCellXHeight + G.value * (H.value.height / H.value.width),
1165
- height: K.value.sumCellXHeight,
1166
- width: K.value.cellSize.width - G.value,
1167
- fill: I.value.style.layout.cells.colors.underlayer,
1168
- stroke: I.value.style.backgroundColor,
1169
- "stroke-width": G.value
1170
- }, null, 8, Ze))), 256)), (w(!0), v(h, null, E(Y.value.xTotals, (e, t) => (w(), v("rect", {
1171
- x: K.value.left + K.value.cellSize.width * t + G.value / 2 + K.value.sumCellXHeight,
1172
- y: K.value.top - K.value.sumCellXHeight + G.value * (H.value.height / H.value.width),
1173
- height: K.value.sumCellXHeight,
1174
- width: K.value.cellSize.width - G.value,
1175
- fill: e.color,
1176
- stroke: I.value.style.backgroundColor,
1177
- "stroke-width": G.value
1178
- }, null, 8, Qe))), 256))], 512)) : _("", !0),
1179
- y("g", {
1180
- ref_key: "datapoints",
1181
- ref: Bt
1182
- }, [(w(!0), v(h, null, E(X.value, (e, t) => (w(), v(h, null, [(w(!0), v(h, null, E(e.temperatures, (e, n) => (w(), v("g", null, [
1183
- y("rect", {
1184
- x: K.value.left + K.value.cellSize.width * n + G.value / 2 + K.value.sumCellXHeight,
1185
- y: K.value.top + K.value.cellSize.height * t + G.value / 2,
1186
- width: K.value.cellSize.width - G.value,
1187
- height: K.value.cellSize.height - G.value,
1188
- fill: I.value.style.layout.cells.colors.underlayer,
1189
- stroke: I.value.style.backgroundColor,
1190
- "stroke-width": G.value
1191
- }, null, 8, $e),
1192
- y("rect", {
1193
- "data-a11y-cell-id": e.id,
1194
- x: K.value.left + K.value.cellSize.width * n + G.value / 2 + K.value.sumCellXHeight,
1195
- y: K.value.top + K.value.cellSize.height * t + G.value / 2,
1196
- width: K.value.cellSize.width - G.value,
1197
- height: K.value.cellSize.height - G.value,
1198
- fill: e.color,
1199
- stroke: I.value.style.backgroundColor,
1200
- "stroke-width": G.value,
1201
- "aria-label": `${e.yAxisName}${e.xAxisName ? ` - ${e.xAxisName}` : ""}: ${isNaN(e.value) ? "-" : e.value}`,
1202
- onMouseover: (r) => Bn(e, t, K.value.left + K.value.cellSize.width * n, K.value.top + K.value.cellSize.height * t, "pointer", fr(t, n)),
1203
- onMouseout: () => Vn({
1204
- datapoint: e,
1205
- seriesIndex: t
1206
- }),
1207
- onClick: () => Xn(e, t)
1208
- }, null, 40, et),
1209
- I.value.style.layout.cells.value.show ? Ve((w(), v("text", {
1210
- key: 0,
1211
- "text-anchor": "middle",
1212
- "font-size": I.value.style.layout.cells.value.fontSize,
1213
- "font-weight": I.value.style.layout.cells.value.bold ? "bold" : "normal",
1214
- fill: k(m)(e.color),
1215
- x: K.value.left + K.value.cellSize.width * n + K.value.cellSize.width / 2 + K.value.sumCellXHeight,
1216
- y: K.value.top + K.value.cellSize.height * t + K.value.cellSize.height / 2 + I.value.style.layout.cells.value.fontSize / 3,
1217
- style: {
1218
- pointerEvents: "none",
1219
- userSelect: "none"
1220
- }
1221
- }, [Ee(O(k(u)(I.value.style.layout.cells.value.formatter, e.value, k(o)({
1222
- p: I.value.style.layout.dataLabels.prefix,
1223
- v: e.value,
1224
- s: I.value.style.layout.dataLabels.suffix,
1225
- r: I.value.style.layout.cells.value.roundingValue
1226
- }), { datapoint: e })), 1)], 8, tt)), [[k(We), {
1227
- cellWidth: K.value.cellSize.width - G.value,
1228
- cellHeight: K.value.cellSize.height - G.value,
1229
- maxFontSize: I.value.style.layout.cells.value.fontSize,
1230
- minFontSize: 10,
1231
- index: t * V.value + n,
1232
- reportHide: In,
1233
- reportRotation: Nn,
1234
- hideAll: Fn.value,
1235
- rotateAll: Mn.value
1236
- }]]) : _("", !0)
1237
- ]))), 256))], 64))), 256))], 512),
1238
- I.value.style.layout.cells.rowTotal.color.show ? (w(), v("g", {
1239
- key: 2,
1240
- ref_key: "yAxisSumRects",
1241
- ref: qt
1242
- }, [(w(!0), v(h, null, E(X.value, (e, t) => (w(), v(h, null, [y("rect", {
1243
- x: K.value.left,
1244
- y: K.value.top + K.value.cellSize.height * t,
1245
- width: K.value.sumCellXHeight,
1246
- height: K.value.cellSize.height - G.value,
1247
- fill: I.value.style.layout.cells.colors.underlayer,
1248
- stroke: I.value.style.backgroundColor,
1249
- "stroke-width": G.value
1250
- }, null, 8, nt), y("rect", {
1251
- x: K.value.left,
1252
- y: K.value.top + K.value.cellSize.height * t + G.value / 2,
1253
- width: K.value.sumCellXHeight,
1254
- height: K.value.cellSize.height - G.value,
1255
- fill: Y.value.yTotals[t].color,
1256
- stroke: I.value.style.backgroundColor,
1257
- "stroke-width": G.value
1258
- }, null, 8, rt)], 64))), 256))], 512)) : _("", !0),
1259
- I.value.style.layout.dataLabels.yAxis.show ? (w(), v("g", {
1260
- key: 3,
1261
- ref_key: "yAxisLabels",
1262
- ref: Kt
1263
- }, [(w(!0), v(h, null, E(X.value, (e, t) => (w(), v(h, null, [y("text", {
1264
- class: "vue-ui-heatmap-row-name",
1265
- "font-size": I.value.style.layout.dataLabels.yAxis.fontSize,
1266
- fill: I.value.style.layout.dataLabels.yAxis.color,
1267
- x: W.value,
1268
- y: K.value.top + K.value.cellSize.height * t + K.value.cellSize.height / 2 + I.value.style.layout.dataLabels.yAxis.fontSize / 3 + I.value.style.layout.dataLabels.yAxis.offsetY - (I.value.style.layout.cells.rowTotal.value.show ? I.value.style.layout.dataLabels.yAxis.fontSize / 1.5 : 0),
1269
- "text-anchor": "end",
1270
- "font-weight": I.value.style.layout.dataLabels.yAxis.bold ? "bold" : "normal"
1271
- }, O(Y.value.yLabels[t]), 9, it), I.value.style.layout.cells.rowTotal.value.show ? (w(), v("text", {
1272
- key: 0,
1273
- class: "vue-ui-heatmap-row-total",
1274
- "font-size": I.value.style.layout.dataLabels.yAxis.fontSize,
1275
- fill: I.value.style.layout.dataLabels.yAxis.color,
1276
- x: W.value,
1277
- y: K.value.top + K.value.cellSize.height * t + K.value.cellSize.height / 2 + I.value.style.layout.dataLabels.yAxis.fontSize + I.value.style.layout.dataLabels.yAxis.offsetY,
1278
- "text-anchor": "end",
1279
- "font-weight": I.value.style.layout.dataLabels.yAxis.bold ? "bold" : "normal"
1280
- }, O(Hn(t)), 9, at)) : _("", !0)], 64))), 256))], 512)) : _("", !0),
1281
- I.value.style.layout.dataLabels.xAxis.show ? (w(), v("g", {
1282
- key: 4,
1283
- ref_key: "xAxisLabels",
1284
- ref: Jt
1285
- }, [(w(!0), v(h, null, E(Y.value.xLabels, (e, t) => (w(), v(h, null, [!I.value.style.layout.dataLabels.xAxis.showOnlyAtModulo || I.value.style.layout.dataLabels.xAxis.showOnlyAtModulo && t % I.value.style.layout.dataLabels.xAxis.showOnlyAtModulo === 0 ? (w(), v("text", {
1286
- key: 0,
1287
- class: "vue-ui-heatmap-col-name",
1288
- "text-anchor": I.value.style.layout.dataLabels.xAxis.rotation === 0 ? "middle" : I.value.style.layout.dataLabels.xAxis.rotation < 0 ? "start" : "end",
1289
- "font-size": I.value.style.layout.dataLabels.xAxis.fontSize,
1290
- fill: I.value.style.layout.dataLabels.xAxis.color,
1291
- "font-weight": I.value.style.layout.dataLabels.xAxis.bold ? "bold" : "normal",
1292
- transform: `translate(${K.value.left + K.value.cellSize.width / 2 + K.value.width / Y.value.xLabels.length * t + I.value.style.layout.dataLabels.xAxis.offsetX + K.value.sumCellXHeight}, ${K.value.topLabelsHeight}), rotate(${I.value.style.layout.dataLabels.xAxis.rotation})`
1293
- }, O(e), 9, ot)) : _("", !0)], 64))), 256))], 512)) : _("", !0),
1294
- I.value.style.layout.cells.columnTotal.value.show ? (w(), v("g", {
1295
- key: 5,
1296
- ref_key: "xAxisSums",
1297
- ref: Yt
1298
- }, [(w(!0), v(h, null, E(Y.value.xLabels, (e, t) => (w(), v("text", {
1299
- class: "vue-ui-heatmap-col-total",
1300
- "text-anchor": I.value.style.layout.cells.columnTotal.value.rotation === 0 ? "middle" : I.value.style.layout.cells.columnTotal.value.rotation < 0 ? "end" : "start",
1301
- "font-size": I.value.style.layout.dataLabels.xAxis.fontSize,
1302
- fill: I.value.style.layout.dataLabels.xAxis.color,
1303
- "font-weight": I.value.style.layout.dataLabels.xAxis.bold ? "bold" : "normal",
1304
- transform: `translate(${K.value.left + K.value.cellSize.width / 2 + K.value.width / Y.value.xLabels.length * t + I.value.style.layout.dataLabels.xAxis.offsetX + I.value.style.layout.cells.columnTotal.value.offsetX + K.value.sumCellXHeight}, ${K.value.bottom + I.value.style.layout.dataLabels.xAxis.fontSize / 2}), rotate(${I.value.style.layout.cells.columnTotal.value.rotation})`
1305
- }, O(Un(t)), 9, st))), 256))], 512)) : _("", !0),
1306
- P.value ? (w(), v("g", ct, [y("rect", {
1307
- style: { "pointer-events": "none" },
1308
- x: P.value.x - I.value.style.layout.cells.selected.border / 2 + G.value + K.value.sumCellXHeight,
1309
- y: P.value.y - I.value.style.layout.cells.selected.border / 2 + G.value,
1310
- width: K.value.cellSize.width - G.value + I.value.style.layout.cells.selected.border - G.value,
1311
- height: K.value.cellSize.height - G.value + I.value.style.layout.cells.selected.border - G.value,
1312
- fill: "transparent",
1313
- stroke: I.value.style.layout.cells.selected.color,
1314
- "stroke-width": I.value.style.layout.cells.selected.border,
1315
- rx: 1
1316
- }, null, 8, lt)])) : _("", !0),
1317
- I.value.style.layout.crosshairs.show && P.value ? (w(), v("g", ut, [y("line", {
1318
- x1: K.value.left + K.value.sumCellXHeight,
1319
- x2: P.value.x + K.value.sumCellXHeight,
1320
- y1: P.value.y + (K.value.cellSize.height - G.value) / 2,
1321
- y2: P.value.y + (K.value.cellSize.height - G.value) / 2,
1322
- stroke: I.value.style.layout.crosshairs.stroke,
1323
- "stroke-width": I.value.style.layout.crosshairs.strokeWidth,
1324
- "stroke-dasharray": I.value.style.layout.crosshairs.strokeDasharray,
1325
- "stroke-linecap": "round"
1326
- }, null, 8, dt), y("line", {
1327
- x1: P.value.x + K.value.sumCellXHeight + (K.value.cellSize.width - G.value) / 2,
1328
- x2: P.value.x + K.value.sumCellXHeight + (K.value.cellSize.width - G.value) / 2,
1329
- y1: P.value.y,
1330
- y2: K.value.top,
1331
- stroke: I.value.style.layout.crosshairs.stroke,
1332
- "stroke-width": I.value.style.layout.crosshairs.strokeWidth,
1333
- "stroke-dasharray": I.value.style.layout.crosshairs.strokeDasharray,
1334
- "stroke-linecap": "round"
1335
- }, null, 8, ft)])) : _("", !0),
1336
- D(t.$slots, "svg", { svg: {
1337
- ...H.value,
1338
- drawingArea: K.value,
1339
- isPrintingImg: k(mn) || k(hn) || k(or),
1340
- isPrintingSvg: k(sr)
1341
- } }, void 0, !0)
1342
- ], 46, Ye)),
1343
- I.value.style.legend.show ? (w(), v("div", {
1344
- key: 0,
1345
- ref_key: "legendRight",
1346
- ref: Gt,
1347
- class: "vue-ui-heatmap-legend-right",
1348
- style: C({ "--legend-width": I.value.style.legend.width + "px" })
1349
- }, [
1350
- k(sn) ? _("", !0) : (w(), v("div", {
1351
- key: 0,
1352
- class: "vue-ui-heatmap-legend-label-max",
1353
- style: C({
1354
- fontSize: I.value.style.legend.fontSize + "px",
1355
- color: I.value.style.legend.color
1356
- })
1357
- }, O(k(u)(I.value.style.layout.cells.value.formatter, k(c)(q.value), k(o)({
1358
- p: I.value.style.layout.dataLabels.prefix,
1359
- v: k(c)(q.value),
1360
- s: I.value.style.layout.dataLabels.suffix,
1361
- r: I.value.style.legend.roundingValue
1362
- }))), 5)),
1363
- y("div", pt, [y("div", {
1364
- class: "vue-ui-heatmap-gauge",
1365
- style: C({ background: `linear-gradient(to bottom, ${I.value.style.layout.cells.colors.hot}, ${I.value.style.layout.cells.colors.cold})` })
1366
- }, [Ve(y("div", {
1367
- class: "vue-ui-heatmap-gauge-indicator",
1368
- "data-value": k(u)(I.value.style.layout.cells.value.formatter, k(c)(Z.value), k(o)({
1369
- p: I.value.style.layout.dataLabels.prefix,
1370
- v: k(c)(Z.value),
1371
- s: I.value.style.layout.dataLabels.suffix,
1372
- r: I.value.style.legend.roundingValue
1373
- })),
1374
- style: C({
1375
- position: "absolute",
1376
- width: "100%",
1377
- height: "2px",
1378
- background: [void 0, null].includes(Z.value) ? "transparent" : k(m)(Ln.value.datapoint.color),
1379
- top: `${[void 0, null].includes(Z.value) ? 0 : (1 - Z.value / q.value) * 100}%`,
1380
- transition: "all 0.2s ease-in-out",
1381
- "--background-color": I.value.style.backgroundColor,
1382
- "--gauge-arrow-color": k(m)(I.value.style.backgroundColor),
1383
- "--gauge-arrow-text-color": k(m)(I.value.style.backgroundColor),
1384
- "--gauge-arrow-value": Z.value,
1385
- "--gauge-arrow-font-size": I.value.style.legend.fontSize + "px"
1386
- })
1387
- }, [y("div", ht, O(k(u)(I.value.style.layout.cells.value.formatter, k(c)(Z.value), k(o)({
1388
- p: I.value.style.layout.dataLabels.prefix,
1389
- v: k(c)(Z.value),
1390
- s: I.value.style.layout.dataLabels.suffix,
1391
- r: I.value.style.legend.roundingValue
1392
- }))), 1)], 12, mt), [[Re, ![void 0, null].includes(Z.value)]])], 4)]),
1393
- k(sn) ? _("", !0) : (w(), v("div", {
1394
- key: 1,
1395
- class: "vue-ui-heatmap-legend-label-min",
1396
- style: C({
1397
- fontSize: I.value.style.legend.fontSize + "px",
1398
- color: I.value.style.legend.color
1399
- })
1400
- }, O(k(u)(I.value.style.layout.cells.value.formatter, k(c)(Tn.value), k(o)({
1401
- p: I.value.style.layout.dataLabels.prefix,
1402
- v: k(c)(Tn.value),
1403
- s: I.value.style.layout.dataLabels.suffix,
1404
- r: I.value.style.legend.roundingValue
1405
- }))), 5))
1406
- ], 4)) : _("", !0),
1407
- t.$slots.hint ? (w(), v("div", gt, [D(t.$slots, "hint", S(x({
1408
- hint: I.value.a11y.translations.keyboardNavigation,
1409
- isVisible: nn.value
1410
- })), void 0, !0)])) : _("", !0)
1411
- ], 2),
1412
- t.$slots.watermark ? (w(), v("div", _t, [D(t.$slots, "watermark", S(x({ isPrinting: k(mn) || k(hn) || k(or) || k(sr) })), void 0, !0)])) : _("", !0),
1413
- t.$slots.source ? (w(), v("div", {
1414
- key: 6,
1415
- ref_key: "source",
1416
- ref: Zt,
1417
- dir: "auto"
1418
- }, [D(t.$slots, "source", {}, void 0, !0)], 512)) : _("", !0),
1419
- De(k(Ke), {
1420
- teleportTo: I.value.style.tooltip.teleportTo,
1421
- show: z.value.showTooltip && Pt.value,
1422
- backgroundColor: I.value.style.tooltip.backgroundColor,
1423
- color: I.value.style.tooltip.color,
1424
- borderRadius: I.value.style.tooltip.borderRadius,
1425
- borderColor: I.value.style.tooltip.borderColor,
1426
- borderWidth: I.value.style.tooltip.borderWidth,
1427
- fontSize: I.value.style.tooltip.fontSize,
1428
- backgroundOpacity: I.value.style.tooltip.backgroundOpacity,
1429
- position: I.value.style.tooltip.position,
1430
- offsetX: I.value.style.tooltip.offsetX,
1431
- offsetY: I.value.style.tooltip.offsetY,
1432
- parent: N.value,
1433
- content: Ft.value,
1434
- isFullscreen: Q.value,
1435
- isCustom: I.value.style.tooltip.customFormat && typeof I.value.style.tooltip.customFormat == "function",
1436
- smooth: I.value.style.tooltip.smooth,
1437
- backdropFilter: I.value.style.tooltip.backdropFilter,
1438
- smoothForce: I.value.style.tooltip.smoothForce,
1439
- smoothSnapThreshold: I.value.style.tooltip.smoothSnapThreshold,
1440
- isA11yMode: tn.value === "keyboard",
1441
- a11yPosition: en.value
1442
- }, {
1443
- "tooltip-before": A(() => [D(t.$slots, "tooltip-before", S(x({ ...Ln.value })), void 0, !0)]),
1444
- tooltip: A(() => [D(t.$slots, "tooltip", S(x({ ...Ln.value })), void 0, !0)]),
1445
- "tooltip-after": A(() => [D(t.$slots, "tooltip-after", S(x({ ...Ln.value })), void 0, !0)]),
1446
- _: 3
1447
- }, 8, [
1448
- "teleportTo",
1449
- "show",
1450
- "backgroundColor",
1451
- "color",
1452
- "borderRadius",
1453
- "borderColor",
1454
- "borderWidth",
1455
- "fontSize",
1456
- "backgroundOpacity",
1457
- "position",
1458
- "offsetX",
1459
- "offsetY",
1460
- "parent",
1461
- "content",
1462
- "isFullscreen",
1463
- "isCustom",
1464
- "smooth",
1465
- "backdropFilter",
1466
- "smoothForce",
1467
- "smoothSnapThreshold",
1468
- "isA11yMode",
1469
- "a11yPosition"
1470
- ]),
1471
- Nt.value && I.value.userOptions.buttons.table ? (w(), we(Pe(tr.value.component), Oe({ key: 7 }, tr.value.props, {
1472
- ref_key: "tableUnit",
1473
- ref: Vt,
1474
- onClose: rr
1475
- }), Te({
1476
- content: A(() => [y("div", {
1477
- ref_key: "tableContainer",
1478
- ref: Rt,
1479
- class: "vue-ui-heatmap-table atom-data-table",
1480
- style: C(`${I.value.table.useDialog ? "" : "max-height: 300px; margin-top: 24px;"}`)
1481
- }, [y("div", {
1482
- style: C(`width:100%;overflow-x:auto;position:relative;${I.value.table.useDialog ? "" : "padding-top:36px"};`),
1483
- class: Ae({ "vue-ui-responsive": k(nr) })
1484
- }, [I.value.table.useDialog ? _("", !0) : (w(), v("div", {
1485
- key: 0,
1486
- role: "button",
1487
- tabindex: "0",
1488
- style: C(`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:${I.value.table.th.backgroundColor};`),
1489
- onClick: rr,
1490
- onKeypress: He(rr, ["enter"])
1491
- }, [De(k(wt), {
1492
- name: "close",
1493
- stroke: I.value.table.th.color,
1494
- "stroke-width": 2
1495
- }, null, 8, ["stroke"])], 36)), y("table", vt, [
1496
- I.value.table.useDialog ? _("", !0) : (w(), v("caption", {
1497
- key: 0,
1498
- style: C(`backgroundColor:${I.value.table.th.backgroundColor};color:${I.value.table.th.color};outline:${I.value.table.th.outline}`)
1499
- }, [Ee(O(I.value.style.title.text) + " ", 1), I.value.style.title.subtitle.text ? (w(), v("span", yt, O(I.value.style.title.subtitle.text), 1)) : _("", !0)], 4)),
1500
- y("thead", null, [y("tr", {
1501
- role: "row",
1502
- style: C(`background:${I.value.table.th.backgroundColor};color:${I.value.table.th.color}`)
1503
- }, [y("th", { style: C(`outline:${I.value.table.th.outline};padding-right:6px`) }, null, 4), (w(!0), v(h, null, E(e.dataset, (e, t) => (w(), v("th", {
1504
- align: "right",
1505
- style: C(`outline:${I.value.table.th.outline};padding-right:6px`)
1506
- }, O(e.name), 5))), 256))], 4)]),
1507
- y("tbody", null, [(w(!0), v(h, null, E(Y.value.xLabels, (t, n) => (w(), v("tr", {
1508
- role: "row",
1509
- class: Ae({
1510
- "vue-ui-data-table__tbody__row": !0,
1511
- "vue-ui-data-table__tbody__row-even": n % 2 == 0,
1512
- "vue-ui-data-table__tbody__row-odd": n % 2 != 0
1513
- }),
1514
- style: C(`background:${I.value.table.td.backgroundColor};color:${I.value.table.td.color}`)
1515
- }, [y("td", {
1516
- "data-cell": I.value.table.colNames.xAxis,
1517
- class: "vue-ui-data-table__tbody__td",
1518
- style: C(`outline:${I.value.table.td.outline}`)
1519
- }, [y("div", xt, O(t), 1)], 12, bt), (w(!0), v(h, null, E(e.dataset, (t, r) => (w(), v("td", {
1520
- class: "vue-ui-data-table__tbody__td",
1521
- "data-cell": e.dataset[r].name,
1522
- style: C(`outline:${I.value.table.td.outline}`)
1523
- }, [y("div", Ct, O(isNaN(t.values[n]) ? "-" : k(o)({
1524
- p: I.value.style.layout.dataLabels.prefix,
1525
- v: t.values[n],
1526
- s: I.value.style.layout.dataLabels.suffix,
1527
- r: I.value.table.td.roundingValue
1528
- })), 1)], 12, St))), 256))], 6))), 256))])
1529
- ])], 6)], 4)]),
1530
- _: 2
1531
- }, [I.value.table.useDialog ? {
1532
- name: "title",
1533
- fn: A(() => [Ee(O(tr.value.title), 1)]),
1534
- key: "0"
1535
- } : void 0, I.value.table.useDialog ? {
1536
- name: "actions",
1537
- fn: A(() => [y("button", {
1538
- tabindex: "0",
1539
- class: "vue-ui-user-options-button",
1540
- onClick: n[0] ||= (e) => Wn(I.value.userOptions.callbacks.csv),
1541
- style: C({ cursor: rn.value ? "pointer" : "default" })
1542
- }, [De(k(wt), {
1543
- name: "fileCsv",
1544
- stroke: tr.value.props.color
1545
- }, null, 8, ["stroke"])], 4)]),
1546
- key: "1"
1547
- } : void 0]), 1040)) : _("", !0),
1548
- D(t.$slots, "skeleton", {}, () => [k(sn) ? (w(), we(ce, { key: 0 })) : _("", !0)], !0)
1549
- ], 46, qe));
1550
- }
1551
- }, [["__scopeId", "data-v-9e3f53ee"]]);
1552
- //#endregion
1553
- export { Ke as n, wt as t };