vue-data-ui 3.0.0-next.7 → 3.0.0-next.71

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 (137) hide show
  1. package/dist/{Arrow-Bl8urcli.js → Arrow-BZNpld6u.js} +1 -1
  2. package/dist/{BaseDraggableDialog-CyhpaZU5.js → BaseDraggableDialog-kg-eVvXZ.js} +2 -2
  3. package/dist/{BaseIcon-BCZfTCeM.js → BaseIcon-BdOEhJar.js} +1 -1
  4. package/dist/{ColorPicker-CSJf42vx.js → ColorPicker-CWvXlPxS.js} +2 -2
  5. package/dist/{DataTable-mQ6Wd-rR.js → DataTable-B3yakHEM.js} +2 -2
  6. package/dist/{Legend-B2hrDh4G.js → Legend-DiGLrlzP.js} +2 -2
  7. package/dist/{NonSvgPenAndPaper-DQ8KsK4W.js → NonSvgPenAndPaper-C-ZjpJQd.js} +3 -3
  8. package/dist/{PackageVersion-CeEYZfaH.js → PackageVersion-6s4eI8W7.js} +1 -1
  9. package/dist/{PenAndPaper-DhSxfUrQ.js → PenAndPaper-JoUN7Ink.js} +3 -3
  10. package/dist/{Shape-C2qH26wh.js → Shape-CWIa2nta.js} +43 -37
  11. package/dist/Slicer-DYuvPkEM.js +602 -0
  12. package/dist/{SparkTooltip-BcHgW6YX.js → SparkTooltip-C_fUmbP7.js} +1 -1
  13. package/dist/{Title-B7Xb3YuE.js → Title-VLWyIYrj.js} +1 -1
  14. package/dist/{Tooltip-BidRoM5E.js → Tooltip-BS5naLS2.js} +23 -19
  15. package/dist/{UserOptions-0tvMM8PF.js → UserOptions-BV_xM-sB.js} +2 -2
  16. package/dist/{dom-to-png-CTrlbKHr.js → dom-to-png-PUk0ukSG.js} +1 -1
  17. package/dist/{img-D72yZNUg.js → img-DD_2wgY3.js} +1 -1
  18. package/dist/{index-Cg-RjxqH.js → index-DKpp7RIH.js} +2236 -1505
  19. package/dist/{pdf-DgX01_wu.js → pdf-0TQQyXWM.js} +1 -1
  20. package/dist/style.css +1 -1
  21. package/dist/types/vue-data-ui.d.cts +610 -22
  22. package/dist/types/vue-data-ui.d.ts +610 -22
  23. package/dist/useAutoSizeLabelsInsideViewbox-Qhry5WvH.js +81 -0
  24. package/dist/useFitSvgText-2crs6Fv5.js +69 -0
  25. package/dist/useLoading-D7YHNtLX.js +29 -0
  26. package/dist/useNestedProp-D-8c0o4p.js +13 -0
  27. package/dist/usePanZoom-BVca3eMk.js +122 -0
  28. package/dist/{usePrinter-BUzmyQf9.js → usePrinter-NUeckmCX.js} +2 -2
  29. package/dist/useTimeLabelCollider-CIsgDrl9.js +78 -0
  30. package/dist/{useTimeLabels-Mrr0jrpL.js → useTimeLabels-DkzmKfZn.js} +211 -152
  31. package/dist/{vue-data-ui-DpO93ey5.js → vue-data-ui-BIXXEsFZ.js} +105 -100
  32. package/dist/vue-data-ui.js +23 -22
  33. package/dist/vue-ui-3d-bar-CVUfj12F.js +1323 -0
  34. package/dist/{vue-ui-accordion-CRomxzaL.js → vue-ui-accordion-Cpovz3RE.js} +3 -3
  35. package/dist/vue-ui-age-pyramid-CQWFaHLV.js +834 -0
  36. package/dist/{vue-ui-annotator-BAOxPiFx.js → vue-ui-annotator-C49Xw5Mh.js} +2 -2
  37. package/dist/vue-ui-bullet-DED2SuIa.js +571 -0
  38. package/dist/vue-ui-candlestick-DGgbevy6.js +999 -0
  39. package/dist/{vue-ui-carousel-table-DVGlPZIa.js → vue-ui-carousel-table-DKIgSB1T.js} +29 -29
  40. package/dist/{vue-ui-chestnut-P1v4ffD0.js → vue-ui-chestnut-D1bEM91d.js} +5 -5
  41. package/dist/vue-ui-chord-CBLSqtEP.js +1038 -0
  42. package/dist/{vue-ui-circle-pack-FXmemXgl.js → vue-ui-circle-pack-g2ts9NTG.js} +24 -24
  43. package/dist/{vue-ui-cursor-CdvMgIrP.js → vue-ui-cursor-DSxmPUD8.js} +2 -2
  44. package/dist/{vue-ui-dashboard-Vke0452J.js → vue-ui-dashboard-B6FfoNjQ.js} +62 -62
  45. package/dist/{vue-ui-digits-BVhyYqCs.js → vue-ui-digits-DKffQVgr.js} +2 -2
  46. package/dist/{vue-ui-donut-BpIivKcf.js → vue-ui-donut-CJrWc4-g.js} +320 -308
  47. package/dist/vue-ui-donut-evolution-Bys6cs-D.js +1075 -0
  48. package/dist/vue-ui-dumbbell-Cb_I__qC.js +1119 -0
  49. package/dist/vue-ui-flow-BzuT3ij5.js +841 -0
  50. package/dist/{vue-ui-funnel-BbFmbsft.js → vue-ui-funnel-Ctp7GDiN.js} +16 -16
  51. package/dist/vue-ui-galaxy-CRBy0aio.js +680 -0
  52. package/dist/vue-ui-gauge-NcQq5UFr.js +791 -0
  53. package/dist/vue-ui-gizmo-Cwfb8c-0.js +210 -0
  54. package/dist/vue-ui-heatmap-DElqpFVY.js +1078 -0
  55. package/dist/vue-ui-history-plot-De1Dvnhw.js +1073 -0
  56. package/dist/{vue-ui-kpi-jN_yMnLj.js → vue-ui-kpi-_bLScmgO.js} +26 -26
  57. package/dist/{vue-ui-mini-loader-rYr76x8g.js → vue-ui-mini-loader-PsHE_2Wy.js} +2 -2
  58. package/dist/{vue-ui-molecule-BWZHOQLi.js → vue-ui-molecule-CgiahnC6.js} +53 -51
  59. package/dist/vue-ui-mood-radar-dXVOOrhl.js +785 -0
  60. package/dist/vue-ui-nested-donuts-C0X6BetT.js +1286 -0
  61. package/dist/vue-ui-onion-C7sxQzk_.js +776 -0
  62. package/dist/vue-ui-parallel-coordinate-plot-jwtnNX59.js +915 -0
  63. package/dist/{vue-ui-quadrant-BFFzfDw3.js → vue-ui-quadrant-DguDE91h.js} +512 -459
  64. package/dist/vue-ui-quick-chart-BpEDS08U.js +1761 -0
  65. package/dist/vue-ui-radar-lFrqTRqo.js +796 -0
  66. package/dist/{vue-ui-rating-BAauyqTn.js → vue-ui-rating-BHghXziv.js} +2 -2
  67. package/dist/vue-ui-relation-circle-C5W6NFOb.js +598 -0
  68. package/dist/vue-ui-ridgeline-A2DuFEDS.js +1153 -0
  69. package/dist/vue-ui-rings-BgJAm9_b.js +728 -0
  70. package/dist/vue-ui-scatter-COfpLChz.js +1178 -0
  71. package/dist/{vue-ui-skeleton-CUOhCY4p.js → vue-ui-skeleton-DMLCBUtZ.js} +3 -3
  72. package/dist/{vue-ui-smiley-B6SqWMov.js → vue-ui-smiley-ZopESYc_.js} +26 -26
  73. package/dist/vue-ui-spark-trend-CuSQ03fQ.js +315 -0
  74. package/dist/vue-ui-sparkbar-BCsX9M4q.js +351 -0
  75. package/dist/vue-ui-sparkgauge-DdyZLA0T.js +232 -0
  76. package/dist/vue-ui-sparkhistogram-CUxFgIcE.js +380 -0
  77. package/dist/vue-ui-sparkline-DOkofsLL.js +489 -0
  78. package/dist/vue-ui-sparkstackbar-Bq9PZzmH.js +421 -0
  79. package/dist/vue-ui-stackbar-B7ceoT0V.js +1370 -0
  80. package/dist/vue-ui-strip-plot-DYh-NGQN.js +915 -0
  81. package/dist/{vue-ui-table-heatmap-DazTE3fa.js → vue-ui-table-heatmap-BVTb1xuA.js} +5 -5
  82. package/dist/{vue-ui-table-Dwjl3L0p.js → vue-ui-table-pESH5KAJ.js} +11 -11
  83. package/dist/{vue-ui-table-sparkline-BXMPUEpN.js → vue-ui-table-sparkline-Bw-6l9lA.js} +14 -14
  84. package/dist/vue-ui-thermometer-BqqfmS-B.js +541 -0
  85. package/dist/{vue-ui-timer-yLvNAZL_.js → vue-ui-timer-CVisMxLS.js} +5 -5
  86. package/dist/vue-ui-tiremarks-K1dcCdpj.js +406 -0
  87. package/dist/vue-ui-treemap-Bz3c68s4.js +1035 -0
  88. package/dist/{vue-ui-vertical-bar-BrYCoVym.js → vue-ui-vertical-bar-BvtXpCjw.js} +71 -69
  89. package/dist/vue-ui-waffle-CYO7bIf1.js +910 -0
  90. package/dist/vue-ui-wheel-De1spwLh.js +379 -0
  91. package/dist/vue-ui-word-cloud-BMmVrx_T.js +765 -0
  92. package/dist/{vue-ui-world-B4Dqrk4l.js → vue-ui-world-Ccpr00nJ.js} +11 -9
  93. package/dist/vue-ui-xy-D4jaRKe3.js +3771 -0
  94. package/dist/{vue-ui-xy-canvas-D7fL36kT.js → vue-ui-xy-canvas-DE-Uu5oq.js} +265 -264
  95. package/package.json +1 -1
  96. package/dist/Slicer-BD8Z8VCW.js +0 -577
  97. package/dist/useLoading-Bt5Doa8m.js +0 -28
  98. package/dist/useNestedProp-C_G5E08Y.js +0 -13
  99. package/dist/usePanZoom-BQMvRXEQ.js +0 -115
  100. package/dist/vue-ui-3d-bar-D8imUwEz.js +0 -1227
  101. package/dist/vue-ui-age-pyramid-CV7gtFOC.js +0 -746
  102. package/dist/vue-ui-bullet-BtuMMBF7.js +0 -513
  103. package/dist/vue-ui-candlestick-BsRtXKrv.js +0 -873
  104. package/dist/vue-ui-chord-CIuzYmpM.js +0 -949
  105. package/dist/vue-ui-donut-evolution-BRlsCA4U.js +0 -903
  106. package/dist/vue-ui-dumbbell-D87Dumjh.js +0 -753
  107. package/dist/vue-ui-flow-D_L_xssL.js +0 -765
  108. package/dist/vue-ui-galaxy-Cn6vHbaw.js +0 -617
  109. package/dist/vue-ui-gauge-Ds4terqY.js +0 -738
  110. package/dist/vue-ui-gizmo-BTncpI62.js +0 -192
  111. package/dist/vue-ui-heatmap-B6GpjeWC.js +0 -877
  112. package/dist/vue-ui-history-plot-DTDzEeGq.js +0 -924
  113. package/dist/vue-ui-mood-radar-CPfS6f1L.js +0 -670
  114. package/dist/vue-ui-nested-donuts-Bsd2kGoJ.js +0 -1177
  115. package/dist/vue-ui-onion-BQ4nISXW.js +0 -701
  116. package/dist/vue-ui-parallel-coordinate-plot-BoHgVgbn.js +0 -807
  117. package/dist/vue-ui-quick-chart-oNMTeOAL.js +0 -1612
  118. package/dist/vue-ui-radar-98mXFZe-.js +0 -741
  119. package/dist/vue-ui-relation-circle-6oDCSxkO.js +0 -542
  120. package/dist/vue-ui-ridgeline-CugMGjOU.js +0 -969
  121. package/dist/vue-ui-rings-bsGXaD2m.js +0 -685
  122. package/dist/vue-ui-scatter-7ssLliGg.js +0 -1045
  123. package/dist/vue-ui-spark-trend-jauInkkN.js +0 -291
  124. package/dist/vue-ui-sparkbar-DXByIxQH.js +0 -301
  125. package/dist/vue-ui-sparkgauge-BMrV2gDi.js +0 -201
  126. package/dist/vue-ui-sparkhistogram-CoNM4G7o.js +0 -313
  127. package/dist/vue-ui-sparkline-DrN3_wS0.js +0 -459
  128. package/dist/vue-ui-sparkstackbar-W1a0JQi9.js +0 -381
  129. package/dist/vue-ui-stackbar-D1-gbUgE.js +0 -1207
  130. package/dist/vue-ui-strip-plot-KhfvrVuN.js +0 -761
  131. package/dist/vue-ui-thermometer-Cn6lJRs3.js +0 -495
  132. package/dist/vue-ui-tiremarks-BYsWePfK.js +0 -358
  133. package/dist/vue-ui-treemap-Ce7RVFG3.js +0 -965
  134. package/dist/vue-ui-waffle-CCrR2T1G.js +0 -863
  135. package/dist/vue-ui-wheel-BuxjnrDN.js +0 -352
  136. package/dist/vue-ui-word-cloud-C6fawHJE.js +0 -659
  137. package/dist/vue-ui-xy-ubRnv9iJ.js +0 -2980
