vue-data-ui 3.27.1-beta.0 → 3.27.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/dist/{Arrow-CJeSufxg.js → Arrow-C2W0uGrq.js} +1 -1
- package/dist/{BaseDraggableDialog-T1gEsQid.js → BaseDraggableDialog-D_tuHEjO.js} +1 -1
- package/dist/{BaseIcon-Cz30ODFA.js → BaseIcon-DdIyewwY.js} +1 -1
- package/dist/{BaseLegendToggle-Dn_tNvn4.js → BaseLegendToggle-Bq5FjyuI.js} +1 -1
- package/dist/{BaseZoomControls-xq3tWD3j.js → BaseZoomControls-DoYifY2y.js} +1 -1
- package/dist/{ColorPicker-CUjEw53A.js → ColorPicker-MLwiwxl5.js} +1 -1
- package/dist/{DataTable-DSUA5M9p.js → DataTable-WNecJMcY.js} +1 -1
- package/dist/{HillActions-DdvXld3a.js → HillActions-CHg1AQ3p.js} +1 -1
- package/dist/{Legend-DokTll4u.js → Legend-D8YoT1RJ.js} +1 -1
- package/dist/{NonSvgPenAndPaper-BLzQuIm6.js → NonSvgPenAndPaper-CqtJpZKh.js} +1 -1
- package/dist/{PackageVersion-D6pKL176.js → PackageVersion-CdkxOy58.js} +1 -1
- package/dist/{PenAndPaper-DvJJaeU2.js → PenAndPaper-IMw576MC.js} +1 -1
- package/dist/{Shape-tkp65OcG.js → Shape-Bp9YNtPc.js} +1 -1
- package/dist/SlicerPreview-CNUciSbY.js +1 -0
- package/dist/{SparkTooltip-BlJLvizH.js → SparkTooltip-C5JMcBXT.js} +1 -1
- package/dist/{Title-BRAjxtjG.js → Title-BGYFqulv.js} +1 -1
- package/dist/{Tooltip-BUXB0i6z.js → Tooltip-Cus2-XNQ.js} +1 -1
- package/dist/{UserOptions-D65t74CM.js → UserOptions-DTxMeZv3.js} +1 -1
- package/dist/{chartImage-NwZO-elv.js → chartImage-CIvU_04o.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-heatmap.js +1 -1
- package/dist/components/vue-ui-hill.js +1 -1
- package/dist/components/vue-ui-history-plot.js +1 -1
- package/dist/components/vue-ui-horizontal-bar.js +1 -1
- package/dist/components/vue-ui-icon.js +1 -1
- package/dist/components/vue-ui-kpi.js +1 -1
- package/dist/components/vue-ui-label.js +1 -1
- package/dist/components/vue-ui-mini-loader.js +1 -1
- package/dist/components/vue-ui-molecule.js +1 -1
- package/dist/components/vue-ui-mood-radar.js +1 -1
- package/dist/components/vue-ui-nested-donuts.js +1 -1
- package/dist/components/vue-ui-onion.js +1 -1
- package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
- package/dist/components/vue-ui-quadrant.js +1 -1
- package/dist/components/vue-ui-quick-chart.js +1 -1
- package/dist/components/vue-ui-radar.js +1 -1
- package/dist/components/vue-ui-rating.js +1 -1
- package/dist/components/vue-ui-relation-circle.js +1 -1
- package/dist/components/vue-ui-ridgeline.js +1 -1
- package/dist/components/vue-ui-rings.js +1 -1
- package/dist/components/vue-ui-scatter.js +1 -1
- package/dist/components/vue-ui-skeleton.js +1 -1
- package/dist/components/vue-ui-smiley.js +1 -1
- package/dist/components/vue-ui-spark-trend.js +1 -1
- package/dist/components/vue-ui-sparkbar.js +1 -1
- package/dist/components/vue-ui-sparkgauge.js +1 -1
- package/dist/components/vue-ui-sparkhistogram.js +1 -1
- package/dist/components/vue-ui-sparkline.js +1 -1
- package/dist/components/vue-ui-sparkstackbar.js +1 -1
- package/dist/components/vue-ui-stackbar.js +1 -1
- package/dist/components/vue-ui-stackline.js +1 -1
- package/dist/components/vue-ui-strip-plot.js +1 -1
- package/dist/components/vue-ui-table-heatmap.js +1 -1
- package/dist/components/vue-ui-table-sparkline.js +1 -1
- package/dist/components/vue-ui-table.js +1 -1
- package/dist/components/vue-ui-thermometer.js +1 -1
- package/dist/components/vue-ui-timer.js +1 -1
- package/dist/components/vue-ui-tiremarks.js +1 -1
- package/dist/components/vue-ui-treemap.js +1 -1
- package/dist/components/vue-ui-vertical-bar.js +1 -1
- package/dist/components/vue-ui-waffle.js +1 -1
- package/dist/components/vue-ui-wheel.js +1 -1
- package/dist/components/vue-ui-word-cloud.js +1 -1
- package/dist/components/vue-ui-world.js +1 -1
- package/dist/components/vue-ui-xy-canvas.js +1 -1
- package/dist/components/vue-ui-xy.js +1 -1
- package/dist/{dom-to-png-Cp3WLHmJ.js → dom-to-png-D8t3Bm7s.js} +1 -1
- package/dist/{exposedLib-CMTeSmyW.js → exposedLib-DHtyEc_G.js} +1 -1
- package/dist/{img-8sM3sVWU.js → img-DiT4ivZ5.js} +1 -1
- package/dist/{labelUtils-Djp5nJtN.js → labelUtils-CG3uVXoZ.js} +1 -1
- package/dist/{lib-zDxoqrgo.js → lib-CV_IANZ6.js} +2 -2
- package/dist/package-DE5cU1Rg.js +1 -0
- package/dist/{pdf-Dlv_ks7R.js → pdf-BQSB1V3H.js} +1 -1
- package/dist/{render-common-DOYi0f4Z.js → render-common-BdZ5aRyn.js} +1 -1
- package/dist/{resolveChartConfig-BSo1Oe9n.js → resolveChartConfig-DZg-korK.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/{useNestedProp-CT9phgWx.js → useNestedProp-CB186vF2.js} +1 -1
- package/dist/{useObjectBindings-DM3xDKV3.js → useObjectBindings-Dse7YyAf.js} +1 -1
- package/dist/{usePrinter-CnyKPIFM.js → usePrinter-hLW3cv4N.js} +1 -1
- package/dist/utils.js +1 -1
- package/dist/vue-data-ui-DyYgLIZN.js +1 -0
- package/dist/vue-data-ui.js +1 -1
- package/dist/{vue-ui-3d-bar-DiaiNy-k.js → vue-ui-3d-bar-BZAoyWkc.js} +1 -1
- package/dist/{vue-ui-accordion-Dy5OVFKr.js → vue-ui-accordion-BNvevckx.js} +1 -1
- package/dist/{vue-ui-age-pyramid-OeUr1yxi.js → vue-ui-age-pyramid-DkA6vpU3.js} +1 -1
- package/dist/{vue-ui-annotator-DA_xAFql.js → vue-ui-annotator-DuQME4Hh.js} +1 -1
- package/dist/{vue-ui-bullet-B9lcCTVb.js → vue-ui-bullet-BVs8JX8S.js} +1 -1
- package/dist/{vue-ui-bump-DYajIrva.js → vue-ui-bump-DYdm3EvF.js} +1 -1
- package/dist/{vue-ui-candlestick-CdAZuNxo.js → vue-ui-candlestick-DZgxl4mW.js} +1 -1
- package/dist/{vue-ui-carousel-table-ihGH0LDH.js → vue-ui-carousel-table-BB7DsTUt.js} +1 -1
- package/dist/{vue-ui-chestnut-B2aNXFNO.js → vue-ui-chestnut-Bo1h5rBt.js} +1 -1
- package/dist/{vue-ui-chord-fAckHfOW.js → vue-ui-chord-B6_veyvO.js} +1 -1
- package/dist/{vue-ui-circle-pack-BWHVImkS.js → vue-ui-circle-pack-Bm7e2YNh.js} +1 -1
- package/dist/{vue-ui-cursor-DdXKXmhr.js → vue-ui-cursor-TidZDuSh.js} +1 -1
- package/dist/{vue-ui-dag-a0fNoIcJ.js → vue-ui-dag-BiN_AnLo.js} +1 -1
- package/dist/{vue-ui-dashboard-DkdYMB7n.js → vue-ui-dashboard-zepAVN_W.js} +1 -1
- package/dist/{vue-ui-digits-CL9SuIEI.js → vue-ui-digits-CXKKmfGj.js} +1 -1
- package/dist/{vue-ui-donut-BaEodt-3.js → vue-ui-donut-CKkBtyPK.js} +1 -1
- package/dist/{vue-ui-donut-DaYxdQmP.js → vue-ui-donut-DLDUpjDU.js} +2 -2
- package/dist/{vue-ui-donut-evolution-T8cRXKRQ.js → vue-ui-donut-evolution-BxMTdE5G.js} +1 -1
- package/dist/{vue-ui-dumbbell-B6HJxEZp.js → vue-ui-dumbbell-C8rNwdz0.js} +1 -1
- package/dist/{vue-ui-flow-BlTCVFr3.js → vue-ui-flow-Dru76A2O.js} +1 -1
- package/dist/{vue-ui-funnel-WgLFJadZ.js → vue-ui-funnel-D_u1h5S9.js} +1 -1
- package/dist/{vue-ui-galaxy-B3nuI6E8.js → vue-ui-galaxy-sBEH18Xj.js} +1 -1
- package/dist/{vue-ui-gauge-BwTP65O4.js → vue-ui-gauge-Do3RN8ne.js} +1 -1
- package/dist/{vue-ui-geo-CX3yH18H.js → vue-ui-geo-DDbtx_iJ.js} +1 -1
- package/dist/{vue-ui-gizmo-CNHcBsku.js → vue-ui-gizmo-eic6xLjB.js} +1 -1
- package/dist/{vue-ui-heatmap-CTdeoar7.js → vue-ui-heatmap-DlmJRsM8.js} +1 -1
- package/dist/{vue-ui-hill-DR5k8GWZ.js → vue-ui-hill-C5oiuIXh.js} +1 -1
- package/dist/{vue-ui-history-plot-C-9uH-Uj.js → vue-ui-history-plot-BJjnkWcT.js} +1 -1
- package/dist/{vue-ui-horizontal-bar-qqF7pL7U.js → vue-ui-horizontal-bar-BRDBJEl1.js} +1 -1
- package/dist/{vue-ui-kpi-DVcLXGqG.js → vue-ui-kpi-C-eed3jO.js} +1 -1
- package/dist/{vue-ui-label-D1Aog-zO.js → vue-ui-label-B4pkXBxc.js} +1 -1
- package/dist/{vue-ui-mini-loader-CX0Dx9tT.js → vue-ui-mini-loader-CElmv_iF.js} +1 -1
- package/dist/{vue-ui-molecule-B13qVX71.js → vue-ui-molecule-BeyQWZU9.js} +1 -1
- package/dist/{vue-ui-mood-radar-C1BtB8lg.js → vue-ui-mood-radar-Bh0kHfiZ.js} +1 -1
- package/dist/{vue-ui-nested-donuts-B90yrlJG.js → vue-ui-nested-donuts-FlnJfDaF.js} +1 -1
- package/dist/{vue-ui-onion-UMVO2DE_.js → vue-ui-onion-BjhSpjtW.js} +1 -1
- package/dist/vue-ui-parallel-coordinate-plot-CHV6XDti.js +9 -0
- package/dist/{vue-ui-quadrant-CPG6yAiu.js → vue-ui-quadrant-BaKSTJDv.js} +1 -1
- package/dist/{vue-ui-quick-chart-BTPb-Iz8.js → vue-ui-quick-chart-Nc2mVlle.js} +1 -1
- package/dist/{vue-ui-radar-Hd-pE9ih.js → vue-ui-radar-BzUfkLlC.js} +1 -1
- package/dist/{vue-ui-rating-C_YxQYa_.js → vue-ui-rating-BwWXvbAg.js} +1 -1
- package/dist/{vue-ui-relation-circle-CHYG7ZJl.js → vue-ui-relation-circle-nAZEg-BL.js} +1 -1
- package/dist/{vue-ui-ridgeline-DS1Gvljt.js → vue-ui-ridgeline-DxLZg1E2.js} +1 -1
- package/dist/{vue-ui-rings-B-Hb13Uu.js → vue-ui-rings-BOti0NGb.js} +1 -1
- package/dist/{vue-ui-scatter-BTgvOmuo.js → vue-ui-scatter-CCNMggyo.js} +1 -1
- package/dist/{vue-ui-skeleton-B-Acw3CC.js → vue-ui-skeleton-DI7pcimU.js} +1 -1
- package/dist/{vue-ui-smiley-Ciwqt6ek.js → vue-ui-smiley-D70sJZWl.js} +1 -1
- package/dist/{vue-ui-spark-trend-CYqy6c0S.js → vue-ui-spark-trend-BVtfEalS.js} +1 -1
- package/dist/{vue-ui-sparkbar-CTXIgjmP.js → vue-ui-sparkbar-CdsLI7Ke.js} +1 -1
- package/dist/{vue-ui-sparkgauge-CObOL6s2.js → vue-ui-sparkgauge-wmj5Wnnp.js} +1 -1
- package/dist/{vue-ui-sparkhistogram-ClFyDez-.js → vue-ui-sparkhistogram-D8S_P_P4.js} +1 -1
- package/dist/{vue-ui-sparkline-DP_nYlW8.js → vue-ui-sparkline-BjsJnS_9.js} +1 -1
- package/dist/{vue-ui-sparkstackbar-B2f0ePMg.js → vue-ui-sparkstackbar-ZN8LXzoV.js} +1 -1
- package/dist/{vue-ui-stackbar-nMWHZ-f0.js → vue-ui-stackbar-Dx_EN3pT.js} +1 -1
- package/dist/{vue-ui-stackline-B95y6Zc5.js → vue-ui-stackline-DW-oxJvA.js} +1 -1
- package/dist/{vue-ui-strip-plot-gFNC4r-X.js → vue-ui-strip-plot-D7kjJ3Qh.js} +1 -1
- package/dist/{vue-ui-table-Br2JgD_L.js → vue-ui-table-CaFVLHxE.js} +1 -1
- package/dist/{vue-ui-table-heatmap-Btu2ejF4.js → vue-ui-table-heatmap-Ctf7Rhqo.js} +1 -1
- package/dist/vue-ui-table-sparkline-C0I0cXBS.js +1 -0
- package/dist/{vue-ui-thermometer-C6u1eLfo.js → vue-ui-thermometer-B6og15Al.js} +1 -1
- package/dist/{vue-ui-timer-DLgsfB1U.js → vue-ui-timer-DgXvO2Q7.js} +2 -2
- package/dist/{vue-ui-tiremarks-8B9uE1Bx.js → vue-ui-tiremarks-Dh6fZ454.js} +1 -1
- package/dist/{vue-ui-treemap-C4Mot-Os.js → vue-ui-treemap-7JuvN6P_.js} +1 -1
- package/dist/{vue-ui-waffle-BwcwNpf7.js → vue-ui-waffle-BqvGzfse.js} +1 -1
- package/dist/{vue-ui-wheel-B3OGCXg7.js → vue-ui-wheel-SdwJqKA7.js} +1 -1
- package/dist/{vue-ui-word-cloud-BPIyMBXq.js → vue-ui-word-cloud-1WVV_k12.js} +1 -1
- package/dist/{vue-ui-world-Cp0DeauH.js → vue-ui-world-DjMy_utm.js} +1 -1
- package/dist/{vue-ui-xy-BOE1jvUS.js → vue-ui-xy-DaozHMfg.js} +1 -1
- package/dist/{vue-ui-xy-canvas-CaxxiKSa.js → vue-ui-xy-canvas-CegvS9RR.js} +1 -1
- package/dist/{vue-ui-xy-DSyKSn4L.js → vue-ui-xy-rGHSI1am.js} +3 -3
- package/dist/vue_ui_donut_evolution-CVoh3twl.js +1 -0
- package/dist/vue_ui_quick_chart-BRfcRW6Z.js +1 -0
- package/package.json +1 -1
- package/dist/SlicerPreview-GFRs2EWB.js +0 -1
- package/dist/package-DIR2F6AE.js +0 -1
- package/dist/vue-data-ui-BG41UScx.js +0 -1
- package/dist/vue-ui-parallel-coordinate-plot-C0ofFivm.js +0 -9
- package/dist/vue-ui-table-sparkline-B9mYHAxp.js +0 -1
- package/dist/vue_ui_donut_evolution-nzVwNQYv.js +0 -1
- package/dist/vue_ui_quick_chart-Da1GwklM.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{$ as e,A as t,G as n,Ht as r,I as i,J as a,Jt as o,L as s,N as c,P as l,S as u,U as d,V as f,W as p,X as m,Yt as h,_ as g,c as _,gt as v,i as y,in as b,k as x,l as S,nn as C,o as ee,qt as te,st as w,t as T,v as E,wt as D}from"./lib-zDxoqrgo.js";import{t as O}from"./useTimeLabels-Das5O74F.js";import{t as ne}from"./useConfig-CKdzPrcf.js";import{t as re}from"./vue_ui_xy-CJBM9F6W.js";import{_ as k,d as A,f as j,g as M,h as N,l as ie,m as ae,p as P,u as F,v as I}from"./render-common-DOYi0f4Z.js";var{vue_ui_xy:L}=ne();function oe({config:e={},dataset:t=[]}={}){let n=e??{},i=b({userConfig:n,defaultConfig:L});D(n,`chart.highlightArea`)&&(Array.isArray(n.chart.highlightArea)?i.chart.highlightArea=n.chart.highlightArea.map(e=>b({defaultConfig:L.chart.highlightArea,userConfig:e})):i.chart.highlightArea=[b({defaultConfig:L.chart.highlightArea,userConfig:n.chart.highlightArea})]),D(n,`chart.annotations`)&&Array.isArray(n.chart.annotations)&&n.chart.annotations.length?i.chart.annotations=n.chart.annotations.map(e=>b({defaultConfig:L.chart.annotations[0],userConfig:e})):i.chart.annotations=[],D(n,`chart.grid.position`)&&n.chart.grid.position===`start`&&t.some(e=>e.type===`bar`)&&(i.chart.grid.position=`middle`);let a=i.theme;if(!a)return{...i,customPalette:i.customPalette?.length?i.customPalette:r};let o=b({userConfig:re[a]||{},defaultConfig:i}),s=b({userConfig:n,defaultConfig:o});return{...s,customPalette:s.customPalette?.length?s.customPalette:C[a]||r}}function R(e){return e&&typeof e==`object`&&Number.isFinite(Number(e.x))&&Number.isFinite(Number(e.y))}function se(e){return e!=null&&Number.isFinite(Number(e))}function ce(e){return e.flatMap(e=>Array.isArray(e.series)?e.series:[]).filter(R).map(e=>Number(e.x))}function le({dataset:e,config:t}){let n=ce(e);if(!n.length)return{min:0,max:1,ticks:[0,1]};let r=t?.chart?.grid?.labels?.xAxis?.scaleMin,i=t?.chart?.grid?.labels?.xAxis?.scaleMax,a=se(r)?Number(r):Math.min(...n),o=se(i)?Number(i):Math.max(...n),s=a===o?a-1:a,c=a===o?o+1:o,l=Number.isFinite(Number(t?.chart?.grid?.labels?.xAxis?.scaleSteps))?Number(t.chart.grid.labels.xAxis.scaleSteps):6;return g(s,c,l)}function ue({xValue:e,xScale:t,drawingArea:n,config:r}){let i=(Number(e)-t.min)/(t.max-t.min||1),a=r?.chart?.grid?.labels?.xAxis?.reverse?1-i:i;return n.left+n.width*a}function de({dataset:e=[],config:t={},width:n=1e3,height:i=600,selectedXIndex:a,additionalSvgContent:o=``,svgTitle:s=``}={}){let c=oe({config:t,dataset:e}),l={top:c.chart.padding.top,left:c.chart.padding.left,right:n-c.chart.padding.right,bottom:i-c.chart.padding.bottom};l.width=l.right-l.left,l.height=l.bottom-l.top;let d=e.flatMap(e=>Array.isArray(e.series)?e.series.map(e=>Number(typeof e==`object`&&e?e.y:e)):[]).filter(Number.isFinite),f=Math.min(0,...d),p=Math.max(1,...d),m=g(f,p,6),h=e.some(e=>Array.isArray(e.series)?e.series.some(R):!1),_=h?le({dataset:e,config:c}):null,v=Math.max(0,...e.map(e=>e.series?.length||0)),y=e=>v<=1?l.left+l.width/2:l.left+e/(v-1)*l.width,b=(e,t)=>h?R(e)?ue({xValue:e.x,xScale:_,drawingArea:l,config:c}):null:y(t),x=e=>{let t=(Number(e)-m.min)/(m.max-m.min||1);return l.bottom-t*l.height},S=Array.isArray(c.customPalette)?c.customPalette:[],C=S.length?S:r;return{width:n,height:i,selectedXIndex:a,dataset:e,config:c,drawingArea:l,scale:m,xScale:_,isContinuous:h,series:e.map((e,t)=>{let n=(e.color?u(e.color):``)||C[t%C.length],r=(e.series||[]).map((e,t)=>{let n=e==null?null:typeof e==`object`?e.y??null:Number(e);return{x:b(e,t),y:n===null||!Number.isFinite(Number(n))?null:x(n),value:n,index:t,rawX:R(e)?Number(e.x):null,label:e?.name??e?.x??String(t)}});return{...e,color:n,type:e.type||`line`,plots:r}}),additionalSvgContent:o,svgTitle:s}}function z(e){return!!P(e,`chart.grid.labels.yAxis.useIndividualScale`,!1)}function B(e){return String(e.scaleLabel??e.id??e.name??``)}function V(e){return k(P(e,`chart.grid.labels.yAxis.labelWidth`,40),40)+36}function fe(e){return M(e).flatMap(e=>M(e.plots)).map(e=>e?.value===null||e?.value===void 0?null:Number(e.value)).filter(Number.isFinite)}function pe(e,t,n){let r=fe(n),i=P(e,`chart.grid.labels.yAxis.scaleMin`,null),a=P(e,`chart.grid.labels.yAxis.scaleMax`,null),o=X(i)?Number(i):Math.min(0,...r),s=X(a)?Number(a):Math.max(1,...r),c=k(P(e,`chart.grid.labels.yAxis.commonScaleSteps`,6),6);return!r.length&&!X(i)&&!X(a)?t:ke(e,o,s===o?o+1:s,c)}function me(e,t){let{drawingArea:n}=e,r=k(t.__yOffset,0),i=k(t.__individualHeight,n.height);return{top:n.bottom-r-i,bottom:n.bottom-r}}function H(e,t,n,r){let i=me(e,t),a=Math.min(n.y,r),o=Math.max(n.y,r),s=Math.max(i.top,a),c=Math.min(i.bottom,o);return{y:s,height:Math.max(1e-5,c-s)}}function he(e,t){let n={};return M(t).forEach((t,r)=>{let i=B(t)||`serie_${r}`,a=M(t.plots).map(e=>Number(e.value)).filter(Number.isFinite);n[i]||(n[i]={scaleLabel:i,name:t.name??i,color:P(e,`chart.grid.labels.yAxis.groupColor`,null)||t.color,series:[],values:[]}),n[i].series.push(t),n[i].values.push(...a)}),Object.values(n).forEach(t=>{t.scale=Ae(e,{...t.series[0],plots:t.series.flatMap(e=>M(e.plots))})}),n}function ge(e,t,n,r,i,a){return!i&&!a?r:n[B(t)]?.scale??Ae(e,t)}function _e(e){return e===`bar`||e===`line`||e===`plot`?e:`line`}function ve(e){return M(e.series).map(e=>({...e,type:_e(e.type),plots:M(e.plots).filter(e=>e&&ae(e.x))}))}function U(e){let{drawingArea:t,scale:n}=e,r=(0-n.min)/(n.max-n.min||1);return t.bottom-r*t.height}var ye=m();function W(e){return ye}function G(e,t,n){return`rectGradient_${n}_${t}_${W(e)}`}function be(e,t){return`lineGradient_${t}_${W(e)}`}function xe(e,t){return`temperature_grad_line_${t}_${W(e)}`}function Se(e,t,n){return t.temperatureColors&&!t.isFlatTemperatureLine?`url(#${xe(e,n)})`:t.color}function Ce(e,t){return`plotGradient_${t}_${W(e)}`}function we(e,t,n){let{config:r}=e;return P(r,`line.useGradient`,!1)?`url(#${be(e,n)})`:P(r,`line.dot.useSerieColor`,!0)?t.color:P(r,`line.dot.fill`,`#FFFFFF`)}function Te(e,t,n){let{config:r}=e;return P(r,`line.area.useGradient`,!1)?`url(#${it(e,n)})`:o(t.color,k(P(r,`line.area.opacity`,30),30))}function K(e,t,n,r){return P(e.config,`bar.useGradient`,!1)?r>=0?`url(#${G(e,n,`pos`)})`:`url(#${G(e,n,`neg`)})`:t.color}function Ee(e,t){let{config:n}=e,r=[];return P(n,`bar.useGradient`,!1)&&t.filter(e=>e.type===`bar`).forEach((t,n)=>{r.push(F(`linearGradient`,{id:G(e,n,`pos`),x2:`0%`,y2:`100%`},[A(`stop`,{offset:`0%`,"stop-color":u(t.color)}),A(`stop`,{offset:`62%`,"stop-color":h(u(t.color),.02)}),A(`stop`,{offset:`100%`,"stop-color":h(u(t.color),.05)})].join(``))),r.push(F(`linearGradient`,{id:G(e,n,`neg`),x2:`0%`,y2:`100%`},[A(`stop`,{offset:`0%`,"stop-color":h(u(t.color),.05)}),A(`stop`,{offset:`38%`,"stop-color":h(u(t.color),.02)}),A(`stop`,{offset:`100%`,"stop-color":u(t.color)})].join(``)))}),t.filter(e=>e.type===`line`).forEach((t,i)=>{P(n,`line.useGradient`,!1)&&r.push(F(`radialGradient`,{id:be(e,i),cx:`50%`,cy:`50%`,r:`50%`,fx:`50%`,fy:`50%`},[A(`stop`,{offset:`0%`,"stop-color":h(u(t.color),.05)}),A(`stop`,{offset:`100%`,"stop-color":u(t.color)})].join(``))),t.temperatureColors&&!t.isFlatTemperatureLine&&r.push(F(`linearGradient`,{id:xe(e,i),gradientTransform:`rotate(90)`},t.temperatureColors.map((e,n)=>A(`stop`,{offset:te(n,t.temperatureColors.length),"stop-color":u(e)})).join(``)))}),t.filter(e=>e.type===`plot`).forEach((t,i)=>{P(n,`plot.useGradient`,!1)&&r.push(F(`radialGradient`,{id:Ce(e,i),cx:`50%`,cy:`50%`,r:`50%`,fx:`50%`,fy:`50%`},[A(`stop`,{offset:`0%`,"stop-color":h(u(t.color),.05)}),A(`stop`,{offset:`100%`,"stop-color":u(t.color)})].join(``)))}),r.length?F(`defs`,{"data-layer":`gradients`},r.join(``)):``}function De(e){let t=P(e.config,`chart.backgroundColor`,`#FFFFFF`);return A(`rect`,{width:e.width,height:e.height,fill:t})}function q(e){return{dataLabels:k(P(e,`chart.grid.labels.fontSize`,12),12),xAxis:k(P(e,`chart.grid.labels.xAxisLabels.fontSize`,12),12),yAxis:k(P(e,`chart.grid.labels.axis.fontSize`,12),12)}}function J(e){return P(e,`chart.grid.labels.yAxis.position`,`left`)===`right`}function Oe(t,n){let r=e({p:P(n,`chart.labels.prefix`,``),v:t,s:P(n,`chart.labels.suffix`,``),r:P(n,`chart.grid.labels.yAxis.rounding`,0)});return y(P(n,`chart.grid.labels.yAxis.formatter`,null),t,r,n)}function Y(e){return!!P(e,`chart.grid.labels.yAxis.stacked`,!1)}function X(e){return e!=null&&Number.isFinite(Number(e))}function ke(e,t,n,r){return P(e,`chart.grid.labels.yAxis.useNiceScale`,!0)?g(t,n,r):E(t,n,r)}function Ae(e,t){let n=M(t.plots).map(e=>Number(e.value)).filter(Number.isFinite),r=P(e,`chart.grid.labels.yAxis.scaleMin`,null),i=P(e,`chart.grid.labels.yAxis.scaleMax`,null),a=X(r)?Number(r):X(t.scaleMin)?Number(t.scaleMin):Math.min(0,...n),o=X(i)?Number(i):X(t.scaleMax)?Number(t.scaleMax):Math.max(1,...n);return ke(e,a,o===a?a+1:o,k(t.scaleSteps??P(e,`chart.grid.labels.yAxis.commonScaleSteps`,6),6))}function je(e,t,n=[]){let r=q(e),i=Y(e),a=z(e),o=V(e);if(a&&!i){let t=Object.keys(he(e,n)).length;return{left:J(e)?0:t*o,right:J(e)?t*o:0,scaleLabelsOffset:t*o,yAxisLabelWidth:0}}if(a&&i)return{left:J(e)?0:o,right:J(e)?o:0,scaleLabelsOffset:o,yAxisLabelWidth:0};let s=(i?n.flatMap(t=>Ae(e,t).ticks):M(t.ticks)).reduce((t,n)=>Math.max(t,j(Oe(n,e),r.dataLabels)),0),c=P(e,`chart.grid.labels.axis.yLabel`,``)?r.yAxis*2+24+k(P(e,`chart.grid.labels.axis.yLabelOffsetX`,0),0)+r.yAxis:0,l=s+k(P(e,`chart.grid.labels.yAxis.scaleValueOffsetX`,0),0)+k(P(e,`chart.grid.labels.yAxis.crosshairSize`,0),0);return{left:J(e)?0:l+c,right:J(e)?l+c:0,scaleLabelsOffset:l,yAxisLabelWidth:c}}function Me(e,t){let{config:n,scale:r,width:i,height:a}=e,o=q(n);e.drawingArea;let s=je(n,r,t),c=P(n,`chart.legend.position`,`bottom`),l=P(n,`chart.legend.show`,!0),u=l?nt({...e,width:i,height:a},t):{height:0},d=l&&c===`top`?u.height:0,f=l&&c!==`top`?u.height:0,p=P(n,`chart.grid.labels.axis.xLabel`,``),m=P(n,`chart.grid.labels.xAxisLabels.show`,!0)?o.xAxis*2:0,h=(p?o.yAxis*1.5:0)+m+o.xAxis,g=_t(n)+k(P(n,`chart.labels.fontSize`,12),12)*1.1,_=k(P(n,`chart.padding.top`,12),12),v=k(P(n,`chart.padding.right`,12),12),y=k(P(n,`chart.padding.bottom`,12),12),b=k(P(n,`chart.padding.left`,12),12),x=k(P(n,`chart.grid.labels.axis.xLabelOffsetY`,0),0),S=k(P(n,`chart.grid.labels.yAxis.crosshairSize`,0),0),C=s.left,te=s.right,w=i-C-te-6-b-v,T={top:_+g+d,right:C+(J(n)?0:S)+b+w,bottom:a-h-y-x-f,left:C+(J(n)?0:S)+b,width:Math.max(1,w),height:1,scaleLabelX:C,rightScaleLabelX:te,scaleLabelsOffset:s.scaleLabelsOffset,yAxisLabelWidth:s.yAxisLabelWidth,individualOffsetX:36};T.height=Math.max(1,T.bottom-T.top);let E=Y(n),D=E?ee(t):t,O=Math.max(1,D.length),ne=E?k(P(n,`chart.grid.labels.yAxis.gap`,12),12):0,re=ne*Math.max(0,O-1),A=Math.max(1,T.height-re),j=z(n),N=he(n,t),ie=Math.max(1,...t.map(e=>M(e.plots).length));function ae(t,n){if(Z(e)){let n=Number(t.rawX);return Number.isFinite(n)?Ge({...e,drawingArea:T},n):null}return Q({...e,drawingArea:T},t.index??n,ie)}let F=t.map((e,t)=>{let i=e.id!==void 0&&e.id!==null?D.find(t=>t.id===e.id)??D[t]??e:D[t]??e,a=ge(n,e,N,r,j,E),o=k(i.stackIndex,t),s=k(i.stackRatio,1/O),c=k(i.cumulatedStackRatio,s*(o+1)),l=O-1-o,u=E?1-c:0,d=E?A*u+ne*l:0,f=E?A*s:T.height;function p(e){let t=(e-a.min)/(a.max-a.min||1);return T.bottom-d-t*f}let m=p(0);return{...e,__scale:a,__yOffset:d,__individualHeight:f,__zeroY:m,__scaleYLabels:M(a.ticks).map(t=>({value:t,y:p(t),serie:e})),plots:e.plots.map((e,t)=>{let n=e.value===null||e.value===void 0?null:Number(e.value);return{...e,value:n,x:ae(e,t),y:n===null||!Number.isFinite(n)?null:p(n)}})}});return{...e,drawingArea:T,series:F,__scaleGroups:N,__useIndividualScale:j}}function Ne(e){let{config:t,drawingArea:n,scale:r,series:i}=e;if(!P(t,`chart.grid.labels.show`,!0)||!P(t,`chart.grid.labels.yAxis.show`,!0))return``;let a=z(t),o=Y(t);if(a)return Pe(e);let s=q(t),c=J(t),l=P(t,`chart.grid.labels.yAxis.showCrosshairs`,!1),u=k(P(t,`chart.grid.labels.yAxis.crosshairSize`,0),0),d=k(P(t,`chart.grid.labels.yAxis.scaleValueOffsetX`,0),0),f=P(t,`chart.grid.labels.color`,`#2A2A2A`),p=P(t,`chart.grid.stroke`,`#CCCCCC`),m=o?i.flatMap(e=>M(e.__scaleYLabels)):M(r.ticks).map(e=>{let t=(e-r.min)/(r.max-r.min||1);return{value:e,y:n.bottom-t*n.height}}),h=[];return m.forEach(e=>{Number.isFinite(e.y)&&(l&&h.push(A(`line`,{"data-cy":`axis-y-tick`,x1:c?n.right:n.left,x2:c?n.right+u:n.left-u,y1:e.y,y2:e.y,stroke:p,"stroke-width":1,"stroke-linecap":`round`})),h.push(I(Oe(e.value,t),{"data-cy":`axis-y-label`,transform:`translate(${c?n.right+u+d+5:n.scaleLabelX-u}, ${e.y+s.dataLabels/3})`,"font-size":s.dataLabels,"text-anchor":c?`start`:`end`,fill:o&&e.serie?.color?P(t,`chart.grid.labels.yAxis.groupColor`,null)||e.serie.color:f})))}),F(`g`,{"data-layer":`scale-labels`},h.join(``))}function Pe(e){let{config:t,drawingArea:n,series:r}=e,i=q(t),a=J(t),o=Y(t),s=e.__scaleGroups??he(t,r),c=P(t,`chart.grid.labels.yAxis.showCrosshairs`,!1),l=k(P(t,`chart.grid.labels.yAxis.crosshairSize`,0),0),u=k(P(t,`chart.grid.labels.yAxis.scaleValueOffsetX`,0),0),d=k(P(t,`chart.grid.labels.yAxis.labelWidth`,40),40),f=k(n.individualOffsetX,36),p=[],m=Object.values(s);return m.forEach((e,s)=>{let h=r.find(t=>B(t)===e.scaleLabel)??r[s];if(!h)return;let g=o?a?n.right:n.left:a?n.right+V(t)*s:n.left-V(t)*(m.length-s-1),_=k(h.__yOffset,0),v=k(h.__individualHeight,n.height),y=o?n.bottom-_-v:n.top,b=o?n.bottom-_:n.bottom;p.push(A(`line`,{x1:o||a?g:g-f,x2:o||a?g:g-f,y1:y,y2:b,stroke:e.color,"stroke-width":P(t,`chart.grid.strokeWidth`,1),"stroke-linecap":`round`}));let x=o?a?n.right+l+u+5+d+f:n.left-l-u-d:a?g+l+u+5+d:g-i.dataLabels/2;p.push(I(e.name,{transform:`translate(${x}, ${y+(b-y)/2}) rotate(-90)`,"font-size":i.dataLabels*.8,"text-anchor":`middle`,fill:e.color})),M(e.scale.ticks).forEach(r=>{let s=(r-e.scale.min)/(e.scale.max-e.scale.min||1),d=b-s*(b-y);Number.isFinite(d)&&(c&&p.push(A(`line`,{"data-cy":`axis-y-tick`,x1:o||a?g:g+3-l-f,x2:o?a?g+l:g-l:a?g+l:g-f,y1:d,y2:d,stroke:e.color,"stroke-width":1,"stroke-linecap":`round`})),p.push(I(Oe(r,t),{"data-cy":`axis-y-label`,transform:`translate(${o?a?n.right+l+u+5:n.left-l-u-5:a?g+l+u+5:g-5-f}, ${d+i.dataLabels/3})`,"font-size":i.dataLabels,"text-anchor":a?`start`:`end`,fill:e.color})))})}),F(`g`,{"data-layer":`individual-scale-labels`},p.join(``))}function Fe(e){return[...new Set(e.flatMap(e=>M(e.plots)).map(e=>Number(e.x)).filter(Number.isFinite))].sort((e,t)=>e-t)}function Ie(e,t,n=1){let{drawingArea:r,config:i}=e,a=Fe(t),o=r.width*.05;if(a.length<2)return Math.max(1e-5,o/Math.max(1,n));let s=a.slice(1).reduce((e,t,n)=>{let r=a[n],i=Math.abs(t-r);return i>0?Math.min(e,i):e},1/0),c=k(P(i,`bar.periodGap`,.2),.2),l=Number.isFinite(s)&&s>0?s*(1-c):o;return Math.max(1e-5,l/Math.max(1,n))}function Le(e,t,n){let{config:r}=e,i=k(P(r,`bar.innerGap`,.05),.05),a=P(r,`bar.borderRadius`,0),o=[];if(n){let n=Ie(e,t,1),r=n*Math.min(Math.abs(i),.95),s=Math.max(1e-5,n-r);return t.forEach((t,n)=>{let r=Number.isFinite(Number(t.__zeroY))?Number(t.__zeroY):U(e);M(t.plots).forEach(i=>{if(!i||i.value===null||i.value===void 0||!Number.isFinite(Number(i.value))||!Number.isFinite(Number(i.x))||!Number.isFinite(Number(i.y)))return;let c=i.x-s/2,{y:l,height:u}=H(e,t,i,r);i.__barLabelX=i.x,o.push(A(`rect`,{"data-cy":`datapoint-bar`,x:c,y:l,width:s,height:u,rx:a,fill:K(e,t,n,Number(i.value)),...$(e,t)}))})}),F(`g`,{"data-layer":`bars`},o.join(``))}let s=Math.max(1,t.length),c=Ie(e,t,s),l=c*Math.min(Math.abs(i),.95),u=Math.max(1e-5,c-l),d=c*s;return t.forEach((t,n)=>{let r=Number.isFinite(Number(t.__zeroY))?Number(t.__zeroY):U(e);M(t.plots).forEach(i=>{if(!i||i.value===null||i.value===void 0||!Number.isFinite(Number(i.value))||!Number.isFinite(Number(i.x))||!Number.isFinite(Number(i.y)))return;let s=i.x-d/2+c*n+l/2,{y:f,height:p}=H(e,t,i,r);i.__barLabelX=s+u/2,o.push(A(`rect`,{"data-cy":`datapoint-bar`,x:s,y:f,width:u,height:p,rx:a,fill:K(e,t,n,Number(i.value)),...$(e,t)}))})}),F(`g`,{"data-layer":`bars`},o.join(``))}function Re(e,t){let{config:n,drawingArea:r}=e,i=Y(n),a=t.filter(e=>e.type===`bar`);if(!a.length)return``;if(Z(e))return Le(e,a,i);let o=Math.max(1,...t.map(e=>M(e.plots).length)),s=r.width/o,c=k(P(n,`bar.periodGap`,.2),.2),l=k(P(n,`bar.innerGap`,.05),.05),u=P(n,`bar.borderRadius`,0),d=[];if(i){let t=Math.max(1e-5,s*.9),n=t*Math.min(Math.abs(l),.95);return a.forEach((i,a)=>{let o=Number.isFinite(Number(i.__zeroY))?Number(i.__zeroY):U(e);M(i.plots).forEach((c,l)=>{if(!c||c.value===null||c.value===void 0||!Number.isFinite(Number(c.value))||!Number.isFinite(Number(c.y)))return;let f=r.left+s*l+s*.05+n/2,{y:p,height:m}=H(e,i,c,o);c.__barLabelX=f+Math.max(1e-5,t-n)/2,d.push(A(`rect`,{"data-cy":`datapoint-bar`,x:f,y:p,width:Math.max(1e-5,t-n),height:m,rx:u,fill:K(e,i,a,Number(c.value)),...$(e,i)}))})}),F(`g`,{"data-layer":`bars`},d.join(``))}let f=s*(1-c),p=f/Math.max(1,a.length),m=p*Math.min(Math.abs(l),.95);return U(e),a.forEach((t,n)=>{let i=Number.isFinite(Number(t.__zeroY))?Number(t.__zeroY):U(e);M(t.plots).forEach((a,o)=>{if(!a||a.value===null||a.value===void 0||!Number.isFinite(Number(a.value))||!Number.isFinite(Number(a.y)))return;let c=r.left+s*o+(s-f)/2+p*n+m/2,{y:l,height:h}=H(e,t,a,i);a.__barLabelX=c+Math.max(1e-5,p-m)/2,d.push(A(`rect`,{"data-cy":`datapoint-bar`,x:c,y:l,width:Math.max(1e-5,p-m),height:h,rx:u,fill:K(e,t,n,Number(a.value)),...$(e,t)}))})}),F(`g`,{"data-layer":`bars`},d.join(``))}function ze(e){let{config:t,drawingArea:n,scale:r,series:i}=e;return z(t)||Y(t)?i.flatMap(e=>M(e.__scaleYLabels)):M(r.ticks).map(e=>{let t=(e-r.min)/(r.max-r.min||1);return{value:e,y:n.bottom-t*n.height}})}function Be(e,t,n){let{drawingArea:r}=e,i=r.width/Math.max(1,n);return r.left+i*t}function Ve(e,t){let{config:n,drawingArea:r}=e,i=Math.max(1,...t.map(e=>M(e.plots).length)),a=r.top,o=r.bottom;if(Z(e)){let e=[...new Set(t.flatMap(e=>M(e.plots)).map(e=>Number(e.x)).filter(Number.isFinite))].sort((e,t)=>e-t);return e.length?P(n,`chart.grid.position`,`middle`)===`middle`?e.map((e,t,n)=>{if(t===0)return null;let r=n[t-1],i=r+(e-r)/2;return`M${i},${a} L${i},${o}`}).filter(Boolean).join(` `):e.map(e=>`M${e},${a} L${e},${o}`).join(` `):``}let s=i+ +(P(n,`chart.grid.position`,`middle`)===`middle`);return Array.from({length:s}).map((t,r)=>{let s=P(n,`chart.grid.position`,`middle`)===`middle`?Be(e,r,i):Q(e,r,i);return`M${s},${a} L${s},${o}`}).join(` `)}function He(e){let{config:t,drawingArea:n,scale:r,series:i}=e,a=P(t,`chart.grid.show`,!0),o=P(t,`chart.grid.showHorizontalLines`,!0),s=P(t,`chart.grid.showVerticalLines`,!1),c=P(t,`chart.grid.stroke`,`#CCCCCC`),l=k(P(t,`chart.grid.strokeWidth`,.5),.5),u=[];if(a&&o&&ze(e).forEach(e=>{Number.isFinite(Number(e.y))&&u.push(A(`line`,{"data-cy":`xy-grid-horizontal-line`,x1:n.left,x2:n.right,y1:e.y,y2:e.y,stroke:c,"stroke-width":l,"stroke-linecap":`round`}))}),a&&s){let t=Ve(e,i);t&&u.push(A(`path`,{"data-cy":`xy-grid-vertical-line`,d:t,stroke:c,"stroke-width":l,"stroke-linecap":`round`}))}u.push(A(`line`,{x1:n.left,y1:n.bottom,x2:n.right,y2:n.bottom,stroke:c,"stroke-width":l,"stroke-linecap":`round`}));let d=J(t)?n.right:n.left;return u.push(A(`line`,{x1:d,y1:n.top,x2:d,y2:n.bottom,stroke:c,"stroke-width":l,"stroke-linecap":`round`})),r.min<0&&r.max>0&&u.push(A(`line`,{x1:n.left,y1:U(e),x2:n.right,y2:U(e),stroke:c,"stroke-width":l,"stroke-dasharray":4,"stroke-linecap":`round`})),F(`g`,{"data-layer":`grid`},u.join(``))}function Ue(e){return e&&typeof e==`object`&&Number.isFinite(Number(e.x))&&Number.isFinite(Number(e.y))}function Z(e){return e.isContinuous?!0:M(e.series).some(e=>M(e.series).some(Ue))}function We(e){if(e.xScale&&Number.isFinite(Number(e.xScale.min))&&Number.isFinite(Number(e.xScale.max)))return{min:Number(e.xScale.min),max:Number(e.xScale.max)};let t=M(e.series).flatMap(e=>M(e.series)).filter(Ue).map(e=>Number(e.x));if(!t.length)return{min:0,max:1};let n=Math.min(...t),r=Math.max(...t);return n===r?{min:n-1,max:r+1}:{min:n,max:r}}function Ge(e,t){let{drawingArea:n,config:r}=e,i=We(e),a=(Number(t)-i.min)/(i.max-i.min||1),o=P(r,`chart.grid.labels.xAxis.reverse`,!1)?1-a:a;return n.left+n.width*o}function Ke(t,n,r){let{config:i}=t,a=e({v:n,p:P(i,`chart.labels.prefix`,``),s:P(i,`chart.labels.suffix`,``),r:P(i,`chart.grid.labels.xAxis.rounding`,0)});return y(P(i,`chart.grid.labels.xAxis.formatter`,null),n,a,{datapoint:n,seriesIndex:null})}function qe(e){let{xScale:t,config:n}=e,r=M(t?.ticks);return(P(n,`chart.grid.labels.xAxis.reverse`,!1)?[...r].reverse():r).map((t,n)=>({id:`continuous_x_label_${n}`,text:Ke(e,t,n),value:t,x:Ge(e,t),index:n,absoluteIndex:n}))}function Q(e,t,n){let{drawingArea:r,config:i}=e,a=P(i,`chart.grid.position`,`middle`),o=r.width,s=a===`middle`?o/Math.max(1,n):o/Math.max(1,n-1);return a===`middle`?r.left+s/2+s*t:r.left+s*t}async function Je(e,t){let{config:n}=e,r=Math.max(0,...t.map(e=>M(e.plots).length));return await O({values:P(n,`chart.grid.labels.xAxisLabels.values`,[]),maxDatapoints:r,formatter:P(n,`chart.grid.labels.xAxisLabels.datetimeFormatter`,null),start:k(e.slotStartIndex??e.startAbs,0),end:k(e.slotEndIndex??e.endAbs,r)})}async function Ye(e,t){let{config:n}=e,r=P(n,`chart.grid.labels.xAxisLabels`,{}),i=M(P(n,`chart.grid.labels.xAxisLabels.values`,[])),a=Math.max(0,...t.map(e=>M(e.plots).length)),o=e.slotStartIndex!==void 0||e.startAbs!==void 0,s=e.slotEndIndex!==void 0||e.endAbs!==void 0,c=o||s,l=Math.max(0,Math.floor(k(e.slotStartIndex??e.startAbs,0))),u=Math.max(l,Math.floor(k(e.slotEndIndex??e.endAbs,l+a))),d=await Je(e,t),f=c?Math.max(a,i.length,u):a,p=await O({values:i,maxDatapoints:f,formatter:P(n,`chart.grid.labels.xAxisLabels.datetimeFormatter`,null),start:0,end:f}),m=d.map(e=>e?.text??``),h=p.map(e=>e?.text??``),g=Math.max(1,Math.floor(k(r.modulo,1))),y=p.length||f,b=v({configuredModulo:g,visibleTexts:m,allTexts:h,startAbs:l,isZoomed:c&&y>0&&(l>0||u<y)}),x=_(!!r.showOnlyFirstAndLast,!!r.showOnlyAtModulo,b,m,h,l,e.selectedXIndex??null,m.length);if(!r.showFirstAndLast||r.showOnlyFirstAndLast||!x.length)return x;let S=x.length-1;return x.map((e,t)=>t!==0&&t!==S?e:{...e,text:m[t]??``})}async function Xe(e,t){return Z(e)?qe(e):await Ye(e,t)}function Ze(e,t,n,r){return Z(e)?t.x:Q(e,n,r)}function Qe(e){let t=e.userConfig??e.sourceConfig??e.props?.config??{};return D(t,`chart.grid.labels.xAxisLabels.rotation`)?k(P(e.config,`chart.grid.labels.xAxisLabels.rotation`,0),0):P(e.config,`chart.grid.labels.xAxisLabels.autoRotate.enable`,!1)?k(P(e.config,`chart.grid.labels.xAxisLabels.autoRotate.angle`,0),0):k(P(e.config,`chart.grid.labels.xAxisLabels.rotation`,0),0)}async function $e(e,t){let{config:n,drawingArea:r}=e;if(!t[0]||!P(n,`chart.grid.labels.xAxisLabels.show`,!0))return``;P(n,`chart.grid.labels.xAxisLabels`,{});let i=k(P(n,`chart.grid.labels.xAxisLabels.fontSize`,12),12),o=P(n,`chart.grid.labels.xAxisLabels.color`,P(n,`chart.grid.labels.color`,`#2A2A2A`)),s=Qe(e),c=Math.max(1,t[0].plots.length),l=await Xe(e,t),u=s>0?`start`:s<0?`end`:`middle`,d=l.map((t,l)=>{let d=typeof t==`string`?t:t?.text;if(!d)return``;let f=`translate(${Ze(e,t,l,c)}, ${r.bottom+i*1.5}), rotate(${s})`;return String(d).includes(`
|
|
1
|
+
import{$ as e,A as t,G as n,Ht as r,I as i,J as a,Jt as o,L as s,N as c,P as l,S as u,U as d,V as f,W as p,X as m,Yt as h,_ as g,c as _,gt as v,i as y,in as b,k as x,l as S,nn as C,o as ee,qt as te,st as w,t as T,v as E,wt as D}from"./lib-CV_IANZ6.js";import{t as O}from"./useTimeLabels-Das5O74F.js";import{t as ne}from"./useConfig-CKdzPrcf.js";import{t as re}from"./vue_ui_xy-CJBM9F6W.js";import{_ as k,d as A,f as j,g as M,h as N,l as ie,m as ae,p as P,u as F,v as I}from"./render-common-BdZ5aRyn.js";var{vue_ui_xy:L}=ne();function oe({config:e={},dataset:t=[]}={}){let n=e??{},i=b({userConfig:n,defaultConfig:L});D(n,`chart.highlightArea`)&&(Array.isArray(n.chart.highlightArea)?i.chart.highlightArea=n.chart.highlightArea.map(e=>b({defaultConfig:L.chart.highlightArea,userConfig:e})):i.chart.highlightArea=[b({defaultConfig:L.chart.highlightArea,userConfig:n.chart.highlightArea})]),D(n,`chart.annotations`)&&Array.isArray(n.chart.annotations)&&n.chart.annotations.length?i.chart.annotations=n.chart.annotations.map(e=>b({defaultConfig:L.chart.annotations[0],userConfig:e})):i.chart.annotations=[],D(n,`chart.grid.position`)&&n.chart.grid.position===`start`&&t.some(e=>e.type===`bar`)&&(i.chart.grid.position=`middle`);let a=i.theme;if(!a)return{...i,customPalette:i.customPalette?.length?i.customPalette:r};let o=b({userConfig:re[a]||{},defaultConfig:i}),s=b({userConfig:n,defaultConfig:o});return{...s,customPalette:s.customPalette?.length?s.customPalette:C[a]||r}}function R(e){return e&&typeof e==`object`&&Number.isFinite(Number(e.x))&&Number.isFinite(Number(e.y))}function se(e){return e!=null&&Number.isFinite(Number(e))}function ce(e){return e.flatMap(e=>Array.isArray(e.series)?e.series:[]).filter(R).map(e=>Number(e.x))}function le({dataset:e,config:t}){let n=ce(e);if(!n.length)return{min:0,max:1,ticks:[0,1]};let r=t?.chart?.grid?.labels?.xAxis?.scaleMin,i=t?.chart?.grid?.labels?.xAxis?.scaleMax,a=se(r)?Number(r):Math.min(...n),o=se(i)?Number(i):Math.max(...n),s=a===o?a-1:a,c=a===o?o+1:o,l=Number.isFinite(Number(t?.chart?.grid?.labels?.xAxis?.scaleSteps))?Number(t.chart.grid.labels.xAxis.scaleSteps):6;return g(s,c,l)}function ue({xValue:e,xScale:t,drawingArea:n,config:r}){let i=(Number(e)-t.min)/(t.max-t.min||1),a=r?.chart?.grid?.labels?.xAxis?.reverse?1-i:i;return n.left+n.width*a}function de({dataset:e=[],config:t={},width:n=1e3,height:i=600,selectedXIndex:a,additionalSvgContent:o=``,svgTitle:s=``}={}){let c=oe({config:t,dataset:e}),l={top:c.chart.padding.top,left:c.chart.padding.left,right:n-c.chart.padding.right,bottom:i-c.chart.padding.bottom};l.width=l.right-l.left,l.height=l.bottom-l.top;let d=e.flatMap(e=>Array.isArray(e.series)?e.series.map(e=>Number(typeof e==`object`&&e?e.y:e)):[]).filter(Number.isFinite),f=Math.min(0,...d),p=Math.max(1,...d),m=g(f,p,6),h=e.some(e=>Array.isArray(e.series)?e.series.some(R):!1),_=h?le({dataset:e,config:c}):null,v=Math.max(0,...e.map(e=>e.series?.length||0)),y=e=>v<=1?l.left+l.width/2:l.left+e/(v-1)*l.width,b=(e,t)=>h?R(e)?ue({xValue:e.x,xScale:_,drawingArea:l,config:c}):null:y(t),x=e=>{let t=(Number(e)-m.min)/(m.max-m.min||1);return l.bottom-t*l.height},S=Array.isArray(c.customPalette)?c.customPalette:[],C=S.length?S:r;return{width:n,height:i,selectedXIndex:a,dataset:e,config:c,drawingArea:l,scale:m,xScale:_,isContinuous:h,series:e.map((e,t)=>{let n=(e.color?u(e.color):``)||C[t%C.length],r=(e.series||[]).map((e,t)=>{let n=e==null?null:typeof e==`object`?e.y??null:Number(e);return{x:b(e,t),y:n===null||!Number.isFinite(Number(n))?null:x(n),value:n,index:t,rawX:R(e)?Number(e.x):null,label:e?.name??e?.x??String(t)}});return{...e,color:n,type:e.type||`line`,plots:r}}),additionalSvgContent:o,svgTitle:s}}function z(e){return!!P(e,`chart.grid.labels.yAxis.useIndividualScale`,!1)}function B(e){return String(e.scaleLabel??e.id??e.name??``)}function V(e){return k(P(e,`chart.grid.labels.yAxis.labelWidth`,40),40)+36}function fe(e){return M(e).flatMap(e=>M(e.plots)).map(e=>e?.value===null||e?.value===void 0?null:Number(e.value)).filter(Number.isFinite)}function pe(e,t,n){let r=fe(n),i=P(e,`chart.grid.labels.yAxis.scaleMin`,null),a=P(e,`chart.grid.labels.yAxis.scaleMax`,null),o=X(i)?Number(i):Math.min(0,...r),s=X(a)?Number(a):Math.max(1,...r),c=k(P(e,`chart.grid.labels.yAxis.commonScaleSteps`,6),6);return!r.length&&!X(i)&&!X(a)?t:ke(e,o,s===o?o+1:s,c)}function me(e,t){let{drawingArea:n}=e,r=k(t.__yOffset,0),i=k(t.__individualHeight,n.height);return{top:n.bottom-r-i,bottom:n.bottom-r}}function H(e,t,n,r){let i=me(e,t),a=Math.min(n.y,r),o=Math.max(n.y,r),s=Math.max(i.top,a),c=Math.min(i.bottom,o);return{y:s,height:Math.max(1e-5,c-s)}}function he(e,t){let n={};return M(t).forEach((t,r)=>{let i=B(t)||`serie_${r}`,a=M(t.plots).map(e=>Number(e.value)).filter(Number.isFinite);n[i]||(n[i]={scaleLabel:i,name:t.name??i,color:P(e,`chart.grid.labels.yAxis.groupColor`,null)||t.color,series:[],values:[]}),n[i].series.push(t),n[i].values.push(...a)}),Object.values(n).forEach(t=>{t.scale=Ae(e,{...t.series[0],plots:t.series.flatMap(e=>M(e.plots))})}),n}function ge(e,t,n,r,i,a){return!i&&!a?r:n[B(t)]?.scale??Ae(e,t)}function _e(e){return e===`bar`||e===`line`||e===`plot`?e:`line`}function ve(e){return M(e.series).map(e=>({...e,type:_e(e.type),plots:M(e.plots).filter(e=>e&&ae(e.x))}))}function U(e){let{drawingArea:t,scale:n}=e,r=(0-n.min)/(n.max-n.min||1);return t.bottom-r*t.height}var ye=m();function W(e){return ye}function G(e,t,n){return`rectGradient_${n}_${t}_${W(e)}`}function be(e,t){return`lineGradient_${t}_${W(e)}`}function xe(e,t){return`temperature_grad_line_${t}_${W(e)}`}function Se(e,t,n){return t.temperatureColors&&!t.isFlatTemperatureLine?`url(#${xe(e,n)})`:t.color}function Ce(e,t){return`plotGradient_${t}_${W(e)}`}function we(e,t,n){let{config:r}=e;return P(r,`line.useGradient`,!1)?`url(#${be(e,n)})`:P(r,`line.dot.useSerieColor`,!0)?t.color:P(r,`line.dot.fill`,`#FFFFFF`)}function Te(e,t,n){let{config:r}=e;return P(r,`line.area.useGradient`,!1)?`url(#${it(e,n)})`:o(t.color,k(P(r,`line.area.opacity`,30),30))}function K(e,t,n,r){return P(e.config,`bar.useGradient`,!1)?r>=0?`url(#${G(e,n,`pos`)})`:`url(#${G(e,n,`neg`)})`:t.color}function Ee(e,t){let{config:n}=e,r=[];return P(n,`bar.useGradient`,!1)&&t.filter(e=>e.type===`bar`).forEach((t,n)=>{r.push(F(`linearGradient`,{id:G(e,n,`pos`),x2:`0%`,y2:`100%`},[A(`stop`,{offset:`0%`,"stop-color":u(t.color)}),A(`stop`,{offset:`62%`,"stop-color":h(u(t.color),.02)}),A(`stop`,{offset:`100%`,"stop-color":h(u(t.color),.05)})].join(``))),r.push(F(`linearGradient`,{id:G(e,n,`neg`),x2:`0%`,y2:`100%`},[A(`stop`,{offset:`0%`,"stop-color":h(u(t.color),.05)}),A(`stop`,{offset:`38%`,"stop-color":h(u(t.color),.02)}),A(`stop`,{offset:`100%`,"stop-color":u(t.color)})].join(``)))}),t.filter(e=>e.type===`line`).forEach((t,i)=>{P(n,`line.useGradient`,!1)&&r.push(F(`radialGradient`,{id:be(e,i),cx:`50%`,cy:`50%`,r:`50%`,fx:`50%`,fy:`50%`},[A(`stop`,{offset:`0%`,"stop-color":h(u(t.color),.05)}),A(`stop`,{offset:`100%`,"stop-color":u(t.color)})].join(``))),t.temperatureColors&&!t.isFlatTemperatureLine&&r.push(F(`linearGradient`,{id:xe(e,i),gradientTransform:`rotate(90)`},t.temperatureColors.map((e,n)=>A(`stop`,{offset:te(n,t.temperatureColors.length),"stop-color":u(e)})).join(``)))}),t.filter(e=>e.type===`plot`).forEach((t,i)=>{P(n,`plot.useGradient`,!1)&&r.push(F(`radialGradient`,{id:Ce(e,i),cx:`50%`,cy:`50%`,r:`50%`,fx:`50%`,fy:`50%`},[A(`stop`,{offset:`0%`,"stop-color":h(u(t.color),.05)}),A(`stop`,{offset:`100%`,"stop-color":u(t.color)})].join(``)))}),r.length?F(`defs`,{"data-layer":`gradients`},r.join(``)):``}function De(e){let t=P(e.config,`chart.backgroundColor`,`#FFFFFF`);return A(`rect`,{width:e.width,height:e.height,fill:t})}function q(e){return{dataLabels:k(P(e,`chart.grid.labels.fontSize`,12),12),xAxis:k(P(e,`chart.grid.labels.xAxisLabels.fontSize`,12),12),yAxis:k(P(e,`chart.grid.labels.axis.fontSize`,12),12)}}function J(e){return P(e,`chart.grid.labels.yAxis.position`,`left`)===`right`}function Oe(t,n){let r=e({p:P(n,`chart.labels.prefix`,``),v:t,s:P(n,`chart.labels.suffix`,``),r:P(n,`chart.grid.labels.yAxis.rounding`,0)});return y(P(n,`chart.grid.labels.yAxis.formatter`,null),t,r,n)}function Y(e){return!!P(e,`chart.grid.labels.yAxis.stacked`,!1)}function X(e){return e!=null&&Number.isFinite(Number(e))}function ke(e,t,n,r){return P(e,`chart.grid.labels.yAxis.useNiceScale`,!0)?g(t,n,r):E(t,n,r)}function Ae(e,t){let n=M(t.plots).map(e=>Number(e.value)).filter(Number.isFinite),r=P(e,`chart.grid.labels.yAxis.scaleMin`,null),i=P(e,`chart.grid.labels.yAxis.scaleMax`,null),a=X(r)?Number(r):X(t.scaleMin)?Number(t.scaleMin):Math.min(0,...n),o=X(i)?Number(i):X(t.scaleMax)?Number(t.scaleMax):Math.max(1,...n);return ke(e,a,o===a?a+1:o,k(t.scaleSteps??P(e,`chart.grid.labels.yAxis.commonScaleSteps`,6),6))}function je(e,t,n=[]){let r=q(e),i=Y(e),a=z(e),o=V(e);if(a&&!i){let t=Object.keys(he(e,n)).length;return{left:J(e)?0:t*o,right:J(e)?t*o:0,scaleLabelsOffset:t*o,yAxisLabelWidth:0}}if(a&&i)return{left:J(e)?0:o,right:J(e)?o:0,scaleLabelsOffset:o,yAxisLabelWidth:0};let s=(i?n.flatMap(t=>Ae(e,t).ticks):M(t.ticks)).reduce((t,n)=>Math.max(t,j(Oe(n,e),r.dataLabels)),0),c=P(e,`chart.grid.labels.axis.yLabel`,``)?r.yAxis*2+24+k(P(e,`chart.grid.labels.axis.yLabelOffsetX`,0),0)+r.yAxis:0,l=s+k(P(e,`chart.grid.labels.yAxis.scaleValueOffsetX`,0),0)+k(P(e,`chart.grid.labels.yAxis.crosshairSize`,0),0);return{left:J(e)?0:l+c,right:J(e)?l+c:0,scaleLabelsOffset:l,yAxisLabelWidth:c}}function Me(e,t){let{config:n,scale:r,width:i,height:a}=e,o=q(n);e.drawingArea;let s=je(n,r,t),c=P(n,`chart.legend.position`,`bottom`),l=P(n,`chart.legend.show`,!0),u=l?nt({...e,width:i,height:a},t):{height:0},d=l&&c===`top`?u.height:0,f=l&&c!==`top`?u.height:0,p=P(n,`chart.grid.labels.axis.xLabel`,``),m=P(n,`chart.grid.labels.xAxisLabels.show`,!0)?o.xAxis*2:0,h=(p?o.yAxis*1.5:0)+m+o.xAxis,g=_t(n)+k(P(n,`chart.labels.fontSize`,12),12)*1.1,_=k(P(n,`chart.padding.top`,12),12),v=k(P(n,`chart.padding.right`,12),12),y=k(P(n,`chart.padding.bottom`,12),12),b=k(P(n,`chart.padding.left`,12),12),x=k(P(n,`chart.grid.labels.axis.xLabelOffsetY`,0),0),S=k(P(n,`chart.grid.labels.yAxis.crosshairSize`,0),0),C=s.left,te=s.right,w=i-C-te-6-b-v,T={top:_+g+d,right:C+(J(n)?0:S)+b+w,bottom:a-h-y-x-f,left:C+(J(n)?0:S)+b,width:Math.max(1,w),height:1,scaleLabelX:C,rightScaleLabelX:te,scaleLabelsOffset:s.scaleLabelsOffset,yAxisLabelWidth:s.yAxisLabelWidth,individualOffsetX:36};T.height=Math.max(1,T.bottom-T.top);let E=Y(n),D=E?ee(t):t,O=Math.max(1,D.length),ne=E?k(P(n,`chart.grid.labels.yAxis.gap`,12),12):0,re=ne*Math.max(0,O-1),A=Math.max(1,T.height-re),j=z(n),N=he(n,t),ie=Math.max(1,...t.map(e=>M(e.plots).length));function ae(t,n){if(Z(e)){let n=Number(t.rawX);return Number.isFinite(n)?Ge({...e,drawingArea:T},n):null}return Q({...e,drawingArea:T},t.index??n,ie)}let F=t.map((e,t)=>{let i=e.id!==void 0&&e.id!==null?D.find(t=>t.id===e.id)??D[t]??e:D[t]??e,a=ge(n,e,N,r,j,E),o=k(i.stackIndex,t),s=k(i.stackRatio,1/O),c=k(i.cumulatedStackRatio,s*(o+1)),l=O-1-o,u=E?1-c:0,d=E?A*u+ne*l:0,f=E?A*s:T.height;function p(e){let t=(e-a.min)/(a.max-a.min||1);return T.bottom-d-t*f}let m=p(0);return{...e,__scale:a,__yOffset:d,__individualHeight:f,__zeroY:m,__scaleYLabels:M(a.ticks).map(t=>({value:t,y:p(t),serie:e})),plots:e.plots.map((e,t)=>{let n=e.value===null||e.value===void 0?null:Number(e.value);return{...e,value:n,x:ae(e,t),y:n===null||!Number.isFinite(n)?null:p(n)}})}});return{...e,drawingArea:T,series:F,__scaleGroups:N,__useIndividualScale:j}}function Ne(e){let{config:t,drawingArea:n,scale:r,series:i}=e;if(!P(t,`chart.grid.labels.show`,!0)||!P(t,`chart.grid.labels.yAxis.show`,!0))return``;let a=z(t),o=Y(t);if(a)return Pe(e);let s=q(t),c=J(t),l=P(t,`chart.grid.labels.yAxis.showCrosshairs`,!1),u=k(P(t,`chart.grid.labels.yAxis.crosshairSize`,0),0),d=k(P(t,`chart.grid.labels.yAxis.scaleValueOffsetX`,0),0),f=P(t,`chart.grid.labels.color`,`#2A2A2A`),p=P(t,`chart.grid.stroke`,`#CCCCCC`),m=o?i.flatMap(e=>M(e.__scaleYLabels)):M(r.ticks).map(e=>{let t=(e-r.min)/(r.max-r.min||1);return{value:e,y:n.bottom-t*n.height}}),h=[];return m.forEach(e=>{Number.isFinite(e.y)&&(l&&h.push(A(`line`,{"data-cy":`axis-y-tick`,x1:c?n.right:n.left,x2:c?n.right+u:n.left-u,y1:e.y,y2:e.y,stroke:p,"stroke-width":1,"stroke-linecap":`round`})),h.push(I(Oe(e.value,t),{"data-cy":`axis-y-label`,transform:`translate(${c?n.right+u+d+5:n.scaleLabelX-u}, ${e.y+s.dataLabels/3})`,"font-size":s.dataLabels,"text-anchor":c?`start`:`end`,fill:o&&e.serie?.color?P(t,`chart.grid.labels.yAxis.groupColor`,null)||e.serie.color:f})))}),F(`g`,{"data-layer":`scale-labels`},h.join(``))}function Pe(e){let{config:t,drawingArea:n,series:r}=e,i=q(t),a=J(t),o=Y(t),s=e.__scaleGroups??he(t,r),c=P(t,`chart.grid.labels.yAxis.showCrosshairs`,!1),l=k(P(t,`chart.grid.labels.yAxis.crosshairSize`,0),0),u=k(P(t,`chart.grid.labels.yAxis.scaleValueOffsetX`,0),0),d=k(P(t,`chart.grid.labels.yAxis.labelWidth`,40),40),f=k(n.individualOffsetX,36),p=[],m=Object.values(s);return m.forEach((e,s)=>{let h=r.find(t=>B(t)===e.scaleLabel)??r[s];if(!h)return;let g=o?a?n.right:n.left:a?n.right+V(t)*s:n.left-V(t)*(m.length-s-1),_=k(h.__yOffset,0),v=k(h.__individualHeight,n.height),y=o?n.bottom-_-v:n.top,b=o?n.bottom-_:n.bottom;p.push(A(`line`,{x1:o||a?g:g-f,x2:o||a?g:g-f,y1:y,y2:b,stroke:e.color,"stroke-width":P(t,`chart.grid.strokeWidth`,1),"stroke-linecap":`round`}));let x=o?a?n.right+l+u+5+d+f:n.left-l-u-d:a?g+l+u+5+d:g-i.dataLabels/2;p.push(I(e.name,{transform:`translate(${x}, ${y+(b-y)/2}) rotate(-90)`,"font-size":i.dataLabels*.8,"text-anchor":`middle`,fill:e.color})),M(e.scale.ticks).forEach(r=>{let s=(r-e.scale.min)/(e.scale.max-e.scale.min||1),d=b-s*(b-y);Number.isFinite(d)&&(c&&p.push(A(`line`,{"data-cy":`axis-y-tick`,x1:o||a?g:g+3-l-f,x2:o?a?g+l:g-l:a?g+l:g-f,y1:d,y2:d,stroke:e.color,"stroke-width":1,"stroke-linecap":`round`})),p.push(I(Oe(r,t),{"data-cy":`axis-y-label`,transform:`translate(${o?a?n.right+l+u+5:n.left-l-u-5:a?g+l+u+5:g-5-f}, ${d+i.dataLabels/3})`,"font-size":i.dataLabels,"text-anchor":a?`start`:`end`,fill:e.color})))})}),F(`g`,{"data-layer":`individual-scale-labels`},p.join(``))}function Fe(e){return[...new Set(e.flatMap(e=>M(e.plots)).map(e=>Number(e.x)).filter(Number.isFinite))].sort((e,t)=>e-t)}function Ie(e,t,n=1){let{drawingArea:r,config:i}=e,a=Fe(t),o=r.width*.05;if(a.length<2)return Math.max(1e-5,o/Math.max(1,n));let s=a.slice(1).reduce((e,t,n)=>{let r=a[n],i=Math.abs(t-r);return i>0?Math.min(e,i):e},1/0),c=k(P(i,`bar.periodGap`,.2),.2),l=Number.isFinite(s)&&s>0?s*(1-c):o;return Math.max(1e-5,l/Math.max(1,n))}function Le(e,t,n){let{config:r}=e,i=k(P(r,`bar.innerGap`,.05),.05),a=P(r,`bar.borderRadius`,0),o=[];if(n){let n=Ie(e,t,1),r=n*Math.min(Math.abs(i),.95),s=Math.max(1e-5,n-r);return t.forEach((t,n)=>{let r=Number.isFinite(Number(t.__zeroY))?Number(t.__zeroY):U(e);M(t.plots).forEach(i=>{if(!i||i.value===null||i.value===void 0||!Number.isFinite(Number(i.value))||!Number.isFinite(Number(i.x))||!Number.isFinite(Number(i.y)))return;let c=i.x-s/2,{y:l,height:u}=H(e,t,i,r);i.__barLabelX=i.x,o.push(A(`rect`,{"data-cy":`datapoint-bar`,x:c,y:l,width:s,height:u,rx:a,fill:K(e,t,n,Number(i.value)),...$(e,t)}))})}),F(`g`,{"data-layer":`bars`},o.join(``))}let s=Math.max(1,t.length),c=Ie(e,t,s),l=c*Math.min(Math.abs(i),.95),u=Math.max(1e-5,c-l),d=c*s;return t.forEach((t,n)=>{let r=Number.isFinite(Number(t.__zeroY))?Number(t.__zeroY):U(e);M(t.plots).forEach(i=>{if(!i||i.value===null||i.value===void 0||!Number.isFinite(Number(i.value))||!Number.isFinite(Number(i.x))||!Number.isFinite(Number(i.y)))return;let s=i.x-d/2+c*n+l/2,{y:f,height:p}=H(e,t,i,r);i.__barLabelX=s+u/2,o.push(A(`rect`,{"data-cy":`datapoint-bar`,x:s,y:f,width:u,height:p,rx:a,fill:K(e,t,n,Number(i.value)),...$(e,t)}))})}),F(`g`,{"data-layer":`bars`},o.join(``))}function Re(e,t){let{config:n,drawingArea:r}=e,i=Y(n),a=t.filter(e=>e.type===`bar`);if(!a.length)return``;if(Z(e))return Le(e,a,i);let o=Math.max(1,...t.map(e=>M(e.plots).length)),s=r.width/o,c=k(P(n,`bar.periodGap`,.2),.2),l=k(P(n,`bar.innerGap`,.05),.05),u=P(n,`bar.borderRadius`,0),d=[];if(i){let t=Math.max(1e-5,s*.9),n=t*Math.min(Math.abs(l),.95);return a.forEach((i,a)=>{let o=Number.isFinite(Number(i.__zeroY))?Number(i.__zeroY):U(e);M(i.plots).forEach((c,l)=>{if(!c||c.value===null||c.value===void 0||!Number.isFinite(Number(c.value))||!Number.isFinite(Number(c.y)))return;let f=r.left+s*l+s*.05+n/2,{y:p,height:m}=H(e,i,c,o);c.__barLabelX=f+Math.max(1e-5,t-n)/2,d.push(A(`rect`,{"data-cy":`datapoint-bar`,x:f,y:p,width:Math.max(1e-5,t-n),height:m,rx:u,fill:K(e,i,a,Number(c.value)),...$(e,i)}))})}),F(`g`,{"data-layer":`bars`},d.join(``))}let f=s*(1-c),p=f/Math.max(1,a.length),m=p*Math.min(Math.abs(l),.95);return U(e),a.forEach((t,n)=>{let i=Number.isFinite(Number(t.__zeroY))?Number(t.__zeroY):U(e);M(t.plots).forEach((a,o)=>{if(!a||a.value===null||a.value===void 0||!Number.isFinite(Number(a.value))||!Number.isFinite(Number(a.y)))return;let c=r.left+s*o+(s-f)/2+p*n+m/2,{y:l,height:h}=H(e,t,a,i);a.__barLabelX=c+Math.max(1e-5,p-m)/2,d.push(A(`rect`,{"data-cy":`datapoint-bar`,x:c,y:l,width:Math.max(1e-5,p-m),height:h,rx:u,fill:K(e,t,n,Number(a.value)),...$(e,t)}))})}),F(`g`,{"data-layer":`bars`},d.join(``))}function ze(e){let{config:t,drawingArea:n,scale:r,series:i}=e;return z(t)||Y(t)?i.flatMap(e=>M(e.__scaleYLabels)):M(r.ticks).map(e=>{let t=(e-r.min)/(r.max-r.min||1);return{value:e,y:n.bottom-t*n.height}})}function Be(e,t,n){let{drawingArea:r}=e,i=r.width/Math.max(1,n);return r.left+i*t}function Ve(e,t){let{config:n,drawingArea:r}=e,i=Math.max(1,...t.map(e=>M(e.plots).length)),a=r.top,o=r.bottom;if(Z(e)){let e=[...new Set(t.flatMap(e=>M(e.plots)).map(e=>Number(e.x)).filter(Number.isFinite))].sort((e,t)=>e-t);return e.length?P(n,`chart.grid.position`,`middle`)===`middle`?e.map((e,t,n)=>{if(t===0)return null;let r=n[t-1],i=r+(e-r)/2;return`M${i},${a} L${i},${o}`}).filter(Boolean).join(` `):e.map(e=>`M${e},${a} L${e},${o}`).join(` `):``}let s=i+ +(P(n,`chart.grid.position`,`middle`)===`middle`);return Array.from({length:s}).map((t,r)=>{let s=P(n,`chart.grid.position`,`middle`)===`middle`?Be(e,r,i):Q(e,r,i);return`M${s},${a} L${s},${o}`}).join(` `)}function He(e){let{config:t,drawingArea:n,scale:r,series:i}=e,a=P(t,`chart.grid.show`,!0),o=P(t,`chart.grid.showHorizontalLines`,!0),s=P(t,`chart.grid.showVerticalLines`,!1),c=P(t,`chart.grid.stroke`,`#CCCCCC`),l=k(P(t,`chart.grid.strokeWidth`,.5),.5),u=[];if(a&&o&&ze(e).forEach(e=>{Number.isFinite(Number(e.y))&&u.push(A(`line`,{"data-cy":`xy-grid-horizontal-line`,x1:n.left,x2:n.right,y1:e.y,y2:e.y,stroke:c,"stroke-width":l,"stroke-linecap":`round`}))}),a&&s){let t=Ve(e,i);t&&u.push(A(`path`,{"data-cy":`xy-grid-vertical-line`,d:t,stroke:c,"stroke-width":l,"stroke-linecap":`round`}))}u.push(A(`line`,{x1:n.left,y1:n.bottom,x2:n.right,y2:n.bottom,stroke:c,"stroke-width":l,"stroke-linecap":`round`}));let d=J(t)?n.right:n.left;return u.push(A(`line`,{x1:d,y1:n.top,x2:d,y2:n.bottom,stroke:c,"stroke-width":l,"stroke-linecap":`round`})),r.min<0&&r.max>0&&u.push(A(`line`,{x1:n.left,y1:U(e),x2:n.right,y2:U(e),stroke:c,"stroke-width":l,"stroke-dasharray":4,"stroke-linecap":`round`})),F(`g`,{"data-layer":`grid`},u.join(``))}function Ue(e){return e&&typeof e==`object`&&Number.isFinite(Number(e.x))&&Number.isFinite(Number(e.y))}function Z(e){return e.isContinuous?!0:M(e.series).some(e=>M(e.series).some(Ue))}function We(e){if(e.xScale&&Number.isFinite(Number(e.xScale.min))&&Number.isFinite(Number(e.xScale.max)))return{min:Number(e.xScale.min),max:Number(e.xScale.max)};let t=M(e.series).flatMap(e=>M(e.series)).filter(Ue).map(e=>Number(e.x));if(!t.length)return{min:0,max:1};let n=Math.min(...t),r=Math.max(...t);return n===r?{min:n-1,max:r+1}:{min:n,max:r}}function Ge(e,t){let{drawingArea:n,config:r}=e,i=We(e),a=(Number(t)-i.min)/(i.max-i.min||1),o=P(r,`chart.grid.labels.xAxis.reverse`,!1)?1-a:a;return n.left+n.width*o}function Ke(t,n,r){let{config:i}=t,a=e({v:n,p:P(i,`chart.labels.prefix`,``),s:P(i,`chart.labels.suffix`,``),r:P(i,`chart.grid.labels.xAxis.rounding`,0)});return y(P(i,`chart.grid.labels.xAxis.formatter`,null),n,a,{datapoint:n,seriesIndex:null})}function qe(e){let{xScale:t,config:n}=e,r=M(t?.ticks);return(P(n,`chart.grid.labels.xAxis.reverse`,!1)?[...r].reverse():r).map((t,n)=>({id:`continuous_x_label_${n}`,text:Ke(e,t,n),value:t,x:Ge(e,t),index:n,absoluteIndex:n}))}function Q(e,t,n){let{drawingArea:r,config:i}=e,a=P(i,`chart.grid.position`,`middle`),o=r.width,s=a===`middle`?o/Math.max(1,n):o/Math.max(1,n-1);return a===`middle`?r.left+s/2+s*t:r.left+s*t}async function Je(e,t){let{config:n}=e,r=Math.max(0,...t.map(e=>M(e.plots).length));return await O({values:P(n,`chart.grid.labels.xAxisLabels.values`,[]),maxDatapoints:r,formatter:P(n,`chart.grid.labels.xAxisLabels.datetimeFormatter`,null),start:k(e.slotStartIndex??e.startAbs,0),end:k(e.slotEndIndex??e.endAbs,r)})}async function Ye(e,t){let{config:n}=e,r=P(n,`chart.grid.labels.xAxisLabels`,{}),i=M(P(n,`chart.grid.labels.xAxisLabels.values`,[])),a=Math.max(0,...t.map(e=>M(e.plots).length)),o=e.slotStartIndex!==void 0||e.startAbs!==void 0,s=e.slotEndIndex!==void 0||e.endAbs!==void 0,c=o||s,l=Math.max(0,Math.floor(k(e.slotStartIndex??e.startAbs,0))),u=Math.max(l,Math.floor(k(e.slotEndIndex??e.endAbs,l+a))),d=await Je(e,t),f=c?Math.max(a,i.length,u):a,p=await O({values:i,maxDatapoints:f,formatter:P(n,`chart.grid.labels.xAxisLabels.datetimeFormatter`,null),start:0,end:f}),m=d.map(e=>e?.text??``),h=p.map(e=>e?.text??``),g=Math.max(1,Math.floor(k(r.modulo,1))),y=p.length||f,b=v({configuredModulo:g,visibleTexts:m,allTexts:h,startAbs:l,isZoomed:c&&y>0&&(l>0||u<y)}),x=_(!!r.showOnlyFirstAndLast,!!r.showOnlyAtModulo,b,m,h,l,e.selectedXIndex??null,m.length);if(!r.showFirstAndLast||r.showOnlyFirstAndLast||!x.length)return x;let S=x.length-1;return x.map((e,t)=>t!==0&&t!==S?e:{...e,text:m[t]??``})}async function Xe(e,t){return Z(e)?qe(e):await Ye(e,t)}function Ze(e,t,n,r){return Z(e)?t.x:Q(e,n,r)}function Qe(e){let t=e.userConfig??e.sourceConfig??e.props?.config??{};return D(t,`chart.grid.labels.xAxisLabels.rotation`)?k(P(e.config,`chart.grid.labels.xAxisLabels.rotation`,0),0):P(e.config,`chart.grid.labels.xAxisLabels.autoRotate.enable`,!1)?k(P(e.config,`chart.grid.labels.xAxisLabels.autoRotate.angle`,0),0):k(P(e.config,`chart.grid.labels.xAxisLabels.rotation`,0),0)}async function $e(e,t){let{config:n,drawingArea:r}=e;if(!t[0]||!P(n,`chart.grid.labels.xAxisLabels.show`,!0))return``;P(n,`chart.grid.labels.xAxisLabels`,{});let i=k(P(n,`chart.grid.labels.xAxisLabels.fontSize`,12),12),o=P(n,`chart.grid.labels.xAxisLabels.color`,P(n,`chart.grid.labels.color`,`#2A2A2A`)),s=Qe(e),c=Math.max(1,t[0].plots.length),l=await Xe(e,t),u=s>0?`start`:s<0?`end`:`middle`,d=l.map((t,l)=>{let d=typeof t==`string`?t:t?.text;if(!d)return``;let f=`translate(${Ze(e,t,l,c)}, ${r.bottom+i*1.5}), rotate(${s})`;return String(d).includes(`
|
|
2
2
|
`)?F(`text`,{class:`vue-data-ui-time-label`,"data-cy":`time-label`,"text-anchor":u,"font-size":i,stroke:P(n,`chart.backgroundColor`,`#FFFFFF`),"stroke-linecap":`round`,"stroke-linejoin":`round`,"paint-order":`stroke fill`,fill:o,transform:f},a({content:String(d),fontSize:i,fill:o,stroke:P(n,`chart.backgroundColor`,`#FFFFFF`),x:0,y:0})):I(d,{class:`vue-data-ui-time-label`,"data-cy":`time-label`,"text-anchor":u,"font-size":i,stroke:P(n,`chart.backgroundColor`,`#FFFFFF`),"stroke-linecap":`round`,"stroke-linejoin":`round`,"paint-order":`stroke fill`,fill:o,transform:f})}).join(``);return F(`g`,{"data-layer":`x-axis-labels`},d)}function et(e){let{config:t,drawingArea:n,height:r}=e,i=q(t),a=P(t,`chart.grid.labels.axis.xLabel`,``),o=P(t,`chart.grid.labels.axis.yLabel`,``),s=P(t,`chart.grid.labels.axis.color`,P(t,`chart.grid.labels.color`,`#2A2A2A`)),c=k(P(t,`chart.grid.labels.axis.yLabelOffsetX`,0),0),l=k(P(t,`chart.grid.labels.axis.xLabelOffsetY`,0),0),u=k(P(t,`chart.grid.labels.yAxis.crosshairSize`,0),0),d=k(P(t,`chart.grid.labels.yAxis.scaleValueOffsetX`,0),0),f=k(P(t,`chart.grid.labels.yAxis.labelWidth`,0),0),p=J(t),m=[];if(a&&m.push(I(a,{x:n.left+n.width/2,y:Math.min(r-4,n.bottom+i.xAxis*3+l),"font-size":i.yAxis,"text-anchor":`middle`,fill:s})),o){let e=p?n.right+u+d+5+f+c:n.scaleLabelX-u-d-f-c,t=n.top+n.height/2;m.push(I(o,{x:e,y:t,transform:`rotate(-90 ${e} ${t})`,"font-size":i.yAxis,"text-anchor":`middle`,fill:s}))}return F(`g`,{"data-layer":`axis-labels`},m.join(``))}async function tt(e,t){let{config:n,drawingArea:r}=e,i=P(n,`chart.grid.labels.xAxisLabels.show`,!0),a=P(n,`chart.grid.labels.xAxis.showCrosshairs`,!1);if(!i||!a||!t[0])return``;let o=k(P(n,`chart.grid.labels.xAxis.crosshairSize`,6),6),s=!!P(n,`chart.grid.labels.xAxis.crosshairsAlwaysAtZero`,!1),c=Math.max(1,t[0].plots.length),l=await Xe(e,t),u=U(e),d=l.map((t,n)=>{if(!(typeof t==`string`?t:t?.text))return``;let i=Z(e)?t.x:Q(e,n,c);return`M${i},${s?u-(u===r.bottom?0:o/2):r.bottom} L${i},${s?u+o/(u===r.bottom?1:2):r.bottom+o}`}).filter(Boolean).join(` `);return d?F(`g`,{"data-layer":`x-axis-ticks`},A(`path`,{d,stroke:P(n,`chart.grid.stroke`,`#CCCCCC`),"stroke-width":1,"stroke-linecap":`round`,"data-cy":`axis-x-tick`})):``}function nt(e,t){let{config:n,width:r}=e,i=P(n,`chart.legend`,{}),a=k(i.fontSize,12),o=k(i.markerSize,10),s=k(i.itemGap,16),c=k(i.rowGap,8),l=k(i.padding,8),u=Math.max(1,r-l*2),d=[],f=[],p=0;return t.forEach(e=>{let t=String(e.name??``),n=o+6+j(t,a)+s;f.length&&p+n>u&&(d.push({items:f,width:p}),f=[],p=0),f.push({serie:e,label:t,itemWidth:n}),p+=n}),f.length&&d.push({items:f,width:p}),{rows:d,fontSize:a,markerSize:o,itemGap:s,rowGap:c,padding:l,height:d.length*Math.max(o,a)+Math.max(0,d.length-1)*c+l*2}}function rt(e,t){let{config:n,width:r,height:i}=e;if(!P(n,`chart.legend.show`,!0)||!t.length)return``;let a=P(n,`chart.legend`,{}),o=a.position||`bottom`,s=a.color||P(n,`chart.color`,`#2A2A2A`),c=nt(e,t),l=Math.max(c.markerSize,c.fontSize),u=o===`top`?c.padding+l:i-c.height+c.padding+l,d=[];return c.rows.forEach((e,t)=>{let n=Math.max(c.padding,r/2-e.width/2),i=u+t*(l+c.rowGap);e.items.forEach(({serie:e,label:t,itemWidth:r})=>{d.push(A(`rect`,{x:n,y:i-c.markerSize/2,width:c.markerSize,height:c.markerSize,rx:2,fill:e.color})),d.push(I(t,{x:n+c.markerSize+6,y:i+2,"font-size":c.fontSize,"dominant-baseline":`middle`,fill:s})),n+=r})}),F(`g`,{"data-layer":`legend`},d.join(``))}function it(e,t){return`areaGradient_${t}_${W()}`}function at(e,t){let{config:n}=e;if(!P(n,`line.area.useGradient`,!1))return``;let r=k(P(n,`line.area.opacity`,30),30),i=t.filter(e=>e.type===`line`&&e.useArea).map((t,n)=>F(`linearGradient`,{id:it(e,n),x1:`0%`,x2:`0%`,y1:`0%`,y2:`100%`},[A(`stop`,{offset:`0%`,"stop-color":o(h(u(t.color),.03),r),"stop-opacity":1}),A(`stop`,{offset:`100%`,"stop-color":t.color,"stop-opacity":0})].join(``))).join(``);return i?F(`defs`,{},i):``}function ot(e,n){let{config:r}=e,i=!!P(r,`line.cutNullValues`,!1),a=[];return n.filter(e=>e.type===`line`&&e.useArea).forEach((n,r)=>{let o=M(n.plots),s=o.filter(e=>e&&e.value!==null);if(s.length<2)return;let l=Number.isFinite(Number(n.__zeroY))?Number(n.__zeroY):U(e),u=Te(e,n,r);if(n.smooth&&!n.useStepper){c(i?o:s,l,i).forEach(e=>{e&&a.push(A(`path`,{d:e,fill:u,"data-cy":`datapoint-line-area-smooth`}))});return}(n.useStepper?f(i?o:s,l):i?t(o,l):x(s,l)).split(`;`).filter(Boolean).forEach(e=>{a.push(A(`path`,{d:`M${e}Z`,fill:u,"data-cy":`datapoint-line-area-straight`}))})}),F(`g`,{"data-layer":`line-areas`},a.join(``))}function st(e,t){let n=k(t.slotStartIndex??t.startAbs,0);return M(e.dashIndices).map(e=>Number(e)-n).filter(Number.isFinite)}function ct(e,t,n,r,i){let{config:a}=e,o=k(t.strokeWidth||P(a,`line.strokeWidth`,2),2);return A(`path`,{d:`M${r}`,fill:`none`,stroke:Se(e,t,n),"stroke-width":o,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-dasharray":i?o*2:0})}function lt(e,t){let{config:r}=e,a=t.filter(e=>e.type===`line`),o=!!P(r,`line.cutNullValues`,!1),c=[];return a.forEach((t,a)=>{let u=o?M(t.plots):M(t.plots).filter(e=>e.value!==null),m=u.filter(e=>e.value!==null);if(!(m.length<2)){if(M(t.dashIndices).length>0&&!t.useStepper){let i=st(t,e);(t.smooth||P(r,`line.smooth`,!1)?s(u,i):n(u,i)).forEach(n=>{n?.path&&c.push(ct(e,t,a,n.path,!!n.dashed))});return}(t.useStepper?f(u).split(`;`).filter(Boolean):[t.smooth||P(r,`line.smooth`,!1)?o?i(u):l(m):o?p(u):d(m,!1,!0)]).forEach(n=>{n&&c.push(ct(e,t,a,n,!!t.dashed))})}}),F(`g`,{"data-layer":`lines`},c.join(``))}function ut(e,t,n){let{config:r}=e;return P(r,`plot.useGradient`,!1)?`url(#${Ce(e,n)})`:P(r,`plot.dot.useSerieColor`,!0)?t.color:P(r,`plot.dot.fill`,t.color)}function $(e,t){let n=P(e.config,`bar.border`,{});return{stroke:n.useSerieColor?t.color:n.stroke,"stroke-width":k(n.strokeWidth,0)}}function dt(e,t){let{config:n}=e,r=t.filter(e=>e.type===`plot`),i=P(n,`plot.radius`,4),a=P(n,`plot.dot.strokeWidth`,2),o=P(n,`chart.backgroundColor`,`#FFFFFF`),s=[];return r.forEach((t,r)=>{t.plots.forEach((c,l)=>{ae(c.value)&&s.push(N({dataCy:`xy-plot-${r}-${l}`,shape:t.shape,plot:c,radius:t.radius||i,fill:ut(e,t,r),stroke:P(n,`plot.dot.useSerieColor`,!0)?o:t.color,strokeWidth:a}))})}),F(`g`,{"data-layer":`plots`},s.join(``))}function ft(e){return![null,void 0,NaN,1/0,-1/0].includes(e)}function pt(e,t,n){let r=e[t-1],i=e[t+1],a=!!r&&!!i&&r.value==null&&i.value==null||!r&&!!i&&i.value==null||!!r&&!i&&r.value==null;return ft(e[t]?.value)&&a&&!!P(n,`line.cutNullValues`,!1)}function mt(e,t,n,r,i){let{config:a}=e;if(!n||!ft(n.value))return!1;if(!(i>k(P(a,`line.dot.hideAboveMaxSerieLength`,1/0),1/0)))return!0;let o=e.selectedSerieIndex??null,s=e.selectedMinimapIndex??null;return o!==null&&o===r||s!==null&&s===r||pt(t.plots,r,a)}function ht(e,t){let{config:n}=e,r=t.filter(e=>e.type===`line`),i=Math.max(0,...r.map(e=>M(e.plots).length)),a=P(n,`line.radius`,4),o=P(n,`line.dot.strokeWidth`,2),s=P(n,`chart.backgroundColor`,`#FFFFFF`),c=[];return r.forEach((t,r)=>{t.plots.forEach((l,u)=>{mt(e,t,l,u,i)&&c.push(N({dataCy:`datapoint-line-plot`,shape:t.shape,plot:l,radius:t.radius||a,fill:we(e,t,r),stroke:P(n,`line.dot.useSerieColor`,!0)?s:t.color,strokeWidth:o}))})}),F(`g`,{"data-layer":`line-dots`},c.join(``))}function gt(e,t){let{config:n}=e;if(Y(n))return``;let r=P(n,`line.interLine`,{}),i=M(r.pairs),a=M(r.colors);if(!i.length)return``;let o=t.filter(e=>e.type===`line`),s=k(r.fillOpacity,.2),c=!!P(n,`line.cutNullValues`,!1),l=[];return i.forEach((e,t)=>{let[n,r]=Array.isArray(e)?e:[e?.a,e?.b];if(!n||!r)return;let i=o.find(e=>e.name===n),u=o.find(e=>e.name===r);if(!i||!u)return;let d=a?.[t]?.[0]??i.color,f=a?.[t]?.[1]??u.color;S({lineA:M(i.plots),lineB:M(u.plots),smoothA:!!i.smooth,smoothB:!!u.smooth,colorLineA:d,colorLineB:f,sampleStepPx:2,cutNullValues:c}).forEach((e,i)=>{l.push(A(`path`,{"data-cy":`interline-area`,d:e.d,fill:e.color,"fill-opacity":s,stroke:`none`,"pointer-events":`none`,"data-key":`inter_${n}_${r}_${t}_${i}`}))})}),l.length?F(`g`,{"data-layer":`interline-areas`},l.join(``)):``}function _t(e){let t=P(e,`chart.title`,{}),n=P(t,`subtitle`,{});if(!t.show)return 0;let r=k(t.fontSize,20),i=n.text?k(n.fontSize,14):0,a=k(t.paddingTop,12),o=k(t.paddingBottom,6);return a+r+(n.text?i+4:0)+o}function vt(e){let{config:t,width:n}=e,r=P(t,`chart.title`,{}),i=P(r,`subtitle`,{});if(!r.show||!r.text)return``;let a=r.textAlign||`center`,o=a===`left`?k(r.paddingLeft,12):a===`right`?n-k(r.paddingRight,12):n/2,s=a===`left`?`start`:a===`right`?`end`:`middle`,c=k(r.fontSize,20),l=k(i.fontSize,14),u=k(r.paddingTop,12)+c,d=[I(r.text,{"data-cy":`xy-div-title`,x:o,y:u,"font-size":c,"font-weight":r.bold?`700`:`400`,"text-anchor":s,fill:r.color||P(t,`chart.color`,`#2A2A2A`)})];return i.text&&d.push(I(i.text,{"data-cy":`xy-div-subtitle`,x:o,y:u+l+4,"font-size":l,"font-weight":i.bold?`700`:`400`,"text-anchor":s,fill:i.color||r.color||P(t,`chart.color`,`#2A2A2A`)})),F(`g`,{"data-layer":`title`},d.join(``))}function yt(e){if(!e.svgTitle)return``;let t=[e.svgTitle];return F(`desc`,{"aria-hidden":`true`},t.join(``))}function bt(e,t,n,r,i){return!n||n.value===null||n.value===void 0||!Number.isFinite(Number(n.value))||!P(e.config,`dataLabels.show`,!0)||!P(e.config,`${i}.labels.show`,!1)?!1:!Object.hasOwn(t,`dataLabels`)||t.dataLabels===!0||e.selectedSerieIndex===r||e.selectedMinimapIndex===r}function xt(t,n,r,i){let{config:o}=t,s=k(P(o,`${i}.labels.fontSize`,P(o,`chart.labels.fontSize`,12)),12),c=P(o,`${i}.labels.color`,P(o,`chart.color`,`#2A2A2A`)),l=e({p:n.prefix||P(o,`chart.labels.prefix`,``),v:r.value,s:n.suffix||P(o,`chart.labels.suffix`,``),r:P(o,`${i}.labels.rounding`,0)}),u=Z(t)&&Number.isFinite(Number(r.x))?`x: ${e({v:r.x,r:P(o,`chart.grid.labels.xAxis.rounding`,0)})}\ny: ${l}`:y(P(o,`${i}.labels.formatter`,null),r.value,l,{datapoint:r,serie:n});return a({content:u,fontSize:s,fill:c,x:0,y:0})}function St(e,t,n){let r=P(e.config,`${n}.labels.textAnchor`,null);return r===null?k(P(e.config,`${n}.labels.rotation`,0),0)===0?`middle`:P(e.config,`${n}.labels.alwaysOnTop`,!1)||t.value>=0?`start`:`end`:r}function Ct(e,t,n){let r=k(P(e.config,`${n}.labels.offsetX`,0),0),i=k(P(e.config,`${n}.labels.offsetY`,-12),-12),a=k(P(e.config,`${n}.labels.rotation`,0),0),o=!!P(e.config,`${n}.labels.alwaysOnTop`,!1);return`translate(${t.x+r}, ${t.y+(o||t.value>=0?i:-i*3)}) rotate(${a})`}function wt(e,t,n){let r=k(P(e.config,`bar.labels.offsetX`,0),0),i=k(P(e.config,`bar.labels.offsetY`,-6),-6),a=k(P(e.config,`bar.labels.rotation`,0),0),o=!!P(e.config,`bar.labels.alwaysOnTop`,!1),s=Number.isFinite(Number(t.__zeroY))?Number(t.__zeroY):U(e),c=Math.abs(s-n.y),l=n.__barLabelX??n.x,u=n.y+(o?i-(n.value<0?c:0):n.value>=0?i:-i*3);return`translate(${l+r}, ${u}) rotate(${a})`}function Tt(e,t){let{config:n}=e,r=k(P(n,`chart.labels.fontSize`,12),12),i=P(n,`chart.backgroundColor`,`#FFFFFF`),a=[];return t.forEach(t=>{M(t.plots).forEach((o,s)=>{let c=t.type;[`line`,`bar`,`plot`].includes(c)&&bt(e,t,o,s,c)&&a.push(F(`text`,{"data-cy":`datapoint-${c}-label`,transform:c===`bar`?wt(e,t,o):Ct(e,o,c),"text-anchor":St(e,o,c),"font-size":P(n,`${c}.labels.fontSize`,r),fill:P(n,`${c}.labels.color`,P(n,`chart.color`,`#2A2A2A`)),stroke:i,"paint-order":`stroke`},xt(e,t,o,c)))})}),F(`g`,{"data-layer":`datapoint-labels`},a.join(``))}function Et(e){return k(e.slotStartIndex??e.startAbs,0)}function Dt(e,t){let n=Math.max(0,...t.map(e=>M(e.plots).length));return k(e.slotEndIndex??e.endAbs,n)}function Ot(e,t){let{drawingArea:n,config:r}=e;return P(r,`chart.grid.position`,`middle`)===`middle`?n.width/Math.max(1,t):n.width/Math.max(1,t-1)}function kt(e,t,n){let{drawingArea:r,config:i}=e,a=Ot(e,n);return P(i,`chart.grid.position`,`middle`)===`middle`?r.left+a*t:r.left+a*t-a/2}function At(e,t){return Ot(e,t)}function jt(e,t,n,r,i,a){let{drawingArea:o}=e,s=t.caption??{};if(!s.text)return``;let c=At(e,a)*i,l=s.width===`auto`?c:k(s.width,c),u=kt(e,r,a)-(s.width===`auto`?0:l/2-c/2),d=o.top+k(s.offsetY,0);return F(`foreignObject`,{"data-key":`highlight_area_caption_${n}`,x:u,y:d,width:l,height:1,overflow:`visible`},F(`div`,{xmlns:`http://www.w3.org/1999/xhtml`,"data-cy":`highlight-area-caption`,style:[`padding:${k(s.padding,0)}px`,`text-align:${s.textAlign||`center`}`,`font-size:${k(s.fontSize,12)}px`,`color:${s.color||`#2A2A2A`}`,`font-weight:${s.bold?`bold`:`normal`}`].join(`;`)},w(s.text)))}function Mt(e,t){let{config:n,drawingArea:r}=e,i=M(P(n,`chart.highlightArea`,[]));if(!i.length)return``;let a=Math.max(1,...t.map(e=>M(e.plots).length)),s=Et(e),c=Dt(e,t),l=[];return i.forEach((t,n)=>{if(!t?.show)return;let i=k(t.from,0),u=Math.min(k(t.to,i),a-1);if(u<i)return;for(let d=i;d<=u;d+=1){if(d<s||d>c-1)continue;let i=d-s;l.push(A(`rect`,{"data-cy":`highlight-area`,"data-key":`highlight_area_${n}_${d}`,x:kt(e,i,a),y:r.top,width:At(e,a),height:Math.max(1,r.height),fill:o(t.color,k(t.opacity,20)),"pointer-events":`none`}))}let d=Math.max(i,s);d<=Math.min(u,c-1)&&l.push(jt(e,t,n,d-s,u-i+1,a))}),l.length?F(`g`,{"data-layer":`highlight-areas`},l.join(``)):``}function Nt(e,t){if(t==null)return null;let{drawingArea:n,scale:r}=e,i=U(e),a=r.max-r.min||1;return i-(Number(t)-0)/a*n.height}function Pt(e){return j(e.text,k(e.fontSize,12))}function Ft(e,t,n){let r=k(e.fontSize,12),i=e.padding??{},a=e.border??{},o=Pt(e),s=r,c;return c=e.textAnchor===`middle`?t-o/2-k(i.left,0):e.textAnchor===`end`?t-o-k(i.right,0):t-k(i.left,0),{x:c,y:n-s*.75-k(i.top,0),width:o+k(i.left,0)+k(i.right,0),height:s+k(i.top,0)+k(i.bottom,0),fill:e.backgroundColor,stroke:a.stroke,rx:a.rx,ry:a.ry,"stroke-width":a.strokeWidth}}function It(e){let{config:t,drawingArea:n}=e;if(Y(t))return``;let r=M(P(t,`chart.annotations`,[])).filter(e=>e?.show&&(e.yAxis?.yTop!==null||e.yAxis?.yBottom!==null)&&(e.yAxis?.yTop!==void 0||e.yAxis?.yBottom!==void 0));if(!r.length)return``;let i=[];return r.forEach((t,r)=>{let a=t.yAxis??{},s=a.label??{},c=a.line??{},l=a.area??{},u=a.yTop,d=a.yBottom,f=u!=null&&d!=null&&u!==d,p=Nt(e,u),m=Nt(e,d),h=Number.isFinite(p),g=Number.isFinite(m);if(!h&&!g)return;let _=[];if(h&&_.push(A(`line`,{x1:n.left,y1:p,x2:n.right,y2:p,stroke:c.stroke,"stroke-width":c.strokeWidth,"stroke-dasharray":c.strokeDasharray,"stroke-linecap":`round`,"data-cy":`xy-annotation-y-top-line`})),g&&_.push(A(`line`,{x1:n.left,y1:m,x2:n.right,y2:m,stroke:c.stroke,"stroke-width":c.strokeWidth,"stroke-dasharray":c.strokeDasharray,"stroke-linecap":`round`,"data-cy":`xy-annotation-y-bottom-line`})),f&&h&&g&&_.push(A(`rect`,{x:n.left,y:Math.min(p,m),width:n.width,height:Math.abs(p-m),fill:o(l.fill,k(l.opacity,20)),"data-cy":`xy-annotation-y-area`,"pointer-events":`none`})),s.text){let e=s.padding??{},t=h&&g?Math.min(p,m):h?p:m,r=(s.position===`start`?n.left+k(e.left,0):n.right-k(e.right,0))+k(s.offsetX,0),i=t-k(s.fontSize,12)/3+k(s.offsetY,0)-k(e.top,0),a=Ft(s,r,i);Number.isFinite(a.y)&&Number.isFinite(i)&&(_.push(A(`rect`,{class:`vue-ui-xy-annotation-label-box`,...a,"data-cy":`xy-annotation-label-box`})),_.push(I(s.text,{class:`vue-ui-xy-annotation-label`,x:r,y:i,"font-size":s.fontSize,fill:s.color,"text-anchor":s.textAnchor,"data-cy":`xy-annotation-label`})))}i.push(F(`g`,{"data-layer":`annotation`,"data-key":`annotation_y_${r}`},_.join(``)))}),i.length?F(`g`,{"data-layer":`annotations`},i.join(``)):``}function Lt(e,t){let n=e.additionalSvgContent;return typeof n==`function`?n({width:e.width,height:e.height,drawingArea:e.drawingArea,scale:e.scale,config:e.config,series:t.map(e=>({...e,plots:M(e.plots).map(e=>({...e}))}))})??``:n??``}async function Rt(e){let t=e.config,n=k(e.width,t.chart.width??1e3),r=k(e.height,t.chart.height??600),i=ve({...e,config:t,width:n,height:r}),a=Me({...e,config:t,width:n,height:r,scale:pe(t,e.scale,i)},i),o=a.series;return`
|
|
3
3
|
<svg
|
|
4
4
|
xmlns="${T}"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{n as t,t as n}from"./tableIntegration-CNoJ1CIY.js";import{n as r,t as i}from"./userOptionsSlots-DYuo-E5m.js";import{$ as a,D as o,Dt as s,Ft as ee,Ht as c,Jt as l,Kt as te,Mt as ne,S as re,X as ie,Zt as ae,_ as oe,_t as se,at as ce,i as le,in as ue,nn as de,nt as fe,o as pe,pt as me,w as he,wt as ge,zt as _e}from"./lib-zDxoqrgo.js";import{n as ve,t as ye}from"./useHints-BH9r_0Vd.js";import{n as be,r as xe,t as Se}from"./useTimeLabels-Das5O74F.js";import{t as Ce}from"./useConfig-CKdzPrcf.js";import{t as we}from"./usePrinter-CnyKPIFM.js";import{n as Te,t as Ee}from"./BaseScanner-8NdoBs7B.js";import{t as De}from"./useNestedProp-CT9phgWx.js";import{t as Oe}from"./useThemeCheck-BKNRbGeC.js";import{t as ke}from"./img-8sM3sVWU.js";import{n as Ae}from"./Title-BRAjxtjG.js";import{t as je}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{a as u,c as Me,i as Ne,l as Pe,n as Fe,o as Ie,r as Le,s as Re,t as ze}from"./useResponsive-D2CPcpda.js";import{t as Be}from"./BaseIcon-Cz30ODFA.js";import{t as Ve}from"./SlicerPreview-GFRs2EWB.js";import{t as He}from"./vue-ui-accordion-Dy5OVFKr.js";import{t as Ue}from"./BaseLegendToggle-Dn_tNvn4.js";import{t as We}from"./useUserOptionState-CXlFnwPv.js";import{t as Ge}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ke}from"./Legend-DokTll4u.js";import{t as qe}from"./vue_ui_xy_canvas-CT-FN9rU.js";import{Teleport as Je,computed as d,createBlock as Ye,createCommentVNode as f,createElementBlock as Xe,createElementVNode as p,createSlots as Ze,createTextVNode as Qe,createVNode as $e,defineAsyncComponent as et,guardReactiveProps as m,mergeProps as tt,nextTick as nt,normalizeClass as rt,normalizeProps as h,normalizeStyle as it,onBeforeUnmount as at,onMounted as ot,openBlock as g,ref as _,renderList as st,renderSlot as v,resolveDynamicComponent as ct,shallowRef as lt,toDisplayString as ut,toRefs as dt,unref as y,useSlots as ft,watch as b,watchEffect as pt,withCtx as x}from"vue";var mt=/* @__PURE__ */ e({default:()=>Ot}),ht=[`id`],gt=[`id`],_t={class:`sr-only`,"aria-live":`polite`,"aria-atomic":`true`},vt=[`id`],yt=[`aria-label`,`aria-describedby`],bt=[`viewBox`],xt=[`x`,`y`,`width`,`height`,`fill`,`fill-opacity`,`stroke`,`stroke-opacity`,`stroke-width`,`stroke-dasharray`],St={key:1,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Ct=[`id`],wt=[`onClick`],Tt={key:4,class:`vue-data-ui-watermark`},Et={key:0},Dt={key:1},Ot=/*#__PURE__*/ je({__name:`vue-ui-xy-canvas`,props:{dataset:{type:Array,default(){return[]}},config:{type:Object,default(){return{}}},selectedXIndex:{type:Number,default:void 0},zoomState:{type:Object,default:null}},emits:[`selectLegend`,`selectX`,`zoomStart`,`zoomEnd`,`zoomReset`,`update:zoomState`,`copyAlt`],setup(e,{expose:je,emit:mt}){let Ot=et(()=>import(`./Tooltip-BUXB0i6z.js`)),kt=et(()=>import(`./DataTable-DSUA5M9p.js`)),At=et(()=>import(`./UserOptions-D65t74CM.js`).then(e=>e.n)),jt=et(()=>import(`./NonSvgPenAndPaper-BLzQuIm6.js`)),Mt=et(()=>import(`./BaseDraggableDialog-T1gEsQid.js`).then(e=>e.n)),{vue_ui_xy_canvas:Nt}=Ce(),{isThemeValid:Pt,warnInvalidTheme:Ft}=Oe(),S=e,It=_(ie()),Lt=_(null),Rt=_(null),C=_(null),w=_(1),zt=_(1),Bt=_(!1),T=_(null),Vt=_(``),Ht=_(null),E=_([]),Ut=_(1),D=_(!0),O=_(!0),Wt=_(null),Gt=_(0),Kt=_(!1),qt=_(null),Jt=_(null),Yt=_(null),Xt=_(null),Zt=_(0),Qt=_(0),$t=_(0),k=_(null),en=_(!1),tn=_(null),nn=_(null),rn=_(!1),an=_(!1),on=_(!1),A=_(null),sn=_(!1),cn=_(!1),ln=_(!1),j=_(null),un=_({x:0,y:0}),M=d(()=>Array.isArray(yn.value)&&yn.value.length>0),N=mt,dn=ft(),P=_(Tn()),F=d(()=>P.value.userOptions),I=d(()=>P.value.style.chart.tooltip),L=d(()=>P.value.style.chart.grid.y.verticalLines),fn=d(()=>P.value.style.chart.grid.x.horizontalLines),R=d(()=>P.value.style.chart.grid.y.axisLabels),z=d(()=>P.value.style.chart.grid.x.timeLabels),B=d(()=>P.value.style.chart.grid),V=d(()=>P.value.style.chart.dataLabels),H=d(()=>P.value.style.chart);ve({config:()=>P.value,dataset:()=>S.dataset,component:`VueUiXyCanvas`,rules:[ye.emptyArray,{test:e=>e.every(e=>e.series.length<300),message:[`👀 Series have < 300 datapoints. Consider:`,``,`▶️ Using VueUiXy instead, if you need more options, or more customization possibilities.`]},{test:e=>e.some(e=>e.series.length>1e4),message:[`👀 The dataset has > 10_000 datapoints. Above this threshold, the dataset is computed through an LTTB algorithm, to preserve the shape of the data without increasing the number of datapoints.`,``,`▶️ If you need this level of detail, you can change config.downsample.threshold and set a higher value. Note that performance can be impacted. JS runtime might crash with > 100_000 datapoints.`]}]});let pn=d(()=>{let e=H.value.title.text||`XY chart`,t=X.value.end-X.value.start;return`${e}. ${Y.value.filter(e=>!E.value.includes(e.absoluteIndex)).length} series. ${t} visible data points.`}),mn=d(()=>{if(j.value===null)return``;let e=j.value+X.value.start;return`${z.value.values.slice(X.value.start,X.value.end)[j.value]?I.value.useDefaultTimeFormat?$.value.slice(X.value.start,X.value.end)[j.value]?.text:Nr.value[j.value]?.text:$.value[e]?.text??`Point ${e+1}`}. ${Y.value.filter(e=>!E.value.includes(e.absoluteIndex)).map(e=>{let t=e.series[j.value],n=t?.value??t??null;return`${e.name}: ${n}`}).join(`. `)}.`}),hn=d(()=>F.value.useCursorPointer),gn=d(()=>P.value.debug);ot(()=>{dn[`chart-background`]&&gn.value&&console.warn(`VueUiXyCanvas does not support the #chart-background slot.`)});let _n=d(()=>ue({defaultConfig:{userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,grid:{x:{axisColor:`#6A6A6A`,timeLabels:{show:!1},axisName:``,horizontalLines:{color:`#6A6A6A`}},y:{axisColor:`#6A6A6A`,axisLabels:{show:!1},axisName:``,verticalLines:{color:`#6A6A6A`}},zeroLine:{color:`#6A6A6A`}},legend:{backgroundColor:`#99999930`},paddingProportions:{left:.05},scale:{max:null,min:null},zoom:{endIndex:null,startIndex:null}}}},userConfig:P.value.skeletonConfig??{}})),{loading:vn,FINAL_DATASET:yn}=Te({...dt(S),FINAL_CONFIG:P,prepareConfig:Tn,skeletonDataset:S.config?.skeletonDataset??[{name:``,series:[0,1,2,3,5,8,13,21,34,55,89,134],type:`line`,smooth:!0,color:`#BABABA`},{name:``,series:[0,.5,1,1.5,2.5,4,6.5,10.5,17,27.5,44.5,67],type:`bar`,color:`#AAAAAA`}],skeletonConfig:ue({defaultConfig:P.value,userConfig:_n.value})}),{userOptionsVisible:bn,setUserOptionsVisibility:xn,keepUserOptionState:Sn}=We({config:P.value}),{svgRef:U}=Ge({config:H.value.title});function Cn(){xn(!0)}function wn(){xn(!1),N(`selectX`,{dataset:null,index:null,indexLabel:null}),T.value=null}function Tn(){let e=De({userConfig:S.config,defaultConfig:Nt}),t={},n=e.theme;if(n){if(!Pt.value(e))Ft(e),t=e;else{let r=De({userConfig:qe[n]||S.config,defaultConfig:e});t={...De({userConfig:S.config,defaultConfig:r}),customPalette:e.customPalette.length?e.customPalette:de[n]||c}}}else t=e;return S.config&&ge(S.config,`style.chart.grid.y.timeLabels`)&&(console.warn(`VueUiXyCanvas: you are using the deprecated config.style.chart.grid.y.timeLabels. It is recommended to move this configuration to config.style.chart.grid.x.timeLabels.`),t.style.chart.grid.x.timeLabels=De({defaultConfig:t.style.chart.grid.x.timeLabels,userConfig:S.config.style.chart.grid.y.timeLabels})),t}let En=ae(S.config);b(()=>S.config,(e,t)=>{let n=ae(e),r=n!==En;En=n;let i=Tn();if(!r){P.value.style.chart.tooltip=i.style.chart.tooltip,W.value.showTooltip=P.value.style.chart.tooltip.show;return}vn.value||(P.value=i),bn.value=!F.value.showOnChartHover,Di(),Zt.value+=1,Qt.value+=1,$t.value+=1,W.value.showTable=P.value.table.show,W.value.showDataLabels=V.value.show,W.value.stacked=H.value.stacked,W.value.showTooltip=I.value.show},{deep:!0}),b(()=>S.dataset,async e=>{Array.isArray(e)&&e.length!==0&&(await nt(),U.value&&!C.value&&(C.value=U.value.getContext(`2d`,{willReadFrequently:!0})),D.value=!0,O.value=!0,await fr(),Sr(),Zt.value+=1,Qt.value+=1,$t.value+=1)},{deep:!0});let Dn=_(H.value.aspectRatio),{isPrinting:On,isImaging:kn,generatePdf:An,generateImage:jn}=we({elementId:`xy_canvas_${It.value}`,fileName:H.value.title.text||`vue-ui-xy-canvas`,options:F.value.print}),W=_({showTable:P.value.table.show,showDataLabels:V.value.show,stacked:H.value.stacked,showTooltip:I.value.show});function Mn(e){Kt.value=e,Gt.value+=1}let Nn=d(()=>he(P.value.customPalette)),Pn=d(()=>E.value.length===J.value.length),G=d(()=>J.value?Math.max(...J.value.filter((e,t)=>Pn.value?!0:!E.value.includes(e.absoluteIndex)).map(e=>e.series.length)):0);function Fn(e){A.value=e,Wr()}let In=_(0),Ln=_(0);function Rn(){if(!C.value||!z.value.show)return 0;let e=$.value||[],t=X.value.start??0,n=X.value.end??0;if(!Math.max(0,n-t))return 0;let r=Math.round(w.value/40*z.value.fontSizeRatio),i=`${z.value.bold?`bold `:``}${r}px ${P.value.style.fontFamily}`;C.value.save(),C.value.font=i;let a=0;for(let r=t;r<n;r+=1){let t=e[r]?.text??`${r+1}`,n=C.value.measureText(String(t));n.width>a&&(a=n.width)}C.value.restore();let o=(z.value.rotation||0)*Math.PI/180,s=r,ee=Math.abs(Math.sin(o))*a+Math.abs(Math.cos(o))*s,c=z.value.offsetY||1,l=w.value/c;return Math.max(0,l+ee+4)}function zn(){In.value=Rn()}function Bn(){Ln.value&&cancelAnimationFrame(Ln.value),Ln.value=requestAnimationFrame(()=>{requestAnimationFrame(()=>{zn()})})}at(()=>{Ln.value&&cancelAnimationFrame(Ln.value)});let K=d(()=>{let e=w.value-w.value*(H.value.paddingProportions.left+H.value.paddingProportions.right),t=zt.value*H.value.paddingProportions.top,n=zt.value*H.value.paddingProportions.bottom,r=In.value,i=zt.value-n-r,a=zt.value-(t+n)-r;return{canvasWidth:w.value,canvasHeight:zt.value,left:w.value*H.value.paddingProportions.left,top:t,right:w.value-w.value*H.value.paddingProportions.right,bottom:i,width:e,height:a,slot:e/(X.value.end-X.value.start)}});function Vn(e,t){return e/t}function Hn({hasAutoScale:e,series:t,min:n,max:r,scale:i,yOffset:a,individualHeight:o,stackIndex:s=null}){return t.map((t,n)=>{let r=i.min<0?Math.abs(i.min):0,ee=Vn(t+r,r+i.max),c,l;e&&(c=i.min,l=Vn(t-c,i.max-c));let te=0;return te=s===null?K.value.bottom-K.value.height*(e?l:ee):K.value.bottom-a-o*(e?l:ee),{x:K.value.left+K.value.slot*n+K.value.slot/2,y:te,value:t}})}let q=d(()=>{let e=H.value.scale.min===null?Math.min(...J.value.filter((e,t)=>!E.value.includes(e.absoluteIndex)).flatMap(e=>e.series.slice(X.value.start,X.value.end))):H.value.scale.min,t=H.value.scale.max===null?Math.max(...J.value.filter((e,t)=>!E.value.includes(e.absoluteIndex)).flatMap(e=>e.series.slice(X.value.start,X.value.end))):H.value.scale.max,n=oe(e<0?e:0,t===e?e+1<0?0:e+1:t<0?0:t,H.value.scale.ticks),r=n.min<0?Math.abs(n.min):0,i=K.value.bottom-K.value.height*(r/(n.max+r));return{absoluteMin:r,max:t,min:e,scale:n,yLabels:n.ticks.map(e=>({y:K.value.bottom-K.value.height*((e+r)/(n.max+r)),x:K.value.left-8,value:e})),zero:i}}),Un=d(()=>Y.value.map(e=>`
|
|
1
|
+
import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{n as t,t as n}from"./tableIntegration-CNoJ1CIY.js";import{n as r,t as i}from"./userOptionsSlots-DYuo-E5m.js";import{$ as a,D as o,Dt as s,Ft as ee,Ht as c,Jt as l,Kt as te,Mt as ne,S as re,X as ie,Zt as ae,_ as oe,_t as se,at as ce,i as le,in as ue,nn as de,nt as fe,o as pe,pt as me,w as he,wt as ge,zt as _e}from"./lib-CV_IANZ6.js";import{n as ve,t as ye}from"./useHints-BH9r_0Vd.js";import{n as be,r as xe,t as Se}from"./useTimeLabels-Das5O74F.js";import{t as Ce}from"./useConfig-CKdzPrcf.js";import{t as we}from"./usePrinter-hLW3cv4N.js";import{n as Te,t as Ee}from"./BaseScanner-8NdoBs7B.js";import{t as De}from"./useNestedProp-CB186vF2.js";import{t as Oe}from"./useThemeCheck-BKNRbGeC.js";import{t as ke}from"./img-DiT4ivZ5.js";import{n as Ae}from"./Title-BGYFqulv.js";import{t as je}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{a as u,c as Me,i as Ne,l as Pe,n as Fe,o as Ie,r as Le,s as Re,t as ze}from"./useResponsive-D2CPcpda.js";import{t as Be}from"./BaseIcon-DdIyewwY.js";import{t as Ve}from"./SlicerPreview-CNUciSbY.js";import{t as He}from"./vue-ui-accordion-BNvevckx.js";import{t as Ue}from"./BaseLegendToggle-Bq5FjyuI.js";import{t as We}from"./useUserOptionState-CXlFnwPv.js";import{t as Ge}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ke}from"./Legend-D8YoT1RJ.js";import{t as qe}from"./vue_ui_xy_canvas-CT-FN9rU.js";import{Teleport as Je,computed as d,createBlock as Ye,createCommentVNode as f,createElementBlock as Xe,createElementVNode as p,createSlots as Ze,createTextVNode as Qe,createVNode as $e,defineAsyncComponent as et,guardReactiveProps as m,mergeProps as tt,nextTick as nt,normalizeClass as rt,normalizeProps as h,normalizeStyle as it,onBeforeUnmount as at,onMounted as ot,openBlock as g,ref as _,renderList as st,renderSlot as v,resolveDynamicComponent as ct,shallowRef as lt,toDisplayString as ut,toRefs as dt,unref as y,useSlots as ft,watch as b,watchEffect as pt,withCtx as x}from"vue";var mt=/* @__PURE__ */ e({default:()=>Ot}),ht=[`id`],gt=[`id`],_t={class:`sr-only`,"aria-live":`polite`,"aria-atomic":`true`},vt=[`id`],yt=[`aria-label`,`aria-describedby`],bt=[`viewBox`],xt=[`x`,`y`,`width`,`height`,`fill`,`fill-opacity`,`stroke`,`stroke-opacity`,`stroke-width`,`stroke-dasharray`],St={key:1,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Ct=[`id`],wt=[`onClick`],Tt={key:4,class:`vue-data-ui-watermark`},Et={key:0},Dt={key:1},Ot=/*#__PURE__*/ je({__name:`vue-ui-xy-canvas`,props:{dataset:{type:Array,default(){return[]}},config:{type:Object,default(){return{}}},selectedXIndex:{type:Number,default:void 0},zoomState:{type:Object,default:null}},emits:[`selectLegend`,`selectX`,`zoomStart`,`zoomEnd`,`zoomReset`,`update:zoomState`,`copyAlt`],setup(e,{expose:je,emit:mt}){let Ot=et(()=>import(`./Tooltip-Cus2-XNQ.js`)),kt=et(()=>import(`./DataTable-WNecJMcY.js`)),At=et(()=>import(`./UserOptions-DTxMeZv3.js`).then(e=>e.n)),jt=et(()=>import(`./NonSvgPenAndPaper-CqtJpZKh.js`)),Mt=et(()=>import(`./BaseDraggableDialog-D_tuHEjO.js`).then(e=>e.n)),{vue_ui_xy_canvas:Nt}=Ce(),{isThemeValid:Pt,warnInvalidTheme:Ft}=Oe(),S=e,It=_(ie()),Lt=_(null),Rt=_(null),C=_(null),w=_(1),zt=_(1),Bt=_(!1),T=_(null),Vt=_(``),Ht=_(null),E=_([]),Ut=_(1),D=_(!0),O=_(!0),Wt=_(null),Gt=_(0),Kt=_(!1),qt=_(null),Jt=_(null),Yt=_(null),Xt=_(null),Zt=_(0),Qt=_(0),$t=_(0),k=_(null),en=_(!1),tn=_(null),nn=_(null),rn=_(!1),an=_(!1),on=_(!1),A=_(null),sn=_(!1),cn=_(!1),ln=_(!1),j=_(null),un=_({x:0,y:0}),M=d(()=>Array.isArray(yn.value)&&yn.value.length>0),N=mt,dn=ft(),P=_(Tn()),F=d(()=>P.value.userOptions),I=d(()=>P.value.style.chart.tooltip),L=d(()=>P.value.style.chart.grid.y.verticalLines),fn=d(()=>P.value.style.chart.grid.x.horizontalLines),R=d(()=>P.value.style.chart.grid.y.axisLabels),z=d(()=>P.value.style.chart.grid.x.timeLabels),B=d(()=>P.value.style.chart.grid),V=d(()=>P.value.style.chart.dataLabels),H=d(()=>P.value.style.chart);ve({config:()=>P.value,dataset:()=>S.dataset,component:`VueUiXyCanvas`,rules:[ye.emptyArray,{test:e=>e.every(e=>e.series.length<300),message:[`👀 Series have < 300 datapoints. Consider:`,``,`▶️ Using VueUiXy instead, if you need more options, or more customization possibilities.`]},{test:e=>e.some(e=>e.series.length>1e4),message:[`👀 The dataset has > 10_000 datapoints. Above this threshold, the dataset is computed through an LTTB algorithm, to preserve the shape of the data without increasing the number of datapoints.`,``,`▶️ If you need this level of detail, you can change config.downsample.threshold and set a higher value. Note that performance can be impacted. JS runtime might crash with > 100_000 datapoints.`]}]});let pn=d(()=>{let e=H.value.title.text||`XY chart`,t=X.value.end-X.value.start;return`${e}. ${Y.value.filter(e=>!E.value.includes(e.absoluteIndex)).length} series. ${t} visible data points.`}),mn=d(()=>{if(j.value===null)return``;let e=j.value+X.value.start;return`${z.value.values.slice(X.value.start,X.value.end)[j.value]?I.value.useDefaultTimeFormat?$.value.slice(X.value.start,X.value.end)[j.value]?.text:Nr.value[j.value]?.text:$.value[e]?.text??`Point ${e+1}`}. ${Y.value.filter(e=>!E.value.includes(e.absoluteIndex)).map(e=>{let t=e.series[j.value],n=t?.value??t??null;return`${e.name}: ${n}`}).join(`. `)}.`}),hn=d(()=>F.value.useCursorPointer),gn=d(()=>P.value.debug);ot(()=>{dn[`chart-background`]&&gn.value&&console.warn(`VueUiXyCanvas does not support the #chart-background slot.`)});let _n=d(()=>ue({defaultConfig:{userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,grid:{x:{axisColor:`#6A6A6A`,timeLabels:{show:!1},axisName:``,horizontalLines:{color:`#6A6A6A`}},y:{axisColor:`#6A6A6A`,axisLabels:{show:!1},axisName:``,verticalLines:{color:`#6A6A6A`}},zeroLine:{color:`#6A6A6A`}},legend:{backgroundColor:`#99999930`},paddingProportions:{left:.05},scale:{max:null,min:null},zoom:{endIndex:null,startIndex:null}}}},userConfig:P.value.skeletonConfig??{}})),{loading:vn,FINAL_DATASET:yn}=Te({...dt(S),FINAL_CONFIG:P,prepareConfig:Tn,skeletonDataset:S.config?.skeletonDataset??[{name:``,series:[0,1,2,3,5,8,13,21,34,55,89,134],type:`line`,smooth:!0,color:`#BABABA`},{name:``,series:[0,.5,1,1.5,2.5,4,6.5,10.5,17,27.5,44.5,67],type:`bar`,color:`#AAAAAA`}],skeletonConfig:ue({defaultConfig:P.value,userConfig:_n.value})}),{userOptionsVisible:bn,setUserOptionsVisibility:xn,keepUserOptionState:Sn}=We({config:P.value}),{svgRef:U}=Ge({config:H.value.title});function Cn(){xn(!0)}function wn(){xn(!1),N(`selectX`,{dataset:null,index:null,indexLabel:null}),T.value=null}function Tn(){let e=De({userConfig:S.config,defaultConfig:Nt}),t={},n=e.theme;if(n){if(!Pt.value(e))Ft(e),t=e;else{let r=De({userConfig:qe[n]||S.config,defaultConfig:e});t={...De({userConfig:S.config,defaultConfig:r}),customPalette:e.customPalette.length?e.customPalette:de[n]||c}}}else t=e;return S.config&&ge(S.config,`style.chart.grid.y.timeLabels`)&&(console.warn(`VueUiXyCanvas: you are using the deprecated config.style.chart.grid.y.timeLabels. It is recommended to move this configuration to config.style.chart.grid.x.timeLabels.`),t.style.chart.grid.x.timeLabels=De({defaultConfig:t.style.chart.grid.x.timeLabels,userConfig:S.config.style.chart.grid.y.timeLabels})),t}let En=ae(S.config);b(()=>S.config,(e,t)=>{let n=ae(e),r=n!==En;En=n;let i=Tn();if(!r){P.value.style.chart.tooltip=i.style.chart.tooltip,W.value.showTooltip=P.value.style.chart.tooltip.show;return}vn.value||(P.value=i),bn.value=!F.value.showOnChartHover,Di(),Zt.value+=1,Qt.value+=1,$t.value+=1,W.value.showTable=P.value.table.show,W.value.showDataLabels=V.value.show,W.value.stacked=H.value.stacked,W.value.showTooltip=I.value.show},{deep:!0}),b(()=>S.dataset,async e=>{Array.isArray(e)&&e.length!==0&&(await nt(),U.value&&!C.value&&(C.value=U.value.getContext(`2d`,{willReadFrequently:!0})),D.value=!0,O.value=!0,await fr(),Sr(),Zt.value+=1,Qt.value+=1,$t.value+=1)},{deep:!0});let Dn=_(H.value.aspectRatio),{isPrinting:On,isImaging:kn,generatePdf:An,generateImage:jn}=we({elementId:`xy_canvas_${It.value}`,fileName:H.value.title.text||`vue-ui-xy-canvas`,options:F.value.print}),W=_({showTable:P.value.table.show,showDataLabels:V.value.show,stacked:H.value.stacked,showTooltip:I.value.show});function Mn(e){Kt.value=e,Gt.value+=1}let Nn=d(()=>he(P.value.customPalette)),Pn=d(()=>E.value.length===J.value.length),G=d(()=>J.value?Math.max(...J.value.filter((e,t)=>Pn.value?!0:!E.value.includes(e.absoluteIndex)).map(e=>e.series.length)):0);function Fn(e){A.value=e,Wr()}let In=_(0),Ln=_(0);function Rn(){if(!C.value||!z.value.show)return 0;let e=$.value||[],t=X.value.start??0,n=X.value.end??0;if(!Math.max(0,n-t))return 0;let r=Math.round(w.value/40*z.value.fontSizeRatio),i=`${z.value.bold?`bold `:``}${r}px ${P.value.style.fontFamily}`;C.value.save(),C.value.font=i;let a=0;for(let r=t;r<n;r+=1){let t=e[r]?.text??`${r+1}`,n=C.value.measureText(String(t));n.width>a&&(a=n.width)}C.value.restore();let o=(z.value.rotation||0)*Math.PI/180,s=r,ee=Math.abs(Math.sin(o))*a+Math.abs(Math.cos(o))*s,c=z.value.offsetY||1,l=w.value/c;return Math.max(0,l+ee+4)}function zn(){In.value=Rn()}function Bn(){Ln.value&&cancelAnimationFrame(Ln.value),Ln.value=requestAnimationFrame(()=>{requestAnimationFrame(()=>{zn()})})}at(()=>{Ln.value&&cancelAnimationFrame(Ln.value)});let K=d(()=>{let e=w.value-w.value*(H.value.paddingProportions.left+H.value.paddingProportions.right),t=zt.value*H.value.paddingProportions.top,n=zt.value*H.value.paddingProportions.bottom,r=In.value,i=zt.value-n-r,a=zt.value-(t+n)-r;return{canvasWidth:w.value,canvasHeight:zt.value,left:w.value*H.value.paddingProportions.left,top:t,right:w.value-w.value*H.value.paddingProportions.right,bottom:i,width:e,height:a,slot:e/(X.value.end-X.value.start)}});function Vn(e,t){return e/t}function Hn({hasAutoScale:e,series:t,min:n,max:r,scale:i,yOffset:a,individualHeight:o,stackIndex:s=null}){return t.map((t,n)=>{let r=i.min<0?Math.abs(i.min):0,ee=Vn(t+r,r+i.max),c,l;e&&(c=i.min,l=Vn(t-c,i.max-c));let te=0;return te=s===null?K.value.bottom-K.value.height*(e?l:ee):K.value.bottom-a-o*(e?l:ee),{x:K.value.left+K.value.slot*n+K.value.slot/2,y:te,value:t}})}let q=d(()=>{let e=H.value.scale.min===null?Math.min(...J.value.filter((e,t)=>!E.value.includes(e.absoluteIndex)).flatMap(e=>e.series.slice(X.value.start,X.value.end))):H.value.scale.min,t=H.value.scale.max===null?Math.max(...J.value.filter((e,t)=>!E.value.includes(e.absoluteIndex)).flatMap(e=>e.series.slice(X.value.start,X.value.end))):H.value.scale.max,n=oe(e<0?e:0,t===e?e+1<0?0:e+1:t<0?0:t,H.value.scale.ticks),r=n.min<0?Math.abs(n.min):0,i=K.value.bottom-K.value.height*(r/(n.max+r));return{absoluteMin:r,max:t,min:e,scale:n,yLabels:n.ticks.map(e=>({y:K.value.bottom-K.value.height*((e+r)/(n.max+r)),x:K.value.left-8,value:e})),zero:i}}),Un=d(()=>Y.value.map(e=>`
|
|
2
2
|
<div style="display:flex;flex-direction:row;gap:6px;align-items:center;">
|
|
3
3
|
<svg viewBox="0 0 10 10" height="12" width="12">
|
|
4
4
|
<circle cx="5" cy="5" r="5" fill="${e.color}"/>
|