vue-data-ui 3.5.2 → 3.7.0

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