@@ -0,0 +1,834 @@
1
+ import { defineAsyncComponent as R, computed as g, ref as v, toRefs as tt, watch as Z, shallowRef as _e, onMounted as lt, onBeforeUnmount as Ae, watchEffect as at, createElementBlock as r, openBlock as i, unref as u, normalizeStyle as ee, normalizeClass as Le, createBlock as M, createCommentVNode as y, renderSlot as h, createVNode as Ce, createSlots as ot, withCtx as p, normalizeProps as P, guardReactiveProps as N, createElementVNode as d, Fragment as L, renderList as $, toDisplayString as C, createTextVNode as Te, nextTick as st } from "vue";
2
+ import { u as it, c as ut, t as rt, b as nt, o as $e, f as vt, h as f, X as dt, s as te, x as Se, k as S, i as z, v as yt, w as ht, y as ct, z as ft } from "./index-DKpp7RIH.js";
3
+ import { t as ze, u as gt } from "./useResponsive-DfdjqQps.js";
4
+ import { u as Ie } from "./useNestedProp-D-8c0o4p.js";
5
+ import { u as pt } from "./usePrinter-NUeckmCX.js";
6
+ import { u as bt } from "./useUserOptionState-BIvW1Kz7.js";
7
+ import { u as xt } from "./useChartAccessibility-9icAAmYg.js";
8
+ import mt from "./Title-VLWyIYrj.js";
9
+ import wt from "./img-DD_2wgY3.js";
10
+ import { u as kt } from "./useTimeLabelCollider-CIsgDrl9.js";
11
+ import { u as _t, B as At } from "./useLoading-D7YHNtLX.js";
12
+ import { _ as Lt } from "./_plugin-vue_export-helper-CHgC5LLL.js";
13
+ const Ct = ["id"], Tt = ["xmlns", "viewBox"], $t = ["x", "y", "width", "height"], St = ["id"], zt = ["stop-color"], It = ["stop-color"], Ot = ["id"], Ft = ["stop-color"], Rt = ["stop-color"], Mt = ["x", "y", "width", "height", "fill", "rx"], Pt = ["x", "y", "width", "height", "fill", "rx"], Nt = ["x", "y", "width", "height", "fill", "rx"], Et = ["x", "y", "width", "height", "fill", "rx"], Dt = { key: 0 }, Bt = ["x", "y", "fill", "font-size", "font-weight"], Gt = ["x", "y", "fill", "font-size", "font-weight"], Ht = { key: 1 }, Ut = ["x", "y", "font-size", "fill", "font-weight"], Vt = { key: 2 }, Wt = { key: 0 }, Xt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], jt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Yt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], qt = ["x1", "x2", "y1", "y2", "stroke", "stroke-width"], Jt = ["font-size", "fill", "text-anchor", "font-weight", "transform"], Kt = ["font-size", "fill", "text-anchor", "font-weight", "transform"], Qt = ["x", "y", "font-size", "fill", "font-weight"], Zt = ["x", "y", "width", "height", "fill", "onMouseover", "onMouseleave", "onClick"], el = {
14
+ key: 4,
15
+ class: "vue-data-ui-watermark"
16
+ }, tl = {
17
+ __name: "vue-ui-age-pyramid",
18
+ props: {
19
+ config: {
20
+ type: Object,
21
+ default() {
22
+ return {};
23
+ }
24
+ },
25
+ dataset: {
26
+ type: Array,
27
+ default() {
28
+ return [];
29
+ }
30
+ }
31
+ },
32
+ setup(le, { expose: Oe }) {
33
+ const Fe = R(() => import("./vue-ui-accordion-Cpovz3RE.js")), Re = R(() => import("./DataTable-B3yakHEM.js")), Me = R(() => import("./PackageVersion-6s4eI8W7.js")), Pe = R(() => import("./PenAndPaper-JoUN7Ink.js")), Ne = R(() => import("./Tooltip-BS5naLS2.js")), Ee = R(() => import("./UserOptions-BV_xM-sB.js")), { vue_ui_age_pyramid: De } = it(), b = le, ae = g(() => !!b.dataset && b.dataset.length), w = v(ut()), Be = v(null), V = v(!1), W = v(""), D = v(null), oe = v(0), k = v(null), se = v(null), ie = v(null), ue = v(null), re = v(0), ne = v(0), X = v(null), e = v(q()), { loading: ve, FINAL_DATASET: B, manualLoading: j } = _t({
34
+ ...tt(b),
35
+ FINAL_CONFIG: e,
36
+ prepareConfig: q,
37
+ skeletonDataset: [
38
+ ["_", 9, 2, 2],
39
+ ["_", 8, 3, 3],
40
+ ["_", 7, 5, 5],
41
+ ["_", 6, 8, 8],
42
+ ["_", 5, 13, 13],
43
+ ["_", 4, 21, 21],
44
+ ["_", 3, 34, 34],
45
+ ["_", 2, 55, 55],
46
+ ["_", 1, 89, 89],
47
+ ["_", 0, 144, 144]
48
+ ],
49
+ skeletonConfig: rt({
50
+ defaultConfig: e.value,
51
+ userConfig: {
52
+ userOptions: { show: !1 },
53
+ table: { show: !1 },
54
+ translations: {
55
+ male: "",
56
+ female: ""
57
+ },
58
+ style: {
59
+ backgroundColor: "#99999930",
60
+ layout: {
61
+ bars: {
62
+ left: { color: "#CACACA" },
63
+ right: { color: "#999999" }
64
+ },
65
+ dataLabels: {
66
+ xAxis: {
67
+ fontSize: 0,
68
+ scale: 1e3,
69
+ translation: ""
70
+ },
71
+ yAxis: {
72
+ show: !1
73
+ }
74
+ },
75
+ grid: {
76
+ stroke: "#6A6A6A"
77
+ }
78
+ }
79
+ }
80
+ }
81
+ })
82
+ }), { userOptionsVisible: Y, setUserOptionsVisibility: de, keepUserOptionState: ye } = bt({ config: e.value }), { svgRef: he } = xt({ config: e.value.style.title });
83
+ function q() {
84
+ const t = Ie({
85
+ userConfig: b.config,
86
+ defaultConfig: De
87
+ });
88
+ return t.theme ? {
89
+ ...Ie({
90
+ userConfig: nt.vue_ui_age_pyramid[t.theme] || b.config,
91
+ defaultConfig: t
92
+ })
93
+ } : t;
94
+ }
95
+ Z(() => b.config, (t) => {
96
+ ve.value || (e.value = q()), Y.value = !e.value.userOptions.showOnChartHover, ce(), re.value += 1, ne.value += 1, x.value.showTable = e.value.table.show, x.value.showTooltip = e.value.style.tooltip.show;
97
+ }, { deep: !0 }), Z(() => b.dataset, (t) => {
98
+ Array.isArray(t) && t.length > 0 && (j.value = !1);
99
+ }, { deep: !0 });
100
+ const _ = _e(null), I = _e(null);
101
+ lt(() => {
102
+ ce();
103
+ });
104
+ const Ge = g(() => !!e.value.debug);
105
+ function ce() {
106
+ if ($e(b.dataset) && (vt({
107
+ componentName: "VueUiAgePyramid",
108
+ type: "dataset",
109
+ debug: Ge.value
110
+ }), j.value = !0), $e(b.dataset) || (j.value = e.value.loading), e.value.responsive) {
111
+ const t = ze(() => {
112
+ const { width: o, height: l } = gt({
113
+ chart: k.value,
114
+ title: e.value.style.title.text ? se.value : null,
115
+ source: ie.value,
116
+ noTitle: ue.value
117
+ });
118
+ requestAnimationFrame(() => {
119
+ c.value.width = o, c.value.height = l;
120
+ });
121
+ });
122
+ _.value && (I.value && _.value.unobserve(I.value), _.value.disconnect()), _.value = new ResizeObserver(t), I.value = k.value.parentNode, _.value.observe(I.value);
123
+ }
124
+ }
125
+ Ae(() => {
126
+ _.value && (I.value && _.value.unobserve(I.value), _.value.disconnect());
127
+ });
128
+ const { isPrinting: fe, isImaging: ge, generatePdf: pe, generateImage: be } = pt({
129
+ elementId: `vue-ui-age-pyramid_${w.value}`,
130
+ fileName: e.value.style.title.text || "vue-ui-age-pyramid",
131
+ options: e.value.userOptions.print
132
+ }), He = g(() => e.value.userOptions.show && !e.value.style.title.text), x = v({
133
+ showTable: e.value.table.show,
134
+ showTooltip: e.value.style.tooltip.show
135
+ });
136
+ Z(e, () => {
137
+ x.value = {
138
+ showTable: e.value.table.show,
139
+ showTooltip: e.value.style.tooltip.show
140
+ };
141
+ }, { immediate: !0 });
142
+ const c = v({
143
+ height: e.value.style.height,
144
+ width: e.value.style.width
145
+ }), Ue = g(() => c.value.width), Ve = g(() => c.value.height), G = v(0), We = ze((t) => {
146
+ G.value = t;
147
+ }, 100);
148
+ at((t) => {
149
+ const o = X.value;
150
+ if (!o) return;
151
+ const l = new ResizeObserver((a) => {
152
+ We(a[0].contentRect.height);
153
+ });
154
+ l.observe(o), t(() => l.disconnect());
155
+ }), Ae(() => {
156
+ G.value = 0;
157
+ });
158
+ const s = g(() => {
159
+ const t = c.value.width - e.value.style.layout.padding.right - e.value.style.layout.padding.left, o = e.value.style.layout.padding.left, l = c.value.width - e.value.style.layout.padding.right;
160
+ return {
161
+ top: e.value.style.layout.padding.top + e.value.style.layout.dataLabels.sideTitles.fontSize + e.value.style.layout.dataLabels.sideTitles.offsetY + 12,
162
+ left: o,
163
+ right: l,
164
+ bottom: c.value.height - e.value.style.layout.padding.bottom - G.value,
165
+ width: t,
166
+ height: c.value.height - e.value.style.layout.padding.top - e.value.style.layout.padding.bottom - G.value - e.value.style.layout.dataLabels.sideTitles.fontSize - e.value.style.layout.dataLabels.sideTitles.offsetY - 12,
167
+ centerX: e.value.style.layout.padding.left + t / 2,
168
+ leftChart: {
169
+ width: t / 2 - e.value.style.layout.centerSlit.width,
170
+ right: o + t / 2 - e.value.style.layout.centerSlit.width
171
+ },
172
+ rightChart: {
173
+ width: t / 2 - e.value.style.layout.centerSlit.width,
174
+ left: o + t / 2 + e.value.style.layout.centerSlit.width
175
+ }
176
+ };
177
+ }), Xe = g(() => B.value.map((t) => e.value.style.layout.dataLabels.yAxis.display === "age" ? t[1] : t[0])), A = g(() => {
178
+ const t = je(E.value / 5), o = [], l = [];
179
+ for (let a = 0; a <= 5; a += 1) {
180
+ const n = t * a, m = t * (a - 5);
181
+ o.push({
182
+ value: n,
183
+ x: s.value.left + s.value.width / 2 + e.value.style.layout.centerSlit.width + n / E.value * s.value.leftChart.width
184
+ }), l.push({
185
+ value: Math.abs(m),
186
+ x: s.value.left + s.value.width / 2 + m / E.value * s.value.leftChart.width - e.value.style.layout.centerSlit.width
187
+ });
188
+ }
189
+ return {
190
+ right: o,
191
+ left: l
192
+ };
193
+ });
194
+ function je(t) {
195
+ if (t === 0) return 0;
196
+ const l = 10 ** Math.floor(Math.log10(Math.abs(t)));
197
+ let a;
198
+ return t < 0, a = Math.round(t / l) * l, a;
199
+ }
200
+ const E = g(() => Math.max(...B.value.flatMap((t) => t.slice(-2).map((o) => f(o))))), O = g(() => B.value.length), Ye = g(() => B.value.map((t) => ({
201
+ segment: t[0],
202
+ age: t[1],
203
+ left: {
204
+ value: t[2],
205
+ proportionToMax: t[2] / E.value
206
+ },
207
+ right: {
208
+ value: t[3],
209
+ proportionToMax: t[3] / E.value
210
+ }
211
+ }))), T = g(() => Ye.value.map((t, o) => {
212
+ const l = s.value.top + s.value.height / O.value * o, a = s.value.height / O.value - e.value.style.layout.bars.gap;
213
+ return {
214
+ segment: t.segment,
215
+ age: t.age,
216
+ left: {
217
+ ...t.left,
218
+ y: l,
219
+ color: e.value.style.layout.bars.left.color,
220
+ x: s.value.leftChart.right - t.left.proportionToMax * s.value.leftChart.width,
221
+ width: f(t.left.proportionToMax * s.value.leftChart.width),
222
+ height: a
223
+ },
224
+ right: {
225
+ ...t.right,
226
+ y: l,
227
+ color: e.value.style.layout.bars.right.color,
228
+ x: s.value.rightChart.left,
229
+ width: f(t.right.proportionToMax * s.value.rightChart.width),
230
+ height: a
231
+ }
232
+ };
233
+ })), J = v(null);
234
+ function K(t) {
235
+ const [o, l, a, n] = t;
236
+ return { segment: o, index: l, left: a, right: n };
237
+ }
238
+ function qe(t, o) {
239
+ e.value.events.datapointClick && e.value.events.datapointClick({ datapoint: K(o), seriesIndex: t });
240
+ }
241
+ function Je(t, o) {
242
+ e.value.events.datapointLeave && e.value.events.datapointLeave({ datapoint: K(o), seriesIndex: t }), D.value = null, V.value = !1;
243
+ }
244
+ function Ke(t, o) {
245
+ e.value.events.datapointEnter && e.value.events.datapointEnter({ datapoint: K(o), seriesIndex: t }), D.value = t, J.value = {
246
+ datapoint: o,
247
+ seriesIndex: t,
248
+ series: T.value,
249
+ config: e.value
250
+ };
251
+ const l = e.value.style.tooltip.customFormat;
252
+ if (ct(l) && ft(() => l({
253
+ seriesIndex: t,
254
+ datapoint: {
255
+ segment: o[0],
256
+ index: o[1],
257
+ left: o[2],
258
+ right: o[3]
259
+ },
260
+ series: T.value,
261
+ config: e.value
262
+ })))
263
+ W.value = l({
264
+ seriesIndex: t,
265
+ datapoint: {
266
+ segment: o[0],
267
+ index: o[1],
268
+ left: o[2],
269
+ right: o[3]
270
+ },
271
+ series: T.value,
272
+ config: e.value
273
+ });
274
+ else {
275
+ let a = "";
276
+ const n = T.value[t];
277
+ a += `<div><b>${n.segment}</b></div>`, a += `<div>${e.value.translations.age}: ${S(
278
+ e.value.style.layout.dataLabels.yAxis.formatter,
279
+ f(n.age),
280
+ z({ v: f(n.age) }),
281
+ { datapoint: o, seriesIndex: t }
282
+ )}</div>`, a += `<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${e.value.style.tooltip.borderColor}">`, a += '<div style="display:flex; flex-direction:row;gap:12px">', a += `<div style="display:flex;flex-direction:column;align-items:center;justify-content:center"><svg viewBox="0 0 12 12" height="12" width="12"><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${e.value.style.layout.bars.gradient.underlayer}"/><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${e.value.style.layout.bars.gradient.show ? `url(#age_pyramid_left_${w.value})` : e.value.style.layout.bars.left.color}"/></svg><div>${e.value.translations.female}</div><div><b>${S(
283
+ e.value.style.layout.dataLabels.xAxis.formatter,
284
+ f(n.left.value),
285
+ z({ v: f(n.left.value) }),
286
+ { datapoint: o, seriesIndex: t }
287
+ )}</b></div></div>`, a += `<div style="display:flex;flex-direction:column;align-items:center;justify-content:center"><svg viewBox="0 0 12 12" height="12" width="12"><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${e.value.style.layout.bars.gradient.underlayer}"/><rect stroke="none" x="0" y="0" height="12" width="12" rx="2" fill="${e.value.style.layout.bars.gradient.show ? `url(#age_pyramid_right_${w.value})` : e.value.style.layout.bars.right.color}"/></svg><div>${e.value.translations.male}</div><div><b>${S(
288
+ e.value.style.layout.dataLabels.xAxis.formatter,
289
+ f(n.right.value),
290
+ z({ v: f(n.right.value) }),
291
+ { datapoint: o, seriesIndex: t }
292
+ )}</b></div></div>`, a += "</div>", a += `<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${e.value.style.tooltip.borderColor}"><div>${e.value.translations.total}</div><div><b>${S(
293
+ e.value.style.layout.dataLabels.xAxis.formatter,
294
+ f(n.right.value) + f(n.left.value),
295
+ z({ v: f(n.right.value) + f(n.left.value) }),
296
+ { datapoint: o, seriesIndex: t }
297
+ )}</b></div></div>`, a += "</div>", W.value = `<div>${a}</div>`;
298
+ }
299
+ V.value = !0;
300
+ }
301
+ function xe(t = null) {
302
+ st(() => {
303
+ const o = [e.value.translations.year, e.value.translations.age, e.value.translations.female, e.value.translations.male, e.value.translations.total], l = b.dataset.map((m) => [
304
+ m[0],
305
+ m[1],
306
+ m[2],
307
+ m[3],
308
+ m[2] + m[3]
309
+ ]), a = [[e.value.style.title.text], [e.value.style.title.subtitle.text], [[""], [""], [""]]].concat([o]).concat(l), n = yt(a);
310
+ t ? t(n) : ht({ csvContent: n, title: e.value.style.title.text || "vue-ui-heatmap" });
311
+ });
312
+ }
313
+ const H = g(() => {
314
+ const t = [
315
+ e.value.translations.year,
316
+ e.value.translations.age,
317
+ e.value.translations.female,
318
+ e.value.translations.male,
319
+ e.value.translations.total
320
+ ], o = b.dataset.map((a) => [
321
+ a[0],
322
+ a[1],
323
+ a[2].toLocaleString(),
324
+ a[3].toLocaleString(),
325
+ (a[2] + a[3]).toLocaleString()
326
+ ]), l = {
327
+ th: {
328
+ backgroundColor: e.value.table.th.backgroundColor,
329
+ color: e.value.table.th.color,
330
+ outline: e.value.table.th.outline
331
+ },
332
+ td: {
333
+ backgroundColor: e.value.table.td.backgroundColor,
334
+ color: e.value.table.td.color,
335
+ outline: e.value.table.td.outline
336
+ },
337
+ breakpoint: e.value.table.responsiveBreakpoint
338
+ };
339
+ return { head: t, body: o, config: l, colNames: t };
340
+ }), F = v(!1);
341
+ function me(t) {
342
+ F.value = t, oe.value += 1;
343
+ }
344
+ function we() {
345
+ x.value.showTable = !x.value.showTable;
346
+ }
347
+ function ke() {
348
+ x.value.showTooltip = !x.value.showTooltip;
349
+ }
350
+ const U = v(!1);
351
+ function Q() {
352
+ U.value = !U.value;
353
+ }
354
+ async function Qe({ scale: t = 2 } = {}) {
355
+ if (!k.value) return;
356
+ const { width: o, height: l } = k.value.getBoundingClientRect(), a = o / l, { imageUri: n, base64: m } = await wt({ domElement: k.value, base64: !0, img: !0, scale: t });
357
+ return {
358
+ imageUri: n,
359
+ base64: m,
360
+ title: e.value.style.title.text,
361
+ width: o,
362
+ height: l,
363
+ aspectRatio: a
364
+ };
365
+ }
366
+ const Ze = v([]), et = v({ start: 0, end: T.value.length });
367
+ return kt({
368
+ timeLabelsEls: X,
369
+ timeLabels: Ze,
370
+ slicer: et,
371
+ configRef: e,
372
+ rotationPath: ["style", "layout", "dataLabels", "xAxis", "rotation"],
373
+ autoRotatePath: ["style", "layout", "dataLabels", "xAxis", "autoRotate"],
374
+ isAutoSize: !1,
375
+ width: Ue,
376
+ height: Ve,
377
+ targetClass: ".vue-ui-age-pyramid-x-axis-label"
378
+ }), Oe({
379
+ getImage: Qe,
380
+ generatePdf: pe,
381
+ generateCsv: xe,
382
+ generateImage: be,
383
+ toggleTable: we,
384
+ toggleTooltip: ke,
385
+ toggleAnnotator: Q,
386
+ toggleFullscreen: me
387
+ }), (t, o) => (i(), r("div", {
388
+ class: Le(`vue-ui-age-pyramid ${F.value ? "vue-data-ui-wrapper-fullscreen" : ""}`),
389
+ ref_key: "agePyramid",
390
+ ref: k,
391
+ id: `vue-ui-age-pyramid_${w.value}`,
392
+ style: ee(`font-family:${e.value.style.fontFamily};width:100%; text-align:center;background:${e.value.style.backgroundColor};${e.value.responsive ? "height:100%" : ""}`),
393
+ onMouseenter: o[1] || (o[1] = () => u(de)(!0)),
394
+ onMouseleave: o[2] || (o[2] = () => u(de)(!1))
395
+ }, [
396
+ e.value.userOptions.buttons.annotator ? (i(), M(u(Pe), {
397
+ key: 0,
398
+ svgRef: u(he),
399
+ backgroundColor: e.value.style.backgroundColor,
400
+ color: e.value.style.color,
401
+ active: U.value,
402
+ onClose: Q
403
+ }, null, 8, ["svgRef", "backgroundColor", "color", "active"])) : y("", !0),
404
+ He.value ? (i(), r("div", {
405
+ key: 1,
406
+ ref_key: "noTitle",
407
+ ref: ue,
408
+ class: "vue-data-ui-no-title-space",
409
+ style: "height:36px; width: 100%;background:transparent"
410
+ }, null, 512)) : y("", !0),
411
+ e.value.style.title.text ? (i(), r("div", {
412
+ key: 2,
413
+ ref_key: "chartTitle",
414
+ ref: se,
415
+ style: "width:100%;background:transparent"
416
+ }, [
417
+ (i(), M(mt, {
418
+ key: `title_${re.value}`,
419
+ config: {
420
+ title: {
421
+ cy: "pyramid-div-title",
422
+ ...e.value.style.title
423
+ },
424
+ subtitle: {
425
+ cy: "pyramid-div-subtitle",
426
+ ...e.value.style.title.subtitle
427
+ }
428
+ }
429
+ }, null, 8, ["config"]))
430
+ ], 512)) : y("", !0),
431
+ e.value.userOptions.show && ae.value && (u(ye) || u(Y)) ? (i(), M(u(Ee), {
432
+ ref_key: "details",
433
+ ref: Be,
434
+ key: `user_options_${oe.value}`,
435
+ backgroundColor: e.value.style.backgroundColor,
436
+ color: e.value.style.color,
437
+ isImaging: u(ge),
438
+ isPrinting: u(fe),
439
+ uid: w.value,
440
+ hasTooltip: e.value.userOptions.buttons.tooltip && e.value.style.tooltip.show,
441
+ hasPdf: e.value.userOptions.buttons.pdf,
442
+ hasXls: e.value.userOptions.buttons.csv,
443
+ hasImg: e.value.userOptions.buttons.img,
444
+ hasTable: e.value.userOptions.buttons.table,
445
+ hasFullscreen: e.value.userOptions.buttons.fullscreen,
446
+ isFullscreen: F.value,
447
+ isTooltip: x.value.showTooltip,
448
+ titles: { ...e.value.userOptions.buttonTitles },
449
+ chartElement: k.value,
450
+ position: e.value.userOptions.position,
451
+ hasAnnotator: e.value.userOptions.buttons.annotator,
452
+ isAnnotation: U.value,
453
+ callbacks: e.value.userOptions.callbacks,
454
+ printScale: e.value.userOptions.print.scale,
455
+ onToggleFullscreen: me,
456
+ onGeneratePdf: u(pe),
457
+ onGenerateCsv: xe,
458
+ onGenerateImage: u(be),
459
+ onToggleTable: we,
460
+ onToggleTooltip: ke,
461
+ onToggleAnnotator: Q,
462
+ style: ee({
463
+ visibility: u(ye) ? u(Y) ? "visible" : "hidden" : "visible"
464
+ })
465
+ }, ot({ _: 2 }, [
466
+ t.$slots.menuIcon ? {
467
+ name: "menuIcon",
468
+ fn: p(({ isOpen: l, color: a }) => [
469
+ h(t.$slots, "menuIcon", P(N({ isOpen: l, color: a })), void 0, !0)
470
+ ]),
471
+ key: "0"
472
+ } : void 0,
473
+ t.$slots.optionTooltip ? {
474
+ name: "optionTooltip",
475
+ fn: p(() => [
476
+ h(t.$slots, "optionTooltip", {}, void 0, !0)
477
+ ]),
478
+ key: "1"
479
+ } : void 0,
480
+ t.$slots.optionPdf ? {
481
+ name: "optionPdf",
482
+ fn: p(() => [
483
+ h(t.$slots, "optionPdf", {}, void 0, !0)
484
+ ]),
485
+ key: "2"
486
+ } : void 0,
487
+ t.$slots.optionCsv ? {
488
+ name: "optionCsv",
489
+ fn: p(() => [
490
+ h(t.$slots, "optionCsv", {}, void 0, !0)
491
+ ]),
492
+ key: "3"
493
+ } : void 0,
494
+ t.$slots.optionImg ? {
495
+ name: "optionImg",
496
+ fn: p(() => [
497
+ h(t.$slots, "optionImg", {}, void 0, !0)
498
+ ]),
499
+ key: "4"
500
+ } : void 0,
501
+ t.$slots.optionTable ? {
502
+ name: "optionTable",
503
+ fn: p(() => [
504
+ h(t.$slots, "optionTable", {}, void 0, !0)
505
+ ]),
506
+ key: "5"
507
+ } : void 0,
508
+ t.$slots.optionFullscreen ? {
509
+ name: "optionFullscreen",
510
+ fn: p(({ toggleFullscreen: l, isFullscreen: a }) => [
511
+ h(t.$slots, "optionFullscreen", P(N({ toggleFullscreen: l, isFullscreen: a })), void 0, !0)
512
+ ]),
513
+ key: "6"
514
+ } : void 0,
515
+ t.$slots.optionAnnotator ? {
516
+ name: "optionAnnotator",
517
+ fn: p(({ toggleAnnotator: l, isAnnotator: a }) => [
518
+ h(t.$slots, "optionAnnotator", P(N({ toggleAnnotator: l, isAnnotator: a })), void 0, !0)
519
+ ]),
520
+ key: "7"
521
+ } : void 0
522
+ ]), 1032, ["backgroundColor", "color", "isImaging", "isPrinting", "uid", "hasTooltip", "hasPdf", "hasXls", "hasImg", "hasTable", "hasFullscreen", "isFullscreen", "isTooltip", "titles", "chartElement", "position", "hasAnnotator", "isAnnotation", "callbacks", "printScale", "onGeneratePdf", "onGenerateImage", "style"])) : y("", !0),
523
+ (i(), r("svg", {
524
+ ref_key: "svgRef",
525
+ ref: he,
526
+ xmlns: u(dt),
527
+ class: Le({ "vue-data-ui-fullscreen--on": F.value, "vue-data-ui-fulscreen--off": !F.value }),
528
+ viewBox: `0 0 ${c.value.width <= 0 ? 10 : c.value.width} ${c.value.height <= 0 ? 10 : c.value.height}`,
529
+ style: ee(`max-width:100%;overflow:visible;background:transparent;color:${e.value.style.color}`)
530
+ }, [
531
+ Ce(u(Me)),
532
+ t.$slots["chart-background"] ? (i(), r("foreignObject", {
533
+ key: 0,
534
+ x: s.value.left,
535
+ y: s.value.top,
536
+ width: Math.max(0.1, s.value.width),
537
+ height: Math.max(0.1, s.value.height),
538
+ style: {
539
+ pointerEvents: "none"
540
+ }
541
+ }, [
542
+ h(t.$slots, "chart-background", {}, void 0, !0)
543
+ ], 8, $t)) : y("", !0),
544
+ d("defs", null, [
545
+ d("linearGradient", {
546
+ id: `age_pyramid_left_${w.value}`,
547
+ x1: "0%",
548
+ y1: "0%",
549
+ x2: "100%",
550
+ y2: "0%"
551
+ }, [
552
+ d("stop", {
553
+ offset: "0%",
554
+ "stop-color": e.value.style.layout.bars.left.color
555
+ }, null, 8, zt),
556
+ d("stop", {
557
+ offset: "100%",
558
+ "stop-color": u(te)(u(Se)(e.value.style.layout.bars.left.color, e.value.style.layout.bars.gradient.shiftHue), 100 - e.value.style.layout.bars.gradient.intensity)
559
+ }, null, 8, It)
560
+ ], 8, St),
561
+ d("linearGradient", {
562
+ id: `age_pyramid_right_${w.value}`,
563
+ x1: "0%",
564
+ y1: "0%",
565
+ x2: "100%",
566
+ y2: "0%"
567
+ }, [
568
+ d("stop", {
569
+ offset: "0%",
570
+ "stop-color": u(te)(u(Se)(e.value.style.layout.bars.right.color, e.value.style.layout.bars.gradient.shiftHue), 100 - e.value.style.layout.bars.gradient.intensity)
571
+ }, null, 8, Ft),
572
+ d("stop", {
573
+ offset: "100%",
574
+ "stop-color": e.value.style.layout.bars.right.color
575
+ }, null, 8, Rt)
576
+ ], 8, Ot)
577
+ ]),
578
+ (i(!0), r(L, null, $(T.value, (l, a) => (i(), r("g", null, [
579
+ d("rect", {
580
+ x: l.left.x,
581
+ y: l.left.y,
582
+ width: u(f)(l.left.width <= 0 ? 1e-4 : l.left.width),
583
+ height: l.left.height <= 0 ? 1e-4 : l.left.height,
584
+ fill: e.value.style.layout.bars.gradient.underlayer,
585
+ rx: e.value.style.layout.bars.borderRadius
586
+ }, null, 8, Mt),
587
+ d("rect", {
588
+ x: l.left.x,
589
+ y: l.left.y,
590
+ width: l.left.width <= 0 ? 1e-4 : l.left.width,
591
+ height: l.left.height <= 0 ? 1e-4 : l.left.height,
592
+ fill: e.value.style.layout.bars.gradient.show ? `url(#age_pyramid_left_${w.value})` : l.left.color,
593
+ rx: e.value.style.layout.bars.borderRadius
594
+ }, null, 8, Pt),
595
+ d("rect", {
596
+ x: l.right.x,
597
+ y: l.right.y,
598
+ width: l.right.width <= 0 ? 1e-4 : l.right.width,
599
+ height: l.right.height <= 0 ? 1e-4 : l.right.height,
600
+ fill: e.value.style.layout.bars.gradient.underlayer,
601
+ rx: e.value.style.layout.bars.borderRadius
602
+ }, null, 8, Nt),
603
+ d("rect", {
604
+ x: l.right.x,
605
+ y: l.right.y,
606
+ width: l.right.width <= 0 ? 1e-4 : l.right.width,
607
+ height: l.right.height <= 0 ? 1e-4 : l.right.height,
608
+ fill: e.value.style.layout.bars.gradient.show ? `url(#age_pyramid_right_${w.value})` : l.right.color,
609
+ rx: e.value.style.layout.bars.borderRadius
610
+ }, null, 8, Et)
611
+ ]))), 256)),
612
+ d("g", null, [
613
+ e.value.style.layout.dataLabels.sideTitles.show ? (i(), r("g", Dt, [
614
+ d("text", {
615
+ x: s.value.left,
616
+ y: e.value.style.layout.dataLabels.sideTitles.fontSize,
617
+ fill: e.value.style.layout.dataLabels.sideTitles.useSideColor ? e.value.style.layout.bars.left.color : e.value.style.layout.dataLabels.sideTitles.color,
618
+ "font-size": e.value.style.layout.dataLabels.sideTitles.fontSize,
619
+ "text-anchor": "start",
620
+ "font-weight": e.value.style.layout.dataLabels.sideTitles.bold ? "bold" : "normal"
621
+ }, C(e.value.translations.female), 9, Bt),
622
+ d("text", {
623
+ x: s.value.right,
624
+ y: e.value.style.layout.dataLabels.sideTitles.fontSize,
625
+ fill: e.value.style.layout.dataLabels.sideTitles.useSideColor ? e.value.style.layout.bars.right.color : e.value.style.layout.dataLabels.sideTitles.color,
626
+ "font-size": e.value.style.layout.dataLabels.sideTitles.fontSize,
627
+ "text-anchor": "end",
628
+ "font-weight": e.value.style.layout.dataLabels.sideTitles.bold ? "bold" : "normal"
629
+ }, C(e.value.translations.male), 9, Gt)
630
+ ])) : y("", !0),
631
+ e.value.style.layout.dataLabels.yAxis.show ? (i(), r("g", Ht, [
632
+ (i(!0), r(L, null, $(Xe.value, (l, a) => (i(), r(L, null, [
633
+ a % e.value.style.layout.dataLabels.yAxis.showEvery === 0 ? (i(), r("text", {
634
+ key: 0,
635
+ x: s.value.centerX,
636
+ y: s.value.top + s.value.height / O.value * a + e.value.style.layout.dataLabels.yAxis.fontSize / 3,
637
+ "text-anchor": "middle",
638
+ "font-size": e.value.style.layout.dataLabels.yAxis.fontSize,
639
+ fill: e.value.style.layout.dataLabels.yAxis.color,
640
+ "font-weight": e.value.style.layout.dataLabels.yAxis.bold ? "bold" : "normal"
641
+ }, C(u(S)(
642
+ e.value.style.layout.dataLabels.yAxis.formatter,
643
+ l,
644
+ u(z)({ v: l }),
645
+ { datapoint: l, seriesIndex: a }
646
+ )), 9, Ut)) : y("", !0)
647
+ ], 64))), 256))
648
+ ])) : y("", !0),
649
+ e.value.style.layout.dataLabels.xAxis.show ? (i(), r("g", Vt, [
650
+ e.value.style.layout.grid.show ? (i(), r("g", Wt, [
651
+ d("line", {
652
+ x1: A.value.right[0].x,
653
+ x2: A.value.right.at(-1).x,
654
+ y1: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2,
655
+ y2: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2,
656
+ stroke: e.value.style.layout.grid.stroke,
657
+ "stroke-width": e.value.style.layout.grid.strokeWidth,
658
+ "stroke-linecap": "round"
659
+ }, null, 8, Xt),
660
+ d("line", {
661
+ x1: A.value.left[0].x,
662
+ x2: A.value.left.at(-1).x,
663
+ y1: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2,
664
+ y2: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2,
665
+ stroke: e.value.style.layout.grid.stroke,
666
+ "stroke-width": e.value.style.layout.grid.strokeWidth,
667
+ "stroke-linecap": "round"
668
+ }, null, 8, jt)
669
+ ])) : y("", !0),
670
+ (i(!0), r(L, null, $(A.value.right, (l, a) => (i(), r("g", null, [
671
+ e.value.style.layout.grid.show ? (i(), r("line", {
672
+ key: 0,
673
+ x1: l.x,
674
+ x2: l.x,
675
+ y1: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2,
676
+ y2: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2 + 4,
677
+ stroke: e.value.style.layout.grid.stroke,
678
+ "stroke-width": e.value.style.layout.grid.strokeWidth,
679
+ "stroke-linecap": "round"
680
+ }, null, 8, Yt)) : y("", !0)
681
+ ]))), 256)),
682
+ (i(!0), r(L, null, $(A.value.left, (l, a) => (i(), r("g", null, [
683
+ e.value.style.layout.grid.show ? (i(), r("line", {
684
+ key: 0,
685
+ x1: l.x,
686
+ x2: l.x,
687
+ y1: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2,
688
+ y2: s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize / 2 + 4,
689
+ stroke: e.value.style.layout.grid.stroke,
690
+ "stroke-width": e.value.style.layout.grid.strokeWidth,
691
+ "stroke-linecap": "round"
692
+ }, null, 8, qt)) : y("", !0)
693
+ ]))), 256)),
694
+ d("g", {
695
+ ref_key: "xAxisLabels",
696
+ ref: X
697
+ }, [
698
+ (i(!0), r(L, null, $(A.value.right, (l, a) => (i(), r("text", {
699
+ class: "vue-ui-age-pyramid-x-axis-label",
700
+ "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
701
+ fill: e.value.style.layout.dataLabels.xAxis.color,
702
+ "text-anchor": e.value.style.layout.dataLabels.xAxis.rotation > 0 ? "start" : e.value.style.layout.dataLabels.xAxis.rotation < 0 ? "end" : "middle",
703
+ "font-weight": e.value.style.layout.dataLabels.xAxis.bold ? "bold" : "normal",
704
+ transform: `translate(${l.x}, ${s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize * 2}) rotate(${e.value.style.layout.dataLabels.xAxis.rotation})`
705
+ }, C(u(S)(
706
+ e.value.style.layout.dataLabels.xAxis.formatter,
707
+ l.value / e.value.style.layout.dataLabels.xAxis.scale,
708
+ u(z)({
709
+ v: l.value / e.value.style.layout.dataLabels.xAxis.scale
710
+ }),
711
+ { datapoint: l, seriesIndex: a }
712
+ )), 9, Jt))), 256)),
713
+ (i(!0), r(L, null, $(A.value.left, (l, a) => (i(), r("text", {
714
+ class: "vue-ui-age-pyramid-x-axis-label",
715
+ "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
716
+ fill: e.value.style.layout.dataLabels.xAxis.color,
717
+ "text-anchor": e.value.style.layout.dataLabels.xAxis.rotation > 0 ? "start" : e.value.style.layout.dataLabels.xAxis.rotation < 0 ? "end" : "middle",
718
+ "font-weight": e.value.style.layout.dataLabels.xAxis.bold ? "bold" : "normal",
719
+ transform: `translate(${l.x}, ${s.value.bottom + e.value.style.layout.dataLabels.xAxis.fontSize * 2}) rotate(${e.value.style.layout.dataLabels.xAxis.rotation})`
720
+ }, C(u(S)(
721
+ e.value.style.layout.dataLabels.xAxis.formatter,
722
+ l.value / e.value.style.layout.dataLabels.xAxis.scale,
723
+ u(z)({
724
+ v: l.value / e.value.style.layout.dataLabels.xAxis.scale
725
+ }),
726
+ { datapoint: l, seriesIndex: a }
727
+ )), 9, Kt))), 256))
728
+ ], 512),
729
+ d("text", {
730
+ x: s.value.right,
731
+ y: c.value.height,
732
+ "text-anchor": "end",
733
+ "font-size": e.value.style.layout.dataLabels.xAxis.fontSize,
734
+ fill: e.value.style.layout.dataLabels.xAxis.color,
735
+ "font-weight": e.value.style.layout.dataLabels.xAxis.bold ? "bold" : "normal"
736
+ }, C(e.value.style.layout.dataLabels.xAxis.translation), 9, Qt)
737
+ ])) : y("", !0)
738
+ ]),
739
+ (i(!0), r(L, null, $(le.dataset, (l, a) => (i(), r("g", null, [
740
+ d("rect", {
741
+ x: s.value.left,
742
+ y: s.value.top + s.value.height / O.value * a - e.value.style.layout.bars.gap / 2,
743
+ width: s.value.width <= 0 ? 1e-4 : s.value.width,
744
+ height: s.value.height / O.value <= 0 ? 1e-4 : s.value.height / O.value,
745
+ fill: D.value !== null && D.value === a ? u(te)(e.value.style.highlighter.color, e.value.style.highlighter.opacity) : "transparent",
746
+ onMouseover: (n) => Ke(a, l),
747
+ onMouseleave: (n) => Je(a, l),
748
+ onClick: (n) => qe(a, l)
749
+ }, null, 40, Zt)
750
+ ]))), 256)),
751
+ h(t.$slots, "svg", { svg: c.value }, void 0, !0)
752
+ ], 14, Tt)),
753
+ t.$slots.watermark ? (i(), r("div", el, [
754
+ h(t.$slots, "watermark", P(N({ isPrinting: u(fe) || u(ge) })), void 0, !0)
755
+ ])) : y("", !0),
756
+ h(t.$slots, "legend", { legend: T.value }, void 0, !0),
757
+ t.$slots.source ? (i(), r("div", {
758
+ key: 5,
759
+ ref_key: "source",
760
+ ref: ie,
761
+ dir: "auto"
762
+ }, [
763
+ h(t.$slots, "source", {}, void 0, !0)
764
+ ], 512)) : y("", !0),
765
+ Ce(u(Ne), {
766
+ show: x.value.showTooltip && V.value,
767
+ backgroundColor: e.value.style.tooltip.backgroundColor,
768
+ color: e.value.style.tooltip.color,
769
+ borderRadius: e.value.style.tooltip.borderRadius,
770
+ borderColor: e.value.style.tooltip.borderColor,
771
+ borderWidth: e.value.style.tooltip.borderWidth,
772
+ fontSize: e.value.style.tooltip.fontSize,
773
+ backgroundOpacity: e.value.style.tooltip.backgroundOpacity,
774
+ position: e.value.style.tooltip.position,
775
+ offsetY: e.value.style.tooltip.offsetY,
776
+ parent: k.value,
777
+ content: W.value,
778
+ isFullscreen: F.value,
779
+ isCustom: e.value.style.tooltip.customFormat && typeof e.value.style.tooltip.customFormat == "function",
780
+ smooth: e.value.style.tooltip.smooth,
781
+ backdropFilter: e.value.style.tooltip.backdropFilter
782
+ }, {
783
+ "tooltip-before": p(() => [
784
+ h(t.$slots, "tooltip-before", P(N({ ...J.value })), void 0, !0)
785
+ ]),
786
+ "tooltip-after": p(() => [
787
+ h(t.$slots, "tooltip-after", P(N({ ...J.value })), void 0, !0)
788
+ ]),
789
+ _: 3
790
+ }, 8, ["show", "backgroundColor", "color", "borderRadius", "borderColor", "borderWidth", "fontSize", "backgroundOpacity", "position", "offsetY", "parent", "content", "isFullscreen", "isCustom", "smooth", "backdropFilter"]),
791
+ ae.value ? (i(), M(u(Fe), {
792
+ key: 6,
793
+ hideDetails: "",
794
+ config: {
795
+ open: x.value.showTable,
796
+ maxHeight: 1e4,
797
+ body: {
798
+ backgroundColor: e.value.style.backgroundColor,
799
+ color: e.value.style.color
800
+ },
801
+ head: {
802
+ backgroundColor: e.value.style.backgroundColor,
803
+ color: e.value.style.color
804
+ }
805
+ }
806
+ }, {
807
+ content: p(() => [
808
+ (i(), M(u(Re), {
809
+ key: `table_${ne.value}`,
810
+ colNames: H.value.colNames,
811
+ head: H.value.head,
812
+ body: H.value.body,
813
+ config: H.value.config,
814
+ title: `${e.value.style.title.text}${e.value.style.title.subtitle.text ? ` : ${e.value.style.title.subtitle.text}` : ""}`,
815
+ onClose: o[0] || (o[0] = (l) => x.value.showTable = !1)
816
+ }, {
817
+ th: p(({ th: l }) => [
818
+ Te(C(l), 1)
819
+ ]),
820
+ td: p(({ td: l }) => [
821
+ Te(C(l), 1)
822
+ ]),
823
+ _: 1
824
+ }, 8, ["colNames", "head", "body", "config", "title"]))
825
+ ]),
826
+ _: 1
827
+ }, 8, ["config"])) : y("", !0),
828
+ u(ve) ? (i(), M(At, { key: 7 })) : y("", !0)
829
+ ], 46, Ct));
830
+ }
831
+ }, cl = /* @__PURE__ */ Lt(tl, [["__scopeId", "data-v-99100ffe"]]);
832
+ export {
833
+ cl as default
834
+ };