vue-data-ui 3.27.1-beta.0 → 3.28.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.
- package/README.md +49 -41
- package/dist/{Arrow-CJeSufxg.js → Arrow-D6OAn5rm.js} +1 -1
- package/dist/{BaseDraggableDialog-T1gEsQid.js → BaseDraggableDialog-Bw_azO0n.js} +1 -1
- package/dist/BaseIcon-DDctLkeT.js +1 -0
- package/dist/{BaseLegendToggle-Dn_tNvn4.js → BaseLegendToggle-BOcw1ke8.js} +1 -1
- package/dist/BaseZoomControls-Cq5AOHQ0.js +1 -0
- package/dist/{ColorPicker-CUjEw53A.js → ColorPicker-DHQvvLT9.js} +1 -1
- package/dist/DataTable-BcVZLSs8.js +1 -0
- package/dist/{HillActions-DdvXld3a.js → HillActions-Bq3UJ1Ut.js} +1 -1
- package/dist/{Legend-DokTll4u.js → Legend-D8NunRPr.js} +1 -1
- package/dist/{NonSvgPenAndPaper-BLzQuIm6.js → NonSvgPenAndPaper-CxQZ0YED.js} +1 -1
- package/dist/{PackageVersion-D6pKL176.js → PackageVersion-ATrKWi8V.js} +1 -1
- package/dist/{PenAndPaper-DvJJaeU2.js → PenAndPaper-BsBFp16i.js} +1 -1
- package/dist/{Shape-tkp65OcG.js → Shape-gDVRWM6n.js} +1 -1
- package/dist/SlicerPreview-Dpu4nMz6.js +1 -0
- package/dist/{SparkTooltip-BlJLvizH.js → SparkTooltip-cWKhrsKX.js} +1 -1
- package/dist/{Title-BRAjxtjG.js → Title-BLA0tM3g.js} +1 -1
- package/dist/{Tooltip-BUXB0i6z.js → Tooltip-Iyb_S6oQ.js} +1 -1
- package/dist/UserOptions-BSJ_S_us.js +1 -0
- package/dist/{chartImage-NwZO-elv.js → chartImage-r-G4CkRK.js} +1 -1
- package/dist/components/arrow.js +1 -1
- package/dist/components/vue-ui-3d-bar.js +1 -1
- package/dist/components/vue-ui-accordion.js +1 -1
- package/dist/components/vue-ui-age-pyramid.js +1 -1
- package/dist/components/vue-ui-annotator.js +1 -1
- package/dist/components/vue-ui-bullet.js +1 -1
- package/dist/components/vue-ui-bump.js +1 -1
- package/dist/components/vue-ui-candlestick.js +1 -1
- package/dist/components/vue-ui-carousel-table.js +1 -1
- package/dist/components/vue-ui-chestnut.js +1 -1
- package/dist/components/vue-ui-chord.js +1 -1
- package/dist/components/vue-ui-circle-pack.js +1 -1
- package/dist/components/vue-ui-cursor.js +1 -1
- package/dist/components/vue-ui-dag.js +1 -1
- package/dist/components/vue-ui-dashboard.js +1 -1
- package/dist/components/vue-ui-digits.js +1 -1
- package/dist/components/vue-ui-donut-evolution.js +1 -1
- package/dist/components/vue-ui-donut.js +1 -1
- package/dist/components/vue-ui-dumbbell.js +1 -1
- package/dist/components/vue-ui-flow.js +1 -1
- package/dist/components/vue-ui-funnel.js +1 -1
- package/dist/components/vue-ui-galaxy.js +1 -1
- package/dist/components/vue-ui-gauge.js +1 -1
- package/dist/components/vue-ui-geo.js +1 -1
- package/dist/components/vue-ui-gizmo.js +1 -1
- package/dist/components/vue-ui-graph.js +1 -0
- package/dist/components/vue-ui-heatmap.js +1 -1
- package/dist/components/vue-ui-hill.js +1 -1
- package/dist/components/vue-ui-history-plot.js +1 -1
- package/dist/components/vue-ui-horizontal-bar.js +1 -1
- package/dist/components/vue-ui-icon.js +1 -1
- package/dist/components/vue-ui-kpi.js +1 -1
- package/dist/components/vue-ui-label.js +1 -1
- package/dist/components/vue-ui-mini-loader.js +1 -1
- package/dist/components/vue-ui-molecule.js +1 -1
- package/dist/components/vue-ui-mood-radar.js +1 -1
- package/dist/components/vue-ui-nested-donuts.js +1 -1
- package/dist/components/vue-ui-onion.js +1 -1
- package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
- package/dist/components/vue-ui-quadrant.js +1 -1
- package/dist/components/vue-ui-quick-chart.js +1 -1
- package/dist/components/vue-ui-radar.js +1 -1
- package/dist/components/vue-ui-rating.js +1 -1
- package/dist/components/vue-ui-relation-circle.js +1 -1
- package/dist/components/vue-ui-ridgeline.js +1 -1
- package/dist/components/vue-ui-rings.js +1 -1
- package/dist/components/vue-ui-scatter.js +1 -1
- package/dist/components/vue-ui-skeleton.js +1 -1
- package/dist/components/vue-ui-smiley.js +1 -1
- package/dist/components/vue-ui-spark-trend.js +1 -1
- package/dist/components/vue-ui-sparkbar.js +1 -1
- package/dist/components/vue-ui-sparkgauge.js +1 -1
- package/dist/components/vue-ui-sparkhistogram.js +1 -1
- package/dist/components/vue-ui-sparkline.js +1 -1
- package/dist/components/vue-ui-sparkstackbar.js +1 -1
- package/dist/components/vue-ui-stackbar.js +1 -1
- package/dist/components/vue-ui-stackline.js +1 -1
- package/dist/components/vue-ui-strip-plot.js +1 -1
- package/dist/components/vue-ui-table-heatmap.js +1 -1
- package/dist/components/vue-ui-table-sparkline.js +1 -1
- package/dist/components/vue-ui-table.js +1 -1
- package/dist/components/vue-ui-thermometer.js +1 -1
- package/dist/components/vue-ui-timer.js +1 -1
- package/dist/components/vue-ui-tiremarks.js +1 -1
- package/dist/components/vue-ui-treemap.js +1 -1
- package/dist/components/vue-ui-vertical-bar.js +1 -1
- package/dist/components/vue-ui-waffle.js +1 -1
- package/dist/components/vue-ui-wheel.js +1 -1
- package/dist/components/vue-ui-word-cloud.js +1 -1
- package/dist/components/vue-ui-world.js +1 -1
- package/dist/components/vue-ui-xy-canvas.js +1 -1
- package/dist/components/vue-ui-xy.js +1 -1
- package/dist/{dom-to-png-Cp3WLHmJ.js → dom-to-png-Cp6rAdnI.js} +1 -1
- package/dist/{exposedLib-CMTeSmyW.js → exposedLib-BDGMSW1B.js} +1 -1
- package/dist/{img-8sM3sVWU.js → img-DiP2_5_r.js} +1 -1
- package/dist/{labelUtils-Djp5nJtN.js → labelUtils-DXiFpsZl.js} +1 -1
- package/dist/{lib-zDxoqrgo.js → lib-DqD8nbyX.js} +4 -4
- package/dist/package-UBaXe2y9.js +1 -0
- package/dist/{pdf-Dlv_ks7R.js → pdf-y3S8SBFk.js} +1 -1
- package/dist/{render-common-DOYi0f4Z.js → render-common-tsNLeNaX.js} +1 -1
- package/dist/{resolveChartConfig-BSo1Oe9n.js → resolveChartConfig-ChGWTt5l.js} +1 -1
- package/dist/ssr/vue-ui-donut.js +1 -1
- package/dist/ssr/vue-ui-xy.js +1 -1
- package/dist/ssr.js +1 -1
- package/dist/style.css +1 -1
- package/dist/types/vue-data-ui.d.ts +323 -0
- package/dist/types/vue-ui-graph.d.ts +21 -0
- package/dist/useConfig-DM9fSqjh.js +1 -0
- package/dist/{useNestedProp-CT9phgWx.js → useNestedProp-DrLnzyHO.js} +1 -1
- package/dist/useObjectBindings-Cn4Vz0RY.js +1 -0
- package/dist/{usePrinter-CnyKPIFM.js → usePrinter-Cj4eIYC_.js} +1 -1
- package/dist/utils.js +1 -1
- package/dist/vue-data-ui-yeD7UyUU.js +1 -0
- package/dist/vue-data-ui.js +1 -1
- package/dist/vue-ui-3d-bar-COrzyTkO.js +19 -0
- package/dist/vue-ui-accordion-3lBpCjGm.js +1 -0
- package/dist/vue-ui-age-pyramid-CAoVjkOA.js +1 -0
- package/dist/vue-ui-annotator-CpTZHnPw.js +331 -0
- package/dist/vue-ui-bullet-yvY_gdw2.js +34 -0
- package/dist/vue-ui-bump-ChsFkIq9.js +10 -0
- package/dist/vue-ui-candlestick-D9UXZQoN.js +22 -0
- package/dist/vue-ui-carousel-table-CKyE4hME.js +1 -0
- package/dist/vue-ui-chestnut-BuLjW5nb.js +1 -0
- package/dist/vue-ui-chord-Bjwt2_BK.js +21 -0
- package/dist/vue-ui-circle-pack-BpAuZruK.js +13 -0
- package/dist/vue-ui-cursor-Dn-IBaP8.js +1 -0
- package/dist/vue-ui-dag-CyY3cSa6.js +9 -0
- package/dist/vue-ui-dashboard-DmyStkQM.js +1 -0
- package/dist/{vue-ui-digits-CL9SuIEI.js → vue-ui-digits-BBiRMr01.js} +2 -2
- package/dist/{vue-ui-donut-BaEodt-3.js → vue-ui-donut-CGyBWxzh.js} +2 -2
- package/dist/vue-ui-donut-DMF74OY0.js +47 -0
- package/dist/vue-ui-donut-evolution-Du4zLc8D.js +2 -0
- package/dist/vue-ui-dumbbell-CxL_AY5e.js +9 -0
- package/dist/vue-ui-flow-h6kTMamJ.js +3 -0
- package/dist/vue-ui-funnel-BG5Addzr.js +1 -0
- package/dist/vue-ui-galaxy-CgnshY8i.js +1 -0
- package/dist/vue-ui-gauge-a13ojQPr.js +1 -0
- package/dist/vue-ui-geo-CflzhtuD.js +1 -0
- package/dist/vue-ui-gizmo-K1lfslsA.js +1 -0
- package/dist/vue-ui-graph-C2Se8bnB.js +7 -0
- package/dist/vue-ui-heatmap-5NsQkMwS.js +1 -0
- package/dist/vue-ui-hill-COnjVS2L.js +1 -0
- package/dist/vue-ui-history-plot-BRJdXsNo.js +2 -0
- package/dist/vue-ui-horizontal-bar-G0wEKTRu.js +4 -0
- package/dist/vue-ui-kpi-BZjfQxmY.js +1 -0
- package/dist/{vue-ui-label-D1Aog-zO.js → vue-ui-label-BD_hTtgZ.js} +2 -2
- package/dist/vue-ui-mini-loader-ltQXdeeW.js +1 -0
- package/dist/vue-ui-molecule-DI-CS5w8.js +1 -0
- package/dist/vue-ui-mood-radar-B5ar9WAZ.js +1 -0
- package/dist/vue-ui-nested-donuts-BP2YzVma.js +19 -0
- package/dist/vue-ui-onion-CCiZ6jmF.js +5 -0
- package/dist/vue-ui-parallel-coordinate-plot-3E0CysDx.js +9 -0
- package/dist/vue-ui-quadrant-BwgwvKy8.js +2 -0
- package/dist/vue-ui-quick-chart-BXNg0LNe.js +17 -0
- package/dist/vue-ui-radar-B9Ntj_Gj.js +1 -0
- package/dist/vue-ui-rating-B33u3iIn.js +1 -0
- package/dist/vue-ui-relation-circle-B60IUw50.js +1 -0
- package/dist/vue-ui-ridgeline-BPbYng2A.js +2 -0
- package/dist/vue-ui-rings-BXo9p3Ab.js +1 -0
- package/dist/vue-ui-scatter-BwrYPDzh.js +9 -0
- package/dist/{vue-ui-skeleton-B-Acw3CC.js → vue-ui-skeleton-DTn7uIui.js} +3 -3
- package/dist/{vue-ui-smiley-Ciwqt6ek.js → vue-ui-smiley-qCRUFmpq.js} +1 -1
- package/dist/vue-ui-spark-trend-wKFu-O7B.js +1 -0
- package/dist/vue-ui-sparkbar-DPFzdX-D.js +1 -0
- package/dist/vue-ui-sparkgauge-DlEPsxc0.js +1 -0
- package/dist/vue-ui-sparkhistogram-DLZxE6oz.js +1 -0
- package/dist/vue-ui-sparkline-BflZPl7s.js +1 -0
- package/dist/vue-ui-sparkstackbar-DvSQfGeA.js +1 -0
- package/dist/vue-ui-stackbar-JKC9qE6M.js +29 -0
- package/dist/vue-ui-stackline-G7-oqfzp.js +39 -0
- package/dist/vue-ui-strip-plot-54u7AUip.js +2 -0
- package/dist/vue-ui-table-3F8i2ZjT.js +14 -0
- package/dist/vue-ui-table-heatmap-CtYPYMIJ.js +1 -0
- package/dist/vue-ui-table-sparkline-CTfYTzhA.js +1 -0
- package/dist/vue-ui-thermometer-BpFbPqxK.js +1 -0
- package/dist/vue-ui-timer-DsWRNtRa.js +64 -0
- package/dist/vue-ui-tiremarks-C4wVcSVP.js +1 -0
- package/dist/vue-ui-treemap-mYRv6gga.js +1 -0
- package/dist/vue-ui-waffle-DNBIZqZz.js +1 -0
- package/dist/vue-ui-wheel-DPHDp0t1.js +1 -0
- package/dist/vue-ui-word-cloud-BY4YsW7-.js +4 -0
- package/dist/vue-ui-world-DQWjoFDx.js +19 -0
- package/dist/vue-ui-xy-DfvcqUwW.js +31 -0
- package/dist/vue-ui-xy-M9aD-G5a.js +24 -0
- package/dist/vue-ui-xy-canvas-BpwG1Ipj.js +9 -0
- package/dist/vue_ui_donut_evolution-CVoh3twl.js +1 -0
- package/dist/vue_ui_graph-B1ACwQj7.js +1 -0
- package/dist/vue_ui_quick_chart-BRfcRW6Z.js +1 -0
- package/package.json +1 -1
- package/dist/BaseIcon-Cz30ODFA.js +0 -1
- package/dist/BaseZoomControls-xq3tWD3j.js +0 -1
- package/dist/DataTable-DSUA5M9p.js +0 -1
- package/dist/SlicerPreview-GFRs2EWB.js +0 -1
- package/dist/UserOptions-D65t74CM.js +0 -1
- package/dist/package-DIR2F6AE.js +0 -1
- package/dist/useConfig-CKdzPrcf.js +0 -1
- package/dist/useObjectBindings-DM3xDKV3.js +0 -1
- package/dist/vue-data-ui-BG41UScx.js +0 -1
- package/dist/vue-ui-3d-bar-DiaiNy-k.js +0 -19
- package/dist/vue-ui-accordion-Dy5OVFKr.js +0 -1
- package/dist/vue-ui-age-pyramid-OeUr1yxi.js +0 -1
- package/dist/vue-ui-annotator-DA_xAFql.js +0 -331
- package/dist/vue-ui-bullet-B9lcCTVb.js +0 -34
- package/dist/vue-ui-bump-DYajIrva.js +0 -10
- package/dist/vue-ui-candlestick-CdAZuNxo.js +0 -22
- package/dist/vue-ui-carousel-table-ihGH0LDH.js +0 -1
- package/dist/vue-ui-chestnut-B2aNXFNO.js +0 -1
- package/dist/vue-ui-chord-fAckHfOW.js +0 -21
- package/dist/vue-ui-circle-pack-BWHVImkS.js +0 -13
- package/dist/vue-ui-cursor-DdXKXmhr.js +0 -1
- package/dist/vue-ui-dag-a0fNoIcJ.js +0 -9
- package/dist/vue-ui-dashboard-DkdYMB7n.js +0 -1
- package/dist/vue-ui-donut-DaYxdQmP.js +0 -47
- package/dist/vue-ui-donut-evolution-T8cRXKRQ.js +0 -2
- package/dist/vue-ui-dumbbell-B6HJxEZp.js +0 -9
- package/dist/vue-ui-flow-BlTCVFr3.js +0 -3
- package/dist/vue-ui-funnel-WgLFJadZ.js +0 -1
- package/dist/vue-ui-galaxy-B3nuI6E8.js +0 -1
- package/dist/vue-ui-gauge-BwTP65O4.js +0 -1
- package/dist/vue-ui-geo-CX3yH18H.js +0 -1
- package/dist/vue-ui-gizmo-CNHcBsku.js +0 -1
- package/dist/vue-ui-heatmap-CTdeoar7.js +0 -1
- package/dist/vue-ui-hill-DR5k8GWZ.js +0 -1
- package/dist/vue-ui-history-plot-C-9uH-Uj.js +0 -2
- package/dist/vue-ui-horizontal-bar-qqF7pL7U.js +0 -4
- package/dist/vue-ui-kpi-DVcLXGqG.js +0 -1
- package/dist/vue-ui-mini-loader-CX0Dx9tT.js +0 -1
- package/dist/vue-ui-molecule-B13qVX71.js +0 -1
- package/dist/vue-ui-mood-radar-C1BtB8lg.js +0 -1
- package/dist/vue-ui-nested-donuts-B90yrlJG.js +0 -19
- package/dist/vue-ui-onion-UMVO2DE_.js +0 -5
- package/dist/vue-ui-parallel-coordinate-plot-C0ofFivm.js +0 -9
- package/dist/vue-ui-quadrant-CPG6yAiu.js +0 -2
- package/dist/vue-ui-quick-chart-BTPb-Iz8.js +0 -17
- package/dist/vue-ui-radar-Hd-pE9ih.js +0 -1
- package/dist/vue-ui-rating-C_YxQYa_.js +0 -1
- package/dist/vue-ui-relation-circle-CHYG7ZJl.js +0 -1
- package/dist/vue-ui-ridgeline-DS1Gvljt.js +0 -2
- package/dist/vue-ui-rings-B-Hb13Uu.js +0 -1
- package/dist/vue-ui-scatter-BTgvOmuo.js +0 -9
- package/dist/vue-ui-spark-trend-CYqy6c0S.js +0 -1
- package/dist/vue-ui-sparkbar-CTXIgjmP.js +0 -1
- package/dist/vue-ui-sparkgauge-CObOL6s2.js +0 -1
- package/dist/vue-ui-sparkhistogram-ClFyDez-.js +0 -1
- package/dist/vue-ui-sparkline-DP_nYlW8.js +0 -1
- package/dist/vue-ui-sparkstackbar-B2f0ePMg.js +0 -1
- package/dist/vue-ui-stackbar-nMWHZ-f0.js +0 -29
- package/dist/vue-ui-stackline-B95y6Zc5.js +0 -39
- package/dist/vue-ui-strip-plot-gFNC4r-X.js +0 -2
- package/dist/vue-ui-table-Br2JgD_L.js +0 -14
- package/dist/vue-ui-table-heatmap-Btu2ejF4.js +0 -1
- package/dist/vue-ui-table-sparkline-B9mYHAxp.js +0 -1
- package/dist/vue-ui-thermometer-C6u1eLfo.js +0 -1
- package/dist/vue-ui-timer-DLgsfB1U.js +0 -64
- package/dist/vue-ui-tiremarks-8B9uE1Bx.js +0 -1
- package/dist/vue-ui-treemap-C4Mot-Os.js +0 -1
- package/dist/vue-ui-waffle-BwcwNpf7.js +0 -1
- package/dist/vue-ui-wheel-B3OGCXg7.js +0 -1
- package/dist/vue-ui-word-cloud-BPIyMBXq.js +0 -4
- package/dist/vue-ui-world-Cp0DeauH.js +0 -19
- package/dist/vue-ui-xy-BOE1jvUS.js +0 -31
- package/dist/vue-ui-xy-DSyKSn4L.js +0 -24
- package/dist/vue-ui-xy-canvas-CaxxiKSa.js +0 -9
- package/dist/vue_ui_donut_evolution-nzVwNQYv.js +0 -1
- package/dist/vue_ui_quick_chart-Da1GwklM.js +0 -1
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{X as t,rn as n,t as r}from"./lib-zDxoqrgo.js";import{n as i,t as a}from"./useHints-BH9r_0Vd.js";import{t as o}from"./useConfig-CKdzPrcf.js";import{t as s}from"./useNestedProp-CT9phgWx.js";import{n as c}from"./Title-BRAjxtjG.js";import{t as l}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{l as ee,t as te}from"./useResponsive-D2CPcpda.js";import{t as u}from"./BaseIcon-Cz30ODFA.js";import{t as ne}from"./DefGrad-DKMq1REY.js";import{t as re}from"./useChartAccessibility-DOMuYJfm.js";import{computed as d,createBlock as ie,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createVNode as h,defineAsyncComponent as ae,guardReactiveProps as g,mergeProps as oe,normalizeProps as _,normalizeStyle as v,onBeforeUnmount as se,onMounted as ce,openBlock as y,ref as b,renderSlot as x,shallowRef as le,toDisplayString as ue,unref as S,watch as de}from"vue";var fe=class{constructor(e,t,n,r=!0,i=!0){this.interval=t,this.elapsed=0,this.isPaused=!1;let a=new Blob([`
|
|
2
|
-
let interval;
|
|
3
|
-
let elapsed = 0;
|
|
4
|
-
let paused = false;
|
|
5
|
-
let startTime;
|
|
6
|
-
let tickInterval;
|
|
7
|
-
|
|
8
|
-
onmessage = function(e) {
|
|
9
|
-
const { action, data } = e.data;
|
|
10
|
-
|
|
11
|
-
switch(action) {
|
|
12
|
-
case 'start':
|
|
13
|
-
startTime = Date.now();
|
|
14
|
-
tickInterval = data.interval;
|
|
15
|
-
elapsed = 0;
|
|
16
|
-
paused = false;
|
|
17
|
-
interval = setInterval(() => {
|
|
18
|
-
elapsed += tickInterval;
|
|
19
|
-
postMessage({ elapsed, timestamp: Date.now() });
|
|
20
|
-
}, tickInterval);
|
|
21
|
-
break;
|
|
22
|
-
|
|
23
|
-
case 'pause':
|
|
24
|
-
paused = true;
|
|
25
|
-
clearInterval(interval);
|
|
26
|
-
elapsed = Date.now() - startTime;
|
|
27
|
-
break;
|
|
28
|
-
|
|
29
|
-
case 'resume':
|
|
30
|
-
if (paused) {
|
|
31
|
-
startTime = Date.now() - elapsed;
|
|
32
|
-
interval = setInterval(() => {
|
|
33
|
-
elapsed += tickInterval;
|
|
34
|
-
postMessage({ elapsed, timestamp: Date.now() });
|
|
35
|
-
}, tickInterval);
|
|
36
|
-
}
|
|
37
|
-
paused = false;
|
|
38
|
-
break;
|
|
39
|
-
|
|
40
|
-
case 'stop':
|
|
41
|
-
clearInterval(interval);
|
|
42
|
-
elapsed = 0;
|
|
43
|
-
postMessage({ elapsed });
|
|
44
|
-
break;
|
|
45
|
-
|
|
46
|
-
case 'reset':
|
|
47
|
-
elapsed = 0;
|
|
48
|
-
clearInterval(interval);
|
|
49
|
-
postMessage({ elapsed });
|
|
50
|
-
break;
|
|
51
|
-
|
|
52
|
-
case 'lap':
|
|
53
|
-
postMessage({
|
|
54
|
-
elapsed,
|
|
55
|
-
timestamp: Date.now(),
|
|
56
|
-
action: 'lap'
|
|
57
|
-
});
|
|
58
|
-
break;
|
|
59
|
-
|
|
60
|
-
default:
|
|
61
|
-
break;
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
|
-
`],{type:`application/javascript`}),o=URL.createObjectURL(a),s=new Worker(o);function c(e){let t=Math.floor(e/1e3),n=Math.floor(e%1e3/10),a=Math.floor(t/3600),o=Math.floor(t%3600/60),s=t%60,c=``;return i&&(c+=String(a).padStart(2,`0`)+`:`),c+=String(o).padStart(2,`0`)+`:`,c+=String(s).padStart(2,`0`),r&&(c+=`.`+String(n).padStart(2,`0`)),c}this.start=()=>{this.isPaused=!1,s.postMessage({action:`start`,data:{interval:this.interval}})},this.pause=()=>{this.isPaused?this.resume():(this.isPaused=!0,s.postMessage({action:`pause`}))},this.resume=()=>{this.isPaused&&=(s.postMessage({action:`resume`}),!1)},this.stop=()=>{s.postMessage({action:`stop`}),this.isPaused=!1},this.reset=()=>{s.postMessage({action:`reset`}),this.elapsed=0,this.isPaused=!1},this.restart=()=>{this.stop(),this.start()},this.lap=()=>new Promise(e=>{s.postMessage({action:`lap`}),s.addEventListener(`message`,t=>{let{elapsed:n,timestamp:r,action:i}=t.data;if(i===`lap`){let t=c(n);e({timestamp:r||0,elapsed:n,formatted:t})}},{once:!0})}),s.onmessage=t=>{let{elapsed:n,timestamp:r}=t.data;this.elapsed=n,e({timestamp:r||0,elapsed:this.elapsed,formatted:c(this.elapsed)})},s.onerror=e=>{n&&n(e)}}},C=/* @__PURE__ */ e({default:()=>w}),pe=[`xmlns`,`viewBox`],me=[`width`,`height`],he={key:1},ge=[`cx`,`cy`,`r`,`fill`,`stroke`,`stroke-width`],_e=[`d`,`stroke`,`stroke-width`],ve=[`r`,`fill`,`stroke`,`stroke-width`],ye=[`r`,`fill`,`stroke`,`stroke-width`],be=[`x`,`y`],xe={key:5},Se=[`x`,`y`,`font-size`,`fill`,`font-weight`],Ce={key:0,class:`vue-ui-timer-controls`},we=[`title`],Te=[`title`],Ee=[`title`],De=[`title`],Oe=[`title`],w=/*#__PURE__*/ l({__name:`vue-ui-timer`,props:{config:{type:Object,default(){return{}}}},emits:[`start`,`pause`,`reset`,`restart`,`lap`],setup(e,{expose:l,emit:C}){let w=ae(()=>import(`./PackageVersion-D6pKL176.js`).then(e=>e.t)),{vue_ui_timer:ke}=o(),T=e,E=C,D=b(null),O=b(null),k=b(null),A=le(null),j=le(null),M=b(t()),N=b(0);ce(()=>{P()});function P(){if(F.value.responsive){let e=ee(()=>{let{width:e,height:t}=te({chart:D.value,title:F.value.style.title.text?O.value:null,legend:k.value});requestAnimationFrame(()=>{B.value.width=e,B.value.height=t,F.value.responsiveProportionalSizing?(B.value.tracker.core=n({relator:Math.min(e,t),adjuster:F.value.style.width,source:6*L.value.radiusRatio,threshold:1,fallback:1}),B.value.tracker.aura=n({relator:Math.min(e,t),adjuster:F.value.style.width,source:12*L.value.aura.radiusRatio,threshold:1,fallback:1}),B.value.label=n({relator:Math.min(e,t),adjuster:F.value.style.width,source:I.value.label.fontSize,threshold:10,fallback:10})):B.value.label=I.value.label.fontSize})});A.value&&(j.value&&A.value.unobserve(j.value),A.value.disconnect()),A.value=new ResizeObserver(e),j.value=D.value.parentNode,A.value.observe(j.value)}}se(()=>{A.value&&(j.value&&A.value.unobserve(j.value),A.value.disconnect())});let F=d({get:()=>je(),set:e=>e}),I=d(()=>F.value.stopwatch),L=d(()=>F.value.stopwatch.tracker),R=d(()=>F.value.stopwatch.legend);i({config:()=>F.value,dataset:()=>[],component:`VueUiTimer`,rules:[a.noHint]});let z=d(()=>F.value.useCursorPointer),{svgRef:Ae}=re({config:F.value.style.title});function je(){return s({userConfig:T.config,defaultConfig:ke})}de(()=>T.config,e=>{F.value=je(),P(),N.value+=1},{deep:!0});let Me=d(()=>{if(I.value.showHours&&I.value.showHundredth)return`00:00:00.00`;if(I.value.showHours&&!I.value.showHundredth)return`00:00:00`;if(!I.value.showHours&&I.value.showHundredth)return`00:00.00`;if(!I.value.showHours&&!I.value.showHundredth)return`00:00`}),B=b({height:F.value.style.height,width:F.value.style.width,tracker:{core:6*L.value.radiusRatio,aura:12*L.value.aura.radiusRatio},label:I.value.label.fontSize}),V=b(0),H=new fe(e=>Ne(e),10,``,I.value.showHundredth,I.value.showHours),U=b(!0),W=b(!1),G=b(!1);function K(){E(`start`),U.value&&H.start(),U.value=!1,W.value=!0}function q(){W.value&&=(E(`reset`),H.stop(),X.value=[],U.value=!0,!1)}function J(){G.value=!G.value,E(`pause`,V.value),H.pause()}function Y(){W.value&&(G.value=!1,E(`restart`),X.value=[],H.restart())}let X=b([]);async function Z(){if(!W.value||G.value)return;let e=await H.lap();e&&(X.value.push(e),E(`lap`,X.value))}function Ne({timestamp:e,elapsed:t,formatted:n}){V.value={timestamp:e,elapsed:t,formatted:n}}let Q=d(()=>Math.min(B.value.width,B.value.height)/2.5*I.value.track.radiusRatio);function Pe(e,t){return e*(360/(t*1e3))%360}function Fe(e){let t=Math.PI/180*e;return{cx:B.value.width/2+Q.value*Math.cos(t),cy:B.value.height/2+Q.value*Math.sin(t)}}let $=d(()=>{let e=Pe(V.value.elapsed,I.value.cycleSeconds),{cx:t,cy:n}=Fe(e-90),r=+(e>180);return{cx:t||B.value.width/2,cy:n||B.value.height/2-Q.value,largeArcFlag:r,sweepFlag:1}});return l({start:K,pause:J,reset:q,restart:Y,lap:Z}),(e,t)=>(y(),p(`div`,{ref_key:`timerChart`,ref:D,class:`vue-data-ui-component vue-ui-timer`,style:v({fontFamily:F.value.style.fontFamily,width:`100%`,height:F.value.responsive?`100%`:`auto`,textAlign:`center`})},[F.value.style.title.text?(y(),p(`div`,{key:0,ref_key:`chartTitle`,ref:O,style:v({width:`100%`,background:F.value.style.backgroundColor})},[(y(),ie(c,{key:`title_${N.value}`,config:{title:{cy:`title`,...F.value.style.title},subtitle:{cy:`subtitle`,...F.value.style.title.subtitle}}},null,8,[`config`]))],4)):f(``,!0),(y(),p(`svg`,{ref_key:`svgRef`,ref:Ae,xmlns:S(r),viewBox:`0 0 ${B.value.width<=0?10:B.value.width} ${B.value.height<=0?10:B.value.height}`,style:v({maxWidth:`100%`,overflow:`visible`,background:F.value.style.backgroundColor})},[h(S(w)),e.$slots[`chart-background`]?(y(),p(`foreignObject`,{key:0,x:0,y:0,width:B.value.width<=0?10:B.value.width,height:B.value.height<=0?10:B.value.height,style:{pointerEvents:`none`}},[x(e.$slots,`chart-background`,{},void 0,!0)],8,me)):f(``,!0),L.value.gradient.show?(y(),p(`defs`,he,[h(ne,{t:`radial`,id:`tracker_gradient_${M.value}`,cx:`50%`,cy:`50%`,r:`50%`,fx:`50%`,fy:`50%`,stops:[[`0%`,L.value.gradient.color,1],[`100%`,L.value.fill,1]]},null,8,[`id`,`stops`])])):f(``,!0),m(`circle`,{cx:B.value.width/2,cy:B.value.height/2,r:Q.value,fill:I.value.track.fill,stroke:I.value.track.stroke,"stroke-width":I.value.track.strokeWidth},null,8,ge),I.value.cycleTrack.show?(y(),p(`path`,{key:2,d:`M ${B.value.width/2},${B.value.height/2-Q.value} A ${Q.value},${Q.value} 0 ${$.value.largeArcFlag},${$.value.sweepFlag} ${$.value.cx},${$.value.cy}`,stroke:I.value.cycleTrack.stroke,"stroke-width":I.value.cycleTrack.strokeWidth,"stroke-linecap":`round`,fill:`none`},null,8,_e)):f(``,!0),m(`circle`,oe($.value,{r:B.value.tracker.core,fill:L.value.gradient.show?`url(#tracker_gradient_${M.value})`:L.value.fill,stroke:L.value.stroke,"stroke-width":L.value.strokeWidth}),null,16,ve),L.value.aura.show?(y(),p(`circle`,oe({key:3},$.value,{r:B.value.tracker.aura,fill:`${L.value.aura.fill}20`,stroke:L.value.aura.stroke,"stroke-width":L.value.aura.strokeWidth}),null,16,ye)):f(``,!0),e.$slots.time?(y(),p(`foreignObject`,{key:4,x:B.value.width/2,y:B.value.height/2,height:`0.1`,width:`0.1`,style:{overflow:`visible`}},[x(e.$slots,`time`,_(g({...V.value,...B.value})),void 0,!0)],8,be)):e.$slots.timeSvg?(y(),p(`g`,xe,[x(e.$slots,`timeSvg`,_(g({...V.value,...B.value})),void 0,!0)])):(y(),p(`text`,{key:6,x:B.value.width/2,y:B.value.height/2+B.value.label/4,"font-size":B.value.label,"text-anchor":`middle`,fill:I.value.label.color,"font-weight":I.value.label.bold?`bold`:`normal`,style:{"font-variant-numeric":`tabular-nums !important`}},ue(V.value.formatted||Me.value),9,Se))],12,pe)),m(`div`,{ref_key:`chartLegend`,ref:k,style:v({width:`100%`,backgroundColor:R.value.backgroundColor})},[e.$slots.controls?f(``,!0):(y(),p(`div`,Ce,[R.value.buttons.start?(y(),p(`button`,{key:0,title:R.value.buttonTitles.start,onClick:K,class:`vue-ui-timer-button`,style:v({opacity:W.value?.2:1,cursor:W.value?`default`:z.value?`pointer`:`default`})},[h(u,{name:`play`,stroke:R.value.buttons.iconColor},null,8,[`stroke`])],12,we)):f(``,!0),R.value.buttons.pause?(y(),p(`button`,{key:1,title:G.value?R.value.buttonTitles.resume:R.value.buttonTitles.pause,onClick:J,class:`vue-ui-timer-button`,style:v({opacity:W.value?1:.2,cursor:W.value&&z.value?`pointer`:`default`})},[h(u,{name:`pause`,stroke:R.value.buttons.iconColor},null,8,[`stroke`])],12,Te)):f(``,!0),R.value.buttons.reset?(y(),p(`button`,{key:2,title:R.value.buttonTitles.reset,onClick:q,class:`vue-ui-timer-button`,style:v({opacity:W.value?1:.2,cursor:W.value&&z.value?`pointer`:`default`})},[h(u,{name:`stop`,stroke:R.value.buttons.iconColor},null,8,[`stroke`])],12,Ee)):f(``,!0),R.value.buttons.restart?(y(),p(`button`,{key:3,title:R.value.buttonTitles.restart,onClick:Y,class:`vue-ui-timer-button`,style:v({opacity:W.value?1:.2,cursor:W.value&&z.value?`pointer`:`default`})},[h(u,{name:`restart`,stroke:R.value.buttons.iconColor},null,8,[`stroke`])],12,De)):f(``,!0),R.value.buttons.lap?(y(),p(`button`,{key:4,title:R.value.buttonTitles.lap,onClick:Z,class:`vue-ui-timer-button`,style:v({opacity:W.value&&!G.value?1:.2,cursor:W.value&&!G.value&&z.value?`pointer`:`default`})},[h(u,{name:`lap`,stroke:R.value.buttons.iconColor},null,8,[`stroke`])],12,Oe)):f(``,!0)])),x(e.$slots,`controls`,_(g({start:K,pause:J,reset:q,restart:Y,lap:Z,laps:X.value,isRunning:W.value,isPaused:G.value,...V.value})),void 0,!0),x(e.$slots,`laps`,_(g({laps:X.value,lap:Z,isRunning:W.value,isPaused:G.value,...V.value})),void 0,!0)],4)],4))}},[[`__scopeId`,`data-v-2ce4581a`]]);export{C as n,w as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{n as t,t as n}from"./annotationSlots-BRR85CqJ.js";import{n as r,t as i}from"./userOptionsSlots-DYuo-E5m.js";import{$ as a,X as o,Yt as s,at as c,b as l,i as ee,in as te,t as ne,zt as re}from"./lib-zDxoqrgo.js";import{n as ie,t as ae}from"./useHints-BH9r_0Vd.js";import{t as oe}from"./useConfig-CKdzPrcf.js";import{t as se}from"./usePrinter-CnyKPIFM.js";import{n as ce,t as le}from"./BaseScanner-8NdoBs7B.js";import{t as ue}from"./useChartExport-DtPNpc9M.js";import{n as de}from"./Title-BRAjxtjG.js";import{t as fe}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{l as pe,t as me}from"./useResponsive-D2CPcpda.js";import{t as he}from"./resolveChartConfig-BSo1Oe9n.js";import{t as ge}from"./useUserOptionState-CXlFnwPv.js";import{t as _e}from"./useChartAccessibility-DOMuYJfm.js";import{t as ve}from"./chartImage-NwZO-elv.js";import{t as ye}from"./usePrefersMotion-XLHwega2.js";import{t as be}from"./vue_ui_tiremarks-8HFfABNF.js";import{Fragment as xe,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createElementVNode as Se,createSlots as Ce,createVNode as we,defineAsyncComponent as m,guardReactiveProps as h,normalizeClass as g,normalizeProps as Te,normalizeStyle as _,onMounted as Ee,openBlock as v,ref as y,renderList as b,renderSlot as x,toDisplayString as S,toRefs as De,unref as C,watch as Oe,withCtx as ke}from"vue";var Ae=/* @__PURE__ */ e({default:()=>w}),je=[`id`],Me=[`xmlns`,`viewBox`,`aria-labelledby`,`aria-describedby`],Ne=[`id`],Pe=[`id`],Fe=[`width`,`height`],Ie={key:1},Le=[`d`,`stroke-width`,`stroke`],Re={key:2},ze=[`x1`,`y1`,`x2`,`y2`,`stroke-width`,`stroke`],Be=[`aria-label`],Ve=[`x`,`y`,`height`],He=[`x`,`y`,`font-size`,`fill`,`font-weight`,`text-anchor`],Ue={key:4,class:`vue-data-ui-watermark`},w=/*#__PURE__*/ fe({__name:`vue-ui-tiremarks`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`copyAlt`],setup(e,{expose:fe,emit:Ae}){let w=m(()=>import(`./PenAndPaper-DvJJaeU2.js`).then(e=>e.t)),We=m(()=>import(`./UserOptions-D65t74CM.js`).then(e=>e.n)),Ge=m(()=>import(`./PackageVersion-D6pKL176.js`).then(e=>e.t)),{vue_ui_tiremarks:Ke}=oe(),T=ye(),E=e,qe=Ae,Je=u(()=>!!E.dataset&&Object.keys(E.dataset).length),D=y(o()),O=y(null),Ye=y(null),Xe=y(null),Ze=y(null),Qe=y(0),$e=y(0),k=y(null),A=y(null),j=y(z()),M=u(()=>j.value.userOptions),N=u(()=>j.value.style.chart.layout),P=u(()=>j.value.style.chart);ie({config:()=>j.value,dataset:()=>E.dataset,component:`VueUiTiremarks`,rules:[ae.noHint]});let et=u(()=>j.value.userOptions.useCursorPointer),tt=u(()=>te({defaultConfig:{userOptions:{show:!1},style:{chart:{backgroundColor:`#99999930`,animation:{use:!1},layout:{activeColor:`#6A6A6A80`,inactiveColor:`#CACACA80`,ticks:{gradient:{show:!1}}}}}},userConfig:j.value.skeletonConfig??{}})),{loading:F,FINAL_DATASET:I}=ce({...De(E),FINAL_CONFIG:j,prepareConfig:z,skeletonDataset:E.config?.skeletonDataset??{percentage:50},skeletonConfig:te({defaultConfig:j.value,userConfig:tt.value})}),{userOptionsVisible:L,setUserOptionsVisibility:nt,keepUserOptionState:rt}=ge({config:j.value}),{svgRef:R}=_e({config:P.value.title});function z(){return he(E.config,Ke,be)}Oe(()=>E.config,e=>{j.value=z(),L.value=!j.value.userOptions.showOnChartHover,K.value=P.value.width,q.value=P.value.height,lt(),$e.value+=1},{deep:!0});let{isPrinting:B,isImaging:V,generatePdf:it,generateImage:at}=se({elementId:D.value,fileName:P.value.title.text||`vue-ui-tiremarks`,options:j.value.userOptions.print}),ot=u(()=>j.value.userOptions.show&&!P.value.title.text),H=y(P.value.animation.use&&!T.value?0:l(I.value.percentage));Oe(()=>I.value,e=>{P.value.animation.use&&!T.value?st(e.percentage):H.value=e.percentage||0},{deep:!0}),Ee(()=>{lt()});function st(e){let t=P.value.animation.speed,n=Math.abs(e-H.value)/(t*120);function r(){H.value<e?H.value=Math.min(H.value+n,e):H.value>e&&(H.value=Math.max(H.value-n,e)),H.value!==e&&requestAnimationFrame(r)}r()}let ct=u(()=>j.value.debug);function lt(){if(re(E.dataset)&&c({componentName:`VueUiTiremarks`,type:`dataset`,debug:ct.value}),j.value.responsive){let e=pe(()=>{let{width:e,height:t}=me({chart:O.value,title:P.value.title.text?Xe.value:null,source:Ze.value});requestAnimationFrame(()=>{K.value=Math.max(.1,e),q.value=Math.max(.1,t-12)})});k.value&&(A.value&&k.value.unobserve(A.value),k.value.disconnect()),k.value=new ResizeObserver(e),A.value=O.value.parentNode,k.value.observe(A.value)}st(I.value.percentage||0)}let U=u(()=>N.value.display===`vertical`),W=u(()=>{let e=P.value.percentage.show,t={top:e?48:12,left:e?64:16,right:e?64:16,bottom:e?48:12};return U.value?{top:P.value.percentage.verticalPosition===`top`?t.top:3,left:3,right:3,bottom:P.value.percentage.verticalPosition===`bottom`?t.bottom:3}:{top:0,bottom:0,left:P.value.percentage.horizontalPosition===`left`?t.left:16,right:P.value.percentage.horizontalPosition===`right`?t.right:10}}),G=u(()=>Object.values(W.value).reduce((e,t)=>e+t,0)),K=y(P.value.width),q=y(P.value.height),J=u(()=>({height:q.value,width:K.value})),ut=u(()=>({horizontal:{x:X.value.x+(P.value.percentage.horizontalPosition===`left`?6:3),y:J.value.height/2-X.value.fontSize/2},vertical:{x:J.value.width/2-20,y:X.value.y-X.value.fontSize/2}})[N.value.display]),Y=u(()=>U.value?{mark:(J.value.height-G.value)/100*.5,space:(J.value.height-G.value)/100*.5}:{mark:(J.value.width-G.value)/100*.5,space:(J.value.width-G.value)/100*.5}),dt=u(()=>{let e=[];for(let t=0;t<100;t+=1){let n=N.value.ticks.gradient.show?s(N.value.activeColor,t/100*(N.value.ticks.gradient.shiftHueIntensity/100)):N.value.activeColor;if(U.value){let r=N.value.crescendo?(100-t)*(J.value.width-W.value.left-W.value.right)/100/3:0,i=W.value.left+4+r,a=J.value.width-W.value.right-4-r,o=J.value.height-W.value.bottom-t*Y.value.mark-t*Y.value.space-Y.value.mark,s=J.value.height-W.value.bottom-t*Y.value.mark-t*Y.value.space-Y.value.mark,c=(a-i)/N.value.curveAngleX,l=N.value.curveAngleY*((1+t)/100);e.push({x1:i,x2:a,y1:o,y2:s,curve:`M ${i} ${o} C ${i+c} ${o-l}, ${a-c} ${s-l}, ${a} ${s}`,color:n})}else{let r=N.value.crescendo?(100-t)*(J.value.height-W.value.top-W.value.bottom)/100/3:0,i=W.value.left+t*Y.value.mark+t*Y.value.space-Y.value.mark,a=i,o=W.value.top+4+r,s=J.value.height-W.value.bottom-4-r,c=N.value.curveAngleY*((1+t)/100),l=(s-o)/N.value.curveAngleX;e.push({x1:i,x2:a,y1:o,y2:s,curve:`M ${i} ${o} C ${i+c} ${o+l}, ${a+c} ${s-l}, ${a} ${s}`,color:n})}}return e}),X=u(()=>{let e,t,n,r=P.value.percentage.fontSize/3;return U.value?P.value.percentage.verticalPosition===`top`?(e=J.value.width/2,t=W.value.top/2,n=`middle`):P.value.percentage.verticalPosition===`bottom`&&(e=J.value.width/2,t=J.value.height-W.value.bottom/2+r,n=`middle`):P.value.percentage.horizontalPosition===`left`?(e=4,t=J.value.height/2+r,n=`start`):P.value.percentage.horizontalPosition===`right`&&(e=J.value.width-W.value.right+8,t=J.value.height/2+r,n=`start`),{x:e,y:t,textAnchor:n,bold:P.value.percentage.bold,fontSize:P.value.percentage.fontSize,fill:P.value.percentage.color}}),Z=y(!1);function ft(e){Z.value=e,Qe.value+=1}let Q=y(!1);function $(){Q.value=!Q.value}let pt=ve(O,()=>P.value.title.text),mt=u(()=>P.value.backgroundColor),ht=u(()=>P.value.title),{isCallbackImaging:gt,isCallbackSvg:_t,generateSvg:vt,onGenerateImage:yt}=ue({svg:R,title:ht,legend:null,legendItems:null,backgroundColor:mt,getSvgCallback:()=>j.value.userOptions.callbacks.svg,generateImage:at});async function bt(){if(qe(`copyAlt`,{config:j.value,dataset:I.value}),!j.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(j.value.userOptions.callbacks.altCopy({config:j.value,dataset:I.value}))}let xt=u(()=>`${D.value}-title`),St=u(()=>`${D.value}-desc`),Ct=u(()=>ee(P.value.percentage.formatter,H.value,a({v:H.value,s:`%`,r:P.value.percentage.rounding}))),wt=u(()=>P.value.title.text||``),Tt=u(()=>F.value?`Loading data`:`Value: ${Ct.value}`);return fe({getImage:pt,generatePdf:it,generateImage:at,generateSvg:vt,toggleAnnotator:$,toggleFullscreen:ft,copyAlt:bt}),(e,a)=>(v(),p(`div`,{ref_key:`tiremarksChart`,ref:O,class:g(`vue-data-ui-component vue-ui-tiremarks ${j.value.useCssAnimation?``:`vue-ui-dna`}`),style:_(`font-family:${j.value.style.fontFamily};width:100%; text-align:center;background:${P.value.backgroundColor}`),id:D.value,onMouseenter:a[0]||=()=>C(nt)(!0),onMouseleave:a[1]||=()=>C(nt)(!1)},[M.value.buttons.annotator?(v(),d(C(w),{key:0,svgRef:C(R),backgroundColor:P.value.backgroundColor,color:P.value.color,active:Q.value,isCursorPointer:et.value,palette:M.value.annotatorPalette,onClose:$},Ce({_:2},[b(C(n),n=>({name:n,fn:ke(r=>[x(e.$slots,n,Te(h(C(t)(n,r))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):f(``,!0),ot.value?(v(),p(`div`,{key:1,ref_key:`noTitle`,ref:Ye,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):f(``,!0),P.value.title.text?(v(),p(`div`,{key:2,ref_key:`chartTitle`,ref:Xe,style:`width:100%;background:transparent;padding-bottom:12px`},[(v(),d(de,{key:`title_${$e.value}`,config:{title:{cy:`wheel-title`,...P.value.title},subtitle:{cy:`wheel-subtitle`,...P.value.title.subtitle}}},null,8,[`config`]))],512)):f(``,!0),M.value.show&&Je.value&&(C(rt)||C(L))?(v(),d(C(We),{ref:`details`,key:`user_options_${Qe.value}`,backgroundColor:P.value.backgroundColor,color:P.value.color,isPrinting:C(B),isImaging:C(V),uid:D.value,hasPdf:M.value.buttons.pdf,hasImg:M.value.buttons.img,hasSvg:M.value.buttons.svg,hasFullscreen:M.value.buttons.fullscreen,hasAltCopy:M.value.buttons.altCopy,hasXls:!1,isFullscreen:Z.value,titles:{...M.value.buttonTitles},chartElement:O.value,position:M.value.position,hasAnnotator:M.value.buttons.annotator,isAnnotation:Q.value,callbacks:M.value.callbacks,printScale:M.value.print.scale,isCursorPointer:et.value,onToggleFullscreen:ft,onGeneratePdf:C(it),onGenerateImage:C(yt),onGenerateSvg:C(vt),onToggleAnnotator:$,onCopyAlt:bt,style:_({visibility:C(rt)?C(L)?`visible`:`hidden`:`visible`})},Ce({_:2},[b(C(r)(e.$slots,`menuIcon optionPdf optionImg optionSvg optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:ke(n=>[x(e.$slots,t,Te(h(C(i)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasImg`,`hasSvg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`titles`,`chartElement`,`position`,`hasAnnotator`,`isAnnotation`,`callbacks`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):f(``,!0),(v(),p(`svg`,{ref_key:`svgRef`,ref:R,xmlns:C(ne),class:g({"vue-data-ui-fullscreen--on":Z.value,"vue-data-ui-fulscreen--off":!Z.value}),viewBox:`0 0 ${K.value} ${q.value}`,style:_(`max-width:100%; overflow: visible; background:transparent;color:${P.value.color}`),role:`img`,"aria-labelledby":xt.value,"aria-describedby":St.value},[Se(`title`,{id:xt.value},S(wt.value),9,Ne),Se(`desc`,{id:St.value},S(Tt.value),9,Pe),we(C(Ge)),e.$slots[`chart-background`]?(v(),p(`foreignObject`,{key:0,x:0,y:0,width:J.value.width,height:J.value.height,style:{pointerEvents:`none`}},[x(e.$slots,`chart-background`,{},void 0,!0)],8,Fe)):f(``,!0),N.value.curved?(v(),p(`g`,Ie,[(v(!0),p(xe,null,b(dt.value,(e,t)=>(v(),p(`path`,{d:e.curve,"stroke-width":Y.value.mark,stroke:H.value>=t?e.color:N.value.inactiveColor,"stroke-linecap":`round`,fill:`none`,class:g({"vue-ui-tick-animated":P.value.animation.use&&!C(T)&&t<=H.value})},null,10,Le))),256))])):(v(),p(`g`,Re,[(v(!0),p(xe,null,b(dt.value,(e,t)=>(v(),p(`line`,{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,"stroke-width":Y.value.mark,stroke:H.value>=t?e.color:N.value.inactiveColor,"stroke-linecap":`round`},null,8,ze))),256))])),P.value.percentage.show?(v(),p(`g`,{key:3,role:`status`,"aria-live":`polite`,"aria-label":C(F)?`...`:`${Ct.value}`},[C(F)?(v(),p(`rect`,{key:0,x:ut.value.x,y:ut.value.y,width:40,height:X.value.fontSize,fill:`#6A6A6A80`,rx:3},null,8,Ve)):(v(),p(`text`,{key:1,"aria-hidden":`true`,x:X.value.x,y:X.value.y,"font-size":X.value.fontSize,fill:N.value.ticks.gradient.show&&P.value.percentage.useGradientColor?C(s)(N.value.activeColor,H.value/100*(N.value.ticks.gradient.shiftHueIntensity/100)):P.value.percentage.color,"font-weight":X.value.bold?`bold`:`normal`,"text-anchor":X.value.textAnchor},S(Ct.value),9,He))],8,Be)):f(``,!0),x(e.$slots,`svg`,{svg:{...J.value,isPrintingImg:C(B)||C(V)||C(gt),isPrintingSvg:C(_t)}},void 0,!0)],14,Me)),e.$slots.watermark?(v(),p(`div`,Ue,[x(e.$slots,`watermark`,Te(h({isPrinting:C(B)||C(V)||C(gt)||C(_t)})),void 0,!0)])):f(``,!0),e.$slots.source?(v(),p(`div`,{key:5,ref_key:`source`,ref:Ze,dir:`auto`},[x(e.$slots,`source`,{},void 0,!0)],512)):f(``,!0),x(e.$slots,`skeleton`,{},()=>[C(F)?(v(),d(le,{key:0})):f(``,!0)],!0)],46,je))}},[[`__scopeId`,`data-v-260aecce`]]);export{Ae as n,w as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{n as t,t as n}from"./tableIntegration-CNoJ1CIY.js";import{n as r,t as i}from"./annotationSlots-BRR85CqJ.js";import{n as a,t as o}from"./userOptionsSlots-DYuo-E5m.js";import{$ as s,D as c,Dt as l,Ft as u,Ht as d,S as f,X as ee,Zt as te,at as ne,et as re,i as ie,in as ae,nt as oe,pt as se,r as ce,t as le,w as ue,zt as de}from"./lib-zDxoqrgo.js";import{n as fe,t as pe}from"./useHints-BH9r_0Vd.js";import{t as me}from"./useConfig-CKdzPrcf.js";import{t as he}from"./usePrinter-CnyKPIFM.js";import{n as ge,t as _e}from"./BaseScanner-8NdoBs7B.js";import{t as ve}from"./useChartExport-DtPNpc9M.js";import{t as ye}from"./useTransitions-DfSHzsdz.js";import{n as be}from"./Title-BRAjxtjG.js";import{t as xe}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{l as Se,t as Ce}from"./useResponsive-D2CPcpda.js";import{t as we}from"./BaseIcon-Cz30ODFA.js";import{t as Te}from"./DefGrad-DKMq1REY.js";import{t as Ee}from"./BaseLegendToggle-Dn_tNvn4.js";import{t as De}from"./A11yDataTable-DWNlWXzs.js";import{n as Oe}from"./resolveChartConfig-BSo1Oe9n.js";import{t as ke}from"./useUserOptionState-CXlFnwPv.js";import{t as Ae}from"./useChartAccessibility-DOMuYJfm.js";import{t as je}from"./chartImage-NwZO-elv.js";import{t as Me}from"./Legend-DokTll4u.js";import{t as Ne}from"./usePanZoom-BdjP5Suc.js";import{t as Pe}from"./vue_ui_treemap-Bv4Rdl5_.js";import{Fragment as Fe,Teleport as Ie,computed as p,createBlock as m,createCommentVNode as h,createElementBlock as g,createElementVNode as _,createSlots as Le,createTextVNode as Re,createVNode as ze,defineAsyncComponent as Be,guardReactiveProps as v,mergeProps as Ve,nextTick as He,normalizeClass as Ue,normalizeProps as We,normalizeStyle as y,onBeforeUnmount as Ge,onMounted as Ke,openBlock as b,ref as x,renderList as qe,renderSlot as S,resolveDynamicComponent as Je,shallowRef as C,toDisplayString as Ye,toRefs as Xe,unref as w,useCssVars as Ze,useSlots as Qe,watch as $e,withCtx as T,withKeys as et,withModifiers as tt}from"vue";function nt(e,t){let n=e.length;if(n===0)throw Error(`Max aspect ratio cannot be computed: ${e} is an empty array`);{let r=1/0,i=-1/0,a=0;for(let t=0;t<n;t+=1){let n=e[t].normalizedValue;n<r&&(r=n),n>i&&(i=n),a+=n}return Math.max(t**2*i/a**2,a**2/(t**2*r))}}function rt(e){let{xOffset:t,yOffset:n,width:r,height:i}=e;return{x0:t,y0:n,x1:t+r,y1:n+i}}function it(e,t,n){if(e.length===0)return!0;{let r=e.concat(t);return nt(e,n)>=nt(r,n)}}function at(e){let t=[],n=e.length;for(let r=0;r<n;r+=1){let n=e[r],i=n.length;for(let e=0;e<i;e+=1)t.push(n[e])}return t}function ot(e,t){return ft({...t,children:e})}function st(e){return(e.x1-e.x0)*(e.y1-e.y0)}function ct(e,t){let{width:n,height:r,xOffset:i,yOffset:a}=dt(t),o=e.length,s=e.map(e=>e.normalizedValue||0).reduce((e,t)=>e+t,0),c=s/r,l=s/n,u=i,d=a,f=[];if(n>=r){for(let t=0;t<o;t+=1){let n=e[t],r=d+n.normalizedValue/c,i={x0:u,y0:d,x1:u+c,y1:r},a=Object.assign({},n,i);d=r,f.push(a)}return f}for(let t=0;t<o;t+=1){let n=e[t],r=u+n.normalizedValue/l,i={x0:u,y0:d,x1:r,y1:d+l},a=Object.assign({},n,i);u=r,f.push(a)}return f}function lt(e){let t=dt(e),n=t.width,r=t.height;return Math.min(n,r)}function ut(e,t){let n=e.length,r=t/e.map(e=>e.value??0).reduce((e,t)=>e+t,0),i=[],a,o;for(let t=0;t<n;t+=1)o=e[t],a=Object.assign({},o,{normalizedValue:o.value*(r||0)}),i.push(a);return i}function dt(e){let{x0:t,y0:n,x1:r,y1:i}=e;return{xOffset:t,yOffset:n,width:r-t,height:i-n}}function E(e,t,n,r){let i=e,a=t,o=n,s=r;for(;;){let e=i.length;if(e===0){let e=ct(a,o);return s.concat(e)}let t=lt(o),n=i[0],r=i.slice(1,e);if(it(a,n,t)){let e=a.concat(n);i=r,a=e,o=o,s=s}else{let e=a.length,t=0;for(let n=0;n<e;n+=1)t+=a[n].normalizedValue;let n=pt(o,t),r=ct(a,o),c=s.concat(r);i=i,a=[],o=n,s=c}}}function ft(e){if(e.children===void 0||!e.children.length)return[e];{let t=E(ut(e.children,st(e)),[],e,[]),n=t.length,r=[];for(let e=0;e<n;e+=1)r.push(ft(t[e]));return at(r)}}function pt(e,t){let{width:n,height:r,xOffset:i,yOffset:a}=dt(e);if(n>=r){let e=t/r,o=n-e;return rt({xOffset:i+e,yOffset:a,width:o,height:r})}{let e=t/n,o=r-e;return rt({xOffset:i,yOffset:a+e,width:n,height:o})}}var mt=/* @__PURE__ */ e({default:()=>Ut}),ht=[`id`],gt=[`id`],_t=[`id`],vt=[`tabindex`,`onClick`,`onKeydown`,`data-last-crumb`,`onMouseenter`,`onFocus`],yt={class:`vue-ui-treemap-crumb-unit`},bt={class:`vue-ui-treemap-crumb-unit-label`},xt={key:0,style:{width:`24px`,display:`flex`,"align-items":`center`}},St={key:0,class:`vue-ui-treemap-crumb-unit-arrow`},Ct={style:{position:`relative`}},wt=[`xmlns`,`aria-describedby`,`viewBox`],Tt={key:0},Et=[`x`,`y`,`height`,`width`,`fill`,`rx`,`stroke`,`stroke-width`,`onClick`,`onMouseenter`,`onMouseleave`],Dt=[`id`],Ot=[`x`,`y`,`width`,`height`],kt=[`clip-path`],At=[`transform`],jt=[`transform`],Mt=[`x`,`y`,`fill`,`font-size`,`font-family`,`font-weight`],Nt={key:0},Pt=[`x`,`y`,`height`,`width`],Ft={style:{width:`100%`,height:`100%`,overflow:`hidden`},class:`vue-ui-treemap-cell`},It={key:0,"data-dom-to-png-ignore":``,class:`reset-wrapper`},Lt={key:1,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Rt={key:6,class:`vue-data-ui-watermark`},zt=[`id`],Bt=[`onClick`],Vt={style:{display:`flex`,"align-items":`center`}},Ht=4,Ut=/*#__PURE__*/ xe({__name:`vue-ui-treemap`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`selectLegend`,`selectDatapoint`,`copyAlt`],setup(e,{expose:xe,emit:nt}){Ze(e=>({v30f17a15:Di.value}));let rt=Be(()=>import(`./DataTable-DSUA5M9p.js`)),it=Be(()=>import(`./PenAndPaper-DvJJaeU2.js`).then(e=>e.t)),at=Be(()=>import(`./vue-ui-accordion-Dy5OVFKr.js`).then(e=>e.n)),st=Be(()=>import(`./Tooltip-BUXB0i6z.js`)),ct=Be(()=>import(`./UserOptions-D65t74CM.js`).then(e=>e.n)),lt=Be(()=>import(`./PackageVersion-D6pKL176.js`).then(e=>e.t)),ut=Be(()=>import(`./BaseDraggableDialog-T1gEsQid.js`).then(e=>e.n)),{vue_ui_treemap:dt}=me(),E=e,ft=nt,pt=Qe(),mt=p(()=>!!E.dataset&&E.dataset.length),Ut=p(()=>/^((?!chrome|android).)*safari/i.test(navigator.userAgent)),D=x(ee()),Wt=x(!1),Gt=x(``),Kt=x(!1),qt=x(0),O=x([]),k=C(null),Jt=C(null),Yt=C(null),Xt=C(null),Zt=C(null),Qt=x(0),$t=x(0),en=x(0),A=x([]),tn=x(null),nn=x(!1),rn=x(null),an=x(null),on=x(null),sn=x(/* @__PURE__ */ new Map),j=x(null),cn=x({x:0,y:0}),ln=x(`pointer`),un=x(!1),M=x(yn()),N=p(()=>M.value.userOptions),P=p(()=>M.value.style.chart.tooltip),F=p(()=>M.value.style.chart.legend),I=p(()=>M.value.style.chart.layout.labels),L=p(()=>M.value.style.chart.layout),R=p(()=>M.value.style.chart);fe({config:()=>M.value,dataset:()=>E.dataset,component:`VueUiTreemap`,rules:[pe.emptyArray,{test:e=>e.length===1&&e[0]?.children&&e[0].children.length<6&&e[0].children.length>0||e.flatMap(e=>e?.children?.length??0).reduce((e,t)=>e+t,0)<6,message:[`👀 The number of data points is < 6. Consider:`,``,`▶️ Using another type of chart instead to better show proportions: VueUiDonut, VueUiWaffle`]},{test:e=>e.length===1&&e[0]?.children&&e[0].children.length===0,message:[`👀 There is a series defined in the dataset but it has no children items.`,``,`▶️ Add children items to your series.`]}]});let{transitionEnabled:dn}=ye({config:()=>M.value.transitions,dataset:()=>E.dataset}),z=p(()=>M.value.userOptions.useCursorPointer),fn=p(()=>ae({defaultConfig:{userOptions:{show:!1},style:{chart:{backgroundColor:`#999999`,layout:{labels:{showDefaultLabels:!1},rects:{stroke:`#6A6A6A`}},legend:{backgroundColor:`transparent`}}}},userConfig:M.value.skeletonConfig??{}})),{loading:pn,FINAL_DATASET:mn,manualLoading:hn}=ge({...Xe(E),FINAL_CONFIG:M,prepareConfig:yn,skeletonDataset:E.config?.skeletonDataset??[{name:`_`,value:53,color:`#CACACA90`,children:[{name:`_`,value:21},{name:`_`,value:13},{name:`_`,value:8},{name:`_`,value:5},{name:`_`,value:3},{name:`_`,value:2},{name:`_`,value:1}]}],skeletonConfig:ae({defaultConfig:M.value,userConfig:fn.value})}),{userOptionsVisible:gn,setUserOptionsVisibility:_n,keepUserOptionState:vn}=ke({config:M.value}),{svgRef:B}=Ae({config:R.value.title});function yn(){return Oe(E.config,dt,Pe)}let bn=te(E.config);$e(()=>E.config,(e,t)=>{let n=te(e),r=n!==bn;bn=n;let i=yn();if(!r){M.value.style.chart.tooltip=i.style.chart.tooltip,V.value.showTooltip=M.value.style.chart.tooltip.show;return}pn.value||(M.value=i),gn.value=!M.value.userOptions.showOnChartHover,Qt.value+=1,$t.value+=1,en.value+=1,V.value.showTable=M.value.table.show,V.value.showTooltip=P.value.show,V.value.showZoom=R.value.zoom?.show??!1},{deep:!0});let{isPrinting:xn,isImaging:Sn,generatePdf:Cn,generateImage:wn}=he({elementId:`treemap_${D.value}`,fileName:R.value.title.text||`vue-ui-treemap`,options:M.value.userOptions.print}),Tn=p(()=>M.value.userOptions.show&&!R.value.title.text),En=p(()=>ue(M.value.customPalette)),V=x({showTable:M.value.table.show,showTooltip:P.value.show,showZoom:R.value.zoom?.show??!1});$e(M,()=>{V.value={showTable:M.value.table.show,showTooltip:P.value.show,showZoom:R.value.zoom?.show??!1}},{immediate:!0});let Dn=x({height:R.value.height,width:R.value.width});function On(e){let t=k.value,n=Dn.value.height;return!t||!n?e:e*(n/t.getBoundingClientRect().height)}function kn(){if(!tn.value||X.value.length<=1)return 0;let e=tn.value,t=getComputedStyle(e);return On(e.offsetHeight+parseFloat(t.marginTop||`0`)+parseFloat(t.marginBottom||`0`)+parseFloat(t.paddingTop||`0`)+parseFloat(t.paddingBottom||`0`))}let H=p(()=>{let e=R.value.padding,t=Dn.value.width,n=Dn.value.height,r=kn(),i=e.left,a=t-e.right,o=e.top,s=n-e.bottom-r;return{left:i,top:o,right:a,bottom:s,width:a-i,height:Math.max(0,s-o),vbWidth:t,vbHeight:n-r,offsetY:r}}),U=x(re(mn.value)),W=x(U.value),An=C(/* @__PURE__ */ new Map);$e([U,()=>M.value],()=>{on.value=null,sn.value=/* @__PURE__ */ new Map},{deep:!0}),$e(()=>O.value,()=>{on.value=null,sn.value=/* @__PURE__ */ new Map,Pn(),en.value+=1,$t.value+=1},{deep:!0}),$e([()=>Dn.value.width,()=>Dn.value.height],()=>{sn.value=/* @__PURE__ */ new Map});function jn(e){Array.isArray(e)&&e.forEach((e,t)=>{e.id||=ee(),e.sourceColor===void 0&&(e.sourceColor=f(e.color)||null);let n=e.sourceColor||An.value.get(e.id)||En.value[t]||d[t]||d[t%d.length];n=f(n),An.value.set(e.id,n),e.color=n,Mn(e,n)})}function Mn(e,t){Array.isArray(e.children)&&e.children.forEach(n=>{n.id||=ee(),n.parentId=e.id,n.sourceColor===void 0&&(n.sourceColor=f(n.color)||null);let r=n.sourceColor||t;n.color=r,Mn(n,r)})}function Nn(e){let t=Y(e);for(;t?.parentId;)t=Y(t.parentId);return t?.id??null}function Pn(){let e=U.value.filter(e=>!O.value.includes(e.id));if(!A.value.length){W.value=e;return}let t=A.value[A.value.length-1],n=Y(t);if(!n){A.value=[],W.value=e;return}let r=Nn(n.id);if(r&&O.value.includes(r)){A.value=[],W.value=e;return}W.value=[n]}$e(()=>mn.value,()=>{U.value=re(mn.value),jn(U.value),Pn(),en.value+=1,$t.value+=1},{deep:!0,immediate:!0,flush:`post`});let Fn=C(null),In=C(null);Ke(()=>{nn.value=!0,Rn()});let Ln=p(()=>M.value.debug);Ke(()=>{pt[`chart-background`]&&Ln.value&&console.warn(`VueUiTreemap does not support the #chart-background slot.`)});function Rn(){if(de(E.dataset)&&ne({componentName:`VueUiTreemap`,type:`dataset`,debug:Ln.value}),jn(U.value),de(E.dataset)||(hn.value=M.value.loading),M.value.responsive){let e=Se(()=>{let{width:e,height:t}=Ce({chart:k.value,title:R.value.title.text?Jt.value:null,legend:F.value.show?Yt.value:null,source:Xt.value,noTitle:Zt.value});requestAnimationFrame(()=>{Dn.value.width=e,Dn.value.height=t-12})});Fn.value&&(In.value&&Fn.value.unobserve(In.value),Fn.value.disconnect()),Fn.value=new ResizeObserver(e),In.value=k.value.parentNode,Fn.value.observe(In.value)}}Ge(()=>{Fn.value&&(In.value&&Fn.value.unobserve(In.value),Fn.value.disconnect())});let zn=p(()=>W.value.map((e,t)=>({...e,color:f(e.color)||En.value[t]||d[t]||d[t%d.length]})).filter(e=>!O.value.includes(e.id))),Bn=p(()=>U.value.filter(e=>!O.value.includes(e.id)).map(e=>e.value||0).reduce((e,t)=>e+t,0)),Vn=p({get(){let e=[...zn.value];return L.value.sorted&&(e=[...zn.value].sort((e,t)=>t.value-e.value)),e.map(e=>({...e}))},set(e){return e}});function Hn(e,t){return e.value/t}function Un(e,t,n){let r=L.value.rects.colorRatio-Hn(t,n);return u(e,r<0?0:r)}function Wn(e){return Array.isArray(e.children)&&e.children.length>0}function Gn(e){return[...e].sort((e,t)=>{let n=Wn(e),r=Wn(t);if(n!==r)return n-r;let i=Number(e.value)||0;return(Number(t.value)||0)-i})}function Kn(e,t,n,r,i){return Gn(e).map((e,a)=>{let o=e.sourceColor||f(e.color)||f(t)||En.value[a]||d[a]||d[a%d.length],s=e.sourceColor?e.sourceColor:Un(o,e,r),c=Hn(e,r),l=i??e.parentId??e.id,u=Array.isArray(e.children)&&e.children.length&&e.children.reduce((e,t)=>e+(Number(t.value)||0),0)||1;return{...e,color:s,proportion:c,parentName:n,rootId:l,children:Array.isArray(e.children)&&e.children.length?Kn(e.children,o,e.name,u,l):void 0}})}function qn(e){let t=or(e),n=Jn(e),r=t*.55,i=t*.55,a=t*1.05,o=t*1.05,s=t*.35,c=n?a+o+s:t*.45,l=e.x0+r,u=e.x1-r,d=e.y0+c,f=e.y1-i;return u<=l||f<=d?null:{x0:l,y0:d,x1:u,y1:f}}function Jn(e){return I.value.hideUnderProportion===0||Yn(e)}function Yn(e){let t=Number(I.value.hideUnderProportion);return!Number.isFinite(t)||t<=0||e.proportion>t}function Xn(e,t,n=0,r=null){if(!Array.isArray(e)||!e.length)return[];let i=e.map(e=>{let{children:t,...n}=e;return{...n}}),a=new Map(e.map(e=>[e.id,Array.isArray(e.children)?e.children:[]])),o=new Map(e.map(e=>[e.id,e])),s=ot(i,t),c=[];for(let e of s){let t=a.get(e.id)||[],i=o.get(e.id),s={...e,depth:n,parentId:r??e.parentId??null,color:i?.color??e.color??null,children:t,isVisibleNode:!0,showLabel:Jn(e)};if(c.push(s),t.length){let r=qn(s);r&&c.push(...Xn(t,r,n+1,e.id))}}return c}let Zn=p(()=>{let e=W.value.length?W.value:Vn.value,t=e.map(e=>Number(e.value)||0).reduce((e,t)=>e+t,0)||1;return Xn(e.map((e,n)=>{let r=e.children?e.children.reduce((e,t)=>e+(Number(t.value)||0),0):e.value,{children:i,...a}=e,o=e.sourceColor||f(e.color)||An.value.get(e.id)||En.value[n]||d[n]||d[n%d.length],s=e.sourceColor?e.sourceColor:Un(o,e,t);return{...a,id:e.id||ee(),parentId:e.parentId??null,name:e.name,value:e.value,color:s,proportion:(Number(e.value)||0)/t,children:Array.isArray(e.children)&&e.children.length?Kn(e.children,o,e.name,r||1):void 0}}),{x0:H.value.left,y0:H.value.top,x1:H.value.left+H.value.width,y1:H.value.top+H.value.height})}),G=p(()=>Zn.value);function Qn(e){return(Z.value&&Z.value.id===e.id?L.value.rects.selected.strokeWidth:L.value.rects.strokeWidth)*Hr.value}function K({y0:e,y1:t}){return t-e<=0?1e-4:Math.round((t-e)*1e4)/1e4}function q({x0:e,x1:t}){return t-e<=0?1e-4:Math.round((t-e)*1e4)/1e4}function $n(){let e=I.value,t=Number(e.minFontSize),n=Number(e.fontSize),r=Math.max(0,Math.min(Number.isFinite(t)?t:0,Number.isFinite(n)?n:0));return{lowerBound:r,upperBound:Math.max(r,Number.isFinite(n)?n:r)}}function er(e){let t=Math.min(4,Math.max(e*.25,.5));return{paddingX:t,paddingTop:t}}function tr(e,t){let{paddingX:n,paddingTop:r}=er(t),i=t*1.1;return{x:e.x0+n,y:e.y0+r,width:Math.max(q(e)-n*2,0),height:Math.max(K(e)-r*2,0),lineHeight:i}}function nr(e,t){return ie(I.value.formatter,e.value,s({p:I.value.prefix,v:e.value,s:I.value.suffix,r:P.value.roundingValue}),{datapoint:e,seriesIndex:t})}function rr(e,t){let n=nr(e,t);return Array.isArray(e.children)&&e.children.length?[`${e.name} (${n})`]:[`${e.name}`,n].filter(e=>`${e}`.length)}function ir(e,t,n){let r=rr(e,n),i=tr(e,t);return!r.length||i.width<=0||i.height<=0||r.length*i.lineHeight>i.height?!1:r.every((e,n)=>yi(e,t,n===0?500:400)<=i.width)}function ar(e,t,n,r){let i=rr(e,t),a=Math.max(1,...i.map(e=>String(e).length)),o=Math.min(18,Math.max(10,Math.ceil(a*.7))),s=Math.max(1,i.length),c=Math.max(q(e)-1,1e-4),l=Math.max(K(e)-1,1e-4),u=c/(o*.58),d=l/(s*1.35);return Math.max(n,Math.min(r,u,d))}function or(e,t){let{lowerBound:n,upperBound:r}=$n(),i=Math.max(1e-4,Math.min(q(e),K(e))),a=Math.max(n,Math.min(r,i*.9)),o=Math.min(a,ar(e,t,n,r));if(ir(e,o,t)||!ir(e,n,t))return o;let s=n,c=o,l=n;for(let n=0;n<8;n+=1){let n=(s+c)/2;ir(e,n,t)?(l=n,s=n):c=n}let u=Math.max(n,o*.7);return l>=u?l:o}function sr(e){Kt.value=e,qt.value+=1}let J=p(()=>({x:0,y:0,width:H.value.vbWidth,height:H.value.vbHeight}));function Y(e,t=U.value){for(let n of t){if(n.id===e)return n;if(n.children){let t=Y(e,n.children);if(t)return t}}return null}function cr(e){let t=[],n=Y(e);for(;n&&n.parentId;){let e=Y(n.parentId);if(!e)break;t.unshift(e.id),n=e}return t}let lr=p(()=>A.value.length>0);function ur(){W.value=U.value.slice(),A.value=[],ft(`selectDatapoint`,void 0)}function dr(){return A.value[A.value.length-1]??null}function fr(e,t,n){A.value=[...cr(e.id),e.id],W.value=[e],M.value.events.datapointClick&&M.value.events.datapointClick({datapoint:t??e,seriesIndex:n}),ft(`selectDatapoint`,t??e)}function pr(e,t){let n=dr();if(!n){ur();return}let r=Y(n);if(!r?.parentId){M.value.events.datapointClick&&M.value.events.datapointClick({datapoint:e,seriesIndex:t}),ur();return}let i=Y(r.parentId);if(!i){ur();return}A.value=[...cr(i.id),i.id],W.value=[i],M.value.events.datapointClick&&M.value.events.datapointClick({datapoint:e,seriesIndex:t}),ft(`selectDatapoint`,e)}function mr(e,t){if(!e){ur();return}let n=Y(e.id);if(n){if(dr()===n.id){pr(e,t);return}fr(n,e,t)}}function hr(e){return e?dr()===e.id:!1}let X=p(()=>{let e=[{id:null,label:`All`}];if(A.value.length>0){let t=Y(A.value[A.value.length-1]),n=[];for(;t;)n.unshift(t),t=t.parentId?Y(t.parentId):null;for(let t of n)e.push({id:t.id,label:t.name,node:t})}return e}),Z=C(null),gr=p(()=>U.value.map((e,t)=>({...e,color:f(e.color)||En.value[t]||d[t]||d[t%d.length],shape:`square`})).sort((e,t)=>t.value-e.value).map((e,t)=>{let n=e.value/U.value.map(e=>e.value).reduce((e,t)=>e+t,0);return{...e,proportion:n,isSegregated:O.value.includes(e.id),segregate:()=>br(e),opacity:O.value.includes(e.id)?.5:1,display:`${e.name}${F.value.showPercentage||F.value.showValue?`: `:``}${F.value.showValue?ie(I.value.formatter,e.value,s({p:I.value.prefix,v:e.value,s:I.value.suffix,r:F.value.roundingValue}),{datapoint:e}):``}${F.value.showPercentage?O.value.includes(e.id)?`${F.value.showValue?` (`:``}- %${F.value.showValue?`)`:``}`:`${F.value.showValue?` (`:``}${isNaN(e.value/Bn.value)?`-`:(e.value/Bn.value*100).toFixed(F.value.roundingPercentage)}%${F.value.showValue?`)`:``}`:``}`}})),_r=p(()=>({cy:`treemap-div-legend`,backgroundColor:F.value.backgroundColor,color:F.value.color,fontSize:F.value.fontSize,paddingBottom:12,fontWeight:F.value.bold?`bold`:``})),vr=p(()=>O.value.length===gr.value.length);function yr(){O.value.length?O.value=[]:gr.value.forEach(e=>{O.value.push(e.id)}),ft(`selectLegend`,U.value.filter(e=>!O.value.includes(e.id)))}function br(e){Z.value=null,O.value.includes(e.id)?O.value=O.value.filter(t=>t!==e.id):O.value.length<E.dataset.length-1&&O.value.push(e.id),ft(`selectLegend`,U.value.filter(e=>!O.value.includes(e.id)))}function xr(e){return U.value.length?U.value.find(t=>t.name===e)||(Ln.value&&console.warn(`VueUiTreemap - Series name not found "${e}"`),null):(Ln.value&&console.warn(`VueUiTreemap - There are no series to show.`),null)}function Sr(e){let t=xr(e);t!==null&&O.value.includes(t.id)&&br({id:t.id})}function Cr(e){let t=xr(e);t!==null&&(O.value.includes(t.id)||br({id:t.id}))}function wr({datapoint:e,seriesIndex:t}){Z.value=null,Wt.value=!1,j.value=null,ln.value=`pointer`,M.value.events.datapointLeave&&M.value.events.datapointLeave({datapoint:e,seriesIndex:t})}let Tr=x(null);function Er({datapoint:e,seriesIndex:t,triggerMode:n=`pointer`}){if(vr.value||n===`pointer`&&Ir.value)return;M.value.events.datapointEnter&&M.value.events.datapointEnter({datapoint:e,seriesIndex:t}),j.value=t,ln.value=n,Z.value=e,Tr.value={datapoint:e,seriesIndex:t,config:M.value,series:zn.value};let r=P.value.customFormat;if(l(r)&&se(()=>r({seriesIndex:t,datapoint:e,series:zn.value,config:M.value})))Gt.value=r({seriesIndex:t,datapoint:e,series:zn.value,config:M.value});else{let n=``;n+=`<div style="width:100%;text-align:center;border-bottom:1px solid ${P.value.borderColor};padding-bottom:6px;margin-bottom:3px;">${e.name}</div>`,n+=`<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><rect x="0" y="0" height="12" width="12" stroke="none" fill="${e.color}"/></svg>`,n+=`<b>${ie(I.value.formatter,e.value,s({p:I.value.prefix,v:e.value,s:I.value.suffix,r:P.value.roundingValue}),{datapoint:e,seriesIndex:t})}</b>`,Gt.value=`<div>${n}</div>`}Wt.value=!0}let Q=p(()=>({head:G.value.map(e=>({name:e.name,color:e.color})),body:G.value.map(e=>e.value)}));function Dr(e=null){He(()=>{let t=Q.value.head.map((e,t)=>[[e.name],[Q.value.body[t]],[isNaN(Q.value.body[t]/Bn.value)?`-`:Q.value.body[t]/Bn.value*100]]),n=[[R.value.title.text],[R.value.title.subtitle.text],[[``],[`val`],[`%`]]].concat(t),r=c(n);e?e(r):oe({csvContent:r,title:R.value.title.text||`vue-ui-treemap`})})}let Or=p(()=>{let e=[M.value.table.columnNames.series,M.value.table.columnNames.value,M.value.table.columnNames.percentage],t=Q.value.head.map((e,t)=>{let n=ie(I.value.formatter,Q.value.body[t],s({p:I.value.prefix,v:Q.value.body[t],s:I.value.suffix,r:M.value.table.td.roundingValue}));return[{color:e.color,name:e.name,shape:`square`},n,isNaN(Q.value.body[t]/Bn.value)?`-`:s({v:Q.value.body[t]/Bn.value*100,s:`%`,r:M.value.table.td.roundingPercentage})]}),n={th:{backgroundColor:M.value.table.th.backgroundColor,color:M.value.table.th.color,outline:M.value.table.th.outline},td:{backgroundColor:M.value.table.td.backgroundColor,color:M.value.table.td.color,outline:M.value.table.td.outline},breakpoint:M.value.table.responsiveBreakpoint};return{colNames:[M.value.table.columnNames.series,M.value.table.columnNames.value],head:e,body:t,config:n}});function kr(){return G.value}function Ar(){V.value.showTable=!V.value.showTable}function jr(){V.value.showTooltip=!V.value.showTooltip}function Mr(){V.value.showZoom=!V.value.showZoom}let Nr=x(!1);function Pr(){Nr.value=!Nr.value}let Fr=p(()=>!Nr.value&&V.value.showZoom),Ir=x(null),Lr=x(!1),{viewBox:$,resetZoom:Rr,isZoom:zr,setInitialViewBox:Br,scale:Vr}=Ne(B,{x:J.value.x,y:J.value.y,width:Math.max(10,J.value.width),height:Math.max(10,J.value.height)},1,Fr),Hr=p(()=>1/Vr.value),Ur=p(()=>Math.min(1,I.value.fontSizeZoomFactor/Math.max(Vr.value,1e-4))),Wr=p(()=>`scale(${Ur.value})`),Gr=p(()=>V.value.showZoom||zr.value);$e([()=>J.value.x,()=>J.value.y,()=>J.value.width,()=>J.value.height],()=>{He(()=>{Br({x:J.value.x,y:J.value.y,width:Math.max(10,J.value.width),height:Math.max(10,J.value.height)})})},{immediate:!0});function Kr(e){Fr.value&&(e.button===void 0||e.button===0)&&(Ir.value={x:e.clientX,y:e.clientY},Lr.value=!1)}function qr(e){if(!Fr.value||!Ir.value)return;let t=e.clientX-Ir.value.x,n=e.clientY-Ir.value.y;Math.hypot(t,n)>Ht&&(Lr.value=!0)}function Jr(){Ir.value=null,Lr.value&&window.setTimeout(()=>{Lr.value=!1},0)}function Yr(e,t){Lr.value||mr(e,t)}let Xr=x(null);function Zr(e){Xr.value=e}function Qr(){Xr.value=null}let $r=je(k,()=>R.value.title.text),ei=p(()=>n({config:M,style:R,mutableConfig:V,dialog:ut,accordion:at,isFullscreen:Kt,parent:k,maxWidth:800,isCursorPointer:z}));$e(()=>V.value.showTable,e=>t(e,M,rn));function ti(){V.value.showTable=!1,an.value&&an.value.setTableIconState(!1)}let ni=p(()=>gr.value.map(e=>({...e,name:e.display}))),ri=p(()=>R.value.backgroundColor),ii=p(()=>R.value.title),{isCallbackImaging:ai,isCallbackSvg:oi,generateSvg:si,onGenerateImage:ci}=ve({svg:B,title:ii,legend:F,legendItems:ni,backgroundColor:ri,getSvgCallback:()=>M.value.userOptions.callbacks.svg,generateImage:wn});function li(e,t){let n=or(e,t),{paddingX:r,paddingTop:i}=er(n);return{fontSize:n,paddingX:r,paddingTop:i,lineHeight:n*1.1}}function ui(e){return ce(e.color??R.value.backgroundColor)}function di({availableHeight:e,lineHeight:t,lineIndex:n}){if(n===0)return 1/0;let r=e/(n+1);return r<1e-4?-1/0:t<=0?1/0:r/t}function fi(){return Number(I.value.hideUnderProportion)===0}function pi(e){let t=Ur.value;return e.alwaysShowAllLines?`scale(${Math.min(t,e.allLinesScaleCap)})`:Wr.value}function mi({rect:e,seriesIndex:t}){if(!e||!I.value.showDefaultLabels||!Jn(e))return null;let{fontSize:n,paddingX:r,paddingTop:i,lineHeight:a}=li(e,t),o=ui(e),s=rr(e,t).map(e=>String(e??``)),c=tr(e,n);if(!s.some(Boolean)||c.width<=0||c.height<=0)return null;let l=fi(),u=l?Math.max(1e-4,Math.min(1,c.height/Math.max(s.length*a,1e-4))):1,d=`treemap_clip_${D.value}_${e.id}`,f=e.x0,ee=e.y0,te=Math.max(q(e),0),ne=Math.max(K(e),0);return{key:hi(e),clipId:d,clipX:f,clipY:ee,clipWidth:te,clipHeight:ne,translate:`translate(${e.x0}, ${e.y0})`,alwaysShowAllLines:l,allLinesScaleCap:u,lines:s.map((t,s)=>({key:`${e.id}_${s}`,text:t,x:r,y:i+a*s,maxZoomFactor:di({availableHeight:c.height,lineHeight:a,lineIndex:s}),fill:o,fontSize:n,fontFamily:M.value.style.fontFamily,fontWeight:s===0?500:400}))}}function hi(e){return`${e.id}`}let gi=p(()=>pt.rect||pn.value||!I.value.showDefaultLabels||vr.value?[]:G.value.map((e,t)=>e.showLabel?mi({rect:e,seriesIndex:t}):null).filter(Boolean)),_i;function vi(){return typeof document>`u`?null:(_i||=document.createElement(`canvas`),_i.getContext(`2d`))}function yi(e,t,n=400){let r=vi();return r?(r.font=`${n} ${t}px ${M.value.style.fontFamily}`,r.measureText(String(e)).width):e.length*t*.6}function bi(e){let t=L.value.rects.borderRadius,n=q(e),r=K(e);return Math.min(t,Math.min(n,r)/6)}async function xi(){if(ft(`copyAlt`,{config:M.value,dataset:G.value}),!M.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(M.value.userOptions.callbacks.altCopy({config:M.value,dataset:G.value}))}function Si(){j.value=null,un.value=!0}function Ci(){j.value=null,ln.value=`pointer`,Wt.value=!1,Z.value=null,un.value=!1}function wi(e){if(!B.value||Nr.value||document.activeElement!==B.value||!G.value.length||vr.value)return;let t=[`ArrowLeft`,`ArrowUp`].includes(e.key),n=[`ArrowRight`,`ArrowDown`].includes(e.key),r=e.key===`Enter`||e.key===` `,i=e.key===`Escape`;if(!t&&!n&&!r&&!i)return;if(e.preventDefault(),e.stopPropagation(),i){j.value=null,ln.value=`pointer`,Wt.value=!1,Z.value=null;return}if(r){if(j.value===null)return;let e=G.value[j.value];if(!e)return;mr(e,j.value);return}let a=j.value,o=Z.value?G.value.findIndex(e=>e.id===Z.value.id):null,s=a!==null&&a>=0&&a<G.value.length,c=o!==null&&o>=0&&o<G.value.length;s?n?(a+=1,a>=G.value.length&&(a=0)):t&&(--a,a<0&&(a=G.value.length-1)):c?(a=n?o+1:o-1,a>=G.value.length&&(a=0),a<0&&(a=G.value.length-1)):a=n?0:G.value.length-1;let l=G.value[a];l&&(Ti(a),Er({datapoint:l,seriesIndex:a,triggerMode:`keyboard`}))}function Ti(e){if(!Number.isFinite(e)||!B.value)return;let t=G.value[e];if(!t)return;let n=t.x0+q(t)/2,r=t.y0+K(t)/2,i=B.value.getBoundingClientRect();cn.value={x:i.left+(n-$.value.x)/$.value.width*i.width,y:i.top+(r-$.value.y)/$.value.height*i.height}}let Ei=p(()=>({headers:Or.value?.colNames??[],rows:Or.value?.body??[]})),Di=p(()=>R.value.color);return xe({getData:kr,getImage:$r,generateCsv:Dr,generateImage:wn,generateSvg:si,generatePdf:Cn,hideSeries:Cr,showSeries:Sr,toggleTable:Ar,toggleTooltip:jr,toggleZoom:Mr,toggleAnnotator:Pr,toggleFullscreen:sr,resetZoom:Rr,copyAlt:xi}),(e,t)=>(b(),g(`div`,{ref_key:`treemapChart`,ref:k,class:Ue(`vue-data-ui-component vue-ui-treemap ${Kt.value?`vue-data-ui-wrapper-fullscreen`:``} ${M.value.useCssAnimation?``:`vue-ui-dna`}`),style:y(`font-family:${M.value.style.fontFamily};width:100%; ${M.value.responsive?`height: 100%;`:``} text-align:center;background:${R.value.backgroundColor}`),id:`treemap_${D.value}`,onMouseenter:t[3]||=()=>w(_n)(!0),onMouseleave:t[4]||=()=>w(_n)(!1)},[_(`div`,{id:`chart-instructions-${D.value}`,class:`sr-only`},[_(`p`,null,Ye(M.value.a11y.translations.keyboardNavigation),1)],8,gt),Ei.value?.rows?.length?(b(),m(De,{key:0,uid:D.value,head:Ei.value.headers,body:Ei.value.rows,notice:M.value.a11y.translations.tableAvailable,caption:M.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):h(``,!0),N.value.buttons.annotator?(b(),m(w(it),{key:1,svgRef:w(B),backgroundColor:R.value.backgroundColor,color:R.value.color,active:Nr.value,isCursorPointer:z.value,palette:N.value.annotatorPalette,onClose:Pr},Le({_:2},[qe(w(i),t=>({name:t,fn:T(n=>[S(e.$slots,t,We(v(w(r)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):h(``,!0),Tn.value?(b(),g(`div`,{key:2,ref_key:`noTitle`,ref:Zt,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):h(``,!0),R.value.title.text?(b(),g(`div`,{key:3,ref_key:`chartTitle`,ref:Jt,style:y(`width:100%;background:${R.value.backgroundColor};padding-bottom:6px`)},[(b(),m(be,{key:`title_${Qt.value}`,config:{title:{cy:`treemap-div-title`,...R.value.title},subtitle:{cy:`treemap-div-subtitle`,...R.value.title.subtitle}}},null,8,[`config`]))],4)):h(``,!0),_(`div`,{id:`legend-top-${D.value}`},null,8,_t),N.value.show&&mt.value&&(w(vn)||w(gn))?(b(),m(w(ct),{ref_key:`userOptionsRef`,ref:an,key:`user_option_${qt.value}`,backgroundColor:R.value.backgroundColor,color:R.value.color,isPrinting:w(xn),isImaging:w(Sn),uid:D.value,hasTooltip:N.value.buttons.tooltip&&P.value.show,hasPdf:N.value.buttons.pdf,hasXls:N.value.buttons.csv,hasImg:N.value.buttons.img,hasSvg:N.value.buttons.svg,hasTable:N.value.buttons.table,hasFullscreen:N.value.buttons.fullscreen,hasAltCopy:N.value.buttons.altCopy,isFullscreen:Kt.value,isTooltip:V.value.showTooltip,titles:{...N.value.buttonTitles},chartElement:k.value,position:N.value.position,hasAnnotator:N.value.buttons.annotator,isAnnotation:Nr.value,callbacks:N.value.callbacks,printScale:N.value.print.scale,tableDialog:M.value.table.useDialog,isCursorPointer:z.value,hasZoom:N.value.buttons.zoom,isZoom:V.value.showZoom,onToggleFullscreen:sr,onGeneratePdf:w(Cn),onGenerateCsv:Dr,onGenerateImage:w(ci),onGenerateSvg:w(si),onToggleTable:Ar,onToggleTooltip:jr,onToggleAnnotator:Pr,onToggleZoom:Mr,onCopyAlt:xi,style:y({visibility:w(vn)?w(gn)?`visible`:`hidden`:`visible`})},Le({_:2},[qe(w(a)(e.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionZoom optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:T(n=>[S(e.$slots,t,We(v(w(o)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.hasZoom.isZoom.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):h(``,!0),X.value.length>1?(b(),g(`nav`,{key:5,class:`vue-ui-treemap-breadcrumbs`,"data-dom-to-png-ignore":``,ref_key:`breadcrumbsNav`,ref:tn},[(b(!0),g(Fe,null,qe(X.value,(n,r)=>(b(),g(`span`,{role:`button`,tabindex:r<X.value.length-1?0:void 0,key:n.id||`root`,onClick:e=>r===X.value.length-1?()=>{}:mr(n.node),onKeydown:[et(tt(e=>r===X.value.length-1?void 0:mr(n.node),[`prevent`]),[`enter`]),et(tt(e=>r===X.value.length-1?void 0:mr(n.node),[`prevent`]),[`space`])],class:`vue-ui-treemap-crumb`,"data-last-crumb":r===X.value.length-1,style:y({color:R.value.color,cursor:z.value?`pointer`:`default`}),onMouseenter:e=>Zr(r),onMouseleave:Qr,onFocus:e=>Zr(r),onBlur:Qr},[_(`span`,yt,[_(`span`,bt,[S(e.$slots,`breadcrumb-label`,Ve({ref_for:!0},{crumb:n,isRoot:r===0,isFocus:Xr.value===r}),()=>[r===0?(b(),g(`div`,xt,[ze(we,{name:Xr.value===0?`homeFilled`:`home`,stroke:R.value.color},null,8,[`name`,`stroke`])])):(b(),g(Fe,{key:1},[Re(Ye(n.label),1)],64))],!0)]),r<X.value.length-1?(b(),g(`span`,St,[S(e.$slots,`breadcrumb-arrow`,{},()=>[t[5]||=Re(` › `,-1)],!0)])):h(``,!0)])],44,vt))),128))],512)):h(``,!0),_(`div`,Ct,[(b(),g(`svg`,{ref_key:`svgRef`,ref:B,xmlns:w(le),"aria-describedby":`chart-instructions-${D.value}`,class:Ue({"vue-data-ui-fullscreen--on":Kt.value,"vue-data-ui-fulscreen--off":!Kt.value,"vue-data-ui-zoom-plus":!lr.value,"vue-data-ui-zoom-minus":lr.value,"vue-data-ui-no-transition":!w(dn),loading:w(pn)}),viewBox:`${w($).x} ${w($).y} ${w($).width<=0?10:w($).width} ${w($).height<=0?10:w($).height}`,style:y(`max-width:100%; overflow:${Gr.value?`hidden`:`visible`}; background:transparent;color:${R.value.color}`),tabindex:`0`,onFocus:Si,onBlur:Ci,onKeydown:wi,onPointerdown:Kr,onPointermove:qr,onPointerup:Jr,onPointercancel:Jr,onPointerleave:Jr},[ze(w(lt)),(b(!0),g(Fe,null,qe(G.value,(e,t)=>(b(),g(`g`,{key:`tgrad_${e.id}`},[L.value.rects.gradient.show?(b(),g(`defs`,Tt,[ze(Te,{t:`radial`,id:`tgrad_${e.id}`,gradientTransform:`translate(-1, -1.000001) scale(2, 2)`,stops:[[`18%`,e.color,1],[`100%`,w(u)(e.color,L.value.rects.gradient.intensity/100),1]]},null,8,[`id`,`stops`])])):h(``,!0)]))),128)),_(`g`,null,[(b(!0),g(Fe,null,qe(G.value,(e,t)=>(b(),g(`g`,{key:`rect_${e.id}_${e.depth}`},[_(`rect`,{x:e.x0,y:e.y0,height:K(e),width:q(e),fill:Ut.value?e.color??R.value.backgroundColor:L.value.rects.gradient.show?vr.value?R.value.backgroundColor:`url(#tgrad_${e.id})`:e.color??R.value.backgroundColor,rx:w(Vr)>1?bi(e)*Hr.value:bi(e),stroke:Z.value&&Z.value.id===e.id?L.value.rects.selected.stroke:L.value.rects.stroke,"stroke-width":Qn(e),onClick:tt(n=>Yr(e,t),[`stop`]),onMouseenter:()=>Er({datapoint:e,seriesIndex:t,triggerMode:`pointer`}),onMouseleave:n=>wr({datapoint:e,seriesIndex:t}),style:y(`opacity:${Z.value?Z.value.id===e.id?1:L.value.rects.selected.unselectedOpacity:1}`),class:Ue([`vue-ui-treemap-rect`,w(dn)?`vue-data-ui-transition`:``,hr(e)?`vue-data-ui-zoom-minus`:`vue-data-ui-zoom-plus`])},null,46,Et)]))),128)),(b(!0),g(Fe,null,qe(gi.value,e=>(b(),g(`g`,{key:e.key,style:{"pointer-events":`none`}},[_(`defs`,null,[_(`clipPath`,{id:e.clipId,clipPathUnits:`userSpaceOnUse`},[_(`rect`,{class:Ue({"vue-data-ui-transition":w(dn)}),x:e.clipX,y:e.clipY,width:e.clipWidth,height:e.clipHeight},null,10,Ot)],8,Dt)]),_(`g`,{"clip-path":`url(#${e.clipId})`},[_(`g`,{transform:e.translate},[_(`g`,{class:Ue({"vue-data-ui-transition":w(dn)}),transform:pi(e)},[(b(!0),g(Fe,null,qe(e.lines,t=>(b(),g(Fe,{key:t.key},[t.text&&(e.alwaysShowAllLines||Ur.value<=t.maxZoomFactor)?(b(),g(`text`,{key:0,x:t.x,y:t.y,fill:t.fill,"font-size":t.fontSize,"font-family":t.fontFamily,"font-weight":t.fontWeight,class:Ue({"vue-data-ui-transition":w(dn)}),"text-anchor":`start`,"dominant-baseline":`text-before-edge`},Ye(t.text),11,Mt)):h(``,!0)],64))),128))],10,jt)],8,At)],8,kt)]))),128)),e.$slots.rect?(b(),g(`g`,Nt,[(b(!0),g(Fe,null,qe(G.value,(t,n)=>(b(),g(`g`,{key:`slot_${t.id}_${t.depth}`},[(b(),g(`foreignObject`,{x:t.x0,y:t.y0,height:K(t),width:q(t),class:`vue-ui-treemap-cell-foreignObject`,style:{"pointer-events":`none`,overflow:`hidden`}},[_(`div`,Ft,[w(pn)?h(``,!0):S(e.$slots,`rect`,Ve({ref_for:!0},{rect:{...t,height:K(t),width:q(t),isSelected:!Z.value||Z.value.id===t.id},shouldShow:Yn(t)||lr.value,fontSize:or(t,n),isZoom:lr.value,textColor:w(ce)(t.color)}),void 0,!0,0)])],8,Pt))]))),128))])):h(``,!0)]),S(e.$slots,`svg`,We(v({svg:H.value,isZoom:lr.value,rect:Z.value,config:M.value,isPrintingImg:w(xn)||w(Sn)||w(ai),isPrintingSvg:w(oi)})),void 0,!0)],46,wt)),w(zr)?(b(),g(`div`,It,[S(e.$slots,`reset-action`,{reset:w(Rr)},()=>[_(`button`,{"data-cy-reset":``,tabindex:`0`,role:`button`,class:`vue-data-ui-refresh-button`,style:y({background:R.value.backgroundColor,cursor:z.value?`pointer`:`default`}),onClick:t[0]||=e=>w(Rr)(!0)},[ze(we,{name:`refresh`,stroke:R.value.color},null,8,[`stroke`])],4)],!0)])):h(``,!0),e.$slots.hint?(b(),g(`div`,Lt,[S(e.$slots,`hint`,We(v({hint:M.value.a11y.translations.keyboardNavigation,isVisible:un.value})),void 0,!0)])):h(``,!0)]),e.$slots.watermark?(b(),g(`div`,Rt,[S(e.$slots,`watermark`,We(v({isPrinting:w(xn)||w(Sn)||w(ai)||w(oi)})),void 0,!0)])):h(``,!0),_(`div`,{id:`legend-bottom-${D.value}`},null,8,zt),nn.value&&(F.value.show||e.$slots.legend)?(b(),m(Ie,{key:7,to:F.value.position===`top`?`#legend-top-${D.value}`:`#legend-bottom-${D.value}`},[_(`div`,{ref_key:`chartLegend`,ref:Yt},[S(e.$slots,`legend`,{legend:gr.value},()=>[F.value.show?(b(),m(Me,{key:`legend_${en.value}`,legendSet:gr.value,config:_r.value,id:`treemap_legend_${D.value}`,isCursorPointer:z.value,onClickMarker:t[1]||=({legend:e})=>br(e)},{item:T(({legend:e,index:t})=>[w(pn)?h(``,!0):(b(),g(`div`,{key:0,onClick:t=>br(e),style:y(`opacity:${O.value.includes(e.id)?.5:1}`)},Ye(e.display),13,Bt))]),legendToggle:T(()=>[gr.value.length>2&&F.value.selectAllToggle.show&&!w(pn)?(b(),m(Ee,{key:0,backgroundColor:F.value.selectAllToggle.backgroundColor,color:F.value.selectAllToggle.color,fontSize:F.value.fontSize,checked:O.value.length>0,isCursorPointer:z.value,onToggle:yr},null,8,[`backgroundColor`,`color`,`fontSize`,`checked`,`isCursorPointer`])):h(``,!0)]),_:1},8,[`legendSet`,`config`,`id`,`isCursorPointer`])):h(``,!0)],!0)],512)],8,[`to`])):h(``,!0),e.$slots.source?(b(),g(`div`,{key:8,ref_key:`source`,ref:Xt,dir:`auto`},[S(e.$slots,`source`,{},void 0,!0)],512)):h(``,!0),ze(w(st),{teleportTo:P.value.teleportTo,show:V.value.showTooltip&&Wt.value,backgroundColor:P.value.backgroundColor,color:P.value.color,fontSize:P.value.fontSize,borderRadius:P.value.borderRadius,borderColor:P.value.borderColor,borderWidth:P.value.borderWidth,backgroundOpacity:P.value.backgroundOpacity,position:P.value.position,offsetX:P.value.offsetX,offsetY:P.value.offsetY,parent:k.value,content:Gt.value,isFullscreen:Kt.value,isCustom:w(l)(P.value.customFormat),smooth:P.value.smooth,backdropFilter:P.value.backdropFilter,smoothForce:P.value.smoothForce,smoothSnapThreshold:P.value.smoothSnapThreshold,isA11yMode:ln.value===`keyboard`,a11yPosition:cn.value},{"tooltip-before":T(()=>[S(e.$slots,`tooltip-before`,We(v({...Tr.value})),void 0,!0)]),tooltip:T(()=>[S(e.$slots,`tooltip`,We(v({...Tr.value})),void 0,!0)]),"tooltip-after":T(()=>[S(e.$slots,`tooltip-after`,We(v({...Tr.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`fontSize`,`borderRadius`,`borderColor`,`borderWidth`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isFullscreen`,`isCustom`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),mt.value&&N.value.buttons.table?(b(),m(Je(ei.value.component),Ve({key:9},ei.value.props,{ref_key:`tableUnit`,ref:rn,onClose:ti}),Le({content:T(()=>[(b(),m(w(rt),{key:`table_${$t.value}`,colNames:Or.value.colNames,head:Or.value.head,body:Or.value.body,config:Or.value.config,title:M.value.table.useDialog?``:ei.value.title,withCloseButton:!M.value.table.useDialog,isCursorPointer:z.value,onClose:ti},{th:T(({th:e})=>[_(`div`,Vt,Ye(e),1)]),td:T(({td:e})=>[Re(Ye(e.name||e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[M.value.table.useDialog?{name:`title`,fn:T(()=>[Re(Ye(ei.value.title),1)]),key:`0`}:void 0,M.value.table.useDialog?{name:`actions`,fn:T(()=>[_(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[2]||=e=>Dr(N.value.callbacks.csv),style:y({cursor:z.value?`pointer`:`default`})},[ze(we,{name:`fileCsv`,stroke:ei.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):h(``,!0),S(e.$slots,`skeleton`,{},()=>[w(pn)?(b(),m(_e,{key:0})):h(``,!0)],!0)],46,ht))}},[[`__scopeId`,`data-v-064d7161`]]);export{mt as n,Ut as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{n as t,t as n}from"./tableIntegration-CNoJ1CIY.js";import{n as r,t as i}from"./annotationSlots-BRR85CqJ.js";import{n as a,t as o}from"./userOptionsSlots-DYuo-E5m.js";import{$ as s,D as ee,Dt as c,Ht as l,Jt as te,S as ne,X as re,Yt as ie,Zt as ae,at as oe,i as se,in as ce,n as le,nt as ue,pt as de,r as fe,t as pe,w as me,yt as he,zt as ge}from"./lib-zDxoqrgo.js";import{n as _e,t as ve}from"./useHints-BH9r_0Vd.js";import{t as ye}from"./useConfig-CKdzPrcf.js";import{t as be}from"./usePrinter-CnyKPIFM.js";import{n as xe,t as Se}from"./BaseScanner-8NdoBs7B.js";import{t as Ce}from"./useChartExport-DtPNpc9M.js";import{t as we}from"./useTransitions-DfSHzsdz.js";import{n as Te}from"./Title-BRAjxtjG.js";import{t as Ee}from"./Shape-tkp65OcG.js";import{t as De}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{l as Oe,t as ke}from"./useResponsive-D2CPcpda.js";import{t as Ae}from"./DefGrad-DKMq1REY.js";import{t as je}from"./BaseLegendToggle-Dn_tNvn4.js";import{t as Me}from"./A11yDataTable-DWNlWXzs.js";import{n as Ne}from"./resolveChartConfig-BSo1Oe9n.js";import{t as Pe}from"./useUserOptionState-CXlFnwPv.js";import{t as Fe}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ie}from"./chartImage-NwZO-elv.js";import{t as Le}from"./labelUtils-Djp5nJtN.js";import{t as Re}from"./Legend-DokTll4u.js";import{t as ze}from"./usePrefersMotion-XLHwega2.js";import{t as Be}from"./vue_ui_waffle-BbBLSluB.js";import{Fragment as u,Teleport as Ve,computed as d,createBlock as f,createCommentVNode as p,createElementBlock as m,createElementVNode as h,createSlots as He,createTextVNode as Ue,createVNode as We,defineAsyncComponent as g,guardReactiveProps as Ge,mergeProps as Ke,nextTick as qe,normalizeClass as _,normalizeProps as Je,normalizeStyle as v,onBeforeUnmount as Ye,onMounted as Xe,openBlock as y,ref as b,renderList as x,renderSlot as S,resolveDynamicComponent as Ze,shallowRef as Qe,toDisplayString as $e,toRefs as et,unref as C,useSlots as tt,watch as nt,withCtx as w}from"vue";var rt=/* @__PURE__ */ e({default:()=>jt}),it=[`id`],at=[`id`],ot=[`id`],st={style:{position:`relative`}},ct=[`xmlns`,`aria-describedby`,`viewBox`],lt=[`id`],ut=[`x`,`y`,`height`,`width`],dt=[`height`,`width`],ft={key:0},pt=[`d`,`stroke`,`stroke-width`,`filter`],mt=[`d`,`fill`,`stroke`,`stroke-width`,`filter`],ht={key:0},gt=[`d`,`fill`,`filter`],_t=[`rx`,`x`,`y`,`height`,`width`,`stroke`,`stroke-width`,`filter`],vt=[`rx`,`x`,`y`,`height`,`width`,`fill`,`stroke`,`stroke-width`,`filter`],yt={key:0},bt=[`rx`,`x`,`y`,`height`,`width`,`fill`,`filter`],xt=[`points`,`stroke`,`stroke-width`,`stroke-linejoin`],St=[`textContent`,`x`,`y`,`font-size`,`fill`,`filter`],Ct=[`d`,`onMouseover`,`onMouseleave`,`onClick`],wt=[`x`,`y`,`height`,`width`,`onMouseover`,`onMouseleave`,`onClick`],Tt={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Et={key:5,class:`vue-data-ui-watermark`},Dt=[`id`],Ot=[`onClick`],kt={key:0},At={key:1},jt=/*#__PURE__*/ De({__name:`vue-ui-waffle`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`selectLegend`,`copyAlt`],setup(e,{expose:De,emit:rt}){let jt=g(()=>import(`./Tooltip-BUXB0i6z.js`)),Mt=g(()=>import(`./BaseIcon-Cz30ODFA.js`).then(e=>e.n)),Nt=g(()=>import(`./DataTable-DSUA5M9p.js`)),Pt=g(()=>import(`./vue-ui-accordion-Dy5OVFKr.js`).then(e=>e.n)),Ft=g(()=>import(`./UserOptions-D65t74CM.js`).then(e=>e.n)),It=g(()=>import(`./PenAndPaper-DvJJaeU2.js`).then(e=>e.t)),Lt=g(()=>import(`./PackageVersion-D6pKL176.js`).then(e=>e.t)),Rt=g(()=>import(`./BaseDraggableDialog-T1gEsQid.js`).then(e=>e.n)),{vue_ui_waffle:zt}=ye(),Bt=ze(),T=e,Vt=tt(),Ht=d({get(){return!!T.dataset&&T.dataset.length},set(e){return e}}),E=b(re()),Ut=b(!1),Wt=b(``),D=b(null),Gt=b(0),Kt=b(null),qt=b(null),Jt=b(null),Yt=b(null),Xt=b(null),Zt=b(0),Qt=b(0),$t=b(0),en=b(!1),tn=b(null),nn=b(null),O=b(null),rn=b({x:0,y:0}),an=b(`pointer`),on=b(!1),k=b(gn()),A=d(()=>k.value.userOptions),j=d(()=>k.value.style.chart.tooltip),M=d(()=>k.value.style.chart.legend),N=d(()=>k.value.style.chart.layout.rect),P=d(()=>k.value.style.chart.layout.grid),F=d(()=>k.value.style.chart.layout),I=d(()=>k.value.style.chart),{transitionEnabled:L}=we({config:()=>k.value.transitions,dataset:()=>T.dataset});_e({config:()=>k.value,dataset:()=>T.dataset,component:`VueUiWaffle`,rules:[ve.singleSeries,ve.emptyArray,{test:e=>e.length>6,message:[`👀 The number of series is > 6. Consider:`,``,`▶️ Grouping small values dynamically into a single "Other" series.`,``,`▶️ Using filters to let users choose a maximum number of series to display.`,``,`▶️ Using VueUiHorizontalBar instead to make the dataset breakdown easier to read.`]}]});let sn=d(()=>k.value.userOptions.useCursorPointer),cn=d(()=>ce({defaultConfig:{useCustomCells:!1,userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,layout:{labels:{captions:{show:!1}},rect:{stroke:`#999999`}},legend:{backgroundColor:`transparent`,showValue:!1,showPercentage:!1}}}},userConfig:k.value.skeletonConfig??{}})),{loading:ln,FINAL_DATASET:un,manualLoading:dn}=xe({...et(T),FINAL_CONFIG:k,prepareConfig:gn,callback:()=>{Promise.resolve().then(async()=>{W.value=jn()})},skeletonDataset:T.config?.skeletonDataset??[{name:``,values:[1],color:`#AAAAAA`},{name:``,values:[1],color:`#BABABA`},{name:``,values:[1],color:`#CACACA`}],skeletonConfig:ce({defaultConfig:k.value,userConfig:cn.value})}),{userOptionsVisible:fn,setUserOptionsVisibility:pn,keepUserOptionState:mn}=Pe({config:k.value}),{svgRef:hn}=Fe({config:I.value.title});function gn(){return Ne(T.config,zt,Be)}let _n=ae(T.config);nt(()=>T.config,(e,t)=>{let n=ae(e),r=n!==_n;_n=n;let i=gn();if(!r){k.value.style.chart.tooltip=i.style.chart.tooltip,z.value.showTooltip=k.value.style.chart.tooltip.show;return}ln.value||(k.value=i),fn.value=!k.value.userOptions.showOnChartHover,bn(),Zt.value+=1,Qt.value+=1,$t.value+=1,z.value.showTable=k.value.table.show,z.value.showTooltip=j.value.show},{deep:!0});let R=Qe(null),vn=Qe(null),yn=d(()=>k.value.debug);function bn(){if(ge(T.dataset)?(oe({componentName:`VueUiWaffle`,type:`dataset`,debug:yn.value}),Ht.value=!1,dn.value=!0):yn.value&&T.dataset.forEach((e,t)=>{he({datasetObject:e,requiredAttributes:[`name`,`values`]}).forEach(e=>{oe({componentName:`VueUiWaffle`,type:`datasetSerieAttribute`,property:e,index:t})})}),ge(T.dataset)||(dn.value=k.value.loading),k.value.responsive){let e=Oe(()=>{let{width:e,height:t}=ke({chart:Kt.value,title:I.value.title.text?qt.value:null,legend:M.value.show?Jt.value:null,source:Yt.value,noTitle:Xt.value});requestAnimationFrame(()=>{B.value.width=e,B.value.height=t,V.value.width=e,V.value.height=t})});R.value&&(vn.value&&R.value.unobserve(vn.value),R.value.disconnect()),R.value=new ResizeObserver(e),vn.value=Kt.value.parentNode,R.value.observe(vn.value)}}Xe(()=>{en.value=!0,bn()}),Ye(()=>{R.value&&(vn.value&&R.value.unobserve(vn.value),R.value.disconnect())});let{isPrinting:xn,isImaging:Sn,generatePdf:Cn,generateImage:wn}=be({elementId:`vue-ui-waffle_${E.value}`,fileName:I.value.title.text||`vue-ui-waffle`,options:k.value.userOptions.print}),Tn=d(()=>k.value.userOptions.show&&!I.value.title.text),En=d(()=>me(k.value.customPalette)),z=b({showTable:k.value.table.show,showTooltip:j.value.show});nt(k,()=>{z.value={showTable:k.value.table.show,showTooltip:j.value.show}},{immediate:!0});let B=b({height:512,width:512}),V=b({top:0,left:0,height:512,width:512}),H=d(()=>(V.value.width-P.value.size*P.value.spaceBetween)/P.value.size),U=d(()=>(V.value.height-P.value.size*P.value.spaceBetween)/P.value.size),Dn=d(()=>Math.max(1e-4,V.value.width/P.value.size)),On=d(()=>Math.max(1e-4,V.value.height/P.value.size));function kn(e){let t=P.value.size*P.value.size,n=e.reduce((e,t)=>e+t,0),r=e.map(e=>e/n*t),i=r.map(Math.floor),a=r.map(e=>e%1),o=t-i.reduce((e,t)=>e+t,0);for(;o>0;){let e=a.indexOf(Math.max(...a));i[e]+=1,a[e]=0,--o}return i}let An=b(!1);function jn(){return An.value=un.value.flatMap(e=>e.values.reduce((e,t)=>e+t,0)).reduce((e,t)=>e+t,0)===0,un.value.map((e,t)=>({...e,color:ne(e.color)||En.value[t]||l[t]||l[t%l.length],uid:`serie_${t}`,absoluteIndex:t}))}let Mn=d(()=>jn()),W=b(Mn.value);nt(()=>T.dataset,e=>{Array.isArray(e)&&e.length>0&&(dn.value=!1)},{immediate:!0}),nt(()=>T.dataset,e=>{W.value=jn()},{deep:!0});let Nn=d(()=>kn(W.value.filter((e,t)=>!J.value.includes(e.uid)).map((e,t)=>An.value?1:(e.values||[]).reduce((e,t)=>e+t,0)))),Pn=d(()=>kn(W.value.map((e,t)=>An.value?1:(e.values||[]).reduce((e,t)=>e+t)))),Fn=d(()=>P.value.size**2),G=d(()=>(yn.value&&un.value.forEach((e,t)=>{[null,void 0].includes(e.values)&&oe({componentName:`VueUiWaffle`,type:`datasetSerieAttribute`,property:`values (number[])`,index:t})}),W.value.filter((e,t)=>!J.value.includes(e.uid)).map((e,t)=>{let n=Nn.value[t];return{absoluteIndex:e.absoluteIndex,uid:e.uid,name:e.name,color:e.color,value:(e.values||[]).reduce((e,t)=>e+t,0),absoluteValues:e.values||[],squareCount:n,proportion:n/Fn.value}}))),In=d(()=>W.value.map((e,t)=>{let n=Pn.value[t];return{absoluteIndex:e.absoluteIndex,uid:e.uid,name:e.name,color:e.color,value:(e.values||[]).reduce((e,t)=>e+t,0),absoluteValues:e.values||[],squareCount:n,proportion:n/Fn.value}}));function Ln(){return In.value.map(e=>({name:e.name,color:e.color,value:e.value,squareCount:e.squareCount,proportion:e.proportion}))}let Rn=d(()=>{let e=0;return G.value.map((t,n)=>{let r=e,i=r+t.squareCount,a=[];for(let e=Math.floor(r);e<Math.floor(i);e+=1)a.push(e);return e=i,{...t,start:r,rects:a}})}),K=d(()=>Rn.value.flatMap((e,t)=>e.rects.map((n,r)=>({isFirst:r===0,isLongEnough:n.length>2,name:e.name,color:e.color,value:e.value,serieIndex:t,absoluteStartIndex:r<3,serieId:e.uid,...e}))).map((e,t)=>({...e,isAbsoluteFirst:t%P.value.size===0}))),q=d(()=>{let e=[];for(let t=0;t<P.value.size;t+=1)for(let n=0;n<P.value.size;n+=1)e.push({isStartOfLine:n===0,position:P.value.vertical?t:n,x:(P.value.vertical?t:n)*(H.value+P.value.spaceBetween),y:(P.value.vertical?n:t)*(U.value+P.value.spaceBetween)+V.value.top});return e}),J=b([]),zn=b(!1),Bn=b(Object.create(null)),Vn=b(Object.create(null)),Y=b(0);function Hn(e,t){W.value=W.value.map(n=>n.uid===e?{...n,values:[t]}:n)}function Un(e,t){let n=t.find(t=>t.uid===e);return n?(n.values||[]).reduce((e,t)=>e+t,0):0}function Wn(e){let t=!1;Bn.value[e]&&(cancelAnimationFrame(Bn.value[e]),delete Bn.value[e],t=!0),Vn.value[e]&&(cancelAnimationFrame(Vn.value[e]),delete Vn.value[e],t=!0),t&&(Y.value=Math.max(0,Y.value-1),zn.value=Y.value>0)}function Gn({seriesId:e,fromValue:t,toValue:n,mode:r}){Wn(e),Y.value+=1,zn.value=!0;let i=t;return new Promise(a=>{function o(){if(r===`increase`){if(i>=n){Hn(e,n),--Y.value,Y.value<=0&&(zn.value=!1),delete Bn.value[e],a();return}i+=n*.025,i>n&&(i=n),Hn(e,i),Bn.value[e]=requestAnimationFrame(o)}else{if(i<=t/100){Hn(e,0),--Y.value,Y.value<=0&&(zn.value=!1),delete Vn.value[e],a();return}i/=1.15,Hn(e,i),Vn.value[e]=requestAnimationFrame(o)}}o()})}function Kn(){W.value=Mn.value;let e=J.value.length>0;if(!k.value.useAnimation){e?J.value=[]:J.value=X.value.map(e=>e.uid);return}e?[...J.value].forEach(e=>{qn(e,!0)}):X.value.map(e=>e.uid).forEach(e=>{qn(e,!0)})}function qn(e,t=!1){if(An.value&&!t)return;let n=t||J.value.length<X.value.length-1&&X.value.length>1;if(!k.value.useAnimation){J.value.includes(e)?J.value=J.value.filter(t=>t!==e):n&&J.value.push(e);return}let r=Un(e,Mn.value),i=Un(e,W.value);if(i!==0||r!==0){if(J.value.includes(e)){if(J.value=J.value.filter(t=>t!==e),Bt.value){Wn(e),Hn(e,r),or(`selectLegend`,G.value.map(e=>({name:e.name,color:e.color,value:e.value,proportion:e.proportion})));return}Gn({seriesId:e,fromValue:i,toValue:r,mode:`increase`}).then(()=>{or(`selectLegend`,G.value.map(e=>({name:e.name,color:e.color,value:e.value,proportion:e.proportion})))});return}if(n){if(Bt.value){Wn(e),J.value.includes(e)||J.value.push(e),Hn(e,0),or(`selectLegend`,G.value.map(e=>({name:e.name,color:e.color,value:e.value,proportion:e.proportion})));return}Gn({seriesId:e,fromValue:i,toValue:0,mode:`decrease`}).then(()=>{J.value.includes(e)||J.value.push(e),Hn(e,0),or(`selectLegend`,G.value.map(e=>({name:e.name,color:e.color,value:e.value,proportion:e.proportion})))})}}}function Jn(e){return In.value.length?In.value.find(t=>t.name===e)||(yn.value&&console.warn(`VueUiWaffle - Series name not found "${e}"`),null):(yn.value&&console.warn(`VueUiWaffle - There are no series to show.`),null)}function Yn(e){let t=Jn(e);t!==null&&J.value.includes(t.uid)&&qn(t.uid)}function Xn(e){let t=Jn(e);t!==null&&(J.value.includes(t.uid)||qn(t.uid))}function Zn({val:e,percentage:t,showVal:n,showPercentage:r,config:i}){return Le({config:i,val:e,percentage:t,showVal:n,showPercentage:r})}let X=d(()=>W.value.map((e,t)=>{let n=(e.values||[]).reduce((e,t)=>e+t,0),r=n/W.value.map(e=>(e.values||[]).reduce((e,t)=>e+t,0)).reduce((e,t)=>e+t,0);return{name:e.name,color:e.color||En[t]||l[t]||l[t%l.length],value:n,proportion:r,uid:e.uid,shape:`square`}}).map((e,t)=>{let n=Zn({val:se(F.value.labels.dataLabels.formatter,e.value,s({p:F.value.labels.dataLabels.prefix,v:e.value,s:F.value.labels.dataLabels.suffix,r:M.value.roundingValue}),{datapoint:e,index:t}),percentage:isNaN(e.value/Z.value)?`-`:s({v:e.value/Z.value*100,s:`%`,r:M.value.roundingPercentage}),showVal:M.value.showValue,showPercentage:M.value.showPercentage,config:M.value});return{...e,opacity:J.value.includes(e.uid)?.5:1,segregate:()=>qn(e.uid),isSegregated:J.value.includes(e.uid),display:`${e.name}${M.value.showPercentage||M.value.showValue?`: `:``}${n}`}})),Qn=d(()=>({cy:`waffle-div-legend`,backgroundColor:M.value.backgroundColor,color:M.value.color,fontSize:M.value.fontSize,paddingBottom:12,fontWeight:M.value.bold?`bold`:``})),Z=d(()=>G.value.map(e=>e.value).reduce((e,t)=>e+t,0)),$n=b(null),er=b(null),Q=d(()=>{let e=/* @__PURE__ */ new Map;return K.value.forEach((t,n)=>{e.has(t.serieIndex)?e.get(t.serieIndex).rectIndexes.push(n):e.set(t.serieIndex,{serieIndex:t.serieIndex,absoluteIndex:t.absoluteIndex,serieId:t.serieId,name:t.name,color:t.color,value:t.value,proportion:t.proportion,rectIndexes:[n]})}),Array.from(e.values()).sort((e,t)=>e.serieIndex-t.serieIndex)});function tr(e){return Q.value.find(t=>t.serieIndex===e)||null}function nr(e){let t=tr(e);return!t||!t.rectIndexes.length?null:t.rectIndexes[0]}function rr(e){let t=K.value[e];k.value.events.datapointClick&&k.value.events.datapointClick({datapoint:t,seriesIndex:t.serieIndex})}function ir(e){let t=K.value[e];k.value.events.datapointLeave&&k.value.events.datapointLeave({datapoint:t,seriesIndex:t.serieIndex}),er.value=null,Ut.value=!1,D.value=null,O.value=null,an.value=`pointer`}function ar(e,t=`pointer`){if(J.value.length===T.dataset.length)return;let n=K.value[e];if(!n)return;an.value=t,O.value=n.serieIndex,$n.value={datapoint:n,seriesIndex:n.absoluteIndex,series:W.value,config:k.value},k.value.events.datapointEnter&&er.value!==n.serieIndex&&k.value.events.datapointEnter({datapoint:n,seriesIndex:n.serieIndex}),er.value=n.serieIndex,Ut.value=!0,D.value=n.serieIndex;let r=j.value.customFormat;if(c(r)&&de(()=>r({seriesIndex:n.absoluteIndex,datapoint:n,series:W.value,config:k.value})))Wt.value=r({seriesIndex:n.absoluteIndex,datapoint:n,series:W.value,config:k.value});else{let e=``;e+=`<div style="width:100%;text-align:center;border-bottom:1px solid ${j.value.borderColor};padding-bottom:6px;margin-bottom:3px;">${n.name}</div>`,e+=`<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 60 60" height="14" width="14"><rect x="0" y="0" height="60" width="60" stroke="none" rx="1" fill="${n.color}" />${Vt.pattern?`<rect x="0" y="0" height="60" width="60" stroke="none" rx="1" stroke="none" fill="url(#pattern_${E.value}_${n.absoluteIndex})"/>`:``}</svg>`,e+=`<b>${Zn({config:j.value,showVal:j.value.showValue,showPercentage:j.value.showPercentage,val:`<span>${se(F.value.labels.dataLabels.formatter,n.value,s({p:F.value.labels.dataLabels.prefix,v:n.value,s:F.value.labels.dataLabels.suffix,r:j.value.roundingValue}),{datapoint:n,seriesIndex:n.absoluteIndex,series:W.value})}</span>`,percentage:`<span>${s({v:An.value?1/un.value.length*100:n.value/Z.value*100,s:`%`,r:j.value.roundingPercentage})}</span>`})}</b></div>`,Wt.value=e}}let or=rt,$=d(()=>({head:G.value.map(e=>({name:e.name,color:e.color})),body:G.value.map(e=>e.value)}));function sr(e){return k.value.useBlurOnHover&&![null,void 0].includes(D.value)&&D.value!==e?`url(#blur_${E.value})`:``}function cr(e){return[null,void 0].includes(D.value)||D.value===e?{opacity:1}:{opacity:N.value.selection.unselectedOpacity}}function lr(e){return e.length<=3?e:e.filter((t,n)=>{let r=e[(n-1+e.length)%e.length],i=e[(n+1)%e.length],a=r.x===t.x&&t.x===i.x,o=r.y===t.y&&t.y===i.y;return!a&&!o})}function ur(e){if(!e.length)return[];let t=new Set(e.map(({row:e,col:t})=>`${e}:${t}`)),n=[],r=/* @__PURE__ */ new Set,i=[[-1,0],[0,1],[1,0],[0,-1]];e.forEach(e=>{let a=`${e.row}:${e.col}`;if(r.has(a))return;let o=[],s=[e];for(r.add(a);s.length;){let e=s.shift();o.push(e),i.forEach(([n,i])=>{let a=e.row+n,o=e.col+i,ee=`${a}:${o}`;t.has(ee)&&!r.has(ee)&&(r.add(ee),s.push({row:a,col:o}))})}n.push(o)});let a=[];return n.forEach(e=>{let t=new Set(e.map(({row:e,col:t})=>`${e}:${t}`)),n=[];e.forEach(({row:e,col:r})=>{t.has(`${e-1}:${r}`)||n.push({start:{x:r,y:e},end:{x:r+1,y:e}}),t.has(`${e}:${r+1}`)||n.push({start:{x:r+1,y:e},end:{x:r+1,y:e+1}}),t.has(`${e+1}:${r}`)||n.push({start:{x:r+1,y:e+1},end:{x:r,y:e+1}}),t.has(`${e}:${r-1}`)||n.push({start:{x:r,y:e+1},end:{x:r,y:e}})});let r=/* @__PURE__ */ new Map,i=e=>`${e.start.x}:${e.start.y}>${e.end.x}:${e.end.y}`,o=e=>`${e.x}:${e.y}`,s=new Set(n.map(i));for(n.forEach(e=>{let t=o(e.start);r.has(t)||r.set(t,[]),r.get(t).push(e)});s.size;){let e=s.values().next().value,t=n.find(t=>i(t)===e),ee=t.start,c=[ee],l=t;for(;l;){s.delete(i(l));let e=l.end;if(o(e)===o(ee))break;c.push(e),l=(r.get(o(e))||[]).find(e=>s.has(i(e)))}c.length>=4&&a.push(lr(c))}}),a}function dr(e){let t=P.value.size,n=P.value.vertical,r=[];return K.value.forEach((i,a)=>{if(i.serieIndex!==e)return;let o=Math.floor(a/t),s=a%t;r.push({row:n?s:o,col:n?o:s})}),r}function fr(e){let t=Dn.value,n=On.value;return ur(dr(e)).map(e=>e.map(({x:e,y:r})=>({x:e*t,y:V.value.top+r*n})))}function pr(e){return e.map(({x:e,y:t})=>`${e},${t}`).join(` `)}function mr(e){return e.map(e=>{if(!e.length)return``;let[t,...n]=e,r=n.map(({x:e,y:t})=>`L ${e} ${t}`).join(` `);return`M ${t.x} ${t.y} ${r} Z`}).filter(Boolean).join(` `)}let hr=d(()=>!N.value.selection?.wrap?.show||[null,void 0].includes(D.value)?[]:fr(D.value).map(pr)),gr=d(()=>{if(!N.value.merged)return[];let e=/* @__PURE__ */ new Map;return K.value.forEach((t,n)=>{e.has(t.serieIndex)||e.set(t.serieIndex,{serieIndex:t.serieIndex,absoluteIndex:t.absoluteIndex,color:t.color,gradientIndex:n,rectIndex:n})}),Array.from(e.values()).map(e=>({...e,d:mr(fr(e.serieIndex))})).filter(e=>e.d)});function _r(e,t){return F.value.labels.captions.show?K.value.length&&!zn.value&&!P.value.vertical&&(K.value[e].isFirst&&t.position<P.value.size-2||K.value[e].isAbsoluteFirst&&e%P.value.size===0&&K.value[e].absoluteStartIndex):!1}function vr(e,t=null){let n=se(F.value.labels.dataLabels.formatter,K.value[e].value,s({p:F.value.labels.dataLabels.prefix,v:K.value[e].value,s:F.value.labels.dataLabels.suffix,r:F.value.labels.captions.roundingValue}),{datapoint:K.value[e],position:t}),r=s({v:K.value[e].proportion*100,s:`%`,r:F.value.labels.captions.roundingPercentage}),i=(F.value.labels.captions.serieNameAbbreviation?le({source:K.value[e].name,length:F.value.labels.captions.serieNameMaxAbbreviationSize}):K.value[e].name)+(F.value.labels.captions.showPercentage||F.value.labels.captions.showValue?`:`:``);return`${F.value.labels.captions.showSerieName?i:``} ${Zn({val:n,percentage:r,showVal:F.value.labels.captions.showValue,showPercentage:F.value.labels.captions.showPercentage,config:F.value.labels.dataLabels})}`}function yr(e=null){qe(()=>{let t=$.value.head.map((e,t)=>[[e.name],[$.value.body[t]],[isNaN($.value.body[t]/Z.value)?`-`:$.value.body[t]/Z.value*100]]),n=[[I.value.title.text],[I.value.title.subtitle.text],[[``],[`val`],[`%`]]].concat(t),r=ee(n);e?e(r):ue({csvContent:r,title:I.value.title.text||`vue-ui-waffle`})})}let br=d(()=>({head:[`__SUM__`,se(F.value.labels.dataLabels.formatter,Z.value,s({p:F.value.labels.dataLabels.prefix,v:Z.value,s:F.value.labels.dataLabels.suffix,r:k.value.table.td.roundingValue})),`100%`],body:$.value.head.map((e,t)=>[{color:e.color,name:e.name},se(F.value.labels.dataLabels.formatter,$.value.body[t],s({p:F.value.labels.dataLabels.prefix,v:$.value.body[t],s:F.value.labels.dataLabels.suffix,r:k.value.table.td.roundingValue})),isNaN($.value.body[t]/Z.value)?`-`:s({v:$.value.body[t]/Z.value*100,s:`%`,r:k.value.table.td.roundingPercentage})]),config:{th:{backgroundColor:k.value.table.th.backgroundColor,color:k.value.table.th.color,outline:k.value.table.th.outline},td:{backgroundColor:k.value.table.td.backgroundColor,color:k.value.table.td.color,outline:k.value.table.td.outline},shape:`square`,breakpoint:k.value.table.responsiveBreakpoint},colNames:[k.value.table.columnNames.series,k.value.table.columnNames.value,k.value.table.columnNames.percentage]})),xr=b(!1);function Sr(e){xr.value=e,Gt.value+=1}function Cr(){z.value.showTable=!z.value.showTable}function wr(){z.value.showTooltip=!z.value.showTooltip}let Tr=b(!1);function Er(){Tr.value=!Tr.value}let Dr=Ie(Kt,()=>I.value.title.text),Or=d(()=>n({config:k,style:I,mutableConfig:z,dialog:Rt,accordion:Pt,isFullscreen:xr,parent:Kt,maxWidth:500,isCursorPointer:sn}));nt(()=>z.value.showTable,e=>t(e,k,tn));function kr(){z.value.showTable=!1,nn.value&&nn.value.setTableIconState(!1)}let Ar=d(()=>X.value.map(e=>({...e,name:e.display}))),jr=d(()=>I.value.backgroundColor),Mr=d(()=>I.value.title),{isCallbackImaging:Nr,isCallbackSvg:Pr,generateSvg:Fr,onGenerateImage:Ir}=Ce({svg:hn,title:Mr,legend:M,legendItems:Ar,backgroundColor:jr,getSvgCallback:()=>k.value.userOptions.callbacks.svg,generateImage:wn});async function Lr(){if(or(`copyAlt`,{config:k.value,dataset:In.value}),!k.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(k.value.userOptions.callbacks.altCopy({config:k.value,dataset:In.value}))}function Rr(){O.value=null,on.value=!0}function zr(){O.value=null,an.value=`pointer`,Ut.value=!1,D.value=null,er.value=null,on.value=!1}function Br(e){if(!hn.value||Tr.value||document.activeElement!==hn.value||!Q.value.length||J.value.length===T.dataset.length)return;let t=[`ArrowLeft`,`ArrowUp`].includes(e.key),n=[`ArrowRight`,`ArrowDown`].includes(e.key),r=e.key===`Enter`||e.key===` `,i=e.key===`Escape`;if(!t&&!n&&!r&&!i)return;if(e.preventDefault(),e.stopPropagation(),i){O.value=null,an.value=`pointer`,Ut.value=!1,D.value=null,er.value=null;return}if(r){if(O.value===null)return;let e=nr(O.value);if(e===null)return;rr(e);return}let a=Q.value.findIndex(e=>e.serieIndex===O.value),o=null;if(o=a===-1?n?Q.value[0]:Q.value[Q.value.length-1]:n?Q.value[(a+1)%Q.value.length]:Q.value[(a-1+Q.value.length)%Q.value.length],!o)return;let s=nr(o.serieIndex);s!==null&&(Vr(o.serieIndex),ar(s,`keyboard`))}function Vr(e){if(!Number.isFinite(e)||!hn.value)return;let t=tr(e);if(!t||!t.rectIndexes.length)return;let n=t.rectIndexes.map(e=>{let t=q.value[e];return t?{x:t.x+P.value.spaceBetween/2+Dn.value/2,y:t.y+P.value.spaceBetween/2+On.value/2}:null}).filter(Boolean);if(!n.length)return;let r=Math.min(...n.map(e=>e.x)),i=Math.max(...n.map(e=>e.x)),a=Math.min(...n.map(e=>e.y)),o=Math.max(...n.map(e=>e.y)),s=(r+i)/2,ee=(a+o)/2,c=hn.value.getBoundingClientRect();rn.value={x:c.left+s/B.value.width*c.width,y:c.top+ee/B.value.height*c.height}}let Hr=d(()=>({headers:br.value?.colNames??[],rows:br.value?.body??[]}));return De({getData:Ln,getImage:Dr,generatePdf:Cn,generateCsv:yr,generateImage:wn,generateSvg:Fr,hideSeries:Xn,showSeries:Yn,toggleTable:Cr,toggleTooltip:wr,toggleAnnotator:Er,toggleFullscreen:Sr,copyAlt:Lr}),(e,t)=>(y(),m(`div`,{class:_(`vue-data-ui-component vue-ui-waffle ${xr.value?`vue-data-ui-wrapper-fullscreen`:``}`),ref_key:`waffleChart`,ref:Kt,id:`vue-ui-waffle_${E.value}`,style:v(`font-family:${k.value.style.fontFamily};width:100%; text-align:center;background:${I.value.backgroundColor};${k.value.responsive?`height: 100%`:``}`),onMouseenter:t[2]||=()=>C(pn)(!0),onMouseleave:t[3]||=()=>C(pn)(!1)},[h(`div`,{id:`chart-instructions-${E.value}`,class:`sr-only`},[h(`p`,null,$e(k.value.a11y.translations.keyboardNavigation),1)],8,at),Hr.value?.rows?.length?(y(),f(Me,{key:0,uid:E.value,head:Hr.value.headers,body:Hr.value.rows,notice:k.value.a11y.translations.tableAvailable,caption:k.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):p(``,!0),A.value.buttons.annotator?(y(),f(C(It),{key:1,svgRef:C(hn),backgroundColor:I.value.backgroundColor,color:I.value.color,active:Tr.value,isCursorPointer:sn.value,palette:A.value.annotatorPalette,onClose:Er},He({_:2},[x(C(i),t=>({name:t,fn:w(n=>[S(e.$slots,t,Je(Ge(C(r)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):p(``,!0),Tn.value?(y(),m(`div`,{key:2,ref_key:`noTitle`,ref:Xt,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):p(``,!0),I.value.title.text?(y(),m(`div`,{key:3,ref_key:`chartTitle`,ref:qt,style:`width:100%;background:transparent;padding-bottom:12px`},[(y(),f(Te,{key:`title_${Zt.value}`,config:{title:{cy:`waffle-title`,...I.value.title},subtitle:{cy:`waffle-subtitle`,...I.value.title.subtitle}}},null,8,[`config`]))],512)):p(``,!0),h(`div`,{id:`legend-top-${E.value}`},null,8,ot),A.value.show&&Ht.value&&(C(mn)||C(fn))?(y(),f(C(Ft),{ref_key:`userOptionsRef`,ref:nn,key:`user_options_${Gt.value}`,backgroundColor:I.value.backgroundColor,color:I.value.color,isPrinting:C(xn),isImaging:C(Sn),uid:E.value,hasTooltip:A.value.buttons.tooltip&&j.value.show,hasPdf:A.value.buttons.pdf,hasImg:A.value.buttons.img,hasSvg:A.value.buttons.svg,hasXls:A.value.buttons.csv,hasTable:A.value.buttons.table,hasFullscreen:A.value.buttons.fullscreen,hasAltCopy:A.value.buttons.altCopy,isFullscreen:xr.value,isTooltip:z.value.showTooltip,titles:{...A.value.buttonTitles},chartElement:Kt.value,position:A.value.position,hasAnnotator:A.value.buttons.annotator,isAnnotation:Tr.value,callbacks:A.value.callbacks,printScale:A.value.print.scale,tableDialog:k.value.table.useDialog,isCursorPointer:sn.value,onToggleFullscreen:Sr,onGeneratePdf:C(Cn),onGenerateCsv:yr,onGenerateImage:C(Ir),onGenerateSvg:C(Fr),onToggleTable:Cr,onToggleTooltip:wr,onToggleAnnotator:Er,onCopyAlt:Lr,style:v({visibility:C(mn)?C(fn)?`visible`:`hidden`:`visible`})},He({_:2},[x(C(a)(e.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:w(n=>[S(e.$slots,t,Je(Ge(C(o)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):p(``,!0),h(`div`,st,[(y(),m(`svg`,{ref_key:`svgRef`,ref:hn,xmlns:C(pe),"aria-describedby":`chart-instructions-${E.value}`,class:_({"vue-data-ui-fullscreen--on":xr.value,"vue-data-ui-fulscreen--off":!xr.value,"vue-data-ui-no-transition":!C(L)}),tabindex:`0`,viewBox:`0 0 ${B.value.width<=0?10:B.value.width} ${B.value.height<=0?10:B.value.height}`,style:v(`max-width:100%;overflow:visible;background:transparent;color:${I.value.color}`),onFocus:Rr,onBlur:zr,onKeydown:Br},[We(C(Lt)),h(`defs`,null,[(y(!0),m(u,null,x(K.value,(e,t)=>(y(),f(Ae,{t:`radial`,cx:`50%`,cy:`50%`,r:`50%`,fx:`50%`,fy:`50%`,id:`gradient_${E.value}_${t}`,key:`gradient_${E.value}_${t}`,stops:[[`0%`,C(te)(C(ie)(e.color,.05),100-N.value.gradientIntensity),1],[`100%`,e.color,1]]},null,8,[`id`,`stops`]))),128))]),h(`defs`,null,[h(`filter`,{id:`blur_${E.value}`,x:`-50%`,y:`-50%`,width:`200%`,height:`200%`},[...t[4]||=[h(`feGaussianBlur`,{in:`SourceGraphic`,stdDeviation:2},null,-1),h(`feColorMatrix`,{type:`saturate`,values:`0`},null,-1)]],8,lt)]),k.value.useCustomCells&&K.value.length&&e.$slots.cell?(y(!0),m(u,{key:0},x(q.value,(t,n)=>(y(),m(`foreignObject`,{x:t.x,y:t.y,height:U.value<=0?1e-4:U.value,width:H.value<=0?1e-4:H.value,class:`vue-ui-waffle-custom-cell-foreignObject`},[S(e.$slots,`cell`,Ke({ref_for:!0},{cell:{...t,color:K.value[n].color,height:Math.max(0,U.value),width:Math.max(0,H.value),...K.value[n]},isSelected:[null,void 0].includes(D.value)?!0:K.value[n].serieIndex===D.value}),void 0,!0)],8,ut))),256)):p(``,!0),!K.value.length&&!k.value.useCustomCells?(y(),m(`rect`,{key:1,x:12,y:12,height:V.value.height-24,width:V.value.width-24,rx:3,fill:`none`,stroke:`black`},null,8,dt)):K.value.length&&!k.value.useCustomCells?(y(),m(u,{key:2},[e.$slots.pattern?(y(),m(`g`,ft,[(y(!0),m(u,null,x(Mn.value,t=>(y(),m(`defs`,null,[S(e.$slots,`pattern`,Ke({ref_for:!0},{seriesIndex:t.absoluteIndex,patternId:`pattern_${E.value}_${t.absoluteIndex}`}),void 0,!0)]))),256))])):p(``,!0),N.value.merged?(y(),m(u,{key:1},[(y(!0),m(u,null,x(gr.value,e=>(y(),m(`path`,{key:`merged-underlayer-${e.serieIndex}`,d:e.d,fill:`white`,"fill-rule":`evenodd`,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,"stroke-linejoin":`round`,filter:sr(e.serieIndex),style:v(cr(e.serieIndex)),class:_({"vue-data-ui-transition":C(L)})},null,14,pt))),128)),(y(!0),m(u,null,x(gr.value,e=>(y(),m(`path`,{key:`merged-serie-${e.serieIndex}`,d:e.d,fill:N.value.useGradient&&N.value.gradientIntensity>0?`url(#gradient_${E.value}_${e.gradientIndex})`:e.color,"fill-rule":`evenodd`,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,"stroke-linejoin":`round`,filter:sr(e.serieIndex),style:v(cr(e.serieIndex)),class:_({"vue-data-ui-transition":C(L)})},null,14,mt))),128)),e.$slots.pattern?(y(),m(`g`,ht,[(y(!0),m(u,null,x(gr.value,e=>(y(),m(`path`,{key:`merged-pattern-${e.serieIndex}`,d:e.d,fill:`url(#pattern_${E.value}_${e.absoluteIndex})`,"fill-rule":`evenodd`,stroke:`none`,filter:sr(e.serieIndex),style:v(cr(e.serieIndex)),class:_({"vue-data-ui-transition":C(L)})},null,14,gt))),128))])):p(``,!0)],64)):(y(),m(u,{key:2},[(y(!0),m(u,null,x(q.value,(e,t)=>(y(),m(`rect`,{rx:N.value.rounded?N.value.rounding:0,x:e.x+P.value.spaceBetween/2,y:e.y+P.value.spaceBetween/2,height:U.value<=0?1e-4:U.value,width:H.value<=0?1e-4:H.value,fill:`white`,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,filter:sr(K.value[t].serieIndex),style:v(cr(K.value[t].serieIndex)),class:_({"vue-data-ui-transition":C(L)})},null,14,_t))),256)),(y(!0),m(u,null,x(q.value,(e,t)=>(y(),m(`rect`,{rx:N.value.rounded?N.value.rounding:0,x:e.x+P.value.spaceBetween/2,y:e.y+P.value.spaceBetween/2,height:U.value<=0?1e-4:U.value,width:H.value<=0?1e-4:H.value,fill:N.value.useGradient&&N.value.gradientIntensity>0?`url(#gradient_${E.value}_${t})`:K.value[t].color,stroke:N.value.stroke,"stroke-width":N.value.strokeWidth,filter:sr(K.value[t].serieIndex),style:v(cr(K.value[t].serieIndex)),class:_({"vue-data-ui-transition":C(L)})},null,14,vt))),256)),e.$slots.pattern?(y(),m(`g`,yt,[(y(!0),m(u,null,x(q.value,(e,t)=>(y(),m(`rect`,{rx:N.value.rounded?N.value.rounding:0,x:e.x+P.value.spaceBetween/2,y:e.y+P.value.spaceBetween/2,height:U.value<=0?1e-4:U.value,width:H.value<=0?1e-4:H.value,fill:`url(#pattern_${E.value}_${K.value[t].absoluteIndex})`,stroke:`none`,filter:sr(K.value[t].serieIndex),style:v(cr(K.value[t].serieIndex)),class:_({"vue-data-ui-transition":C(L)})},null,14,bt))),256))])):p(``,!0)],64))],64)):p(``,!0),e.$slots.cellSvg?(y(!0),m(u,{key:3},x(q.value,(t,n)=>(y(),m(`g`,null,[S(e.$slots,`cellSvg`,Ke({ref_for:!0},{cell:{...t,color:K.value[n].color,height:Math.max(0,U.value),width:Math.max(0,H.value),...K.value[n]},isSelected:[null,void 0].includes(D.value)?!0:K.value[n].serieIndex===D.value}),void 0,!0)]))),256)):p(``,!0),(y(!0),m(u,null,x(hr.value,(e,t)=>(y(),m(`polygon`,{key:`selected-series-wrap-${t}`,points:e,fill:`none`,stroke:N.value.selection.wrap.stroke,"stroke-width":N.value.selection.wrap.strokeWidth,"stroke-linejoin":N.value.selection.wrap.strokeLinejoin,"pointer-events":`none`},null,8,xt))),128)),(y(!0),m(u,null,x(q.value,(e,t)=>(y(),m(u,null,[_r(t,e)?(y(),m(`text`,{key:`datalabel_${t}`,textContent:$e(vr(t,e)),x:e.x+F.value.labels.captions.offsetX+P.value.spaceBetween/2+6,y:e.y+F.value.labels.captions.offsetY+P.value.spaceBetween/2+On.value/2+F.value.labels.captions.fontSize/3,"font-size":F.value.labels.captions.fontSize,fill:C(fe)(K.value[t].color),filter:sr(K.value[t].serieIndex),class:_({"vue-data-ui-transition":C(L)})},null,10,St)):p(``,!0)],64))),256)),N.value.merged&&!k.value.useCustomCells?(y(!0),m(u,{key:4},x(gr.value,e=>(y(),m(`path`,{key:`tooltip-trap-${e.serieIndex}`,d:e.d,fill:`transparent`,"fill-rule":`evenodd`,stroke:`none`,"pointer-events":`fill`,onMouseover:t=>ar(e.rectIndex),onMouseleave:t=>ir(e.rectIndex),onClick:t=>rr(e.rectIndex)},null,40,Ct))),128)):(y(!0),m(u,{key:5},x(q.value,(e,t)=>(y(),m(`rect`,{key:`tooltip-trap-${t}`,x:e.x+P.value.spaceBetween/2,y:e.y+P.value.spaceBetween/2,height:On.value,width:Dn.value,fill:`transparent`,stroke:`none`,onMouseover:e=>ar(t),onMouseleave:e=>ir(t),onClick:e=>rr(t)},null,40,wt))),128)),S(e.$slots,`svg`,{svg:{...B.value,isPrintingImg:C(xn)||C(Sn)||C(Nr),isPrintingSvg:C(Pr)}},void 0,!0)],46,ct)),e.$slots.hint?(y(),m(`div`,Tt,[S(e.$slots,`hint`,Je(Ge({hint:k.value.a11y.translations.keyboardNavigation,isVisible:on.value})),void 0,!0)])):p(``,!0)]),e.$slots.watermark?(y(),m(`div`,Et,[S(e.$slots,`watermark`,Je(Ge({isPrinting:C(xn)||C(Sn)||C(Nr)||C(Pr)})),void 0,!0)])):p(``,!0),h(`div`,{id:`legend-bottom-${E.value}`},null,8,Dt),en.value&&(M.value.show||e.$slots.legend)?(y(),f(Ve,{key:6,to:M.value.position===`top`?`#legend-top-${E.value}`:`#legend-bottom-${E.value}`},[h(`div`,{ref_key:`chartLegend`,ref:Jt},[S(e.$slots,`legend`,{legend:X.value},()=>[M.value.show?(y(),f(Re,{key:`legend_${$t.value}`,legendSet:X.value,config:Qn.value,isCursorPointer:sn.value,onClickMarker:t[0]||=({legend:e})=>qn(e.uid)},He({item:w(({legend:e})=>[h(`div`,{onClick:t=>e.segregate(),style:v(`opacity:${J.value.includes(e.uid)?.5:1}`)},$e(e.display),13,Ot)]),legendToggle:w(()=>[X.value.length>2&&M.value.selectAllToggle.show&&!C(ln)?(y(),f(je,{key:0,backgroundColor:M.value.selectAllToggle.backgroundColor,color:M.value.selectAllToggle.color,fontSize:M.value.fontSize,checked:J.value.length>0,isCursorPointer:sn.value,onToggle:Kn},null,8,[`backgroundColor`,`color`,`fontSize`,`checked`,`isCursorPointer`])):p(``,!0)]),_:2},[e.$slots.pattern?{name:`legend-pattern`,fn:w(({legend:e,index:t})=>[We(Ee,{shape:e.shape,radius:30,stroke:`none`,plot:{x:30,y:30},fill:`url(#pattern_${E.value}_${t})`},null,8,[`shape`,`fill`])]),key:`0`}:void 0]),1032,[`legendSet`,`config`,`isCursorPointer`])):p(``,!0)],!0)],512)],8,[`to`])):p(``,!0),e.$slots.source?(y(),m(`div`,{key:7,ref_key:`source`,ref:Yt,dir:`auto`},[S(e.$slots,`source`,{},void 0,!0)],512)):p(``,!0),We(C(jt),{teleportTo:j.value.teleportTo,show:z.value.showTooltip&&Ut.value&&J.value.length<T.dataset.length,backgroundColor:j.value.backgroundColor,color:j.value.color,borderRadius:j.value.borderRadius,borderColor:j.value.borderColor,borderWidth:j.value.borderWidth,backgroundOpacity:j.value.backgroundOpacity,position:j.value.position,offsetX:j.value.offsetX,offsetY:j.value.offsetY,parent:Kt.value,content:Wt.value,isCustom:j.value.customFormat&&typeof j.value.customFormat==`function`,fontSize:j.value.fontSize,isFullscreen:xr.value,smooth:j.value.smooth,backdropFilter:j.value.backdropFilter,smoothForce:j.value.smoothForce,smoothSnapThreshold:j.value.smoothSnapThreshold,isA11yMode:an.value===`keyboard`,a11yPosition:rn.value},{"tooltip-before":w(()=>[S(e.$slots,`tooltip-before`,Je(Ge({...$n.value})),void 0,!0)]),tooltip:w(()=>[S(e.$slots,`tooltip`,Je(Ge({...$n.value})),void 0,!0)]),"tooltip-after":w(()=>[S(e.$slots,`tooltip-after`,Je(Ge({...$n.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`borderRadius`,`borderColor`,`borderWidth`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isCustom`,`fontSize`,`isFullscreen`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),Ht.value&&A.value.buttons.table?(y(),f(Ze(Or.value.component),Ke({key:8},Or.value.props,{ref_key:`tableUnit`,ref:tn,onClose:kr}),He({content:w(()=>[(y(),f(C(Nt),{key:`table_${Qt.value}`,colNames:br.value.colNames,head:br.value.head,body:br.value.body,config:br.value.config,title:k.value.table.useDialog?``:Or.value.title,withCloseButton:!k.value.table.useDialog,isCursorPointer:sn.value,onClose:kr},{th:w(({th:e})=>[e===`__SUM__`?(y(),m(`div`,kt,[We(C(Mt),{name:`sigma`,stroke:br.value.config.th.color,size:16},null,8,[`stroke`])])):(y(),m(`div`,At,$e(e),1))]),td:w(({td:e})=>[Ue($e(e.name||e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[k.value.table.useDialog?{name:`title`,fn:w(()=>[Ue($e(Or.value.title),1)]),key:`0`}:void 0,k.value.table.useDialog?{name:`actions`,fn:w(()=>[h(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[1]||=e=>yr(A.value.callbacks.csv),style:v({cursor:sn.value?`pointer`:`default`})},[We(C(Mt),{name:`fileCsv`,stroke:Or.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):p(``,!0),S(e.$slots,`skeleton`,{},()=>[C(ln)?(y(),f(Se,{key:0})):p(``,!0)],!0)],46,it))}},[[`__scopeId`,`data-v-c168fed6`]]);export{rt as n,jt as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{n as t,t as n}from"./annotationSlots-BRR85CqJ.js";import{n as r,t as i}from"./userOptionsSlots-DYuo-E5m.js";import{$ as a,Ft as o,It as s,X as c,Yt as l,at as u,b as d,i as f,in as p,t as m,zt as h}from"./lib-zDxoqrgo.js";import{n as g,t as _}from"./useHints-BH9r_0Vd.js";import{t as v}from"./useConfig-CKdzPrcf.js";import{t as y}from"./usePrinter-CnyKPIFM.js";import{n as b,t as x}from"./BaseScanner-8NdoBs7B.js";import{t as ee}from"./useChartExport-DtPNpc9M.js";import{n as te}from"./Title-BRAjxtjG.js";import{t as S}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{l as ne,t as re}from"./useResponsive-D2CPcpda.js";import{t as ie}from"./resolveChartConfig-BSo1Oe9n.js";import{t as ae}from"./useUserOptionState-CXlFnwPv.js";import{t as oe}from"./useChartAccessibility-DOMuYJfm.js";import{t as se}from"./chartImage-NwZO-elv.js";import{t as ce}from"./usePrefersMotion-XLHwega2.js";import{t as le}from"./vue_ui_wheel-C-479bvJ.js";import{Fragment as C,computed as w,createBlock as T,createCommentVNode as E,createElementBlock as D,createElementVNode as ue,createSlots as de,createVNode as fe,defineAsyncComponent as pe,guardReactiveProps as me,normalizeClass as O,normalizeProps as he,normalizeStyle as ge,onBeforeUnmount as _e,onMounted as ve,openBlock as k,ref as A,renderList as j,renderSlot as M,shallowRef as ye,toDisplayString as be,toRefs as xe,unref as N,useCssVars as Se,watch as Ce,withCtx as we}from"vue";var Te=/* @__PURE__ */ e({default:()=>Ke}),Ee=[`id`],De=[`xmlns`,`viewBox`,`aria-labelledby`,`aria-describedby`],Oe=[`id`],ke=[`id`],Ae=[`x`,`y`,`width`,`height`],je=[`d`,`stroke`,`stroke-width`],Me=[`cx`,`cy`,`r`,`stroke`,`stroke-width`],Ne={key:0},Pe=[`x1`,`y1`,`x2`,`y2`,`stroke`,`stroke-width`,`stroke-linecap`],Fe=[`x1`,`y1`,`x2`,`y2`,`stroke`,`stroke-width`,`stroke-linecap`],Ie={key:1},Le=[`d`,`fill`,`stroke`,`stroke-width`],Re=[`d`,`fill`,`stroke`,`stroke-width`],ze=[`d`,`fill`,`stroke`,`stroke-width`],Be=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-linecap`],Ve=[`d`,`fill`,`stroke`,`stroke-width`],He=[`aria-label`],Ue=[`x`,`y`,`height`],We=[`x`,`y`,`font-size`,`fill`,`font-weight`,`stroke`,`stroke-width`],Ge={key:4,class:`vue-data-ui-watermark`},Ke=/*#__PURE__*/ S({__name:`vue-ui-wheel`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`copyAlt`],setup(e,{expose:S,emit:Te}){Se(e=>({v59442ba4:zt.value,da8861d8:Bt.value,da889cb2:Vt.value}));let Ke=pe(()=>import(`./PenAndPaper-DvJJaeU2.js`).then(e=>e.t)),qe=pe(()=>import(`./UserOptions-D65t74CM.js`).then(e=>e.n)),Je=pe(()=>import(`./PackageVersion-D6pKL176.js`).then(e=>e.t)),{vue_ui_wheel:Ye}=v(),P=ce(),F=e,Xe=Te,Ze=w(()=>!!F.dataset&&Object.keys(F.dataset).length),I=A(c()),Qe=A(null),$e=A(0),L=A(null),et=A(null),tt=A(null),nt=A(null),rt=A(0),R=A(dt()),z=w(()=>R.value.userOptions),B=w(()=>R.value.style.chart.layout.wheel.ticks),V=w(()=>R.value.style.chart.layout.wheel),H=w(()=>R.value.style.chart);g({config:()=>R.value,dataset:()=>F.dataset,component:`VueUiWheel`,rules:[_.noHint]});let it=w(()=>R.value.userOptions.useCursorPointer),at=w(()=>p({defaultConfig:{userOptions:{show:!1},style:{chart:{backgroundColor:`#99999930`,animation:{use:!1},layout:{wheel:{ticks:{activeColor:`#6A6A6A80`,inactiveColor:`#CACACA80`}},innerCircle:{stroke:`#CACACA80`}}}}},userConfig:R.value.skeletonConfig??{}})),{loading:ot,FINAL_DATASET:U}=b({...xe(F),FINAL_CONFIG:R,prepareConfig:dt,skeletonDataset:F.config?.skeletonDataset??{percentage:50},skeletonConfig:p({defaultConfig:R.value,userConfig:at.value})}),{userOptionsVisible:st,setUserOptionsVisibility:ct,keepUserOptionState:lt}=ae({config:R.value}),{svgRef:ut}=oe({config:H.value.title});function dt(){return ie(F.config,Ye,le)}Ce(()=>F.config,e=>{R.value=dt(),st.value=!R.value.userOptions.showOnChartHover,yt(),rt.value+=1},{deep:!0});let{isPrinting:ft,isImaging:pt,generatePdf:mt,generateImage:ht}=y({elementId:I.value,fileName:H.value.title.text||`vue-ui-wheel`,options:R.value.userOptions.print}),gt=w(()=>R.value.userOptions.show&&!H.value.title.text),W=A({size:360,height:360,width:360}),G=A(H.value.layout.percentage.fontSize),K=w(()=>({radius:Math.min(W.value.width,W.value.height)*.9/2*V.value.radiusRatio,centerX:W.value.width/2,centerY:W.value.height/2}));function _t(e,t=1){let n=29.85;return{x:K.value.centerX+K.value.radius*Math.cos(n+e*Math.PI/180)*t,y:K.value.centerY+K.value.radius*Math.sin(n+e*Math.PI/180)*t}}let q=A(H.value.animation.use&&!P.value?0:U.value.percentage||0);Ce(()=>U.value,e=>{H.value.animation.use&&!P.value?jt(e.percentage):q.value=e.percentage||0},{deep:!0});let J=ye(null),Y=ye(null);ve(()=>{yt()});let vt=w(()=>R.value.debug);function yt(){if(h(F.dataset)&&u({componentName:`VueUiWheel`,type:`dataset`,debug:vt.value}),R.value.responsive){let e=ne(()=>{let{width:e,height:t}=re({chart:L.value,title:H.value.title.text?et.value:null,source:tt.value,noTitle:nt.value});requestAnimationFrame(()=>{W.value.width=e,W.value.height=t,G.value=H.value.layout.percentage.fontSize/360*Math.min(e,t)})});J.value&&(Y.value&&J.value.unobserve(Y.value),J.value.disconnect()),J.value=new ResizeObserver(e),Y.value=L.value.parentNode,J.value.observe(Y.value)}jt(U.value.percentage||0),H.value.animation.use&&!P.value||(q.value=U.value.percentage||0)}_e(()=>{J.value&&(Y.value&&J.value.unobserve(Y.value),J.value.disconnect())});function bt([e,t,n],r){let i=Math.cos(r),a=Math.sin(r);return[e,t*i-n*a,t*a+n*i]}function xt([e,t,n],r){let i=r/(r-n);return[e*i,t*i,n,i]}function St(e,t){let n=e.replace(`#`,``),r=parseInt(n.substring(0,2),16),i=parseInt(n.substring(2,4),16),a=parseInt(n.substring(4,6),16),o=1-Math.min(1,Math.max(0,B.value.shadeColorRatio3d))*t,s=Math.max(0,Math.min(255,Math.round(r*o))),c=Math.max(0,Math.min(255,Math.round(i*o))),l=Math.max(0,Math.min(255,Math.round(a*o)));return`#${s.toString(16).padStart(2,`0`)}${c.toString(16).padStart(2,`0`)}${l.toString(16).padStart(2,`0`)}`}function Ct({cx:e,cy:t,radius:n,innerRatio:r=.8,count:i=120,startDeg:a=0,axDeg:o=50,f:s=520,baseStroke:c=5,activeColor:u,inactiveColor:d,getActive:f}){let p=o*Math.PI/180,m=n,h=n*r,g=[];for(let n=0;n<i;n+=1){let r=(n/i*360+a)*Math.PI/180,o=e+m*Math.cos(r),_=t+m*Math.sin(r),v=e+h*Math.cos(r),y=t+h*Math.sin(r),b=[o-e,_-t,0],x=[v-e,y-t,0],[ee,te,S]=bt(b,p),[ne,re,ie]=bt(x,p),[ae,oe,,se]=xt([ee,te,S],s),[ce,le,,C]=xt([ne,re,ie],s),w=e+ae,T=t+oe,E=e+ce,D=t+le,ue=(Math.max(S,ie)- -m*Math.sin(p))/(2*m*Math.sin(p)||1),de=!f||f(n),fe=B.value.gradient.show?l(u,n*Q.value/Z.value*(B.value.gradient.shiftHueIntensity/100)):u,pe=St(de?fe:d,ue),me=Math.max(1.25,c*se*(Math.min(W.value.width,W.value.height)/360));g.push({i:n,x1:w,y1:T,x2:E,y2:D,stroke:me,color:pe,z:Math.max(S,ie)})}return g.sort((e,t)=>e.z-t.z),g}let wt=w(()=>{if(!R.value.layout===`3d`)return null;let e=Z.value,t=B.value.gradient.show?l(B.value.activeColor,0):B.value.activeColor,n=B.value.inactiveColor,r=B.value.strokeWidth;return Ct({cx:K.value.centerX,cy:K.value.centerY,radius:K.value.radius,innerRatio:B.value.sizeRatio,count:e,startDeg:-90,axDeg:V.value.tiltAngle3d,f:Math.min(W.value.width,W.value.height)*1.45,baseStroke:r,activeColor:t,inactiveColor:n,getActive:e=>q.value>e*Q.value})});function Tt({cx:e,cy:t,r:n,count:r=180,startDeg:i=-90,axDeg:a=50,f:o}){let s=a*Math.PI/180,c=[],l=0;for(let a=0;a<r;a+=1){let u=(a/r*360+i)*Math.PI/180,[d,f,p]=bt([n*Math.cos(u),n*Math.sin(u),0],s),[m,h,,g]=xt([d,f,p],o);l+=g,c.push([e+m,t+h])}let u=`M ${c[0][0]} ${c[0][1]}`;for(let e=1;e<c.length;e+=1)u+=` L ${c[e][0]} ${c[e][1]}`;u+=` Z`;let d=l/r;return{d:u,avgScale:d,pts:c}}let X=w(()=>{if(R.value.layout!==`3d`)return null;let e=Math.min(W.value.width,W.value.height)*1.45,t=V.value.tiltAngle3d,n=K.value.radius,{pts:r,avgScale:i}=(()=>{let r=n,i=t,{d:a,avgScale:o,pts:s}=Tt({cx:K.value.centerX,cy:K.value.centerY,r,startDeg:-90,axDeg:i,f:e});return{pts:s,avgScale:o}})(),a=1/0,o=1/0,s=-1/0,c=-1/0;for(let[e,t]of r)e<a&&(a=e),t<o&&(o=t),e>s&&(s=e),t>c&&(c=t);let l=B.value.strokeWidth/360*Math.min(W.value.width,W.value.height),u=H.value.layout.innerCircle.strokeWidth||0,d=.5*Math.max(l,u*(i||1)),f=Math.max(0,Number(B.value.depth3d)||0),p=d;return{x:a-p,y:o-f-p,w:s-a+2*p,h:c-(o-f)+2*p}});function Et(e){let t=Math.min(W.value.width,W.value.height)*1.45,{d:n,avgScale:r}=Tt({cx:K.value.centerX,cy:K.value.centerY,r:e,startDeg:-90,axDeg:V.value.tiltAngle3d,f:t}),i=(H.value.layout.innerCircle.strokeWidth||1)*r;return{d:n,stroke:H.value.layout.innerCircle.stroke,strokeWidth:i}}let Dt=w(()=>Et(Math.max(0,K.value.radius*.8*H.value.layout.innerCircle.radiusRatio)));function Ot({cx:e,cy:t,r:n,aRad:r,ax:i,f:a}){let[o,s,c]=bt([n*Math.cos(r),n*Math.sin(r),0],i),[l,u,,d]=xt([o,s,c],a);return{x:e+l,y:t+u,z:c,s:d}}function kt({cx:e,cy:t,radius:n,innerRatio:r=.8,count:i=120,startDeg:a=-87,axDeg:o=45,f:s=600,activeColor:c,inactiveColor:u,getActive:d,Y:f=0}){let p=o*Math.PI/180,m=n,h=n*r,g=2*Math.PI/i,_=[];for(let n=0;n<i;n+=1){let r=a*Math.PI/180+g*n,o=r+g*Math.min(1,B.value.spacingRatio3d),v=Ot({cx:e,cy:t+f,r:m,aRad:r,ax:p,f:s}),y=Ot({cx:e,cy:t+f,r:m,aRad:o,ax:p,f:s}),b=Ot({cx:e,cy:t+f,r:h,aRad:o,ax:p,f:s}),x=Ot({cx:e,cy:t+f,r:h,aRad:r,ax:p,f:s}),ee=(v.z+y.z+x.z+b.z)/4,te=St(!d||d(n)?B.value.gradient.show?l(B.value.activeColor,100/i*n/100*(B.value.gradient.shiftHueIntensity/100)):c:u,(()=>{let e=m*Math.sin(p)||1;return(ee- -e)/(2*e)})()),S=`M ${v.x} ${v.y} L ${y.x} ${y.y} L ${b.x} ${b.y} L ${x.x} ${x.y} Z`;_.push({i:n,d:S,fill:te,z:ee})}return _.sort((e,t)=>e.z-t.z),_}let At=w(()=>{if(R.value.layout!==`3d`)return null;let e=Z.value;return t=>kt({cx:K.value.centerX,cy:K.value.centerY,radius:K.value.radius,innerRatio:B.value.sizeRatio,count:e,startDeg:-90,axDeg:V.value.tiltAngle3d,f:Math.min(W.value.width,W.value.height)*1.45,activeColor:B.value.activeColor,inactiveColor:B.value.inactiveColor,getActive:t=>q.value>100/e*t,Y:t})});function jt(e){let t=H.value.animation.speed,n=Math.abs(e-q.value)/(t*120);function r(){q.value<e?q.value=Math.min(q.value+n,e):q.value>e&&(q.value=Math.max(q.value-n,e)),q.value!==e&&requestAnimationFrame(r)}r()}let Z=w(()=>(vt.value&&B.value.quantity<12&&console.warn(`VueUiWheel - The min number of ticks is 12`),vt.value&&B.value.quantity>200&&console.warn(`VueUiWheel - The max number of ticks is 200`),Math.max(12,Math.min(B.value.quantity,200)))),Q=w(()=>100/Z.value),Mt=w(()=>{let e=[];for(let t=0;t<Z.value;t+=1){let n=q.value>t*Q.value?B.value.activeColor:B.value.inactiveColor,{x:r,y:i}=_t(W.value.size/Z.value*t),{x:a,y:o}=_t(W.value.size/Z.value*t,B.value.sizeRatio);e.push({x1:r,y1:i,x2:a,y2:o,color:B.value.gradient.show?l(n,t*Q.value/Z.value*(B.value.gradient.shiftHueIntensity/100)):n})}return e}),Nt=w(()=>s({series:Mt.value.map(e=>({name:``,value:1,color:e.color}))},K.value.centerX,K.value.centerY,K.value.radius,K.value.radius,1.99999,2,1,360,105.25,K.value.radius*(1-B.value.sizeRatio))),Pt=A(!1);function Ft(e){Pt.value=e,$e.value+=1}let It=A(!1);function Lt(){It.value=!It.value}let Rt=se(L,()=>H.value.title.text),zt=w(()=>B.value.strokeWidth*2),Bt=w(()=>B.value.strokeWidth*2*.75),Vt=w(()=>B.value.strokeWidth),$=w(()=>Math.max(1,Math.min(20,B.value.depth3d))),Ht=w(()=>H.value.backgroundColor),Ut=w(()=>H.value.title),{isCallbackImaging:Wt,isCallbackSvg:Gt,generateSvg:Kt,onGenerateImage:qt}=ee({svg:ut,title:Ut,legend:null,legendItems:null,backgroundColor:Ht,stretchTitle:!0,getSvgCallback:()=>R.value.userOptions.callbacks.svg,generateImage:ht});async function Jt(){if(Xe(`copyAlt`,{config:R.value,dataset:U.value}),!R.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(R.value.userOptions.callbacks.altCopy({config:R.value,dataset:U.value}))}let Yt=w(()=>`${I.value}-title`),Xt=w(()=>`${I.value}-desc`),Zt=w(()=>f(H.value.layout.percentage.formatter,d(q.value),a({v:d(q.value),s:`%`,r:H.value.layout.percentage.rounding}))),Qt=w(()=>H.value.title.text||``),$t=w(()=>ot.value?`...`:`${Zt.value}`);return S({getImage:Rt,generatePdf:mt,generateImage:ht,generateSvg:Kt,toggleAnnotator:Lt,toggleFullscreen:Ft,copyAlt:Jt}),(e,a)=>(k(),D(`div`,{class:O([`vue-ui-wheel`,{"vue-data-ui-component":!0,"vue-ui-wheel-3d-wrap":R.value.layout===`3d`}]),ref_key:`wheelChart`,ref:L,id:I.value,style:ge(`font-family:${R.value.style.fontFamily};width:100%; text-align:center;background:${H.value.backgroundColor};${R.value.responsive?`height:100%`:``}`),onMouseenter:a[0]||=()=>N(ct)(!0),onMouseleave:a[1]||=()=>N(ct)(!1)},[z.value.buttons.annotator?(k(),T(N(Ke),{key:0,svgRef:N(ut),backgroundColor:H.value.backgroundColor,color:H.value.color,active:It.value,isCursorPointer:it.value,palette:z.value.annotatorPalette,onClose:Lt},de({_:2},[j(N(n),n=>({name:n,fn:we(r=>[M(e.$slots,n,he(me(N(t)(n,r))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):E(``,!0),gt.value?(k(),D(`div`,{key:1,ref_key:`noTitle`,ref:nt,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):E(``,!0),H.value.title.text?(k(),D(`div`,{key:2,ref_key:`chartTitle`,ref:et,style:`width:100%;background:transparent;padding-bottom:12px`},[(k(),T(te,{key:`title_${rt.value}`,config:{title:{cy:`wheel-title`,...H.value.title},subtitle:{cy:`wheel-subtitle`,...H.value.title.subtitle}}},null,8,[`config`]))],512)):E(``,!0),z.value.show&&Ze.value&&(N(lt)||N(st))?(k(),T(N(qe),{ref_key:`details`,ref:Qe,key:`user_options_${$e.value}`,backgroundColor:H.value.backgroundColor,color:H.value.color,isPrinting:N(ft),isImaging:N(pt),uid:I.value,hasPdf:z.value.buttons.pdf,hasImg:z.value.buttons.img,hasSvg:z.value.buttons.svg,hasFullscreen:z.value.buttons.fullscreen,hasAltCopy:z.value.buttons.altCopy,hasXls:!1,isFullscreen:Pt.value,position:z.value.position,titles:{...z.value.buttonTitles},hasAnnotator:z.value.buttons.annotator,isAnnotation:It.value,chartElement:L.value,callbacks:z.value.callbacks,printScale:z.value.print.scale,isCursorPointer:it.value,onToggleFullscreen:Ft,onGeneratePdf:N(mt),onGenerateImage:N(qt),onGenerateSvg:N(Kt),onToggleAnnotator:Lt,onCopyAlt:Jt,style:ge({visibility:N(lt)?N(st)?`visible`:`hidden`:`visible`})},de({_:2},[j(N(r)(e.$slots,`menuIcon optionPdf optionImg optionSvg optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:we(n=>[M(e.$slots,t,he(me(N(i)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasImg`,`hasSvg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`position`,`titles`,`hasAnnotator`,`isAnnotation`,`chartElement`,`callbacks`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):E(``,!0),(k(),D(`svg`,{ref_key:`svgRef`,ref:ut,xmlns:N(m),class:O({"vue-data-ui-fullscreen--on":Pt.value,"vue-data-ui-fulscreen--off":!Pt.value,"vue-ui-wheel-3d-svg":R.value.layout===`3d`}),viewBox:R.value.layout===`3d`&&!R.value.responsive?`${X.value?.x-10} ${X.value?.y??0} ${X.value?.w+20??Math.max(10,W.value.width)} ${X.value?.h??Math.max(10,W.value.height)}`:`0 0 ${Math.max(10,W.value.width)} ${Math.max(10,W.value.height)}`,style:ge(`max-width:100%;overflow:visible;background:transparent;color:${H.value.color}`),role:`img`,"aria-labelledby":Yt.value,"aria-describedby":Xt.value},[ue(`title`,{id:Yt.value},be(Qt.value),9,Oe),ue(`desc`,{id:Xt.value},be($t.value),9,ke),fe(N(Je)),e.$slots[`chart-background`]?(k(),D(`foreignObject`,{key:0,x:R.value.layout===`3d`&&!R.value.responsive?X.value?.x-10:0,y:R.value.layout===`3d`&&!R.value.responsive?X.value?.y??0:0,width:R.value.layout===`3d`&&!R.value.responsive?X.value?.w+20??Math.max(10,W.value.width):Math.max(10,W.value.width),height:R.value.layout===`3d`&&!R.value.responsive?X.value?.h??Math.max(10,W.value.height):Math.max(10,W.value.height),style:{pointerEvents:`none`}},[M(e.$slots,`chart-background`,{},void 0,!0)],8,Ae)):E(``,!0),R.value.layout===`3d`&&Dt.value?(k(),D(`path`,{key:1,class:`vue-ui-wheel-inner-circle`,d:Dt.value.d,stroke:H.value.layout.innerCircle.stroke,"stroke-width":H.value.layout.innerCircle.strokeWidth,fill:`none`},null,8,je)):H.value.layout.innerCircle.show?(k(),D(`circle`,{key:2,class:`vue-ui-wheel-inner-circle`,cx:K.value.centerX,cy:K.value.centerY,r:Math.max(0,K.value.radius*H.value.layout.innerCircle.radiusRatio*.8),stroke:H.value.layout.innerCircle.stroke,"stroke-width":H.value.layout.innerCircle.strokeWidth,fill:`none`},null,8,Me)):E(``,!0),R.value.layout===`3d`?(k(),D(C,{key:3},[B.value.type===`classic`?(k(),D(`g`,Ne,[(k(!0),D(C,null,j($.value,e=>(k(),D(`g`,null,[(k(!0),D(C,null,j(wt.value||[],t=>(k(),D(`line`,{key:t.i,x1:t.x1,y1:t.y1-e,x2:t.x2,y2:t.y2-e,stroke:N(o)(t.color,.25*e/5),"stroke-width":B.value.strokeWidth/360*Math.min(W.value.width,W.value.height),"stroke-linecap":B.value.rounded?`round`:`butt`,class:O({"vue-ui-wheel-tick":!0,"vue-ui-tick-animated":H.value.animation.use&&!N(P)&&t.i*Q.value<=q.value})},null,10,Pe))),128))]))),256)),(k(!0),D(C,null,j(wt.value||[],e=>(k(),D(`line`,{key:e.i,x1:e.x1,y1:e.y1-$.value,x2:e.x2,y2:e.y2-$.value,stroke:e.color,"stroke-width":B.value.strokeWidth/360*Math.min(W.value.width,W.value.height),"stroke-linecap":B.value.rounded?`round`:`butt`,class:O({"vue-ui-wheel-tick":!0,"vue-ui-tick-animated":H.value.animation.use&&!N(P)&&e.i*Q.value<=q.value})},null,10,Fe))),128))])):(k(),D(`g`,Ie,[(k(!0),D(C,null,j($.value,e=>(k(),D(`g`,null,[(k(!0),D(C,null,j(At.value(-e)||[],e=>(k(),D(`path`,{key:e.i,d:e.d,fill:B.value.inactiveColor,stroke:B.value.stroke,"stroke-width":B.value.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,class:`vue-ui-wheel-tick`},null,8,Le))),128)),(k(!0),D(C,null,j(At.value(-e)||[],t=>(k(),D(`path`,{key:t.i,d:t.d,fill:N(o)(t.fill,.5*e/$.value),stroke:B.value.stroke,"stroke-width":B.value.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,class:O({"vue-ui-wheel-tick":!0,"vue-ui-tick-animated-3d":H.value.animation.use&&!N(P)&&t.i*Q.value<=q.value})},null,10,Re))),128))]))),256)),ue(`g`,null,[(k(!0),D(C,null,j(At.value(-$.value)||[],e=>(k(),D(`path`,{key:e.i,d:e.d,fill:e.fill,stroke:B.value.stroke,"stroke-width":B.value.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,class:O({"vue-ui-wheel-tick":!0,"vue-ui-tick-animated-3d":H.value.animation.use&&!N(P)&&e.i*Q.value<=q.value})},null,10,ze))),128))])]))],64)):(k(),D(C,{key:4},[B.value.type===`classic`?(k(!0),D(C,{key:0},j(Mt.value,(e,t)=>(k(),D(`line`,{x1:e.x1,x2:e.x2,y1:e.y1,y2:e.y2,stroke:e.color,"stroke-width":B.value.strokeWidth/360*Math.min(W.value.width,W.value.height),"stroke-linecap":B.value.rounded?`round`:`butt`,class:O({"vue-ui-wheel-tick":!0,"vue-ui-tick-animated":H.value.animation.use&&!N(P)&&t*Q.value<=q.value})},null,10,Be))),256)):(k(!0),D(C,{key:1},j(Nt.value,(e,t)=>(k(),D(`path`,{d:e.arcSlice,fill:e.color,class:O({"vue-ui-wheel-tick":!0,"vue-ui-tick-animated":H.value.animation.use&&!N(P)&&t*Q.value<=q.value}),stroke:B.value.stroke,"stroke-width":B.value.strokeWidth},null,10,Ve))),256))],64)),H.value.layout.percentage.show?(k(),D(`g`,{key:5,role:`status`,"aria-live":`polite`,"aria-label":N(ot)?`...`:Zt.value},[N(ot)?(k(),D(`rect`,{key:0,x:K.value.centerX-40,y:K.value.centerY-G.value/2,width:80,height:G.value,fill:`#6A6A6A80`,rx:`3`},null,8,Ue)):(k(),D(`text`,{key:1,"aria-hidden":`true`,x:K.value.centerX+H.value.layout.percentage.offsetX,y:K.value.centerY+G.value/3+H.value.layout.percentage.offsetY,"font-size":G.value,fill:B.value.gradient.show?N(l)(B.value.activeColor,q.value/100*(B.value.gradient.shiftHueIntensity/100)):B.value.activeColor,"text-anchor":`middle`,"font-weight":H.value.layout.percentage.bold?`bold`:`normal`,style:{"font-variant-numeric":`tabluar-nums`},stroke:H.value.layout.percentage.stroke,"stroke-width":H.value.layout.percentage.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,"paint-order":`stroke fill`,class:O({"vue-ui-wheel-label":R.value.layout===`3d`})},be(Zt.value),11,We))],8,He)):E(``,!0),M(e.$slots,`svg`,{svg:{...W.value,isPrintingImg:N(ft)||N(pt)||N(Wt),isPrintingSvg:N(Gt)}},void 0,!0)],14,De)),e.$slots.watermark?(k(),D(`div`,Ge,[M(e.$slots,`watermark`,he(me({isPrinting:N(ft)||N(pt)||N(Wt)||N(Gt)})),void 0,!0)])):E(``,!0),e.$slots.source?(k(),D(`div`,{key:5,ref_key:`source`,ref:tt,dir:`auto`},[M(e.$slots,`source`,{},void 0,!0)],512)):E(``,!0),M(e.$slots,`skeleton`,{},()=>[N(ot)?(k(),T(x,{key:0})):E(``,!0)],!0)],46,Ee))}},[[`__scopeId`,`data-v-6336e44d`]]);export{Te as n,Ke as t};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{n as t,t as n}from"./tableIntegration-CNoJ1CIY.js";import{n as r,t as i}from"./annotationSlots-BRR85CqJ.js";import{n as a,t as o}from"./userOptionsSlots-DYuo-E5m.js";import{$ as s,D as c,Dt as l,Ht as u,S as d,X as f,Z as p,Zt as m,at as h,b as g,in as _,nt as v,t as ee,yt as te,zt as ne}from"./lib-zDxoqrgo.js";import{n as y,t as b}from"./useHints-BH9r_0Vd.js";import{t as x}from"./useConfig-CKdzPrcf.js";import{t as S}from"./usePrinter-CnyKPIFM.js";import{n as C,t as w}from"./BaseScanner-8NdoBs7B.js";import{t as re}from"./useChartExport-DtPNpc9M.js";import{n as ie}from"./Title-BRAjxtjG.js";import{t as T}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{i as E,t as ae}from"./useResponsive-D2CPcpda.js";import{t as oe}from"./A11yDataTable-DWNlWXzs.js";import{n as se}from"./resolveChartConfig-BSo1Oe9n.js";import{t as ce}from"./useUserOptionState-CXlFnwPv.js";import{t as le}from"./useChartAccessibility-DOMuYJfm.js";import{t as ue}from"./chartImage-NwZO-elv.js";import{t as de}from"./usePanZoom-BdjP5Suc.js";import{t as fe}from"./vue_ui_word_cloud-DBiJtSyL.js";import{t as pe}from"./BaseZoomControls-xq3tWD3j.js";import{Fragment as me,computed as D,createBlock as O,createCommentVNode as k,createElementBlock as A,createElementVNode as he,createSlots as ge,createTextVNode as _e,createVNode as ve,defineAsyncComponent as j,guardReactiveProps as M,mergeProps as ye,nextTick as be,normalizeClass as xe,normalizeProps as N,normalizeStyle as Se,onBeforeUnmount as Ce,onMounted as we,openBlock as P,ref as F,renderList as Te,renderSlot as I,resolveDynamicComponent as Ee,shallowRef as De,toDisplayString as Oe,toRefs as ke,unref as L,watch as Ae,withCtx as R}from"vue";var je={fast:{spiralStep:6,fallbackSpiralStep:2,spiralRadiusStep:2,fallbackSpiralRadiusStep:1,primaryAttempts:1e4,fallbackAttempts:25e3,minimumVisualPadding:2,scaleStep:.9},balanced:{spiralStep:4,fallbackSpiralStep:1,spiralRadiusStep:1.5,fallbackSpiralRadiusStep:1,primaryAttempts:2e4,fallbackAttempts:5e4,minimumVisualPadding:3,scaleStep:.92},precise:{spiralStep:2,fallbackSpiralStep:1,spiralRadiusStep:1,fallbackSpiralRadiusStep:.75,primaryAttempts:5e4,fallbackAttempts:1e5,minimumVisualPadding:4,scaleStep:.95}},Me=`fast`;function Ne(e){return je[e]||je[Me]}var Pe=/* @__PURE__ */ new Map;function Fe(e){let t=String(e),n=Pe.get(t);if(n)return n;let r=Math.PI/180,i=[],a=[];for(let t=0;t<360;t+=e){let e=t*r;i.push(Math.cos(e)),a.push(Math.sin(e))}let o={cosineArray:i,sineArray:a};return Pe.set(t,o),o}function Ie({word:e,fontSize:t,pad:n,canvas:r,ctx:i,svg:a}){let o=a.style&&a.style.bold,s=a.style&&a.style.fontFamily||`Arial, "Noto Sans Arabic", Tahoma, sans-serif`,c=`${o?`bold `:``}${t}px ${s}`,l=String(e.name||``),u=/[\u0600-\u06FF]/.test(l);i.font=c,i.direction=u?`rtl`:`ltr`,i.textAlign=`left`,i.textBaseline=`alphabetic`;let d=i.measureText(l),f=Math.ceil(Math.abs(d.actualBoundingBoxLeft||0)),p=Math.ceil(Math.abs(d.actualBoundingBoxRight||d.width)),m=Math.ceil(d.actualBoundingBoxAscent||t),h=Math.ceil(d.actualBoundingBoxDescent||t*.25),g=Math.max(0,Math.round(n||0))+Math.ceil(t*(u?.22:.12)),_=Math.max(1,f+p+g*2),v=Math.max(1,m+h+g*2);r.width=_,r.height=v,i.font=c,i.direction=u?`rtl`:`ltr`,i.textAlign=`left`,i.textBaseline=`alphabetic`,i.fillStyle=`black`;let ee=g+f,te=g+m;i.fillText(l,ee,te);let ne=i.getImageData(0,0,_,v).data,y=[],b=[],x=_,S=v,C=0,w=0,re=!1;for(let e=0;e<v;e+=1){let t=e*_*4,n=-1,r=!1;for(let i=0;i<_;i+=1)ne[t+i*4+3]>1?(y.push([i,e]),re=!0,i<x&&(x=i),i>C&&(C=i),e<S&&(S=e),e>w&&(w=e),r||(r=!0,n=i)):r&&(b.push([e,n,i-1]),r=!1,n=-1);r&&b.push([e,n,_-1])}return re||(x=0,S=0,C=0,w=0),{w:_,h:v,wordMask:y,runs:b,minX:x,minY:S,maxX:C,maxY:w}}function Le(e){let t=[];if(!e.length)return t;let n=e[0][1],r=e[0][0],i=r;for(let a=1;a<e.length;a+=1){let o=e[a][0],s=e[a][1];s===n?o===i+1?i=o:(t.push([n,r,i]),r=o,i=o):(t.push([n,r,i]),n=s,r=o,i=o)}return t.push([n,r,i]),t}function Re(e,t){return 4294967295>>>32-(t-e+1)<<e>>>0}function ze(e){return 4294967295<<e>>>0}function Be(e){return 4294967295>>>31-e>>>0}function z({maskBits:e,maskRowStride:t,maskW:n,maskH:r,wx:i,wy:a,runs:o}){for(let s=0;s<o.length;s+=1){let c=o[s][0],l=o[s][1],u=o[s][2],d=a+c;if(d<0||d>=r)return!1;let f=i+l,p=i+u;if(f<0||p>=n)return!1;let m=d*t,h=f>>>5,g=p>>>5,_=f&31,v=p&31;if(h===g){if(e[m+h]&Re(_,v))return!1}else{if(e[m+h]&ze(_))return!1;for(let t=h+1;t<g;t+=1)if(e[m+t])return!1;if(e[m+g]&Be(v))return!1}}return!0}function Ve({maskBits:e,maskRowStride:t,maskW:n,maskH:r,wx:i,wy:a,runs:o}){for(let s=0;s<o.length;s+=1){let c=o[s][0],l=o[s][1],u=o[s][2],d=a+c;if(d<0||d>=r)continue;let f=i+l,p=i+u;if(p<0||f>=n)continue;let m=d*t,h=f>>>5,g=p>>>5,_=f&31,v=p&31;if(h===g){let t=Re(_,v);e[m+h]|=t}else{{let t=ze(_);e[m+h]|=t}for(let t=h+1;t<g;t+=1)e[m+t]=4294967295;{let t=Be(v);e[m+g]|=t}}}}function He({wordMask:e,w:t,h:n,dilation:r}){let i=new Uint8Array(t*n),a=[];for(let n=0;n<e.length;n+=1){let r=e[n][0],o=e[n][1]*t+r;i[o]||(i[o]=1,a.push(o))}for(let e=0;e<a.length;e+=1){let o=a[e],s=o/t|0,c=o-s*t;for(let e=-r;e<=r;e+=1){let a=s+e;if(a<0||a>=n)continue;let o=a*t;for(let n=-r;n<=r;n+=1){if(n===0&&e===0)continue;let r=c+n;r<0||r>=t||(i[o+r]=1)}}}let o=[];for(let e=0;e<i.length;e+=1)if(i[e]){let n=e/t|0,r=e-n*t;o.push([r,n])}return o}function B(e,t){let n=[];for(let r=0;r<t;r+=1){let t=e[r];if(!t||t.length===0)continue;t.sort((e,t)=>e[0]-t[0]);let i=t[0][0],a=t[0][1];for(let e=1;e<t.length;e+=1){let o=t[e][0],s=t[e][1];o<=a+1?s>a&&(a=s):(n.push([r,i,a]),i=o,a=s)}n.push([r,i,a])}return n}function Ue({runs:e,w:t,h:n,dilation:r}){if(!e.length||r<=0)return e;let i=Array(n);for(let a=0;a<e.length;a+=1){let o=e[a],s=o[0],c=Math.max(0,o[1]-r),l=Math.min(t-1,o[2]+r),u=Math.max(0,s-r),d=Math.min(n-1,s+r);for(let e=u;e<=d;e+=1){let t=i[e];t||(t=[],i[e]=t),t.push([c,l])}}return B(i,n)}function V(e,t){let n=e.runs,r=e.w,i=e.h,a=Math.max(1,Math.round(r*t)),o=Math.max(1,Math.round(i*t)),s=Array(o),c=a,l=o,u=0,d=0,f=!1;for(let e=0;e<n.length;e+=1){let r=n[e],i=r[0],a=r[1],p=r[2],m=Math.round(i*t);if(m<0||m>=o)continue;let h=Math.round(a*t),g=Math.round((p+1)*t)-1;if(g<h)continue;let _=s[m];_||(_=[],s[m]=_),_.push([h,g]),f=!0,h<c&&(c=h),g>u&&(u=g),m<l&&(l=m),m>d&&(d=m)}if(!f)return{w:a,h:o,runs:[],minX:0,minY:0,maxX:0,maxY:0};let p=[];for(let e=0;e<o;e+=1){let t=s[e];if(!t||t.length===0)continue;t.sort((e,t)=>e[0]-t[0]);let n=t[0][0],r=t[0][1];for(let i=1;i<t.length;i+=1){let a=t[i][0],o=t[i][1];a<=r+1?o>r&&(r=o):(p.push([e,n,r]),n=a,r=o)}p.push([e,n,r])}return{w:a,h:o,runs:p,minX:c,minY:l,maxX:u,maxY:d}}var We=/* @__PURE__ */ new Map,Ge=/* @__PURE__ */ new Map;function Ke({word:e,fontSize:t,pad:n,svg:r}){let i=r.style&&r.style.bold?1:0,a=n||0;return`${e.name}::${t}::${a}::${i}`}function qe({word:e,fontSize:t,pad:n,canvas:r,ctx:i,svg:a}){let o=Ke({word:e,fontSize:t,pad:n,svg:a}),s=We.get(o);if(s)return{key:o,bitmap:s};let c=Ie({word:e,fontSize:t,pad:n,canvas:r,ctx:i,svg:a});return We.set(o,c),{key:o,bitmap:c}}function Je({bitmapKey:e,wordMask:t,w:n,h:r,dilation:i}){let a=`${e}::d${i}`,o=Ge.get(a);if(o)return o;let s=He({wordMask:t,w:n,h:r,dilation:i}),c={wordMask:s,runs:Le(s)};return Ge.set(a,c),c}function Ye(e,t,n){if(!e.length)return;let r=1/0,i=-1/0,a=1/0,o=-1/0;for(let t=0;t<e.length;t+=1){let n=e[t],s=n.x+n.minX,c=n.x+n.maxX,l=n.y+n.minY,u=n.y+n.maxY;s<r&&(r=s),c>i&&(i=c),l<a&&(a=l),u>o&&(o=u)}if(!isFinite(r)||!isFinite(i)||!isFinite(a)||!isFinite(o))return;let s=Math.max(Math.abs(r),Math.abs(i)),c=Math.max(Math.abs(a),Math.abs(o));if(s===0||c===0)return;let l=.9,u=t*.5*l/s,d=n*.5*l/c,f=Math.min(u,d);if(!(f<=1)){f>4&&(f=4);for(let t=0;t<e.length;t+=1){let n=e[t];n.x*=f,n.y*=f,n.width*=f,n.height*=f,n.fontSize*=f,n.minX*=f,n.maxX*=f,n.minY*=f,n.maxY*=f}}}function Xe(){return typeof performance<`u`&&typeof performance.now==`function`?()=>performance.now():()=>Date.now()}function Ze({value:e,minimumValue:t,maximumValue:n,configuredMinimumFontSize:r,maximumFontSize:i}){if(n===t)return i;let a=(e-t)/(n-t)*(i-r)+r;return Math.max(r,Math.min(i,a))}function Qe({bitmapHeight:e,proximity:t,strictPixelPadding:n,minimumVisualPadding:r}){let i=Math.max(0,Math.round(t||0)),a=Math.ceil(e*.035)+2;return Math.max(i,a,n?3:0,r)}function $e({currentBitmap:e,strictPixelPadding:t,scaleFactor:n,baseBitmap:r,bitmapKey:i,proximity:a,minimumVisualPadding:o}){let s=e.runs,c=e.w,l=e.h,u=e.minX,d=e.minY,f=e.maxX,p=e.maxY;if(!s.length)return{runs:s,bitmapWidth:c,bitmapHeight:l,bitmapMinimumX:u,bitmapMinimumY:d,bitmapMaximumX:f,bitmapMaximumY:p};let m=Qe({bitmapHeight:l,proximity:a,strictPixelPadding:t,minimumVisualPadding:o});return m<=0?{runs:s,bitmapWidth:c,bitmapHeight:l,bitmapMinimumX:u,bitmapMinimumY:d,bitmapMaximumX:f,bitmapMaximumY:p}:n===1&&m===2&&t?{runs:Je({bitmapKey:i,wordMask:r.wordMask,w:r.w,h:r.h,dilation:m}).runs,bitmapWidth:c,bitmapHeight:l,bitmapMinimumX:u,bitmapMinimumY:d,bitmapMaximumX:f,bitmapMaximumY:p}:{runs:Ue({runs:s,w:c,h:l,dilation:m}),bitmapWidth:c,bitmapHeight:l,bitmapMinimumX:u,bitmapMinimumY:d,bitmapMaximumX:f,bitmapMaximumY:p}}async function H({baseBitmap:e,baseFontSize:t,minimumScaleFactor:n,maskBits:r,maskRowStride:i,maskWidth:a,maskHeight:o,centerX:s,centerY:c,maximumRadius:l,scaleStep:u,strictPixelPadding:d,bitmapKey:f,minimumFontSize:p,rawWord:m,cosineArray:h,sineArray:g,radiusStep:_,maximumAttempts:v,maybeYield:ee,proximity:te,minimumVisualPadding:ne}){let y=1;for(;y>=n;){let{runs:n,bitmapWidth:b,bitmapHeight:x,bitmapMinimumX:S,bitmapMinimumY:C,bitmapMaximumX:w,bitmapMaximumY:re}=$e({currentBitmap:y===1?e:V(e,y),strictPixelPadding:d,scaleFactor:y,baseBitmap:e,bitmapKey:f,proximity:te,minimumVisualPadding:ne}),ie=0,T=0;for(;ie<l&&T<v;){for(let e=0;e<h.length;e+=1){T+=1;let l=Math.round(s+ie*h[e]-b/2),u=Math.round(c+ie*g[e]-x/2);if(!(l<0||u<0||l+b>a||u+x>o)&&z({maskBits:r,maskRowStride:i,maskW:a,maskH:o,wx:l,wy:u,runs:n})){let{__wcIndex:e,...s}=m,c=Math.max(p,Math.round(t*y)),d={...s,x:l-a/2,y:u-o/2,fontSize:c,width:b,height:x,angle:0,minX:S,minY:C,maxX:w,maxY:re};return Ve({maskBits:r,maskRowStride:i,maskW:a,maskH:o,wx:l,wy:u,runs:n}),d}}ie+=_,T&1023||await ee()}y*=u,await ee()}return null}async function et({baseBitmap:e,baseFontSize:t,minimumScaleFactor:n,maskBits:r,maskRowStride:i,maskWidth:a,maskHeight:o,centerX:s,centerY:c,maximumRadius:l,scaleStep:u,strictPixelPadding:d,bitmapKey:f,minimumFontSize:p,rawWord:m,maybeYield:h,proximity:g,qualityPreset:_,primarySpiral:v,fallbackSpiral:ee}){return await H({baseBitmap:e,baseFontSize:t,minimumScaleFactor:n,maskBits:r,maskRowStride:i,maskWidth:a,maskHeight:o,centerX:s,centerY:c,maximumRadius:l,scaleStep:u,strictPixelPadding:d,bitmapKey:f,minimumFontSize:p,rawWord:m,cosineArray:v.cosineArray,sineArray:v.sineArray,radiusStep:_.spiralRadiusStep,maximumAttempts:_.primaryAttempts,maybeYield:h,proximity:g,minimumVisualPadding:_.minimumVisualPadding})||await H({baseBitmap:e,baseFontSize:t,minimumScaleFactor:n,maskBits:r,maskRowStride:i,maskWidth:a,maskHeight:o,centerX:s,centerY:c,maximumRadius:l,scaleStep:u,strictPixelPadding:d,bitmapKey:f,minimumFontSize:p,rawWord:m,cosineArray:ee.cosineArray,sineArray:ee.sineArray,radiusStep:_.fallbackSpiralRadiusStep,maximumAttempts:_.fallbackAttempts,maybeYield:h,proximity:g,minimumVisualPadding:_.minimumVisualPadding})}async function tt({words:e,proximity:t=0,svg:n,strictPixelPadding:r,quality:i=Me,onProgress:a,debugTiming:o=!1}){let s=Xe(),c=s(),l=c;async function u(){s()-l>=12&&(await new Promise(e=>setTimeout(e,0)),l=s())}let d=n.width,f=n.height,p=Math.round(d),m=Math.round(f),h=Ne(i),g=Fe(h.spiralStep),_=Fe(h.fallbackSpiralStep),v=n.minFontSize,ee=Math.min(n.maxFontSize,100),te=e.map(e=>e.value),ne=Math.min(...te),y=Math.max(...te);if(p<=0||m<=0)return[];let b=p+31>>>5,x=new Uint32Array(b*m),S=document.createElement(`canvas`),C=S.getContext(`2d`,{willReadFrequently:!0});S.width=p,S.height=m;let w=Math.max(p,m),re=Math.floor(p/2),ie=Math.floor(m/2),T=[...e.map((e,t)=>({...e,__wcIndex:t,id:e.id==null?`${e.name}__${t}`:e.id}))].sort((e,t)=>t.value-e.value),E=[],ae=h.scaleStep;for(let e=0;e<T.length;e+=1){let i=T[e],o=E.length,s=Ze({value:i.value,minimumValue:ne,maximumValue:y,configuredMinimumFontSize:v,maximumFontSize:ee}),c=qe({word:i,fontSize:s,pad:t,canvas:S,ctx:C,svg:n}),l=c.key,d=c.bitmap,f=d.w,te=d.h;if(f<=0||te<=0){await u();continue}let oe=await et({baseBitmap:d,baseFontSize:s,minimumScaleFactor:Math.max(1/s,.1),maskBits:x,maskRowStride:b,maskWidth:p,maskHeight:m,centerX:re,centerY:ie,maximumRadius:w,scaleStep:ae,strictPixelPadding:r,bitmapKey:l,minimumFontSize:1,rawWord:i,maybeYield:u,proximity:t,qualityPreset:h,primarySpiral:g,fallbackSpiral:_});if(oe&&(E.push(oe),a&&E.length>o)){let e=E[E.length-1];a({word:e,all:E})}await u()}if(!E.length)return[];Ye(E,p,m);let oe=s()-c;return o&&typeof console<`u`&&console.log&&console.log(`[vue-data-ui][word-cloud] positionWordsAsync:`,`${oe.toFixed(2)} ms for ${e.length} words`),E.sort((e,t)=>t.fontSize-e.fontSize)}var nt=/* @__PURE__ */ e({default:()=>gt}),rt=[`id`,`data-resizing`,`data-relayout`],it=[`id`],at={style:{position:`relative`}},ot=[`aria-describedby`,`xmlns`,`viewBox`],st=[`width`,`height`],ct=[`transform`],lt=[`transform`],ut=[`data-a11y-word-index`,`x`,`y`,`width`,`height`,`aria-label`,`onMouseover`,`onMouseleave`,`onClick`],dt=[`fill`,`font-weight`,`font-size`,`transform`,`stroke`,`stroke-width`],ft={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},pt={key:5,class:`vue-data-ui-watermark`},mt={key:6,"data-dom-to-png-ignore":``,class:`reset-wrapper`},ht={style:{display:`flex`,"align-items":`center`}},gt=/*#__PURE__*/ T({__name:`vue-ui-word-cloud`,props:{config:{type:Object,default(){return{}}},dataset:{type:[Array,String],default(){return[]}}},emits:[`copyAlt`],setup(e,{expose:T,emit:je}){let Me=j(()=>import(`./Tooltip-BUXB0i6z.js`)),Ne=j(()=>import(`./BaseIcon-Cz30ODFA.js`).then(e=>e.n)),Pe=j(()=>import(`./vue-ui-accordion-Dy5OVFKr.js`).then(e=>e.n)),Fe=j(()=>import(`./DataTable-DSUA5M9p.js`)),Ie=j(()=>import(`./PenAndPaper-DvJJaeU2.js`).then(e=>e.t)),Le=j(()=>import(`./UserOptions-D65t74CM.js`).then(e=>e.n)),Re=j(()=>import(`./PackageVersion-D6pKL176.js`).then(e=>e.t)),ze=j(()=>import(`./BaseDraggableDialog-T1gEsQid.js`).then(e=>e.n)),{vue_ui_word_cloud:Be}=x(),z=e,Ve=je,He=D({get(){return!!z.dataset&&z.dataset.length},set(e){return e}}),B=F(f()),Ue=F(0),V=F(null),We=F(null),Ge=F(null),Ke=F(0),qe=F(0),Je=F(!1),Ye=F(null),Xe=F(null),Ze=F(!1),Qe=F(!1),$e=F(null),H=F(null),et=F({x:0,y:0}),nt=F(`pointer`),gt=F(!1),U=F(Ot()),W=D(()=>U.value.userOptions),G=D(()=>U.value.style.chart.tooltip),_t=D(()=>U.value.style.chart.controls),K=D(()=>U.value.style.chart.words),q=D(()=>U.value.style.chart);y({config:()=>U.value,dataset:()=>z.dataset,component:`VueUiWordCloud`,rules:[b.noHint]});let vt=D(()=>U.value.userOptions.useCursorPointer),yt=D(()=>_({defaultConfig:{userOptions:{show:!1},table:{show:!1},useCssAnimation:!1,animationDelayMs:0,nodeCategories:{},nodeCategoryColors:{},style:{chart:{backgroundColor:`#99999930`,words:{color:`#6A6A6A`,usePalette:!1,selectedStroke:`#CCCCCC`}}}},userConfig:U.value.skeletonConfig??{}})),{loading:bt,FINAL_DATASET:xt,manualLoading:St}=C({...ke(z),FINAL_CONFIG:U,prepareConfig:Ot,callback:()=>{Promise.resolve().then(()=>{Z.value.showTable=U.value.table.show,Z.value.showTooltip=G.value.show,Z.value.showZoom=q.value.zoom.show})},skeletonDataset:z.config?.skeletonDataset??[{name:`Lorem`,value:6},{name:`ipsum`,value:3},{name:`dolor`,value:1},{name:`sit`,value:3},{name:`amet`,value:3},{name:`consectetur`,value:2},{name:`adipiscing`,value:1},{name:`elit`,value:2},{name:`Vivamus`,value:2},{name:`pulvinar`,value:1},{name:`pretium`,value:1},{name:`venenatis`,value:2},{name:`Donec`,value:1},{name:`imperdiet`,value:3},{name:`id`,value:1},{name:`porttitor`,value:2},{name:`tristique`,value:1},{name:`Aenean`,value:2},{name:`ac`,value:5},{name:`commodo`,value:2},{name:`justo`,value:2},{name:`Vestibulum`,value:2},{name:`placerat`,value:1},{name:`molestie`,value:1},{name:`nisl`,value:1},{name:`lacinia`,value:2},{name:`nulla`,value:1},{name:`posuere`,value:2},{name:`quis`,value:3},{name:`ullamcorper`,value:1},{name:`eu`,value:1},{name:`ex`,value:1},{name:`vitae`,value:3},{name:`facilisis`,value:1},{name:`Aliquam`,value:1},{name:`erat`,value:1},{name:`volutpat`,value:1},{name:`Proin`,value:1},{name:`nunc`,value:1},{name:`felis`,value:1},{name:`gravida`,value:3},{name:`sed`,value:1},{name:`orci`,value:1},{name:`Interdum`,value:1},{name:`et`,value:1},{name:`malesuada`,value:1},{name:`fames`,value:1},{name:`ante`,value:1}],skeletonConfig:_({defaultConfig:U.value,userConfig:yt.value})}),Ct=F(wt());function wt(){return typeof xt.value==`string`?p(xt.value):xt.value.map((e,t)=>({...e,value:g(e.value)}))}let{userOptionsVisible:Tt,setUserOptionsVisibility:Et,keepUserOptionState:Dt}=ce({config:U.value}),{svgRef:J}=le({config:q.value.title});function Ot(){return se(z.config,Be,fe)}let kt=F({x:0,y:0});function At(){let e={x:0,y:0,width:Math.max(10,Y.value.width),height:Math.max(10,Y.value.height)};sn(e),kt.value={x:e.x+e.width/2,y:e.y+e.height/2},an()}let jt=E(()=>{Gt()},100),Mt=F(!1);Ae(()=>Mt.value,e=>{e===!1&&(Qe.value=!0,jt(),At())});let Nt=m(z.config);Ae(()=>z.config,(e,t)=>{let n=m(e),r=n!==Nt;Nt=n;let i=Ot();if(!r){U.value.style.chart.tooltip=i.style.chart.tooltip,Z.value.showTooltip=U.value.style.chart.tooltip.show;return}U.value=i,Tt.value=!U.value.userOptions.showOnChartHover,Rt(),Ke.value+=1,qe.value+=1,Z.value.showTable=U.value.table.show,Z.value.showTooltip=G.value.show,Z.value.showZoom=q.value.zoom.show},{deep:!0});let Y=F({width:q.value.width,height:q.value.height,maxFontSize:K.value.maxFontSize,minFontSize:K.value.minFontSize,bold:K.value.bold}),Pt=E(()=>{let{width:e,height:t}=ae({chart:V.value,title:q.value.title.text?We.value:null,legend:_t.value.show?$e.value?.$el:null,source:Ge.value});requestAnimationFrame(async()=>{Y.value.width=Math.max(10,e),Y.value.height=Math.max(10,t-12),await be(),Mt.value=!1})},100),Ft=()=>{Mt.value=!0,Pt()},X=De(null),It=De(null);we(Rt);let Lt=D(()=>U.value.debug);function Rt(){ne(z.dataset)?h({componentName:`VueUiWordCloud`,type:`dataset`,debug:Lt.value}):Ct.value.forEach((e,t)=>{te({datasetObject:e,requiredAttributes:[`name`,`value`]}).forEach(e=>{He.value=!1,h({componentName:`VueUiWordCloud`,type:`datasetSerieAttribute`,property:e,index:t,debug:Lt.value})})}),ne(z.dataset)||(St.value=U.value.loading),U.value.responsive&&(X.value&&(It.value&&X.value.unobserve(It.value),X.value.disconnect()),X.value=new ResizeObserver(Ft),It.value=V.value.parentNode,X.value.observe(It.value)),At()}Ce(()=>{X.value&&(It.value&&X.value.unobserve(It.value),X.value.disconnect())});let{isPrinting:zt,isImaging:Bt,generatePdf:Vt,generateImage:Ht}=S({elementId:`wordCloud_${B.value}`,fileName:q.value.title.text||`vue-ui-word-cloud`,options:U.value.userOptions.print}),Z=F({showTable:U.value.table.show,showTooltip:G.value.show,showZoom:q.value.zoom.show});Ae(U,()=>{Z.value.showTable=U.value.table.show,Z.value.showTooltip=G.value.show,Z.value.showZoom=q.value.zoom.show},{immediate:!0});function Ut(e,t,n=`Arial`){let r=document.createElement(`canvas`).getContext(`2d`);return r.font=`${t}px ${K.value.bold?`bold`:`normal`} ${n}`,{width:r.measureText(e).width+K.value.proximity,height:t}}let Q=F([]),Wt=/* @__PURE__ */ new Map;function Gt(){let e=[...Ct.value].map(e=>e.value),t=Math.max(...e),n=Math.min(...e),r=[...Ct.value].map((e,r)=>{let i=(e.value-n)/(t-n)*(Y.value.maxFontSize-Y.value.minFontSize)+Y.value.minFontSize;i=isNaN(i)?Y.value.minFontSize:i;let a=Ut(e.name,i);return{...e,id:e.id??`${e.name}__${r}`,fontSize:i,width:a.width,height:a.height,color:e.color?d(e.color):K.value.usePalette?U.value.customPalette[r]||U.value.customPalette[r%U.value.customPalette.length]||u[r]||u[r%u.length]:K.value.color}});Q.value.length=0,Wt.clear(),tt({debugTiming:Lt.value,words:r,svg:Y.value,proximity:K.value.proximity,strictPixelPadding:U.value.strictPixelPadding,quality:U.value.quality,onProgress:({all:e})=>{for(let t of e){let e=t.id,n=Wt.get(e);if(n===void 0)n=Q.value.length,Wt.set(e,n),Q.value.push({...t});else{let e=Q.value[n];e.x=t.x,e.y=t.y,e.width=t.width,e.height=t.height,e.fontSize=t.fontSize,e.minX=t.minX,e.minY=t.minY,e.maxX=t.maxX,e.maxY=t.maxY}}}}),Q.value.sort((e,t)=>t.fontSize-e.fontSize),Wt.clear(),Q.value.forEach((e,t)=>{Wt.set(e.id,t)}),Ze.value=!0,Qe.value=!1}let Kt=D(()=>({head:Q.value.map(e=>({name:e.name,color:e.color})),body:Q.value.map(e=>e.value)}));function qt(e=null){be(()=>{let t=Kt.value.head.map((e,t)=>[[e.name],[Kt.value.body[t]]]),n=[[q.value.title.text],[q.value.title.subtitle.text],[[``],[U.value.table.columnNames.value]]].concat(t),r=c(n);e?e(r):v({csvContent:r,title:q.value.title.text||`vue-ui-word-cloud`})})}let Jt=D(()=>{let e=[U.value.table.columnNames.series,U.value.table.columnNames.value],t=Kt.value.head.map((e,t)=>{let n=s({p:U.value.table.td.prefix,v:Kt.value.body[t],s:U.value.table.td.suffix,r:U.value.table.td.roundingValue});return[{color:e.color,name:e.name},n]}),n=t.map(e=>e.map((e,t)=>t===0?e.name:e)),r={th:{backgroundColor:U.value.table.th.backgroundColor,color:U.value.table.th.color,outline:U.value.table.th.outline},td:{backgroundColor:U.value.table.td.backgroundColor,color:U.value.table.td.color,outline:U.value.table.td.outline},breakpoint:U.value.table.responsiveBreakpoint};return{colNames:[U.value.table.columnNames.series,U.value.table.columnNames.value],head:e,body:t,a11yBody:n,config:r}}),$=F(!1);function Yt(e){$.value=e,Ue.value+=1}function Xt(){return Q.value}function Zt(){Z.value.showTable=!Z.value.showTable}function Qt(){Z.value.showTooltip=!Z.value.showTooltip}let $t=F(!1);function en(){$t.value=!$t.value}function tn(){Z.value.showZoom=!Z.value.showZoom}let nn=D(()=>!$t.value&&Z.value.showZoom),{viewBox:rn,resetZoom:an,isZoom:on,setInitialViewBox:sn,zoomByFactor:cn,scale:ln}=de(J,{x:0,y:0,width:Y.value.width<=0?10:Y.value.width,height:Y.value.height<=0?10:Y.value.height},1,nn);Ae(()=>z.dataset,()=>{Ct.value=wt(),U.value.responsive||(Gt(),At())},{immediate:!0});let un=ue(V,()=>q.value.title.text),dn=D(()=>n({config:U,style:q,mutableConfig:Z,dialog:ze,accordion:Pe,isFullscreen:$,parent:V,maxWidth:500,isCursorPointer:vt}));Ae(()=>Z.value.showTable,e=>t(e,U,Ye));function fn(){Z.value.showTable=!1,Xe.value&&Xe.value.setTableIconState(!1)}let pn=D(()=>q.value.backgroundColor),mn=D(()=>q.value.title),{isCallbackImaging:hn,isCallbackSvg:gn,generateSvg:_n,onGenerateImage:vn}=re({svg:J,title:mn,legend:null,legendItems:null,backgroundColor:pn,getSvgCallback:()=>U.value.userOptions.callbacks.svg,generateImage:Ht});function yn(){cn(1.5,!0)}function bn(){cn(1/1.5,!0)}let xn=F(null),Sn=F(!1),Cn=F(``),wn=F(null);function Tn(){xn.value=null,H.value=null,Je.value=!1}function En(e,t){U.value.events.datapointLeave&&U.value.events.datapointLeave({datapoint:e,seriesIndex:t}),(H.value!==t||nt.value!==`keyboard`)&&(xn.value=null,Je.value=!1)}function Dn(e,t){U.value.events.datapointClick&&U.value.events.datapointClick({datapoint:e,seriesIndex:t})}function On(e){if(!J.value||e==null)return;let t=J.value.querySelector(`[data-a11y-word-index="${e}-${B.value}"]`);if(!t)return;let n=t.getBoundingClientRect();et.value={x:n.left+n.width/2,y:n.top+n.height/2}}function kn(e,t,n=`pointer`){if(U.value.events.datapointEnter&&U.value.events.datapointEnter({datapoint:e,seriesIndex:t}),!Z.value.showTooltip)return;nt.value=n,H.value=t,xn.value=e.id,wn.value={datapoint:e,config:U.value,seriesIndex:t};let r=G.value.customFormat;if(Sn.value=!1,l(r))try{let t=r({datapoint:e,config:U.value});typeof t==`string`&&(Cn.value=t,Sn.value=!0)}catch{console.warn(`Custom format cannot be applied.`),Sn.value=!1}if(!Sn.value){let t=`<svg viewBox="0 0 10 10" height="${G.value.fontSize}"><circle cx="5" cy="5" r="5" fill="${e.color}"/></svg><span>${e.name}:</span><b>${(e.value||0).toFixed(G.value.roundingValue)}</b>`;Cn.value=`<div dir="auto" style="display:flex; gap:4px; align-items:center; jsutify-content:center;">${t}</div>`}n===`keyboard`&&be(()=>{On(t)}),Je.value=!0}async function An(){if(Ve(`copyAlt`,{config:U.value,dataset:Q.value}),!U.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(U.value.userOptions.callbacks.altCopy({config:U.value,dataset:Q.value}))}function jn(){H.value=null,gt.value=!0}function Mn(){Tn(),gt.value=!1}function Nn(e){if(!J.value||$t.value||document.activeElement!==J.value||!Q.value.length)return;let t=e.key===`ArrowLeft`||e.key===`ArrowUp`,n=e.key===`ArrowRight`||e.key===`ArrowDown`,r=e.key===`Enter`||e.key===` `,i=e.key===`Escape`;if(!t&&!n&&!r&&!i)return;if(e.preventDefault(),e.stopPropagation(),i){Tn();return}if(r){if(H.value===null)return;let e=Q.value[H.value];if(!e)return;Dn(e,H.value);return}let a=H.value;a===null||a<0||a>=Q.value.length?a=n?0:Q.value.length-1:(a+=n?1:-1,a<0&&(a=Q.value.length-1),a>=Q.value.length&&(a=0));let o=Q.value[a];o&&kn(o,a,`keyboard`)}let Pn=D(()=>({headers:Jt.value?.colNames??[],rows:Jt.value?.a11yBody??[]}));return T({getData:Xt,getImage:un,generateCsv:qt,generatePdf:Vt,generateImage:Ht,generateSvg:_n,resetZoom:an,toggleTable:Zt,toggleTooltip:Qt,toggleAnnotator:en,toggleFullscreen:Yt,toggleZoom:tn,copyAlt:An}),(e,t)=>(P(),A(`div`,{class:`vue-data-ui-component vue-ui-word-cloud`,ref_key:`wordCloudChart`,ref:V,id:`wordCloud_${B.value}`,"data-resizing":Mt.value,"data-relayout":Qe.value,style:Se(`width: 100%; font-family:${U.value.style.fontFamily};background:${q.value.backgroundColor};${U.value.responsive?`height:100%`:``}`),onMouseenter:t[3]||=()=>L(Et)(!0),onMouseleave:t[4]||=()=>{L(Et)(!1),gt.value||Tn()}},[he(`div`,{id:`chart-instructions-${B.value}`,class:`sr-only`},[he(`p`,null,Oe(U.value.a11y.translations.keyboardNavigation),1)],8,it),Pn.value?.rows?.length?(P(),O(oe,{key:0,uid:B.value,head:Pn.value.headers,body:Pn.value.rows,notice:U.value.a11y.translations.tableAvailable,caption:U.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):k(``,!0),W.value.buttons.annotator?(P(),O(L(Ie),{key:1,svgRef:L(J),backgroundColor:q.value.backgroundColor,color:q.value.color,active:$t.value,isCursorPointer:vt.value,palette:W.value.annotatorPalette,onClose:en},ge({_:2},[Te(L(i),t=>({name:t,fn:R(n=>[I(e.$slots,t,N(M(L(r)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):k(``,!0),q.value.title.text?(P(),A(`div`,{key:2,ref_key:`chartTitle`,ref:We,style:`width:100%;background:transparent;padding-bottom:24px`},[(P(),O(ie,{key:`title_${Ke.value}`,config:{title:{...q.value.title},subtitle:{...q.value.title.subtitle}}},null,8,[`config`]))],512)):k(``,!0),W.value.show&&He.value&&(L(Dt)||L(Tt))?(P(),O(L(Le),{ref_key:`userOptionsRef`,ref:Xe,key:`user_option_${Ue.value}`,backgroundColor:q.value.backgroundColor,color:q.value.color,isPrinting:L(zt),isImaging:L(Bt),uid:B.value,hasPdf:W.value.buttons.pdf,hasXls:W.value.buttons.csv,hasImg:W.value.buttons.img,hasSvg:W.value.buttons.svg,hasTable:W.value.buttons.table,hasFullscreen:W.value.buttons.fullscreen,hasAltCopy:W.value.buttons.altCopy,isFullscreen:$.value,titles:{...W.value.buttonTitles},chartElement:V.value,position:W.value.position,hasTooltip:G.value.show&&W.value.buttons.tooltip,isTooltip:Z.value.showTooltip,hasAnnotator:W.value.buttons.annotator,isAnnotation:$t.value,callbacks:W.value.callbacks,printScale:W.value.print.scale,tableDialog:U.value.table.useDialog,hasZoom:W.value.buttons.zoom,isZoom:Z.value.showZoom,isCursorPointer:vt.value,onToggleFullscreen:Yt,onGeneratePdf:L(Vt),onGenerateCsv:qt,onGenerateImage:L(vn),onGenerateSvg:L(_n),onToggleTable:Zt,onToggleTooltip:Qt,onToggleAnnotator:en,onToggleZoom:tn,onCopyAlt:An,style:Se({visibility:L(Dt)?L(Tt)?`visible`:`hidden`:`visible`})},ge({_:2},[Te(L(a)(e.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionZoom optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:R(n=>[I(e.$slots,t,N(M(L(o)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasFullscreen.hasAltCopy.isFullscreen.titles.chartElement.position.hasTooltip.isTooltip.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.hasZoom.isZoom.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):k(``,!0),_t.value.position===`top`&&_t.value.show&&!L(bt)?(P(),O(pe,{key:4,ref_key:`zoomControls`,ref:$e,config:U.value,scale:L(ln),isFullscreen:$.value,isCursorPointer:vt.value,onZoomIn:yn,onZoomOut:bn,onResetZoom:t[0]||=e=>L(an)(!0)},null,8,[`config`,`scale`,`isFullscreen`,`isCursorPointer`])):k(``,!0),he(`div`,at,[(P(),A(`svg`,{ref_key:`svgRef`,ref:J,class:xe({"vue-data-ui-fullscreen--on":$.value,"vue-data-ui-fulscreen--off":!$.value}),"aria-describedby":`chart-instructions-${B.value}`,xmlns:L(ee),viewBox:`${L(rn).x} ${L(rn).y} ${L(rn).width} ${L(rn).height}`,style:`overflow:hidden;background:transparent;display:block`,tabindex:`0`,onFocus:jn,onBlur:Mn,onKeydown:Nn},[ve(L(Re)),e.$slots[`chart-background`]?(P(),A(`foreignObject`,{key:0,x:0,y:0,width:Y.value.width<=0?10:Y.value.width,height:Y.value.height<=0?10:Y.value.height,style:{pointerEvents:`none`}},[I(e.$slots,`chart-background`,{},void 0,!0)],8,st)):k(``,!0),he(`g`,{transform:`translate(${kt.value.x}, ${kt.value.y})`,class:xe({"wc-finalized":Ze.value})},[(P(!0),A(me,null,Te(Q.value,(e,t)=>(P(),A(`g`,{key:e.id,class:`vue-ui-word-cloud-word`,transform:`translate(${e.x}, ${e.y})`},[e.minX===void 0?k(``,!0):(P(),A(`rect`,{key:0,"data-a11y-word-index":`${t}-${B.value}`,x:e.minX,y:e.minY*1.25,width:e.maxX-e.minX,height:e.maxY-e.minY,fill:`transparent`,"pointer-events":`visiblePainted`,"aria-label":`${e.name}: ${(e.value||0).toFixed(G.value.roundingValue)}`,onMouseover:n=>kn(e,t),onMouseleave:n=>En(e,t),onClick:n=>Dn(e,t)},null,40,ut)),he(`text`,{fill:e.color,"font-weight":K.value.bold?`bold`:`normal`,x:0,y:0,"font-size":e.fontSize,transform:`translate(${e.width/2}, ${e.height/2})`,"text-anchor":`middle`,"dominant-baseline":`central`,"paint-order":`stroke fill`,stroke:!xn.value||xn.value===e.id?K.value.selectedStroke:void 0,"stroke-width":e.height*.05,"stroke-linecap":`round`,"stroke-linejoin":`round`,style:Se(`
|
|
2
|
-
pointer-events:none;
|
|
3
|
-
fill-opacity:${!xn.value||xn.value===e.id||!Ze.value?1:K.value.hoverOpacity} !important;
|
|
4
|
-
`)},Oe(e.name),13,dt)],8,lt))),128))],10,ct),I(e.$slots,`svg`,{svg:{...Y.value,isPrintingImg:L(zt)||L(Bt)||L(hn),isPrintingSvg:L(gn)}},void 0,!0)],42,ot)),e.$slots.hint?(P(),A(`div`,ft,[I(e.$slots,`hint`,N(M({hint:U.value.a11y.translations.keyboardNavigation,isVisible:gt.value})),void 0,!0)])):k(``,!0)]),e.$slots.watermark?(P(),A(`div`,pt,[I(e.$slots,`watermark`,N(M({isPrinting:L(zt)||L(Bt)||L(hn)||L(gn)})),void 0,!0)])):k(``,!0),L(on)?(P(),A(`div`,mt,[I(e.$slots,`reset-action`,{reset:L(an)},void 0,!0)])):k(``,!0),_t.value.position===`bottom`&&_t.value.show&&!L(bt)?(P(),O(pe,{key:7,ref_key:`zoomControls`,ref:$e,config:U.value,scale:L(ln),isFullscreen:$.value,isCursorPointer:vt.value,onZoomIn:yn,onZoomOut:bn,onResetZoom:t[1]||=e=>L(an)(!0)},null,8,[`config`,`scale`,`isFullscreen`,`isCursorPointer`])):k(``,!0),ve(L(Me),{teleportTo:G.value.teleportTo,show:Z.value.showTooltip&&Je.value,backgroundColor:G.value.backgroundColor,color:G.value.color,fontSize:G.value.fontSize,borderRadius:G.value.borderRadius,borderColor:G.value.borderColor,borderWidth:G.value.borderWidth,backgroundOpacity:G.value.backgroundOpacity,position:G.value.position,offsetX:G.value.offsetX,offsetY:G.value.offsetY,parent:V.value,content:Cn.value,isCustom:Sn.value,isFullscreen:$.value,smooth:G.value.smooth,backdropFilter:G.value.backdropFilter,smoothForce:G.value.smoothForce,smoothSnapThreshold:G.value.smoothSnapThreshold,isA11yMode:nt.value===`keyboard`,a11yPosition:et.value},{"tooltip-before":R(()=>[I(e.$slots,`tooltip-before`,N(M({...wn.value})),void 0,!0)]),tooltip:R(()=>[I(e.$slots,`tooltip`,N(M({...wn.value})),void 0,!0)]),"tooltip-after":R(()=>[I(e.$slots,`tooltip-after`,N(M({...wn.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`fontSize`,`borderRadius`,`borderColor`,`borderWidth`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isCustom`,`isFullscreen`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),e.$slots.source?(P(),A(`div`,{key:8,ref_key:`source`,ref:Ge,dir:`auto`},[I(e.$slots,`source`,{},void 0,!0)],512)):k(``,!0),He.value&&W.value.buttons.table?(P(),O(Ee(dn.value.component),ye({key:9},dn.value.props,{ref_key:`tableUnit`,ref:Ye,onClose:fn}),ge({content:R(()=>[(P(),O(L(Fe),{key:`table_${qe.value}`,colNames:Jt.value.colNames,head:Jt.value.head,body:Jt.value.body,config:Jt.value.config,title:U.value.table.useDialog?``:dn.value.title,withCloseButton:!U.value.table.useDialog,isCursorPointer:vt.value,onClose:fn},{th:R(({th:e})=>[he(`div`,ht,Oe(e),1)]),td:R(({td:e})=>[_e(Oe(e.name||e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[U.value.table.useDialog?{name:`title`,fn:R(()=>[_e(Oe(dn.value.title),1)]),key:`0`}:void 0,U.value.table.useDialog?{name:`actions`,fn:R(()=>[he(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[2]||=e=>qt(W.value.callbacks.csv),style:Se({cursor:vt.value?`pointer`:`default`})},[ve(L(Ne),{name:`fileCsv`,stroke:dn.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):k(``,!0),I(e.$slots,`skeleton`,{},()=>[L(bt)?(P(),O(w,{key:0})):k(``,!0)],!0)],44,rt))}},[[`__scopeId`,`data-v-1a3b7900`]]);export{nt as n,gt as t};
|