vue-data-ui 3.28.0 → 3.28.1
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 +89 -63
- package/dist/{Arrow-D6OAn5rm.js → Arrow-CITPKnWF.js} +1 -1
- package/dist/{BaseDraggableDialog-Bw_azO0n.js → BaseDraggableDialog-DHgIPVmz.js} +1 -1
- package/dist/{BaseIcon-DDctLkeT.js → BaseIcon-Cm-IJ179.js} +1 -1
- package/dist/{BaseLegendToggle-BOcw1ke8.js → BaseLegendToggle-Q3TiW9u1.js} +1 -1
- package/dist/{BaseZoomControls-Cq5AOHQ0.js → BaseZoomControls-ByS_7fmI.js} +1 -1
- package/dist/{ColorPicker-DHQvvLT9.js → ColorPicker-Dmus34hN.js} +1 -1
- package/dist/{DataTable-BcVZLSs8.js → DataTable-0Vv-aGHD.js} +1 -1
- package/dist/HillActions-qz6J_uK7.js +1 -0
- package/dist/{Legend-D8NunRPr.js → Legend-DM0ClX3D.js} +1 -1
- package/dist/{NonSvgPenAndPaper-CxQZ0YED.js → NonSvgPenAndPaper-Do6RcwEr.js} +1 -1
- package/dist/{PackageVersion-ATrKWi8V.js → PackageVersion-C4ZM3Vf7.js} +1 -1
- package/dist/PenAndPaper-BGEp-TUm.js +1 -0
- package/dist/{Shape-gDVRWM6n.js → Shape-CRe8woTu.js} +1 -1
- package/dist/SlicerPreview-CFFUOlQr.js +1 -0
- package/dist/{SparkTooltip-cWKhrsKX.js → SparkTooltip-Ch06CV71.js} +1 -1
- package/dist/{Title-BLA0tM3g.js → Title-BliHuXfT.js} +1 -1
- package/dist/Tooltip-C1q0Qoh7.js +1 -0
- package/dist/UserOptions-uWHV_zPB.js +1 -0
- package/dist/{useResponsive-D2CPcpda.js → canvas-lib-22VpOI4_.js} +1 -1
- package/dist/{chartImage-r-G4CkRK.js → chartImage-DPGnEuYM.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 -1
- 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-pattern-seed.js +1 -1
- package/dist/components/vue-ui-pattern.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-Cp6rAdnI.js → dom-to-png-D56-Zgv4.js} +1 -1
- package/dist/{exposedLib-BDGMSW1B.js → exposedLib-BRtClmZy.js} +1 -1
- package/dist/{img-DiP2_5_r.js → img-D4RQwASc.js} +1 -1
- package/dist/{labelUtils-DXiFpsZl.js → labelUtils-CdtU-yB_.js} +1 -1
- package/dist/{lib-DqD8nbyX.js → lib-rPeBMZrn.js} +2 -2
- package/dist/package-DGRUegc-.js +1 -0
- package/dist/{pdf-y3S8SBFk.js → pdf-DAicVFxx.js} +1 -1
- package/dist/{render-common-tsNLeNaX.js → render-common-CJz0wn0I.js} +1 -1
- package/dist/{resolveChartConfig-ChGWTt5l.js → resolveChartConfig-CIhClE5R.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 +126 -0
- package/dist/useChartExport-BZts4KFb.js +1 -0
- package/dist/{useConfig-DM9fSqjh.js → useConfig-6jO1fkp5.js} +1 -1
- package/dist/{useNestedProp-DrLnzyHO.js → useNestedProp-DnGoh-XS.js} +1 -1
- package/dist/{useObjectBindings-Cn4Vz0RY.js → useObjectBindings-DiMX4HGv.js} +1 -1
- package/dist/{usePrinter-Cj4eIYC_.js → usePrinter-sVoTzet1.js} +1 -1
- package/dist/useResponsive-CENUxfEL.js +1 -0
- package/dist/useSvgLabelLayout-D1I8sQUi.js +1 -0
- package/dist/useTimeLabelCollider-BTybMUFi.js +1 -0
- package/dist/useTransitions-ChGGrtrv.js +1 -0
- package/dist/utils.js +1 -1
- package/dist/vue-data-ui-CxiWUtNw.js +1 -0
- package/dist/vue-data-ui.js +1 -1
- package/dist/vue-ui-3d-bar-CW8ahywt.js +19 -0
- package/dist/{vue-ui-accordion-3lBpCjGm.js → vue-ui-accordion-S3nRtTU-.js} +1 -1
- package/dist/vue-ui-age-pyramid-CxMwKICA.js +1 -0
- package/dist/{vue-ui-annotator-CpTZHnPw.js → vue-ui-annotator-CdCDYzdK.js} +3 -3
- package/dist/vue-ui-bullet-ClnewIWQ.js +34 -0
- package/dist/vue-ui-bump-C6FuNDUg.js +8 -0
- package/dist/vue-ui-candlestick-CyewIjJk.js +22 -0
- package/dist/vue-ui-carousel-table-D0dD4kai.js +1 -0
- package/dist/vue-ui-chestnut-nS1vjCqH.js +1 -0
- package/dist/vue-ui-chord-B963Q_26.js +21 -0
- package/dist/vue-ui-circle-pack-DEY9X3jA.js +13 -0
- package/dist/{vue-ui-cursor-Dn-IBaP8.js → vue-ui-cursor-CNv12HQG.js} +1 -1
- package/dist/vue-ui-dag-s3-TMmid.js +9 -0
- package/dist/vue-ui-dashboard-B5zrGAvS.js +1 -0
- package/dist/{vue-ui-digits-BBiRMr01.js → vue-ui-digits-DXQwmTUx.js} +1 -1
- package/dist/vue-ui-donut-CDryub1L.js +47 -0
- package/dist/{vue-ui-donut-CGyBWxzh.js → vue-ui-donut-DHfOfLBF.js} +1 -1
- package/dist/vue-ui-donut-evolution-C5pHSrza.js +2 -0
- package/dist/vue-ui-dumbbell-CQbGR7yM.js +9 -0
- package/dist/vue-ui-flow-B16Mj6MW.js +3 -0
- package/dist/vue-ui-funnel-Dh-xi_Qi.js +1 -0
- package/dist/vue-ui-galaxy-U_ZIP5vm.js +1 -0
- package/dist/vue-ui-gauge-Dr4zsf6D.js +1 -0
- package/dist/vue-ui-geo-DFebja0s.js +1 -0
- package/dist/{vue-ui-gizmo-K1lfslsA.js → vue-ui-gizmo-CssVcz-O.js} +1 -1
- package/dist/vue-ui-graph-BB_97Qz7.js +7 -0
- package/dist/vue-ui-heatmap-DEBbVnrg.js +1 -0
- package/dist/vue-ui-hill-C1sHz3TI.js +1 -0
- package/dist/vue-ui-history-plot-CsBTJXR3.js +2 -0
- package/dist/vue-ui-horizontal-bar-D0kfcpEW.js +4 -0
- package/dist/{vue-ui-kpi-BZjfQxmY.js → vue-ui-kpi-CltKSYUI.js} +1 -1
- package/dist/vue-ui-label-B_1kM28r.js +7 -0
- package/dist/{vue-ui-mini-loader-ltQXdeeW.js → vue-ui-mini-loader-7gqQI5jy.js} +1 -1
- package/dist/vue-ui-molecule-DtoyWWTf.js +1 -0
- package/dist/vue-ui-mood-radar-ClOxfeH8.js +1 -0
- package/dist/vue-ui-nested-donuts-CULAXTg1.js +19 -0
- package/dist/vue-ui-onion-D7zu861i.js +5 -0
- package/dist/vue-ui-parallel-coordinate-plot-Cjbc-WUG.js +9 -0
- package/dist/vue-ui-quadrant-DWAb_t6r.js +2 -0
- package/dist/vue-ui-quick-chart-oDZwgVo8.js +17 -0
- package/dist/vue-ui-radar-BWG_N0xO.js +1 -0
- package/dist/{vue-ui-rating-B33u3iIn.js → vue-ui-rating-CV2b0tjA.js} +1 -1
- package/dist/vue-ui-relation-circle-BCRiS2n6.js +1 -0
- package/dist/vue-ui-ridgeline-VYcGUP_p.js +2 -0
- package/dist/vue-ui-rings-Dl0AjrRj.js +1 -0
- package/dist/vue-ui-scatter-DTa48HvG.js +9 -0
- package/dist/{vue-ui-skeleton-DTn7uIui.js → vue-ui-skeleton-C5mGG8hR.js} +1 -1
- package/dist/{vue-ui-smiley-qCRUFmpq.js → vue-ui-smiley-VTdQetY0.js} +1 -1
- package/dist/vue-ui-spark-trend--frxeJ8f.js +1 -0
- package/dist/{vue-ui-sparkbar-DPFzdX-D.js → vue-ui-sparkbar-BS5v3HMo.js} +1 -1
- package/dist/{vue-ui-sparkgauge-DlEPsxc0.js → vue-ui-sparkgauge-B1TGfXvR.js} +1 -1
- package/dist/vue-ui-sparkhistogram-Cs97AL6h.js +1 -0
- package/dist/vue-ui-sparkline-Bp9J6x7z.js +1 -0
- package/dist/vue-ui-sparkstackbar-BVuuRD10.js +1 -0
- package/dist/vue-ui-stackbar-CRuXn3XI.js +29 -0
- package/dist/vue-ui-stackline-Besmr9vq.js +39 -0
- package/dist/vue-ui-strip-plot-D-aRJkR7.js +2 -0
- package/dist/{vue-ui-table-3F8i2ZjT.js → vue-ui-table-D_UdQwV3.js} +1 -1
- package/dist/{vue-ui-table-heatmap-CtYPYMIJ.js → vue-ui-table-heatmap-BtziURiu.js} +1 -1
- package/dist/vue-ui-table-sparkline-BdNo8fW_.js +1 -0
- package/dist/vue-ui-thermometer-TFg1SGY7.js +1 -0
- package/dist/{vue-ui-timer-DsWRNtRa.js → vue-ui-timer-BdPksC26.js} +2 -2
- package/dist/vue-ui-tiremarks-HWuO-eyj.js +1 -0
- package/dist/vue-ui-treemap-IegiAqaX.js +1 -0
- package/dist/vue-ui-waffle-BEyGfPks.js +1 -0
- package/dist/vue-ui-wheel-k8GNPGET.js +1 -0
- package/dist/vue-ui-word-cloud-D9_15Ve7.js +4 -0
- package/dist/{vue-ui-world-DQWjoFDx.js → vue-ui-world-rCp5Vb7u.js} +2 -2
- package/dist/{vue-ui-xy-DfvcqUwW.js → vue-ui-xy-42AXepcQ.js} +2 -2
- package/dist/vue-ui-xy-CFgFg11v.js +24 -0
- package/dist/vue-ui-xy-canvas-CeC3gcrW.js +9 -0
- package/package.json +3 -3
- package/dist/HillActions-Bq3UJ1Ut.js +0 -1
- package/dist/PenAndPaper-BsBFp16i.js +0 -1
- package/dist/SlicerPreview-Dpu4nMz6.js +0 -1
- package/dist/Tooltip-Iyb_S6oQ.js +0 -1
- package/dist/UserOptions-BSJ_S_us.js +0 -1
- package/dist/package-UBaXe2y9.js +0 -1
- package/dist/useChartExport-DtPNpc9M.js +0 -1
- package/dist/useTimeLabelCollider-XQf_S7-z.js +0 -1
- package/dist/useTransitions-DfSHzsdz.js +0 -1
- package/dist/vue-data-ui-yeD7UyUU.js +0 -1
- package/dist/vue-ui-3d-bar-COrzyTkO.js +0 -19
- package/dist/vue-ui-age-pyramid-CAoVjkOA.js +0 -1
- package/dist/vue-ui-bullet-yvY_gdw2.js +0 -34
- package/dist/vue-ui-bump-ChsFkIq9.js +0 -10
- package/dist/vue-ui-candlestick-D9UXZQoN.js +0 -22
- package/dist/vue-ui-carousel-table-CKyE4hME.js +0 -1
- package/dist/vue-ui-chestnut-BuLjW5nb.js +0 -1
- package/dist/vue-ui-chord-Bjwt2_BK.js +0 -21
- package/dist/vue-ui-circle-pack-BpAuZruK.js +0 -13
- package/dist/vue-ui-dag-CyY3cSa6.js +0 -9
- package/dist/vue-ui-dashboard-DmyStkQM.js +0 -1
- package/dist/vue-ui-donut-DMF74OY0.js +0 -47
- package/dist/vue-ui-donut-evolution-Du4zLc8D.js +0 -2
- package/dist/vue-ui-dumbbell-CxL_AY5e.js +0 -9
- package/dist/vue-ui-flow-h6kTMamJ.js +0 -3
- package/dist/vue-ui-funnel-BG5Addzr.js +0 -1
- package/dist/vue-ui-galaxy-CgnshY8i.js +0 -1
- package/dist/vue-ui-gauge-a13ojQPr.js +0 -1
- package/dist/vue-ui-geo-CflzhtuD.js +0 -1
- package/dist/vue-ui-graph-C2Se8bnB.js +0 -7
- package/dist/vue-ui-heatmap-5NsQkMwS.js +0 -1
- package/dist/vue-ui-hill-COnjVS2L.js +0 -1
- package/dist/vue-ui-history-plot-BRJdXsNo.js +0 -2
- package/dist/vue-ui-horizontal-bar-G0wEKTRu.js +0 -4
- package/dist/vue-ui-label-BD_hTtgZ.js +0 -7
- package/dist/vue-ui-molecule-DI-CS5w8.js +0 -1
- package/dist/vue-ui-mood-radar-B5ar9WAZ.js +0 -1
- package/dist/vue-ui-nested-donuts-BP2YzVma.js +0 -19
- package/dist/vue-ui-onion-CCiZ6jmF.js +0 -5
- package/dist/vue-ui-parallel-coordinate-plot-3E0CysDx.js +0 -9
- package/dist/vue-ui-quadrant-BwgwvKy8.js +0 -2
- package/dist/vue-ui-quick-chart-BXNg0LNe.js +0 -17
- package/dist/vue-ui-radar-B9Ntj_Gj.js +0 -1
- package/dist/vue-ui-relation-circle-B60IUw50.js +0 -1
- package/dist/vue-ui-ridgeline-BPbYng2A.js +0 -2
- package/dist/vue-ui-rings-BXo9p3Ab.js +0 -1
- package/dist/vue-ui-scatter-BwrYPDzh.js +0 -9
- package/dist/vue-ui-spark-trend-wKFu-O7B.js +0 -1
- package/dist/vue-ui-sparkhistogram-DLZxE6oz.js +0 -1
- package/dist/vue-ui-sparkline-BflZPl7s.js +0 -1
- package/dist/vue-ui-sparkstackbar-DvSQfGeA.js +0 -1
- package/dist/vue-ui-stackbar-JKC9qE6M.js +0 -29
- package/dist/vue-ui-stackline-G7-oqfzp.js +0 -39
- package/dist/vue-ui-strip-plot-54u7AUip.js +0 -2
- package/dist/vue-ui-table-sparkline-CTfYTzhA.js +0 -1
- package/dist/vue-ui-thermometer-BpFbPqxK.js +0 -1
- package/dist/vue-ui-tiremarks-C4wVcSVP.js +0 -1
- package/dist/vue-ui-treemap-mYRv6gga.js +0 -1
- package/dist/vue-ui-waffle-DNBIZqZz.js +0 -1
- package/dist/vue-ui-wheel-DPHDp0t1.js +0 -1
- package/dist/vue-ui-word-cloud-BY4YsW7-.js +0 -4
- package/dist/vue-ui-xy-M9aD-G5a.js +0 -24
- package/dist/vue-ui-xy-canvas-BpwG1Ipj.js +0 -9
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,Bt as r,Ht as i,It as a,J as ee,Jt as o,O as te,S as ne,X as re,at as s,b as ie,f as ae,i as oe,in as se,rn as ce,t as le,w as ue,yt as de,zt as fe}from"./lib-DqD8nbyX.js";import{n as pe,t as me}from"./BaseScanner-8NdoBs7B.js";import{n as he}from"./useHints-BH9r_0Vd.js";import{t as ge}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as _e}from"./resolveChartConfig-ChGWTt5l.js";import{t as ve}from"./chartImage-r-G4CkRK.js";import{n as ye}from"./Title-BLA0tM3g.js";import{t as be}from"./useChartExport-DtPNpc9M.js";import{n as xe,t as Se}from"./annotationSlots-BRR85CqJ.js";import{n as Ce,t as we}from"./userOptionsSlots-DYuo-E5m.js";import{t as Te}from"./usePrinter-Cj4eIYC_.js";import{l as Ee,t as De}from"./useResponsive-D2CPcpda.js";import{t as Oe}from"./DefGrad-DKMq1REY.js";import{t as ke}from"./useUserOptionState-CXlFnwPv.js";import{t as Ae}from"./useChartAccessibility-DOMuYJfm.js";import{t as je}from"./usePrefersMotion-XLHwega2.js";import{t as Me}from"./useAutoSizeLabelsInsideViewbox-AIRF0PlD.js";import{t as Ne}from"./vue_ui_gauge-BJhb6yqE.js";import{Fragment as c,computed as l,createBlock as u,createCommentVNode as d,createElementBlock as f,createElementVNode as p,createSlots as Pe,createVNode as Fe,defineAsyncComponent as Ie,guardReactiveProps as m,mergeProps as h,nextTick as Le,normalizeClass as Re,normalizeProps as ze,normalizeStyle as Be,onBeforeUnmount as Ve,onMounted as He,openBlock as g,ref as _,renderList as v,renderSlot as y,shallowRef as Ue,toDisplayString as b,toRefs as We,unref as x,watch as S,withCtx as Ge}from"vue";var Ke=/* @__PURE__ */ e({default:()=>wt}),qe=[`id`],Je={key:0},Ye=[`xmlns`,`viewBox`],Xe=[`width`,`height`],Ze=[`id`],Qe=[`stdDeviation`],$e={key:1},et=[`d`,`fill`,`stroke`],tt=[`d`,`fill`,`stroke`],nt=[`d`,`fill`],rt=[`id`,`d`],it=[`fill`,`font-size`,`font-weight`],at=[`href`,`startOffset`],ot=[`text-anchor`,`fill`,`font-size`,`font-weight`,`innerHTML`],st=[`d`,`filter`],ct=[`stroke`,`stroke-width`],lt=[`stroke`,`stroke-width`],ut=[`stroke`,`stroke-width`],dt=[`stroke`,`stroke-width`],ft={key:8},pt=[`x`,`y`,`text-anchor`,`font-size`,`font-weight`,`fill`],mt=[`x`,`y`,`font-size`,`font-weight`,`fill`],ht={key:0},gt=[`x1`,`y1`,`x2`,`y2`,`stroke`,`stroke-width`],_t=[`x1`,`y1`,`x2`,`y2`,`stroke`,`stroke-width`],vt=[`x1`,`y1`,`x2`,`y2`,`stroke-width`,`filter`],yt={key:1},bt=[`d`,`fill`,`stroke`,`stroke-width`],xt=[`cx`,`cy`,`fill`,`r`,`stroke-width`,`stroke`],St=[`x`,`y`,`font-size`,`fill`],Ct={key:4,class:`vue-data-ui-watermark`},wt=/*#__PURE__*/ ge({__name:`vue-ui-gauge`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`copyAlt`],setup(e,{expose:ge,emit:Ke}){let wt=Ie(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Tt=Ie(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),Et=Ie(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),{vue_ui_gauge:Dt}=t(),Ot=je(),C=e,kt=Ke,At=l(()=>!!C.dataset&&Object.keys(C.dataset).length>0&&C.dataset.series&&C.dataset.series.length),w=_(re()),jt=_(null),Mt=_(0),T=_(null),Nt=_(null),Pt=_(null),Ft=_(null),It=_(null),Lt=_(0),E=_(Wt()),D=l(()=>E.value.style.chart.layout.segmentSeparators),O=l(()=>E.value.style.chart.layout.segmentNames),k=l(()=>E.value.style.chart.layout.markers),A=l(()=>E.value.style.chart.layout.pointer),j=l(()=>E.value.style.chart.layout),M=l(()=>E.value.style.chart);he({config:()=>E.value,dataset:()=>C.dataset,component:`VueUiGauge`,rules:[{test:e=>e?.series&&e.series?.length>6,message:[`👀 The number of steps is > 6, which can make the chart hard to read and labels overlap. Consider:`,``,`▶️ Using broader steps.`]}]});let Rt=l(()=>E.value.userOptions.useCursorPointer),zt=l(()=>se({defaultConfig:{userOptions:{show:!1},style:{chart:{backgroundColor:`#99999930`,animation:{use:!1},layout:{markers:{show:!1},segmentSeparators:{stroke:`#6A6A6A`},segmentNames:{show:!1},indicatorArc:{fill:`#6A6A6A50`},pointer:{stroke:`#6A6A6A`,useRatingColor:!0,circle:{stroke:`#6A6A6A`,color:`#6A6A6A`}}},legend:{show:!1}}}},userConfig:E.value.skeletonConfig??{}})),{loading:Bt,FINAL_DATASET:N,manualLoading:P}=pe({...We(C),FINAL_CONFIG:E,prepareConfig:Wt,callback:()=>{Promise.resolve().then(async()=>{await Le()})},skeletonDataset:C.config?.skeletonDataset??{value:0,series:[{from:-1,to:0,name:`_`,color:`#A1A1A1`},{from:0,to:1,name:`__`,color:`#CACACA`}]},skeletonConfig:se({defaultConfig:E.value,userConfig:zt.value})}),{userOptionsVisible:Vt,setUserOptionsVisibility:Ht,keepUserOptionState:Ut}=ke({config:E.value}),{svgRef:F}=Ae({config:M.value.title});S(()=>C.config,e=>{Bt.value||(E.value=Wt()),Vt.value=!E.value.userOptions.showOnChartHover,tn(),Lt.value+=1},{deep:!0}),S(()=>C.dataset,e=>{tn(),e&&Object.keys(e).length>0&&(P.value=E.value?.loading??!1)},{deep:!0,immediate:!1});function Wt(){return _e(C.config,Dt,Ne)}let{isPrinting:Gt,isImaging:Kt,generatePdf:qt,generateImage:Jt}=Te({elementId:`vue-ui-gauge_${w.value}`,fileName:M.value.title.text||`vue-ui-gauge`,options:E.value.userOptions.print}),Yt=l(()=>E.value.userOptions.show&&!M.value.title.text),Xt=l(()=>ue(E.value.customPalette)),I=l(()=>{if(fe(N.value.series||{}))return{value:0,series:[{from:0,to:0}]};let e=[];(N.value.series||[]).forEach(t=>{e.push(t.from||1e-7),e.push(t.to||1e-7)});let t=Math.max(...e);return{...N.value,series:(N.value.series||[]).map((e,n)=>({...e,color:ne(e.color)||Xt.value[n]||i[n],value:((e.to||0)-(e.from||0))/t*100}))}}),L=_(512),R=_({height:358.4,width:L.value,top:0,bottom:358.4,centerX:179.2,centerY:L.value/2,labelFontSize:18,legendFontSize:M.value.legend.fontSize,pointerRadius:A.value.circle.radius,trackSize:j.value.track.size,pointerSize:A.value.size,pointerStrokeWidth:A.value.strokeWidth,markerOffset:k.value.offsetY+3,segmentFontSize:O.value.fontSize}),z=_(0),B=_(0),V=l(()=>M.value.animation.use&&!Ot.value),H=_(V.value?Math.min(...N.value.series.map(e=>e.from)):N.value.value),U=null;function Zt(){U!==null&&(cancelAnimationFrame(U),U=null)}S(V,e=>{e||(Zt(),H.value=N.value.value)}),S(()=>N.value.value,()=>{nn(N.value.value)});let W=l(()=>{let e=R.value.width/2,t=Y.value.base,n=Math.PI*((H.value+0-B.value)/(z.value-B.value))+Math.PI;return{x1:e,y1:t,x2:e+Y.value.pointerSize*R.value.pointerSize*.9*Math.cos(n),y2:t+Y.value.pointerSize*R.value.pointerSize*.9*Math.sin(n)}}),Qt=l(()=>{let e=R.value.width/2,t=Y.value.base,n=Math.PI*((H.value+0-B.value)/(z.value-B.value))+Math.PI,r=e+Y.value.pointerSize*R.value.pointerSize*.9*Math.cos(n),i=t+Y.value.pointerSize*R.value.pointerSize*.9*Math.sin(n),a=R.value.pointerRadius,ee=e+a*Math.cos(n+Math.PI/2),o=t+a*Math.sin(n+Math.PI/2),te=e+a*Math.cos(n-Math.PI/2),ne=t+a*Math.sin(n-Math.PI/2);return isNaN(r)?null:`M ${r},${i} ${ee},${o} ${te},${ne} Z`}),$t=l(()=>{for(let e=0;e<I.value.series.length;e+=1){let{color:t,from:n,to:r}=I.value.series[e];if(H.value>=n&&H.value<=r)return t}return`#2D353C`}),G=Ue(null),K=Ue(null),q=l({get:()=>R.value.segmentFontSize,set:e=>e}),{autoSizeLabels:en}=Me({svgRef:F,fontSize:R.value.segmentFontSize,minFontSize:O.value.minFontSize,sizeRef:q,labelClass:`.vue-ui-gauge-label-flat`}),J=l(()=>E.value.debug);function tn(){let e=!1;if(fe(C.dataset)?(s({componentName:`VueUiGauge`,type:`dataset`,debug:J.value}),P.value=!0,e=!0):(de({datasetObject:C.dataset,requiredAttributes:[`value`,`series`]}).forEach(t=>{s({componentName:`VueUiGauge`,type:`datasetAttribute`,property:t,debug:J.value}),P.value=!0,e=!0}),Object.hasOwn(C.dataset,`series`)&&(C.dataset.series.length?C.dataset.series.forEach((t,n)=>{de({datasetObject:t,requiredAttributes:[`from`,`to`]}).forEach(t=>{s({componentName:`VueUiGauge`,type:`datasetSerieAttribute`,property:t,index:n,debug:J.value}),P.value=!0,e=!0})}):(s({componentName:`VueUiGauge`,type:`datasetAttributeEmpty`,property:`series`,debug:J.value}),P.value=!0,e=!0))),P.value=e,nn(N.value.value||0),E.value.responsive){let e=Ee(()=>{let{width:e,height:t}=De({chart:T.value,title:M.value.title.text?Nt.value:null,legend:Pt.value,source:Ft.value,noTitle:It.value});t-=12,requestAnimationFrame(()=>{R.value.width=e,R.value.height=t,R.value.centerX=e/2,R.value.centerY=L.value/2/358.4*t,R.value.bottom=t,R.value.labelFontSize=18/L.value*Math.min(t,e)<10?10:18/L.value*Math.min(t,e),R.value.legendFontSize=M.value.legend.fontSize/L.value*Math.min(t,e)<14?14:M.value.legend.fontSize/L.value*Math.min(t,e),R.value.pointerRadius=A.value.circle.radius/L.value*Math.min(t,e),R.value.trackSize=j.value.track.size/L.value*Math.min(t,e),R.value.pointerStrokeWidth=ce({relator:Math.min(e,t),adjuster:L.value,source:A.value.strokeWidth,threshold:2,fallback:2}),R.value.markerOffset=ce({relator:Math.max(e,t),adjuster:L.value,source:k.value.offsetY+3,threshold:2,fallback:2}),R.value.segmentFontSize=ce({relator:Math.min(e,t),adjuster:L.value,source:O.value.fontSize,threshold:8,fallback:8})}),en()});G.value&&(K.value&&G.value.unobserve(K.value),G.value.disconnect()),G.value=new ResizeObserver(e),K.value=T.value.parentNode,G.value.observe(K.value)}en()}He(()=>{tn()}),Ve(()=>{Zt(),G.value&&(K.value&&G.value.unobserve(K.value),G.value.disconnect())});function nn(e){let t=[];if((I.value.series||[]).forEach(e=>{t.push(e.from||0),t.push(e.to||0)}),z.value=Math.max(...t),B.value=Math.min(...t),Zt(),!V.value){H.value=e;return}let n=M.value.animation.speed,r=Math.abs(e-H.value)/(n*60);function i(){if(!V.value){H.value=e,U=null;return}H.value<e?H.value=Math.min(H.value+r,e):H.value>e&&(H.value=Math.max(H.value-r,e)),U=H.value===e?null:requestAnimationFrame(i)}i()}let Y=l(()=>{let e=E.value.responsive?Math.min(R.value.width,R.value.height):R.value.width,t=2.5/j.value.radiusRatio;return{arcs:e/t,gradients:e/(t*1.1),base:E.value.responsive?R.value.height/1.618:R.value.height*.7,ratingBase:E.value.responsive?R.value.height/2+R.value.height/4:R.value.height*.9,pointerSize:E.value.responsive?Math.min(R.value.width,R.value.height)/3:R.value.width/3.2}}),X=l(()=>a({series:I.value.series},R.value.width/2,Y.value.base,Y.value.arcs,Y.value.arcs,1,1,1,180,109.9495,40*R.value.trackSize)),rn=l(()=>a({series:I.value.series},R.value.width/2,Y.value.base,Y.value.arcs*O.value.offsetRatio,Y.value.arcs*O.value.offsetRatio,1,1,1,180,109.9495,40*R.value.trackSize)),Z=l(()=>X.value.map(e=>Y.value.arcs*O.value.offsetRatio*(e.nameOffsetRatio||1))),an=l(()=>{let{x:e,y:t}=r({initX:X.value[0].firstSeparator.x,initY:X.value[0].firstSeparator.y,centerX:W.value.x1,centerY:W.value.y1,offset:-D.value.offsetIn}),{x:n,y:i}=r({initX:X.value[0].startX,initY:X.value[0].startY,centerX:W.value.x1,centerY:W.value.y1,offset:D.value.offsetOut});return{x1:e,y1:t,x2:n,y2:i}}),on=l(()=>X.value.map(e=>{let{x:t,y:n}=r({initX:e.separator.x,initY:e.separator.y,centerX:W.value.x1,centerY:W.value.y1,offset:-D.value.offsetIn}),{x:i,y:a}=r({initX:e.endX,initY:e.endY,centerX:W.value.x1,centerY:W.value.y1,offset:D.value.offsetOut});return{x1:t,y1:n,x2:i,y2:a}}));function sn(e){if(e.reduce((e,t)=>e+t,0)>100)throw Error(`Total % must not exceed 100`);let t=0;return e.map(e=>(t+=e,`${t/100*50-e/4}%`))}let cn=l(()=>sn(X.value.map(e=>e.proportion*100))),ln=l(()=>a({series:I.value.series},R.value.width/2,Y.value.base,Y.value.gradients,Y.value.gradients,.95,1,1,180,110.02,2*R.value.trackSize)),un=l(()=>{let e=B.value>=0?-B.value:Math.abs(B.value);return te({radius:j.value.indicatorArc.radius*R.value.trackSize,centerX:R.value.width/2,centerY:Y.value.base,percentage:ie((H.value+e)/(z.value+e))})}),Q=_(!1);function dn(e){Q.value=e,Mt.value+=1}let $=_(!1);function fn(){$.value=!$.value}let pn=ve(T,()=>M.value.title.text),mn=l(()=>M.value.backgroundColor),hn=l(()=>M.value.title),{isCallbackImaging:gn,isCallbackSvg:_n,generateSvg:vn,onGenerateImage:yn}=be({svg:F,title:hn,legend:null,legendItems:null,backgroundColor:mn,getSvgCallback:()=>E.value.userOptions.callbacks.svg,generateImage:Jt});async function bn(){if(kt(`copyAlt`,{config:E.value,dataset:I.value}),!E.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(E.value.userOptions.callbacks.altCopy({config:E.value,dataset:I.value}))}return ge({getImage:pn,generatePdf:qt,generateImage:Jt,generateSvg:vn,toggleAnnotator:fn,toggleFullscreen:dn,copyAlt:bn}),(e,t)=>(g(),f(`div`,{class:Re(`vue-data-ui-component vue-ui-gauge ${Q.value?`vue-data-ui-wrapper-fullscreen`:``}`),ref_key:`gaugeChart`,ref:T,id:`vue-ui-gauge_${w.value}`,style:Be(`font-family:${E.value.style.fontFamily};width:100%; text-align:center;background:${M.value.backgroundColor};${E.value.responsive?`height: 100%`:``}`),onMouseenter:t[0]||=()=>x(Ht)(!0),onMouseleave:t[1]||=()=>x(Ht)(!1)},[E.value.userOptions.buttons.annotator?(g(),u(x(wt),{key:0,svgRef:x(F),backgroundColor:M.value.backgroundColor,color:M.value.color,active:$.value,isCursorPointer:Rt.value,palette:E.value.userOptions.annotatorPalette,onClose:fn},Pe({_:2},[v(x(Se),t=>({name:t,fn:Ge(n=>[y(e.$slots,t,ze(m(x(xe)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):d(``,!0),Yt.value?(g(),f(`div`,{key:1,ref_key:`noTitle`,ref:It,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):d(``,!0),M.value.title.text?(g(),f(`div`,{key:2,ref_key:`chartTitle`,ref:Nt,style:`width:100%;background:transparent;padding-bottom:12px`},[(g(),u(ye,{key:`title_${Lt.value}`,config:{title:{cy:`gauge-div-title`,...M.value.title},subtitle:{cy:`gauge-div-subtitle`,...M.value.title.subtitle}}},{default:Ge(()=>[E.value.translations.base&&x(N).base?(g(),f(`span`,Je,b(E.value.translations.base)+`: `+b(x(N).base),1)):d(``,!0)]),_:1},8,[`config`]))],512)):d(``,!0),E.value.userOptions.show&&At.value&&(x(Ut)||x(Vt))?(g(),u(x(Tt),{ref_key:`details`,ref:jt,key:`user_options_${Mt.value}`,backgroundColor:M.value.backgroundColor,color:M.value.color,isImaging:x(Kt),isPrinting:x(Gt),uid:w.value,hasXls:!1,hasPdf:E.value.userOptions.buttons.pdf,hasImg:E.value.userOptions.buttons.img,hasSvg:E.value.userOptions.buttons.svg,hasFullscreen:E.value.userOptions.buttons.fullscreen,hasAltCopy:E.value.userOptions.buttons.altCopy,isFullscreen:Q.value,titles:{...E.value.userOptions.buttonTitles},chartElement:T.value,callbacks:E.value.userOptions.callbacks,printScale:E.value.userOptions.print.scale,position:E.value.userOptions.position,hasAnnotator:E.value.userOptions.buttons.annotator,isAnnotation:$.value,isCursorPointer:Rt.value,onToggleFullscreen:dn,onGeneratePdf:x(qt),onGenerateImage:x(yn),onGenerateSvg:x(vn),onToggleAnnotator:fn,onCopyAlt:bn,style:Be({visibility:x(Ut)?x(Vt)?`visible`:`hidden`:`visible`})},Pe({_:2},[v(x(Ce)(e.$slots,`menuIcon optionPdf optionImg optionSvg optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:Ge(n=>[y(e.$slots,t,ze(m(x(we)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isImaging`,`isPrinting`,`uid`,`hasPdf`,`hasImg`,`hasSvg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`titles`,`chartElement`,`callbacks`,`printScale`,`position`,`hasAnnotator`,`isAnnotation`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):d(``,!0),(g(),f(`svg`,{ref_key:`svgRef`,ref:F,xmlns:x(le),class:Re({"vue-data-ui-fullscreen--on":Q.value,"vue-data-ui-fulscreen--off":!Q.value}),viewBox:`0 0 ${R.value.width<=0?10:R.value.width} ${R.value.height<=0?10:R.value.height}`,style:Be(`max-width:100%;overflow:hidden !important;background:transparent;color:${M.value.color}`)},[Fe(x(Et)),e.$slots[`chart-background`]?(g(),f(`foreignObject`,{key:0,x:0,y:0,width:R.value.width<=0?10:R.value.width,height:R.value.height<=0?10:R.value.height,style:{pointerEvents:`none`}},[y(e.$slots,`chart-background`,{},void 0,!0)],8,Xe)):d(``,!0),p(`defs`,null,[Fe(Oe,{t:`radial`,id:`gradient_${w.value}`,cx:`50%`,cy:`50%`,r:`50%`,fx:`50%`,fy:`50%`,stops:[[`0%`,x(o)(`#FFFFFF`,1),1],[`80%`,x(o)(`#FFFFFF`,j.value.track.gradientIntensity),1],[`100%`,x(o)(`#FFFFFF`,1),1]]},null,8,[`id`,`stops`])]),p(`defs`,null,[p(`filter`,{id:`blur_${w.value}`,x:`-50%`,y:`-50%`,width:`200%`,height:`200%`},[p(`feGaussianBlur`,{in:`SourceGraphic`,stdDeviation:100/j.value.track.gradientIntensity},null,8,Qe)],8,Ze)]),e.$slots.pattern?(g(),f(`g`,$e,[(g(!0),f(c,null,v(X.value,(t,n)=>(g(),f(`defs`,null,[y(e.$slots,`pattern`,h({ref_for:!0},{seriesIndex:n,patternId:`pattern_${w.value}_${n}`}),void 0,!0)]))),256))])):d(``,!0),(g(!0),f(c,null,v(X.value,(e,t)=>(g(),f(`path`,{key:`arc_${t}`,d:e.arcSlice,fill:e.color,stroke:M.value.backgroundColor,"stroke-linecap":`round`},null,8,et))),128)),e.$slots.pattern?(g(!0),f(c,{key:2},v(X.value,(e,t)=>(g(),f(`path`,{key:`arc_${t}`,d:e.arcSlice,fill:`url(#pattern_${w.value}_${t})`,stroke:M.value.backgroundColor,"stroke-linecap":`round`},null,8,tt))),128)):d(``,!0),j.value.indicatorArc.show?(g(),f(`path`,{key:3,d:un.value,fill:j.value.indicatorArc.fill},null,8,nt)):d(``,!0),O.value.show&&O.value.curved?(g(),f(c,{key:4},[(g(!0),f(c,null,v(X.value,(e,t)=>(g(),f(`path`,{id:`curve_${w.value}_${t}`,d:`M ${W.value.x1},${W.value.y1} m -${Z.value[t]},0 a ${Z.value[t]},${Z.value[t]} 0 1,1 ${2*Z.value[t]},0 a ${Z.value[t]},${Z.value[t]} 0 1,1 -${2*Z.value[t]},0`,fill:`transparent`},null,8,rt))),256)),(g(!0),f(c,null,v(X.value,(e,t)=>(g(),f(`text`,{fill:O.value.useSerieColor?e.color:O.value.color,"font-size":q.value,"font-weight":O.value.bold?`bold`:`normal`,"text-anchor":`middle`},[p(`textPath`,{href:`#curve_${w.value}_${t}`,startOffset:cn.value[t]},b(e.name||``),9,at)],8,it))),256))],64)):d(``,!0),O.value.show&&!O.value.curved?(g(!0),f(c,{key:5},v(rn.value,(e,t)=>(g(),f(`text`,{class:`vue-ui-gauge-label-flat`,"text-anchor":x(ae)(e,!1,12).anchor,fill:O.value.useSerieColor?e.color:O.value.color,"font-size":q.value,"font-weight":O.value.bold?`bold`:`normal`,innerHTML:x(ee)({content:String(e.name??``),fontSize:q.value,fill:O.value.useSerieColor?e.color:O.value.color,x:e.center.endX,y:e.center.endY})},null,8,ot))),256)):d(``,!0),j.value.track.useGradient?(g(!0),f(c,{key:6},v(ln.value,(e,t)=>(g(),f(`path`,{key:`arc_${t}`,d:e.arcSlice,fill:`#FFFFFF`,stroke:`none`,"stroke-linecap":`round`,filter:`url(#blur_${w.value})`},null,8,st))),128)):d(``,!0),D.value.show?(g(),f(c,{key:7},[p(`line`,h(an.value,{stroke:M.value.backgroundColor,"stroke-width":D.value.strokeWidth+2,"stroke-linecap":`round`}),null,16,ct),p(`line`,h(an.value,{stroke:D.value.stroke,"stroke-width":D.value.strokeWidth,"stroke-linecap":`round`}),null,16,lt),(g(!0),f(c,null,v(on.value,e=>(g(),f(`line`,h({ref_for:!0},e,{stroke:M.value.backgroundColor,"stroke-width":D.value.strokeWidth+2,"stroke-linecap":`round`}),null,16,ut))),256)),(g(!0),f(c,null,v(on.value,e=>(g(),f(`line`,h({ref_for:!0},e,{stroke:D.value.stroke,"stroke-width":D.value.strokeWidth,"stroke-linecap":`round`}),null,16,dt))),256))],64)):d(``,!0),k.value.show?(g(),f(`g`,ft,[(g(!0),f(c,null,v(X.value,(e,t)=>(g(),f(`text`,{x:x(r)({centerX:W.value.x1,centerY:Y.value.base,initX:e.center.startX,initY:e.center.startY,offset:R.value.markerOffset}).x,y:x(r)({centerX:W.value.x1,centerY:Y.value.base,initX:e.center.startX,initY:e.center.startY,offset:R.value.markerOffset}).y,"text-anchor":e.center.startX<W.value.x1-5?`end`:e.center.startX>W.value.x1+5?`start`:`middle`,"font-size":R.value.labelFontSize*k.value.fontSizeRatio,"font-weight":`${k.value.bold?`bold`:`normal`}`,fill:k.value.color},b(x(oe)(k.value.formatter,e.from,x(n)({p:k.value.prefix,v:e.from,s:k.value.suffix,r:k.value.roundingValue}))),9,pt))),256))])):d(``,!0),k.value.show?(g(),f(`text`,{key:9,x:x(r)({centerX:R.value.width/2,centerY:Y.value.base,initX:X.value.at(-1).endX,initY:X.value.at(-1).endY,offset:R.value.markerOffset}).x,y:x(r)({centerX:R.value.width/2,centerY:Y.value.base,initX:X.value.at(-1).endX,initY:X.value.at(-1).endY,offset:R.value.markerOffset}).y,"text-anchor":`start`,"font-size":R.value.labelFontSize*k.value.fontSizeRatio,"font-weight":`${k.value.bold?`bold`:`normal`}`,fill:k.value.color},b(x(oe)(k.value.formatter,z.value,x(n)({p:k.value.prefix,v:z.value,s:k.value.suffix,r:k.value.roundingValue}))),9,mt)):d(``,!0),A.value.show?(g(),f(c,{key:10},[A.value.type===`rounded`?(g(),f(`g`,ht,[isNaN(W.value.x2)?d(``,!0):(g(),f(`line`,{key:0,x1:W.value.x1,y1:W.value.y1,x2:W.value.x2,y2:W.value.y2,stroke:A.value.stroke,"stroke-width":R.value.pointerStrokeWidth,"stroke-linecap":`round`},null,8,gt)),isNaN(W.value.x2)?d(``,!0):(g(),f(`line`,{key:1,x1:W.value.x1,y1:W.value.y1,x2:W.value.x2,y2:W.value.y2,stroke:A.value.useRatingColor?$t.value:A.value.color,"stroke-linecap":`round`,"stroke-width":R.value.pointerStrokeWidth*.7},null,8,_t)),!isNaN(W.value.x2)&&j.value.track.useGradient?(g(),f(`line`,{key:2,x1:W.value.x1,y1:W.value.y1,x2:W.value.x2,y2:W.value.y2,stroke:`white`,"stroke-linecap":`round`,"stroke-width":R.value.pointerStrokeWidth*.3,filter:`url(#blur_${w.value})`},null,8,vt)):d(``,!0)])):(g(),f(`g`,yt,[Qt.value?(g(),f(`path`,{key:0,d:Qt.value,fill:A.value.useRatingColor?$t.value:A.value.color,stroke:A.value.stroke,"stroke-width":A.value.circle.strokeWidth,"stroke-linejoin":`round`},null,8,bt)):d(``,!0)])),p(`circle`,{cx:R.value.width/2,cy:Y.value.base,fill:A.value.circle.color,r:R.value.pointerRadius<=0?1e-4:R.value.pointerRadius,"stroke-width":A.value.circle.strokeWidth,stroke:A.value.circle.stroke},null,8,xt)],64)):d(``,!0),M.value.legend.show?(g(),f(`text`,{key:11,x:R.value.width/2,y:Y.value.ratingBase,"text-anchor":`middle`,"font-size":R.value.legendFontSize,"font-weight":`bold`,fill:M.value.legend.useRatingColor?$t.value:M.value.legend.color},b(x(oe)(M.value.legend.formatter,H.value,x(n)({p:M.value.legend.prefix+(M.value.legend.showPlusSymbol&&H.value>0?`+`:``),v:H.value,s:M.value.legend.suffix,r:M.value.legend.roundingValue}))),9,St)):d(``,!0),y(e.$slots,`svg`,{svg:{...R.value,isPrintingImg:x(Gt)||x(Kt)||x(gn),isPrintingSvg:x(_n)}},void 0,!0)],14,Ye)),e.$slots.watermark?(g(),f(`div`,Ct,[y(e.$slots,`watermark`,ze(m({isPrinting:x(Gt)||x(Kt)||x(gn)||x(_n)})),void 0,!0)])):d(``,!0),p(`div`,{ref_key:`chartLegend`,ref:Pt},[y(e.$slots,`legend`,{legend:I.value},void 0,!0)],512),e.$slots.source?(g(),f(`div`,{key:5,ref_key:`source`,ref:Ft,dir:`auto`},[y(e.$slots,`source`,{},void 0,!0)],512)):d(``,!0),y(e.$slots,`skeleton`,{},()=>[x(Bt)?(g(),u(me,{key:0})):d(``,!0)],!0)],46,qe))}},[[`__scopeId`,`data-v-85396984`]]);export{Ke as n,wt as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{Dt as n,S as r,X as i,Zt as a,in as o,t as s,tn as c}from"./lib-DqD8nbyX.js";import{n as l,t as u}from"./BaseScanner-8NdoBs7B.js";import{n as d}from"./useHints-BH9r_0Vd.js";import{t as f}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as p}from"./resolveChartConfig-ChGWTt5l.js";import{t as ee}from"./chartImage-r-G4CkRK.js";import{t as te}from"./BaseZoomControls-Cq5AOHQ0.js";import{n as ne}from"./Title-BLA0tM3g.js";import{t as re}from"./useChartExport-DtPNpc9M.js";import{n as ie,t as ae}from"./annotationSlots-BRR85CqJ.js";import{n as oe,t as se}from"./userOptionsSlots-DYuo-E5m.js";import{t as ce}from"./usePrinter-Cj4eIYC_.js";import{l as le,t as ue}from"./useResponsive-D2CPcpda.js";import{t as de}from"./A11yDataTable-DWNlWXzs.js";import{t as fe}from"./useUserOptionState-CXlFnwPv.js";import{t as pe}from"./useChartAccessibility-DOMuYJfm.js";import{t as me}from"./usePanZoom-BdjP5Suc.js";import{t as he}from"./geoProjections-Bvj-eMvq.js";import{t as ge}from"./vue_ui_geo-DL1SMQHp.js";import{Fragment as _e,computed as m,createBlock as h,createCommentVNode as g,createElementBlock as _,createElementVNode as v,createSlots as ve,createVNode as ye,defineAsyncComponent as be,guardReactiveProps as y,mergeProps as xe,nextTick as Se,normalizeClass as Ce,normalizeProps as b,normalizeStyle as we,onBeforeUnmount as Te,onMounted as Ee,openBlock as x,ref as S,renderList as C,renderSlot as w,toDisplayString as De,toRefs as Oe,unref as T,watch as ke,withCtx as Ae}from"vue";var je=/* @__PURE__ */ e({default:()=>Ge}),Me=[`id`],Ne=[`id`],Pe={style:{position:`relative`}},Fe=[`xmlns`,`viewBox`,`aria-describedby`,`id`],Ie=[`transform`],Le=[`d`,`fill`,`stroke`,`stroke-width`,`onMouseenter`,`onMouseleave`,`onClick`],Re=[`d`,`stroke`,`stroke-width`,`onMouseenter`,`onMouseleave`,`onClick`],ze=[`cx`,`cy`,`r`,`fill`,`stroke`,`stroke-width`,`onMouseenter`],Be=[`cx`,`cy`,`r`,`fill`,`stroke`,`stroke-width`,`onMouseenter`,`onMouseleave`,`onClick`],Ve=[`x`,`y`,`fill`,`font-size`],He={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Ue={key:6,class:`vue-data-ui-watermark`},We=1.5,Ge=/*#__PURE__*/ f({__name:`vue-ui-geo`,props:{config:{type:Object,default(){return{}}},dataset:{type:[Array,Object],default(){return[]}}},emits:[`copyAlt`],setup(e,{expose:f,emit:je}){let Ge=be(()=>import(`./Tooltip-Iyb_S6oQ.js`)),Ke=be(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),qe=be(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Je=be(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),E=e,Ye=je,{vue_ui_geo:Xe}=t(),D=S(i()),Ze=S(0),Qe=S(0),O=S(null),k=S(!1),$e=S(null),et=S(null),tt=S(null),nt=S(null),A=S(null),j=S(null),rt=S(null),it=S(null),M=S(null),at=S({x:0,y:0}),N=S(`pointer`),ot=S(!1),P=S(!1);function st(e){P.value=e,Ze.value+=1}function ct(){return p(E.config,Xe,ge)}let F=S(ct()),lt=m(()=>F.value.style.chart.points.labels),I=m(()=>F.value.style.chart.points),L=m(()=>F.value.style.chart);d({config:()=>F.value,dataset:()=>E.dataset,component:`VueUiGeo`,rules:[{test:e=>e.length>100,message:[`👀 The number of data points > 100, which can make the chart hard to read. Consider:`,``,`▶️ Using filters to reduce the number of data points displayed at the same time, and offer users some level of control.`]}]});let ut=m(()=>F.value.userOptions.useCursorPointer),{userOptionsVisible:dt,keepUserOptionState:ft}=fe({config:F.value}),{svgRef:R}=pe({config:L.value.title}),pt=m(()=>o({defaultConfig:{map:{geoJson:{type:`FeatureCollection`,features:[{type:`Feature`,properties:{name:`Island A`},geometry:{type:`Polygon`,coordinates:[[[-6,2],[-4,2],[-4,4],[-6,4],[-6,2]]]}},{type:`Feature`,properties:{name:`Island B`},geometry:{type:`Polygon`,coordinates:[[[-2,-1],[1,-1],[1,2],[-2,2],[-2,-1]]]}},{type:`Feature`,properties:{name:`Island C`},geometry:{type:`Polygon`,coordinates:[[[3,-3],[5,-3],[5,-1],[3,-1],[3,-3]]]}},{type:`Feature`,properties:{name:`Island D`},geometry:{type:`Polygon`,coordinates:[[[4,3],[7,3],[7,5],[4,5],[4,3]]]}}]}},userOptions:{show:!1},style:{chart:{backgroundColor:`#99999930`,territory:{fill:`#99999950`,stroke:`#8A8A8A`,strokeWidth:.5}}}},userConfig:F.value.skeletonConfig??{}})),{loading:mt,FINAL_DATASET:ht}=l({...Oe(E),FINAL_CONFIG:F,prepareConfig:ct,allowEmptyDataset:!0,skeletonDataset:E.config?.skeletonDataset??[],skeletonConfig:o({defaultConfig:F.value,userConfig:pt.value})}),{isPrinting:gt,isImaging:_t,generatePdf:vt,generateImage:yt}=ce({elementId:`vue-ui-geo_${D.value}`,fileName:L.value.title.text||`vue-ui-geo`,options:F.value.userOptions.print}),bt=m(()=>L.value.controls.show?L.value.controls.position===`top`?rt.value?.$el??null:L.value.controls.position===`bottom`?it.value?.$el??null:null:null);function xt(){A.value&&(j.value&&A.value.unobserve(j.value),A.value.disconnect(),A.value=null,j.value=null)}let z=m(()=>!!F.value.responsive&&!P.value);ke(()=>P.value,async e=>{if(e){xt(),H.value=Number(L.value.dimensions.width)||H.value,U.value=Number(L.value.dimensions.height)||U.value,await Se(),k.value=!1,requestAnimationFrame(()=>{k.value||on()});return}F.value.responsive&&(await Se(),St())});function St(){if(xt(),!z.value)return;let e=le(()=>{if(!O.value)return;let{width:e,height:t}=ue({chart:O.value,noTitle:Ct.value?tt.value:null,title:L.value.title.text?et.value:null,legend:bt.value,source:nt.value});requestAnimationFrame(()=>{H.value=Math.max(.1,Number(e)||.1),U.value=Math.max(.1,Number(t)||.1)-24})});A.value=new ResizeObserver(e),j.value=O.value?O.value.parentNode:null,j.value&&A.value.observe(j.value),e()}let Ct=m(()=>F.value.userOptions.show&&!L.value.title.text),B=S({showTooltip:L.value.tooltip.show}),V=S(L.value.zoom.active),wt=a(E.config);ke(()=>E.config,(e,t)=>{let n=a(e),r=n!==wt;wt=n;let i=ct();if(!r){F.value.style.chart.tooltip=i.style.chart.tooltip,B.value.showTooltip=F.value.style.chart.tooltip.show;return}F.value=i,B.value.showTooltip=L.value.tooltip.show,V.value=L.value.zoom.active,H.value=L.value.dimensions.width,U.value=L.value.dimensions.height,St(),Qe.value+=1,Ze.value+=1},{deep:!0});let{projections:Tt}=he,Et=m(()=>F.value?.projection||`equirectangular`),Dt=m(()=>{let e=Tt?.[Et.value];return typeof e==`function`?e:Tt.equirectangular}),Ot=m(()=>F.value.map.geoJson??null),kt={aitoff:{width:1e3,height:500},azimuthalEquidistant:{width:1e3,height:1e3},bonne:{width:1e3,height:1e3},equirectangular:{width:1e3,height:700},gallPeters:{width:1e3,height:800},globe:{width:1e3,height:1e3},hammer:{width:1e3,height:500},mercator:{width:1e3,height:750},mollweide:{width:1e3,height:600},robinson:{width:1e3,height:600},sinusoidal:{width:1e3,height:500},vanDerGrinten:{width:1e3,height:1e3},winkelTripel:{width:1e3,height:1e3}},H=S(L.value.dimensions.width),U=S(L.value.dimensions.height),At=m(()=>{let e=kt[Et.value]||kt.equirectangular;return{width:e.width,height:e.height}}),W=m(()=>{let e=At.value,t=H.value,n=U.value,r=Number.isFinite(t)&&t>0,i=Number.isFinite(n)&&n>0;return r&&i?{width:t,height:n}:r&&!i?{width:t,height:t*(e.height/e.width)}:!r&&i?{width:n*(e.width/e.height),height:n}:{width:e.width,height:e.height}}),jt=m(()=>{let e=F.value?.map?.center,t=[0,0];if(!Array.isArray(e)||e.length!==2)return t;let n=Number(e[0]),r=Number(e[1]);return!Number.isFinite(n)||!Number.isFinite(r)?t:[n,r]});function G([e,t]){return Dt.value([e,t],At.value.width,At.value.height,jt.value)}function Mt(e,t={}){let{defaultName:n=``,namePropertyCandidates:r=[`name`,`nom`,`admin`,`NAME`,`label`,`title`,`description`,`DESCRIPTION`,`NAME_1`,`NAME_2`,`NAME_3`,`NAME_EN`,`name:en`,`name_en`,`localname`,`local_name`],includeNullGeometries:i=!1}=t,a={type:`FeatureCollection`,features:[]};function o(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function s(e){return!o(e)||typeof e.type!=`string`?!1:e.type===`GeometryCollection`?Array.isArray(e.geometries):Object.hasOwn(e,`coordinates`)}function c(e){if(!o(e))return``;for(let t of r){let n=e[t];if(typeof n==`string`&&n.trim())return n.trim()}return``}function l({geometry:e,properties:t,fallbackName:r,featureIndex:i}){let a=o(t)?{...t}:{},s=c(a),l=n?`${n} ${i+1}`:``,u=s||(typeof r==`string`?r.trim():``)||l;return!a.name&&u&&(a.name=u),{type:`Feature`,geometry:e,properties:a}}function u(e,t,n,r,a){let c=Array.isArray(e?.geometries)?e.geometries:[],d=r;for(let e=0;e<c.length;e+=1){let r=c[e];if(r){if(o(r)&&r.type===`GeometryCollection`){d=u(r,t,n,d,a);continue}if(s(r)){if(r.coordinates==null&&r.type!==`GeometryCollection`){i&&(a.push(l({geometry:null,properties:t,fallbackName:n,featureIndex:d})),d+=1);continue}a.push(l({geometry:r,properties:t,fallbackName:n,featureIndex:d})),d+=1}}}return d}function d(e,t,n=0){let r=n;if(e==null)return r;if(Array.isArray(e)){for(let n of e)r=d(n,t,r);return r}if(!o(e)||typeof e.type!=`string`)return r;if(e.type===`FeatureCollection`){let n=Array.isArray(e.features)?e.features:[];for(let e of n)r=d(e,t,r);return r}if(e.type===`Feature`){let n=o(e.properties)?e.properties:{},a=c(n),d=e.geometry??null;return d==null?(i&&(t.push(l({geometry:null,properties:n,fallbackName:a,featureIndex:r})),r+=1),r):o(d)&&d.type===`GeometryCollection`?u(d,n,a,r,t):(s(d)&&(t.push(l({geometry:d,properties:n,fallbackName:a,featureIndex:r})),r+=1),r)}return e.type===`GeometryCollection`?u(e,{},``,r,t):(s(e)&&(t.push(l({geometry:e,properties:{},fallbackName:``,featureIndex:r})),r+=1),r)}let f=[];return d(e,f,0),{...a,features:f}}function Nt(e){let t=Array.isArray(e?.features)?e.features:[];function n(e){if(!e||typeof e!=`object`)return``;let t=[e.name,e.nom,e.admin,e.NAME,e.label,e.title,e.description,e.DESCRIPTION,e.NAME_1,e.NAME_2,e.NAME_3,e.NAME_EN,e[`name:en`],e.name_en,e.localname,e.local_name];for(let e of t)if(typeof e==`string`&&e.trim())return e.trim();for(let t of Object.values(e))if(typeof t==`string`&&t.trim())return t.trim();return``}return t.filter(e=>e&&e.type===`Feature`&&e.geometry).map((e,t)=>{let r=e.properties||{},i=n(r);return{feature:e,geometry:e.geometry,properties:r,name:i,uid:`map-feature-${D.value}-${t}`,index:t}})}let Pt=m(()=>Mt(Ot.value,{defaultName:``,includeNullGeometries:!1})),Ft=m(()=>Nt(Pt.value));function It(e){if(!e||typeof e.type!=`string`)return``;if(e.type===`GeometryCollection`)return(Array.isArray(e.geometries)?e.geometries:[]).map(e=>It(e)).filter(Boolean).join(` `);let t=e=>{if(!Array.isArray(e)||e.length<2)return null;let t=Number(e[0]),n=Number(e[1]);if(!Number.isFinite(t)||!Number.isFinite(n))return null;let r=G([t,n]);if(!Array.isArray(r)||r.length<2)return null;let i=Number(r[0]),a=Number(r[1]);return!Number.isFinite(i)||!Number.isFinite(a)?null:[i,a]},n=e=>{let n=(e||[]).map(t).filter(Boolean);return n.length<2?``:`M`+n.map(([e,t])=>`${e},${t}`).join(`L`)},r=e=>(e||[]).map(e=>{let t=n(e);return t?t+`Z`:``}).filter(Boolean).join(` `);return e.type===`Polygon`?r(e.coordinates):e.type===`MultiPolygon`?(e.coordinates||[]).map(r).filter(Boolean).join(` `):e.type===`LineString`?n(e.coordinates):e.type===`MultiLineString`?(e.coordinates||[]).map(n).filter(Boolean).join(` `):``}function Lt(e){return e?e.type===`GeometryCollection`?(Array.isArray(e.geometries)?e.geometries:[]).flatMap(e=>Lt(e)):e.type===`Point`?Array.isArray(e.coordinates)?[e.coordinates]:[]:e.type===`MultiPoint`&&Array.isArray(e.coordinates)?e.coordinates:[]:[]}function Rt(e){return!e||typeof e.type!=`string`?!1:e.type===`GeometryCollection`?(Array.isArray(e.geometries)?e.geometries:[]).some(e=>Rt(e)):e.type===`Point`||e.type===`MultiPoint`}let zt=m(()=>Ft.value.filter(e=>{let t=e.geometry;return t?t.type===`GeometryCollection`?(Array.isArray(t.geometries)?t.geometries:[]).some(e=>e?.type===`Polygon`||e?.type===`MultiPolygon`):t.type===`Polygon`||t.type===`MultiPolygon`:!1})),Bt=m(()=>Ft.value.filter(e=>{let t=e.geometry;return t?t.type===`GeometryCollection`?(Array.isArray(t.geometries)?t.geometries:[]).some(e=>e?.type===`LineString`||e?.type===`MultiLineString`):t.type===`LineString`||t.type===`MultiLineString`:!1})),Vt=m(()=>Ft.value.filter(e=>{let t=e.geometry;return t?Rt(t):!1})),Ht=m(()=>zt.value.map(e=>{let t=It(e.geometry);return t?{...e,path:t}:null}).filter(Boolean)),Ut=m(()=>Bt.value.map(e=>{let t=It(e.geometry);return t?{...e,path:t}:null}).filter(Boolean)),Wt=m(()=>{let e=[];function t(e={}){let t=e?.style&&typeof e.style==`object`?e.style:{},n=e.radius??e.r??t.radius??t.r,i=e.color??e.fill??t.color??t.fill,a=e.stroke??t.stroke,o=e.strokeWidth??e.stroke_width??t.strokeWidth??t.stroke_width;return{radius:Number.isFinite(Number(n))?Number(n):Number(I.value.radius),fill:i!=null&&String(i).trim()?r(String(i).trim()):I.value.fill,stroke:a!=null&&String(a).trim()?r(String(a).trim()):I.value.stroke,strokeWidth:Number.isFinite(Number(o))?Number(o):Number(I.value.strokeWidth)}}for(let n of Vt.value){let r=Lt(n.geometry);for(let i=0;i<r.length;i+=1){let a=r[i];if(!Array.isArray(a)||a.length<2)continue;let o=Number(a[0]),s=Number(a[1]);if(!Number.isFinite(o)||!Number.isFinite(s))continue;let c=G([o,s]),l=c?.[0],u=c?.[1];if(!Number.isFinite(l)||!Number.isFinite(u))continue;let d=t(n?.feature?.properties&&typeof n.feature.properties==`object`?n.feature.properties:{});e.push({uid:`${n.uid}-geojson-point-${i}`,name:n.name||``,x:l,y:u,...d,originalFeature:n.feature,featureIndex:n.index,pointIndex:i})}}return e});function Gt(e){if(!e||typeof e.type!=`string`)return[];let t=[],n=e=>{if(!Array.isArray(e)||e.length<2)return;let n=Number(e[0]),r=Number(e[1]);if(!Number.isFinite(n)||!Number.isFinite(r))return;let i=G([n,r]),a=i?.[0],o=i?.[1];Number.isFinite(a)&&Number.isFinite(o)&&t.push([a,o])},r=e=>{if(Array.isArray(e)){if(e.length>=2&&typeof e[0]==`number`&&typeof e[1]==`number`){n(e);return}for(let t of e)r(t)}};if(e.type===`GeometryCollection`&&Array.isArray(e.geometries)){for(let n of e.geometries)t.push(...Gt(n));return t}return e.type===`Point`?(n(e.coordinates),t):e.type===`MultiPoint`?((e.coordinates||[]).forEach(n),t):(r(e.coordinates),t)}function Kt(e){let t=[];for(let n of e)t.push(...Gt(n.geometry));if(!t.length)return null;let n=1/0,r=1/0,i=-1/0,a=-1/0;for(let[e,o]of t)e<n&&(n=e),o<r&&(r=o),e>i&&(i=e),o>a&&(a=o);let o=i-n,s=a-r;return!(o>0)||!(s>0)?null:{minX:n,minY:r,maxX:i,maxY:a,width:o,height:s}}let qt=m(()=>Kt(Ft.value));function Jt({bounds:e,targetWidth:t,targetHeight:n,padding:r}){if(!e||!(e.width>0)||!(e.height>0))return{scale:1,translateX:0,translateY:0,transform:``};let i=Number.isFinite(Number(r))?Number(r):0,a=Math.max(1,t-i*2),o=Math.max(1,n-i*2),s=a/e.width,c=o/e.height,l=Math.min(s,c),u=e.width*l,d=e.height*l,f=i+(a-u)/2,p=i+(o-d)/2,ee=f-e.minX*l,te=p-e.minY*l;return{scale:l,translateX:ee,translateY:te,transform:`translate(${ee} ${te}) scale(${l})`}}let Yt=m(()=>{let e=qt.value;if(!e)return{scale:1,translateX:0,translateY:0,transform:``};let t=F.value?.map?.fitPadding,n=Number.isFinite(Number(t))?Number(t):0;return Jt({bounds:e,targetWidth:W.value.width,targetHeight:W.value.height,padding:n})}),Xt=m(()=>`0 0 ${W.value.width} ${W.value.height}`),{viewBox:Zt,resetZoom:Qt,setInitialViewBox:$t,scale:en,zoomByFactor:tn}=me(R,{x:0,y:0,width:W.value.width,height:W.value.height},1,V);function nn(){V.value=!V.value}function rn(e){let t=Yt.value,n=Number(t?.scale)||1,r=Number(t?.translateX)||0,i=Number(t?.translateY)||0;return{x:e.x*n+r,y:e.y*n+i}}function an(){let e=F.value?.map?.center,t=Number(e?.[0]),n=Number(e?.[1]),r=Array.isArray(e)&&e.length===2&&Number.isFinite(t)&&Number.isFinite(n)&&(t!==0||n!==0),i=W.value.width,a=W.value.height;if(!r)return{x:0,y:0,width:i,height:a};let o=G([t,n]),s=o?.[0],c=o?.[1];if(!Number.isFinite(s)||!Number.isFinite(c))return{x:0,y:0,width:i,height:a};let l=rn({x:s,y:c});return{x:l.x-i/2,y:l.y-a/2,width:i,height:a}}function on(){let e=an();$t(e,{overwriteCurrentIfNotZoomed:!0}),k.value=!0}let sn=m(()=>{let e=Zt.value;return e?`${e.x} ${e.y} ${e.width} ${e.height}`:Xt.value});function cn(){tn(We,!0)}function ln(){tn(1/We,!0)}async function un(){let e=an();$t(e,{overwriteCurrentIfNotZoomed:!0}),Qt(!0)}ke(()=>[F.value.projection,F.value.map.center?.[0],F.value.map.center?.[1],F.value.map.fitPadding,Ot.value],async()=>{k.value=!1,await Se(),requestAnimationFrame(()=>{k.value||on()})},{deep:!1}),ke(()=>[H.value,U.value,z.value],async()=>{z.value&&(await Se(),$t({x:0,y:0,width:W.value.width,height:W.value.height},{overwriteCurrentIfNotZoomed:!0}),k.value=!1,requestAnimationFrame(()=>{k.value||on()}))},{flush:`post`});function dn(e){return e?e.type===`FeatureCollection`&&Array.isArray(e.features)?e.features.filter(e=>e?.type===`Feature`&&e.geometry?.type===`Point`).map((e,t)=>{let n=e.properties||{},r=n.name||n.label||n.title||`Point ${t+1}`,i=e.geometry.coordinates;return{uid:`map-point-${D.value}-${t}`,name:r,coordinates:i,color:n.color??null,radius:n.radius??null,hoverRadiusRatio:I.value.hoverRadiusRatio,description:n.description??null,original:e,index:t}}):Array.isArray(e)?e.map((e,t)=>{let n=null,r=`Point ${t+1}`,i=null,a=null,o=null;Array.isArray(e)&&e.length>=2?n=[Number(e[0]),Number(e[1])]:e&&typeof e==`object`&&(Array.isArray(e.coordinates)&&e.coordinates.length>=2?n=[Number(e.coordinates[0]),Number(e.coordinates[1])]:Number.isFinite(Number(e.lon))&&Number.isFinite(Number(e.lat))&&(n=[Number(e.lon),Number(e.lat)]),typeof e.name==`string`&&e.name.trim()&&(r=e.name),e.description!=null&&(i=e.description),e.color!=null&&(a=e.color),e.radius!=null&&(o=e.radius));let s=n?n[0]:NaN,c=n?n[1]:NaN;return!Number.isFinite(s)||!Number.isFinite(c)?null:{uid:`map-point-${D.value}-${t}`,name:r,coordinates:[s,c],color:a,radius:o,hoverRadiusRatio:I.value.hoverRadiusRatio,description:i,original:e,index:t}}).filter(Boolean):typeof e==`object`?Object.entries(e).map(([e,t],n)=>{if(!t||typeof t!=`object`)return null;let r=Array.isArray(t.coordinates)?t.coordinates:null;if(!r||r.length<2)return null;let i=Number(r[0]),a=Number(r[1]);return!Number.isFinite(i)||!Number.isFinite(a)?null:{uid:`map-point-${D.value}-${n}-${e}`,name:t.name||e,coordinates:[i,a],color:t.color??null,radius:t.radius??null,hoverRadiusRatio:I.value.hoverRadiusRatio,description:t.description??null,original:t,index:n}}).filter(Boolean):[]:[]}let fn=m(()=>dn(ht.value)),pn=m(()=>fn.value.map(e=>{let t=G(e.coordinates),n=t?.[0],i=t?.[1];return!Number.isFinite(n)||!Number.isFinite(i)?null:{...e,x:n,y:i,fill:e.color?r(e.color):I.value.fill,radius:Number.isFinite(Number(e.radius))?Number(e.radius):I.value.radius}}).filter(Boolean)),K=m(()=>pn.value.map((e,t)=>({...e,keyboardIndex:t})));function mn(e){let t=rn(e),n=c(t.x,t.y,R.value);n&&(at.value={x:n.x,y:n.y})}let hn=S(!1),gn=S(``),q=S(!1),J=S(null),Y=S(null);function _n(e){gn.value=e,hn.value=!0}function X(){hn.value=!1,gn.value=``}function vn(e){return String(e??``).replaceAll(`&`,`&`).replaceAll(`<`,`<`).replaceAll(`>`,`>`).replaceAll(`"`,`"`).replaceAll(`'`,`'`)}function yn(e){$e.value={datapoint:e,seriesIndex:e.index,series:fn.value,config:F.value},q.value=!1;let t=L.value.tooltip.customFormat;if(n(t))try{let e=t($e.value);if(typeof e==`string`)return q.value=!0,e}catch{console.warn(`Custom format cannot be applied.`),q.value=!1}return`<div><div style="font-weight:600">${vn(e.name)}</div>${e.description==null?``:`<div style="margin-top:6px">${vn(e.description)}</div>`}</div>`}function bn(e){q.value=!1;let t=L.value.tooltip.customFormat;if(n(t))try{let n=t({datapoint:e,config:F.value});if(typeof n==`string`)return q.value=!0,n}catch{console.warn(`Custom format cannot be applied.`),q.value=!1}let r=typeof e?.name==`string`?e.name.trim():``;return r?`<div><div style="font-weight:600">${vn(r)}</div></div>`:(q.value=!1,``)}function xn(e){if(F.value.events.territoryEnter&&F.value.events.territoryEnter({datapoint:e,seriesIndex:e.index}),!(typeof e?.name==`string`&&e.name.trim())&&!L.value.territory.hover.enabledWhenEmpty){Y.value=null,X();return}Y.value=e.uid,_n(bn(e))}function Sn(e){Y.value=null,X(),F.value.events.territoryLeave&&F.value.events.territoryLeave({datapoint:e,seriesIndex:e.index})}function Cn(e){F.value.events.territoryClick&&F.value.events.territoryClick({datapoint:e,seriesIndex:e.index})}function wn(e,t=null,n=`pointer`){N.value=n,J.value=e.uid,Number.isInteger(t)&&(M.value=t),n===`keyboard`&&mn(e),_n(yn(e)),F.value.events.datapointEnter&&F.value.events.datapointEnter({datapoint:e,seriesIndex:e.index})}function Tn(e,t=`pointer`){(t!==`pointer`||N.value!==`keyboard`)&&(J.value=null,X(),t!==`pointer`&&(M.value=null,N.value=`pointer`),F.value.events.datapointLeave&&F.value.events.datapointLeave({datapoint:e,seriesIndex:e.index}))}let En=m(()=>!!F.value.events.datapointClick&&typeof F.value.events.datapointClick==`function`);function Dn(e){En.value&&F.value.events.datapointClick({datapoint:e,seriesIndex:e.index})}let Z=m(()=>L.value.territory);function On(e){let t=typeof e?.name==`string`?e.name.trim():``;if(!t){Y.value=null,X();return}let n={name:t,uid:e.uid,index:e.featureIndex,properties:{}};Y.value=e.uid,_n(bn(n))}function kn(){Y.value=null,X()}let Q=S(!1);function An(){Q.value=!Q.value}ke(()=>Q.value,e=>{V.value=!e});function jn(){B.value.showTooltip=!B.value.showTooltip}let Mn=m(()=>L.value.backgroundColor),Nn=m(()=>L.value.title),{isCallbackImaging:Pn,isCallbackSvg:Fn,generateSvg:In,onGenerateImage:Ln}=re({svg:R,title:Nn,legend:null,legendItems:null,backgroundColor:Mn,getSvgCallback:()=>F.value.userOptions.callbacks.svg,generateImage:yt}),Rn=ee(O,()=>L.value.title.text),$=S(!1),zn=null;function Bn(){V.value&&($.value=!0)}function Vn(){$.value=!1}function Hn(){V.value&&($.value=!0,zn&&clearTimeout(zn),zn=setTimeout(()=>{$.value=!1,zn=null},140))}Te(()=>{zn&&clearTimeout(zn)});async function Un([e,t],{animated:n=!0}={}){let r=Number(e),i=Number(t);if(!Number.isFinite(r)||!Number.isFinite(i))return;let a=G([r,i]),o=a?.[0],s=a?.[1];if(!Number.isFinite(o)||!Number.isFinite(s))return;let c=rn({x:o,y:s}),l=Zt.value?{...Zt.value}:{x:0,y:0,width:W.value.width,height:W.value.height},u={x:c.x-l.width/2,y:c.y-l.height/2,width:l.width,height:l.height};if(!n){Zt.value=u;return}let d={...l},f={...u},p=null,ee=e=>{p??=e;let t=Math.min((e-p)/250,1);Zt.value={x:d.x+(f.x-d.x)*t,y:d.y+(f.y-d.y)*t,width:d.width+(f.width-d.width)*t,height:d.height+(f.height-d.height)*t},t<1&&requestAnimationFrame(ee)};requestAnimationFrame(ee)}Ee(async()=>{St(),await Se(),requestAnimationFrame(()=>{k.value||(on(),(F.value.map.center?.[0]||F.value.map.center?.[1])&&Un(F.value.map.center,{animated:!1}))})}),Te(()=>{xt()});async function Wn(){if(Ye(`copyAlt`,{config:F.value,dataset:ht.value}),!F.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(F.value.userOptions.callbacks.altCopy({config:F.value,dataset:ht.value}))}function Gn(e,t){let n=K.value;if(!n.length)return null;let r=n[e];if(!r)return null;let i=null,a=1/0;for(let o=0;o<n.length;o+=1){if(o===e)continue;let s=n[o],c=s.x-r.x,l=s.y-r.y,u=!1,d=0,f=0;if(t===`right`&&c>0&&(u=!0,d=c,f=Math.abs(l)),t===`left`&&c<0&&(u=!0,d=Math.abs(c),f=Math.abs(l)),t===`down`&&l>0&&(u=!0,d=l,f=Math.abs(c)),t===`up`&&l<0&&(u=!0,d=Math.abs(l),f=Math.abs(c)),!u)continue;let p=d*d+f*f*4;p<a&&(a=p,i=o)}return i}function Kn(e){let t=K.value;return t.length?e===`right`?t.reduce((e,t,n,r)=>t.x<r[e].x?n:e,0):e===`left`?t.reduce((e,t,n,r)=>t.x>r[e].x?n:e,0):e===`down`?t.reduce((e,t,n,r)=>t.y<r[e].y?n:e,0):e===`up`?t.reduce((e,t,n,r)=>t.y>r[e].y?n:e,0):0:null}function qn(){ot.value=!0}function Jn(){let e=M.value==null?null:K.value[M.value];e?Tn(e,`keyboard`):(M.value=null,N.value=`pointer`,X(),J.value=null),ot.value=!1}function Yn(e){if(!R.value||Q.value||document.activeElement!==R.value||!K.value.length)return;let t=e.key===`ArrowRight`,n=e.key===`ArrowLeft`,r=e.key===`ArrowDown`,i=e.key===`ArrowUp`,a=e.key===`Enter`||e.key===` `,o=e.key===`Escape`;if(!t&&!n&&!r&&!i&&!a&&!o)return;if(e.preventDefault(),e.stopPropagation(),o){let e=M.value==null?null:K.value[M.value];e?Tn(e,`keyboard`):(M.value=null,N.value=`pointer`,X(),J.value=null);return}if(a){let e=M.value==null?null:K.value[M.value];if(!e)return;Dn(e);return}let s=t?`right`:n?`left`:r?`down`:`up`,c=null;if(M.value==null?c=Kn(s):(c=Gn(M.value,s),c??=Kn(s)),c==null)return;let l=K.value[c];l&&wn(l,c,`keyboard`)}let Xn=m(()=>({headers:[`Name`,`Latitude`,`Longitude`,`Description`],rows:fn.value.map(e=>{let t=Array.isArray(e.coordinates)?e.coordinates[1]:null,n=Array.isArray(e.coordinates)?e.coordinates[0]:null;return[e.name??``,Number.isFinite(t)?String(t):``,Number.isFinite(n)?String(n):``,e.description??``]})}));return f({getImage:Rn,generatePdf:vt,generateImage:yt,generateSvg:In,toggleTooltip:jn,toggleAnnotator:An,toggleFullscreen:st,zoomIn:cn,zoomOut:ln,resetZoom:Qt,focusLocation:Un,copyAlt:Wn}),(e,t)=>(x(),_(`div`,{class:Ce(`vue-data-ui-component vue-ui-geo ${P.value?`vue-data-ui-wrapper-fullscreen`:``} ${z.value?`vue-ui-geo-responsive`:``} ${$.value?`vue-ui-geo-interacting`:``}`),ref_key:`geoChart`,ref:O,id:`map_${D.value}`,dir:`auto`,style:we({fontFamily:F.value.style.fontFamily,width:`100%`,backgroundColor:L.value.backgroundColor,height:z.value?`${U.value}px`:void 0})},[v(`div`,{id:`chart-instructions-${D.value}`,class:`sr-only`},[v(`p`,null,De(F.value.a11y.translations.keyboardNavigation),1)],8,Ne),Xn.value?.rows?.length?(x(),h(de,{key:0,uid:D.value,head:Xn.value.headers,body:Xn.value.rows,notice:F.value.a11y.translations.tableAvailable,caption:F.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):g(``,!0),Ct.value?(x(),_(`div`,{key:1,ref_key:`noTitle`,ref:tt,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):g(``,!0),L.value.title.text?(x(),_(`div`,{key:2,ref_key:`chartTitle`,ref:et,style:`width:100%;background:transparent;padding-bottom:12px`},[(x(),h(ne,{key:`title_${Qe.value}`,config:{title:{cy:`geo-title`,...L.value.title},subtitle:{cy:`geo-subtitle`,...L.value.title.subtitle}}},null,8,[`config`]))],512)):g(``,!0),F.value.userOptions.buttons.annotator?(x(),h(T(qe),{key:3,svgRef:T(R),backgroundColor:L.value.backgroundColor,color:L.value.color,active:Q.value,isCursorPointer:ut.value,palette:F.value.userOptions.annotatorPalette,onClose:An},ve({_:2},[C(T(ae),t=>({name:t,fn:Ae(n=>[w(e.$slots,t,b(y(T(ie)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):g(``,!0),F.value.userOptions.show&&(T(ft)||T(dt))?(x(),h(T(Ke),{ref:`userOptionsRef`,key:`user_options_${Ze.value}`,backgroundColor:L.value.backgroundColor,color:L.value.color,isPrinting:T(gt),isImaging:T(_t),uid:D.value,hasXls:!1,hasTable:!1,hasTooltip:F.value.userOptions.buttons.tooltip&&L.value.tooltip.show,hasPdf:F.value.userOptions.buttons.pdf,hasImg:F.value.userOptions.buttons.img,hasSvg:F.value.userOptions.buttons.svg,hasFullscreen:F.value.userOptions.buttons.fullscreen,hasAltCopy:F.value.userOptions.buttons.altCopy,hasAnnotator:F.value.userOptions.buttons.annotator,hasZoom:F.value.userOptions.buttons.zoom,isZoom:V.value,isFullscreen:P.value,isTooltip:B.value.showTooltip,titles:{...F.value.userOptions.buttonTitles},chartElement:O.value,position:F.value.userOptions.position,isAnnotation:Q.value,callbacks:F.value.userOptions.callbacks,printScale:F.value.userOptions.print.scale,isCursorPointer:ut.value,onToggleFullscreen:st,onGeneratePdf:T(vt),onGenerateImage:T(Ln),onGenerateSvg:T(In),onToggleTooltip:jn,onToggleAnnotator:An,onToggleZoom:nn,onCopyAlt:Wn,style:we({visibility:T(ft)?T(dt)?`visible`:`hidden`:`visible`})},ve({_:2},[C(T(oe)(e.$slots,`menuIcon optionTooltip optionPdf optionImg optionSvg optionFullscreen optionAnnotator optionZoom optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:Ae(n=>[w(e.$slots,t,b(y(T(se)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasFullscreen.hasAltCopy.hasAnnotator.hasZoom.isZoom.isFullscreen.isTooltip.titles.chartElement.position.isAnnotation.callbacks.printScale.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):g(``,!0),L.value.controls.position===`top`&&L.value.controls.show&&!T(mt)?(x(),h(te,{key:5,ref_key:`zoomControlsTop`,ref:rt,config:F.value,scale:T(en),isFullscreen:P.value,isCursorPointer:ut.value,onZoomIn:cn,onZoomOut:ln,onResetZoom:un},null,8,[`config`,`scale`,`isFullscreen`,`isCursorPointer`])):g(``,!0),v(`div`,Pe,[(x(),_(`svg`,{ref_key:`svgRef`,ref:R,xmlns:T(s),viewBox:sn.value,preserveAspectRatio:`xMidYMid meet`,"aria-describedby":`map-keyboard-instructions-${D.value}`,tabindex:`0`,style:we({display:`block`,width:`100%`,height:z.value?`${U.value}px`:`auto`,background:L.value.backgroundColor,touchAction:V.value?`none`:`auto`,cursor:V.value?$.value?`grabbing`:`grab`:`default`}),id:`vue-ui-geo_${D.value}`,onPointerdown:Bn,onPointerup:Vn,onPointercancel:Vn,onPointerleave:Vn,onWheel:Hn,onFocus:qn,onBlur:Jn,onKeydown:Yn},[ye(T(Je)),v(`g`,{transform:Yt.value.transform,style:we({pointerEvents:$.value?`none`:`auto`})},[v(`g`,null,[(x(!0),_(_e,null,C(Ht.value,e=>(x(),_(`path`,{class:`vue-ui-geo-territory`,key:e.uid,d:e.path,fill:Y.value===e.uid?Z.value.hover.fill:Z.value.fill,stroke:Y.value===e.uid?Z.value.hover.stroke:Z.value.stroke,"stroke-width":Y.value===e.uid?Z.value.hover.strokeWidth:Z.value.strokeWidth,"vector-effect":`non-scaling-stroke`,onMouseenter:t=>xn(e),onMouseleave:t=>Sn(e),onClick:t=>Cn(e)},null,40,Le))),128))]),v(`g`,null,[(x(!0),_(_e,null,C(Ut.value,e=>(x(),_(`path`,{class:`vue-ui-geo-territory`,key:e.uid,d:e.path,fill:`none`,stroke:Y.value===e.uid?Z.value.hover.stroke:Z.value.stroke,"stroke-width":Y.value===e.uid?Z.value.hover.strokeWidth:Z.value.strokeWidth,"vector-effect":`non-scaling-stroke`,onMouseenter:t=>xn(e),onMouseleave:t=>Sn(e),onClick:t=>Cn(e)},null,40,Re))),128))]),v(`g`,null,[(x(!0),_(_e,null,C(Wt.value,e=>(x(),_(`circle`,{key:e.uid,cx:e.x,cy:e.y,r:e.radius,fill:e.fill,stroke:e.stroke,"stroke-width":e.strokeWidth,"vector-effect":`non-scaling-stroke`,onMouseenter:t=>On(e),onMouseleave:kn},null,40,ze))),128))]),(x(!0),_(_e,null,C(pn.value,(t,n)=>(x(),_(`g`,{key:t.uid},[w(e.$slots,`datapoint`,xe({ref_for:!0},{point:t,onPointEnter:wn,onPointLeave:Tn,onPointClick:Dn,highlighted:J.value===t.uid}),()=>[v(`circle`,{class:Ce({"vue-ui-geo-point":!0,"vue-ui-geo-point-with-event":En.value&&ut.value}),cx:t.x,cy:t.y,r:J.value===t.uid?t.radius*t.hoverRadiusRatio:t.radius,fill:t.fill,stroke:I.value.stroke,"stroke-width":I.value.strokeWidth,"vector-effect":`non-scaling-stroke`,onMouseenter:e=>wn(t,n),onMouseleave:e=>Tn(t),onClick:e=>Dn(t)},null,42,Be)],!0),lt.value.show?(x(),_(`text`,{key:0,class:`vue-ui-geo-point-label`,x:t.x,y:t.y+(J.value===t.uid?t.radius*t.hoverRadiusRatio:t.radius)+lt.value.offsetY+1*lt.value.fontSizeRatio,"text-anchor":`middle`,fill:lt.value.color,"font-size":1*lt.value.fontSizeRatio},De(t.name),9,Ve)):g(``,!0)]))),128)),w(e.$slots,`svg`,{svg:{drawingArea:sn.value,x:qt.value?.minX??0,y:qt.value?.minY??0,width:qt.value?.width??0,height:qt.value?.height??0,isPrintingImg:T(gt)||T(_t)||T(Pn),isPrintingSvg:T(Fn),data:{areaPaths:Ht.value,linePaths:Ut.value,geoJsonPoints:Wt.value,projectedPoints:pn.value}}},void 0,!0)],12,Ie)],44,Fe)),e.$slots.hint?(x(),_(`div`,He,[w(e.$slots,`hint`,b(y({hint:F.value.a11y.translations.keyboardNavigation,isVisible:ot.value})),void 0,!0)])):g(``,!0)]),e.$slots.watermark?(x(),_(`div`,Ue,[w(e.$slots,`watermark`,b(y({isPrinting:T(gt)||T(_t)||T(Pn)||T(Fn)})),void 0,!0)])):g(``,!0),L.value.controls.position===`bottom`&&L.value.controls.show&&!T(mt)?(x(),h(te,{key:7,ref_key:`zoomControlsBottom`,ref:it,config:F.value,scale:T(en),isFullscreen:P.value,isCursorPointer:ut.value,onZoomIn:cn,onZoomOut:ln,onResetZoom:un},null,8,[`config`,`scale`,`isFullscreen`,`isCursorPointer`])):g(``,!0),ye(T(Ge),{teleportTo:L.value.tooltip.teleportTo,show:B.value.showTooltip&&hn.value,backgroundColor:L.value.tooltip.backgroundColor,color:L.value.tooltip.color,fontSize:L.value.tooltip.fontSize,borderRadius:L.value.tooltip.borderRadius,borderColor:L.value.tooltip.borderColor,borderWidth:L.value.tooltip.borderWidth,backgroundOpacity:L.value.tooltip.backgroundOpacity,position:L.value.tooltip.position,offsetX:L.value.tooltip.offsetX,offsetY:L.value.tooltip.offsetY,parent:O.value,content:gn.value,isCustom:q.value,isFullscreen:P.value,smooth:L.value.tooltip.smooth,backdropFilter:L.value.tooltip.backdropFilter,smoothForce:L.value.tooltip.smoothForce,smoothSnapThreshold:L.value.tooltip.smoothSnapThreshold,isA11yMode:N.value===`keyboard`,a11yPosition:at.value},{"tooltip-before":Ae(()=>[w(e.$slots,`tooltip-before`,b(y({...$e.value})),void 0,!0)]),tooltip:Ae(()=>[w(e.$slots,`tooltip`,b(y({...$e.value})),void 0,!0)]),"tooltip-after":Ae(()=>[w(e.$slots,`tooltip-after`,b(y({...$e.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?(x(),_(`div`,{key:8,ref_key:`source`,ref:nt,dir:`auto`},[w(e.$slots,`source`,{},void 0,!0)],512)):g(``,!0),w(e.$slots,`skeleton`,{},()=>[T(mt)?(x(),h(u,{key:0})):g(``,!0)],!0)],14,Me))}},[[`__scopeId`,`data-v-f96955bc`]]);export{je as n,Ge as t};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{D as n,Ht as r,J as i,X as a,in as o}from"./lib-DqD8nbyX.js";import{n as s,t as c}from"./BaseScanner-8NdoBs7B.js";import{n as l,t as u}from"./useHints-BH9r_0Vd.js";import{t as d}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as f}from"./resolveChartConfig-ChGWTt5l.js";import{t as ee}from"./chartImage-r-G4CkRK.js";import{t as te}from"./vue_ui_graph-B1ACwQj7.js";import{t as ne}from"./BaseZoomControls-Cq5AOHQ0.js";import{n as re}from"./Title-BLA0tM3g.js";import{t as ie}from"./useChartExport-DtPNpc9M.js";import{t as ae}from"./tableIntegration-CNoJ1CIY.js";import{n as oe,t as se}from"./annotationSlots-BRR85CqJ.js";import{n as ce,t as le}from"./userOptionsSlots-DYuo-E5m.js";import{Fragment as p,TransitionGroup as ue,computed as m,createBlock as de,createCommentVNode as h,createElementBlock as g,createElementVNode as _,createSlots as fe,createTextVNode as pe,createVNode as me,defineAsyncComponent as he,guardReactiveProps as ge,mergeProps as _e,nextTick as ve,normalizeClass as ye,normalizeProps as be,normalizeStyle as xe,onBeforeUnmount as Se,onMounted as Ce,openBlock as v,ref as y,renderList as b,renderSlot as x,resolveDynamicComponent as we,shallowRef as Te,toDisplayString as S,triggerRef as Ee,unref as C,useSlots as De,watch as w,withCtx as T,withKeys as Oe,withModifiers as ke}from"vue";var Ae={nodes:[[`center`,0,0,18],[`west`,-110,-65,15],[`east`,115,-45,16],[`south`,20,115,14],[`w1`,-190,-90,7],[`w2`,-145,-155,9],[`w3`,-65,-140,6],[`w4`,-195,-5,8],[`w5`,-115,25,6],[`e1`,70,-135,8],[`e2`,160,-130,6],[`e3`,205,-55,9],[`e4`,175,35,7],[`e5`,85,40,6],[`s1`,-65,95,8],[`s2`,-50,185,6],[`s3`,40,205,9],[`s4`,115,150,7],[`s5`,100,90,6]].map(([e,t,n,r])=>({id:`skeleton-${e}`,x:t,y:n,radius:r,fixed:!0})),links:[[`center`,`west`],[`center`,`east`],[`center`,`south`],[`west`,`w1`],[`west`,`w2`],[`west`,`w3`],[`west`,`w4`],[`west`,`w5`],[`w1`,`w2`],[`w2`,`w3`],[`w4`,`w5`],[`east`,`e1`],[`east`,`e2`],[`east`,`e3`],[`east`,`e4`],[`east`,`e5`],[`e1`,`e2`],[`e2`,`e3`],[`e4`,`e5`],[`south`,`s1`],[`south`,`s2`],[`south`,`s3`],[`south`,`s4`],[`south`,`s5`],[`s1`,`s2`],[`s2`,`s3`],[`s4`,`s5`],[`w3`,`e1`],[`w5`,`s1`],[`e5`,`s5`]].map(([e,t])=>({source:`skeleton-${e}`,target:`skeleton-${t}`}))},je={animation:{enabled:!1},layout:{iterations:0},viewport:{initialFit:!0},userOptions:{show:!1},table:{show:!1},tooltip:{show:!1},events:{datapointEnter:null,datapointLeave:null,datapointClick:null},interaction:{zoom:{enabled:!1},pan:{enabled:!1},drag:{enabled:!1}},style:{chart:{backgroundColor:`#99999930`,controls:{show:!1},nodes:{colorByGroup:!1,color:`#BABABA`,stroke:`#CCCCCC`,sizeByValue:!1,sizeByDegree:!1,radius:10,gradient:!1,glow:{show:!1},labels:{show:!1}},links:{color:`#CCCCCC`,glow:!1,arrows:{show:!1,showOnHover:!1},pulses:{show:!1,showOnHover:!1}}}}},Me=(e,t)=>Number.isFinite(e)?e:t;function Ne(e,t=/* @__PURE__ */ new Map,n,i=()=>{}){let a=[],o=/* @__PURE__ */ new Map,s=/* @__PURE__ */ new Map,c=/* @__PURE__ */ new Map;for(let n of e?.nodes||[]){if(!n||![`string`,`number`].includes(typeof n.id)||typeof n.id==`number`&&!Number.isFinite(n.id)||o.has(n.id)){i(`Ignored invalid or duplicate node ID`);continue}let e=t.get(n.id),r=a.length,l=r*2.399963229728653,u=20*Math.sqrt(r);c.has(n.group)||c.set(n.group,c.size);let d={...n,raw:n,x:e?.x??Me(n.x,Math.cos(l)*u),y:e?.y??Me(n.y,Math.sin(l)*u),vx:e?.vx||0,vy:e?.vy||0,pinned:!!n.fixed||!!e?.userPinned,userPinned:e?.userPinned,degree:0,index:r,groupIndex:c.get(n.group)};a.push(d),o.set(n.id,d),s.set(n.id,/* @__PURE__ */ new Set)}let l=[],u=/* @__PURE__ */ new Map;for(let t of e?.links||[]){let e=o.get(t?.source),n=o.get(t?.target);if(!e||!n){i(`Ignored link referencing an unknown node`);continue}e.degree+=1,n.degree+=1,s.get(e.id).add(n.id),s.get(n.id).add(e.id);let r=e.index,a=n.index,c=`${Math.min(r,a)}:${Math.max(r,a)}`,d={raw:t,source:e,target:n,index:l.length,strength:Math.min(3,Math.sqrt(Math.max(0,Me(t.value,1)))),lane:0,direction:r<=a?1:-1};u.has(c)||u.set(c,[]),u.get(c).push(d),l.push(d)}for(let e of u.values())e.forEach((t,n)=>{t.lane=n-(e.length-1)/2,t.selfIndex=n});let d=n.customPalette?.length?n.customPalette:r,f=n.style.chart.nodes,ee=a.map(e=>Math.max(0,Me(f.sizeByDegree?e.degree:e.value,0))),te=Math.max(1,...ee);return a.forEach((e,t)=>{e.radius=Math.max(.5,Me(e.raw.radius,(f.sizeByValue||f.sizeByDegree)&&ee[t]>0?f.minRadius+Math.sqrt(ee[t]/te)*(f.maxRadius-f.minRadius):f.radius)),e.groupColor=f.colorByGroup?d[e.groupIndex%d.length]:f.color,e.color=e.raw.color||e.groupColor||f.color}),{nodes:a,links:l,byId:o,adjacency:s}}function Pe(e,t,n,r,i=0){let a={x:t,y:n,size:r,count:e.length,cx:0,cy:0};if(!e.length)return a;for(let t of e)a.cx+=t.x,a.cy+=t.y;if(a.cx/=e.length,a.cy/=e.length,e.length<=1||i>=20)return a.nodes=e,a;let o=r/2,s=[[],[],[],[]];for(let r of e)s[+(r.x>=t+o)+(r.y>=n+o?2:0)].push(r);a.children=[];for(let e=0;e<4;e++)s[e].length&&a.children.push(Pe(s[e],t+e%2*o,n+(e>1?o:0),o,i+1));return a}function Fe(e,t,n=1){let{nodes:r,links:i}=e;if(!r.length)return 0;let a=1/0,o=1/0,s=-1/0,c=-1/0,l=1;for(let e of r)a=Math.min(a,e.x),o=Math.min(o,e.y),s=Math.max(s,e.x),c=Math.max(c,e.y),l=Math.max(l,e.radius);let u=Pe(r,a,o,Math.max(s-a,c-o,1)+1),d=Math.max(0,-t.chargeStrength)*n*t.strength,f=t.theta*t.theta;function ee(e,t){if(!t.count)return;let n=e.x-t.cx,r=e.y-t.cy,i=n*n+r*r+4,a=e.x>=t.x&&e.x<=t.x+t.size&&e.y>=t.y&&e.y<=t.y+t.size;if(!t.nodes&&!a&&t.size*t.size<f*i)e.vx+=n*d*t.count/i,e.vy+=r*d*t.count/i;else if(t.nodes){for(let n of t.nodes)if(n!==e){let t=e.x-n.x||.01,r=e.y-n.y||.01,i=t*t+r*r+4;e.vx+=t*d/i,e.vy+=r*d/i}}else for(let n of t.children)ee(e,n)}let te=/* @__PURE__ */ new Map;if(t.clusterStrength)for(let e of r){let t=te.get(e.group)||{x:0,y:0,count:0};t.x+=e.x,t.y+=e.y,t.count+=1,te.set(e.group,t)}for(let e of r){ee(e,u),e.vx-=e.x*t.centerStrength*n,e.vy-=e.y*t.centerStrength*n;let r=te.get(e.group);r&&(e.vx+=(r.x/r.count-e.x)*t.clusterStrength*n,e.vy+=(r.y/r.count-e.y)*t.clusterStrength*n)}for(let e of i){if(e.source===e.target)continue;let r=e.target.x-e.source.x,i=e.target.y-e.source.y,a=Math.sqrt(r*r+i*i)||1,o=(a-t.linkDistance)*t.linkStrength*e.strength*n*t.strength/2,s=r/a*o,c=i/a*o,l=Math.max(1,e.source.degree),u=Math.max(1,e.target.degree);e.source.vx+=s/l,e.source.vy+=c/l,e.target.vx-=s/u,e.target.vy-=c/u}let ne=l*2+Math.max(0,t.collisionPadding),re=/* @__PURE__ */ new Map;for(let e of r){let n=Math.floor(e.x/ne),r=Math.floor(e.y/ne);for(let i=n-1;i<=n+1;i+=1){let n=re.get(i);if(n)for(let i=r-1;i<=r+1;i+=1){let r=n.get(i);if(r)for(let n of r){let r=e.x-n.x||.01,i=e.y-n.y||.01,a=r*r+i*i,o=e.radius+n.radius+t.collisionPadding;if(a<o*o){let t=Math.sqrt(a),s=(o-t)/t*.5;e.vx+=r*s,e.vy+=i*s,n.vx-=r*s,n.vy-=i*s}}}}let i=re.get(n);i||re.set(n,i=/* @__PURE__ */ new Map);let a=i.get(r);a||i.set(r,a=[]),a.push(e)}let ie=Math.max(0,t.centerStrength*n-.05),ae=1+t.friction*(ie+2*Math.sqrt(ie)),oe=0;for(let e of r){if(e.pinned){e.vx=e.vy=0;continue}e.vx=Math.max(-30,Math.min(30,e.vx*t.friction/ae)),e.vy=Math.max(-30,Math.min(30,e.vy*t.friction/ae)),e.x+=e.vx,e.y+=e.vy,oe+=e.vx*e.vx+e.vy*e.vy}return oe/r.length}function Ie(e,t=e=>e){let n=(e,n)=>`${t(e)} ${t(n)}`,{source:r,target:i}=e;if(r===i){let t=r.radius+16+(e.selfIndex||0)*12,i=r.radius/Math.SQRT2;return`M ${n(r.x-i,r.y-i)} C ${n(r.x-t*2,r.y-t*3)} ${n(r.x+t*2,r.y-t*3)} ${n(r.x+i,r.y-i)}`}let a=i.x-r.x,o=i.y-r.y,s=Math.hypot(a,o)||1,c=e.lane*24*e.direction,l=(r.x+i.x)/2-o/s*c,u=(r.y+i.y)/2+a/s*c,d=Math.hypot(l-r.x,u-r.y)||1,f=Math.hypot(i.x-l,i.y-u)||1;return`M ${n(r.x+(l-r.x)/d*r.radius,r.y+(u-r.y)/d*r.radius)} Q ${n(l,u)} ${n(i.x-(i.x-l)/f*i.radius,i.y-(i.y-u)/f*i.radius)}`}var Le=/* @__PURE__ */ new Map,Re=/* @__PURE__ */ new Map,ze=8;function E(e,t){return JSON.stringify([t,e.nodes.map(e=>[e.x,e.y,e.vx,e.vy,e.radius,e.pinned,e.groupIndex]),e.links.map(e=>[e.source.index,e.target.index,e.strength])])}function D(e,t){e.nodes.forEach((e,n)=>{[e.x,e.y,e.vx,e.vy]=t[n]})}function Be(e,t,n,{eager:r=!1}={}){let i=E(e,t),a=Re.get(i);if(a)return Re.delete(i),Re.set(i,a),D(e,a),n(),()=>{};let o=Le.get(i),s,c={graph:e,complete:n};if(!o){let n=e.nodes.map(e=>({...e}));o={graph:{nodes:n,links:e.links.map(e=>({...e,source:n[e.source.index],target:n[e.target.index]}))},config:{...t},listeners:/* @__PURE__ */ new Set,frame:null,iteration:0},Le.set(i,o);let r=()=>{o.frame=null;let e=performance.now(),t=1/0;for(;o.iteration<o.config.iterations&&(t=Fe(o.graph,o.config,Math.max(.015,1-o.iteration/Math.max(1,o.config.iterations))),o.iteration++,!(o.iteration>30&&t<.002||performance.now()-e>=8)););if(o.iteration>=o.config.iterations||o.iteration>30&&t<.002){let e=o.graph.nodes.map(e=>[e.x,e.y,e.vx,e.vy]);Le.delete(i),Re.set(i,e),Re.size>ze&&Re.delete(Re.keys().next().value);let t=[...o.listeners];o.listeners.clear();for(let n of t)D(n.graph,e),n.complete()}else o.frame=requestAnimationFrame(r)};s=r}return o.listeners.add(c),s&&(r?s():o.frame=requestAnimationFrame(s)),()=>{o.listeners.delete(c),!o.listeners.size&&Le.get(i)===o&&(o.frame!==null&&cancelAnimationFrame(o.frame),Le.delete(i))}}function Ve(e,t,n){return t!==null&&(e.source.id===t||e.target.id===t||!!(n?.has(e.source.id)&&n.has(e.target.id)))}function He(e,t,n=null,r=1,i){let a=/* @__PURE__ */ new Map;for(let o of e){let e=t.colorBySource?o.link.source.color:t.color||o.color,s=n!==null&&!Ve(o.link,n,i),c=t.opacity*(s?r:1),l=JSON.stringify([e,c]);a.has(l)||a.set(l,{key:l,color:e,opacity:c,items:[]}),a.get(l).items.push(o)}return[...a.values()]}function Ue(e,t,n,r,i=!1){let a=e.length,o=n*100/Math.max(1,r)*(i?-1:1),s=a>0?((t+o/a)%1+1)%1:0,c=s*a,l=e.points;for(let e=1;e<l.length;e++){let t=l[e-1],n=l[e],r=Math.hypot(n.x-t.x,n.y-t.y);if(c<=r&&r>0){let e=c/r;return{progress:s,x:t.x+(n.x-t.x)*e,y:t.y+(n.y-t.y)*e}}c-=r}return{progress:s,...l[l.length-1]}}var O=e=>Math.round(e*100)/100;function We(e,t){let n=Ie(e,O),r,i;function a(){let t=n.match(/-?\d*\.?\d+(?:e[+-]?\d+)?/gi).map(Number),r=n.includes(` C `),i=[],a=r?24:e.lane?16:1;for(let e=0;e<=a;e++){let n=e/a,o=1-n;i.push(r?{x:o*o*o*t[0]+3*o*o*n*t[2]+3*o*n*n*t[4]+n*n*n*t[6],y:o*o*o*t[1]+3*o*o*n*t[3]+3*o*n*n*t[5]+n*n*n*t[7]}:{x:o*o*t[0]+2*o*n*t[2]+n*n*t[4],y:o*o*t[1]+2*o*n*t[3]+n*n*t[5]})}return i}let o=e.raw.color||t.color,s=e.raw.width??(t.widthByValue?Math.min(t.maxWidth,t.width*Math.sqrt(Math.max(0,e.raw.value??1))):t.width),c=!!(e.raw.directed||t.arrows.show||t.arrows.showOnHover),l=``;if(c){let e=n.match(/-?\d*\.?\d+(?:e[+-]?\d+)?/gi).map(Number),t=e.at(-2),r=e.at(-1),i=t-e.at(-4),a=r-e.at(-3),o=Math.hypot(i,a)||1,c=i/o,u=a/o,d=6*s,f=t-c*d,ee=r-u*d;l=`M ${O(t)} ${O(r)} L ${O(f-u*d/2)} ${O(ee+c*d/2)} L ${O(f+u*d/2)} ${O(ee-c*d/2)} Z`}return{link:e,d:n,arrowD:l,get points(){return r||=a()},get length(){if(i===void 0){let e=this.points;i=0;for(let t=1;t<e.length;t++)i+=Math.hypot(e[t].x-e[t-1].x,e[t].y-e[t-1].y)}return i},color:o,width:s,directed:c,key:JSON.stringify([o,s,c])}}function Ge(e,t=()=>!0){let n=/* @__PURE__ */ new Map;for(let r of e){if(!t(r.link))continue;let e=n.get(r.key);e||(e={key:r.key,color:r.color,width:r.width,directed:r.directed,paths:[],arrows:[]},n.set(r.key,e)),e.paths.push(r.d),r.arrowD&&e.arrows.push(r.arrowD)}return[...n.values()].map(({paths:e,arrows:t,...n})=>({...n,d:e.join(` `),arrowD:t.join(` `)}))}function Ke(e){let{x:t,y:n,radius:r}=e;return`M ${O(t-r)} ${O(n)} a ${O(r)} ${O(r)} 0 1 0 ${O(r*2)} 0 a ${O(r)} ${O(r)} 0 1 0 ${O(-r*2)} 0 Z`}function qe(e,t=()=>!0){let n=/* @__PURE__ */ new Map;for(let r of e)t(r)&&(n.has(r.color)||n.set(r.color,[]),n.get(r.color).push(Ke(r)));return[...n].map(([e,t])=>({color:e,d:t.join(` `)}))}function k(e,t,n){let r=n.x-t.x,i=n.y-t.y,a=r*r+i*i,o=a?Math.max(0,Math.min(1,((e.x-t.x)*r+(e.y-t.y)*i)/a)):0;return(e.x-t.x-o*r)**2+(e.y-t.y-o*i)**2}function Je(e,t,n=48){let r=/* @__PURE__ */ new Map,i=/* @__PURE__ */ new Map,a=0;function o(e,t,n,r){let i=`${t}:${n}`;e.has(i)||e.set(i,[]),e.get(i).push(r)}for(let t of e)for(let e=Math.floor((t.x-t.radius)/n);e<=Math.floor((t.x+t.radius)/n);e++)for(let i=Math.floor((t.y-t.radius)/n);i<=Math.floor((t.y+t.radius)/n);i++)o(r,e,i,t);let s=!1;function c(){for(let e of t){a=Math.max(a,e.width);for(let t=1;t<e.points.length;t++){let r=e.points[t-1],a=e.points[t],s=Math.max(1,Math.ceil(Math.max(Math.abs(a.x-r.x),Math.abs(a.y-r.y))/n)),c={a:r,b:a,item:e},l;for(let e=0;e<=s;e++){let t=Math.floor((r.x+(a.x-r.x)*e/s)/n),u=Math.floor((r.y+(a.y-r.y)*e/s)/n),d=`${t}:${u}`;d!==l&&o(i,t,u,c),l=d}}}s=!0}function l(e,t,r){let i=/* @__PURE__ */ new Set;for(let a=Math.floor((t.x-r)/n);a<=Math.floor((t.x+r)/n);a++)for(let o=Math.floor((t.y-r)/n);o<=Math.floor((t.y+r)/n);o++)for(let t of e.get(`${a}:${o}`)||[])i.add(t);return i}return{nodeAt(e,t=0){let n=null;for(let i of l(r,e,t))(e.x-i.x)**2+(e.y-i.y)**2<=(i.radius+t)**2&&(!n||i.index>n.index)&&(n=i);return n},linkAt(e,t=4){s||c();let n=null,r=1/0;for(let o of l(i,e,t+a/2)){let i=k(e,o.a,o.b);i<=(t+o.item.width/2)**2&&i<r&&(r=i,n=o.item.link)}return n}}}function Ye(e){if(e==null)return``;try{return JSON.stringify(e)}catch{return String(e)}}function Xe(e,t){return{nodes:{head:[t.id,t.label,t.group,t.value,t.connections,t.metadata],body:e.nodes.map(e=>[e.id,{name:e.label??e.id,color:e.color},e.group??``,e.value??``,e.degree,Ye(e.metadata)])},links:{head:[t.source,t.target,t.label,t.value,t.directed,t.metadata],body:e.links.map(e=>[e.raw.source,e.raw.target,e.raw.label??``,e.raw.value??``,!!e.raw.directed,Ye(e.raw.metadata)])}}}function Ze(e,t,r){let i=[[t.text],[t.subtitle?.text||``],[],[r.nodes],e.nodes.head,...e.nodes.body.map(e=>e.map(e=>e&&typeof e==`object`?e.name:e)),[],[r.links],e.links.head,...e.links.body];return n(i.map(e=>e.map(e=>`"${String(e??``).replaceAll(`"`,`""`)}"`)))}var Qe=/* @__PURE__ */ e({default:()=>A}),$e=[`id`],et={key:2,class:`vue-ui-graph-title`},tt=[`viewBox`,`aria-label`,`aria-busy`,`aria-describedby`,`tabindex`,`aria-activedescendant`],nt=[`id`],rt=[`id`],it=[`stdDeviation`],at={in:`blur`,result:`halo`},ot=[`slope`],st=[`id`],ct=[`stop-color`],lt=[`stop-color`],ut=[`fill`],dt=[`transform`],ft=[`filter`],pt=[`d`,`stroke`,`stroke-width`,`opacity`],mt=[`d`,`fill`,`opacity`],ht=[`opacity`],gt=[`d`,`stroke`,`stroke-width`],_t=[`d`,`fill`],vt=[`d`,`fill`,`opacity`],yt=[`fill`,`opacity`],bt={key:0,class:`vue-ui-graph-nodes vue-ui-graph-nodes-batched`,"pointer-events":`none`},xt=[`stroke`,`stroke-width`,`filter`],St=[`d`,`fill`,`opacity`],Ct=[`d`,`fill`,`opacity`],wt=[`cx`,`cy`,`r`,`stroke`,`stroke-width`,`opacity`],Tt=[`id`,`aria-label`,`aria-pressed`,`aria-describedby`],Et=[`cx`,`cy`,`r`,`stroke`,`stroke-width`,`opacity`],Dt=[`cx`,`cy`,`r`,`stroke`],Ot={key:1,class:`vue-ui-graph-nodes`},kt=[`data-node-index`,`id`,`transform`,`opacity`,`aria-label`,`aria-pressed`,`aria-describedby`,`onPointerenter`,`onFocus`,`onPointerdown`,`onClick`,`onKeydown`],At={key:0},jt=[`r`,`fill`,`stroke`,`stroke-width`,`filter`],Mt=[`r`,`fill`],Nt={class:`vue-ui-graph-labels`,"pointer-events":`none`,"aria-hidden":`true`},Pt=[`stroke`,`stroke-width`,`x`,`y`,`font-size`,`fill`,`opacity`,`innerHTML`],Ft={key:4,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},It={key:6,dir:`auto`},Lt={key:7,class:`vue-ui-graph-table-container`},Rt=[`id`],zt={class:`vue-ui-graph-tooltip-row`},Bt={key:0,class:`vue-ui-graph-tooltip-marker`,viewBox:`0 0 14 14`,"aria-hidden":`true`},Vt=[`fill`],Ht={key:0,class:`vue-ui-graph-tooltip-row`},Ut={class:`vue-ui-graph-tooltip-marker`,viewBox:`0 0 14 14`,"aria-hidden":`true`},Wt=[`fill`],Gt={key:1},Kt={key:2,class:`vue-ui-graph-tooltip-metadata`},A=/*#__PURE__*/ d({__name:`vue-ui-graph`,props:{dataset:{type:Object,default:()=>({nodes:[],links:[]})},config:{type:Object,default:()=>({})}},emits:[`copyAlt`,`selectNode`,`hoverNode`,`zoom`,`zoomReset`,`layoutStart`,`layoutEnd`],setup(e,{expose:n,emit:r}){let d=he(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Me=he(()=>import(`./Tooltip-Iyb_S6oQ.js`)),Pe=he(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),Ie=he(()=>import(`./DataTable-BcVZLSs8.js`)),Le=he(()=>import(`./vue-ui-accordion-3lBpCjGm.js`).then(e=>e.n)),Re=he(()=>import(`./BaseDraggableDialog-Bw_azO0n.js`).then(e=>e.n)),ze=e,E=r,D=y(a()),O=y(null),k=y(null),Qe=y(!1),A=y(!1),qt=m(()=>f(ze.config||{},t().vue_ui_graph,te)),j=y(qt.value);l({config:()=>j.value,dataset:()=>ze.dataset,component:`VueUiGraph`,rules:[u.noHint]});let Jt=m(()=>o({defaultConfig:o({defaultConfig:qt.value,userConfig:je}),userConfig:ze.config?.skeletonConfig??{}})),{loading:M,FINAL_DATASET:Yt}=s({config:m(()=>ze.config),dataset:m(()=>ze.dataset?.nodes?.length?ze.dataset:{}),skeletonDataset:ze.config?.skeletonDataset??Ae,skeletonConfig:Jt.value,FINAL_CONFIG:j,prepareConfig:()=>qt.value});w([qt,Jt,M],()=>{j.value=M.value?Jt.value:qt.value});let Xt=De(),N=m(()=>j.value.style.chart),Zt=y(!1),P=y(!1),Qt=m(()=>M.value||Zt.value||P.value),$t=m(()=>j.value.interaction.zoom.enabled&&!Qt.value);function en(){Zt.value=!Zt.value,Zt.value&&(X(),H&&H.type!==`node`&&(hn=H.moved,H=null,W.clear()))}let F=Te({nodes:[],links:[],byId:/* @__PURE__ */ new Map,adjacency:/* @__PURE__ */ new Map}),tn=Te(F.value),I=y(800),L=y(600),R=y({x:400,y:300,k:1}),z=Te({x:400,y:300,k:1,width:800,height:600}),nn=m(()=>R.value.k/z.value.k);function rn(){U.value||=(z.value={...R.value,width:I.value,height:L.value},!0)}let B=y(null),an=y(!1),V=y(null),on=y(null),sn=y(`pointer`),cn=null,ln=null,un,dn,fn=!1,pn=0,mn=!1,hn=!1,H=null,gn=!1,_n=!0,vn=!1,U=y(!1),W=/* @__PURE__ */ new Map,yn=m(()=>B.value??(j.value.interaction.highlight.keepSelection?V.value:null)),bn=m(()=>F.value.adjacency.get(yn.value)||/* @__PURE__ */ new Set),xn=m(()=>F.value.nodes.length<=j.value.performance.effectThreshold),G=m(()=>!Xt.node&&F.value.nodes.length>j.value.performance.nodeBatchThreshold&&!(xn.value&&N.value.nodes.gradient)),Sn=m(()=>F.value.links.map(e=>We(e,N.value.links))),Cn=m(()=>Ge(Sn.value)),wn=m(()=>{let e=N.value.links.pulses;return A.value?[]:e.showOnHover?B.value===null?[]:Sn.value.filter(({link:e})=>Ve(e,B.value,j.value.interaction.highlight.neighbors?F.value.adjacency.get(B.value):void 0)):e.show?Sn.value:[]}),Tn=y(null),En=/* @__PURE__ */ new Map,Dn=/* @__PURE__ */ new Map,On=null,kn=null,An=m(()=>He(wn.value,N.value.links.pulses,Fn.value?K.value:null,In.value,j.value.interaction.highlight.neighbors?Pn.value:void 0));function jn(e){let t=/* @__PURE__ */ new Set,n=N.value.links.pulses;for(let r of An.value){let i=En.get(r.key);if(!i)continue;let a=[];for(let i of r.items){let r=i.link.index;t.add(r);let o=Ue(i,Dn.get(r)??r*.61803398875%1,e,n.duration,n.reverse);Dn.set(r,o.progress),a.push(Ke({...o,radius:n.radius}))}i.setAttribute(`d`,a.join(` `))}for(let e of Dn.keys())t.has(e)||Dn.delete(e)}function Mn(e){On=null;let t=kn===null?0:Math.min(50,e-kn);kn=e,jn(t),Tn.value&&An.value.length?On=requestAnimationFrame(Mn):kn=null}let Nn=m(()=>G.value?qe(F.value.nodes):[]),K=y(null);w(yn,e=>{e!==null&&(K.value=e)},{immediate:!0});let Pn=m(()=>F.value.adjacency.get(K.value)||/* @__PURE__ */ new Set),Fn=m(()=>j.value.interaction.highlight.enabled&&yn.value!==null),In=m(()=>Fn.value?j.value.interaction.highlight.dimOpacity:1),Ln=m(()=>K.value===null?[]:Ge(Sn.value,e=>Ve(e,K.value,j.value.interaction.highlight.neighbors?Pn.value:void 0))),Rn=m(()=>{if(!N.value.links.arrows.showOnHover||B.value===null)return[];let e=B.value,t=F.value.adjacency.get(e)||/* @__PURE__ */ new Set;return Ge(Sn.value,n=>Ve(n,e,j.value.interaction.highlight.neighbors?t:void 0))}),zn=m(()=>!G.value||K.value===null?[]:qe(F.value.nodes,e=>e.id===K.value||j.value.interaction.highlight.neighbors&&Pn.value.has(e.id)));w([An,Tn,()=>N.value.links.pulses.radius],()=>{Tn.value&&An.value.length?(jn(0),On===null&&(On=requestAnimationFrame(Mn))):(On!==null&&cancelAnimationFrame(On),On=null,kn=null,Dn.clear())},{flush:`post`});function Bn(e){let t=e*j.value.interaction.highlight.dimOpacity;return Fn.value?(e-t)/Math.max(1e-6,1-t):0}let Vn=m(()=>F.value.byId.get(V.value)),q=m(()=>F.value.byId.get(B.value)),Hn=m(()=>{let e=F.value.nodes.filter((e,t)=>sr(e,t));if(!G.value)return e;let t=Math.max(1,N.value.nodes.labels.maxCount);return e.sort((e,t)=>Number(t.id===yn.value||t.id===V.value)-Number(e.id===yn.value||e.id===V.value)).slice(0,t)}),J=y(null),Un=y(!1),Wn=null,Gn=null,Kn=null,qn=null;function Jn(e){if(!U.value)return{};let t=Vr(e),n=R.value,r={x:(t.x-n.x)/n.k,y:(t.y-n.y)/n.k};return Gn!==F.value.nodes&&(Wn=Je(F.value.nodes,[]),Gn=F.value.nodes),{node:Wn.nodeAt(r,2/n.k)}}function Yn(e){if(P.value||H||!U.value)return;gn=!1;let t=e.target?.closest?.(`.vue-ui-graph-node`),n=(!G.value&&t?F.value.nodes[Number(t.dataset.nodeIndex)]:null)||Jn(e).node;n?(J.value=null,B.value===n.id?Wr(e,n):Z(n,e)):B.value!==null&&Z(null)}function Xn(e){if(!P.value){if(W.has(e.pointerId)){qr(e);return}qn=e,Kn===null&&(Kn=requestAnimationFrame(()=>{Kn=null,Yn(qn),qn=null}))}}function Zn(){Kn!==null&&cancelAnimationFrame(Kn),Kn=null,qn=null,H||Z(null)}function Qn(e){if(G.value){let t=Jn(e);if(t.node){Kr(e,t.node);return}}Kr(e)}function $n(e){if(P.value)return;if(hn){hn=!1;return}let t=Jn(e);G.value&&t.node?zr(t.node):Yr()}function er(){if(!_n||P.value||!F.value.nodes.length||gn)return;Un.value=!0;let e=F.value.byId.get(J.value)||Vn.value||F.value.nodes[0];J.value=e.id,Z(e)}function tr(e){if(P.value)return;if([`ArrowRight`,`ArrowLeft`,`ArrowUp`,`ArrowDown`,`Home`,`End`,`Enter`,` `].includes(e.key)&&(gn=!1,Un.value=!0),e.key===`Escape`){e.preventDefault(),e.stopPropagation(),J.value=null,Z(null),Br();return}let t=F.value.nodes;if(!t.length)return;let n=Math.max(0,t.findIndex(e=>e.id===J.value));if([`ArrowRight`,`ArrowDown`,`ArrowLeft`,`ArrowUp`,`Home`,`End`].includes(e.key)){if(e.preventDefault(),e.key===`Home`)n=0;else if(e.key===`End`)n=t.length-1;else{let r=t[n],i=e.key===`ArrowRight`||e.key===`ArrowLeft`,a=e.key===`ArrowRight`||e.key===`ArrowDown`?1:-1,o=1/0,s=null;for(let e of t){let t=e.x-r.x,n=e.y-r.y;if((i?t:n)*a<=0)continue;let c=t*t+n*n;c<o&&(o=c,s=e)}if(!s){let e=1/0,n=1/0;for(let o of t){if(o===r)continue;let t=(i?o.x:o.y)*a,c=Math.abs(i?o.y-r.y:o.x-r.x);(t<e||t===e&&c<n)&&(e=t,n=c,s=o)}}s&&(n=s.index)}J.value=t[n].id,Z(t[n])}else(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),zr(t[n]))}let Y=m(()=>F.value.byId.get(B.value)),nr=m(()=>({datapoint:Y.value?.raw,node:Y.value?.raw,connections:Y.value?.degree,config:j.value})),rr=m(()=>{let e=F.value.byId.get(B.value),t=k.value?.getBoundingClientRect();if(!e||!t)return{x:0,y:0};let n={x:e.x*R.value.k+R.value.x,y:e.y*R.value.k+R.value.y},r=k.value.getScreenCTM?.();return r?{x:r.a*n.x+r.c*n.y+r.e,y:r.b*n.x+r.d*n.y+r.f}:{x:t.left+(e.x*R.value.k+R.value.x)*(t.width/I.value),y:t.top+(e.y*R.value.k+R.value.y)*(t.height/L.value)}}),ir=m(()=>{let e=Y.value;return e?typeof j.value.tooltip.customFormat==`function`?String(j.value.tooltip.customFormat(nr.value)):[e.label??e.id,e.group==null?``:`Group: ${e.group}`,e.value==null?``:`Value: ${e.value}`,`Connections: ${e.degree}`,j.value.tooltip.showMetadata&&e.metadata?Ye(e.metadata):``].filter(Boolean).join(`
|
|
2
|
-
`):``});function ar(e){return yn.value===null||e===yn.value||j.value.interaction.highlight.neighbors&&bn.value.has(e)}function or(e){return j.value.interaction.highlight.enabled&&!ar(e)?j.value.interaction.highlight.dimOpacity:1}function sr(e,t){let n=N.value.nodes.labels;return!n.show||R.value.k<n.minZoom?!1:n.selectedOnly?e.id===V.value:e.id===yn.value||yn.value!==null&&bn.value.has(e.id)?!0:!n.hoverOnly&&!n.selectedOnly&&t%Math.max(1,Math.ceil(F.value.nodes.length/Math.max(1,n.maxCount)))===0}function cr(e){let{labels:t,hover:n,selected:r,strokeWidth:i}=N.value.nodes,a=Math.max(5,i/2,n.strokeWidth/2,r.strokeWidth/2),o=e.radius+a+t.strokeWidth/2+t.fontSize*.6,s=(lr(e).split(`
|
|
3
|
-
`).length-1)*t.fontSize;return(t.position===`top`?-o-s:o)+t.offsetY}function lr(e){let t=N.value.nodes.labels.maxLength;return String(e.label??e.id).replace(/\r\n?/g,`
|
|
4
|
-
`).split(`
|
|
5
|
-
`).map(e=>t>0&&e.length>t?e.slice(0,t)+`…`:e).join(`
|
|
6
|
-
`)}function ur(e){return String(e).replace(/[&<>"']/g,e=>({"&":`&`,"<":`<`,">":`>`,'"':`"`,"'":`'`})[e])}function dr(e,t=!1){return i({content:ur(lr(e)),fontSize:N.value.nodes.labels.fontSize,fill:ur(N.value.nodes.labels.color),stroke:ur(N.value.backgroundColor),strokeWidth:N.value.nodes.labels.strokeWidth,x:t?e.x:0,y:(t?e.y:0)+cr(e)})}let fr=null;function pr(){fr?.(),fr=null,ln!==null&&cancelAnimationFrame(ln),ln=null,fn&&(fn=!1,E(`layoutEnd`,Rr()))}function mr(){Gn=null,Ee(F)}let hr=!1;function gr(){mr();let e=hr||!U.value&&j.value.viewport.initialFit&&!vr;hr=!1,e&&Pr(!1),rn(),pr()}function _r(){if(ln=null,mn||P.value)return;let e=0,t=performance.now();for(let n=0;n<Math.max(1,j.value.performance.stepsPerFrame)&&(e=Fe(F.value,j.value.layout,Math.max(.015,1-pn/Math.max(1,j.value.layout.iterations))),pn++,!(pn>=j.value.layout.iterations||performance.now()-t>=8));n++);pn>=j.value.layout.iterations||pn>30&&e<.002?gr():(mr(),ln=requestAnimationFrame(_r))}let vr=!1;function yr(){if(Qe.value&&!mn){if(P.value){vn=!0;return}if(pr(),pn=0,!F.value.nodes.length){hr=!1;return}fn=!0,E(`layoutStart`),!U.value||A.value||!j.value.animation.enabled?fr=Be(F.value,j.value.layout,()=>{fr=null,gr()},{eager:A.value||!j.value.animation.enabled}):ln=requestAnimationFrame(_r)}}function br(e){return JSON.stringify([(e?.nodes||[]).map(e=>[e?.id,e?.group,e?.radius,e?.value,e?.fixed,e?.x,e?.y]),(e?.links||[]).map(e=>[e?.source,e?.target,e?.value])])}let xr,Sr,Cr=M.value;w(()=>[Yt.value,j.value,M.value],()=>{let e=br(Yt.value),t=e!==xr,n=M.value!==Cr,r=JSON.stringify([j.value.layout,j.value.animation.enabled]),i=r!==Sr;(t&&U.value&&!(Yt.value?.nodes||[]).some(e=>F.value.byId.has(e?.id))||n)&&(X(),U.value=!1,vr=!1,J.value=null),F.value=Ne(Yt.value,n?/* @__PURE__ */ new Map:F.value.byId,j.value,e=>{j.value.debug&&console.warn(`[VueUiGraph] ${e}`)}),tn.value=F.value,F.value.byId.has(V.value)||(V.value=null),F.value.byId.has(B.value)||(B.value=null),xr=e,Cr=M.value,Sr=r,(t||n||i||Qe.value&&!U.value)&&(t&&Qe.value&&j.value.viewport.fitOnUpdate&&(hr=!0),yr())},{deep:!0,immediate:!0});let wr=null,Tr=null,Er=null,Dr=0;function X(){Dr+=1,wr!==null&&cancelAnimationFrame(wr),wr=null,Tr=null,Er=null}function Or(){let e=Tr,t=Er;X(),e&&(R.value={...e},t&&E(t,{...R.value}))}function kr(e,t=!0,n=!0,r=`zoom`){if(X(),mn)return;let i=Dr;t&&(vr=!0,bi=!1);let a=n===`wheel`,o=a?Math.min(120,j.value.animation.duration):j.value.animation.duration;if(!n||!t||!Qe.value||A.value||!j.value.animation.enabled||o<=0){R.value=e,t&&E(r,{...R.value});return}let s={...R.value};Tr=e,Er=r;let c=null;function l(t){if(mn||i!==Dr)return;wr=null,c===null&&(c=t);let n=Math.min(1,(t-c)/o),u=a?n*(2-n):n<.5?2*n*n:-1+(4-2*n)*n;R.value=n===1?{...e}:{x:s.x+(e.x-s.x)*u,y:s.y+(e.y-s.y)*u,k:s.k+(e.k-s.k)*u},(r===`zoom`||n===1)&&E(r,{...R.value}),!(mn||i!==Dr)&&(n<1?wr=requestAnimationFrame(l):(Tr=null,Er=null))}wr=requestAnimationFrame(l)}w(()=>j.value.animation.enabled,e=>{e||Or()}),w($t,e=>{e||X()});function Ar(e,t={x:I.value/2,y:L.value/2},n=!0,r=!0){let i=j.value.interaction.zoom,a=Tr||R.value;e=Math.max(i.min*z.value.k,Math.min(i.max*z.value.k,e)),kr({x:t.x-(t.x-a.x)*e/a.k,y:t.y-(t.y-a.y)*e/a.k,k:e},n,r)}function jr(){$t.value&&Ar((Tr||R.value).k*1.25)}function Mr(){$t.value&&Ar((Tr||R.value).k/1.25)}function Nr(){Qt.value||kr({x:z.value.x+(I.value-z.value.width)/2,y:z.value.y+(L.value-z.value.height)/2,k:z.value.k},!0,!0,`zoomReset`)}function Pr(e=!0){if(e&&Qt.value)return;let t=F.value.nodes;if(!t.length)return kr({x:I.value/2,y:L.value/2,k:1},e);let n=1/0,r=-1/0,i=1/0,a=-1/0;for(let e of t)n=Math.min(n,e.x-e.radius),r=Math.max(r,e.x+e.radius),i=Math.min(i,e.y-e.radius),a=Math.max(a,e.y+e.radius);for(let e of Sn.value){let t=e.d.match(/-?\d*\.?\d+(?:e[+-]?\d+)?/gi).map(Number),o=e.width*(e.directed?3:.5);for(let e=0;e<t.length;e+=2)n=Math.min(n,t[e]-o),r=Math.max(r,t[e]+o),i=Math.min(i,t[e+1]-o),a=Math.max(a,t[e+1]+o)}let o=N.value.nodes.labels,s=G.value?Hn.value:t.filter(sr),c;s.length&&k.value&&(c=document.createElementNS(`http://www.w3.org/2000/svg`,`text`),typeof c.getComputedTextLength!=`function`&&(c=null)),c&&(c.setAttribute(`visibility`,`hidden`),c.setAttribute(`font-size`,o.fontSize),k.value.appendChild(c));try{for(let e of s){let t=lr(e).split(`
|
|
7
|
-
`),s=0;for(let e of t){let t=0;c&&(c.textContent=e,t=c.getComputedTextLength()),s=Math.max(s,t||[...e].length*o.fontSize)}let l=o.strokeWidth/2,u=e.y+cr(e);n=Math.min(n,e.x-s/2-l),r=Math.max(r,e.x+s/2+l),i=Math.min(i,u-o.fontSize*.8-l),a=Math.max(a,u+(t.length-1)*o.fontSize+o.fontSize*.8+l)}}finally{c?.remove()}let l=j.value.interaction.zoom,u=N.value.padding,d=Math.min(l.max,Math.max(1,I.value-u*2)/Math.max(1,r-n),Math.max(1,L.value-u*2)/Math.max(1,a-i));kr({x:I.value/2-(n+r)/2*d,y:L.value/2-(i+a)/2*d,k:d},e)}function Fr(e){if(P.value)return;let t=F.value.byId.get(e);if(!t)return;let n=Tr||R.value;kr({...n,x:I.value/2-t.x*n.k,y:L.value/2-t.y*n.k}),zr(t)}function Ir(){X(),F.value=Ne(Yt.value,/* @__PURE__ */ new Map,j.value),tn.value=F.value,vr=!1,yr()}async function Lr(){let e={config:j.value,dataset:ze.dataset};if(E(`copyAlt`,e),!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(e))}function Rr(){return{nodes:F.value.nodes.map(e=>({...e.raw,x:e.x,y:e.y})),links:F.value.links.map(e=>({...e.raw}))}}function zr(e){if(!(M.value||P.value)){if(hn){hn=!1;return}V.value=e.id,j.value.events.datapointClick?.({datapoint:e.raw,seriesIndex:e.index}),E(`selectNode`,e.raw)}}function Br(){V.value=null,E(`selectNode`,null)}function Vr(e){let t=k.value.getScreenCTM?.();if(t){let n=t.inverse();return{x:n.a*e.clientX+n.c*e.clientY+n.e,y:n.b*e.clientX+n.d*e.clientY+n.f}}let n=k.value.getBoundingClientRect();return{x:(e.clientX-n.left)*I.value/(n.width||I.value),y:(e.clientY-n.top)*L.value/(n.height||L.value)}}function Hr(){sn.value===`pointer`&&cn&&on.value?.placeTooltip(cn)}w(on,Hr);let Ur=null;w(B,e=>{let t=Ur,n=F.value.byId.get(e);Ur=n,t&&j.value.events.datapointLeave?.({datapoint:t.raw,seriesIndex:t.index}),n&&j.value.events.datapointEnter?.({datapoint:n.raw,seriesIndex:n.index})},{flush:`sync`});function Wr(e,t){e?.clientX==null?t&&(sn.value=`keyboard`):(sn.value=`pointer`,cn={x:e.clientX,y:e.clientY},ve(()=>{mn||Hr()}))}function Z(e,t){(M.value||P.value||gn)&&e||(B.value=e?.id??null,e&&Wr(t,e),E(`hoverNode`,e?.raw??null))}function Gr(){an.value=!1;let[e,t]=[...W.values()];H={type:`pinch`,distance:Math.max(1,Math.hypot(t.x-e.x,t.y-e.y)),mid:{x:(e.x+t.x)/2,y:(e.y+t.y)/2},view:{...R.value},moved:!0}}function Kr(e,t){if(P.value||(gn=!1,e.button&&e.button!==0||!t&&Zt.value))return;X(),bi=!1;let n=Vr(e);if(W.set(e.pointerId,n),k.value.setPointerCapture?.(e.pointerId),W.size===2){H?.type===`node`&&(H.node.pinned=H.wasPinned),Gr(),Z(null);return}W.size>2||(t&&j.value.interaction.drag.enabled?H={type:`node`,node:t,start:n,moved:!1,wasPinned:t.pinned}:t||(H={type:`pan`,start:n,view:{...R.value},moved:!1}))}function qr(e){if(!W.has(e.pointerId)||!H)return;let t=Vr(e);if(W.set(e.pointerId,t),H.type===`pinch`){if(!$t.value)return;let[e,t]=[...W.values()];if(!e||!t)return;let n=Math.max(1,Math.hypot(t.x-e.x,t.y-e.y)),r={x:(e.x+t.x)/2,y:(e.y+t.y)/2},i=j.value.interaction.zoom,a=Math.max(i.min*z.value.k,Math.min(i.max*z.value.k,H.view.k*n/H.distance)),o=j.value.interaction.pan.enabled?r:H.mid;kr({k:a,x:o.x-(H.mid.x-H.view.x)*a/H.view.k,y:o.y-(H.mid.y-H.view.y)*a/H.view.k},!0,!1),H.view={...R.value},H.distance=n,j.value.interaction.pan.enabled&&(H.mid=r);return}if(Math.hypot(t.x-H.start.x,t.y-H.start.y)>3&&(H.moved=!0),H.moved){if(H.type===`node`){an.value=!0;let e=H.node;e.pinned=!0,e.x=(t.x-R.value.x)/R.value.k,e.y=(t.y-R.value.y)/R.value.k,e.vx=e.vy=0,mr(),!fn&&!A.value&&yr()}else j.value.interaction.pan.enabled&&!Zt.value&&(R.value={...H.view,x:H.view.x+t.x-H.start.x,y:H.view.y+t.y-H.start.y},vr=!0,E(`zoom`,{...R.value}))}}function Jr(e){if(W.has(e.pointerId)&&(W.delete(e.pointerId),an.value=!1,H)){if(H.type===`node`&&H.moved){let e=H.node;e.userPinned=j.value.interaction.drag.pinOnRelease,e.pinned=!!e.fixed||!!e.userPinned||H.wasPinned,yr()}hn=H.moved,W.size?H.type===`pinch`&&(W.size>=2?Gr():H={type:`pan`,start:[...W.values()][0],view:{...R.value},moved:!0}):H=null}}function Yr(){if(hn){hn=!1;return}Br()}function Xr(e){if(!$t.value)return;e.preventDefault();let t=e.deltaY*(e.deltaMode===1?16:e.deltaMode===2?L.value:1);e.ctrlKey?Ar(R.value.k*Math.exp(-t*.01),Vr(e),!0,!1):Ar((Tr||R.value).k*Math.exp(-t*.001),Vr(e),!0,`wheel`)}function Zr(){let e=I.value,t=L.value,n=O.value?.getBoundingClientRect(),r=O.value?.parentElement,i=r?.getBoundingClientRect(),a=r?getComputedStyle(r):null,o=!1;if(j.value.responsive&&!Q.value&&r&&i?.height>0){let e=O.value.style.position;try{O.value.style.position=`absolute`,o=Math.abs(r.getBoundingClientRect().height-i.height)<.5}finally{O.value.style.position=e}}let s=o&&i?.height?i.height-(parseFloat(a?.paddingTop)||0)-(parseFloat(a?.paddingBottom)||0):0,c=O.value?[...O.value.children].reduce((e,t)=>{if(t===k.value||!(t instanceof HTMLElement))return e;let n=getComputedStyle(t);return n.position===`absolute`||n.position===`fixed`?e:e+t.getBoundingClientRect().height},0):0,l=Q.value?k.value?.getBoundingClientRect():null;I.value=Q.value?Math.max(1,l?.width||n?.width||window.innerWidth):j.value.responsive&&n?.width>0?n.width:N.value.width,L.value=Q.value?Math.max(1,l?.height||n?.height||window.innerHeight):j.value.responsive&&s>0?Math.max(1,s-c):N.value.height,(e!==I.value||t!==L.value)&&X();let u=!Q.value&&bi?yi:null;R.value=u?{...u.viewport,x:u.viewport.x+(I.value-u.width)/2,y:u.viewport.y+(L.value-u.height)/2}:{...R.value,x:R.value.x+(I.value-e)/2,y:R.value.y+(L.value-t)/2};let d=U.value&&!vr&&j.value.viewport.initialFit&&!Q.value&&!u&&(e!==I.value||t!==L.value);(j.value.viewport.fitOnResize||d)&&(Pr(!1),d&&(z.value={...R.value,width:I.value,height:L.value}))}function Qr(){xi(document.fullscreenElement===O.value),ve(()=>{mn||Zr()})}function $r(){A.value=!!dn?.matches,A.value&&Or(),yr()}function ei(){gn=!0,X(),H?.type===`node`&&(H.node.pinned=H.wasPinned);let e=[...W.keys()];H=null,W.clear(),an.value=!1,J.value=null,Un.value=!1,li.value=!1,cn=null,Zn();for(let t of e)k.value?.hasPointerCapture?.(t)&&k.value.releasePointerCapture?.(t)}function ti(){document.visibilityState===`hidden`&&ei()}function ni(e){[`Shift`,`Control`,`Alt`,`Meta`].includes(e.key)||(_n=!0),e.key===`Tab`&&(gn=!1)}function ri(){_n=!1,Un.value=!1}function ii(e){_n&&(gn||(J.value=e.id,Z(e)))}Ce(()=>{Qe.value=!0,Zr(),dn=window.matchMedia?.(`(prefers-reduced-motion: reduce)`),A.value=!!dn?.matches,dn?.addEventListener?.(`change`,$r),typeof ResizeObserver<`u`&&(un=new ResizeObserver(Zr),un.observe(O.value),O.value.parentElement&&un.observe(O.value.parentElement),un.observe(k.value)),window.addEventListener(`resize`,Zr),window.addEventListener(`blur`,ei),document.addEventListener(`visibilitychange`,ti),document.addEventListener(`keydown`,ni,!0),document.addEventListener(`pointerdown`,ri,!0),document.addEventListener(`fullscreenchange`,Qr),yr()}),Se(()=>{mn=!0,On!==null&&cancelAnimationFrame(On),En.clear(),Dn.clear(),X(),pr(),un?.disconnect(),window.removeEventListener(`resize`,Zr),window.removeEventListener(`blur`,ei),document.removeEventListener(`visibilitychange`,ti),document.removeEventListener(`keydown`,ni,!0),document.removeEventListener(`pointerdown`,ri,!0),document.removeEventListener(`fullscreenchange`,Qr),dn?.removeEventListener?.(`change`,$r),W.clear(),Kn!==null&&cancelAnimationFrame(Kn),qn=null,Wn=null,Gn=null,H=null}),w(()=>[N.value.width,N.value.height,j.value.responsive],()=>{Qe.value&&Zr()});let ai=y(null),oi=y(null),Q=y(!1),si=y(!1),ci=y(!1),li=y(!1),$=y({showTable:j.value.table.show,showTooltip:j.value.tooltip.show}),ui=m(()=>Xe(tn.value,j.value.table.columnNames)),di=m(()=>JSON.stringify(j.value.table)),fi=m(()=>({th:j.value.table.th,td:j.value.table.td,breakpoint:j.value.table.responsiveBreakpoint})),pi=m(()=>ae({config:j,style:N,mutableConfig:$,dialog:Re,accordion:Le,isFullscreen:Q,parent:O,maxWidth:1e3,isCursorPointer:m(()=>j.value.userOptions.useCursorPointer)})),mi=m(()=>!j.value.userOptions.showOnChartHover||li.value);w(()=>j.value.table.show,e=>{$.value.showTable=e}),w([oi,()=>$.value.showTable],([e,t])=>{e&&j.value.table.useDialog&&!j.value.table.show&&(t?e.open?.():e.close?.())},{flush:`post`}),w(()=>$.value.showTable,async e=>{await ve(),ai.value?.setTableIconState(e)}),w(ai,e=>{e?.setTableIconState($.value.showTable),e?.setTooltipIconState($.value.showTooltip)}),w(()=>$.value.showTooltip,e=>ai.value?.setTooltipIconState(e)),w(()=>j.value.tooltip.show,e=>{$.value.showTooltip=e});function hi(){(P.value||j.value.userOptions.buttons.annotator)&&(P.value=!P.value)}w(P,e=>{e?(X(),H?.type===`node`&&(H.node.pinned=H.wasPinned),H=null,W.clear(),an.value=!1,Zn(),fn&&(vn=!0,pr())):vn&&(vn=!1,yr())},{flush:`sync`}),w(()=>j.value.userOptions.buttons.annotator,e=>{e||(P.value=!1)});function gi(){$.value.showTooltip=!$.value.showTooltip}function _i(){$.value.showTable=!$.value.showTable}function vi(){$.value.showTable=!1}let yi=null,bi=!1;function xi(e){e&&document.fullscreenElement&&document.fullscreenElement!==O.value&&(e=!1),e!==Q.value&&(X(),e?(yi={viewport:{...R.value},width:I.value,height:L.value},bi=!1):bi=!0,Q.value=e)}w(Q,e=>{mn||(Zr(),e&&U.value&&F.value.nodes.length&&Pr(!1))},{flush:`post`});function Si(e=null){let t=Ze(ui.value,N.value.title,j.value.table.columnNames);if(typeof e==`function`)e(t);else{let e=URL.createObjectURL(new Blob([t.slice(t.indexOf(`,`)+1)],{type:`text/csv;charset=utf-8`})),n=document.createElement(`a`);n.href=e,n.download=`${N.value.title.text||`vue-ui-graph`}.csv`,document.body.appendChild(n);try{n.click()}finally{n.remove(),URL.revokeObjectURL(e)}}return t}let Ci=ee(O,()=>N.value.title.text);async function wi(){if(!si.value){si.value=!0;try{await ve();let{default:e}=await import(`./img-DiP2_5_r.js`).then(e=>e.n);return await e({domElement:O.value,fileName:N.value.title.text||`vue-ui-graph`,format:`png`,scale:j.value.userOptions.print.scale})}finally{si.value=!1}}}async function Ti(){if(!ci.value){ci.value=!0;try{let{default:e}=await import(`./pdf-y3S8SBFk.js`);return await e({domElement:O.value,fileName:N.value.title.text||`vue-ui-graph`,...j.value.userOptions.print})}finally{ci.value=!1}}}let Ei=ie({svg:k,title:m(()=>N.value.title),backgroundColor:m(()=>N.value.backgroundColor),legend:null,legendItems:null,getSvgCallback:()=>j.value.userOptions.callbacks.svg,generateImage:wi});function Di(e={isCb:!1}){return Ei.generateSvg(e)}let{isCallbackImaging:Oi,isCallbackSvg:ki,onGenerateImage:Ai}=Ei;return n({copyAlt:Lr,zoomIn:jr,zoomOut:Mr,resetZoom:Nr,fitToView:Pr,focusNode:Fr,resetLayout:Ir,getData:Rr,getImage:Ci,generateImage:wi,generatePdf:Ti,generateCsv:Si,generateSvg:Di,toggleTable:_i,toggleFullscreen:xi,toggleZoom:en,toggleTooltip:gi,toggleAnnotator:hi}),(e,t)=>(v(),g(`div`,{id:D.value,ref_key:`root`,ref:O,class:ye([`vue-ui-graph vue-data-ui-component`,{"vue-ui-graph-fullscreen":Q.value}]),style:xe({background:N.value.backgroundColor,color:N.value.color,fontFamily:N.value.fontFamily,"--graph-transition":!A.value&&j.value.animation.enabled?`${j.value.animation.duration}ms`:`0ms`}),onKeydown:t[6]||=Oe(e=>!P.value&&Br(),[`esc`]),onMouseenter:t[7]||=e=>li.value=!0,onMouseleave:t[8]||=e=>li.value=!1,onFocusin:t[9]||=e=>li.value=!0,onFocusout:t[10]||=e=>li.value=!!e.relatedTarget&&O.value.contains(e.relatedTarget)},[j.value.userOptions.buttons.annotator?(v(),de(C(d),{key:0,svgRef:k.value,backgroundColor:N.value.backgroundColor,color:N.value.color,active:P.value,isCursorPointer:j.value.userOptions.useCursorPointer,palette:j.value.userOptions.annotatorPalette,onClose:hi},fe({_:2},[b(C(se),t=>({name:t,fn:T(n=>[x(e.$slots,t,be(ge(C(oe)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):h(``,!0),U.value&&j.value.userOptions.show&&F.value.nodes.length&&!C(M)&&(j.value.userOptions.keepStateOnChartLeave||mi.value)?(v(),de(C(Pe),{key:1,ref_key:`userOptionsRef`,ref:ai,uid:D.value,chartElement:O.value,backgroundColor:N.value.backgroundColor,color:N.value.color,isPrinting:ci.value,isImaging:si.value||C(Oi)||C(ki),hasAltCopy:j.value.userOptions.buttons.altCopy,onCopyAlt:Lr,hasPdf:j.value.userOptions.buttons.pdf,hasImg:j.value.userOptions.buttons.img,hasSvg:j.value.userOptions.buttons.svg,hasXls:j.value.userOptions.buttons.csv,hasTable:j.value.userOptions.buttons.table,hasFullscreen:j.value.userOptions.buttons.fullscreen,hasZoom:j.value.userOptions.buttons.zoom,isZoom:$t.value,onToggleZoom:en,hasAnnotator:j.value.userOptions.buttons.annotator,isAnnotation:P.value,onToggleAnnotator:hi,hasTooltip:j.value.tooltip.show&&j.value.userOptions.buttons.tooltip,isTooltip:$.value.showTooltip,onToggleTooltip:gi,hasLabel:!1,isFullscreen:Q.value,position:j.value.userOptions.position,titles:j.value.userOptions.buttonTitles,callbacks:j.value.userOptions.callbacks,printScale:j.value.userOptions.print.scale,isCursorPointer:j.value.userOptions.useCursorPointer,style:xe({visibility:mi.value?`visible`:`hidden`}),onToggleTable:_i,onGenerateCsv:Si,onGenerateImage:C(Ai),onGenerateSvg:Di,onGeneratePdf:Ti,onToggleFullscreen:xi},fe({_:2},[b(C(ce)(e.$slots,`menuIcon optionPdf optionImg optionSvg optionCsv optionTable optionFullscreen optionZoom optionTooltip optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:T(n=>[x(e.$slots,t,be(ge(C(le)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `uid.chartElement.backgroundColor.color.isPrinting.isImaging.hasAltCopy.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasFullscreen.hasZoom.isZoom.hasAnnotator.isAnnotation.hasTooltip.isTooltip.isFullscreen.position.titles.callbacks.printScale.isCursorPointer.style.onGenerateImage`.split(`.`))):h(``,!0),N.value.title.text||N.value.title.subtitle.text?(v(),g(`div`,et,[me(re,{config:{title:{cy:`graph-title`,...N.value.title},subtitle:{cy:`graph-subtitle`,...N.value.title.subtitle}}},null,8,[`config`])])):h(``,!0),N.value.controls.show&&N.value.controls.position===`top`&&!C(M)?(v(),de(ne,{key:3,config:j.value,scale:nn.value,isCursorPointer:j.value.userOptions.useCursorPointer,zoomEnabled:$t.value,viewLocked:Qt.value,withFit:``,onZoomIn:jr,onZoomOut:Mr,onResetZoom:Nr,onFitToView:t[0]||=e=>Pr()},null,8,[`config`,`scale`,`isCursorPointer`,`zoomEnabled`,`viewLocked`])):h(``,!0),(v(),g(`svg`,{ref_key:`svg`,ref:k,class:`vue-ui-graph-svg`,viewBox:`0 0 ${I.value} ${L.value}`,style:xe({height:Q.value?`0px`:j.value.responsive?`${L.value}px`:`auto`,aspectRatio:`${I.value} / ${L.value}`,touchAction:`none`,cursor:G.value&&q.value?`grab`:void 0}),role:`group`,"aria-label":N.value.title.text||`Interactive network graph`,"aria-busy":C(M)||!U.value&&F.value.nodes.length>0,"aria-describedby":`${D.value}-keyboard-hint`,onWheel:Xr,tabindex:P.value?-1:0,"aria-activedescendant":q.value?G.value?`${D.value}-active-node`:`${D.value}-node-${q.value.index}`:void 0,onFocus:er,onBlur:t[3]||=e=>{Un.value=!1,Zn()},onKeydown:tr,onClick:$n,onPointerleave:Zn,onPointerdown:Qn,onPointermove:Xn,onPointerup:Jr,onPointercancel:Jr,onLostpointercapture:Jr,onDblclick:t[4]||=e=>j.value.interaction.zoom.fitOnDoubleClick&&Pr()},[_(`desc`,{id:`${D.value}-keyboard-hint`},S(j.value.a11y.translations.keyboardNavigation),9,nt),_(`defs`,null,[_(`filter`,{id:`${D.value}-glow`,x:`-100%`,y:`-100%`,width:`300%`,height:`300%`},[_(`feGaussianBlur`,{in:`SourceGraphic`,stdDeviation:N.value.nodes.glow.blur,result:`blur`},null,8,it),_(`feComponentTransfer`,at,[_(`feFuncA`,{type:`linear`,slope:N.value.nodes.glow.opacity},null,8,ot)]),t[11]||=_(`feMerge`,null,[_(`feMergeNode`,{in:`halo`}),_(`feMergeNode`,{in:`SourceGraphic`})],-1)],8,rt),_(`radialGradient`,{id:`${D.value}-gradient`},[_(`stop`,{offset:`0`,"stop-color":N.value.nodes.gradientColor,"stop-opacity":`0.65`},null,8,ct),_(`stop`,{offset:`1`,"stop-color":N.value.nodes.gradientColor,"stop-opacity":`0`},null,8,lt)],8,st)]),_(`rect`,{width:`100%`,height:`100%`,fill:N.value.backgroundColor},null,8,ut),x(e.$slots,`chart-background`,{width:I.value,height:L.value,config:j.value},void 0,!0),U.value?(v(),g(`g`,{key:0,class:`vue-ui-graph-network`,transform:`translate(${R.value.x},${R.value.y}) scale(${R.value.k})`},[_(`g`,{class:`vue-ui-graph-links`,"pointer-events":`none`,fill:`none`,filter:xn.value&&N.value.links.glow?`url(#${D.value}-glow)`:void 0},[(v(!0),g(p,null,b(Cn.value,(e,t)=>(v(),g(`g`,{key:t},[_(`path`,{class:`vue-ui-graph-link`,d:e.d,stroke:e.color,"stroke-width":e.width,opacity:N.value.links.opacity*In.value,"pointer-events":`none`},null,8,pt),e.arrowD&&!N.value.links.arrows.showOnHover?(v(),g(`path`,{key:0,class:`vue-ui-graph-arrows`,d:e.arrowD,fill:e.color,opacity:N.value.links.opacity*In.value,stroke:`none`},null,8,mt)):h(``,!0)]))),128)),me(ue,{tag:`g`,name:`vue-ui-graph-highlight`,css:j.value.animation.enabled&&!A.value},{default:T(()=>[(v(!0),g(p,null,b(Ln.value,(e,t)=>(v(),g(`g`,{class:`vue-ui-graph-link-highlight-batch`,key:JSON.stringify([typeof K.value,K.value,t]),opacity:Bn(N.value.links.opacity)},[_(`path`,{class:`vue-ui-graph-link vue-ui-graph-link-highlight`,d:e.d,stroke:e.color,"stroke-width":e.width,"pointer-events":`none`},null,8,gt),e.arrowD&&!N.value.links.arrows.showOnHover?(v(),g(`path`,{key:0,class:`vue-ui-graph-arrows vue-ui-graph-arrows-highlight`,d:e.arrowD,fill:e.color,stroke:`none`},null,8,_t)):h(``,!0)],8,ht))),128))]),_:1},8,[`css`]),(v(!0),g(p,null,b(Rn.value,e=>(v(),g(`path`,{key:e.key,class:`vue-ui-graph-arrows vue-ui-graph-arrows-hover`,d:e.arrowD,fill:e.color,opacity:N.value.links.opacity,stroke:`none`,"pointer-events":`none`},null,8,vt))),128))],8,ft),_(`g`,{ref_key:`pulseLayer`,ref:Tn,class:`vue-ui-graph-pulses`,"pointer-events":`none`,"aria-hidden":`true`},[(v(!0),g(p,null,b(An.value,e=>(v(),g(`path`,{key:e.key,ref_for:!0,ref:t=>t?C(En).set(e.key,t):C(En).delete(e.key),fill:e.color,opacity:e.opacity,stroke:`none`,"pointer-events":`none`},null,8,yt))),128))],512),G.value?(v(),g(`g`,bt,[_(`g`,{stroke:N.value.nodes.stroke,"stroke-width":N.value.nodes.strokeWidth,filter:xn.value&&N.value.nodes.glow.show?`url(#${D.value}-glow)`:void 0},[(v(!0),g(p,null,b(Nn.value,(e,t)=>(v(),g(`path`,{key:t,class:`vue-ui-graph-node-batch`,d:e.d,fill:e.color,opacity:N.value.nodes.opacity*In.value},null,8,St))),128)),me(ue,{tag:`g`,name:`vue-ui-graph-highlight`,css:j.value.animation.enabled&&!A.value},{default:T(()=>[(v(!0),g(p,null,b(zn.value,(e,t)=>(v(),g(`path`,{key:JSON.stringify([typeof K.value,K.value,t]),class:`vue-ui-graph-node-batch`,d:e.d,fill:e.color,opacity:Bn(N.value.nodes.opacity)},null,8,Ct))),128))]),_:1},8,[`css`])],8,xt),Vn.value?(v(),g(`circle`,{key:0,cx:Vn.value.x,cy:Vn.value.y,r:Vn.value.radius,fill:`none`,stroke:N.value.nodes.selected.stroke,"stroke-width":N.value.nodes.selected.strokeWidth,opacity:N.value.nodes.opacity*or(Vn.value.id),class:`vue-ui-graph-node-overlay`},null,8,wt)):h(``,!0),q.value?(v(),g(`g`,{key:1,id:`${D.value}-active-node`,role:`button`,"aria-label":`${q.value.label??q.value.id}, ${q.value.degree} connections`,"aria-pressed":V.value===q.value.id,"aria-describedby":$.value.showTooltip?`${D.value}-tooltip`:void 0},[_(`circle`,{cx:q.value.x,cy:q.value.y,r:q.value.radius,fill:`none`,stroke:V.value===q.value.id?N.value.nodes.selected.stroke:N.value.nodes.hover.stroke,"stroke-width":V.value===q.value.id?N.value.nodes.selected.strokeWidth:N.value.nodes.hover.strokeWidth,opacity:N.value.nodes.opacity,class:`vue-ui-graph-node-overlay`},null,8,Et),J.value===null?h(``,!0):(v(),g(`circle`,{key:0,cx:q.value.x,cy:q.value.y,r:q.value.radius+4,fill:`none`,stroke:N.value.color,"stroke-width":`2`,"stroke-dasharray":`3 2`},null,8,Dt))],8,Tt)):h(``,!0)])):(v(),g(`g`,Ot,[(v(!0),g(p,null,b(F.value.nodes,(n,r)=>(v(),g(`g`,{key:n.id,class:`vue-ui-graph-node`,"data-node-index":n.index,id:`${D.value}-node-${r}`,transform:`translate(${n.x},${n.y})`,opacity:N.value.nodes.opacity*or(n.id),tabindex:-1,role:`button`,"aria-label":`${n.label??n.id}, ${n.degree} connections`,"aria-pressed":V.value===n.id,"aria-describedby":$.value.showTooltip&&B.value===n.id?`${D.value}-tooltip`:void 0,onPointerenter:e=>Z(n,e),onPointerleave:t[1]||=e=>Z(null),onFocus:e=>ii(n),onBlur:t[2]||=e=>Z(null),onPointerdown:ke(e=>Kr(e,n),[`stop`]),onClick:ke(e=>zr(n),[`stop`]),onKeydown:[Oe(ke(e=>zr(n),[`prevent`]),[`enter`]),Oe(ke(e=>zr(n),[`prevent`]),[`space`])]},[$.value.showTooltip?h(``,!0):(v(),g(`title`,At,S(n.label??n.id),1)),x(e.$slots,`node`,{node:n.raw,radius:n.radius,color:n.color,selected:V.value===n.id,hovered:B.value===n.id},()=>[_(`circle`,{class:`vue-ui-graph-circle`,r:n.radius,fill:n.color,stroke:V.value===n.id?N.value.nodes.selected.stroke:B.value===n.id?N.value.nodes.hover.stroke:N.value.nodes.stroke,"stroke-width":V.value===n.id?N.value.nodes.selected.strokeWidth:B.value===n.id?N.value.nodes.hover.strokeWidth:N.value.nodes.strokeWidth,filter:xn.value&&N.value.nodes.glow.show?`url(#${D.value}-glow)`:void 0},null,8,jt),xn.value&&N.value.nodes.gradient?(v(),g(`circle`,{key:0,r:n.radius,fill:`url(#${D.value}-gradient)`,"pointer-events":`none`},null,8,Mt)):h(``,!0)],!0)],40,kt))),128))])),x(e.$slots,`svg`,{nodes:F.value.nodes,links:F.value.links,config:j.value,viewport:R.value},void 0,!0),_(`g`,Nt,[(v(!0),g(p,null,b(Hn.value,e=>(v(),g(`text`,{stroke:N.value.backgroundColor,"stroke-width":N.value.nodes.labels.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,"paint-order":`stroke fill`,key:e.id,x:e.x,y:e.y+cr(e),"text-anchor":`middle`,"font-size":N.value.nodes.labels.fontSize,fill:N.value.nodes.labels.color,opacity:(G.value?1:N.value.nodes.opacity)*or(e.id),"dominant-baseline":`middle`,innerHTML:dr(e,!0),style:{"user-select":`none`}},null,8,Pt))),128))])],8,dt)):h(``,!0),x(e.$slots,`watermark`,{width:I.value,height:L.value},void 0,!0)],44,tt)),x(e.$slots,`skeleton`,{},()=>[C(M)?(v(),de(c,{key:0})):h(``,!0)],!0),e.$slots.hint?(v(),g(`div`,Ft,[x(e.$slots,`hint`,{hint:j.value.a11y.translations.keyboardNavigation,isVisible:Un.value},void 0,!0)])):h(``,!0),N.value.controls.show&&N.value.controls.position===`bottom`&&!C(M)?(v(),de(ne,{key:5,config:j.value,scale:nn.value,isCursorPointer:j.value.userOptions.useCursorPointer,zoomEnabled:$t.value,viewLocked:Qt.value,withFit:``,onZoomIn:jr,onZoomOut:Mr,onResetZoom:Nr,onFitToView:t[5]||=e=>Pr()},null,8,[`config`,`scale`,`isCursorPointer`,`zoomEnabled`,`viewLocked`])):h(``,!0),e.$slots.source?(v(),g(`div`,It,[x(e.$slots,`source`,{},void 0,!0)])):h(``,!0),F.value.nodes.length&&$.value.showTable?(v(),g(`div`,Lt,[(v(),de(we(pi.value.component),_e(pi.value.props,{ref_key:`tableUnit`,ref:oi,onClose:vi}),fe({content:T(()=>[(v(),g(p,null,b([`nodes`,`links`],e=>me(C(Ie),{key:e+di.value,colNames:ui.value[e].head,head:ui.value[e].head,body:ui.value[e].body,config:fi.value,title:j.value.table.columnNames[e],withCloseButton:e===`nodes`&&!(j.value.table.useDialog&&!j.value.table.show),isCursorPointer:j.value.userOptions.useCursorPointer,onClose:vi},{th:T(({th:e})=>[pe(S(e),1)]),td:T(({td:e})=>[pe(S(typeof e==`object`&&e?e.name:e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`])),64))]),_:2},[j.value.table.useDialog&&!j.value.table.show?{name:`title`,fn:T(()=>[pe(S(pi.value.title),1)]),key:`0`}:void 0]),1040))])):h(``,!0),me(C(Me),{ref_key:`tooltipRef`,ref:on,teleportTo:j.value.tooltip.teleportTo,show:$.value.showTooltip&&!an.value&&!!Y.value&&!C(M)&&!P.value,backgroundColor:j.value.tooltip.backgroundColor,color:j.value.tooltip.color,borderRadius:j.value.tooltip.borderRadius,borderColor:j.value.tooltip.borderColor,borderWidth:j.value.tooltip.borderWidth,fontSize:j.value.tooltip.fontSize,backgroundOpacity:j.value.tooltip.backgroundOpacity,position:j.value.tooltip.position,offsetX:j.value.tooltip.offsetX,offsetY:j.value.tooltip.offsetY,parent:O.value,isFullscreen:Q.value,smooth:j.value.tooltip.smooth&&j.value.animation.enabled&&!A.value,backdropFilter:j.value.tooltip.backdropFilter,smoothForce:j.value.tooltip.smoothForce,smoothSnapThreshold:j.value.tooltip.smoothSnapThreshold,isA11yMode:sn.value===`keyboard`,a11yPosition:rr.value},{"tooltip-before":T(()=>[x(e.$slots,`tooltip-before`,be(ge(nr.value)),void 0,!0)]),tooltip:T(()=>[_(`div`,{id:`${D.value}-tooltip`,class:ye([`vue-ui-graph-tooltip-content`,{"vue-ui-graph-tooltip-default":!C(Xt).tooltip&&typeof j.value.tooltip.customFormat!=`function`}])},[x(e.$slots,`tooltip`,be(ge(nr.value)),()=>[typeof j.value.tooltip.customFormat==`function`?(v(),g(p,{key:0},[pe(S(ir.value),1)],64)):Y.value?(v(),g(p,{key:1},[_(`div`,zt,[Y.value.raw.color?(v(),g(`svg`,Bt,[_(`circle`,{cx:`7`,cy:`7`,r:`7`,fill:Y.value.color},null,8,Vt)])):h(``,!0),_(`span`,null,S(Y.value.label??Y.value.id),1)]),Y.value.group==null?h(``,!0):(v(),g(`div`,Ht,[(v(),g(`svg`,Ut,[_(`circle`,{cx:`7`,cy:`7`,r:`7`,fill:Y.value.groupColor},null,8,Wt)])),_(`span`,null,`Group: `+S(Y.value.group),1)])),Y.value.value==null?h(``,!0):(v(),g(`div`,Gt,` Value: `+S(Y.value.value),1)),_(`div`,null,`Connections: `+S(Y.value.degree),1),j.value.tooltip.showMetadata&&Y.value.metadata?(v(),g(`div`,Kt,S(C(Ye)(Y.value.metadata)),1)):h(``,!0)],64)):h(``,!0)],!0)],10,Rt)]),"tooltip-after":T(()=>[x(e.$slots,`tooltip-after`,be(ge(nr.value)),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`borderRadius`,`borderColor`,`borderWidth`,`fontSize`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`isFullscreen`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`])],46,$e))}},[[`__scopeId`,`data-v-337bb90a`]]);export{Qe as n,A as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,D as r,Dt as i,Qt as a,Tt as o,X as s,at as c,b as l,i as u,in as d,nt as f,on as p,pt as ee,r as te,t as ne,yt as re,zt as ie}from"./lib-DqD8nbyX.js";import{n as ae,t as oe}from"./BaseScanner-8NdoBs7B.js";import{n as se,t as ce}from"./useHints-BH9r_0Vd.js";import{t as le}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as ue}from"./useNestedProp-DrLnzyHO.js";import{t as de}from"./useThemeCheck-BKNRbGeC.js";import{t as fe}from"./img-DiP2_5_r.js";import{n as pe}from"./Title-BLA0tM3g.js";import{t as me}from"./useChartExport-DtPNpc9M.js";import{t as he}from"./tableIntegration-CNoJ1CIY.js";import{n as ge,t as _e}from"./annotationSlots-BRR85CqJ.js";import{n as ve,t as ye}from"./userOptionsSlots-DYuo-E5m.js";import{t as be}from"./useTimeLabels-Das5O74F.js";import{t as xe}from"./usePrinter-Cj4eIYC_.js";import{t as Se}from"./useTimeLabelCollider-XQf_S7-z.js";import{l as Ce,t as we}from"./useResponsive-D2CPcpda.js";import{t as Te}from"./vue-ui-accordion-3lBpCjGm.js";import{t as Ee}from"./A11yDataTable-DWNlWXzs.js";import{t as De}from"./useUserOptionState-CXlFnwPv.js";import{t as Oe}from"./useChartAccessibility-DOMuYJfm.js";import{t as ke}from"./useTableResponsive-uSz_qZOB.js";import{t as Ae}from"./vue_ui_heatmap-kh5NMmwf.js";import{Fragment as m,computed as h,createBlock as je,createCommentVNode as g,createElementBlock as _,createElementVNode as v,createSlots as Me,createTextVNode as Ne,createVNode as Pe,defineAsyncComponent as Fe,guardReactiveProps as y,mergeProps as Ie,nextTick as Le,normalizeClass as Re,normalizeProps as b,normalizeStyle as x,onBeforeUnmount as ze,onMounted as Be,openBlock as S,reactive as Ve,ref as C,renderList as w,renderSlot as T,resolveDynamicComponent as He,shallowRef as Ue,toDisplayString as E,toRefs as We,unref as D,useCssVars as Ge,vShow as Ke,watch as qe,watchEffect as Je,withCtx as O,withDirectives as Ye,withKeys as Xe}from"vue";function Ze({elementRef:e,callback:t,attr:n,earlyReturn:r=!1,retryFrames:i=12,alsoAfterFontsReady:a=!0}){if(r)return;let o=e=>{if(!e)return;let r;if(typeof e.getBBox==`function`)try{let t=e.getBBox();r=n===`width`?t.width:t.height}catch{}if(typeof r!=`number`||Number.isNaN(r))try{let t=e.getBoundingClientRect();r=n===`width`?t.width:t.height}catch{r=void 0}typeof r==`number`&&!Number.isNaN(r)&&t(r)};Je(t=>{let n=e.value;if(!n)return;let r=!1;(async()=>{await Le();for(let t=0;t<i;t+=1){if(r)return;await new Promise(e=>requestAnimationFrame(e));let t=e.value;if(!t)return;o(t)}if(a&&typeof document<`u`&&document.fonts&&document.fonts.ready){try{await document.fonts.ready}catch{}!r&&e.value&&o(e.value)}})();let s=new MutationObserver(()=>{e.value&&requestAnimationFrame(()=>{e.value&&o(e.value)})});s.observe(n,{childList:!0,subtree:!0,characterData:!0,attributes:!0,attributeFilter:[`transform`,`style`,`class`]});let c;if(typeof ResizeObserver<`u`){let t=n.ownerSVGElement?n.ownerSVGElement:n;c=new ResizeObserver(()=>{let t=e.value;t&&o(t)}),c.observe(t)}t(()=>{r=!0,s.disconnect(),c&&c.disconnect()})},{flush:`post`})}var Qe={mounted(e,t){$e(e,t.value)},updated(e,t){$e(e,t.value)}};function $e(e,{cellWidth:t,cellHeight:n,maxFontSize:r,minFontSize:i,index:a,reportRotation:o,reportHide:s,rotateAll:c,hideAll:l}){e.removeAttribute(`transform`),e.removeAttribute(`visibility`);let u=!1,d=!1;e.setAttribute(`font-size`,r);let f=e.getComputedTextLength();if(f<=t)o(a,!1),s(a,!1);else{let n=Math.floor(r*t/f);n>=i?(e.setAttribute(`font-size`,n),o(a,!1),s(a,!1)):(o(a,!0),s(a,!1),u=!0)}if(c&&(u=!0),u){e.setAttribute(`font-size`,r);let t=e.getBBox(),o=t.x+t.width/2,c=t.y+t.height/2;e.setAttribute(`transform`,`rotate(-90 ${o} ${c})`);let l=e.getBBox().width;if(l<=n)s(a,!1);else{let t=Math.floor(r*n/l);t>=i?(e.setAttribute(`font-size`,t),s(a,!1)):(d=!0,s(a,!0))}}(l||d)&&e.setAttribute(`visibility`,`hidden`)}var et=/* @__PURE__ */ e({default:()=>Mt}),tt=[`id`],nt=[`id`],rt=[`xmlns`,`aria-describedby`,`viewBox`],it=[`x`,`y`,`width`,`height`],at=[`x`,`y`,`height`,`width`,`fill`,`stroke`,`stroke-width`],ot=[`x`,`y`,`height`,`width`,`fill`,`stroke`,`stroke-width`],st=[`x`,`y`,`width`,`height`,`fill`,`stroke`,`stroke-width`],ct=[`data-a11y-cell-id`,`x`,`y`,`width`,`height`,`fill`,`stroke`,`stroke-width`,`aria-label`,`onMouseover`,`onMouseout`,`onClick`],lt=[`font-size`,`font-weight`,`fill`,`x`,`y`],ut=[`x`,`y`,`width`,`height`,`fill`,`stroke`,`stroke-width`],dt=[`x`,`y`,`width`,`height`,`fill`,`stroke`,`stroke-width`],ft=[`font-size`,`fill`,`x`,`y`,`font-weight`],pt=[`font-size`,`fill`,`x`,`y`,`font-weight`],mt=[`text-anchor`,`font-size`,`fill`,`font-weight`,`transform`],ht=[`text-anchor`,`font-size`,`fill`,`font-weight`,`transform`],gt={key:6},_t=[`x`,`y`,`width`,`height`,`stroke`,`stroke-width`],vt={key:7},yt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],bt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],xt={class:`vue-ui-heatmap-legend-gauge-right`},St=[`data-value`],Ct={class:`vue-ui-heatmap-gauge-indicator-value`},wt={key:1,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Tt={key:5,class:`vue-data-ui-watermark`},Et={class:`vue-ui-data-table`},Dt={key:0},Ot=[`data-cell`],kt={style:{display:`flex`,"align-items":`center`,gap:`5px`,"justify-content":`flex-end`,width:`100%`,"padding-right":`3px`}},At=[`data-cell`],jt={style:{display:`flex`,"align-items":`center`,gap:`5px`,"justify-content":`flex-end`,width:`100%`,"padding-right":`3px`}},Mt=/*#__PURE__*/ le({__name:`vue-ui-heatmap`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`selectDatapoint`,`copyAlt`],setup(e,{expose:le,emit:$e}){Ge(e=>({fdd363b2:e.tdo}));let et=Fe(()=>import(`./Tooltip-Iyb_S6oQ.js`)),Mt=Fe(()=>import(`./BaseIcon-DDctLkeT.js`).then(e=>e.n)),Nt=Fe(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Pt=Fe(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),Ft=Fe(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),It=Fe(()=>import(`./BaseDraggableDialog-Bw_azO0n.js`).then(e=>e.n)),{vue_ui_heatmap:Lt}=t(),{isThemeValid:Rt,warnInvalidTheme:zt}=de(),k=e,Bt=$e,Vt=h({get(){return!!k.dataset&&k.dataset.length},set(e){return e}}),Ht=C(s()),A=C(null),Ut=C(!1),Wt=C(``),Gt=C(void 0),j=C(null),Kt=C(0),qt=C(null),Jt=C(0),Yt=C(null),Xt=C(null),Zt=C(null),Qt=C(null),$t=C(null),en=C(null),tn=C(null),nn=C(null),rn=C(null),an=C(null),on=C(null),sn=C(null),cn=Ue(null),M=C(null),ln=C(null),un=C({x:0,y:0}),dn=C(`pointer`),fn=C(!1),N=C(Sn()),P=h(()=>N.value.style.layout.cells),F=h(()=>N.value.style.layout.dataLabels),I=h(()=>N.value.style.layout);se({config:()=>N.value,dataset:()=>k.dataset,component:`VueUiHeatmap`,rules:[ce.emptyArray,ce.noHint]});let pn=h(()=>N.value.userOptions.useCursorPointer);function mn(){let e=Array(7).fill(`_`),t=[],n=e.length;for(let r=0;r<n;r+=1){let n=[];for(let e=0;e<14;e+=1)n.push(r+e*2);t.push({name:`${e[r]}`,values:n})}return t}let hn=h(()=>d({defaultConfig:{table:{show:!1},userOptions:{show:!1},style:{backgroundColor:`#99999930`,layout:{cells:{colors:{hot:`#999999`,cold:`#CACACA`},columnTotal:{value:{show:!1}},rowTotal:{value:{show:!1}},value:{show:!1}},dataLabels:{xAxis:{show:!1},yAxis:{show:!1}}}}},userConfig:N.value.skeletonConfig??{}})),{loading:gn,FINAL_DATASET:L,manualLoading:_n}=ae({...We(k),FINAL_CONFIG:N,prepareConfig:Sn,callback:()=>{Promise.resolve().then(async()=>{await Le(),A.value&&p(A.value,{delta:.1,delay:250})})},skeletonDataset:k.config?.skeletonDataset??mn(),skeletonConfig:d({defaultConfig:N.value,userConfig:hn.value})}),{userOptionsVisible:vn,setUserOptionsVisibility:yn,keepUserOptionState:bn}=De({config:N.value}),{svgRef:R}=Oe({config:N.value.style.title});function xn(e){yn(e)}function Sn(){let e=ue({userConfig:k.config,defaultConfig:Lt}),t={},n=e.theme;if(n){if(!Rt.value(e))zt(e),t=e;else{let r=ue({userConfig:Ae[n]||k.config,defaultConfig:e});t={...ue({userConfig:k.config,defaultConfig:r})}}}else t=e;return t}let Cn=a(k.config);qe(()=>k.config,(e,t)=>{let n=a(e),r=n!==Cn;Cn=n;let i=Sn();if(!r){N.value.style.tooltip=i.style.tooltip,z.value.showTooltip=N.value.style.tooltip.show;return}gn.value||(N.value=i),vn.value=!N.value.userOptions.showOnChartHover,jn(),Jt.value+=1,z.value.showTable=N.value.table.show,z.value.showTooltip=N.value.style.tooltip.show,Mn.value=I.value.width,Nn.value=I.value.height},{deep:!0}),qe(()=>k.dataset,e=>{Array.isArray(e)&&e.length>0&&(_n.value=!1),jn()},{deep:!0});let{isPrinting:wn,isImaging:Tn,generatePdf:En,generateImage:Dn}=xe({elementId:`heatmap__${Ht.value}`,fileName:N.value.style.title.text||`vue-ui-heatmap`,options:N.value.userOptions.print}),On=h(()=>N.value.userOptions.show&&!N.value.style.title.text),z=C({showTable:N.value.table.show,showTooltip:N.value.style.tooltip.show});qe(N,()=>{z.value={showTable:N.value.table.show,showTooltip:N.value.style.tooltip.show}},{immediate:!0});let kn=h(()=>N.value.table.responsiveBreakpoint),B=C(null),An=h(()=>N.value.debug);function jn(){if(ie(k.dataset)&&(c({componentName:`VueUiHeatmap`,type:`dataset`,debug:An.value}),Vt.value=!1,_n.value=!0),ie(k.dataset)||(_n.value=N.value.loading),N.value.responsive){let e=Ce(()=>{let{width:e,height:t}=we({chart:A.value,title:N.value.style.title.text?Qt.value:null,source:sn.value,noTitle:$t.value});requestAnimationFrame(()=>{Mn.value=e,Nn.value=t})});B.value&&(cn.value&&B.value.unobserve(cn.value),B.value.disconnect()),B.value=new ResizeObserver(e),cn.value=A.value.parentNode,B.value.observe(cn.value)}}ze(()=>{B.value&&(cn.value&&B.value.unobserve(cn.value),B.value.disconnect())}),Be(()=>{jn()});let V=h(()=>Math.max(...L.value.flatMap(e=>(e.values||[]).length))),Mn=C(I.value.width),Nn=C(I.value.height),H=h(()=>({width:Math.max(10,Mn.value),height:Math.max(10,Nn.value)})),Pn=C(0);Ze({elementRef:rn,callback:Ce(e=>{e!==Pn.value&&(Pn.value=e)},100),attr:`height`});let U=C(0);Ze({elementRef:tn,callback:Ce(e=>{e!==U.value&&(U.value=e)},100),attr:`width`});let Fn=C(0);Ze({elementRef:an,callback:Ce(e=>{e!==Fn.value&&(Fn.value=e)},100),attr:`height`}),ze(()=>{Pn.value=0,U.value=0,Fn.value=0});let W=h(()=>Math.min(H.value.height,H.value.width)/1e3*P.value.spacing),G=h(()=>{let e=0;N.value.style.legend.show&&(e=N.value.style.legend.width);let t=I.value.padding,n=F.value.xAxis.fontSize/3,r=F.value.xAxis.fontSize/2,i=H.value.height-t.top-t.bottom-Pn.value-n,a=H.value.width/60,o={x:W.value*V.value,y:W.value*((L.value||[]).length+1)},s=H.value.width-t.left-t.right-o.x-a*2-2-e-U.value,c=i-a-o.y-Fn.value-r-P.value.columnTotal.value.offsetY,l={width:Math.max(3,s/V.value),height:Math.max(3,c/(L.value.length??1))};return{top:t.top+Pn.value+a+n,topLabelsHeight:Pn.value,sumCellXHeight:a,height:c,left:t.left+U.value+a/2,right:t.right-e,bottom:H.value.height-t.bottom-Fn.value,width:s,cellSize:l}}),In=h(()=>Math.max(...L.value.flatMap(e=>e.values))),Ln=h(()=>Math.min(...L.value.flatMap(e=>e.values))),K=h(()=>P.value.scaleMax===null?In.value:P.value.scaleMax),q=h(()=>P.value.scaleMin===null?Ln.value:P.value.scaleMin),J=h(()=>{let e=L.value.flatMap(e=>e.values);return e.reduce((e,t)=>e+t,0)/e.length}),Rn=C([]),zn=C([]),Bn=0;Je(()=>{let e=++Bn;(async()=>{let t=F.value.yAxis,n=await be({values:t.values.length?t.values:L.value.map(e=>e.name),maxDatapoints:L.value.length,formatter:t.datetimeFormatter,start:0,end:L.value.length});e===Bn&&(Rn.value=n)})()});let Vn=0;Je(()=>{let e=++Vn;(async()=>{let t=F.value.xAxis,n=await be({values:t.values,maxDatapoints:V.value,formatter:t.datetimeFormatter,start:0,end:V.value});e===Vn&&(zn.value=n)})()});function Y(e,t,n){if(t===n)return P.value.colors.hot;let r=Math.min(Math.max(e,t),n);return o(P.value.colors.cold,P.value.colors.hot,t,n,r)}function Hn(e){if([void 0,null].includes(e))return 0;let t=q.value,n=K.value;if(t===n)return 0;let r=(e-t)/(n-t);return(1-Math.min(Math.max(r,0),1))*100}let X=h(()=>{let e=Rn.value.map(e=>e.text),t=zn.value.map(e=>e.text),n=P.value.scaleMin!==null||P.value.scaleMax!==null,r=L.value.map(e=>e.values.reduce((e,t)=>e+t,0)),i=L.value.map(e=>Math.max(1,e.values.length)),a=Math.max(...r),o=Math.min(...r),s=[],c=[];for(let e=0;e<V.value;e+=1){let t=0,n=0;L.value.forEach(r=>{e<r.values.length&&(t+=r.values[e]||0,n+=1)}),s.push(t),c.push(Math.max(1,n))}let l=Math.max(...s),u=Math.min(...s);return{yTotals:r.map((e,t)=>{let r=isNaN(e/a)?0:e/a,s=i[t],c=q.value*s,l=K.value*s;return{total:e,proportion:r,color:n?Y(e,c,l):Y(e,o,a)}}),xTotals:s.map((e,t)=>{let r=isNaN(e/l)?0:e/l,i=c[t],a=q.value*i,o=K.value*i;return{total:e,proportion:r,color:n?Y(e,a,o):Y(e,u,l)}}),yLabels:e,xLabels:t.slice(0,V.value)}}),Z=h(()=>(L.value.forEach((e,t)=>{re({datasetObject:e,requiredAttributes:[`values`]}).forEach(e=>{c({componentName:`VueUiHeatmap`,type:`datasetSerieAttribute`,property:`values`,index:t,debug:An.value})})}),L.value.map((e,t)=>({...e,temperatures:(e.values||[]).map((e,n)=>e>=J.value?{side:`up`,color:Y(e,q.value,K.value),ratio:Math.abs(Math.abs(e-J.value)/Math.abs(In.value-J.value))>1?1:Math.abs(Math.abs(e-J.value)/Math.abs(In.value-J.value)),value:e,yAxisName:X.value.yLabels[t],xAxisName:X.value.xLabels[n],id:`vue-data-ui-heatmap-cell-${s()}`}:{side:`down`,ratio:Math.abs(1-Math.abs(e)/Math.abs(J.value))>1?1:Math.abs(1-Math.abs(e)/Math.abs(J.value)),color:Y(e,q.value,K.value),value:e,yAxisName:X.value.yLabels[t],xAxisName:X.value.xLabels[n],id:`vue-data-ui-heatmap-cell-${s()}`})})))),Un=h(()=>Z.value.flatMap((e,t)=>e.temperatures.map((e,n)=>{let r=G.value.left+G.value.cellSize.width*n,i=G.value.top+G.value.cellSize.height*t;return{datapoint:e,rowIndex:t,columnIndex:n,x:r+W.value/2+G.value.sumCellXHeight,y:i+W.value/2,width:G.value.cellSize.width-W.value,height:G.value.cellSize.height-W.value,labelX:r+G.value.cellSize.width/2+G.value.sumCellXHeight,labelY:i+G.value.cellSize.height/2+P.value.value.fontSize/3,selectionX:r,selectionY:i}}))),Wn=h(()=>L.value.length),Gn=Ve(Array(Wn.value*V.value||1).fill(!1)),Kn=h(()=>Gn.some(e=>e));function qn(e,t){Gn[e]=t}let Jn=Ve(Array(Wn.value*V.value||1).fill(!1)),Yn=h(()=>Jn.some(e=>e));function Xn(e,t){Jn[e]=t}let Q=C(null),Zn=C(null);function Qn(){Ut.value=!1,Gt.value=void 0,Q.value=null,j.value=null,M.value=null,ln.value=null}function $n(e){if(!R.value||!e)return;let t=R.value.querySelector(`[data-a11y-cell-id="${e}"]`);if(!t)return;let n=t.getBoundingClientRect();un.value={x:n.left+n.width/2,y:n.top+n.height/2}}function er(e,t,r,a,o=`pointer`,s=null){let c=G.value.cellSize.width-W.value,l={...e,x:r+c,y:a,width:G.value.cellSize.width-W.value,height:G.value.cellSize.height-W.value};if(N.value.events.datapointEnter&&N.value.events.datapointEnter({datapoint:l,seriesIndex:t}),!z.value.showTooltip)return;dn.value=o,M.value=s,ln.value=e.id,j.value={x:r,y:a};let{value:d,yAxisName:f,xAxisName:p,id:te}=e;Gt.value=te,Q.value=d,Zn.value={datapoint:e,seriesIndex:t,series:Z.value,config:N.value},Ut.value=!0;let ne=``,re=N.value.style.tooltip.customFormat;i(re)&&ee(()=>re({datapoint:e,seriesIndex:t,series:Z.value,config:N.value}))?Wt.value=re({datapoint:e,seriesIndex:t,series:Z.value,config:N.value}):(ne+=`<div>${f} ${p?f?` - ${p}`:`${p}`:``}</div>`,ne+=`<div style="margin-top:6px;padding-top:6px;border-top:1px solid ${N.value.style.tooltip.borderColor};font-weight:bold;display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:center"><span style="color:${Y(d,q.value,K.value)}">⬤</span><span>${isNaN(d)?`-`:u(P.value.value.formatter,d,n({p:F.value.prefix,v:d,s:F.value.suffix,r:N.value.style.tooltip.roundingValue}),{datapoint:e,seriesIndex:t})}</span></div>`,Wt.value=`<div style="font-size:${N.value.style.tooltip.fontSize}px">${ne}</div>`),o===`keyboard`&&Le(()=>{$n(e.id)})}function tr({datapoint:e,seriesIndex:t}){N.value.events.datapointLeave&&N.value.events.datapointLeave({datapoint:e,seriesIndex:t}),(ln.value!==e.id||dn.value!==`keyboard`)&&(Ut.value=!1,Gt.value=void 0,Q.value=null,j.value=null)}function nr(e){return u(P.value.value.formatter,X.value.yTotals[e].total,n({p:F.value.prefix,v:X.value.yTotals[e].total,s:F.value.suffix,r:P.value.value.roundingValue}),{datapoint:X.value.yTotals[e],rowIndex:e})}function rr(e){return u(P.value.value.formatter,X.value.xTotals[e].total,n({p:F.value.prefix,v:X.value.xTotals[e].total,s:F.value.suffix,r:P.value.value.roundingValue}),{datapoint:X.value.xTotals[e],colIndex:e})}h(()=>({head:L.value.map(e=>({name:e.name})),body:L.value.map(e=>e.values)}));function ir(e=null){Le(()=>{let t=[``,...L.value.map((e,t)=>e.name)],n=[];for(let e=0;e<X.value.xLabels.length;e+=1){let t=[X.value.xLabels[e]];for(let n=0;n<L.value.length;n+=1)t.push([L.value[n].values[e]]);n.push(t)}let i=[[N.value.style.title.text],[N.value.style.title.subtitle.text],[[``],[``],[``]],t].concat(n),a=r(i);e?e(a):f({csvContent:a,title:N.value.style.title.text||`vue-ui-heatmap`})})}let ar=C(!1);function or(e){ar.value=e,Kt.value+=1}function sr(){z.value.showTable=!z.value.showTable}function cr(){z.value.showTooltip=!z.value.showTooltip}let lr=C(!1);function ur(){lr.value=!lr.value}function dr(e,t){N.value.events.datapointClick&&N.value.events.datapointClick({datapoint:e,seriesIndex:t}),Bt(`selectDatapoint`,e)}function fr(){return Z.value}async function pr({scale:e=2}={}){if(!A.value)return;let{width:t,height:n}=A.value.getBoundingClientRect(),r=t/n,{imageUri:i,base64:a}=await fe({domElement:A.value,base64:!0,img:!0,scale:e});return{imageUri:i,base64:a,title:N.value.style.title.text,width:t,height:n,aspectRatio:r}}let mr=h(()=>({start:0,end:V.value})),hr=h(()=>X.value.xLabels);Se({timeLabelsEls:rn,timeLabels:hr,slicer:mr,configRef:N,rotationPath:[`style`,`layout`,`dataLabels`,`xAxis`,`rotation`],autoRotatePath:[`style`,`layout`,`dataLabels`,`xAxis`,`autoRotate`,`enable`],isAutoSize:!1,targetClass:`.vue-ui-heatmap-col-name`,rotation:F.value.xAxis.autoRotate.angle,width:Mn,height:Nn}),Se({timeLabelsEls:an,timeLabels:hr,slicer:mr,configRef:N,rotationPath:[`style`,`layout`,`cells`,`columnTotal`,`value`,`rotation`],autoRotatePath:[`style`,`layout`,`cells`,`columnTotal`,`value`,`autoRotate`,`enable`],isAutoSize:!1,targetClass:`.vue-ui-heatmap-col-total`,rotation:P.value.columnTotal.value.autoRotate.angle,width:Mn,height:Nn});let gr=h(()=>he({config:N,style:{value:N.value.style},mutableConfig:z,dialog:It,accordion:Te,isFullscreen:ar,parent:A,maxWidth:800,isCursorPointer:pn}));qe(()=>z.value.showTable,async e=>{N.value.table.show||(e&&N.value.table.useDialog&&Xt.value?(await Le(),Xt.value.open()):`close`in Xt.value&&Xt.value.close())});let{isResponsive:_r}=ke(qt,kn);function vr(){z.value.showTable=!1,Zt.value&&Zt.value.setTableIconState(!1)}let yr=h(()=>N.value.style.backgroundColor),br=h(()=>N.value.style.title),{isCallbackImaging:xr,isCallbackSvg:Sr,generateSvg:Cr,onGenerateImage:wr}=me({svg:R,title:br,legend:null,legendItems:null,backgroundColor:yr,getSvgCallback:()=>N.value.userOptions.callbacks.svg,generateImage:Dn});async function Tr(){if(Bt(`copyAlt`,{config:N.value,dataset:Z.value}),!N.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(N.value.userOptions.callbacks.altCopy({config:N.value,dataset:Z.value}))}function Er(e,t){let n=Z.value[e];if(!n)return null;let r=n.temperatures[t];return r?{cell:r,rowIndex:e,columnIndex:t}:null}function Dr(e,t){let n=0;for(let t=0;t<e;t+=1)n+=Z.value[t]?.temperatures?.length||0;return n+t}function Or(){M.value=null,ln.value=null,fn.value=!0}function kr(){Qn(),fn.value=!1}function Ar(e){if(!R.value||lr.value||document.activeElement!==R.value||!$.value.length)return;let t=e.key===`ArrowLeft`,n=e.key===`ArrowRight`,r=e.key===`ArrowUp`,i=e.key===`ArrowDown`,a=e.key===`Enter`||e.key===` `,o=e.key===`Escape`;if(!t&&!n&&!r&&!i&&!a&&!o)return;if(e.preventDefault(),e.stopPropagation(),o){Qn();return}if(a){if(M.value===null)return;let e=$.value[M.value];if(!e)return;dr(e.cell,e.rowIndex);return}let s=M.value===null?null:$.value[M.value];if(!s){let e=Gt.value?$.value.findIndex(e=>e.cell.id===Gt.value):null;if(e!==null&&e>=0&&e<$.value.length){let a=$.value[e];if(!a)return;let o=a.rowIndex,s=a.columnIndex;n?s+=1:t?--s:i?o+=1:r&&--o;let c=Mr.value.rowCount;if(c<=0)return;o<0&&(o=c-1),o>=c&&(o=0);let l=Z.value[o];if(!l||!l.temperatures.length)return;let u=l.temperatures.length;s<0&&(s=u-1),s>=u&&(s=0);let d=Er(o,s);if(!d)return;let f=Dr(o,s),p=G.value.left+G.value.cellSize.width*d.columnIndex,ee=G.value.top+G.value.cellSize.height*d.rowIndex;er(d.cell,d.rowIndex,p,ee,`keyboard`,f);return}let a=$.value[0];if(!a)return;let o=G.value.left+G.value.cellSize.width*a.columnIndex,s=G.value.top+G.value.cellSize.height*a.rowIndex;er(a.cell,a.rowIndex,o,s,`keyboard`,0);return}let c=s.rowIndex,l=s.columnIndex;n?l+=1:t?--l:i?c+=1:r&&--c;let u=Mr.value.rowCount;if(u<=0)return;c<0&&(c=u-1),c>=u&&(c=0);let d=Z.value[c];if(!d||!d.temperatures.length)return;let f=d.temperatures.length;l<0&&(l=f-1),l>=f&&(l=0);let p=Er(c,l);if(!p)return;let ee=Dr(c,l),te=G.value.left+G.value.cellSize.width*p.columnIndex,ne=G.value.top+G.value.cellSize.height*p.rowIndex;er(p.cell,p.rowIndex,te,ne,`keyboard`,ee)}let jr=h(()=>({headers:[N.value.table.colNames.xAxis,...L.value.map(e=>e.name)],rows:X.value.xLabels.map((e,t)=>[e,...L.value.map(e=>{let r=e.values?.[t];return isNaN(r)?`-`:n({p:F.value.prefix,v:r,s:F.value.suffix,r:N.value.table.td.roundingValue})})])})),Mr=h(()=>({rowCount:Z.value.length,columnCount:Math.max(0,...Z.value.map(e=>e.temperatures.length))})),$=h(()=>Z.value.flatMap((e,t)=>e.temperatures.map((e,n)=>({cell:e,rowIndex:t,columnIndex:n}))));return le({getData:fr,getImage:pr,generatePdf:En,generateCsv:ir,generateImage:Dn,generateSvg:Cr,toggleTable:sr,toggleTooltip:cr,toggleAnnotator:ur,toggleFullscreen:or,copyAlt:Tr}),(t,r)=>(S(),_(`div`,{ref_key:`heatmapChart`,ref:A,class:Re(`vue-data-ui-component vue-ui-heatmap ${ar.value?`vue-data-ui-wrapper-fullscreen`:``}`),style:x(`font-family:${N.value.style.fontFamily};width:100%;${N.value.responsive?`height: 100%;`:``} text-align:center;background:${N.value.style.backgroundColor}`),id:`heatmap__${Ht.value}`,onMouseenter:r[1]||=()=>xn(!0),onMouseleave:r[2]||=()=>{xn(!1),fn.value||Qn()}},[v(`div`,{id:`chart-instructions-${Ht.value}`,class:`sr-only`},[v(`p`,null,E(N.value.a11y.translations.keyboardNavigation),1)],8,nt),jr.value?.rows?.length?(S(),je(Ee,{key:0,uid:Ht.value,head:jr.value.headers,body:jr.value.rows,notice:N.value.a11y.translations.tableAvailable,caption:N.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):g(``,!0),N.value.userOptions.buttons.annotator?(S(),je(D(Nt),{key:1,svgRef:D(R),backgroundColor:N.value.style.backgroundColor,color:N.value.style.color,active:lr.value,isCursorPointer:pn.value,palette:N.value.userOptions.annotatorPalette,onClose:ur},Me({_:2},[w(D(_e),e=>({name:e,fn:O(n=>[T(t.$slots,e,b(y(D(ge)(e,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):g(``,!0),On.value?(S(),_(`div`,{key:2,ref_key:`noTitle`,ref:$t,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):g(``,!0),N.value.style.title.text?(S(),_(`div`,{key:3,ref_key:`chartTitle`,ref:Qt,style:`width:100%;background:transparent`},[(S(),je(pe,{key:`title_${Jt.value}`,config:{title:{cy:`heatmap-div-title`,...N.value.style.title},subtitle:{cy:`heatmap-div-subtitle`,...N.value.style.title.subtitle}}},null,8,[`config`]))],512)):g(``,!0),N.value.userOptions.show&&Vt.value&&(D(bn)||D(vn))?(S(),je(D(Pt),{ref_key:`userOptionsRef`,ref:Zt,key:`user_options_${Kt.value}`,backgroundColor:N.value.style.backgroundColor,color:N.value.style.color,isImaging:D(Tn),isPrinting:D(wn),uid:Ht.value,hasTooltip:N.value.userOptions.buttons.tooltip&&N.value.style.tooltip.show,hasPdf:N.value.userOptions.buttons.pdf,hasImg:N.value.userOptions.buttons.img,hasSvg:N.value.userOptions.buttons.svg,hasXls:N.value.userOptions.buttons.csv,hasTable:N.value.userOptions.buttons.table,hasFullscreen:N.value.userOptions.buttons.fullscreen,hasAltCopy:N.value.userOptions.buttons.altCopy,isFullscreen:ar.value,isTooltip:z.value.showTooltip,titles:{...N.value.userOptions.buttonTitles},chartElement:A.value,position:N.value.userOptions.position,hasAnnotator:N.value.userOptions.buttons.annotator,isAnnotation:lr.value,callbacks:N.value.userOptions.callbacks,printScale:N.value.userOptions.print.scale,tableDialog:N.value.table.useDialog,isCursorPointer:pn.value,onToggleFullscreen:or,onGeneratePdf:D(En),onGenerateCsv:ir,onGenerateImage:D(wr),onGenerateSvg:D(Cr),onToggleTable:sr,onToggleTooltip:cr,onToggleAnnotator:ur,onCopyAlt:Tr,style:x({visibility:D(bn)?D(vn)?`visible`:`hidden`:`visible`})},Me({_:2},[w(D(ve)(t.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),e=>({name:e,fn:O(n=>[T(t.$slots,e,b(y(D(ye)(e,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isImaging.isPrinting.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasFullscreen.hasAltCopy.isFullscreen.isTooltip.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):g(``,!0),v(`div`,{class:Re({"vue-ui-heatmap-chart-wrapper":!0,"vue-ui-heatmap-chart-wrapper-legend-right":N.value.style.legend.show})},[(S(),_(`svg`,{ref_key:`svgRef`,ref:R,xmlns:D(ne),"aria-describedby":`chart-instructions-${Ht.value}`,class:Re({"vue-data-ui-fullscreen--on":ar.value,"vue-data-ui-fulscreen--off":!ar.value}),viewBox:`0 0 ${H.value.width} ${H.value.height}`,width:`100%`,style:x(`overflow: visible; background:transparent;color:${N.value.style.color}`),"aria-live":`polite`,role:`img`,preserveAspectRatio:`xMidYMid`,tabindex:`0`,onFocus:Or,onBlur:kr,onKeydown:Ar},[Pe(D(Ft)),t.$slots[`chart-background`]?(S(),_(`foreignObject`,{key:0,x:G.value.left,y:G.value.top,width:G.value.width,height:G.value.height,style:{pointerEvents:`none`}},[T(t.$slots,`chart-background`,{},void 0,!0)],8,it)):g(``,!0),P.value.columnTotal.color.show?(S(),_(`g`,{key:1,ref_key:`xAxisSumRects`,ref:on},[(S(!0),_(m,null,w(X.value.xTotals,(e,t)=>(S(),_(`rect`,{x:G.value.left+G.value.cellSize.width*t+W.value/2+G.value.sumCellXHeight,y:G.value.top-G.value.sumCellXHeight+W.value*(H.value.height/H.value.width),height:G.value.sumCellXHeight,width:G.value.cellSize.width-W.value,fill:P.value.colors.underlayer,stroke:N.value.style.backgroundColor,"stroke-width":W.value},null,8,at))),256)),(S(!0),_(m,null,w(X.value.xTotals,(e,t)=>(S(),_(`rect`,{x:G.value.left+G.value.cellSize.width*t+W.value/2+G.value.sumCellXHeight,y:G.value.top-G.value.sumCellXHeight+W.value*(H.value.height/H.value.width),height:G.value.sumCellXHeight,width:G.value.cellSize.width-W.value,fill:e.color,stroke:N.value.style.backgroundColor,"stroke-width":W.value},null,8,ot))),256))],512)):g(``,!0),v(`g`,{ref_key:`datapoints`,ref:Yt},[(S(!0),_(m,null,w(Un.value,e=>(S(),_(`g`,null,[v(`rect`,{x:e.x,y:e.y,width:e.width,height:e.height,fill:P.value.colors.underlayer,stroke:N.value.style.backgroundColor,"stroke-width":W.value},null,8,st),v(`rect`,{"data-a11y-cell-id":e.datapoint.id,x:e.x,y:e.y,width:e.width,height:e.height,fill:e.datapoint.color,stroke:N.value.style.backgroundColor,"stroke-width":W.value,"aria-label":`${e.datapoint.yAxisName}${e.datapoint.xAxisName?` - ${e.datapoint.xAxisName}`:``}: ${isNaN(e.datapoint.value)?`-`:e.datapoint.value}`,onMouseover:t=>er(e.datapoint,e.rowIndex,e.selectionX,e.selectionY,`pointer`,Dr(e.rowIndex,e.columnIndex)),onMouseout:()=>tr({datapoint:e.datapoint,seriesIndex:e.rowIndex}),onClick:()=>dr(e.datapoint,e.rowIndex)},null,40,ct),P.value.value.show?Ye((S(),_(`text`,{key:0,"text-anchor":`middle`,"font-size":P.value.value.fontSize,"font-weight":P.value.value.bold?`bold`:`normal`,fill:D(te)(e.datapoint.color),x:e.labelX,y:e.labelY,style:{pointerEvents:`none`,userSelect:`none`}},[Ne(E(D(u)(P.value.value.formatter,e.datapoint.value,D(n)({p:F.value.prefix,v:e.datapoint.value,s:F.value.suffix,r:P.value.value.roundingValue}),{datapoint:e.datapoint})),1)],8,lt)),[[D(Qe),{cellWidth:e.width,cellHeight:e.height,maxFontSize:P.value.value.fontSize,minFontSize:10,index:e.rowIndex*V.value+e.columnIndex,reportHide:Xn,reportRotation:qn,hideAll:Yn.value,rotateAll:Kn.value}]]):g(``,!0)]))),256))],512),P.value.rowTotal.color.show?(S(),_(`g`,{key:2,ref_key:`yAxisSumRects`,ref:nn},[(S(!0),_(m,null,w(Z.value,(e,t)=>(S(),_(m,null,[v(`rect`,{x:G.value.left,y:G.value.top+G.value.cellSize.height*t,width:G.value.sumCellXHeight,height:G.value.cellSize.height-W.value,fill:P.value.colors.underlayer,stroke:N.value.style.backgroundColor,"stroke-width":W.value},null,8,ut),v(`rect`,{x:G.value.left,y:G.value.top+G.value.cellSize.height*t+W.value/2,width:G.value.sumCellXHeight,height:G.value.cellSize.height-W.value,fill:X.value.yTotals[t].color,stroke:N.value.style.backgroundColor,"stroke-width":W.value},null,8,dt)],64))),256))],512)):g(``,!0),F.value.yAxis.show?(S(),_(`g`,{key:3,ref_key:`yAxisLabels`,ref:tn},[(S(!0),_(m,null,w(Z.value,(e,t)=>(S(),_(m,null,[v(`text`,{class:`vue-ui-heatmap-row-name`,"font-size":F.value.yAxis.fontSize,fill:F.value.yAxis.color,x:U.value+F.value.yAxis.offsetX,y:G.value.top+G.value.cellSize.height*t+G.value.cellSize.height/2+F.value.yAxis.fontSize/3+F.value.yAxis.offsetY-(P.value.rowTotal.value.show?F.value.yAxis.fontSize/1.5:0),"text-anchor":`end`,"font-weight":F.value.yAxis.bold?`bold`:`normal`},E(X.value.yLabels[t]),9,ft),P.value.rowTotal.value.show?(S(),_(`text`,{key:0,class:`vue-ui-heatmap-row-total`,"font-size":F.value.yAxis.fontSize,fill:F.value.yAxis.color,x:U.value,y:G.value.top+G.value.cellSize.height*t+G.value.cellSize.height/2+F.value.yAxis.fontSize+F.value.yAxis.offsetY,"text-anchor":`end`,"font-weight":F.value.yAxis.bold?`bold`:`normal`},E(nr(t)),9,pt)):g(``,!0)],64))),256))],512)):g(``,!0),F.value.xAxis.show?(S(),_(`g`,{key:4,ref_key:`xAxisLabels`,ref:rn},[(S(!0),_(m,null,w(X.value.xLabels,(e,t)=>(S(),_(m,null,[!F.value.xAxis.showOnlyAtModulo||F.value.xAxis.showOnlyAtModulo&&t%F.value.xAxis.showOnlyAtModulo===0?(S(),_(`text`,{key:0,class:`vue-ui-heatmap-col-name`,"text-anchor":F.value.xAxis.rotation===0?`middle`:F.value.xAxis.rotation<0?`start`:`end`,"font-size":F.value.xAxis.fontSize,fill:F.value.xAxis.color,"font-weight":F.value.xAxis.bold?`bold`:`normal`,transform:`translate(${G.value.left+G.value.cellSize.width/2+G.value.width/X.value.xLabels.length*t+F.value.xAxis.offsetX+G.value.sumCellXHeight}, ${G.value.topLabelsHeight+F.value.xAxis.offsetY}), rotate(${F.value.xAxis.rotation})`},E(e),9,mt)):g(``,!0)],64))),256))],512)):g(``,!0),P.value.columnTotal.value.show?(S(),_(`g`,{key:5,ref_key:`xAxisSums`,ref:an},[(S(!0),_(m,null,w(X.value.xLabels,(e,t)=>(S(),_(`text`,{class:`vue-ui-heatmap-col-total`,"text-anchor":P.value.columnTotal.value.rotation===0?`middle`:P.value.columnTotal.value.rotation<0?`end`:`start`,"font-size":F.value.xAxis.fontSize,fill:F.value.xAxis.color,"font-weight":F.value.xAxis.bold?`bold`:`normal`,transform:`translate(${G.value.left+G.value.cellSize.width/2+G.value.width/X.value.xLabels.length*t+F.value.xAxis.offsetX+P.value.columnTotal.value.offsetX+G.value.sumCellXHeight}, ${G.value.bottom+F.value.xAxis.fontSize/2}), rotate(${P.value.columnTotal.value.rotation})`},E(rr(t)),9,ht))),256))],512)):g(``,!0),j.value?(S(),_(`g`,gt,[v(`rect`,{style:{"pointer-events":`none`},x:j.value.x-P.value.selected.border/2+W.value+G.value.sumCellXHeight,y:j.value.y-P.value.selected.border/2+W.value,width:G.value.cellSize.width-W.value+P.value.selected.border-W.value,height:G.value.cellSize.height-W.value+P.value.selected.border-W.value,fill:`transparent`,stroke:P.value.selected.color,"stroke-width":P.value.selected.border,rx:1},null,8,_t)])):g(``,!0),I.value.crosshairs.show&&j.value?(S(),_(`g`,vt,[v(`line`,{x1:G.value.left+G.value.sumCellXHeight,x2:j.value.x+G.value.sumCellXHeight,y1:j.value.y+(G.value.cellSize.height-W.value)/2,y2:j.value.y+(G.value.cellSize.height-W.value)/2,stroke:I.value.crosshairs.stroke,"stroke-width":I.value.crosshairs.strokeWidth,"stroke-dasharray":I.value.crosshairs.strokeDasharray,"stroke-linecap":`round`},null,8,yt),v(`line`,{x1:j.value.x+G.value.sumCellXHeight+(G.value.cellSize.width-W.value)/2,x2:j.value.x+G.value.sumCellXHeight+(G.value.cellSize.width-W.value)/2,y1:j.value.y,y2:G.value.top,stroke:I.value.crosshairs.stroke,"stroke-width":I.value.crosshairs.strokeWidth,"stroke-dasharray":I.value.crosshairs.strokeDasharray,"stroke-linecap":`round`},null,8,bt)])):g(``,!0),T(t.$slots,`svg`,{svg:{...H.value,drawingArea:G.value,cells:Un.value,isPrintingImg:D(wn)||D(Tn)||D(xr),isPrintingSvg:D(Sr)}},void 0,!0)],46,rt)),N.value.style.legend.show?(S(),_(`div`,{key:0,ref_key:`legendRight`,ref:en,class:`vue-ui-heatmap-legend-right`,style:x({"--legend-width":N.value.style.legend.width+`px`})},[D(gn)?g(``,!0):(S(),_(`div`,{key:0,class:`vue-ui-heatmap-legend-label-max`,style:x({fontSize:N.value.style.legend.fontSize+`px`,color:N.value.style.legend.color})},E(D(u)(P.value.value.formatter,D(l)(K.value),D(n)({p:F.value.prefix,v:D(l)(K.value),s:F.value.suffix,r:N.value.style.legend.roundingValue}))),5)),v(`div`,xt,[v(`div`,{class:`vue-ui-heatmap-gauge`,style:x({background:`linear-gradient(to bottom, ${P.value.colors.hot}, ${P.value.colors.cold})`})},[Ye(v(`div`,{class:`vue-ui-heatmap-gauge-indicator`,"data-value":D(u)(P.value.value.formatter,D(l)(Q.value),D(n)({p:F.value.prefix,v:D(l)(Q.value),s:F.value.suffix,r:N.value.style.legend.roundingValue})),style:x({position:`absolute`,width:`100%`,height:`2px`,background:[void 0,null].includes(Q.value)?`transparent`:D(te)(Zn.value.datapoint.color),top:`${Hn(Q.value)}%`,transition:`all 0.2s ease-in-out`,"--background-color":N.value.style.backgroundColor,"--gauge-arrow-color":D(te)(N.value.style.backgroundColor),"--gauge-arrow-text-color":D(te)(N.value.style.backgroundColor),"--gauge-arrow-value":Q.value,"--gauge-arrow-font-size":N.value.style.legend.fontSize+`px`})},[v(`div`,Ct,E(D(u)(P.value.value.formatter,D(l)(Q.value),D(n)({p:F.value.prefix,v:D(l)(Q.value),s:F.value.suffix,r:N.value.style.legend.roundingValue}))),1)],12,St),[[Ke,![void 0,null].includes(Q.value)]])],4)]),D(gn)?g(``,!0):(S(),_(`div`,{key:1,class:`vue-ui-heatmap-legend-label-min`,style:x({fontSize:N.value.style.legend.fontSize+`px`,color:N.value.style.legend.color})},E(D(u)(P.value.value.formatter,D(l)(q.value),D(n)({p:F.value.prefix,v:D(l)(q.value),s:F.value.suffix,r:N.value.style.legend.roundingValue}))),5))],4)):g(``,!0),t.$slots.hint?(S(),_(`div`,wt,[T(t.$slots,`hint`,b(y({hint:N.value.a11y.translations.keyboardNavigation,isVisible:fn.value})),void 0,!0)])):g(``,!0)],2),t.$slots.watermark?(S(),_(`div`,Tt,[T(t.$slots,`watermark`,b(y({isPrinting:D(wn)||D(Tn)||D(xr)||D(Sr)})),void 0,!0)])):g(``,!0),t.$slots.source?(S(),_(`div`,{key:6,ref_key:`source`,ref:sn,dir:`auto`},[T(t.$slots,`source`,{},void 0,!0)],512)):g(``,!0),Pe(D(et),{teleportTo:N.value.style.tooltip.teleportTo,show:z.value.showTooltip&&Ut.value,backgroundColor:N.value.style.tooltip.backgroundColor,color:N.value.style.tooltip.color,borderRadius:N.value.style.tooltip.borderRadius,borderColor:N.value.style.tooltip.borderColor,borderWidth:N.value.style.tooltip.borderWidth,fontSize:N.value.style.tooltip.fontSize,backgroundOpacity:N.value.style.tooltip.backgroundOpacity,position:N.value.style.tooltip.position,offsetX:N.value.style.tooltip.offsetX,offsetY:N.value.style.tooltip.offsetY,parent:A.value,content:Wt.value,isFullscreen:ar.value,isCustom:N.value.style.tooltip.customFormat&&typeof N.value.style.tooltip.customFormat==`function`,smooth:N.value.style.tooltip.smooth,backdropFilter:N.value.style.tooltip.backdropFilter,smoothForce:N.value.style.tooltip.smoothForce,smoothSnapThreshold:N.value.style.tooltip.smoothSnapThreshold,isA11yMode:dn.value===`keyboard`,a11yPosition:un.value},{"tooltip-before":O(()=>[T(t.$slots,`tooltip-before`,b(y({...Zn.value})),void 0,!0)]),tooltip:O(()=>[T(t.$slots,`tooltip`,b(y({...Zn.value})),void 0,!0)]),"tooltip-after":O(()=>[T(t.$slots,`tooltip-after`,b(y({...Zn.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`borderRadius`,`borderColor`,`borderWidth`,`fontSize`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isFullscreen`,`isCustom`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),Vt.value&&N.value.userOptions.buttons.table?(S(),je(He(gr.value.component),Ie({key:7},gr.value.props,{ref_key:`tableUnit`,ref:Xt,onClose:vr}),Me({content:O(()=>[v(`div`,{ref_key:`tableContainer`,ref:qt,class:`vue-ui-heatmap-table atom-data-table`,style:x(`${N.value.table.useDialog?``:`max-height: 300px; margin-top: 24px;`}`)},[v(`div`,{style:x(`width:100%;overflow-x:auto;position:relative;${N.value.table.useDialog?``:`padding-top:36px`};`),class:Re({"vue-ui-responsive":D(_r)})},[N.value.table.useDialog?g(``,!0):(S(),_(`div`,{key:0,role:`button`,tabindex:`0`,style:x(`width:32px; position: absolute; top: 0; left:4px; padding: 0 0px; display: flex; align-items:center;justify-content:center;height: 36px; width: 32px; cursor:pointer; background:${N.value.table.th.backgroundColor};`),onClick:vr,onKeypress:Xe(vr,[`enter`])},[Pe(D(Mt),{name:`close`,stroke:N.value.table.th.color,"stroke-width":2},null,8,[`stroke`])],36)),v(`table`,Et,[N.value.table.useDialog?g(``,!0):(S(),_(`caption`,{key:0,style:x(`backgroundColor:${N.value.table.th.backgroundColor};color:${N.value.table.th.color};outline:${N.value.table.th.outline}`)},[Ne(E(N.value.style.title.text)+` `,1),N.value.style.title.subtitle.text?(S(),_(`span`,Dt,E(N.value.style.title.subtitle.text),1)):g(``,!0)],4)),v(`thead`,null,[v(`tr`,{role:`row`,style:x(`background:${N.value.table.th.backgroundColor};color:${N.value.table.th.color}`)},[v(`th`,{style:x(`outline:${N.value.table.th.outline};padding-right:6px`)},null,4),(S(!0),_(m,null,w(e.dataset,(e,t)=>(S(),_(`th`,{align:`right`,style:x(`outline:${N.value.table.th.outline};padding-right:6px`)},E(e.name),5))),256))],4)]),v(`tbody`,null,[(S(!0),_(m,null,w(X.value.xLabels,(t,r)=>(S(),_(`tr`,{role:`row`,class:Re({"vue-ui-data-table__tbody__row":!0,"vue-ui-data-table__tbody__row-even":r%2==0,"vue-ui-data-table__tbody__row-odd":r%2!=0}),style:x(`background:${N.value.table.td.backgroundColor};color:${N.value.table.td.color}`)},[v(`td`,{"data-cell":N.value.table.colNames.xAxis,class:`vue-ui-data-table__tbody__td`,style:x(`outline:${N.value.table.td.outline}`)},[v(`div`,kt,E(t),1)],12,Ot),(S(!0),_(m,null,w(e.dataset,(t,i)=>(S(),_(`td`,{class:`vue-ui-data-table__tbody__td`,"data-cell":e.dataset[i].name,style:x(`outline:${N.value.table.td.outline}`)},[v(`div`,jt,E(isNaN(t.values[r])?`-`:D(n)({p:F.value.prefix,v:t.values[r],s:F.value.suffix,r:N.value.table.td.roundingValue})),1)],12,At))),256))],6))),256))])])],6)],4)]),_:2},[N.value.table.useDialog?{name:`title`,fn:O(()=>[Ne(E(gr.value.title),1)]),key:`0`}:void 0,N.value.table.useDialog?{name:`actions`,fn:O(()=>[v(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:r[0]||=e=>ir(N.value.userOptions.callbacks.csv),style:x({cursor:pn.value?`pointer`:`default`})},[Pe(D(Mt),{name:`fileCsv`,stroke:gr.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):g(``,!0),T(t.$slots,`skeleton`,{},()=>[D(gn)?(S(),je(oe,{key:0})):g(``,!0)],!0)],46,tt))}},[[`__scopeId`,`data-v-813ba319`]]);export{et as n,Mt as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,D as r,Ht as i,X as a,a as o,i as s,nn as c,nt as l,r as u,x as d}from"./lib-DqD8nbyX.js";import{n as f,t as p}from"./useHints-BH9r_0Vd.js";import{t as m}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as h}from"./useNestedProp-DrLnzyHO.js";import{t as ee}from"./useThemeCheck-BKNRbGeC.js";import{t as te}from"./chartImage-r-G4CkRK.js";import{n as ne}from"./Title-BLA0tM3g.js";import{t as re}from"./useChartExport-DtPNpc9M.js";import{n as ie,t as ae}from"./annotationSlots-BRR85CqJ.js";import{n as oe,t as se}from"./userOptionsSlots-DYuo-E5m.js";import{t as ce}from"./usePrinter-Cj4eIYC_.js";import{t as le}from"./useTransitions-DfSHzsdz.js";import{t as ue}from"./useUserOptionState-CXlFnwPv.js";import{t as de}from"./vue_ui_hill-DQi4pQCG.js";import{Fragment as fe,computed as g,createBlock as pe,createCommentVNode as _,createElementBlock as v,createElementVNode as y,createSlots as me,createVNode as he,defineAsyncComponent as ge,guardReactiveProps as _e,nextTick as ve,normalizeClass as b,normalizeProps as ye,normalizeStyle as x,onBeforeUnmount as be,onMounted as xe,openBlock as S,ref as C,renderList as Se,renderSlot as w,shallowRef as Ce,toDisplayString as T,unref as E,useTemplateRef as we,watch as Te,withCtx as Ee,withKeys as De,withModifiers as D}from"vue";var Oe=/* @__PURE__ */ e({default:()=>St}),ke=[`id`,`data-editing`],Ae={key:0,ref:`chartTitle`,style:`width:100%;background:transparent;padding-bottom:24px`},je={key:3,class:`vue-ui-hill__toolbar`,"data-dom-to-png-ignore":``},Me=[`viewBox`],Ne=[`width`,`height`],Pe=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],Fe=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],Ie=[`d`,`stroke`,`stroke-width`,`stroke-dasharray`],Le={key:0,"pointer-events":`none`},Re=[`d`,`stroke`,`stroke-width`,`stroke-dasharray`],ze=[`cx`,`cy`,`r`,`fill`,`stroke`,`stroke-width`],Be=[`transform`,`font-size`,`fill`,`stroke`],Ve=[`transform`,`data-datapoint-index`,`data-datapoint-id`,`tabindex`,`aria-valuenow`,`aria-valuetext`,`aria-label`,`onFocus`,`onBlur`,`onKeydown`,`onPointerenter`,`onPointerleave`,`onClick`],He=[`r`,`onPointerdown`],Ue=[`r`,`fill`,`stroke`,`stroke-width`],We=[`stroke`,`stroke-width`],Ge=[`d`],Ke=[`x`,`y`,`text-anchor`,`fill`,`font-size`,`font-weight`,`stroke`,`stroke-width`],qe=[`transform`,`tabindex`,`aria-label`,`aria-expanded`,`onClick`,`onFocus`,`onKeydown`],Je={key:0,class:`vue-ui-hill__stack-overflow-collapse-ghosts`,"pointer-events":`none`,"aria-hidden":`true`},Ye=[`cx`,`cy`,`r`,`fill`,`stroke`,`stroke-width`],Xe=[`from`,`dur`],Ze=[`from`,`dur`],Qe=[`from`,`to`,`dur`],$e=[`dur`],et=[`r`],tt=[`x`,`y`,`width`,`height`,`fill`,`stroke`,`stroke-width`],nt=[`stroke`,`stroke-width`],rt=[`d`],it=[`y`,`fill`,`font-size`,`font-weight`,`stroke`],at=[`x`,`y`,`fill`,`font-size`,`font-weight`,`letter-spacing`],ot=[`x`,`y`,`fill`,`font-size`,`font-weight`,`letter-spacing`],st=[`x`,`y`,`rx`,`width`,`height`,`fill`],ct=[`id`],lt=[`x`,`y`,`width`,`height`,`rx`,`ry`],ut=[`clip-path`],dt=[`width`,`x`,`y`,`fill`,`height`,`onPointerenter`,`onPointerleave`],ft=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],pt=[`x`,`y`,`width`,`height`,`rx`,`ry`,`stroke`,`stroke-width`],mt=[`x`,`y`,`fill`,`font-size`],ht=[`aria-label`,`onKeydown`],gt={key:0,class:`vue-ui-hill__stack-overflow-menu-title`},_t=[`disabled`,`aria-label`,`onClick`],vt={class:`vue-ui-hill__stack-overflow-menu-label`},yt={class:`vue-ui-hill__stack-overflow-menu-value`},bt={key:6,class:`vue-data-ui-watermark`},xt={key:7,class:`vue-ui-hill__loading`,"data-dom-to-png-ignore":``},St=/*#__PURE__*/ m({__name:`vue-ui-hill`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`edit`,`save`,`cancel`,`copyAlt`,`change`,`dragStart`,`dragEnd`,`datapointEnter`,`datapointLeave`,`selectDatapoint`],setup(e,{expose:m,emit:Oe}){let St=ge(()=>import(`./HillActions-Bq3UJ1Ut.js`)),Ct=ge(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),wt=ge(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),Tt=ge(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Et=ge(()=>import(`./BaseIcon-DDctLkeT.js`).then(e=>e.n)),{vue_ui_hill:Dt}=t(),{isThemeValid:Ot,warnInvalidTheme:kt}=ee(),At=e,jt=C(a()),O=Ce(null),Mt=we(`hillChartRef`),k=we(`svgRef`),Nt=we(`overflowMenuRef`),Pt=we(`userOptionsRef`),Ft=C(0),It=Oe;function Lt(){let e=h({userConfig:At.config,defaultConfig:Dt}),t={},n=e.theme;if(!n)t=e;else if(!Ot.value(e))kt(e),t=e;else{let r=h({userConfig:de[n]||At.config,defaultConfig:e});t={...h({userConfig:At.config,defaultConfig:r}),customPalette:e.customPalette.length?e.customPalette:c[n]||en}}return t}let A=C(Lt()),j=g(()=>A.value.style.chart.layout.plots),M=g(()=>A.value.style.chart);f({config:()=>A.value,dataset:()=>At.dataset,component:`VueUiHill`,rules:[p.emptyArray,p.noHint]});let{transitionEnabled:N}=le({config:()=>A.value.transitions,dataset:()=>At.dataset}),{userOptionsVisible:Rt,setUserOptionsVisibility:zt,keepUserOptionState:Bt}=ue({config:A.value});function Vt(){zt(!0)}function Ht(){zt(!1),Zn.value=null,$.value=null,Xn.value=null}let{isPrinting:Ut,isImaging:Wt,generatePdf:Gt,generateImage:Kt}=ce({elementId:`hill_${jt.value}`,fileName:M.value.title.text||`vue-ui-hill`,options:A.value.userOptions.print}),qt=g(()=>A.value.userOptions.useCursorPointer),Jt=C(0),Yt=C(!1);function Xt(e){Yt.value=e,Jt.value+=1}let Zt=C(!1);function Qt(){Zt.value=!Zt.value}let $t=g(()=>A.value.userOptions.position===`left`?`right`:`left`);Te(()=>At.config,()=>{O.value=null,A.value=Lt(),Jt.value+=1,P.value!==A.value.editing&&(P.value=A.value.editing&&!A.value.readonly)},{deep:!0});let en=g(()=>{let e=A.value.customPalette;return Array.isArray(e)&&e.length?e:i});function tn(e){let t=Number(e);return Number.isFinite(t)?Math.min(1,Math.max(0,t)):0}function nn(e){if(e<=0)return`todo`;if(e>=1)return`done`;let t=.5,n=Math.min(t,Math.max(0,Number(A.value.interaction.peakTolerance)||0)),r=t-n,i=t+n;return e>=r&&e<=i?`top`:e<t?`left`:`right`}function rn(e,t){let n=e&&typeof e==`object`?e:{},r=`Item ${t+1}`,i=String(n.name??n.label??r),a=tn(n.position??n.value??0);return{...n,id:String(n.id??`${i}-${t}`),name:i,label:String(n.label??i),position:a,color:n.color||en.value[t%en.value.length],muted:!!n.muted,disabled:!!n.disabled,status:nn(e.position),labelSide:[`left`,`right`,`auto`].includes(n.labelSide)?n.labelSide:`auto`,__index:t}}let an=g(()=>Array.isArray(At.dataset)?At.dataset.map(rn):[]);function on(e){return e.map(e=>({...e}))}function sn(e){let{__index:t,...n}=e;return Object.prototype.hasOwnProperty.call(n,`value`)&&(n.value=n.position),n}function cn(e=F.value){return e.map(sn)}let ln=g(()=>A.value.editing&&!A.value.readonly),P=C(ln.value),F=C(on(an.value)),I=C(null);Te(an,e=>{P.value||(O.value=null,F.value=on(e))},{deep:!0});let L=g(()=>!A.value.readonly);Te(L,e=>{e||(I.value=null,O.value=null,P.value=!1,F.value=on(an.value))});function R(e,t){It(e,t);let n=A.value.events?.[e];typeof n==`function`&&n(t)}let z=g(()=>M.value),un=g(()=>z.value.layout),B=g(()=>un.value.hill),V=g(()=>un.value.plots),H=g(()=>un.value.labels.item),U=g(()=>un.value.labels.phases),W=g(()=>z.value.toolbar),G=g(()=>un.value.stackbar),K=g(()=>{let e=V.value.stacking?.overflow||{},t=Math.max(0,Number(V.value.radius)||0);return{show:e.show!==!1,marker:{radius:Math.max(4,Number(e.marker?.radius)||t),fill:e.marker.fill,stroke:e.marker?.stroke||V.value.stroke,strokeWidth:e.marker.strokeWidth,color:e.marker.labelColor,fontSize:e.marker.fontSize,bold:e.marker?.bold!==!1,offsetY:e.marker.labelOffsetY},hysteresis:t*1.5,transitionDuration:N.value?e.transitionDuration:0,menu:{width:Math.max(160,Number(e.menu?.width)||220),maxHeight:Math.max(96,Number(e.menu?.maxHeight)||220),backgroundColor:e.menu?.backgroundColor||z.value.backgroundColor,color:e.menu?.color||z.value.color,borderColor:e.menu?.borderColor||V.value.stroke,borderRadius:Math.max(0,Number(e.menu?.borderRadius)||6)}}});function dn(e,t,n=1){let r=Number(e);return Number.isFinite(r)?Math.min(n,Math.max(0,r)):t}let q=g(()=>{let e=B.value.geometry||{},t=Math.max(0,Number(z.value.width)||0),n=Math.max(0,Number(z.value.height)||0),r=dn(e.horizontalPaddingRatio,.02,.49),i=dn(e.topPaddingRatio,.12,.49),a=dn(e.bottomPaddingRatio,.2,.49),o=dn(e.curvature,.65),s=t*r,c=t/2,l=t*(1-r),u=n*i,d=n*(1-a),f=c-s,p=l-c,m=s+f*o,h=c+p*(1-o);return{startX:s,centerX:c,endX:l,baseY:d,peakY:u,width:f+p,left:[{x:s,y:d},{x:m,y:d},{x:m,y:u},{x:c,y:u}],right:[{x:c,y:u},{x:h,y:u},{x:h,y:d},{x:l,y:d}]}}),fn=g(()=>{let{left:e,right:t}=q.value;return[`M${e[0].x} ${e[0].y}`,`C${e[1].x} ${e[1].y} ${e[2].x} ${e[2].y} ${e[3].x} ${e[3].y}`,`C${t[1].x} ${t[1].y} ${t[2].x} ${t[2].y} ${t[3].x} ${t[3].y}`].join(` `)});function pn(e,t,n,r,i){let a=1-i;return a**3*e+3*a**2*i*t+3*a*i**2*n+i**3*r}function mn(e,t,n,r,i){let a=1-i;return 3*a**2*(t-e)+6*a*i*(n-t)+3*i**2*(r-n)}function hn(e){let t=tn(e),{startX:n,centerX:r,endX:i,left:a,right:o}=q.value,s=n+(t-0)/1*(i-n),c=s<=r?a:o,l=0,u=1;for(let e=0;e<28;e+=1){let e=(l+u)/2;pn(c[0].x,c[1].x,c[2].x,c[3].x,e)<s?l=e:u=e}let d=(l+u)/2,f=pn(c[0].y,c[1].y,c[2].y,c[3].y,d),p=mn(c[0].x,c[1].x,c[2].x,c[3].x,d),m=mn(c[0].y,c[1].y,c[2].y,c[3].y,d),h=Math.hypot(p,m)||1;return{x:s,y:f,normalX:m/h,normalY:-p/h}}function gn(e){let t=Number(V.value.stacking.overlapThresholdRatio);return e*(2-(Number.isFinite(t)?Math.min(2,Math.max(0,t)):.5))}function _n(e,t){let n=/* @__PURE__ */ new Map,r=V.value.stacking;if(e.forEach(e=>{n.set(e.id,{position:e.position,index:0,size:1,stackId:`stack:${e.id}`})}),!r.show||e.length<2||t<=0)return n;let i=gn(t),a=e.map((e,t)=>({datapoint:e,index:t,point:hn(e.position)})).sort((e,t)=>e.point.x-t.point.x||e.datapoint.position-t.datapoint.position||e.index-t.index),o=0;for(;o<a.length;){let e=[a[o]],t=o+1;for(;t<a.length;){let n=e[e.length-1],r=a[t];if(Math.hypot(r.point.x-n.point.x,r.point.y-n.point.y)>=i)break;e.push(r),t+=1}if(e.length>1){let t=e[0].datapoint.position,r=`stack:${e.map(({datapoint:e})=>e.id).sort().join(`|`)}`;e.forEach(({datapoint:i},a)=>{n.set(i.id,{position:t,index:a,size:e.length,stackId:r})})}o=t}return n}function vn(e){let t=e+Math.max(0,Number(V.value.strokeWidth)||0)/2,n=V.value.stacking.gap??e/2;return t*2+n}let yn=C(null),J=C(null),Y=C(null),bn=C(null),xn=C(null),Sn=/* @__PURE__ */ new Set,Cn=null,X=null,Z=null;function wn(e){let t=Math.max(0,Number(V.value.strokeWidth)||0),n=V.value.shadow.show?Math.max(0,Number(V.value.shadow.blur)||0)+Math.max(0,-(Number(V.value.shadow.offsetY)||0)):0;return e+t/2+n}function Tn(e,t,n){if(t<=1)return e-wn(n);let r=vn(n);return e-(t-1)*r-wn(n)}function En(e,t,n,r){if(n<=1)return Sn.delete(e),!1;let i=Tn(t,n,r),a=Sn.has(e),o=K.value.hysteresis,s=a?i<o:i<0;return s?Sn.add(e):Sn.delete(e),s}let Dn=g(()=>{let e=Math.max(0,Number(V.value.radius)||0),t=vn(e),n=_n(F.value,e),r=/* @__PURE__ */ new Map,i=/* @__PURE__ */ new Map,a=[],o=/* @__PURE__ */ new Set,s=I.value?.id??null;K.value.show||Sn.clear(),F.value.forEach(e=>{let t=n.get(e.id)||{position:e.position,index:0,size:1,stackId:`stack:${e.id}`};r.has(t.stackId)||r.set(t.stackId,[]),r.get(t.stackId).push({datapoint:e,stack:t})});let c=new Set(r.keys());return Sn.forEach(e=>{c.has(e)||Sn.delete(e)}),r.forEach((n,r)=>{let c=[...n].sort((e,t)=>e.stack.index-t.stack.index||e.datapoint.__index-t.datapoint.__index),l=c.reduce((e,t)=>e+(Number(t.datapoint.position)||0),0)/c.length,u=hn(l);if(!(K.value.show&&En(r,u.y,c.length,e))){c.forEach(e=>{i.set(e.datapoint.id,{hidden:!1,displayIndex:e.stack.index,stackId:r,stackSize:c.length,promotedFromOverflow:!1,renderPosition:e.stack.position})});return}c.forEach(({datapoint:e})=>{o.add(e.id)});let d=s?c.find(({datapoint:e})=>e.id===s):null,f=c.find(({datapoint:e})=>e.id===yn.value),p=d||f||null,m=p?c.filter(({datapoint:e})=>e.id!==p.datapoint.id):c,h=J.value,ee=!(!f||h?.datapointId!==f.datapoint.id||h.moved),te=m.length?ee?l:m.reduce((e,t)=>e+(Number(t.datapoint.position)||0),0)/m.length:l,ne=hn(te);c.forEach(e=>{let t=p?.datapoint.id===e.datapoint.id,n=t&&f?.datapoint.id===e.datapoint.id;i.set(e.datapoint.id,{hidden:!t,displayIndex:+!!t,stackId:r,stackSize:c.length,promotedFromOverflow:n,renderPosition:te})}),m.length&&a.push({stackId:r,anchorPosition:te,x:ne.x,y:ne.y,hiddenCount:m.length,hiddenDatapoints:m.map(({datapoint:e})=>e),memberIds:c.map(({datapoint:e})=>e.id),collapseDatapoints:m.map(({datapoint:e,stack:n})=>{let r=hn(n.position);return{id:e.id,color:e.color,relativeX:r.x-ne.x,relativeY:r.y-n.index*t-ne.y}})})}),{layoutMap:n,displayMap:i,markers:a,overflowMemberIds:o}});function On(e){let t=Q.value.filter(e=>!e.isStackOverflowHidden),n=t.find(t=>t.id===e),r=new Map(t.filter(t=>t.id!==e).map(e=>[e.id,{x:e.x,y:e.y}]));if(!n||!V.value.stacking.show)return r;let i=t.filter(e=>Math.abs(e.x-n.x)<.001).sort((e,t)=>t.y-e.y||e.datasetIndex-t.datasetIndex);if(i.length<2)return r;let a=vn(Math.max(0,Number(V.value.radius)||0)),o=Math.max(...i.map(e=>e.y));return i.filter(t=>t.id!==e).forEach((e,t)=>{r.set(e.id,{x:n.x,y:o-t*a})}),r}function kn(){return new Map(Q.value.filter(e=>!e.isStackOverflowHidden).map(e=>[e.id,{x:e.x,y:e.y}]))}let Q=g(()=>{let e=Math.max(0,Number(V.value.radius)||0),{layoutMap:t,displayMap:n,markers:r}=Dn.value,i=vn(e),a=I.value,o=a?.stationaryLayout,s=o instanceof Map?o:O.value instanceof Map?O.value:null,c=null;if(a&&o instanceof Map&&V.value.stacking.show&&e>0){let t=F.value.find(e=>e.id===a.id);if(t){let n=r.find(e=>e.memberIds.includes(t.id));if(n)c={x:n.x,y:n.y-i};else{let n=hn(t.position),r=gn(e),s=F.value.filter(e=>e.id!==a.id&&o.has(e.id)).map(e=>{let t=hn(e.position);return{datapoint:e,distance:Math.hypot(t.x-n.x,t.y-n.y)}}).filter(({distance:e})=>e<r).sort((e,t)=>e.distance-t.distance)[0];if(s){let e=o.get(s.datapoint.id),t=[...o.values()].filter(t=>Math.abs(t.x-e.x)<.001),n=Math.min(e.y,...t.map(e=>e.y));c={x:e.x,y:n-i}}else c=n}}}return F.value.map((e,r)=>{let o=t.get(e.id)||{position:e.position,index:0,size:1,stackId:`stack:${e.id}`},l=n.get(e.id)||{hidden:!1,displayIndex:o.index,stackId:o.stackId,stackSize:o.size,renderPosition:o.position},u=hn(l.renderPosition??o.position),f=e.id!==a?.id&&!l.promotedFromOverflow&&s instanceof Map?s.get(e.id):null,p=e.id===a?.id&&c?c:f||{x:u.x,y:u.y-l.displayIndex*i},m=e.labelSide===`auto`?null:e.labelSide,h=d(H.value.autoSideThreshold,.5,1),ee=m||(e.position>h?`left`:`right`),te=Math.abs(Number(H.value.offsetX)||0)+V.value.radius+H.value.fontSize/2;return{...e,datasetIndex:r,x:p.x,y:p.y,stackId:l.stackId,stackSize:l.stackSize,stackDisplayIndex:l.displayIndex,isStackOverflowHidden:l.hidden,isPromotedFromStackOverflow:l.promotedFromOverflow,labelSide:ee,labelX:ee===`left`?-te:te,textAnchor:ee===`left`?`end`:`start`}})});function An(e){return F.value.find(t=>t.id===e)}function jn(e,t){let n=tn(t),r;F.value=F.value.map(t=>t.id===e?(r={...t,position:n},r):t),r&&(_r(r.id,r.position),R(`change`,{datapoint:sn(r),dataset:cn()}))}function Mn(e){let t=k.value;if(!t)return null;let n=t.getScreenCTM();if(!n)return null;let r=t.createSVGPoint();r.x=e,r.y=0;let i=r.matrixTransform(n.inverse()),{startX:a,endX:o}=q.value;return tn(0+(i.x-a)/(o-a)*1)}function Nn(){L.value&&(Y.value=null,yn.value=null,J.value=null,xn.value=null,ur(),O.value=null,F.value=on(an.value),P.value=!0,R(`edit`,cn()))}function Pn(){let e=cn();Y.value=null,yn.value=null,J.value=null,xn.value=null,ur(),I.value=null,P.value=!1,R(`save`,e)}function Fn(){Y.value=null,yn.value=null,J.value=null,xn.value=null,ur(),I.value=null,O.value=null,F.value=on(an.value),P.value=!1,R(`cancel`,cn())}function In(e,t){if(!L.value||!P.value||t.disabled)return;Y.value=null;let n=e.currentTarget.closest(`.vue-ui-hill__datapoint`);n&&typeof n.focus==`function`&&(n.focus(),$.value=t.id),e.preventDefault();let r=On(t.id),i=J.value?.datapointId===t.id&&!J.value?.moved;if(I.value={id:t.id,pointerId:e.pointerId,stationaryLayout:r,startClientX:e.clientX,hasMoved:!1,deferPositionUpdate:i},k.value?.setPointerCapture(e.pointerId),!i){let n=Mn(e.clientX);n!==null&&jn(t.id,n)}let a=An(t.id);a&&R(`dragStart`,sn(a))}function Ln(e){if(!I.value||I.value.pointerId!==e.pointerId)return;e.preventDefault();let t=Math.abs(e.clientX-I.value.startClientX);if(I.value.deferPositionUpdate&&!I.value.hasMoved&&t<3)return;I.value.hasMoved||(I.value={...I.value,hasMoved:!0});let n=Mn(e.clientX);n!==null&&jn(I.value.id,n)}function Rn(e){let t=I.value;if(!t||t.pointerId!==e.pointerId)return;k.value?.hasPointerCapture(e.pointerId)&&k.value.releasePointerCapture(e.pointerId);let n=e.type===`pointerup`&&!t.hasMoved,r=An(t.id);O.value=kn(),I.value=null,r&&(n&&R(`selectDatapoint`,Vn(r)),R(`dragEnd`,sn(r)))}function zn(e,t){if(!L.value||!P.value||t.disabled)return;let n=Math.max(0,Number(A.value.interaction.keyboardStep)||0),r=null;switch(e.key){case`ArrowLeft`:case`ArrowDown`:r=t.position-n;break;case`ArrowRight`:case`ArrowUp`:r=t.position+n;break;case`Home`:r=0;break;case`End`:r=1;break;default:return}e.preventDefault();let i=e.currentTarget;$.value=t.id,I.value={id:t.id,pointerId:null,stationaryLayout:On(t.id)},jn(t.id,r),O.value=kn(),I.value=null,ve(()=>{i?.isConnected&&i.focus({preventScroll:!0})})}function Bn(e){let t=.5,n=Math.max(0,Number(A.value.interaction.peakTolerance)||0);return Math.abs(e-t)<=n?A.value.a11y.translations.topOfHill:e<t?U.value.left.text:U.value.right.text}function Vn(e){return{datapoint:sn(e),index:e.__index}}function Hn(e){$.value=null,Zn.value=e.id,![0,1].includes(e.position)&&$.value!==e.id&&er(e),R(`datapointEnter`,Vn(e))}function Un(e){Zn.value===e.id&&(Zn.value=null),Xn.value===e.id&&$.value!==e.id&&I.value?.id!==e.id&&(Xn.value=null),R(`datapointLeave`,Vn(e))}function Wn(e){P.value&&L.value||R(`selectDatapoint`,Vn(e))}let Gn=g(()=>{let e=z.value;return{width:`100%`,maxWidth:`100%`,color:e.color,backgroundColor:e.backgroundColor,fontFamily:A.value.style.fontFamily,"--vue-ui-hill-button-hover-border":W.value.buttons.hoverBorderColor,"--vue-ui-hill-button-active-offset":`${W.value.buttons.activeTranslateY}px`}}),Kn=g(()=>({color:W.value.status.color,fontSize:`${W.value.status.fontSize}px`,fontWeight:W.value.status.bold?`bold`:`normal`,lineHeight:W.value.status.lineHeight}));g(()=>({color:z.value.title.color,fontSize:`${z.value.title.fontSize}px`,fontWeight:z.value.title.bold?`bold`:`normal`,textAlign:z.value.title.textAlign})),g(()=>({color:z.value.title.subtitle.color,fontSize:`${z.value.title.subtitle.fontSize}px`,fontWeight:z.value.title.subtitle.bold?`bold`:`normal`}));let qn=g(()=>{let e=Math.max(0,Number(z.value.height)||0);return Math.min(e,q.value.baseY+e)+U.value.offsetY});function Jn(e){return U.value[e].text}function Yn(e){return e.position===0||e.position===1}let Xn=C(null),Zn=C(null),$=C(null);function Qn(e){$.value=e.id}function $n(e){$.value===e.id&&($.value=null),Xn.value===e.id&&Zn.value!==e.id&&I.value?.id!==e.id&&(Xn.value=null)}function er(e){e?.id&&(Xn.value=e.id)}let tr=g(()=>{let e=[],t=[],n=null;return Q.value.forEach(r=>{if(!r.isStackOverflowHidden){if(r.id===Xn.value){n=r;return}Yn(r)?e.push(r):t.push(r)}}),[...e,...t,...n?[n]:[]]}),nr=g(()=>Dn.value.markers),rr=g(()=>nr.value.find(e=>e.stackId===Y.value)||null),ir=g(()=>{let e=Math.max(160,Number(K.value.menu.width)||220),t=Math.max(80,Number(K.value.menu.maxHeight)||220);return{visibility:bn.value?`visible`:`hidden`,width:`max-content`,minWidth:`${e}px`,maxWidth:`calc(100% - 16px)`,maxHeight:`${t}px`,backgroundColor:K.value.menu.backgroundColor,color:K.value.menu.color,borderColor:K.value.menu.borderColor,borderRadius:`${K.value.menu.borderRadius}px`}});function ar(e,t){let n=k.value,r=Mt.value;if(!n||!r)return null;let i=n.getScreenCTM();if(!i)return null;let a=n.createSVGPoint();a.x=e,a.y=t;let o=a.matrixTransform(i),s=r.getBoundingClientRect();return{x:o.x-s.left,y:o.y-s.top}}function or(){let e=rr.value,t=Nt.value,n=Mt.value;if(!e||!t||!n){bn.value=null;return}let r=ar(e.x,e.y),i=ar(e.x,e.y+K.value.marker.radius);if(!r||!i){bn.value=null;return}let a=n.getBoundingClientRect(),o=t.offsetWidth,s=t.offsetHeight,c=Math.abs(i.y-r.y),l=Math.max(0,a.width-16),u=Math.min(o,l),d=r.x;if(u>=l)d=a.width/2;else{let e=u/2;d=Math.min(a.width-8-e,Math.max(8+e,r.x))}let f=r.y+c+8,p=r.y-c-8-s,m=f+s<=a.height-8,h=p>=8,ee=f;!m&&h?ee=p:m||(ee=Math.min(Math.max(8,f),Math.max(8,a.height-s-8))),bn.value={left:`${d}px`,top:`${ee}px`,transform:`translateX(-50%)`,visibility:`visible`}}function sr(){typeof window<`u`&&(Z!==null&&window.cancelAnimationFrame(Z),Z=window.requestAnimationFrame(()=>{Z=null,or()}))}Te(nr,e=>{Y.value&&!e.some(e=>e.stackId===Y.value)&&lr()}),Te(()=>{let e=rr.value;return e?[e.stackId,e.x,e.y,e.hiddenDatapoints.length,e.hiddenDatapoints.map(e=>`${e.id}:${e.label}:${e.position}`).join(`|`),K.value.marker.radius,K.value.menu.width,K.value.menu.maxHeight,K.value.menu.backgroundColor,K.value.menu.color,K.value.menu.borderColor,K.value.menu.borderRadius,Yt.value]:null},e=>{if(!e){bn.value=null;return}ve(sr)},{flush:`post`}),Te(Nt,(e,t)=>{t&&X&&X.unobserve(t),e&&X&&(X.observe(e),ve(sr))},{flush:`post`}),Te(()=>{let e=yn.value;return!e||Dn.value.overflowMemberIds.has(e)},e=>{e||(yn.value=null,J.value=null)});function cr(e){if(e){if(Y.value===e.stackId){sr();return}bn.value=null,Y.value=e.stackId,ve(sr)}}function lr(){Y.value=null,bn.value=null,typeof window<`u`&&Z!==null&&(window.cancelAnimationFrame(Z),Z=null)}function ur(){Cn!==null&&(clearTimeout(Cn),Cn=null)}function dr(){let e=J.value;e&&!e.moved&&(ur(),xn.value=e.stackId,yn.value=null,J.value=null,lr(),Cn=setTimeout(()=>{xn.value=null,Cn=null},K.value.transitionDuration+80))}function fr(e){if(!(e instanceof Element))return{isMenu:!1,isMarker:!1,isSelectedDatapoint:!1};let t=J.value,n=e.closest(`[data-datapoint-id]`);return{isMenu:!!e.closest(`[data-stack-overflow-menu]`),isMarker:!!e.closest(`[data-stack-overflow-marker]`),isSelectedDatapoint:!!(t&&n?.getAttribute(`data-datapoint-id`)===t.datapointId)}}function pr(e){let t=fr(e.target);Y.value&&!t.isMenu&&!t.isMarker&&lr(),J.value&&!J.value.moved&&!t.isMenu&&!t.isMarker&&!t.isSelectedDatapoint&&dr()}function mr(e){let t=Q.value.find(t=>t.id===e);if(!t||t.isStackOverflowHidden)return;let n=k.value?.querySelector(`[data-datapoint-index="${t.__index}"]`);n&&typeof n.focus==`function`&&n.focus({preventScroll:!0})}function hr(e){if(!e||e.disabled||A.value.readonly)return;let t=rr.value?.stackId;t&&(ur(),xn.value=null,yn.value=e.id,J.value={datapointId:e.id,stackId:t,initialPosition:e.position,moved:!1},lr(),ve(()=>{mr(e.id);let t=Q.value.find(t=>t.id===e.id);t&&R(`selectDatapoint`,Vn(t))}))}function gr(){let e=Math.max(1,Number(q.value.width)||1);return Math.max(1e-6,1/e*2)}function _r(e,t){let n=J.value;n&&n.datapointId===e&&!n.moved&&Math.abs(t-n.initialPosition)>=gr()&&(J.value={...n,moved:!0})}xe(()=>{document.addEventListener(`pointerdown`,pr),window.addEventListener(`resize`,sr,{passive:!0}),typeof ResizeObserver<`u`&&(X=new ResizeObserver(()=>{rr.value&&sr()}),Mt.value&&X.observe(Mt.value),k.value&&X.observe(k.value))}),be(()=>{document.removeEventListener(`pointerdown`,pr),window.removeEventListener(`resize`,sr),X?.disconnect(),X=null,Z!==null&&(window.cancelAnimationFrame(Z),Z=null),ur()});function vr(e){return I.value?I.value.id===e.id:Zn.value===e.id||$.value===e.id}function yr(e){return s(j.value.dragMarker.positionIndicator.value.formatter,e.position,n({p:``,v:e.position*100,s:`%`,r:j.value.dragMarker.positionIndicator.value.rounding}))}let br=g(()=>M.value.backgroundColor),xr=g(()=>M.value.legend),Sr=g(()=>M.value.title),{isCallbackImaging:Cr,isCallbackSvg:wr,generateSvg:Tr,onGenerateImage:Er}=re({svg:k,title:Sr,legend:xr,legendItems:null,backgroundColor:br,getSvgCallback:()=>A.value.userOptions.callbacks.svg,generateImage:Kt});function Dr(e=null){ve(()=>{let t=cn().map(e=>[[e.name],[e.position],[yr(e)],[Bn(e.position)]]),n=[[M.value.title.text],[M.value.title.subtitle.text],[[`Name`],[`Position`],[`Percentage`],[`Phase`]]].concat(t),i=r(n);e?e(i):l({csvContent:i,title:M.value.title.text||`vue-ui-hill`})})}let Or=g(()=>M.value.layout.stackbar.show),kr=g(()=>{let e=Q.value.length;Q.value.reduce((e,t)=>e+(t?.position??0),0);let t=0,n=Q.value.every(e=>e.position===1);return Q.value.toSorted((e,t)=>{if(n)return e.__index-t.__index;let r=(e?.position??0)-(t?.position??0);return r===0?e.__index-t.__index:r}).map(n=>{let r=n?.position??0,i=e>0?r/e:0,a={...n,proportion:i,proportionStart:t};return t+=i,a})}),Ar=g(()=>Math.min(1,Math.max(0,kr.value.reduce((e,t)=>e+t.proportion,0)))),jr=g(()=>Ar.value*100),Mr=g(()=>q.value.left[0].x+q.value.width*Ar.value),Nr=g(()=>z.value.height+32+G.value.paddingTop);function Pr(){return s(G.value.label.formatter,jr.value,n({p:``,v:jr.value,s:`%`,r:0}))}let Fr=g(()=>`${jt.value}-stackbar-clip`);async function Ir(){let e=cn();if(It(`copyAlt`,{config:A.value,dataset:e}),!A.value.userOptions.callbacks.altCopy){console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.");return}await Promise.resolve(A.value.userOptions.callbacks.altCopy({config:A.value,dataset:e}))}let Lr=te(Mt,()=>M.value.title.text);function Rr(){return cn()}return m({isEditing:P,beginEditing:Nn,save:Pn,cancel:Fn,getData:Rr,copyAlt:Ir,toggleFullscreen:Xt,toggleAnnotator:Qt,generateImage:Kt,generateSvg:Tr,generatePdf:Gt,generateCsv:Dr,getImage:Lr}),(e,t)=>(S(),v(`div`,{ref_key:`hillChartRef`,ref:Mt,class:b(`vue-data-ui-component vue-ui-hill`),style:x(Gn.value),id:`hill_${jt.value}`,onMouseenter:Vt,onMouseleave:Ht,"data-editing":P.value},[M.value.title.text?(S(),v(`div`,Ae,[(S(),pe(ne,{key:`title_${Ft.value}`,config:{title:{cy:`hill-div-title`,...M.value.title},subtitle:{cy:`hill-div-subtitle`,...M.value.title.subtitle}}},null,8,[`config`]))],512)):_(``,!0),A.value.userOptions.buttons.annotator&&k.value?(S(),pe(E(Tt),{key:1,color:M.value.color,backgroundColor:M.value.backgroundColor,active:Zt.value,svgRef:k.value,isCursorPointer:qt.value,palette:A.value.userOptions.annotatorPalette,onClose:Qt},me({_:2},[Se(E(ae),t=>({name:t,fn:Ee(n=>[w(e.$slots,t,ye(_e(E(ie)(t,n))),void 0,!0)])}))]),1032,[`color`,`backgroundColor`,`active`,`svgRef`,`isCursorPointer`,`palette`])):_(``,!0),W.value.show?(S(),pe(E(St),{key:2,"is-editing":P.value,"is-editable":L.value,"is-fullscreen":Yt.value,position:$t.value,color:M.value.color,"background-color":M.value.backgroundColor,translations:W.value.buttons.translations,"is-cursor-pointer":qt.value,onUpdate:Nn,onCancel:Fn,onSave:Pn},{"hill-edit":Ee(()=>[w(e.$slots,`hill-edit`,{},void 0,!0)]),"hill-cancel":Ee(()=>[w(e.$slots,`hill-cancel`,{},void 0,!0)]),"hill-save":Ee(()=>[w(e.$slots,`hill-save`,{},void 0,!0)]),_:3},8,[`is-editing`,`is-editable`,`is-fullscreen`,`position`,`color`,`background-color`,`translations`,`is-cursor-pointer`])):_(``,!0),W.value.show?(S(),v(`div`,je,[y(`p`,{class:`vue-ui-hill__status`,style:x(Kn.value),"aria-live":`polite`},T(P.value?W.value.status.editInstruction:W.value.status.lastUpdated),5)])):_(``,!0),A.value.userOptions.show&&(E(Bt)||E(Rt))?(S(),pe(E(Ct),{ref_key:`userOptionsRef`,ref:Pt,key:`uo_${Jt.value}`,backgroundColor:M.value.backgroundColor,color:M.value.color,isPrinting:E(Ut),isImaging:E(Wt),uid:jt.value,hasTooltip:!1,hasPdf:A.value.userOptions.buttons.pdf,hasImg:A.value.userOptions.buttons.img,hasSvg:A.value.userOptions.buttons.svg,hasXls:A.value.userOptions.buttons.csv,hasTable:A.value.userOptions.buttons.table,hasLabel:A.value.userOptions.buttons.labels,hasFullscreen:A.value.userOptions.buttons.fullscreen,hasAltCopy:A.value.userOptions.buttons.altCopy,chartElement:Mt.value,position:A.value.userOptions.position,callbacks:A.value.userOptions.callbacks,titles:{...A.value.userOptions.buttonTitles},hasAnnotator:A.value.userOptions.buttons.annotator,isAnnotation:Zt.value,printScale:A.value.userOptions.print.scale,isCursorPointer:qt.value,onToggleFullscreen:Xt,onGeneratePdf:E(Gt),onGenerateCsv:Dr,onGenerateImage:E(Er),onGenerateSvg:E(Tr),onToggleAnnotator:Qt,onCopyAlt:Ir,style:x({visibility:E(Bt)?E(Rt)?`visible`:`hidden`:`visible`})},me({_:2},[Se(E(oe)(e.$slots,`menuIcon optionPdf optionCsv optionImg optionSvg optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:Ee(n=>[w(e.$slots,t,ye(_e(E(se)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasImg`,`hasSvg`,`hasXls`,`hasTable`,`hasLabel`,`hasFullscreen`,`hasAltCopy`,`chartElement`,`position`,`callbacks`,`titles`,`hasAnnotator`,`isAnnotation`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):_(``,!0),(S(),v(`svg`,{ref_key:`svgRef`,ref:k,style:x({background:`transparent`,color:M.value.color,fontFamily:A.value.style.fontFamily}),class:b({"vue-data-ui-no-transition":!E(N)}),viewBox:`0 0 ${z.value.width} ${z.value.height+(Or.value?32+G.value.paddingTop+G.value.paddingBottom+G.value.height:0)}`,role:`group`,"aria-live":`polite`,preserveAspectRatio:`xMidYMid meet`,onPointermove:Ln,onPointerup:Rn,onPointercancel:Rn},[he(E(wt)),e.$slots[`chart-background`]?(S(),v(`foreignObject`,{key:0,x:0,y:0,width:Math.max(.1,z.value.width),height:Math.max(.1,z.value.height+(Or.value?32+G.value.paddingTop+G.value.paddingBottom+G.value.height:0)),style:{pointerEvents:`none`}},[w(e.$slots,`chart-background`,{},void 0,!0)],8,Ne)):_(``,!0),B.value.baseline.show?(S(),v(`line`,{key:1,x1:q.value.startX,x2:q.value.endX,y1:q.value.baseY,y2:q.value.baseY,stroke:B.value.baseline.stroke,"stroke-width":B.value.baseline.strokeWidth,"stroke-dasharray":B.value.baseline.strokeDasharray,"vector-effect":`non-scaling-stroke`},null,8,Pe)):_(``,!0),B.value.midline.show?(S(),v(`line`,{key:2,x1:q.value.centerX,x2:q.value.centerX,y1:q.value.peakY,y2:q.value.baseY,stroke:B.value.midline.stroke,"stroke-width":B.value.midline.strokeWidth,"stroke-dasharray":B.value.midline.strokeDasharray,"vector-effect":`non-scaling-stroke`},null,8,Fe)):_(``,!0),y(`path`,{d:fn.value,fill:`none`,stroke:B.value.curve.stroke,"stroke-width":B.value.curve.strokeWidth,"stroke-dasharray":B.value.curve.strokeDasharray,"stroke-linecap":`round`,"stroke-linejoin":`round`,"vector-effect":`non-scaling-stroke`},null,8,Ie),j.value.dragMarker.positionIndicator.show?(S(!0),v(fe,{key:3},Se(tr.value,e=>(S(),v(`g`,{key:`position-indicator-${e.id}`},[vr(e)&&V.value.dragMarker.show?(S(),v(`g`,Le,[y(`path`,{d:`M${e.x},${e.y} ${e.x},${q.value.baseY}`,stroke:j.value.dragMarker.positionIndicator.useSerieColor?e.color:j.value.dragMarker.positionIndicator.color,"stroke-width":j.value.dragMarker.positionIndicator.strokeWidth,"stroke-dasharray":j.value.dragMarker.positionIndicator.strokeDasharray,"stroke-linecap":`round`,"vector-effect":`non-scaling-stroke`,class:b({"vue-data-ui-transition":E(N)&&I.value?.id!==e.id})},null,10,Re),j.value.dragMarker.positionIndicator.circle.show?(S(),v(`circle`,{key:0,cx:e.x,cy:q.value.baseY,r:j.value.dragMarker.positionIndicator.circle.radius,fill:j.value.dragMarker.positionIndicator.useSerieColor?e.color:j.value.dragMarker.positionIndicator.color,stroke:j.value.dragMarker.positionIndicator.circle.stroke,"stroke-width":j.value.dragMarker.positionIndicator.circle.strokeWidth,"vector-effect":`non-scaling-stroke`,"paint-order":`stroke fill`,class:b({"vue-data-ui-transition":E(N)&&I.value?.id!==e.id})},null,10,ze)):_(``,!0),j.value.dragMarker.positionIndicator.value.show?(S(),v(`text`,{key:1,"paint-order":`stroke fill`,"vector-effect":`non-scaling-stroke`,"text-anchor":`middle`,transform:`translate(${e.x}, ${q.value.baseY+j.value.radius+j.value.dragMarker.positionIndicator.value.offsetY+j.value.dragMarker.positionIndicator.value.fontSize})`,"font-size":j.value.dragMarker.positionIndicator.value.fontSize,fill:j.value.dragMarker.positionIndicator.value.useSerieColor?e.color:j.value.dragMarker.positionIndicator.value.color,stroke:M.value.backgroundColor,"stroke-width":`1`,class:b({"vue-data-ui-transition":E(N)&&I.value?.id!==e.id})},T(yr(e)),11,Be)):_(``,!0)])):_(``,!0)]))),128)):_(``,!0),(S(!0),v(fe,null,Se(tr.value,e=>(S(),v(`g`,{key:e.id,"data-cy-datapoint":``,class:b({"vue-ui-hill__datapoint":!0,"vue-data-ui-transition":E(N)&&I.value?.id!==e.id,"vue-ui-hill__datapoint--promoted":E(N)&&e.isPromotedFromStackOverflow}),style:x({opacity:[0,1].includes(e.position)||e?.muted?V.value.mutedOpacity:e?.disabled?V.value.disabledOpacity:1}),transform:`translate(${e.x} ${e.y})`,"data-datapoint-index":e.__index,"data-datapoint-id":e.id,role:`slider`,tabindex:P.value&&L.value&&!e.disabled?0:-1,"aria-orientation":`horizontal`,"aria-valuemin":`0`,"aria-valuemax":`100`,"aria-valuenow":yr(e),"aria-valuetext":`${e.label}: ${Bn(e.position)}, ${yr(e)}`,"aria-label":e.label,onFocus:t=>Qn(e),onBlur:t=>$n(e),onKeydown:t=>zn(t,e),onPointerenter:t=>Hn(e),onPointerleave:t=>Un(e),onClick:t=>Wn(e)},[y(`circle`,{r:V.value.hitRadius,fill:`transparent`,class:b({"vue-ui-hill__hit-area--active":P.value&&L.value&&!e.disabled,"vue-ui-hill__hit-area--dragging":I.value?.id===e.id}),onPointerdown:t=>In(t,e)},null,42,He),y(`circle`,{class:`vue-ui-hill-circle`,r:V.value.radius,fill:e.color,stroke:V.value.stroke,"stroke-width":V.value.strokeWidth,style:x({filter:V.value.shadow.show?`drop-shadow(${V.value.shadow.offsetX}px ${V.value.shadow.offsetY}px ${V.value.shadow.blur}px ${V.value.shadow.color})`:`none`}),"vector-effect":`non-scaling-stroke`,"pointer-events":`none`},null,12,Ue),P.value&&(I.value?.id===e.id&&V.value.dragMarker.show||vr(e))&&!e?.disabled?(S(),v(`g`,{key:0,fill:`none`,stroke:E(u)(e.color),"stroke-width":V.value.dragMarker.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,"pointer-events":`none`,"vector-effect":`non-scaling-stroke`,"aria-hidden":`true`},[y(`path`,{d:V.value.dragMarker.crossPath},null,8,Ge)],8,We)):_(``,!0),H.value.show?(S(),v(`text`,{key:1,x:e.labelX,y:H.value.offsetY,"text-anchor":e.textAnchor,fill:H.value.useSerieColor?e.color:H.value.color,"font-size":H.value.fontSize,"font-weight":H.value.bold?`bold`:`normal`,"paint-order":`stroke fill`,stroke:H.value.stroke,"stroke-width":H.value.strokeWidth,"stroke-linejoin":`round`,"stroke-linecap":`round`,"pointer-events":`none`,style:{"user-select":`none`},"dominant-baseline":`central`},T(E(o)(e.label,H.value.ellipsisThresholdChars)),9,Ke)):_(``,!0)],46,Ve))),128)),(S(!0),v(fe,null,Se(nr.value,e=>(S(),v(`g`,{key:`stack-overflow-${e.stackId}`,class:b([`vue-ui-hill__stack-overflow-marker`,{"vue-ui-hill__stack-overflow-marker--animated":E(N),"vue-ui-hill__stack-overflow-marker--restored":xn.value===e.stackId}]),style:x({"--vue-ui-hill-overflow-marker-duration":`${K.value.transitionDuration*.7}ms`,"--vue-ui-hill-overflow-marker-delay":`${K.value.transitionDuration*.3}ms`,"--vue-ui-hill-overflow-label-duration":`${K.value.transitionDuration*.55}ms`,"--vue-ui-hill-overflow-label-delay":`${K.value.transitionDuration*.45}ms`,cursor:qt.value&&!A.value.readonly?`pointer`:`default`}),transform:`translate(${e.x} ${e.y})`,"data-stack-overflow-marker":``,role:`button`,tabindex:P.value&&L.value?0:-1,"aria-label":`${e.hiddenCount} stacked datapoints. Activate to choose one.`,"aria-expanded":Y.value===e.stackId,onPointerdown:t[0]||=D(()=>{},[`stop`]),onClick:D(t=>cr(e),[`stop`]),onFocus:t=>cr(e),onKeydown:[De(D(t=>cr(e),[`prevent`,`stop`]),[`enter`]),De(D(t=>cr(e),[`prevent`,`stop`]),[`space`]),De(D(lr,[`prevent`,`stop`]),[`esc`])]},[E(N)&&xn.value!==e.stackId?(S(),v(`g`,Je,[(S(!0),v(fe,null,Se(e.collapseDatapoints,t=>(S(),v(`circle`,{key:`overflow-ghost-${e.stackId}-${t.id}`,cx:t.relativeX,cy:t.relativeY,r:V.value.radius,fill:t.color,stroke:V.value.stroke,"stroke-width":V.value.strokeWidth,opacity:`0.8`,"vector-effect":`non-scaling-stroke`},[y(`animate`,{attributeName:`cx`,from:t.relativeX,to:`0`,dur:`${K.value.transitionDuration}ms`,fill:`freeze`,calcMode:`spline`,keyTimes:`0;1`,keySplines:`0.22 1 0.36 1`},null,8,Xe),y(`animate`,{attributeName:`cy`,from:t.relativeY,to:`0`,dur:`${K.value.transitionDuration}ms`,fill:`freeze`,calcMode:`spline`,keyTimes:`0;1`,keySplines:`0.22 1 0.36 1`},null,8,Ze),y(`animate`,{attributeName:`r`,from:V.value.radius,to:K.value.marker.radius*.7,dur:`${K.value.transitionDuration}ms`,fill:`freeze`},null,8,Qe),y(`animate`,{attributeName:`opacity`,from:`0.8`,to:`0`,dur:`${K.value.transitionDuration*.85}ms`,fill:`freeze`},null,8,$e)],8,Ye))),128))])):_(``,!0),y(`circle`,{r:Math.max(V.value.hitRadius,K.value.marker.radius),fill:`transparent`,"pointer-events":`all`},null,8,et),y(`rect`,{class:`vue-ui-hill__stack-overflow-marker-rect`,x:-K.value.marker.radius,y:-K.value.marker.radius,width:K.value.marker.radius*2,height:K.value.marker.radius*2,fill:K.value.marker.fill,stroke:K.value.marker.stroke,"stroke-width":K.value.marker.strokeWidth,"vector-effect":`non-scaling-stroke`,"pointer-events":`none`},null,8,tt),y(`g`,{class:`vue-ui-hill__stack-overflow-focus-cross`,fill:`none`,stroke:E(u)(B.value.curve.stroke),"stroke-width":V.value.dragMarker.strokeWidth,"stroke-linecap":`round`,"stroke-linejoin":`round`,"pointer-events":`none`,"vector-effect":`non-scaling-stroke`,"aria-hidden":`true`},[y(`path`,{d:V.value.dragMarker.crossPath},null,8,rt)],8,nt),rr.value?_(``,!0):(S(),v(`text`,{key:1,class:`vue-ui-hill__stack-overflow-marker-label`,"text-anchor":`middle`,y:K.value.marker.radius+K.value.marker.offsetY+K.value.marker.fontSize,fill:K.value.marker.color,"font-size":K.value.marker.fontSize,"font-weight":K.value.marker.bold?`bold`:`normal`,"pointer-events":`none`,style:{"user-select":`none`},"paint-order":`stroke fill`,"vector-effect":`non-scaling-stroke`,stroke:M.value.backgroundColor,"stroke-width":`3`},` +`+T(e.hiddenCount),9,it))],46,qe))),128)),U.value.show?(S(),v(fe,{key:4},[y(`text`,{x:(q.value.startX+q.value.centerX)/2,y:qn.value,"text-anchor":`middle`,fill:U.value.color,"font-size":U.value.fontSize,"font-weight":U.value.bold?`bold`:`normal`,"letter-spacing":U.value.letterSpacing},T(Jn(`left`)),9,at),y(`text`,{x:(q.value.centerX+q.value.endX)/2,y:qn.value,"text-anchor":`middle`,fill:U.value.color,"font-size":U.value.fontSize,"font-weight":U.value.bold?`bold`:`normal`,"letter-spacing":U.value.letterSpacing},T(Jn(`right`)),9,ot)],64)):_(``,!0),Or.value?(S(),v(fe,{key:5},[y(`rect`,{x:q.value.left[0].x,y:Nr.value,rx:G.value.height/2,width:q.value.width,height:G.value.height,fill:G.value.gutterColor},null,8,st),y(`defs`,null,[y(`clipPath`,{id:Fr.value},[y(`rect`,{x:q.value.left[0].x,y:Nr.value,width:q.value.width*Ar.value,height:G.value.height,rx:Math.min(G.value.height/2,q.value.width*Ar.value/2),ry:Math.min(G.value.height/2,q.value.width*Ar.value/2)},null,8,lt)],8,ct)]),y(`g`,{"clip-path":`url(#${Fr.value})`},[(S(!0),v(fe,null,Se(kr.value,e=>(S(),v(`rect`,{key:`bar_fill_${e.id}`,width:q.value.width*e.proportion,x:q.value.left[0].x+q.value.width*e.proportionStart,y:z.value.height+32+G.value.paddingTop,fill:e.color,height:G.value.height,onPointerenter:t=>Hn(e),onPointerleave:t=>Un(e)},null,40,dt))),128))],8,ut),(S(!0),v(fe,null,Se(kr.value.slice(1),e=>(S(),v(`line`,{key:`bar_separator_${e.id}`,x1:q.value.left[0].x+q.value.width*e.proportionStart,x2:q.value.left[0].x+q.value.width*e.proportionStart,y1:z.value.height+32+G.value.paddingTop,y2:z.value.height+32+G.value.paddingTop+G.value.height,stroke:G.value.stroke,"stroke-width":G.value.strokeWidth,"vector-effect":`non-scaling-stroke`},null,8,ft))),128)),y(`rect`,{x:q.value.left[0].x,y:z.value.height+32+G.value.paddingTop,width:q.value.width*Ar.value,height:G.value.height,rx:Math.min(G.value.height/2,q.value.width*Ar.value/2),ry:Math.min(G.value.height/2,q.value.width*Ar.value/2),fill:`none`,stroke:G.value.stroke,"stroke-width":G.value.strokeWidth,"vector-effect":`non-scaling-stroke`},null,8,pt),G.value.label.show&&Ar.value>0?(S(),v(`text`,{key:0,x:Mr.value,y:Nr.value-6,fill:G.value.label.color,"font-size":G.value.label.fontSize,"text-anchor":`end`,"dominant-baseline":`auto`,"pointer-events":`none`,style:{"user-select":`none`}},T(Pr()),9,mt)):_(``,!0)],64)):_(``,!0),w(e.$slots,`svg`,{svg:{drawingArea:q.value,isEditing:P.value,datapoints:tr.value,isPrintingImg:E(Ut)||E(Wt)||E(Cr),isPrintingSvg:E(wr)}},void 0,!0)],46,Me)),rr.value?(S(),v(`div`,{ref_key:`overflowMenuRef`,ref:Nt,key:`stack-overflow-menu-${rr.value.stackId}`,class:`vue-ui-hill__stack-overflow-menu`,"data-stack-overflow-menu":``,"data-dom-to-png-ignore":``,style:x([ir.value,bn.value]),role:`listbox`,"aria-label":`Choose one of ${rr.value.hiddenCount} stacked datapoints`,onPointerdown:t[1]||=D(()=>{},[`stop`]),onClick:t[2]||=D(()=>{},[`stop`]),onKeydown:De(D(lr,[`prevent`,`stop`]),[`esc`])},[j.value.stacking.overflow.menu.title?(S(),v(`div`,gt,T(j.value.stacking.overflow.menu.title),1)):_(``,!0),(S(!0),v(fe,null,Se(rr.value.hiddenDatapoints,e=>(S(),v(`button`,{key:`hidden-${e.id}`,type:`button`,class:b([`vue-ui-hill__stack-overflow-menu-item`,{readonly:A.value.readonly}]),role:`option`,disabled:e.disabled,"aria-label":`${e.label}, ${yr(e)}`,onClick:D(t=>hr(e),[`stop`]),style:x({cursor:qt.value&&!A.value.readonly?`pointer`:`default`})},[y(`span`,{class:`vue-ui-hill__stack-overflow-menu-swatch`,style:x({backgroundColor:e.color}),"aria-hidden":`true`},null,4),y(`span`,vt,T(E(o)(e.label,H.value.ellipsisThresholdChars)),1),y(`span`,yt,T(yr(e)),1)],14,_t))),128))],44,ht)):_(``,!0),w(e.$slots,`analysis`,{data:{...kr.value}},void 0,!0),e.$slots.watermark?(S(),v(`div`,bt,[w(e.$slots,`watermark`,ye(_e({isPrinting:E(Ut)||E(Wt)||E(Cr)||E(wr)})),void 0,!0)])):_(``,!0),A.value.loading?(S(),v(`div`,xt,[A.value.loading?w(e.$slots,`loading`,{},()=>[he(E(Et),{name:`spinner2`,stroke:M.value.color,"is-spin":!0},null,8,[`stroke`])],!0,0):_(``,!0)])):_(``,!0)],44,ke))}},[[`__scopeId`,`data-v-01d798ea`]]);export{Oe as n,St as t};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-DM9fSqjh.js";import{$ as n,D as r,Dt as i,Et as a,Ft as o,Ht as s,J as c,Q as ee,S as te,T as ne,X as re,Zt as ie,_ as ae,at as oe,i as l,in as se,nn as ce,nt as le,qt as ue,r as de,rn as u,t as fe,tn as pe,w as me,yt as he,zt as ge}from"./lib-DqD8nbyX.js";import{n as _e,t as ve}from"./BaseScanner-8NdoBs7B.js";import{n as ye,t as be}from"./useHints-BH9r_0Vd.js";import{t as xe}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as Se}from"./useNestedProp-DrLnzyHO.js";import{t as Ce}from"./useThemeCheck-BKNRbGeC.js";import{t as we}from"./chartImage-r-G4CkRK.js";import{n as Te}from"./Title-BLA0tM3g.js";import{t as Ee}from"./useChartExport-DtPNpc9M.js";import{n as De,t as Oe}from"./tableIntegration-CNoJ1CIY.js";import{n as ke,t as Ae}from"./annotationSlots-BRR85CqJ.js";import{n as je,t as Me}from"./userOptionsSlots-DYuo-E5m.js";import{t as Ne}from"./usePrinter-Cj4eIYC_.js";import{t as Pe}from"./useTransitions-DfSHzsdz.js";import{t as Fe}from"./useTimeLabelCollider-XQf_S7-z.js";import{l as Ie,t as Le}from"./useResponsive-D2CPcpda.js";import{t as Re}from"./DefGrad-DKMq1REY.js";import{t as ze}from"./BaseLegendToggle-BOcw1ke8.js";import{t as Be}from"./A11yDataTable-DWNlWXzs.js";import{t as Ve}from"./useUserOptionState-CXlFnwPv.js";import{t as He}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ue}from"./Legend-D8NunRPr.js";import{t as We}from"./vue_ui_history_plot-soyqUW4Y.js";import{Fragment as d,Teleport as Ge,computed as f,createBlock as p,createCommentVNode as m,createElementBlock as h,createElementVNode as g,createSlots as Ke,createTextVNode as qe,createVNode as Je,defineAsyncComponent as _,guardReactiveProps as v,mergeProps as Ye,nextTick as Xe,normalizeClass as y,normalizeProps as b,normalizeStyle as x,onBeforeUnmount as Ze,onMounted as Qe,openBlock as S,ref as C,renderList as w,renderSlot as T,resolveDynamicComponent as $e,shallowRef as et,toDisplayString as E,toRefs as tt,unref as D,watch as nt,watchEffect as rt,withCtx as O}from"vue";var it=/* @__PURE__ */ e({default:()=>Ut}),at=[`id`],ot=[`id`],st=[`id`],ct={style:{position:`relative`}},lt=[`xmlns`,`viewBox`,`aria-describedby`],ut=[`x`,`y`,`width`,`height`],dt={key:1},ft=[`id`,`x1`,`y1`,`x2`,`y2`],pt=[`stop-color`,`offset`],mt={key:2},ht=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],gt={key:3},_t=[`stroke`,`stroke-width`,`x1`,`x2`,`y1`,`y2`],vt=[`x`,`y`,`fill`,`font-size`],yt=[`transform`,`font-size`,`fill`,`font-weight`],bt={key:6},xt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],St={key:7},Ct=[`stroke`,`stroke-width`,`x1`,`x2`,`y1`,`y2`],wt=[`transform`,`fill`,`font-size`,`text-anchor`],Tt=[`x`,`y`,`font-size`,`fill`,`font-weight`],Et=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],Dt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],Ot=[`d`,`stroke`,`stroke-width`],kt=[`d`,`stroke`,`stroke-width`],At=[`cx`,`cy`,`fill`,`r`],jt=[`cx`,`cy`,`fill`,`r`,`stroke`,`stroke-width`],Mt={key:1},Nt=[`transform`,`font-size`,`fill`,`font-weight`],Pt=[`transform`,`font-size`,`fill`,`font-weight`,`innerHTML`],Ft={key:2},It=[`transform`,`font-size`,`font-weight`,`fill`],Lt=[`cx`,`cy`,`r`,`onMouseenter`,`onMouseleave`,`onClick`],Rt={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},zt={key:5,class:`vue-data-ui-watermark`},Bt=[`id`],Vt=[`onClick`],Ht={style:{display:`flex`,"align-items":`center`}},Ut=/*#__PURE__*/ xe({__name:`vue-ui-history-plot`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`selectLegend`,`selectDatapoint`,`copyAlt`],setup(e,{expose:xe,emit:it}){let Ut=_(()=>import(`./Tooltip-Iyb_S6oQ.js`)),Wt=_(()=>import(`./BaseIcon-DDctLkeT.js`).then(e=>e.n)),Gt=_(()=>import(`./vue-ui-accordion-3lBpCjGm.js`).then(e=>e.n)),Kt=_(()=>import(`./DataTable-BcVZLSs8.js`)),qt=_(()=>import(`./PenAndPaper-BsBFp16i.js`).then(e=>e.t)),Jt=_(()=>import(`./UserOptions-BSJ_S_us.js`).then(e=>e.n)),Yt=_(()=>import(`./PackageVersion-ATrKWi8V.js`).then(e=>e.t)),Xt=_(()=>import(`./BaseDraggableDialog-Bw_azO0n.js`).then(e=>e.n)),{vue_ui_history_plot:Zt}=t(),{isThemeValid:Qt,warnInvalidTheme:$t}=Ce(),k=e,A=C(null),en=C(null),tn=C(0),nn=C(null),rn=C(0),an=C(0),on=C(0),j=et(null),M=et(null),sn=C(null),N=C(re()),cn=C(!1),ln=C(``),P=C([]),un=C(!1),F=C(null),dn=C(!1),fn=C(null),pn=C(!1),mn=C(null),hn=C(null),gn=C(null),_n=C(null),vn=C(null),yn=C(null),I=C(null),L=C(null),bn=C({x:0,y:0}),xn=C(`pointer`),Sn=C(!1),Cn=f({get:()=>!!k.dataset&&k.dataset.length,set:e=>e}),wn=it;Qe(()=>{pn.value=!0,En()});let Tn=f(()=>R.value.debug);function En(){if(ge(k.dataset)?(oe({componentName:`VueUiHistoryPlot`,type:`dataset`,debug:Tn.value}),jn.value=!0):k.dataset.forEach((e,t)=>{he({datasetObject:e,requiredAttributes:[`name`,`values`]}).forEach(e=>{Cn.value=!1,oe({componentName:`VueUiHistoryPlot`,type:`datasetSerieAttribute`,property:e,index:t,debug:Tn.value})})}),ge(k.dataset)||(jn.value=R.value.loading),R.value.responsive){let e=Ie(()=>{let{width:e,height:t}=Le({chart:A.value,title:H.value.title.text?en.value:null,noTitle:sn.value,legend:H.value.legend.show?nn.value:null,source:fn.value});requestAnimationFrame(()=>{q.value.width=e,q.value.height=t,R.value.responsiveProportionalSizing?(Y.value.plots=u({relator:Math.min(e,t),adjuster:600,source:z.value.radius,threshold:3,fallback:3}),Y.value.indexLabels=u({relator:Math.min(e,t),adjuster:600,source:z.value.indexLabels.fontSize,threshold:6,fallback:6}),Y.value.labels=u({relator:Math.min(e,t),adjuster:600,source:z.value.labels.fontSize,threshold:6,fallback:6}),Y.value.xAxisLabels=u({relator:Math.min(e,t),adjuster:600,source:V.value.x.labels.fontSize,threshold:6,fallback:6}),Y.value.xAxisName=u({relator:Math.min(e,t),adjuster:600,source:V.value.x.name.fontSize,threshold:6,fallback:6}),Y.value.yAxisLabels=u({relator:Math.min(e,t),adjuster:600,source:V.value.y.labels.fontSize,threshold:6,fallback:6}),Y.value.yAxisName=u({relator:Math.min(e,t),adjuster:600,source:V.value.y.name.fontSize,threshold:6,fallback:6})):(Y.value.plots=z.value.radius,Y.value.indexLabels=z.value.indexLabels.fontSize,Y.value.labels=z.value.labels.fontSize,Y.value.xAxisLabels=V.value.x.labels.fontSize,Y.value.xAxisName=V.value.x.name.fontSize,Y.value.yAxisLabels=V.value.y.labels.fontSize,Y.value.yAxisName=V.value.y.name.fontSize)})});j.value&&(M.value&&j.value.unobserve(M.value),j.value.disconnect()),j.value=new ResizeObserver(e),M.value=A.value.parentNode,j.value.observe(M.value)}}Ze(()=>{j.value&&(M.value&&j.value.unobserve(M.value),j.value.disconnect())});function Dn(){let e=Se({userConfig:k.config,defaultConfig:Zt}),t={},n=e.theme;if(n){if(!Qt.value(e))$t(e),t=e;else{let r=Se({userConfig:We[n]||k.config,defaultConfig:e});t={...Se({userConfig:k.config,defaultConfig:r}),customPalette:e.customPalette.length?e.customPalette:ce[n]||s}}}else t=e;return t}let R=C(Dn()),z=f(()=>R.value.style.chart.plots),B=f(()=>R.value.style.chart.grid),V=f(()=>R.value.style.chart.axes),H=f(()=>R.value.style.chart);ye({config:()=>R.value,dataset:()=>k.dataset,component:`VueUiHistoryPlot`,rules:[be.emptyArray,{test:e=>e.length>6,message:[`👀 The number of series is > 6. Consider:`,``,`▶️ Using filters to let users choose a maximum number of series to display.`]}]});let{transitionEnabled:U}=Pe({config:()=>R.value.transitions,dataset:()=>k.dataset}),W=f(()=>R.value.userOptions.useCursorPointer),On=f(()=>se({defaultConfig:{userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,axes:{x:{scaleMin:0,scaleMax:10,labels:{show:!1},name:{text:``}},y:{scaleMin:0,scaleMax:10,labels:{show:!1},name:{text:``}}},grid:{xAxis:{stroke:`#6A6A6A`},horizontalLines:{stroke:`#6A6A6A50`},yAxis:{stroke:`#6A6A6A`},verticalLines:{stroke:`#6A6A6A50`}},legend:{backgroundColor:`transparent`},paths:{useSerieColor:!1,stroke:`#6A6A6A`},plots:{stroke:`#6A6A6A`,indexLabels:{show:!1},labels:{show:!1}}}}},userConfig:R.value.skeletonConfig??{}})),{loading:kn,FINAL_DATASET:An,manualLoading:jn}=_e({...tt(k),FINAL_CONFIG:R,prepareConfig:Dn,skeletonDataset:k.config?.skeletonDataset??[{name:``,color:`#CACACA`,values:[{label:``,x:1,y:9},{label:``,x:4,y:1},{label:``,x:7,y:9},{label:``,x:9,y:4}]}],skeletonConfig:se({defaultConfig:R.value,userConfig:On.value})}),{userOptionsVisible:Mn,setUserOptionsVisibility:Nn,keepUserOptionState:Pn}=Ve({config:R.value}),{svgRef:G}=He({config:H.value.title}),Fn=ie(k.config);nt(()=>k.config,(e,t)=>{let n=ie(e),r=n!==Fn;Fn=n;let i=Dn();if(!r){R.value.style.chart.tooltip=i.style.chart.tooltip,K.value.showTooltip=R.value.style.chart.tooltip.show;return}kn.value||(R.value=i),Mn.value=!R.value.userOptions.showOnChartHover,En(),tn.value+=1,an.value+=1,rn.value+=1,q.value.height=H.value.height,q.value.width=H.value.width,Y.value.plots=z.value.radius,Y.value.indexLabels=z.value.indexLabels.fontSize,Y.value.labels=z.value.labels.fontSize,Y.value.xAxisLabels=V.value.x.labels.fontSize,Y.value.xAxisName=V.value.x.name.fontSize,Y.value.yAxisLabels=V.value.y.labels.fontSize,Y.value.yAxisName=V.value.y.name.fontSize,K.value.showTable=R.value.table.show,K.value.showTooltip=H.value.tooltip.show},{deep:!0}),nt(()=>k.dataset,e=>{Array.isArray(e)&&e.length>0&&(jn.value=!1)},{deep:!0});let{isPrinting:In,isImaging:Ln,generatePdf:Rn,generateImage:zn}=Ne({elementId:`history_plot_${N.value}`,fileName:H.value.title.text||`vue-ui-history-plot`,options:R.value.userOptions.print}),Bn=f(()=>R.value.userOptions.show&&!H.value.title.text),Vn=f(()=>me(R.value.customPalette)),K=C({showTable:R.value.table.show,showTooltip:H.value.tooltip.show});nt(R,()=>{K.value={showTable:R.value.table.show,showTooltip:H.value.tooltip.show}},{immediate:!0});let q=C({height:H.value.height,width:H.value.width}),Hn=f(()=>q.value.width),Un=f(()=>q.value.height);function Wn(){let e=0;yn.value&&(e=Array.from(yn.value.querySelectorAll(`text`)).reduce((e,t)=>{let n=t.getComputedTextLength();return n>e?n:e},0));let t=_n.value?_n.value.getBoundingClientRect().width:0;return e+t+(t?24:0)}let Gn=C(0),Kn=Ie(e=>{Gn.value=e});rt(e=>{let t=vn.value;if(!t)return;let n=new ResizeObserver(e=>{Kn(e[0].contentRect.height)});n.observe(t),e(()=>n.disconnect())});let qn=f(()=>{let e=0;gn.value&&(e=gn.value.getBBox().height+Y.value.xAxisName/2);let t=0;return vn.value&&(t=Gn.value),e+t}),J=f(()=>{let e=H.value.padding.left,t=H.value.padding.top,n=Wn(),r=z.value.radius;return{left:e+n+V.value.y.name.offsetX,top:t+r,right:q.value.width-H.value.padding.right-r-V.value.y.name.offsetX,bottom:q.value.height-H.value.padding.bottom-qn.value-r-V.value.x.name.offsetY,width:q.value.width-e-H.value.padding.right-n-r-V.value.y.name.offsetX,height:q.value.height-t-H.value.padding.bottom-qn.value-r*2-V.value.x.name.offsetY}}),Y=C({plots:z.value.radius,indexLabels:z.value.indexLabels.fontSize,labels:z.value.labels.fontSize,xAxisLabels:V.value.x.labels.fontSize,xAxisName:V.value.x.name.fontSize,yAxisLabels:V.value.y.labels.fontSize,yAxisName:V.value.y.name.fontSize}),X=f(()=>An.value.map((e,t)=>{let n=Array.isArray(e.temperatureColors)&&e.temperatureColors.length?e.temperatureColors.map(e=>te(e)):void 0;return{...e,color:e.color?te(e.color):Vn.value[t]||s[t]||s[t%s.length],temperatureColors:n,temperatureAngle:Jn(e.temperatureAngle),temperatureIndependant:e.temperatureIndependant===!0,usePlotTemperatureColors:e.usePlotTemperatureColors!==!1,seriesIndex:t}}));function Jn(e=0){let t=Number(e);return Number.isFinite(t)?(t%360+360)%360:0}let Yn=f(()=>Math.max(...X.value.filter(e=>!P.value.includes(e.seriesIndex)).flatMap(e=>e.values.map(e=>e.x)))),Xn=f(()=>{let e=Math.min(...X.value.filter(e=>!P.value.includes(e.seriesIndex)).flatMap(e=>e.values.map(e=>e.x)));return e<0?e:0}),Zn=f(()=>Math.max(...X.value.filter(e=>!P.value.includes(e.seriesIndex)).flatMap(e=>e.values.map(e=>e.y)))),Qn=f(()=>{let e=Math.min(...X.value.filter(e=>!P.value.includes(e.seriesIndex)).flatMap(e=>e.values.map(e=>e.y)));return e<0?e:0}),Z=f(()=>{let e=ae(V.value.x.scaleMin??Xn.value,V.value.x.scaleMax??Yn.value,V.value.x.ticks),t=ae(V.value.y.scaleMin??Qn.value,V.value.y.scaleMax??Zn.value,V.value.y.ticks);return{x:e,y:t,tickX:e.ticks.map(t=>({x:J.value.left+(t-e.min)/(e.max-e.min)*J.value.width,y1:J.value.top,y2:J.value.bottom,value:t})),tickY:t.ticks.map(e=>({y:J.value.bottom-(e-t.min)/(t.max-t.min)*J.value.height,x1:J.value.left,x2:J.value.right,value:e}))}});function $n(e){let t=Z.value.x.min<0?Math.abs(Z.value.x.min):Z.value.x.min>0?-Z.value.x.min:0;return J.value.left+((e||0)+t)/(Z.value.x.max+t)*J.value.width}function er(e){let t=Z.value.y.min<0?Math.abs(Z.value.y.min):Z.value.y.min>0?-Z.value.y.min:0;return J.value.bottom-((e||0)+t)/(Z.value.y.max+t)*J.value.height}let Q=f(()=>X.value.filter(e=>!P.value.includes(e.seriesIndex)).map((e,t)=>{let n=e.values.map((t,n)=>({valueX:t.x,valueY:t.y,label:t.label,x:$n(t.x),y:er(t.y),color:e.color,seriesName:e.name,id:re()})),r=e.smooth?ne(n):n.map(e=>`${e.x},${e.y} `).join(``).trim();return{...e,gradientIndex:t,plots:n,path:`M${r}`}})),tr=f(()=>{if(F.value===null||I.value===null)return Q.value;let e=Q.value.findIndex(e=>e.seriesIndex===I.value);if(e===-1)return Q.value;let t=Q.value[e];return[...Q.value.slice(0,e),...Q.value.slice(e+1),t]}),nr=f(()=>Q.value.some(e=>rr(e)));function rr(e){return Array.isArray(e?.temperatureColors)&&e.temperatureColors.length}function ir(e){return rr(e)&&e.usePlotTemperatureColors}function ar(e){let t=Array.isArray(e?.plots)?e.plots:[];if(!t.length)return{minX:0,maxX:0,minY:0,maxY:0,width:0,height:0};let n=t.map(e=>e.x),r=t.map(e=>e.y),i=Math.min(...n),a=Math.max(...n),o=Math.min(...r),s=Math.max(...r);return{minX:i,maxX:a,minY:o,maxY:s,width:a-i,height:s-o}}function or(){let e=J.value;return{minX:e.left,maxX:e.right,minY:e.top,maxY:e.bottom,width:e.width,height:e.height}}function sr(e){return e?.temperatureIndependant?ar(e):or()}function cr(e){let t=Jn(e?.temperatureAngle)*Math.PI/180,n=Math.sin(t),r=Math.cos(t),i=sr(e),a=i.minX+i.width/2,o=i.minY+i.height/2,s=(Math.abs(n)*i.width+Math.abs(r)*i.height)/2||1;return{x1:a-n*s,y1:o-r*s,x2:a+n*s,y2:o+r*s}}function lr(e,t){let{x1:n,y1:r,x2:i,y2:a}=cr(e),o=i-n,s=a-r,c=o*o+s*s;if(!c)return 0;let ee=((t.x-n)*o+(t.y-r)*s)/c;return Math.min(1,Math.max(0,ee))}function $(e,t){return a({colors:e.temperatureColors,ratio:lr(e,t)})}function ur(e,t){return`temperature_plot_grad_history_${e.seriesIndex}_${t.id}_${N.value}`}function dr(e,t,n){return ir(e)?z.value.gradient.show?`url(#${ur(e,t)})`:$(e,t):z.value.gradient.show?`url(#gradient_${n}_${N.value})`:t.color}function fr(e,t){return ir(e)?$(e,t):e.color}function pr(e,t){return z.value.indexLabels.adaptColorToBackground?de(fr(e,t)):z.value.indexLabels.color}function mr(e,t){let n=Q.value.find(t=>t.seriesIndex===e);return n&&ir(n)?$(n,t):t.color}function hr(e){return rr(e)?`url(#temperature_grad_history_${e.seriesIndex}_${N.value})`:H.value.paths.useSerieColor?e.color:H.value.paths.stroke}function gr(e){return F.value===null||I.value===e?1:Math.min(1,z.value.unselectedOpacity)}f(()=>F.value!==null&&I.value!==null);let _r=C(!1);function vr(){P.value.length?P.value=[]:Cr.value.forEach(e=>{P.value.push(e.seriesIndex)}),wn(`selectLegend`,Q.value)}function yr(e){P.value.includes(e)?P.value=P.value.filter(t=>t!==e):P.value.push(e),wn(`selectLegend`,Q.value)}function br(e){return X.value.length?X.value.find(t=>t.name===e)||(Tn.value&&console.warn(`VueUiHistoryPlot - Series name not found "${e}"`),null):(Tn.value&&console.warn(`VueUiHistoryPlot - There are no series to show.`),null)}function xr(e){let t=br(e);t!==null&&P.value.includes(t.seriesIndex)&&yr(t.seriesIndex)}function Sr(e){let t=br(e);t!==null&&(P.value.includes(t.seriesIndex)||yr(t.seriesIndex))}let Cr=f(()=>X.value.map(e=>{let t=rr(e)?e.temperatureColors:null;return{...e,gradientColors:t,opacity:P.value.includes(e.seriesIndex)?.5:1,segregate:()=>yr(e.seriesIndex),isSegregated:P.value.includes(e.seriesIndex),shape:t?`gradient`:`circle`}})),wr=f(()=>({cy:`history-plot-div-legend`,backgroundColor:H.value.legend.backgroundColor,color:H.value.legend.color,fontSize:H.value.legend.fontSize,paddingBottom:12,fontWeight:H.value.legend.bold?`bold`:``}));function Tr({datapoint:e,plotIndex:t,seriesIndex:n}){R.value.events.datapointClick&&R.value.events.datapointClick({datapoint:{...e,plotIndex:t,seriesIndex:n},seriesIndex:n}),wn(`selectDatapoint`,e)}function Er(e){un.value=e,on.value+=1}let Dr=C(null);function Or({datapoint:e,plotIndex:t,seriesIndex:n}){R.value.events.datapointLeave&&R.value.events.datapointLeave({datapoint:{...e,plotIndex:t,seriesIndex:n},seriesIndex:n}),(xn.value!==`keyboard`||I.value!==n||L.value!==t)&&(cn.value=!1,F.value=null)}function kr(e,t){if(!G.value)return;let n=Q.value.find(t=>t.seriesIndex===e);if(!n)return;let r=n.plots[t];if(!r)return;let i=pe(r.x,r.y,G.value);i&&(bn.value=i)}function Ar({datapoint:e,plotIndex:t,seriesIndex:r,triggerMode:a=`pointer`}){R.value.events.datapointEnter&&R.value.events.datapointEnter({datapoint:{...e,plotIndex:t,seriesIndex:r},seriesIndex:r}),I.value=r,L.value=t,xn.value=a,_r.value=!0;let o=mr(r,e),s={...e,color:o};Dr.value={datapoint:s,color:o,seriesIndex:r,plotIndex:t,config:R.value,series:X.value},F.value=e;let c=H.value.tooltip.customFormat;if(dn.value=!1,i(c))try{let e=c({seriesIndex:r,datapoint:s,color:o,plotIndex:t,series:X.value,config:R.value});typeof e==`string`&&(ln.value=e,dn.value=!0)}catch{console.warn(`Custom format cannot be applied.`),dn.value=!1}if(!dn.value){let t=``;t+=`<div style="display:flex;flex-direction:row;gap:6px;align-items:center;border-bottom:1px solid ${H.value.tooltip.borderColor};margin-bottom:3px;padding-bottom:6px;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${o}"/></svg><span>${e.seriesName}</span></div>`,t+=`<div>${e.label}</div>`,t+=`<div>${V.value.x.name.text||`x`}: ${l(V.value.x.labels.formatter,e.valueX,n({p:V.value.x.labels.prefix,v:e.valueX,s:V.value.x.labels.suffix,r:V.value.x.labels.rounding}))}</div>`,t+=`<div>${V.value.y.name.text||`y`}: ${l(V.value.y.labels.formatter,e.valueY,n({p:V.value.y.labels.prefix,v:e.valueY,s:V.value.y.labels.suffix,r:V.value.y.labels.rounding}))}</div>`,ln.value=`<div>${t}</div>`}cn.value=!0,a===`keyboard`&&Xe(()=>{kr(r,t)})}f(()=>({head:Q.value.map(e=>({name:e.name,color:e.color}))}));let jr=f(()=>{let e=[R.value.table.columnNames.series,R.value.table.columnNames.datapoint,R.value.table.columnNames.x,R.value.table.columnNames.y];return{head:e,body:Q.value.flatMap(e=>e.plots.map(e=>[{color:e.color,name:e.seriesName},e.label,l(V.value.x.labels.formatter,e.valueX,n({p:V.value.x.labels.prefix,v:e.valueX,s:V.value.x.labels.suffix,r:V.value.x.labels.rounding})),l(V.value.y.labels.formatter,e.valueY,n({p:V.value.y.labels.prefix,v:e.valueY,s:V.value.y.labels.suffix,r:V.value.y.labels.rounding}))])),config:{th:{backgroundColor:R.value.table.th.backgroundColor,color:R.value.table.th.color,outline:R.value.table.th.outline},td:{backgroundColor:R.value.table.td.backgroundColor,color:R.value.table.td.color,outline:R.value.table.td.outline},breakpoint:R.value.table.responsiveBreakpoint},colNames:e}});function Mr(e=null){Xe(()=>{let t=[[R.value.table.columnNames.series],[R.value.table.columnNames.datapoint],[R.value.table.columnNames.x],[R.value.table.columnNames.y]],n=Q.value.flatMap(e=>e.plots.map(e=>[[e.seriesName],[e.label],[e.valueX],[e.valueY]])),i=[[H.value.title.text],[H.value.title.subtitle.text],t].concat(n),a=r(i);e?e(a):le({csvContent:a,title:H.value.title.text||`vue-ui-history-plot`})})}let Nr=C(!1);function Pr(){Nr.value=!Nr.value}function Fr(){K.value.showTable=!K.value.showTable}function Ir(){K.value.showTooltip=!K.value.showTooltip}function Lr(){return Q.value}let Rr=we(A,()=>H.value.title.text),zr=f(()=>Z.value.tickX),Br=f(()=>({start:0,end:Z.value.tickX.length}));Fe({timeLabelsEls:vn,timeLabels:zr,slicer:Br,configRef:R,rotationPath:[`style`,`chart`,`axes`,`x`,`labels`,`rotation`],autoRotatePath:[`style`,`chart`,`axes`,`x`,`labels`,`autoRotate`,`enable`],isAutoSize:!1,width:Hn,height:Un,targetClass:`.vue-ui-history-plot-x-axis-scale`,rotation:V.value.x.labels.autoRotate.angle});let Vr=f(()=>Oe({config:R,style:H,mutableConfig:K,dialog:Xt,accordion:Gt,isFullscreen:un,parent:A,maxWidth:800}));nt(()=>K.value.showTable,e=>De(e,R,mn));function Hr(){K.value.showTable=!1,hn.value&&hn.value.setTableIconState(!1)}let Ur=f(()=>H.value.backgroundColor),Wr=f(()=>H.value.legend),Gr=f(()=>H.value.title),{isCallbackImaging:Kr,isCallbackSvg:qr,generateSvg:Jr,onGenerateImage:Yr}=Ee({svg:G,title:Gr,legend:Wr,legendItems:Cr,backgroundColor:Ur,getSvgCallback:()=>R.value.userOptions.callbacks.svg,generateImage:zn});async function Xr(){if(wn(`copyAlt`,{config:R.value,dataset:Q.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:Q.value}))}let Zr=f(()=>({head:jr.value.head,body:jr.value.body.map(e=>[e[0]?.name||``,e[1],e[2],e[3]]),caption:R.value.a11y.translations.tableCaption,notice:R.value.a11y.translations.tableAvailable}));function Qr(e){return Q.value.findIndex(t=>t.seriesIndex===e)}function $r(){if(I.value!==null&&L.value!==null){let e=Q.value.find(e=>e.seriesIndex===I.value)?.plots?.[L.value];e&&Or({datapoint:e,plotIndex:L.value,seriesIndex:I.value})}I.value=null,L.value=null,xn.value=`pointer`,cn.value=!1,F.value=null}function ei(){I.value=null,L.value=null,Sn.value=!0}function ti(){$r(),Sn.value=!1}function ni(e,t){if(!e?.plots?.length)return null;let n=e.plots.length;return(t%n+n)%n}function ri({seriesIndex:e,plotIndex:t,direction:n}){if(!Q.value.length)return null;let r=Qr(e);if(r===-1)return null;if(n===`up`||n===`down`){let e=Q.value[r];if(!e?.plots?.length)return null;let i=ni(e,t+(n===`up`?-1:1));return{seriesIndex:e.seriesIndex,plotIndex:i}}if(n===`left`||n===`right`){let e=((r+(n===`left`?-1:1))%Q.value.length+Q.value.length)%Q.value.length,i=Q.value[e];if(!i?.plots?.length)return null;let a=Math.min(t,i.plots.length-1);return{seriesIndex:i.seriesIndex,plotIndex:a}}return null}function ii(e){if(!G.value||Nr.value||document.activeElement!==G.value||!Q.value.length)return;let t=e.key===`ArrowLeft`,n=e.key===`ArrowRight`,r=e.key===`ArrowUp`,i=e.key===`ArrowDown`,a=e.key===`Enter`||e.key===` `,o=e.key===`Escape`;if(!t&&!n&&!r&&!i&&!a&&!o)return;if(e.preventDefault(),e.stopPropagation(),o){$r();return}if(a){if(I.value===null||L.value===null)return;let e=Q.value.find(e=>e.seriesIndex===I.value)?.plots?.[L.value];if(!e)return;Tr({datapoint:e,plotIndex:L.value,seriesIndex:I.value});return}let s=null;if(I.value===null||L.value===null){let e=Q.value[0];if(!e?.plots?.length)return;s={seriesIndex:e.seriesIndex,plotIndex:0}}else r?s=ri({seriesIndex:I.value,plotIndex:L.value,direction:`up`}):i?s=ri({seriesIndex:I.value,plotIndex:L.value,direction:`down`}):t?s=ri({seriesIndex:I.value,plotIndex:L.value,direction:`left`}):n&&(s=ri({seriesIndex:I.value,plotIndex:L.value,direction:`right`}));if(!s)return;let c=Q.value.find(e=>e.seriesIndex===s.seriesIndex)?.plots?.[s.plotIndex];c&&Ar({datapoint:c,plotIndex:s.plotIndex,seriesIndex:s.seriesIndex,triggerMode:`keyboard`})}return xe({getData:Lr,getImage:Rr,generatePdf:Rn,generateCsv:Mr,generateImage:zn,generateSvg:Jr,hideSeries:Sr,showSeries:xr,toggleTable:Fr,toggleTooltip:Ir,toggleAnnotator:Pr,toggleFullscreen:Er,copyAlt:Xr}),(e,t)=>(S(),h(`div`,{id:`history_plot_${N.value}`,ref_key:`historyPlotChart`,ref:A,class:y({"vue-data-ui-component":!0,"vue-ui-history-plot":!0,"vue-data-ui-wrapper-fullscreen":un.value}),style:x(`background:${H.value.backgroundColor};color:${H.value.color};font-family:${R.value.style.fontFamily}; position: relative; ${R.value.responsive?`height: 100%`:``}`),onMouseenter:t[2]||=()=>D(Nn)(!0),onMouseleave:t[3]||=()=>D(Nn)(!1)},[g(`div`,{id:`chart-instructions-${N.value}`,class:`sr-only`},[g(`p`,null,E(R.value.a11y.translations.keyboardNavigation),1)],8,ot),Zr.value.body.length?(S(),p(Be,{key:0,uid:N.value,head:Zr.value.head,body:Zr.value.body,caption:Zr.value.caption,notice:Zr.value.notice},null,8,[`uid`,`head`,`body`,`caption`,`notice`])):m(``,!0),T(e.$slots,`userConfig`,{},void 0,!0),R.value.userOptions.buttons.annotator?(S(),p(D(qt),{key:1,svgRef:D(G),backgroundColor:H.value.backgroundColor,color:H.value.color,active:Nr.value,isCursorPointer:W.value,palette:R.value.userOptions.annotatorPalette,onClose:Pr},Ke({_:2},[w(D(Ae),t=>({name:t,fn:O(n=>[T(e.$slots,t,b(v(D(ke)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):m(``,!0),Bn.value?(S(),h(`div`,{key:2,ref_key:`noTitle`,ref:sn,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):m(``,!0),H.value.title.text?(S(),h(`div`,{key:3,ref_key:`chartTitle`,ref:en,class:`vue-ui-xy-title`,style:x(`font-family:${R.value.style.fontFamily}`)},[(S(),p(Te,{key:`title_${tn.value}`,config:{title:{cy:`history-plot-div-title`,...H.value.title},subtitle:{cy:`history-plot-div-subtitle`,...H.value.title.subtitle}}},null,8,[`config`]))],4)):m(``,!0),g(`div`,{id:`legend-top-${N.value}`},null,8,st),R.value.userOptions.show&&Cn.value&&(D(Pn)||D(Mn))?(S(),p(D(Jt),{ref_key:`userOptionsRef`,ref:hn,key:`user_option_${on.value}`,backgroundColor:H.value.backgroundColor,color:H.value.color,isPrinting:D(In),isImaging:D(Ln),uid:N.value,hasTooltip:H.value.tooltip.show&&R.value.userOptions.buttons.tooltip,hasPdf:R.value.userOptions.buttons.pdf,hasImg:R.value.userOptions.buttons.img,hasSvg:R.value.userOptions.buttons.svg,hasXls:R.value.userOptions.buttons.csv,hasTable:R.value.userOptions.buttons.table,hasLabel:!1,hasFullscreen:R.value.userOptions.buttons.fullscreen,hasAltCopy:R.value.userOptions.buttons.altCopy,isFullscreen:un.value,chartElement:A.value,position:R.value.userOptions.position,isTooltip:K.value.showTooltip,titles:{...R.value.userOptions.buttonTitles},hasAnnotator:R.value.userOptions.buttons.annotator,isAnnotation:Nr.value,callbacks:R.value.userOptions.callbacks,printScale:R.value.userOptions.print.scale,tableDialog:R.value.table.useDialog,isCursorPointer:W.value,onToggleFullscreen:Er,onGeneratePdf:D(Rn),onGenerateCsv:Mr,onGenerateImage:D(Yr),onGenerateSvg:D(Jr),onToggleTable:Fr,onToggleTooltip:Ir,onToggleAnnotator:Pr,onCopyAlt:Xr,style:x({visibility:D(Pn)?D(Mn)?`visible`:`hidden`:`visible`})},Ke({_:2},[w(D(je)(e.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:O(n=>[T(e.$slots,t,b(v(D(Me)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasImg.hasSvg.hasXls.hasTable.hasFullscreen.hasAltCopy.isFullscreen.chartElement.position.isTooltip.titles.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):m(``,!0),g(`div`,ct,[(S(),h(`svg`,{ref_key:`svgRef`,ref:G,xmlns:D(fe),viewBox:`0 0 ${q.value.width<0?.1:q.value.width} ${q.value.height<0?.1:q.value.height}`,style:x(`max-width:100%;overflow:visible;background:transparent;color:${H.value.color}`),"aria-describedby":`chart-instructions-${N.value}`,tabindex:`0`,onFocus:ei,onBlur:ti,onKeydown:ii},[Je(D(Yt)),e.$slots[`chart-background`]?(S(),h(`foreignObject`,{key:0,x:J.value.left,y:J.value.top,width:J.value.width<=0?10:J.value.width,height:J.value.height<=0?10:J.value.height,style:{pointerEvents:`none`}},[T(e.$slots,`chart-background`,{},void 0,!0)],8,ut)):m(``,!0),z.value.gradient.show||nr.value?(S(),h(`defs`,dt,[z.value.gradient.show?(S(!0),h(d,{key:0},w(Q.value,(e,t)=>(S(),p(Re,{t:`radial`,key:`gradient_${t}_${N.value}`,id:`gradient_${t}_${N.value}`,fy:`30%`,stops:[[`10%`,D(o)(e.color,z.value.gradient.intensity/100),1],[`90%`,D(ee)(e.color,.1),1],[`100%`,e.color,1]]},null,8,[`id`,`stops`]))),128)):m(``,!0),(S(!0),h(d,null,w(Q.value,e=>(S(),h(d,{key:`temperature_grad_history_template_${e.seriesIndex}_${N.value}`},[z.value.gradient.show&&ir(e)?(S(!0),h(d,{key:0},w(e.plots,t=>(S(),p(Re,{t:`radial`,key:`temperature_plot_grad_history_${e.seriesIndex}_${t.id}_${N.value}`,id:ur(e,t),fy:`30%`,stops:[[`10%`,D(o)($(e,t),z.value.gradient.intensity/100),1],[`90%`,D(ee)($(e,t),.1),1],[`100%`,$(e,t),1]]},null,8,[`id`,`stops`]))),128)):m(``,!0),rr(e)?(S(),h(`linearGradient`,{key:1,id:`temperature_grad_history_${e.seriesIndex}_${N.value}`,gradientUnits:`userSpaceOnUse`,x1:cr(e).x1,y1:cr(e).y1,x2:cr(e).x2,y2:cr(e).y2},[(S(!0),h(d,null,w(e.temperatureColors,(t,n)=>(S(),h(`stop`,{key:`temperature_grad_history_stop_${e.seriesIndex}_${n}_${N.value}`,"stop-color":t,offset:e.temperatureColors.length===1?`0%`:D(ue)(n,e.temperatureColors.length)},null,8,pt))),128))],8,ft)):m(``,!0)],64))),128))])):m(``,!0),B.value.verticalLines.show?(S(),h(`g`,mt,[(S(!0),h(d,null,w(Z.value.tickX,e=>(S(),h(`line`,{x1:e.x,x2:e.x,y1:e.y1,y2:e.y2,stroke:B.value.verticalLines.stroke,"stroke-width":B.value.verticalLines.strokeWidth,"stroke-linecap":`round`},null,8,ht))),256))])):m(``,!0),V.value.y.labels.show?(S(),h(`g`,gt,[(S(!0),h(d,null,w(Z.value.tickY,e=>(S(),h(`line`,{stroke:B.value.verticalLines.stroke,"stroke-width":B.value.verticalLines.strokeWidth,"stroke-linecap":`round`,x1:J.value.left-5,x2:J.value.left,y1:e.y,y2:e.y},null,8,_t))),256))])):m(``,!0),V.value.y.labels.show?(S(),h(`g`,{key:4,ref_key:`yAxisScales`,ref:yn},[(S(!0),h(d,null,w(Z.value.tickY,e=>(S(),h(`text`,{x:J.value.left+V.value.y.labels.offsetX-4-z.value.radius,y:e.y+Y.value.yAxisLabels/3,fill:V.value.y.labels.color,"font-size":Y.value.yAxisLabels,"text-anchor":`end`},E(D(l)(V.value.y.labels.formatter,e.value,D(n)({p:V.value.y.labels.prefix,v:e.value,s:V.value.y.labels.suffix,r:V.value.y.labels.rounding}))),9,vt))),256))],512)):m(``,!0),V.value.y.name.text?(S(),h(`text`,{key:5,ref_key:`yAxisLabel`,ref:_n,transform:`translate(${Y.value.yAxisName}, ${q.value.height/2+V.value.y.name.offsetY}), rotate(-90)`,"font-size":Y.value.yAxisName,fill:V.value.y.name.color,"font-weight":V.value.y.name.bold?`bold`:`normal`,"text-anchor":`middle`},E(V.value.y.name.text),9,yt)):m(``,!0),B.value.horizontalLines.show?(S(),h(`g`,bt,[(S(!0),h(d,null,w(Z.value.tickY,e=>(S(),h(`line`,{x1:e.x1,x2:e.x2,y1:e.y,y2:e.y,stroke:B.value.horizontalLines.stroke,"stroke-width":B.value.horizontalLines.strokeWidth,"stroke-linecap":`round`},null,8,xt))),256))])):m(``,!0),V.value.x.labels.show?(S(),h(`g`,St,[(S(!0),h(d,null,w(Z.value.tickX,e=>(S(),h(`line`,{stroke:B.value.verticalLines.stroke,"stroke-width":B.value.verticalLines.strokeWidth,"stroke-linecap":`round`,x1:e.x,x2:e.x,y1:J.value.bottom,y2:J.value.bottom+5},null,8,Ct))),256))])):m(``,!0),V.value.x.labels.show?(S(),h(`g`,{key:8,ref_key:`xAxisScales`,ref:vn},[(S(!0),h(d,null,w(Z.value.tickX,e=>(S(),h(`text`,{class:`vue-ui-history-plot-x-axis-scale`,transform:`translate(${e.x}, ${J.value.bottom+V.value.x.labels.offsetY+Y.value.xAxisLabels+z.value.radius}), rotate(${V.value.x.labels.rotation})`,fill:V.value.x.labels.color,"font-size":Y.value.xAxisLabels,"text-anchor":V.value.x.labels.rotation>0?`start`:V.value.x.labels.rotation<0?`end`:`middle`},E(D(l)(V.value.x.labels.formatter,e.value,D(n)({p:V.value.x.labels.prefix,v:e.value,s:V.value.x.labels.suffix,r:V.value.x.labels.rounding}))),9,wt))),256))],512)):m(``,!0),V.value.x.name.text?(S(),h(`text`,{key:9,ref_key:`xAxisLabel`,ref:gn,x:q.value.width/2+V.value.x.name.offsetX,y:q.value.height,"font-size":Y.value.xAxisName,fill:V.value.x.name.color,"font-weight":V.value.x.name.bold?`bold`:`normal`,"text-anchor":`middle`},E(V.value.x.name.text),9,Tt)):m(``,!0),B.value.xAxis.show?(S(),h(`line`,{key:10,x1:J.value.left,x2:J.value.left+J.value.width,y1:J.value.bottom,y2:J.value.bottom,stroke:B.value.xAxis.stroke,"stroke-width":B.value.xAxis.strokeWidth,"stroke-linecap":`round`},null,8,Et)):m(``,!0),B.value.yAxis.show?(S(),h(`line`,{key:11,x1:J.value.left,x2:J.value.left,y1:J.value.top,y2:J.value.bottom,stroke:B.value.yAxis.stroke,"stroke-width":B.value.yAxis.strokeWidth,"stroke-linecap":`round`},null,8,Dt)):m(``,!0),(S(!0),h(d,null,w(tr.value,e=>(S(),h(`g`,{key:`history_plot_serie_${e.seriesIndex}_${N.value}`},[H.value.paths.show?(S(),h(`g`,{key:0,style:x({opacity:gr(e.seriesIndex)})},[g(`path`,{class:y({"vue-data-ui-transition":D(U)}),d:e.path,stroke:H.value.backgroundColor,"stroke-width":H.value.paths.strokeWidth+4,fill:`none`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,10,Ot),g(`path`,{class:y({"vue-data-ui-transition":D(U)}),d:e.path,stroke:hr(e),"stroke-width":H.value.paths.strokeWidth,fill:`none`,"stroke-linecap":`round`,"stroke-linejoin":`round`},null,10,kt)],4)):m(``,!0),(S(!0),h(d,null,w(e.plots,e=>(S(),h(`circle`,{cx:e.x,cy:e.y,fill:H.value.backgroundColor,r:Y.value.plots,stroke:`none`,class:y({"vue-data-ui-transition":D(U)})},null,10,At))),256)),(S(!0),h(d,null,w(e.plots,t=>(S(),h(`circle`,{cx:t.x,cy:t.y,fill:dr(e,t,e.gradientIndex),r:Y.value.plots,stroke:z.value.stroke,"stroke-width":z.value.strokeWidth,class:y({"vue-data-ui-transition":D(U)}),style:x({opacity:gr(e.seriesIndex)})},null,14,jt))),256)),z.value.labels.show?(S(),h(`g`,Mt,[(S(!0),h(d,null,w(e.plots,(t,n)=>(S(),h(`g`,{key:`plab_${n}`},[String(t.label).includes(`
|
|
2
|
-
`)?(S(),h(`text`,{key:1,class:y({"vue-data-ui-transition":D(U)}),transform:`translate(${t.x+z.value.labels.offsetX}, ${t.y+z.value.labels.offsetY+Y.value.plots+Y.value.labels})`,"font-size":Y.value.labels,fill:z.value.labels.color,"font-weight":z.value.labels.bold?`bold`:`normal`,"text-anchor":`middle`,style:x({opacity:gr(e.seriesIndex)}),innerHTML:D(c)({content:String(t.label),fontSize:Y.value.labels,fill:z.value.labels.color,x:0,y:0})},null,14,Pt)):(S(),h(`text`,{key:0,class:y({"vue-data-ui-transition":D(U)}),transform:`translate(${t.x+z.value.labels.offsetX}, ${t.y+z.value.labels.offsetY+Y.value.plots+Y.value.labels})`,"font-size":Y.value.labels,fill:z.value.labels.color,"font-weight":z.value.labels.bold?`bold`:`normal`,"text-anchor":`middle`,style:x({opacity:gr(e.seriesIndex)})},E(t.label),15,Nt))]))),128))])):m(``,!0),z.value.indexLabels.show?(S(),h(`g`,Ft,[(S(!0),h(d,null,w(e.plots,(t,n)=>(S(),h(`text`,{key:`lab_${n}`,class:y({"vue-data-ui-transition":D(U)}),transform:`translate(${t.x+z.value.indexLabels.offsetX}, ${t.y+z.value.indexLabels.offsetY+Y.value.indexLabels/3})`,"font-size":Y.value.indexLabels,"font-weight":z.value.indexLabels.bold?`bold`:`normal`,fill:pr(e,t),"text-anchor":`middle`,style:x({opacity:gr(e.seriesIndex)})},E(z.value.indexLabels.startAtZero?n:n+1),15,It))),128))])):m(``,!0)]))),128)),(S(!0),h(d,null,w(tr.value,e=>(S(),h(`g`,{key:`history_plot_trap_serie_${e.seriesIndex}_${N.value}`},[(S(!0),h(d,null,w(e.plots,(t,n)=>(S(),h(`circle`,{cx:t.x,cy:t.y,fill:`transparent`,r:Y.value.plots,stroke:`none`,onMouseenter:r=>Ar({datapoint:t,plotIndex:n,seriesIndex:e.seriesIndex,triggerMode:`pointer`}),onMouseleave:r=>Or({datapoint:t,plotIndex:n,seriesIndex:e.seriesIndex}),onClick:r=>Tr({datapoint:t,plotIndex:n,seriesIndex:e.seriesIndex})},null,40,Lt))),256))]))),128)),T(e.$slots,`svg`,{svg:{...q.value,drawingArea:J.value,isPrintingImg:D(In)||D(Ln)||D(Kr),isPrintingSvg:D(qr)}},void 0,!0)],44,lt)),e.$slots.hint?(S(),h(`div`,Rt,[T(e.$slots,`hint`,b(v({hint:R.value.a11y.translations.keyboardNavigation,isVisible:Sn.value})),void 0,!0)])):m(``,!0)]),e.$slots.watermark?(S(),h(`div`,zt,[T(e.$slots,`watermark`,b(v({isPrinting:D(In)||D(Ln)||D(Kr)||D(qr)})),void 0,!0)])):m(``,!0),g(`div`,{id:`legend-bottom-${N.value}`},null,8,Bt),pn.value&&(H.value.legend.show||e.$slots.legend)?(S(),p(Ge,{key:6,to:H.value.legend.position===`top`?`#legend-top-${N.value}`:`#legend-bottom-${N.value}`},[g(`div`,{ref_key:`chartLegend`,ref:nn},[T(e.$slots,`legend`,{legend:Cr.value},()=>[H.value.legend.show&&Cn.value?(S(),p(Ue,{key:`legend_${rn.value}`,legendSet:Cr.value,config:wr.value,isCursorPointer:W.value,onClickMarker:t[0]||=({legend:e})=>{yr(e.seriesIndex)}},{item:O(({legend:e,index:t})=>[g(`div`,{onClick:t=>e.segregate(),style:x(`opacity:${P.value.includes(e.seriesIndex)?.5:1}`)},E(e.name),13,Vt)]),legendToggle:O(()=>[Cr.value.length>2&&H.value.legend.selectAllToggle.show&&!D(kn)?(S(),p(ze,{key:0,backgroundColor:H.value.legend.selectAllToggle.backgroundColor,color:H.value.legend.selectAllToggle.color,fontSize:H.value.legend.fontSize,checked:P.value.length>0,isCursorPointer:W.value,onToggle:vr},null,8,[`backgroundColor`,`color`,`fontSize`,`checked`,`isCursorPointer`])):m(``,!0)]),_:1},8,[`legendSet`,`config`,`isCursorPointer`])):m(``,!0)],!0)],512)],8,[`to`])):m(``,!0),e.$slots.source?(S(),h(`div`,{key:7,ref_key:`source`,ref:fn,dir:`auto`},[T(e.$slots,`source`,{},void 0,!0)],512)):m(``,!0),Je(D(Ut),{teleportTo:H.value.tooltip.teleportTo,show:K.value.showTooltip&&cn.value,backgroundColor:H.value.tooltip.backgroundColor,color:H.value.tooltip.color,fontSize:H.value.tooltip.fontSize,borderRadius:H.value.tooltip.borderRadius,borderColor:H.value.tooltip.borderColor,borderWidth:H.value.tooltip.borderWidth,backgroundOpacity:H.value.tooltip.backgroundOpacity,position:H.value.tooltip.position,offsetX:H.value.tooltip.offsetX,offsetY:H.value.tooltip.offsetY,parent:A.value,content:ln.value,isCustom:dn.value,isFullscreen:un.value,smooth:H.value.tooltip.smooth,backdropFilter:H.value.tooltip.backdropFilter,smoothForce:H.value.tooltip.smoothForce,smoothSnapThreshold:H.value.tooltip.smoothSnapThreshold,isA11yMode:xn.value===`keyboard`,a11yPosition:bn.value},{"tooltip-before":O(()=>[T(e.$slots,`tooltip-before`,b(v({...Dr.value})),void 0,!0)]),tooltip:O(()=>[T(e.$slots,`tooltip`,b(v({...Dr.value})),void 0,!0)]),"tooltip-after":O(()=>[T(e.$slots,`tooltip-after`,b(v({...Dr.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`]),Cn.value&&R.value.userOptions.buttons.table?(S(),p($e(Vr.value.component),Ye({key:8},Vr.value.props,{ref_key:`tableUnit`,ref:mn,onClose:Hr}),Ke({content:O(()=>[(S(),p(D(Kt),{key:`table_${an.value}`,colNames:jr.value.colNames,head:jr.value.head,body:jr.value.body,config:jr.value.config,title:R.value.table.useDialog?``:Vr.value.title,withCloseButton:!R.value.table.useDialog,isCursorPointer:W.value,onClose:Hr},{th:O(({th:e})=>[g(`div`,Ht,E(e),1)]),td:O(({td:e})=>[qe(E(e.name||e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[R.value.table.useDialog?{name:`title`,fn:O(()=>[qe(E(Vr.value.title),1)]),key:`0`}:void 0,R.value.table.useDialog?{name:`actions`,fn:O(()=>[g(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[1]||=e=>Mr(R.value.userOptions.callbacks.csv),style:x({cursor:W.value?`pointer`:`default`})},[Je(D(Wt),{name:`fileCsv`,stroke:Vr.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):m(``,!0),T(e.$slots,`skeleton`,{},()=>[D(kn)?(S(),p(ve,{key:0})):m(``,!0)],!0)],46,at))}},[[`__scopeId`,`data-v-967423bb`]]);export{it as n,Ut as t};
|