vue-data-ui 3.28.2 → 3.28.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/README.md +25 -1
  2. package/dist/{PackageVersion-BIhjLNBU.js → PackageVersion-DhptF5oD.js} +1 -1
  3. package/dist/components/vue-ui-3d-bar.js +1 -1
  4. package/dist/components/vue-ui-age-pyramid.js +1 -1
  5. package/dist/components/vue-ui-annotator.js +1 -1
  6. package/dist/components/vue-ui-bullet.js +1 -1
  7. package/dist/components/vue-ui-bump.js +1 -1
  8. package/dist/components/vue-ui-candlestick.js +1 -1
  9. package/dist/components/vue-ui-carousel-table.js +1 -1
  10. package/dist/components/vue-ui-chestnut.js +1 -1
  11. package/dist/components/vue-ui-chord.js +1 -1
  12. package/dist/components/vue-ui-circle-pack.js +1 -1
  13. package/dist/components/vue-ui-cursor.js +1 -1
  14. package/dist/components/vue-ui-dag.js +1 -1
  15. package/dist/components/vue-ui-dashboard.js +1 -1
  16. package/dist/components/vue-ui-digits.js +1 -1
  17. package/dist/components/vue-ui-donut-evolution.js +1 -1
  18. package/dist/components/vue-ui-donut.js +1 -1
  19. package/dist/components/vue-ui-dumbbell.js +1 -1
  20. package/dist/components/vue-ui-flow.js +1 -1
  21. package/dist/components/vue-ui-funnel.js +1 -1
  22. package/dist/components/vue-ui-galaxy.js +1 -1
  23. package/dist/components/vue-ui-gauge.js +1 -1
  24. package/dist/components/vue-ui-geo.js +1 -1
  25. package/dist/components/vue-ui-gizmo.js +1 -1
  26. package/dist/components/vue-ui-graph.js +1 -1
  27. package/dist/components/vue-ui-heatmap.js +1 -1
  28. package/dist/components/vue-ui-hill.js +1 -1
  29. package/dist/components/vue-ui-history-plot.js +1 -1
  30. package/dist/components/vue-ui-horizontal-bar.js +1 -1
  31. package/dist/components/vue-ui-kpi.js +1 -1
  32. package/dist/components/vue-ui-mini-loader.js +1 -1
  33. package/dist/components/vue-ui-molecule.js +1 -1
  34. package/dist/components/vue-ui-mood-radar.js +1 -1
  35. package/dist/components/vue-ui-nested-donuts.js +1 -1
  36. package/dist/components/vue-ui-onion.js +1 -1
  37. package/dist/components/vue-ui-parallel-coordinate-plot.js +1 -1
  38. package/dist/components/vue-ui-quadrant.js +1 -1
  39. package/dist/components/vue-ui-quick-chart.js +1 -1
  40. package/dist/components/vue-ui-radar.js +1 -1
  41. package/dist/components/vue-ui-rating.js +1 -1
  42. package/dist/components/vue-ui-relation-circle.js +1 -1
  43. package/dist/components/vue-ui-ridgeline.js +1 -1
  44. package/dist/components/vue-ui-rings.js +1 -1
  45. package/dist/components/vue-ui-scatter.js +1 -1
  46. package/dist/components/vue-ui-skeleton.js +1 -1
  47. package/dist/components/vue-ui-smiley.js +1 -1
  48. package/dist/components/vue-ui-spark-trend.js +1 -1
  49. package/dist/components/vue-ui-sparkbar.js +1 -1
  50. package/dist/components/vue-ui-sparkgauge.js +1 -1
  51. package/dist/components/vue-ui-sparkhistogram.js +1 -1
  52. package/dist/components/vue-ui-sparkline.js +1 -1
  53. package/dist/components/vue-ui-sparkstackbar.js +1 -1
  54. package/dist/components/vue-ui-stackbar.js +1 -1
  55. package/dist/components/vue-ui-stackline.js +1 -1
  56. package/dist/components/vue-ui-strip-plot.js +1 -1
  57. package/dist/components/vue-ui-table-heatmap.js +1 -1
  58. package/dist/components/vue-ui-table-sparkline.js +1 -1
  59. package/dist/components/vue-ui-table.js +1 -1
  60. package/dist/components/vue-ui-thermometer.js +1 -1
  61. package/dist/components/vue-ui-timer.js +1 -1
  62. package/dist/components/vue-ui-tiremarks.js +1 -1
  63. package/dist/components/vue-ui-treemap.js +1 -1
  64. package/dist/components/vue-ui-vertical-bar.js +1 -1
  65. package/dist/components/vue-ui-waffle.js +1 -1
  66. package/dist/components/vue-ui-wheel.js +1 -1
  67. package/dist/components/vue-ui-word-cloud.js +1 -1
  68. package/dist/components/vue-ui-world.js +1 -1
  69. package/dist/components/vue-ui-xy-canvas.js +1 -1
  70. package/dist/components/vue-ui-xy.js +1 -1
  71. package/dist/geoProjections-CX3Pvo1N.js +1 -0
  72. package/dist/llms.txt +9 -34
  73. package/dist/package-CX7pZToh.js +1 -0
  74. package/dist/pdf-CVdqBWVS.js +1 -0
  75. package/dist/{render-common-B-s2XJ_I.js → render-common-DwEiRIJ0.js} +1 -1
  76. package/dist/ssr/vue-ui-donut.js +1 -1
  77. package/dist/ssr/vue-ui-xy.js +1 -1
  78. package/dist/ssr.js +1 -1
  79. package/dist/style.css +1 -1
  80. package/dist/{useHints-BH9r_0Vd.js → useHints-C-TwxM0Y.js} +1 -1
  81. package/dist/{useObjectBindings-DiMX4HGv.js → useObjectBindings-C15PEyQD.js} +1 -1
  82. package/dist/{usePrinter-sVoTzet1.js → usePrinter-DVf3YcG5.js} +1 -1
  83. package/dist/useSvgLabelLayout-42Kats14.js +1 -0
  84. package/dist/utils.js +1 -1
  85. package/dist/vue-data-ui-CORn0LF6.js +1 -0
  86. package/dist/vue-data-ui.js +1 -1
  87. package/dist/{vue-ui-3d-bar-CkHFiFp4.js → vue-ui-3d-bar-CJTKyv3A.js} +2 -2
  88. package/dist/{vue-ui-age-pyramid-vpIjdLg5.js → vue-ui-age-pyramid-6uZzf1w6.js} +1 -1
  89. package/dist/{vue-ui-annotator-CdCDYzdK.js → vue-ui-annotator-DCJdieNC.js} +3 -3
  90. package/dist/{vue-ui-bullet-rgxGRR1p.js → vue-ui-bullet-CsJcLhmV.js} +2 -2
  91. package/dist/{vue-ui-bump-CeDsunDi.js → vue-ui-bump-DXpxBWp_.js} +2 -2
  92. package/dist/{vue-ui-candlestick-KJHOS5F7.js → vue-ui-candlestick-Bn_RSZ0k.js} +2 -2
  93. package/dist/{vue-ui-carousel-table-CeI5SIxH.js → vue-ui-carousel-table-ChNykS-r.js} +1 -1
  94. package/dist/vue-ui-chestnut-DMYQTkxM.js +1 -0
  95. package/dist/{vue-ui-chord-8rk7304-.js → vue-ui-chord-Pp0U0-zV.js} +2 -2
  96. package/dist/{vue-ui-circle-pack-BsH09EPG.js → vue-ui-circle-pack-We23fOaF.js} +2 -2
  97. package/dist/{vue-ui-cursor-Cpov2m58.js → vue-ui-cursor-3-RTIIl-.js} +1 -1
  98. package/dist/{vue-ui-dag-BHFL2cUA.js → vue-ui-dag-5fVnwEXd.js} +2 -2
  99. package/dist/{vue-ui-dashboard-BxXdhdNJ.js → vue-ui-dashboard-Dlwnintv.js} +1 -1
  100. package/dist/{vue-ui-digits-xHOLjA2_.js → vue-ui-digits-ZMK0aBxE.js} +1 -1
  101. package/dist/{vue-ui-donut-Vbp5Xs2-.js → vue-ui-donut-CmLo1r4-.js} +2 -2
  102. package/dist/{vue-ui-donut-evolution-BTmztL3Y.js → vue-ui-donut-evolution-CYvo7Cww.js} +2 -2
  103. package/dist/vue-ui-donut-j1bv0KyD.js +22 -0
  104. package/dist/{vue-ui-dumbbell-CDcgKS2A.js → vue-ui-dumbbell-DigrSGwq.js} +2 -2
  105. package/dist/{vue-ui-flow-kVocPE27.js → vue-ui-flow-D9cc9yXD.js} +2 -2
  106. package/dist/vue-ui-funnel-U88Hs0nL.js +1 -0
  107. package/dist/{vue-ui-galaxy-hP-9mVlB.js → vue-ui-galaxy-B1Vuz8CA.js} +1 -1
  108. package/dist/{vue-ui-gauge-BRabsLkh.js → vue-ui-gauge-1MgZSPXt.js} +1 -1
  109. package/dist/{vue-ui-geo-Dacnp6iw.js → vue-ui-geo-BV8ARcaX.js} +1 -1
  110. package/dist/{vue-ui-gizmo-Dp3hpHIX.js → vue-ui-gizmo-DtsERB-E.js} +1 -1
  111. package/dist/{vue-ui-graph-DHU9hUry.js → vue-ui-graph-BVTPTDl5.js} +2 -2
  112. package/dist/{vue-ui-heatmap-kPnmZgWi.js → vue-ui-heatmap-6YwaVr3F.js} +1 -1
  113. package/dist/{vue-ui-hill-Ddbup7-b.js → vue-ui-hill-BvrNT8KZ.js} +1 -1
  114. package/dist/{vue-ui-history-plot-CwO2o-2s.js → vue-ui-history-plot-CJIILQPt.js} +2 -2
  115. package/dist/{vue-ui-horizontal-bar-CvX77vE4.js → vue-ui-horizontal-bar-Dfo-kTqg.js} +2 -2
  116. package/dist/{vue-ui-kpi-CCOOwX_Q.js → vue-ui-kpi-DHfExr9d.js} +1 -1
  117. package/dist/{vue-ui-mini-loader-7gqQI5jy.js → vue-ui-mini-loader-Bbupx66Y.js} +1 -1
  118. package/dist/vue-ui-molecule-C8e5IeHG.js +1 -0
  119. package/dist/{vue-ui-mood-radar-GJ-lhgI0.js → vue-ui-mood-radar-DsnT2U65.js} +1 -1
  120. package/dist/{vue-ui-nested-donuts-CrlPwpg8.js → vue-ui-nested-donuts-JkpqMhuL.js} +2 -2
  121. package/dist/{vue-ui-onion-CKmyy-Y_.js → vue-ui-onion-CIA2tlff.js} +2 -2
  122. package/dist/{vue-ui-parallel-coordinate-plot-C0UqWt0M.js → vue-ui-parallel-coordinate-plot-Bcr3B3NI.js} +2 -2
  123. package/dist/{vue-ui-quadrant-CTGFBNo9.js → vue-ui-quadrant-DKVFawhC.js} +2 -2
  124. package/dist/{vue-ui-quick-chart-ZBOPZhxA.js → vue-ui-quick-chart-Bk2N8Hmd.js} +2 -2
  125. package/dist/{vue-ui-radar-B1z3Ux3E.js → vue-ui-radar-CdH-BFKA.js} +1 -1
  126. package/dist/{vue-ui-rating-CV2b0tjA.js → vue-ui-rating-ChWXrWNJ.js} +1 -1
  127. package/dist/{vue-ui-relation-circle-DqN5N08e.js → vue-ui-relation-circle-COZpOybS.js} +1 -1
  128. package/dist/{vue-ui-ridgeline-DcSB5Qef.js → vue-ui-ridgeline-MLknaTUO.js} +2 -2
  129. package/dist/{vue-ui-rings-CJqAnf-l.js → vue-ui-rings-ARqLCM_P.js} +1 -1
  130. package/dist/{vue-ui-scatter-THQAeoWs.js → vue-ui-scatter-CX2wsXdE.js} +2 -2
  131. package/dist/{vue-ui-skeleton-DqmhigQ0.js → vue-ui-skeleton-wyvAru88.js} +1 -1
  132. package/dist/{vue-ui-smiley-VTdQetY0.js → vue-ui-smiley--VTlUAdp.js} +1 -1
  133. package/dist/{vue-ui-spark-trend-B2Nf1raK.js → vue-ui-spark-trend-C02PmIq_.js} +1 -1
  134. package/dist/{vue-ui-sparkbar-CamZ_49V.js → vue-ui-sparkbar-CjD57-Xi.js} +1 -1
  135. package/dist/{vue-ui-sparkgauge-Ffrp_7VV.js → vue-ui-sparkgauge-8Eia8T2W.js} +1 -1
  136. package/dist/{vue-ui-sparkhistogram-CLfzi3PO.js → vue-ui-sparkhistogram-C-0f7XCl.js} +1 -1
  137. package/dist/{vue-ui-sparkline-Y-sljnbS.js → vue-ui-sparkline-BMMrpUPR.js} +1 -1
  138. package/dist/{vue-ui-sparkstackbar-CYZ-ADO1.js → vue-ui-sparkstackbar-BmgCVCKG.js} +1 -1
  139. package/dist/{vue-ui-stackbar-CQLYm10x.js → vue-ui-stackbar-G_zZRAa9.js} +2 -2
  140. package/dist/{vue-ui-stackline-VpvF7MRx.js → vue-ui-stackline-DchZoEAg.js} +2 -2
  141. package/dist/{vue-ui-strip-plot-B9Ogpw7K.js → vue-ui-strip-plot-DVyPa3sp.js} +2 -2
  142. package/dist/{vue-ui-table-heatmap-BtziURiu.js → vue-ui-table-heatmap-DzvPQnY9.js} +1 -1
  143. package/dist/{vue-ui-table-Bi9C3LzP.js → vue-ui-table-qTF_q-Qu.js} +1 -1
  144. package/dist/{vue-ui-table-sparkline-DEVAL0cR.js → vue-ui-table-sparkline-B2Q-7-GQ.js} +1 -1
  145. package/dist/{vue-ui-thermometer-ClN4EO0I.js → vue-ui-thermometer-CxNoxslq.js} +1 -1
  146. package/dist/{vue-ui-timer-nqZxt1vU.js → vue-ui-timer-DRjoRidI.js} +2 -2
  147. package/dist/{vue-ui-tiremarks-BeJBsgXo.js → vue-ui-tiremarks-BC_YGp3T.js} +1 -1
  148. package/dist/{vue-ui-treemap-FA-yXwmv.js → vue-ui-treemap-CNM5ohoO.js} +1 -1
  149. package/dist/{vue-ui-waffle-CO07S6HV.js → vue-ui-waffle-BiJshI4O.js} +1 -1
  150. package/dist/{vue-ui-wheel-BeaSWB4x.js → vue-ui-wheel-BxR0_iNZ.js} +1 -1
  151. package/dist/{vue-ui-word-cloud-C1OWGFng.js → vue-ui-word-cloud-CZzC3R1K.js} +2 -2
  152. package/dist/{vue-ui-world-CUS_mKgl.js → vue-ui-world-CJgt0ESz.js} +2 -2
  153. package/dist/vue-ui-xy-B6XNUCzQ.js +24 -0
  154. package/dist/{vue-ui-xy-BigPHE0Q.js → vue-ui-xy-DrKVPSg7.js} +1 -1
  155. package/dist/{vue-ui-xy-canvas-CeC3gcrW.js → vue-ui-xy-canvas-Do4P4ajB.js} +2 -2
  156. package/package.json +141 -131
  157. package/dist/geoProjections-Bvj-eMvq.js +0 -1
  158. package/dist/package-DwcKiXuI.js +0 -1
  159. package/dist/pdf-DAicVFxx.js +0 -1
  160. package/dist/useSvgLabelLayout-D1I8sQUi.js +0 -1
  161. package/dist/vue-data-ui-BvHCscNE.js +0 -1
  162. package/dist/vue-ui-chestnut-CiY-2e77.js +0 -1
  163. package/dist/vue-ui-donut-CR3klUbX.js +0 -22
  164. package/dist/vue-ui-funnel-CZAdPYqK.js +0 -1
  165. package/dist/vue-ui-molecule-BPGs9Dom.js +0 -1
  166. package/dist/vue-ui-xy-6B_K-quN.js +0 -24
@@ -1,2 +1,2 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,D as r,Dt as i,Ft as a,Ht as o,J as s,Q as c,S as ee,X as te,Zt as ne,_ as re,at as ie,b as ae,i as oe,in as se,nt as ce,pt as le,rn as ue,sn as de,t as fe,v as pe,w as me,x as he,yt as ge,zt as _e}from"./lib-rPeBMZrn.js";import{n as ve,t as ye}from"./BaseScanner-8NdoBs7B.js";import{n as be,t as xe}from"./useHints-BH9r_0Vd.js";import{t as Se}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as Ce}from"./resolveChartConfig-CIhClE5R.js";import{t as we}from"./chartImage-DPGnEuYM.js";import{n as Te}from"./Title-BliHuXfT.js";import{t as Ee}from"./useChartExport-BZts4KFb.js";import{n as De,t as Oe}from"./tableIntegration-CNoJ1CIY.js";import{n as ke,t as Ae}from"./annotationSlots-BRR85CqJ.js";import{n as je,t as Me}from"./userOptionsSlots-DYuo-E5m.js";import{t as Ne}from"./usePrinter-sVoTzet1.js";import{t as Pe}from"./useTransitions-ChGGrtrv.js";import{t as Fe}from"./useSvgLabelLayout-D1I8sQUi.js";import{t as Ie}from"./useTimeLabelCollider-BTybMUFi.js";import{t as Le}from"./Shape-CRe8woTu.js";import{t as Re}from"./useResponsive-CENUxfEL.js";import{t as ze}from"./DefGrad-DKMq1REY.js";import{t as Be}from"./A11yDataTable-DWNlWXzs.js";import{t as Ve}from"./useUserOptionState-CXlFnwPv.js";import{t as He}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ue}from"./vue_ui_strip_plot-CwMowrhT.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createSlots as We,createTextVNode as Ge,createVNode as Ke,defineAsyncComponent as h,guardReactiveProps as g,mergeProps as qe,nextTick as Je,normalizeClass as Ye,normalizeProps as _,normalizeStyle as v,onBeforeUnmount as Xe,onMounted as Ze,openBlock as y,ref as b,renderList as x,renderSlot as S,resolveDynamicComponent as Qe,shallowRef as $e,toDisplayString as C,toRefs as et,unref as w,watch as tt,withCtx as T}from"vue";var nt=/* @__PURE__ */ e({default:()=>Pt}),rt=[`id`],it=[`id`],at={style:{position:`relative`}},ot=[`xmlns`,`viewBox`,`aria-describedby`],st=[`x`,`y`,`width`,`height`],ct={key:1},lt={key:0},ut=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],dt={key:1},ft=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],pt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],mt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],ht=[`transform`,`fill`,`font-size`],gt=[`transform`,`font-size`,`fill`,`text-anchor`],_t=[`transform`,`font-size`,`fill`,`text-anchor`,`innerHTML`],vt=[`fill`,`font-size`,`transform`],yt=[`fill`,`font-size`,`x`,`y`],bt=[`x1`,`x2`,`y1`,`y2`,`stroke`],xt=[`cx`,`cy`,`fill`],St=[`cx`,`cy`,`fill`],Ct=[`d`,`fill`,`stroke`,`fill-opacity`,`stroke-opacity`,`stroke-width`,`onMouseenter`],wt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-opacity`,`stroke-width`],Tt=[`onMouseenter`],Et=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],Dt=[`x`,`y`,`width`,`height`,`fill`,`stroke`,`stroke-width`,`rx`],Ot=[`cx`,`cy`,`r`,`fill`,`stroke`],kt={key:1},At=[`x`,`y`,`font-size`,`fill`],jt={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Mt={key:5,class:`vue-data-ui-watermark`},Nt={style:{display:`flex`,"align-items":`center`}},Pt=/*#__PURE__*/ Se({__name:`vue-ui-strip-plot`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`selectDatapoint`,`copyAlt`],setup(e,{expose:Se,emit:nt}){let Pt=h(()=>import(`./Tooltip-C1q0Qoh7.js`)),Ft=h(()=>import(`./BaseIcon-Cm-IJ179.js`).then(e=>e.n)),It=h(()=>import(`./vue-ui-accordion-S3nRtTU-.js`).then(e=>e.n)),Lt=h(()=>import(`./DataTable-0Vv-aGHD.js`)),Rt=h(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),zt=h(()=>import(`./PenAndPaper-BGEp-TUm.js`).then(e=>e.t)),Bt=h(()=>import(`./PackageVersion-BIhjLNBU.js`).then(e=>e.t)),Vt=h(()=>import(`./BaseDraggableDialog-DHgIPVmz.js`).then(e=>e.n)),Ht=[`classic`,`scatter`,`violin`],{vue_ui_strip_plot:Ut}=t(),E=e,Wt=nt,Gt=u({get(){return!!E.dataset&&E.dataset.length},set(e){return e}}),Kt=b(te()),qt=b(0),Jt=b(!1),Yt=b(``),D=b(null),Xt=b(null),Zt=b(null),Qt=b(null),$t=b(!1),en=b(0),tn=b(0),nn=b(null),rn=b(null),an=b(null),on=b(null),sn=b(null),cn=b(null),O=b(null),ln=b(null),k=b(`pointer`),un=b({x:0,y:0}),dn=b(!1),A=b(xn()),j=u(()=>A.value.userOptions),M=u(()=>A.value.style.chart.tooltip),N=u(()=>A.value.style.chart.labels),P=u(()=>A.value.style.chart.violin),F=u(()=>A.value.style.chart.grid),I=u(()=>A.value.style.chart);be({config:()=>A.value,dataset:()=>E.dataset,component:`VueUiStripPlot`,rules:[xe.emptyArray,{test:e=>e.length>12,message:[`👀 The number of series is > 12. Consider:`,``,`▶️ Using filters to let users choose a maximum number of series to display.`,``,`▶️ Using multiple instances of the chart to display related series.`]}]});let{transitionEnabled:fn}=Pe({config:()=>A.value.transitions,dataset:()=>E.dataset}),pn=u(()=>Sn(A.value.type)),L=u(()=>A.value.userOptions.useCursorPointer),mn=u(()=>se({defaultConfig:{userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,padding:{top:24,left:24,right:24,bottom:24},grid:{stroke:`#6A6A6A`,horizontalGrid:{stroke:`#6A6A6A`},verticalGrid:{stroke:`#6A6A6A`}},plots:{stroke:`#6A6A6A`},labels:{bestPlotLabel:{show:!1},axis:{xLabel:``,yLabel:``},xAxisLabels:{show:!1},yAxisLabels:{show:!1}}}}},userConfig:A.value.skeletonConfig??{}})),{loading:hn,FINAL_DATASET:gn,manualLoading:_n}=ve({...et(E),FINAL_CONFIG:A,prepareConfig:xn,skeletonDataset:E.config?.skeletonDataset??[{name:`_`,color:`#DBDBDB`,plots:[{name:`_`,value:1},{name:`_`,value:2},{name:`_`,value:3}]},{name:`_`,color:`#C4C4C4`,plots:[{name:`_`,value:3},{name:`_`,value:5},{name:`_`,value:8}]},{name:`_`,color:`#ADADAD`,plots:[{name:`_`,value:8},{name:`_`,value:13},{name:`_`,value:21}]},{name:`_`,color:`#969696`,plots:[{name:`_`,value:21},{name:`_`,value:34},{name:`_`,value:55}]},{name:`_`,color:`#808080`,plots:[{name:`_`,value:55},{name:`_`,value:89},{name:`_`,value:144}]}],skeletonConfig:se({defaultConfig:A.value,userConfig:mn.value})}),{userOptionsVisible:vn,setUserOptionsVisibility:yn,keepUserOptionState:bn}=Ve({config:A.value}),{svgRef:R}=He({config:I.value.title});function xn(){return Ce(E.config,Ut,Ue)}function Sn(e){return Ht.includes(e)?e:`classic`}let Cn=ne(E.config);tt(()=>E.config,async(e,t)=>{let n=ne(e),r=n!==Cn;Cn=n;let i=xn();r?(hn.value||(A.value=i),vn.value=!A.value.userOptions.showOnChartHover,On(),en.value+=1,tn.value+=1,H.value.dataLabels.show=N.value.bestPlotLabel.show,H.value.showTable=A.value.table.show,H.value.showTooltip=M.value.show,A.value.responsive||(B.value=I.value.width,V.value=I.value.height,Rn.value=I.value.plots.radius)):(A.value.style.chart.tooltip=i.style.chart.tooltip,H.value.showTooltip=A.value.style.chart.tooltip.show)},{deep:!0}),tt(()=>E.dataset,e=>{Array.isArray(e)&&e.length>0&&(_n.value=!1)},{deep:!0});let z=$e(null),wn=$e(null),Tn=b(!1),En=0;Ze(()=>{On()});let Dn=u(()=>A.value.debug);function On(){_e(E.dataset)?(ie({componentName:`VueUiStripPlot`,type:`dataset`,debug:Dn.value}),_n.value=!0):E.dataset.forEach((e,t)=>{ge({datasetObject:e,requiredAttributes:[`name`,`plots`]}).forEach(e=>{Gt.value=!1,ie({componentName:`VueUiStripPlot`,type:`datasetSerieAttribute`,property:e,index:t,debug:Dn.value})}),e.plots&&e.plots.forEach((e,n)=>{ge({datasetObject:e,requiredAttributes:[`name`,`value`]}).forEach(e=>{Gt.value=!1,ie({componentName:`VueUiStripPlot`,type:`datasetSerieAttribute`,property:e,index:`${t},${n}`,debug:Dn.value})})})}),_e(E.dataset)||(_n.value=A.value.loading),A.value.responsive&&(z.value&&(wn.value&&z.value.unobserve(wn.value),z.value.disconnect()),z.value=new ResizeObserver(()=>{let{width:e,height:t}=Re({chart:D.value,title:I.value.title.text?Xt.value:null,source:Zt.value,noTitle:Qt.value});cancelAnimationFrame(En),En=requestAnimationFrame(()=>{Ln.value=t,B.value=Math.max(.1,e),V.value=Math.max(.1,t-12),Tn.value=!0,A.value.responsiveProportionalSizing?Rn.value=ue({relator:Math.min(t,e),adjuster:600,source:I.value.plots.radius,threshold:6,fallback:6}):Rn.value=I.value.plots.radius})}),wn.value=D.value.parentNode,z.value.observe(wn.value)),$t.value=!0,setTimeout(()=>{Fn.value=!1},Jn.value*50)}Xe(()=>{cancelAnimationFrame(En),z.value&&(wn.value&&z.value.unobserve(wn.value),z.value.disconnect())});let{isPrinting:kn,isImaging:An,generatePdf:jn,generateImage:Mn}=Ne({elementId:`strip-plot_${Kt.value}`,fileName:I.value.title.text||`vue-ui-strip-plot`,options:A.value.userOptions.print}),Nn=u(()=>A.value.userOptions.show&&!I.value.title.text),Pn=u(()=>me(A.value.customPalette)),Fn=b(A.value.useCssAnimation),In=b({top:I.value.padding.top,bottom:I.value.padding.bottom,left:I.value.padding.left,right:I.value.padding.right}),B=b(I.value.width),V=b(I.value.height),Ln=b(I.value.height),Rn=b(I.value.plots.radius),H=b({showTable:A.value.table.show,dataLabels:{show:N.value.bestPlotLabel.show},showTooltip:M.value.show});tt(A,()=>{H.value={showTable:A.value.table.show,dataLabels:{show:N.value.bestPlotLabel.show},showTooltip:M.value.show},A.value.responsive||(B.value=I.value.width,V.value=I.value.height,Rn.value=I.value.plots.radius)},{immediate:!0});let U=u(()=>Math.min(Rn.value,G.value.stripWidth/2*.9));function W(e){return Number.isFinite(e)?Number(e.toFixed(2)):0}function zn(){return Math.max(0,(G.value.stripWidth/2-U.value*1.8)*.86)*Math.min(1,P.value.widthRatio)}let{metrics:Bn,ready:Vn,settling:Hn,update:Un}=Fe({svgRef:R,canMeasure:()=>!A.value.responsive||Tn.value,initialMetrics:{scaleLabelsWidth:0,yAxisLabelWidth:0,xAxisLabelHeight:0,timeLabelsHeight:0},measure:e=>({scaleLabelsWidth:e(cn.value).textWidth,yAxisLabelWidth:e(on.value).rotatedWidth,xAxisLabelHeight:e(an.value).height,timeLabelsHeight:e(sn.value).height})});function Wn(){let e=Bn.value.scaleLabelsWidth,t=Bn.value.yAxisLabelWidth;return e+t+(t?24:0)}let Gn=u(()=>Bn.value.xAxisLabelHeight+Bn.value.timeLabelsHeight+(an.value?N.value.axis.fontSize/3+12+N.value.axis.xLabelOffsetY:0)+(sn.value?12:0)),G=u(()=>{let e=Wn(),t=In.value.left+e+N.value.axis.yLabelOffsetX+5,n=B.value-In.value.right,r=Math.max(0,n-t),i=In.value.top+I.value.plots.radius+N.value.bestPlotLabel.fontSize,a=V.value-In.value.bottom-Gn.value,o=Math.max(0,a-i),s=Array.isArray(gn.value)?gn.value.length:0;return{left:t,right:n,top:i,bottom:a,width:r,height:o,stripWidth:s>0?r/s:0,absoluteHeight:V.value}});function Kn(e){return G.value.left+(e+1)*G.value.stripWidth-G.value.stripWidth/2}let qn=u(()=>gn.value.map((e,t)=>{let n=te();return{...e,id:n,color:e.color?ee(e.color):Pn.value[t]||o[t]||o[t%o.length],plots:e.plots.map((r,i)=>({...r,value:ae(r.value),parentId:n,parentName:e.name,parentIndex:t,plotIndex:i,color:e.color?ee(e.color):Pn.value[t]||o[t]||o[t%o.length],id:te()})).sort((e,t)=>e.value-t.value)}})),K=u(()=>(qn.value||[]).map((e,t)=>({...e,plots:e.plots.map(e=>({...e,x:Kn(t)}))}))),Jn=u(()=>Math.max(...K.value.map(e=>e.plots.length))),Yn=u(()=>{let e=K.value.flatMap(e=>e.plots.map(e=>e.value));return{max:Math.max(...e),min:Math.min(...e)}}),Xn=u(()=>{let e=F.value.scaleMin,t=F.value.scaleMax,n=Math.max(2,F.value.scaleSteps),r=Yn.value.min<0?Yn.value.min:0,i=Yn.value.max;if(e===null&&t===null)return re(r,i,n);if(e!==null&&t!==null)return pe(e,t,n);let a=re(e===null?r:e,t===null?i:t,n);return pe(e===null?a.min:e,t===null?a.max:t,n)});function q(e){let t=Xn.value.max-Xn.value.min;return t?G.value.bottom-(e-Xn.value.min)/t*G.value.height:G.value.bottom}let J=u(()=>(K.value||[]).map((e,t)=>{let n=e.plots.map(e=>({...e,y:q(e.value)})),r=pn.value===`classic`?n.map(()=>0):er(n);return{...e,plots:n.map((e,t)=>({...e,x:e.x+r[t]}))}})),Y=u(()=>pn.value===`violin`&&!!P.value?.boxPlot?.show);function Zn(e,t){if(!e.length)return 0;if(e.length===1)return e[0];let n=(e.length-1)*t,r=Math.floor(n),i=n-r,a=e[r+1];return a===void 0?e[r]:e[r]+i*(a-e[r])}let X=u(()=>Y.value?J.value.map((e,t)=>{let n=e.plots.map(e=>e.value).sort((e,t)=>e-t),r=Zn(n,.25),i=Zn(n,.5),a=Zn(n,.75),o=a-r,s=r-o*1.5,c=a+o*1.5,ee=n.find(e=>e>=s),te=n.slice().reverse().find(e=>e<=c),ne=Kn(t),re=Math.max(U.value*2.8,Math.min(zn()*.32,G.value.stripWidth*.12))*Math.min(1.5,P.value.boxPlot.widthRatio);return{id:e.id,boxPlotColor:P.value.boxPlot.useSerieColor?e.color:P.value.boxPlot.color,color:e.color,name:e.name,count:n.length,lowerAdjacent:ee??n[0],q1:r,median:i,q3:a,upperAdjacent:te??n[n.length-1],iqr:o,lowerFence:s,upperFence:c,centerX:ne,boxLeft:ne-re/2,boxWidth:re,q1Y:q(r),medianY:q(i),q3Y:q(a),lowerY:q(ee??n[0]),upperY:q(te??n[n.length-1])}}):[]),Qn=u(()=>[A.value.table.columnNames.series,P.value.tooltipLabels.lowerAdjacent,P.value.tooltipLabels.q1,P.value.tooltipLabels.median,P.value.tooltipLabels.q3,P.value.tooltipLabels.upperAdjacent,P.value.tooltipLabels.iqr,P.value.tooltipLabels.count]);function $n(e){return n({p:N.value.prefix,v:e,s:N.value.suffix,r:A.value.table.td.roundingValue})}function er(e){let t=pn.value===`violin`?Math.max(0,zn()-U.value*1.15):Math.max(0,G.value.stripWidth/2-U.value*1.5);if(!e.length||!t)return e.map(()=>0);let n=e.map(()=>0),r=U.value*2.1,i=Math.min(t,r),a=[0];for(let e=i;e<=t+i/2;e+=i)a.push(-Math.min(e,t)),a.push(Math.min(e,t));let o=[];return e.forEach((e,t)=>{let i=a.find(t=>o.every(n=>{let i=t-n.offset,a=e.y-n.y;return Math.hypot(i,a)>=r}))??0;n[t]=i,o.push({y:e.y,offset:i})}),n}let tr=u(()=>pn.value===`violin`?J.value.map((e,t)=>({id:e.id,color:P.value.useSerieColor?e.color:P.value.stroke,fill:P.value.useSerieColor?e.color:P.value.fill,path:nr(e.plots,t),connectors:rr(e.plots,t)})):[]);function nr(e,t){let n=zn();if(!e.length||!G.value.height||!n)return``;let r=Kn(t),i=e.map(e=>e.y),a=Z(i),o=ar({yValues:i,bandwidth:a});return o.length>1?o.map(e=>sr({yValues:e,centerX:r,maxWidth:ir({clusterLength:e.length,totalLength:i.length,maxWidth:n}),bandwidth:Z(e)})).join(` `):sr({yValues:i,centerX:r,maxWidth:n,bandwidth:a})}function rr(e,t){if(!e.length)return[];let n=Kn(t),r=e.map(e=>e.y),i=ar({yValues:r,bandwidth:Z(r)});return i.length<2?[]:i.slice(1).map((e,t)=>{let r=i[t],a=Z(r),o=Z(e),s=he(Math.max(...r)+a*2.35,G.value.top,G.value.bottom),c=he(Math.min(...e)-o*2.35,G.value.top,G.value.bottom);return{x:W(n),y1:W(s),y2:W(c)}})}function ir({clusterLength:e,totalLength:t,maxWidth:n}){let r=(e/t)**.6,i=e<=2?.72:1;return Math.max(U.value*2.2,n*he(r*i,.18,1))}function Z(e){let t=e.reduce((e,t)=>e+t,0)/Math.max(1,e.length),n=e.reduce((e,n)=>e+(n-t)**2,0)/Math.max(1,e.length),r=Math.sqrt(n),i=e.length<2?Math.max(U.value*2.6,G.value.height/48):U.value*2.1;return he(1.06*r*e.length**-.2,i,G.value.height/5)}function ar({yValues:e,bandwidth:t}){if(e.length<2)return[e];let n=[...e].sort((e,t)=>e-t),r=Math.max(t*1.45,U.value*5),i=[],a=[n[0]];for(let e=1;e<n.length;e+=1)Math.abs(n[e]-n[e-1])>r?(i.push(a),a=[n[e]]):a.push(n[e]);return i.push(a),or(i)}function or(e){return e.reduce((e,t)=>{let n=e[e.length-1];if(!n)return e.push(t),e;let r=Z(n),i=Z(t);return Math.max(...n)+r*2.35>=Math.min(...t)-i*2.35?n.push(...t):e.push(t),e},[])}function sr({yValues:e,centerX:t,maxWidth:n,bandwidth:r}){let i=he(Math.min(...e)-r*2.35,G.value.top,G.value.bottom),a=he(Math.max(...e)+r*2.35,G.value.top,G.value.bottom),o=Math.max(48,Math.min(120,Math.round((a-i)/Math.max(1,r/4)))),s=Array.from({length:o},(t,n)=>{let s=i+(a-i)*n/Math.max(1,o-1);return{y:s,density:e.reduce((e,t)=>{let n=(s-t)/r;return e+Math.exp(-.5*n*n)},0)}}),c=Math.max(...s.map(e=>e.density));if(!c)return``;let ee=s.map((e,t)=>{let r=t===0||t===s.length-1?0:e.density/c*n;return{y:W(e.y),width:W(r)}}),te=ee.map(e=>({x:W(t-e.width),y:e.y})),ne=ee.slice(0,-1).reverse().map(e=>({x:W(t+e.width),y:e.y}));return`${cr([...te,...ne])} Z`}function cr(e){if(!e.length)return``;if(e.length===1)return`M ${e[0].x} ${e[0].y}`;let t=`M ${e[0].x} ${e[0].y}`;for(let n=1;n<e.length-1;n+=1){let r=e[n],i=e[n+1],a=W((r.x+i.x)/2),o=W((r.y+i.y)/2);t+=` Q ${r.x} ${r.y} ${a} ${o}`}let n=e[e.length-1];return`${t} L ${n.x} ${n.y}`}let lr=u(()=>Xn.value.ticks.map(e=>({y:q(e),x1:G.value.left,x2:G.value.right,value:e}))),ur=b(null),Q=b(null);function dr({datapoint:e,seriesIndex:t}){k.value!==`keyboard`&&(Jt.value=!1,Q.value=null,A.value.events.datapointLeave&&A.value.events.datapointLeave({datapoint:e,seriesIndex:t}))}function fr({datapoint:e,seriesIndex:t}){Wt(`selectDatapoint`,e),A.value.events.datapointClick&&A.value.events.datapointClick({datapoint:e,seriesIndex:t})}function pr(e,t={}){return oe(N.value.formatter,e,n({p:N.value.prefix,v:e,s:N.value.suffix,r:M.value.roundingValue}),t)}function mr({datapoint:e,seriesIndex:t,triggerMode:n=`pointer`}){A.value.events.datapointEnter&&A.value.events.datapointEnter({datapoint:e,seriesIndex:t}),k.value=n,ur.value={datapoint:e,seriesIndex:t,config:A.value,series:qn.value},Jt.value=!0,Q.value=e;let r=M.value.customFormat;if(i(r)&&le(()=>r({seriesIndex:t,datapoint:e,series:qn.value,config:A.value})))Yt.value=r({seriesIndex:t,datapoint:e,series:qn.value,config:A.value});else{let n=``;n+=`<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${I.value.plots.gradient.show?`url(#${e.parentId})`:e.color}"/></svg>${e.name}</div>`,n+=`<div>${pr(e.value,{datapoint:e,seriesIndex:t})}</div>`,Yt.value=`<div>${n}</div>`}}function hr(){k.value!==`keyboard`&&(Jt.value=!1,Q.value=null)}function gr({boxPlot:e,seriesIndex:t,triggerMode:n=`pointer`}){k.value=n,Q.value=null,Jt.value=!0,ur.value={boxPlot:e,seriesIndex:t,config:A.value,series:qn.value};let r=M.value.customFormat;if(i(r))try{let n={boxPlot:e,seriesIndex:t,series:qn.value,config:A.value};if(le(()=>r(n))){Yt.value=r(n);return}}catch{}let a=[[P.value.tooltipLabels.upperAdjacent,e.upperAdjacent],[P.value.tooltipLabels.q3,e.q3],[P.value.tooltipLabels.median,e.median],[P.value.tooltipLabels.q1,e.q1],[P.value.tooltipLabels.lowerAdjacent,e.lowerAdjacent],[P.value.tooltipLabels.iqr,e.iqr]],o=`<svg viewBox="0 0 12 12" height="14" width="14"><rect x="1" y="1" width="10" height="10" rx="2" stroke="none" fill="${e.color}"/></svg>`,s=a.map(([n,r])=>`<div style="display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between;"><span>${n}</span><b>${pr(r,{boxPlot:e,seriesIndex:t})}</b></div>`).join(``);Yt.value=`<div style="min-width:160px;"><div style="display:flex;flex-direction:row;gap:6px;align-items:center;margin-bottom:6px;">${o}${e.name}</div>`+s+`<div style="display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between;margin-top:6px;"><span>${P.value.tooltipLabels.count}</span><b>${e.count}</b></div></div>`}let _r=u(()=>({head:K.value.flatMap(e=>JSON.parse(JSON.stringify(e.plots)).sort((e,t)=>t.value-e.value).map(t=>({name:`${e.name} - ${t.name}`,color:t.color}))),body:K.value.flatMap(e=>JSON.parse(JSON.stringify(e.plots)).sort((e,t)=>t.value-e.value).map(e=>e.value))}));function vr(e=null){Je(()=>{let t=[],n=[A.value.table.columnNames.series,A.value.table.columnNames.value];Y.value?(n=Qn.value,t=X.value.map(e=>[[e.name],[e.lowerAdjacent],[e.q1],[e.median],[e.q3],[e.upperAdjacent],[e.iqr],[e.count]])):t=_r.value.head.map((e,t)=>[[e.name],[_r.value.body[t]]]);let i=[[I.value.title.text],[I.value.title.subtitle.text],n.map(e=>[e])].concat(t),a=r(i);e?e(a):ce({csvContent:a,title:I.value.title.text||`vue-ui-strip-plot`})})}let yr=u(()=>{if(Y.value){let e=Qn.value;return{colNames:e,head:e,body:X.value.map(e=>[{color:e.color,name:e.name},$n(e.lowerAdjacent),$n(e.q1),$n(e.median),$n(e.q3),$n(e.upperAdjacent),$n(e.iqr),e.count]),config:{th:{backgroundColor:A.value.table.th.backgroundColor,color:A.value.table.th.color,outline:A.value.table.th.outline},td:{backgroundColor:A.value.table.td.backgroundColor,color:A.value.table.td.color,outline:A.value.table.td.outline},breakpoint:A.value.table.responsiveBreakpoint}}}let e=[A.value.table.columnNames.series,A.value.table.columnNames.value],t=_r.value.head.map((e,t)=>{let r=n({p:N.value.prefix,v:_r.value.body[t],s:N.value.suffix,r:A.value.table.td.roundingValue});return[{color:e.color,name:e.name},r]}),r={th:{backgroundColor:A.value.table.th.backgroundColor,color:A.value.table.th.color,outline:A.value.table.th.outline},td:{backgroundColor:A.value.table.td.backgroundColor,color:A.value.table.td.color,outline:A.value.table.td.outline},breakpoint:A.value.table.responsiveBreakpoint};return{colNames:[A.value.table.columnNames.series,A.value.table.columnNames.value],head:e,body:t,config:r}}),$=b(!1);function br(e){$.value=e,qt.value+=1}function xr(){return K.value}function Sr(){H.value.showTable=!H.value.showTable}function Cr(){H.value.dataLabels.show=!H.value.dataLabels.show}function wr(){H.value.showTooltip=!H.value.showTooltip}let Tr=b(!1);function Er(){Tr.value=!Tr.value}let Dr=we(D,()=>I.value.title.text),Or=u(()=>K.value.map(e=>e.name)),kr=b({start:0,end:K.value.length});Ie({timeLabelsEls:sn,timeLabels:Or,slicer:kr,configRef:A,rotationPath:[`style`,`chart`,`labels`,`xAxisLabels`,`rotation`],autoRotatePath:[`style`,`chart`,`labels`,`xAxisLabels`,`autoRotate`,`enable`],isAutoSize:!1,width:B,height:V,targetClass:`.vue-ui-strip-plot-category-name`,rotation:N.value.xAxisLabels.autoRotate.angle});let Ar=u(()=>Oe({config:A,style:I,mutableConfig:H,dialog:Vt,accordion:It,isFullscreen:$,parent:D,maxWidth:800,isCursorPointer:L}));tt(()=>H.value.showTable,e=>De(e,A,nn));function jr(){H.value.showTable=!1,rn.value&&rn.value.setTableIconState(!1)}let Mr=u(()=>I.value.backgroundColor),Nr=u(()=>I.value.title),{isCallbackImaging:Pr,isCallbackSvg:Fr,generateSvg:Ir,onGenerateImage:Lr}=Ee({svg:R,title:Nr,legend:null,legendItems:null,backgroundColor:Mr,getSvgCallback:()=>A.value.userOptions.callbacks.svg,generateImage:Mn});async function Rr(){Wt(`copyAlt`,{config:A.value,dataset:J.value}),A.value.userOptions.callbacks.altCopy?await Promise.resolve(A.value.userOptions.callbacks.altCopy({config:A.value,dataset:J.value})):console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.")}function zr(){return J.value.length}function Br(e){return J.value[e]?.plots??[]}function Vr(e=O.value,t=ln.value){return!Number.isInteger(e)||!Number.isInteger(t)?null:Br(e)[t]??null}function Hr(){O.value=null,ln.value=null,k.value=`pointer`,Jt.value=!1,Q.value=null}function Ur(e){if(!e||!R.value)return;let t=R.value.getBoundingClientRect();un.value={x:t.left+e.x/B.value*t.width,y:t.top+e.y/V.value*t.height}}function Wr(e,t){let n=Vr(e,t);n&&(O.value=e,ln.value=t,k.value=`keyboard`,Ur(n),mr({datapoint:n,seriesIndex:e,triggerMode:`keyboard`}))}function Gr(){dn.value=!0,O.value=null,ln.value=null}function Kr(){dn.value=!1,Hr()}function qr(e){if(!R.value||Tr.value||document.activeElement!==R.value||!zr())return;let t=e.key===`ArrowLeft`,n=e.key===`ArrowRight`,r=e.key===`ArrowUp`,i=e.key===`ArrowDown`,a=e.key===`Enter`||e.key===` `,o=e.key===`Escape`;if(!t&&!n&&!r&&!i&&!a&&!o)return;if(e.preventDefault(),e.stopPropagation(),o){Hr();return}let s=O.value,c=ln.value;if(s===null||c===null)s=0,c=0;else if(t||n){let e=zr();s=n?(s+1)%e:(s-1+e)%e;let t=Br(s);if(!t.length)return;c=Math.min(c,t.length-1)}else if(r||i){let e=Br(s);if(!e.length)return;c=r?(c+1)%e.length:(c-1+e.length)%e.length}if(a){let e=Vr();if(!e)return;fr({datapoint:e,seriesIndex:O.value})}else Wr(s,c)}let Jr=u(()=>({headers:yr.value?.colNames??[],rows:yr.value?.body?.map(e=>e.map(e=>e&&typeof e==`object`&&`name`in e?e.name:e))??[]}));return Se({getData:xr,getImage:Dr,generatePdf:jn,generateCsv:vr,generateImage:Mn,generateSvg:Ir,toggleTable:Sr,toggleLabels:Cr,toggleTooltip:wr,toggleAnnotator:Er,toggleFullscreen:br,copyAlt:Rr}),tt(()=>[B.value,V.value,N.value,I.value,A.value.style.fontFamily,E.dataset,Tn.value,cn.value,sn.value,an.value,on.value],Un,{flush:`post`,deep:!0}),(e,t)=>(y(),p(`div`,{ref_key:`stripPlotChart`,ref:D,class:Ye(`vue-data-ui-component vue-ui-strip-plot ${$.value?`vue-data-ui-wrapper-fullscreen`:``} ${A.value.useCssAnimation?``:`vue-ui-dna`}`),style:v(`font-family:${A.value.style.fontFamily};width:100%; text-align:center;background:${I.value.backgroundColor};${A.value.responsive?`height:100%`:``}`),id:`strip-plot_${Kt.value}`,onMouseenter:t[2]||=()=>w(yn)(!0),onMouseleave:t[3]||=()=>w(yn)(!1)},[m(`div`,{id:`chart-instructions-${Kt.value}`,class:`sr-only`},[m(`p`,null,C(A.value.a11y.translations.keyboardNavigation),1)],8,it),Jr.value?.rows?.length?(y(),d(Be,{key:0,uid:Kt.value,head:Jr.value.headers,body:Jr.value.rows,notice:A.value.a11y.translations.tableAvailable,caption:A.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):f(``,!0),j.value.buttons.annotator?(y(),d(w(zt),{key:1,svgRef:w(R),backgroundColor:I.value.backgroundColor,color:I.value.color,active:Tr.value,isCursorPointer:L.value,palette:j.value.annotatorPalette,onClose:Er},We({_:2},[x(w(Ae),t=>({name:t,fn:T(n=>[S(e.$slots,t,_(g(w(ke)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):f(``,!0),Nn.value?(y(),p(`div`,{key:2,ref_key:`noTitle`,ref:Qt,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):f(``,!0),I.value.title.text?(y(),p(`div`,{key:3,ref_key:`chartTitle`,ref:Xt,style:`width:100%;background:transparent;padding-bottom:24px`},[(y(),d(Te,{key:`title_${en.value}`,config:{title:{cy:`donut-div-title`,...I.value.title},subtitle:{cy:`donut-div-subtitle`,...I.value.title.subtitle}}},null,8,[`config`]))],512)):f(``,!0),j.value.show&&Gt.value&&(w(bn)||w(vn))?(y(),d(w(Rt),{ref_key:`userOptionsRef`,ref:rn,key:`user_option_${qt.value}`,backgroundColor:I.value.backgroundColor,color:I.value.color,isPrinting:w(kn),isImaging:w(An),uid:Kt.value,hasTooltip:j.value.buttons.tooltip&&M.value.show,hasPdf:j.value.buttons.pdf,hasXls:j.value.buttons.csv,hasImg:j.value.buttons.img,hasSvg:j.value.buttons.svg,hasTable:j.value.buttons.table,hasLabel:j.value.buttons.labels&&A.value.type!==`violin`,hasFullscreen:j.value.buttons.fullscreen,hasAltCopy:j.value.buttons.altCopy,isTooltip:H.value.showTooltip,isFullscreen:$.value,titles:{...j.value.buttonTitles},chartElement:D.value,position:j.value.position,hasAnnotator:j.value.buttons.annotator,isAnnotation:Tr.value,callbacks:j.value.callbacks,printScale:j.value.print.scale,tableDialog:A.value.table.useDialog,isCursorPointer:L.value,onToggleFullscreen:br,onGeneratePdf:w(jn),onGenerateCsv:vr,onGenerateImage:w(Lr),onGenerateSvg:w(Ir),onToggleTable:Sr,onToggleLabels:Cr,onToggleTooltip:wr,onToggleAnnotator:Er,onCopyAlt:Rr,style:v({visibility:w(bn)?w(vn)?`visible`:`hidden`:`visible`})},We({_:2},[x(w(je)(e.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionLabels optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:T(n=>[S(e.$slots,t,_(g(w(Me)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasLabel.hasFullscreen.hasAltCopy.isTooltip.isFullscreen.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):f(``,!0),m(`div`,at,[(y(),p(`svg`,{ref_key:`svgRef`,ref:R,xmlns:w(fe),class:Ye({"vue-data-ui-fullscreen--on":$.value,"vue-data-ui-fulscreen--off":!$.value,"vue-data-ui-no-transition":!w(fn)||w(Hn)}),viewBox:`0 0 ${B.value} ${V.value}`,style:v(`max-width:100%; overflow: visible; background:transparent;color:${I.value.color};;visibility:${w(Vn)?`visible`:`hidden`}`),"aria-describedby":`chart-instructions-${Kt.value}`,tabindex:`0`,onFocus:Gr,onBlur:Kr,onKeydown:qr},[Ke(w(Bt)),S(e.$slots,`svg-underlayer`,{svg:{...G.value,isPrintingImg:w(kn)||w(An)||w(Pr),isPrintingSvg:w(Fr),boxPlotSummaries:X.value,series:K.value}},void 0,!0),e.$slots[`chart-background`]?(y(),p(`foreignObject`,{key:0,x:G.value.left,y:G.value.top,width:Math.max(.1,G.value.width),height:Math.max(.1,G.value.height),style:{pointerEvents:`none`}},[S(e.$slots,`chart-background`,{},void 0,!0)],8,st)):f(``,!0),F.value.show?(y(),p(`g`,ct,[F.value.horizontalGrid.show?(y(),p(`g`,lt,[(y(!0),p(l,null,x(lr.value,e=>(y(),p(`line`,{x1:e.x1,x2:e.x2,y1:e.y,y2:e.y,stroke:F.value.horizontalGrid.stroke,"stroke-width":F.value.horizontalGrid.strokeWidth,"stroke-dasharray":F.value.horizontalGrid.strokeDasharray,"stroke-linecap":`round`},null,8,ut))),256))])):f(``,!0),F.value.verticalGrid.show?(y(),p(`g`,dt,[(y(!0),p(l,null,x(K.value,(e,t)=>(y(),p(`line`,{x1:G.value.left+(t+1)*G.value.stripWidth,x2:G.value.left+(t+1)*G.value.stripWidth,y1:G.value.top,y2:G.value.bottom,stroke:F.value.verticalGrid.stroke,"stroke-width":F.value.verticalGrid.strokeWidth,"stroke-dasharray":F.value.verticalGrid.strokeDasharray,"stroke-linecap":`round`},null,8,ft))),256))])):f(``,!0),m(`line`,{x1:G.value.left,x2:G.value.left,y1:G.value.top,y2:G.value.bottom,stroke:F.value.stroke,"stroke-width":F.value.strokeWidth,"stroke-linecap":`round`},null,8,pt),m(`line`,{x1:G.value.left,x2:G.value.right,y1:G.value.bottom,y2:G.value.bottom,stroke:F.value.stroke,"stroke-width":F.value.strokeWidth,"stroke-linecap":`round`},null,8,mt)])):f(``,!0),N.value.yAxisLabels.show?(y(),p(`g`,{key:2,ref_key:`scaleLabels`,ref:cn},[(y(!0),p(l,null,x(lr.value,(e,t)=>(y(),p(`text`,{class:Ye({"vue-data-ui-transition":w(fn)&&!w(Hn)}),key:`sl_${t}`,transform:`translate(${e.x1+N.value.yAxisLabels.offsetX-5}, ${e.y+N.value.yAxisLabels.fontSize/3})`,fill:N.value.yAxisLabels.color,"font-size":N.value.yAxisLabels.fontSize,"text-anchor":`end`},C(w(oe)(N.value.formatter,e.value,w(n)({p:N.value.prefix,v:e.value,s:N.value.suffix,r:N.value.yAxisLabels.rounding}),{datapoint:e,seriesIndex:t})),11,ht))),128))],512)):f(``,!0),N.value.xAxisLabels.show?(y(),p(`g`,{key:3,ref_key:`timeLabelsEls`,ref:sn},[(y(!0),p(l,null,x(Or.value,(e,t)=>(y(),p(`g`,null,[String(e).includes(`
2
- `)?(y(),p(`text`,{key:1,class:`vue-ui-strip-plot-category-name`,transform:`translate(${G.value.left+(t+1)*G.value.stripWidth-G.value.stripWidth/2}, ${G.value.bottom+N.value.xAxisLabels.fontSize*2+N.value.xAxisLabels.offsetY}), rotate(${N.value.xAxisLabels.rotation})`,"font-size":N.value.xAxisLabels.fontSize,fill:N.value.xAxisLabels.color,"text-anchor":N.value.xAxisLabels.rotation>0?`start`:N.value.xAxisLabels.rotation<0?`end`:`middle`,innerHTML:w(s)({content:w(de)(String(e)),fontSize:N.value.xAxisLabels.fontSize,fill:N.value.xAxisLabels.color,x:0,y:0})},null,8,_t)):(y(),p(`text`,{key:0,class:`vue-ui-strip-plot-category-name`,transform:`translate(${G.value.left+(t+1)*G.value.stripWidth-G.value.stripWidth/2}, ${G.value.bottom+N.value.xAxisLabels.fontSize*2+N.value.xAxisLabels.offsetY}), rotate(${N.value.xAxisLabels.rotation})`,"font-size":N.value.xAxisLabels.fontSize,fill:N.value.xAxisLabels.color,"text-anchor":N.value.xAxisLabels.rotation>0?`start`:N.value.xAxisLabels.rotation<0?`end`:`middle`},C(String(e)),9,gt))]))),256))],512)):f(``,!0),N.value.axis.yLabel?(y(),p(`text`,{key:4,ref_key:`yAxisLabel`,ref:on,fill:N.value.axis.color,"font-size":N.value.axis.fontSize,transform:`translate(${N.value.axis.fontSize}, ${G.value.top+G.value.height/2}) rotate(-90)`,"text-anchor":`middle`},C(N.value.axis.yLabel),9,vt)):f(``,!0),N.value.axis.xLabel?(y(),p(`text`,{key:5,ref_key:`xAxisLabel`,ref:an,fill:N.value.axis.color,"font-size":N.value.axis.fontSize,x:G.value.left+G.value.width/2,y:V.value-N.value.axis.fontSize/3,"text-anchor":`middle`},C(N.value.axis.xLabel),9,yt)):f(``,!0),Q.value?(y(),p(l,{key:6},[m(`line`,{x1:G.value.left,x2:G.value.right,y1:Q.value.y,y2:Q.value.y,stroke:Q.value.color,"stroke-width":1,class:Ye({"select-circle":A.value.useCssAnimation})},null,10,bt),m(`circle`,{cx:G.value.left,cy:Q.value.y,r:3,fill:Q.value.color,class:Ye({"select-circle":A.value.useCssAnimation})},null,10,xt),m(`circle`,{cx:G.value.right,cy:Q.value.y,r:3,fill:Q.value.color,class:Ye({"select-circle":A.value.useCssAnimation})},null,10,St)],64)):f(``,!0),m(`defs`,null,[(y(!0),p(l,null,x(K.value,e=>(y(),d(ze,{t:`radial`,id:e.id,key:`r_${e.id}`,fy:`30%`,stops:[[`10%`,w(a)(e.color,I.value.plots.gradient.intensity/100),1],[`90%`,w(c)(e.color,.1),1],[`100%`,e.color,1]]},null,8,[`id`,`stops`]))),128))]),(y(!0),p(l,null,x(tr.value,(e,n)=>(y(),p(l,{key:e.id},[e.path?(y(),p(`path`,{key:0,d:e.path,fill:e.fill,stroke:e.color,"fill-opacity":P.value.opacity,"stroke-opacity":P.value.strokeOpacity,"stroke-width":P.value.strokeWidth,style:v({pointerEvents:Y.value?`auto`:`none`,cursor:Y.value&&L.value?`pointer`:`default`}),onMouseenter:e=>Y.value&&X.value[n]&&gr({boxPlot:X.value[n],seriesIndex:n,triggerMode:`pointer`}),onMouseleave:t[0]||=e=>Y.value&&hr()},null,44,Ct)):f(``,!0),(y(!0),p(l,null,x(e.connectors,(t,n)=>(y(),p(`line`,{key:`violin_connector_${e.id}_${n}`,x1:t.x,x2:t.x,y1:t.y1,y2:t.y2,stroke:e.color,"stroke-opacity":P.value.strokeOpacity,"stroke-width":P.value.strokeWidth,"stroke-linecap":`round`,style:{"pointer-events":`none`}},null,8,wt))),128))],64))),128)),(y(!0),p(l,null,x(X.value,(e,t)=>(y(),p(`g`,{key:`boxplot_${e.id}`,style:v({cursor:L.value?`pointer`:`default`}),onMouseenter:n=>gr({boxPlot:e,seriesIndex:t,triggerMode:`pointer`}),onMouseleave:hr},[m(`line`,{x1:e.centerX,x2:e.centerX,y1:e.upperY,y2:e.lowerY,stroke:w(c)(e.boxPlotColor,.2),"stroke-width":Math.max(1,P.value.strokeWidth),"stroke-linecap":`round`},null,8,Et),m(`rect`,{x:e.boxLeft,y:Math.min(e.q1Y,e.q3Y),width:e.boxWidth,height:Math.max(1,Math.abs(e.q3Y-e.q1Y)),fill:e.boxPlotColor,stroke:w(c)(e.boxPlotColor,.2),"stroke-width":Math.max(1,P.value.strokeWidth),rx:e.boxWidth/20},null,8,Dt),m(`circle`,{cx:e.boxLeft+e.boxWidth/2,cy:e.medianY,r:e.boxWidth/3*Math.min(1,P.value.boxPlot.medianCircleRadiusRatio),fill:P.value.boxPlot.medianCircleFill,stroke:w(c)(e.boxPlotColor,.2)},null,8,Ot)],44,Tt))),128)),(y(!0),p(l,null,x(J.value,(t,r)=>(y(),p(l,null,[Y.value?f(``,!0):(y(!0),p(l,{key:0},x(t.plots,(n,r)=>(y(),d(Le,qe({ref_for:!0},e.$attrs,{plot:{x:n.x,y:$t.value?n.y:G.value.top},radius:Q.value&&Q.value.id===n.id?U.value*1.5:U.value,shape:I.value.plots.shape,stroke:I.value.plots.stroke,strokeWidth:I.value.plots.strokeWidth,color:I.value.plots.gradient.show?`url(#${t.id})`:t.color,style:`transition: all 0.2s ease-in-out; opacity:${Q.value?Q.value.id===n.id?1:.2:I.value.plots.opacity};${Fn.value?`transition-delay:${r*50}ms`:``}`,class:{"vue-ui-strip-plot-animated":A.value.useCssAnimation&&Fn.value&&!w(hn),"vue-ui-strip-plot-select-circle":A.value.useCssAnimation&&!Fn.value},onMouseenter:e=>mr({datapoint:n,seriesIndex:r,triggerMode:`pointer`}),onMouseleave:e=>dr({datapoint:n,seriesIndex:r}),onClick:e=>fr({datapoint:n,seriesIndex:r})}),null,16,[`plot`,`radius`,`shape`,`stroke`,`strokeWidth`,`color`,`style`,`class`,`onMouseenter`,`onMouseleave`,`onClick`]))),256)),H.value.dataLabels.show&&!Y.value?(y(),p(`g`,kt,[(y(!0),p(l,null,x(t.plots,(e,r)=>(y(),p(l,null,[r===t.plots.length-1||Q.value&&Q.value.id===e.id&&!H.value.showTooltip?(y(),p(`text`,{key:0,x:e.x,y:e.y+N.value.bestPlotLabel.offsetY-U.value*(Q.value&&Q.value.id===e.id&&!H.value.showTooltip?2:1.5),"font-size":N.value.bestPlotLabel.fontSize,fill:N.value.bestPlotLabel.color,"text-anchor":`middle`,style:v(`opacity:${A.value.useCssAnimation?+!Fn.value:1};transition:opacity 0.2s ease-in;`)},C(e.name)+` `+C(N.value.bestPlotLabel.showValue?w(oe)(N.value.formatter,e.value,w(n)({p:`(${N.value.prefix}`,v:e.value,s:`${N.value.suffix})`,r:I.value.labels.bestPlotLabel.rounding}),{datapoint:e,seriesIndex:r}):``),13,At)):f(``,!0)],64))),256))])):f(``,!0)],64))),256)),S(e.$slots,`svg`,{svg:{...G.value,isPrintingImg:w(kn)||w(An)||w(Pr),isPrintingSvg:w(Fr),boxPlotSummaries:X.value,series:K.value}},void 0,!0)],46,ot)),e.$slots.hint?(y(),p(`div`,jt,[S(e.$slots,`hint`,_(g({hint:A.value.a11y.translations.keyboardNavigation,isVisible:dn.value})),void 0,!0)])):f(``,!0)]),e.$slots.watermark?(y(),p(`div`,Mt,[S(e.$slots,`watermark`,_(g({isPrinting:w(kn)||w(An)||w(Pr)||w(Fr)})),void 0,!0)])):f(``,!0),e.$slots.source?(y(),p(`div`,{key:6,ref_key:`source`,ref:Zt,dir:`auto`},[S(e.$slots,`source`,{},void 0,!0)],512)):f(``,!0),Ke(w(Pt),{teleportTo:M.value.teleportTo,show:H.value.showTooltip&&Jt.value,backgroundColor:M.value.backgroundColor,color:M.value.color,borderRadius:M.value.borderRadius,borderColor:M.value.borderColor,borderWidth:M.value.borderWidth,fontSize:M.value.fontSize,backgroundOpacity:M.value.backgroundOpacity,position:M.value.position,offsetX:M.value.offsetX,offsetY:M.value.offsetY,parent:D.value,content:Yt.value,isFullscreen:$.value,isCustom:w(i)(M.value.customFormat),smooth:M.value.smooth,backdropFilter:M.value.backdropFilter,smoothForce:M.value.smoothForce,smoothSnapThreshold:M.value.smoothSnapThreshold,isA11yMode:k.value===`keyboard`,a11yPosition:un.value},{"tooltip-before":T(()=>[S(e.$slots,`tooltip-before`,_(g({...ur.value})),void 0,!0)]),tooltip:T(()=>[S(e.$slots,`tooltip`,_(g({...ur.value})),void 0,!0)]),"tooltip-after":T(()=>[S(e.$slots,`tooltip-after`,_(g({...ur.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`borderRadius`,`borderColor`,`borderWidth`,`fontSize`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isFullscreen`,`isCustom`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),Gt.value&&j.value.buttons.table?(y(),d(Qe(Ar.value.component),qe({key:7},Ar.value.props,{ref_key:`tableUnit`,ref:nn,onClose:jr}),We({content:T(()=>[(y(),d(w(Lt),{key:`table_${tn.value}`,colNames:yr.value.colNames,head:yr.value.head,body:yr.value.body,config:yr.value.config,title:A.value.table.useDialog?``:Ar.value.title,withCloseButton:!A.value.table.useDialog,isCursorPointer:L.value,onClose:jr},{th:T(({th:e})=>[m(`div`,Nt,C(e),1)]),td:T(({td:e})=>[Ge(C(e.name||e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[A.value.table.useDialog?{name:`title`,fn:T(()=>[Ge(C(Ar.value.title),1)]),key:`0`}:void 0,A.value.table.useDialog?{name:`actions`,fn:T(()=>[m(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[1]||=e=>vr(j.value.callbacks.csv),style:v({cursor:L.value?`pointer`:`default`})},[Ke(w(Ft),{name:`fileCsv`,stroke:Ar.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):f(``,!0),S(e.$slots,`skeleton`,{},()=>[w(hn)?(y(),d(ye,{key:0})):f(``,!0)],!0)],46,rt))}},[[`__scopeId`,`data-v-1ee3f63b`]]);export{nt as n,Pt as t};
1
+ import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,D as r,Dt as i,Ft as a,Ht as o,J as s,Q as c,S as ee,X as te,Zt as ne,_ as re,at as ie,b as ae,i as oe,in as se,nt as ce,pt as le,rn as ue,sn as de,t as fe,v as pe,w as me,x as he,yt as ge,zt as _e}from"./lib-rPeBMZrn.js";import{n as ve,t as ye}from"./BaseScanner-8NdoBs7B.js";import{n as be,t as xe}from"./useHints-C-TwxM0Y.js";import{t as Se}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as Ce}from"./resolveChartConfig-CIhClE5R.js";import{t as we}from"./chartImage-DPGnEuYM.js";import{n as Te}from"./Title-BliHuXfT.js";import{t as Ee}from"./useChartExport-BZts4KFb.js";import{n as De,t as Oe}from"./tableIntegration-CNoJ1CIY.js";import{n as ke,t as Ae}from"./annotationSlots-BRR85CqJ.js";import{n as je,t as Me}from"./userOptionsSlots-DYuo-E5m.js";import{t as Ne}from"./usePrinter-DVf3YcG5.js";import{t as Pe}from"./useTransitions-ChGGrtrv.js";import{t as Fe}from"./useSvgLabelLayout-42Kats14.js";import{t as Ie}from"./useTimeLabelCollider-BTybMUFi.js";import{t as Le}from"./Shape-CRe8woTu.js";import{t as Re}from"./useResponsive-CENUxfEL.js";import{t as ze}from"./DefGrad-DKMq1REY.js";import{t as Be}from"./A11yDataTable-DWNlWXzs.js";import{t as Ve}from"./useUserOptionState-CXlFnwPv.js";import{t as He}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ue}from"./vue_ui_strip_plot-CwMowrhT.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createSlots as We,createTextVNode as Ge,createVNode as Ke,defineAsyncComponent as h,guardReactiveProps as g,mergeProps as qe,nextTick as Je,normalizeClass as Ye,normalizeProps as _,normalizeStyle as v,onBeforeUnmount as Xe,onMounted as Ze,openBlock as y,ref as b,renderList as x,renderSlot as S,resolveDynamicComponent as Qe,shallowRef as $e,toDisplayString as C,toRefs as et,unref as w,watch as tt,withCtx as T}from"vue";var nt=/* @__PURE__ */ e({default:()=>Pt}),rt=[`id`],it=[`id`],at={style:{position:`relative`}},ot=[`xmlns`,`viewBox`,`aria-describedby`],st=[`x`,`y`,`width`,`height`],ct={key:1},lt={key:0},ut=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],dt={key:1},ft=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`,`stroke-dasharray`],pt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],mt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],ht=[`transform`,`fill`,`font-size`],gt=[`transform`,`font-size`,`fill`,`text-anchor`],_t=[`transform`,`font-size`,`fill`,`text-anchor`,`innerHTML`],vt=[`fill`,`font-size`,`transform`],yt=[`fill`,`font-size`,`x`,`y`],bt=[`x1`,`x2`,`y1`,`y2`,`stroke`],xt=[`cx`,`cy`,`fill`],St=[`cx`,`cy`,`fill`],Ct=[`d`,`fill`,`stroke`,`fill-opacity`,`stroke-opacity`,`stroke-width`,`onMouseenter`],wt=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-opacity`,`stroke-width`],Tt=[`onMouseenter`],Et=[`x1`,`x2`,`y1`,`y2`,`stroke`,`stroke-width`],Dt=[`x`,`y`,`width`,`height`,`fill`,`stroke`,`stroke-width`,`rx`],Ot=[`cx`,`cy`,`r`,`fill`,`stroke`],kt={key:1},At=[`x`,`y`,`font-size`,`fill`],jt={key:0,style:{position:`absolute`,top:`100%`,left:`0`,width:`100%`},"data-dom-to-png-ignore":``,"aria-hidden":`true`},Mt={key:5,class:`vue-data-ui-watermark`},Nt={style:{display:`flex`,"align-items":`center`}},Pt=/*#__PURE__*/ Se({__name:`vue-ui-strip-plot`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`selectDatapoint`,`copyAlt`],setup(e,{expose:Se,emit:nt}){let Pt=h(()=>import(`./Tooltip-C1q0Qoh7.js`)),Ft=h(()=>import(`./BaseIcon-Cm-IJ179.js`).then(e=>e.n)),It=h(()=>import(`./vue-ui-accordion-S3nRtTU-.js`).then(e=>e.n)),Lt=h(()=>import(`./DataTable-0Vv-aGHD.js`)),Rt=h(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),zt=h(()=>import(`./PenAndPaper-BGEp-TUm.js`).then(e=>e.t)),Bt=h(()=>import(`./PackageVersion-DhptF5oD.js`).then(e=>e.t)),Vt=h(()=>import(`./BaseDraggableDialog-DHgIPVmz.js`).then(e=>e.n)),Ht=[`classic`,`scatter`,`violin`],{vue_ui_strip_plot:Ut}=t(),E=e,Wt=nt,Gt=u({get(){return!!E.dataset&&E.dataset.length},set(e){return e}}),Kt=b(te()),qt=b(0),Jt=b(!1),Yt=b(``),D=b(null),Xt=b(null),Zt=b(null),Qt=b(null),$t=b(!1),en=b(0),tn=b(0),nn=b(null),rn=b(null),an=b(null),on=b(null),sn=b(null),cn=b(null),O=b(null),ln=b(null),k=b(`pointer`),un=b({x:0,y:0}),dn=b(!1),A=b(xn()),j=u(()=>A.value.userOptions),M=u(()=>A.value.style.chart.tooltip),N=u(()=>A.value.style.chart.labels),P=u(()=>A.value.style.chart.violin),F=u(()=>A.value.style.chart.grid),I=u(()=>A.value.style.chart);be({config:()=>A.value,dataset:()=>E.dataset,component:`VueUiStripPlot`,rules:[xe.emptyArray,{test:e=>e.length>12,message:[`👀 The number of series is > 12. Consider:`,``,`▶️ Using filters to let users choose a maximum number of series to display.`,``,`▶️ Using multiple instances of the chart to display related series.`]}]});let{transitionEnabled:fn}=Pe({config:()=>A.value.transitions,dataset:()=>E.dataset}),pn=u(()=>Sn(A.value.type)),L=u(()=>A.value.userOptions.useCursorPointer),mn=u(()=>se({defaultConfig:{userOptions:{show:!1},table:{show:!1},style:{chart:{backgroundColor:`#99999930`,padding:{top:24,left:24,right:24,bottom:24},grid:{stroke:`#6A6A6A`,horizontalGrid:{stroke:`#6A6A6A`},verticalGrid:{stroke:`#6A6A6A`}},plots:{stroke:`#6A6A6A`},labels:{bestPlotLabel:{show:!1},axis:{xLabel:``,yLabel:``},xAxisLabels:{show:!1},yAxisLabels:{show:!1}}}}},userConfig:A.value.skeletonConfig??{}})),{loading:hn,FINAL_DATASET:gn,manualLoading:_n}=ve({...et(E),FINAL_CONFIG:A,prepareConfig:xn,skeletonDataset:E.config?.skeletonDataset??[{name:`_`,color:`#DBDBDB`,plots:[{name:`_`,value:1},{name:`_`,value:2},{name:`_`,value:3}]},{name:`_`,color:`#C4C4C4`,plots:[{name:`_`,value:3},{name:`_`,value:5},{name:`_`,value:8}]},{name:`_`,color:`#ADADAD`,plots:[{name:`_`,value:8},{name:`_`,value:13},{name:`_`,value:21}]},{name:`_`,color:`#969696`,plots:[{name:`_`,value:21},{name:`_`,value:34},{name:`_`,value:55}]},{name:`_`,color:`#808080`,plots:[{name:`_`,value:55},{name:`_`,value:89},{name:`_`,value:144}]}],skeletonConfig:se({defaultConfig:A.value,userConfig:mn.value})}),{userOptionsVisible:vn,setUserOptionsVisibility:yn,keepUserOptionState:bn}=Ve({config:A.value}),{svgRef:R}=He({config:I.value.title});function xn(){return Ce(E.config,Ut,Ue)}function Sn(e){return Ht.includes(e)?e:`classic`}let Cn=ne(E.config);tt(()=>E.config,async(e,t)=>{let n=ne(e),r=n!==Cn;Cn=n;let i=xn();r?(hn.value||(A.value=i),vn.value=!A.value.userOptions.showOnChartHover,On(),en.value+=1,tn.value+=1,H.value.dataLabels.show=N.value.bestPlotLabel.show,H.value.showTable=A.value.table.show,H.value.showTooltip=M.value.show,A.value.responsive||(B.value=I.value.width,V.value=I.value.height,Rn.value=I.value.plots.radius)):(A.value.style.chart.tooltip=i.style.chart.tooltip,H.value.showTooltip=A.value.style.chart.tooltip.show)},{deep:!0}),tt(()=>E.dataset,e=>{Array.isArray(e)&&e.length>0&&(_n.value=!1)},{deep:!0});let z=$e(null),wn=$e(null),Tn=b(!1),En=0;Ze(()=>{On()});let Dn=u(()=>A.value.debug);function On(){_e(E.dataset)?(ie({componentName:`VueUiStripPlot`,type:`dataset`,debug:Dn.value}),_n.value=!0):E.dataset.forEach((e,t)=>{ge({datasetObject:e,requiredAttributes:[`name`,`plots`]}).forEach(e=>{Gt.value=!1,ie({componentName:`VueUiStripPlot`,type:`datasetSerieAttribute`,property:e,index:t,debug:Dn.value})}),e.plots&&e.plots.forEach((e,n)=>{ge({datasetObject:e,requiredAttributes:[`name`,`value`]}).forEach(e=>{Gt.value=!1,ie({componentName:`VueUiStripPlot`,type:`datasetSerieAttribute`,property:e,index:`${t},${n}`,debug:Dn.value})})})}),_e(E.dataset)||(_n.value=A.value.loading),A.value.responsive&&(z.value&&(wn.value&&z.value.unobserve(wn.value),z.value.disconnect()),z.value=new ResizeObserver(()=>{let{width:e,height:t}=Re({chart:D.value,title:I.value.title.text?Xt.value:null,source:Zt.value,noTitle:Qt.value});cancelAnimationFrame(En),En=requestAnimationFrame(()=>{Ln.value=t,B.value=Math.max(.1,e),V.value=Math.max(.1,t-12),Tn.value=!0,A.value.responsiveProportionalSizing?Rn.value=ue({relator:Math.min(t,e),adjuster:600,source:I.value.plots.radius,threshold:6,fallback:6}):Rn.value=I.value.plots.radius})}),wn.value=D.value.parentNode,z.value.observe(wn.value)),$t.value=!0,setTimeout(()=>{Fn.value=!1},Jn.value*50)}Xe(()=>{cancelAnimationFrame(En),z.value&&(wn.value&&z.value.unobserve(wn.value),z.value.disconnect())});let{isPrinting:kn,isImaging:An,generatePdf:jn,generateImage:Mn}=Ne({elementId:`strip-plot_${Kt.value}`,fileName:I.value.title.text||`vue-ui-strip-plot`,options:A.value.userOptions.print}),Nn=u(()=>A.value.userOptions.show&&!I.value.title.text),Pn=u(()=>me(A.value.customPalette)),Fn=b(A.value.useCssAnimation),In=b({top:I.value.padding.top,bottom:I.value.padding.bottom,left:I.value.padding.left,right:I.value.padding.right}),B=b(I.value.width),V=b(I.value.height),Ln=b(I.value.height),Rn=b(I.value.plots.radius),H=b({showTable:A.value.table.show,dataLabels:{show:N.value.bestPlotLabel.show},showTooltip:M.value.show});tt(A,()=>{H.value={showTable:A.value.table.show,dataLabels:{show:N.value.bestPlotLabel.show},showTooltip:M.value.show},A.value.responsive||(B.value=I.value.width,V.value=I.value.height,Rn.value=I.value.plots.radius)},{immediate:!0});let U=u(()=>Math.min(Rn.value,G.value.stripWidth/2*.9));function W(e){return Number.isFinite(e)?Number(e.toFixed(2)):0}function zn(){return Math.max(0,(G.value.stripWidth/2-U.value*1.8)*.86)*Math.min(1,P.value.widthRatio)}let{metrics:Bn,ready:Vn,settling:Hn,update:Un}=Fe({svgRef:R,canMeasure:()=>!A.value.responsive||Tn.value,initialMetrics:{scaleLabelsWidth:0,yAxisLabelWidth:0,xAxisLabelHeight:0,timeLabelsHeight:0},measure:e=>({scaleLabelsWidth:e(cn.value).textWidth,yAxisLabelWidth:e(on.value).rotatedWidth,xAxisLabelHeight:e(an.value).height,timeLabelsHeight:e(sn.value).height})});function Wn(){let e=Bn.value.scaleLabelsWidth,t=Bn.value.yAxisLabelWidth;return e+t+(t?24:0)}let Gn=u(()=>Bn.value.xAxisLabelHeight+Bn.value.timeLabelsHeight+(an.value?N.value.axis.fontSize/3+12+N.value.axis.xLabelOffsetY:0)+(sn.value?12:0)),G=u(()=>{let e=Wn(),t=In.value.left+e+N.value.axis.yLabelOffsetX+5,n=B.value-In.value.right,r=Math.max(0,n-t),i=In.value.top+I.value.plots.radius+N.value.bestPlotLabel.fontSize,a=V.value-In.value.bottom-Gn.value,o=Math.max(0,a-i),s=Array.isArray(gn.value)?gn.value.length:0;return{left:t,right:n,top:i,bottom:a,width:r,height:o,stripWidth:s>0?r/s:0,absoluteHeight:V.value}});function Kn(e){return G.value.left+(e+1)*G.value.stripWidth-G.value.stripWidth/2}let qn=u(()=>gn.value.map((e,t)=>{let n=te();return{...e,id:n,color:e.color?ee(e.color):Pn.value[t]||o[t]||o[t%o.length],plots:e.plots.map((r,i)=>({...r,value:ae(r.value),parentId:n,parentName:e.name,parentIndex:t,plotIndex:i,color:e.color?ee(e.color):Pn.value[t]||o[t]||o[t%o.length],id:te()})).sort((e,t)=>e.value-t.value)}})),K=u(()=>(qn.value||[]).map((e,t)=>({...e,plots:e.plots.map(e=>({...e,x:Kn(t)}))}))),Jn=u(()=>Math.max(...K.value.map(e=>e.plots.length))),Yn=u(()=>{let e=K.value.flatMap(e=>e.plots.map(e=>e.value));return{max:Math.max(...e),min:Math.min(...e)}}),Xn=u(()=>{let e=F.value.scaleMin,t=F.value.scaleMax,n=Math.max(2,F.value.scaleSteps),r=Yn.value.min<0?Yn.value.min:0,i=Yn.value.max;if(e===null&&t===null)return re(r,i,n);if(e!==null&&t!==null)return pe(e,t,n);let a=re(e===null?r:e,t===null?i:t,n);return pe(e===null?a.min:e,t===null?a.max:t,n)});function q(e){let t=Xn.value.max-Xn.value.min;return t?G.value.bottom-(e-Xn.value.min)/t*G.value.height:G.value.bottom}let J=u(()=>(K.value||[]).map((e,t)=>{let n=e.plots.map(e=>({...e,y:q(e.value)})),r=pn.value===`classic`?n.map(()=>0):er(n);return{...e,plots:n.map((e,t)=>({...e,x:e.x+r[t]}))}})),Y=u(()=>pn.value===`violin`&&!!P.value?.boxPlot?.show);function Zn(e,t){if(!e.length)return 0;if(e.length===1)return e[0];let n=(e.length-1)*t,r=Math.floor(n),i=n-r,a=e[r+1];return a===void 0?e[r]:e[r]+i*(a-e[r])}let X=u(()=>Y.value?J.value.map((e,t)=>{let n=e.plots.map(e=>e.value).sort((e,t)=>e-t),r=Zn(n,.25),i=Zn(n,.5),a=Zn(n,.75),o=a-r,s=r-o*1.5,c=a+o*1.5,ee=n.find(e=>e>=s),te=n.slice().reverse().find(e=>e<=c),ne=Kn(t),re=Math.max(U.value*2.8,Math.min(zn()*.32,G.value.stripWidth*.12))*Math.min(1.5,P.value.boxPlot.widthRatio);return{id:e.id,boxPlotColor:P.value.boxPlot.useSerieColor?e.color:P.value.boxPlot.color,color:e.color,name:e.name,count:n.length,lowerAdjacent:ee??n[0],q1:r,median:i,q3:a,upperAdjacent:te??n[n.length-1],iqr:o,lowerFence:s,upperFence:c,centerX:ne,boxLeft:ne-re/2,boxWidth:re,q1Y:q(r),medianY:q(i),q3Y:q(a),lowerY:q(ee??n[0]),upperY:q(te??n[n.length-1])}}):[]),Qn=u(()=>[A.value.table.columnNames.series,P.value.tooltipLabels.lowerAdjacent,P.value.tooltipLabels.q1,P.value.tooltipLabels.median,P.value.tooltipLabels.q3,P.value.tooltipLabels.upperAdjacent,P.value.tooltipLabels.iqr,P.value.tooltipLabels.count]);function $n(e){return n({p:N.value.prefix,v:e,s:N.value.suffix,r:A.value.table.td.roundingValue})}function er(e){let t=pn.value===`violin`?Math.max(0,zn()-U.value*1.15):Math.max(0,G.value.stripWidth/2-U.value*1.5);if(!e.length||!t)return e.map(()=>0);let n=e.map(()=>0),r=U.value*2.1,i=Math.min(t,r),a=[0];for(let e=i;e<=t+i/2;e+=i)a.push(-Math.min(e,t)),a.push(Math.min(e,t));let o=[];return e.forEach((e,t)=>{let i=a.find(t=>o.every(n=>{let i=t-n.offset,a=e.y-n.y;return Math.hypot(i,a)>=r}))??0;n[t]=i,o.push({y:e.y,offset:i})}),n}let tr=u(()=>pn.value===`violin`?J.value.map((e,t)=>({id:e.id,color:P.value.useSerieColor?e.color:P.value.stroke,fill:P.value.useSerieColor?e.color:P.value.fill,path:nr(e.plots,t),connectors:rr(e.plots,t)})):[]);function nr(e,t){let n=zn();if(!e.length||!G.value.height||!n)return``;let r=Kn(t),i=e.map(e=>e.y),a=Z(i),o=ar({yValues:i,bandwidth:a});return o.length>1?o.map(e=>sr({yValues:e,centerX:r,maxWidth:ir({clusterLength:e.length,totalLength:i.length,maxWidth:n}),bandwidth:Z(e)})).join(` `):sr({yValues:i,centerX:r,maxWidth:n,bandwidth:a})}function rr(e,t){if(!e.length)return[];let n=Kn(t),r=e.map(e=>e.y),i=ar({yValues:r,bandwidth:Z(r)});return i.length<2?[]:i.slice(1).map((e,t)=>{let r=i[t],a=Z(r),o=Z(e),s=he(Math.max(...r)+a*2.35,G.value.top,G.value.bottom),c=he(Math.min(...e)-o*2.35,G.value.top,G.value.bottom);return{x:W(n),y1:W(s),y2:W(c)}})}function ir({clusterLength:e,totalLength:t,maxWidth:n}){let r=(e/t)**.6,i=e<=2?.72:1;return Math.max(U.value*2.2,n*he(r*i,.18,1))}function Z(e){let t=e.reduce((e,t)=>e+t,0)/Math.max(1,e.length),n=e.reduce((e,n)=>e+(n-t)**2,0)/Math.max(1,e.length),r=Math.sqrt(n),i=e.length<2?Math.max(U.value*2.6,G.value.height/48):U.value*2.1;return he(1.06*r*e.length**-.2,i,G.value.height/5)}function ar({yValues:e,bandwidth:t}){if(e.length<2)return[e];let n=[...e].sort((e,t)=>e-t),r=Math.max(t*1.45,U.value*5),i=[],a=[n[0]];for(let e=1;e<n.length;e+=1)Math.abs(n[e]-n[e-1])>r?(i.push(a),a=[n[e]]):a.push(n[e]);return i.push(a),or(i)}function or(e){return e.reduce((e,t)=>{let n=e[e.length-1];if(!n)return e.push(t),e;let r=Z(n),i=Z(t);return Math.max(...n)+r*2.35>=Math.min(...t)-i*2.35?n.push(...t):e.push(t),e},[])}function sr({yValues:e,centerX:t,maxWidth:n,bandwidth:r}){let i=he(Math.min(...e)-r*2.35,G.value.top,G.value.bottom),a=he(Math.max(...e)+r*2.35,G.value.top,G.value.bottom),o=Math.max(48,Math.min(120,Math.round((a-i)/Math.max(1,r/4)))),s=Array.from({length:o},(t,n)=>{let s=i+(a-i)*n/Math.max(1,o-1);return{y:s,density:e.reduce((e,t)=>{let n=(s-t)/r;return e+Math.exp(-.5*n*n)},0)}}),c=Math.max(...s.map(e=>e.density));if(!c)return``;let ee=s.map((e,t)=>{let r=t===0||t===s.length-1?0:e.density/c*n;return{y:W(e.y),width:W(r)}}),te=ee.map(e=>({x:W(t-e.width),y:e.y})),ne=ee.slice(0,-1).reverse().map(e=>({x:W(t+e.width),y:e.y}));return`${cr([...te,...ne])} Z`}function cr(e){if(!e.length)return``;if(e.length===1)return`M ${e[0].x} ${e[0].y}`;let t=`M ${e[0].x} ${e[0].y}`;for(let n=1;n<e.length-1;n+=1){let r=e[n],i=e[n+1],a=W((r.x+i.x)/2),o=W((r.y+i.y)/2);t+=` Q ${r.x} ${r.y} ${a} ${o}`}let n=e[e.length-1];return`${t} L ${n.x} ${n.y}`}let lr=u(()=>Xn.value.ticks.map(e=>({y:q(e),x1:G.value.left,x2:G.value.right,value:e}))),ur=b(null),Q=b(null);function dr({datapoint:e,seriesIndex:t}){k.value!==`keyboard`&&(Jt.value=!1,Q.value=null,A.value.events.datapointLeave&&A.value.events.datapointLeave({datapoint:e,seriesIndex:t}))}function fr({datapoint:e,seriesIndex:t}){Wt(`selectDatapoint`,e),A.value.events.datapointClick&&A.value.events.datapointClick({datapoint:e,seriesIndex:t})}function pr(e,t={}){return oe(N.value.formatter,e,n({p:N.value.prefix,v:e,s:N.value.suffix,r:M.value.roundingValue}),t)}function mr({datapoint:e,seriesIndex:t,triggerMode:n=`pointer`}){A.value.events.datapointEnter&&A.value.events.datapointEnter({datapoint:e,seriesIndex:t}),k.value=n,ur.value={datapoint:e,seriesIndex:t,config:A.value,series:qn.value},Jt.value=!0,Q.value=e;let r=M.value.customFormat;if(i(r)&&le(()=>r({seriesIndex:t,datapoint:e,series:qn.value,config:A.value})))Yt.value=r({seriesIndex:t,datapoint:e,series:qn.value,config:A.value});else{let n=``;n+=`<div style="display:flex;flex-direction:row;gap:6px;align-items:center;"><svg viewBox="0 0 12 12" height="14" width="14"><circle cx="6" cy="6" r="6" stroke="none" fill="${I.value.plots.gradient.show?`url(#${e.parentId})`:e.color}"/></svg>${e.name}</div>`,n+=`<div>${pr(e.value,{datapoint:e,seriesIndex:t})}</div>`,Yt.value=`<div>${n}</div>`}}function hr(){k.value!==`keyboard`&&(Jt.value=!1,Q.value=null)}function gr({boxPlot:e,seriesIndex:t,triggerMode:n=`pointer`}){k.value=n,Q.value=null,Jt.value=!0,ur.value={boxPlot:e,seriesIndex:t,config:A.value,series:qn.value};let r=M.value.customFormat;if(i(r))try{let n={boxPlot:e,seriesIndex:t,series:qn.value,config:A.value};if(le(()=>r(n))){Yt.value=r(n);return}}catch{}let a=[[P.value.tooltipLabels.upperAdjacent,e.upperAdjacent],[P.value.tooltipLabels.q3,e.q3],[P.value.tooltipLabels.median,e.median],[P.value.tooltipLabels.q1,e.q1],[P.value.tooltipLabels.lowerAdjacent,e.lowerAdjacent],[P.value.tooltipLabels.iqr,e.iqr]],o=`<svg viewBox="0 0 12 12" height="14" width="14"><rect x="1" y="1" width="10" height="10" rx="2" stroke="none" fill="${e.color}"/></svg>`,s=a.map(([n,r])=>`<div style="display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between;"><span>${n}</span><b>${pr(r,{boxPlot:e,seriesIndex:t})}</b></div>`).join(``);Yt.value=`<div style="min-width:160px;"><div style="display:flex;flex-direction:row;gap:6px;align-items:center;margin-bottom:6px;">${o}${e.name}</div>`+s+`<div style="display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between;margin-top:6px;"><span>${P.value.tooltipLabels.count}</span><b>${e.count}</b></div></div>`}let _r=u(()=>({head:K.value.flatMap(e=>JSON.parse(JSON.stringify(e.plots)).sort((e,t)=>t.value-e.value).map(t=>({name:`${e.name} - ${t.name}`,color:t.color}))),body:K.value.flatMap(e=>JSON.parse(JSON.stringify(e.plots)).sort((e,t)=>t.value-e.value).map(e=>e.value))}));function vr(e=null){Je(()=>{let t=[],n=[A.value.table.columnNames.series,A.value.table.columnNames.value];Y.value?(n=Qn.value,t=X.value.map(e=>[[e.name],[e.lowerAdjacent],[e.q1],[e.median],[e.q3],[e.upperAdjacent],[e.iqr],[e.count]])):t=_r.value.head.map((e,t)=>[[e.name],[_r.value.body[t]]]);let i=[[I.value.title.text],[I.value.title.subtitle.text],n.map(e=>[e])].concat(t),a=r(i);e?e(a):ce({csvContent:a,title:I.value.title.text||`vue-ui-strip-plot`})})}let yr=u(()=>{if(Y.value){let e=Qn.value;return{colNames:e,head:e,body:X.value.map(e=>[{color:e.color,name:e.name},$n(e.lowerAdjacent),$n(e.q1),$n(e.median),$n(e.q3),$n(e.upperAdjacent),$n(e.iqr),e.count]),config:{th:{backgroundColor:A.value.table.th.backgroundColor,color:A.value.table.th.color,outline:A.value.table.th.outline},td:{backgroundColor:A.value.table.td.backgroundColor,color:A.value.table.td.color,outline:A.value.table.td.outline},breakpoint:A.value.table.responsiveBreakpoint}}}let e=[A.value.table.columnNames.series,A.value.table.columnNames.value],t=_r.value.head.map((e,t)=>{let r=n({p:N.value.prefix,v:_r.value.body[t],s:N.value.suffix,r:A.value.table.td.roundingValue});return[{color:e.color,name:e.name},r]}),r={th:{backgroundColor:A.value.table.th.backgroundColor,color:A.value.table.th.color,outline:A.value.table.th.outline},td:{backgroundColor:A.value.table.td.backgroundColor,color:A.value.table.td.color,outline:A.value.table.td.outline},breakpoint:A.value.table.responsiveBreakpoint};return{colNames:[A.value.table.columnNames.series,A.value.table.columnNames.value],head:e,body:t,config:r}}),$=b(!1);function br(e){$.value=e,qt.value+=1}function xr(){return K.value}function Sr(){H.value.showTable=!H.value.showTable}function Cr(){H.value.dataLabels.show=!H.value.dataLabels.show}function wr(){H.value.showTooltip=!H.value.showTooltip}let Tr=b(!1);function Er(){Tr.value=!Tr.value}let Dr=we(D,()=>I.value.title.text),Or=u(()=>K.value.map(e=>e.name)),kr=b({start:0,end:K.value.length});Ie({timeLabelsEls:sn,timeLabels:Or,slicer:kr,configRef:A,rotationPath:[`style`,`chart`,`labels`,`xAxisLabels`,`rotation`],autoRotatePath:[`style`,`chart`,`labels`,`xAxisLabels`,`autoRotate`,`enable`],isAutoSize:!1,width:B,height:V,targetClass:`.vue-ui-strip-plot-category-name`,rotation:N.value.xAxisLabels.autoRotate.angle});let Ar=u(()=>Oe({config:A,style:I,mutableConfig:H,dialog:Vt,accordion:It,isFullscreen:$,parent:D,maxWidth:800,isCursorPointer:L}));tt(()=>H.value.showTable,e=>De(e,A,nn));function jr(){H.value.showTable=!1,rn.value&&rn.value.setTableIconState(!1)}let Mr=u(()=>I.value.backgroundColor),Nr=u(()=>I.value.title),{isCallbackImaging:Pr,isCallbackSvg:Fr,generateSvg:Ir,onGenerateImage:Lr}=Ee({svg:R,title:Nr,legend:null,legendItems:null,backgroundColor:Mr,getSvgCallback:()=>A.value.userOptions.callbacks.svg,generateImage:Mn});async function Rr(){Wt(`copyAlt`,{config:A.value,dataset:J.value}),A.value.userOptions.callbacks.altCopy?await Promise.resolve(A.value.userOptions.callbacks.altCopy({config:A.value,dataset:J.value})):console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.")}function zr(){return J.value.length}function Br(e){return J.value[e]?.plots??[]}function Vr(e=O.value,t=ln.value){return!Number.isInteger(e)||!Number.isInteger(t)?null:Br(e)[t]??null}function Hr(){O.value=null,ln.value=null,k.value=`pointer`,Jt.value=!1,Q.value=null}function Ur(e){if(!e||!R.value)return;let t=R.value.getBoundingClientRect();un.value={x:t.left+e.x/B.value*t.width,y:t.top+e.y/V.value*t.height}}function Wr(e,t){let n=Vr(e,t);n&&(O.value=e,ln.value=t,k.value=`keyboard`,Ur(n),mr({datapoint:n,seriesIndex:e,triggerMode:`keyboard`}))}function Gr(){dn.value=!0,O.value=null,ln.value=null}function Kr(){dn.value=!1,Hr()}function qr(e){if(!R.value||Tr.value||document.activeElement!==R.value||!zr())return;let t=e.key===`ArrowLeft`,n=e.key===`ArrowRight`,r=e.key===`ArrowUp`,i=e.key===`ArrowDown`,a=e.key===`Enter`||e.key===` `,o=e.key===`Escape`;if(!t&&!n&&!r&&!i&&!a&&!o)return;if(e.preventDefault(),e.stopPropagation(),o){Hr();return}let s=O.value,c=ln.value;if(s===null||c===null)s=0,c=0;else if(t||n){let e=zr();s=n?(s+1)%e:(s-1+e)%e;let t=Br(s);if(!t.length)return;c=Math.min(c,t.length-1)}else if(r||i){let e=Br(s);if(!e.length)return;c=r?(c+1)%e.length:(c-1+e.length)%e.length}if(a){let e=Vr();if(!e)return;fr({datapoint:e,seriesIndex:O.value})}else Wr(s,c)}let Jr=u(()=>({headers:yr.value?.colNames??[],rows:yr.value?.body?.map(e=>e.map(e=>e&&typeof e==`object`&&`name`in e?e.name:e))??[]}));return Se({getData:xr,getImage:Dr,generatePdf:jn,generateCsv:vr,generateImage:Mn,generateSvg:Ir,toggleTable:Sr,toggleLabels:Cr,toggleTooltip:wr,toggleAnnotator:Er,toggleFullscreen:br,copyAlt:Rr}),tt(()=>[B.value,V.value,N.value,I.value,A.value.style.fontFamily,E.dataset,Tn.value,cn.value,sn.value,an.value,on.value],Un,{flush:`post`,deep:!0}),(e,t)=>(y(),p(`div`,{ref_key:`stripPlotChart`,ref:D,class:Ye(`vue-data-ui-component vue-ui-strip-plot ${$.value?`vue-data-ui-wrapper-fullscreen`:``} ${A.value.useCssAnimation?``:`vue-ui-dna`}`),style:v(`font-family:${A.value.style.fontFamily};width:100%; text-align:center;background:${I.value.backgroundColor};${A.value.responsive?`height:100%`:``}`),id:`strip-plot_${Kt.value}`,onMouseenter:t[2]||=()=>w(yn)(!0),onMouseleave:t[3]||=()=>w(yn)(!1)},[m(`div`,{id:`chart-instructions-${Kt.value}`,class:`sr-only`},[m(`p`,null,C(A.value.a11y.translations.keyboardNavigation),1)],8,it),Jr.value?.rows?.length?(y(),d(Be,{key:0,uid:Kt.value,head:Jr.value.headers,body:Jr.value.rows,notice:A.value.a11y.translations.tableAvailable,caption:A.value.a11y.translations.tableCaption},null,8,[`uid`,`head`,`body`,`notice`,`caption`])):f(``,!0),j.value.buttons.annotator?(y(),d(w(zt),{key:1,svgRef:w(R),backgroundColor:I.value.backgroundColor,color:I.value.color,active:Tr.value,isCursorPointer:L.value,palette:j.value.annotatorPalette,onClose:Er},We({_:2},[x(w(Ae),t=>({name:t,fn:T(n=>[S(e.$slots,t,_(g(w(ke)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):f(``,!0),Nn.value?(y(),p(`div`,{key:2,ref_key:`noTitle`,ref:Qt,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},null,512)):f(``,!0),I.value.title.text?(y(),p(`div`,{key:3,ref_key:`chartTitle`,ref:Xt,style:`width:100%;background:transparent;padding-bottom:24px`},[(y(),d(Te,{key:`title_${en.value}`,config:{title:{cy:`donut-div-title`,...I.value.title},subtitle:{cy:`donut-div-subtitle`,...I.value.title.subtitle}}},null,8,[`config`]))],512)):f(``,!0),j.value.show&&Gt.value&&(w(bn)||w(vn))?(y(),d(w(Rt),{ref_key:`userOptionsRef`,ref:rn,key:`user_option_${qt.value}`,backgroundColor:I.value.backgroundColor,color:I.value.color,isPrinting:w(kn),isImaging:w(An),uid:Kt.value,hasTooltip:j.value.buttons.tooltip&&M.value.show,hasPdf:j.value.buttons.pdf,hasXls:j.value.buttons.csv,hasImg:j.value.buttons.img,hasSvg:j.value.buttons.svg,hasTable:j.value.buttons.table,hasLabel:j.value.buttons.labels&&A.value.type!==`violin`,hasFullscreen:j.value.buttons.fullscreen,hasAltCopy:j.value.buttons.altCopy,isTooltip:H.value.showTooltip,isFullscreen:$.value,titles:{...j.value.buttonTitles},chartElement:D.value,position:j.value.position,hasAnnotator:j.value.buttons.annotator,isAnnotation:Tr.value,callbacks:j.value.callbacks,printScale:j.value.print.scale,tableDialog:A.value.table.useDialog,isCursorPointer:L.value,onToggleFullscreen:br,onGeneratePdf:w(jn),onGenerateCsv:vr,onGenerateImage:w(Lr),onGenerateSvg:w(Ir),onToggleTable:Sr,onToggleLabels:Cr,onToggleTooltip:wr,onToggleAnnotator:Er,onCopyAlt:Rr,style:v({visibility:w(bn)?w(vn)?`visible`:`hidden`:`visible`})},We({_:2},[x(w(je)(e.$slots,`menuIcon optionTooltip optionPdf optionCsv optionImg optionSvg optionTable optionLabels optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:T(n=>[S(e.$slots,t,_(g(w(Me)(t,n))),void 0,!0)])}))]),1032,/* @__PURE__ */ `backgroundColor.color.isPrinting.isImaging.uid.hasTooltip.hasPdf.hasXls.hasImg.hasSvg.hasTable.hasLabel.hasFullscreen.hasAltCopy.isTooltip.isFullscreen.titles.chartElement.position.hasAnnotator.isAnnotation.callbacks.printScale.tableDialog.isCursorPointer.onGeneratePdf.onGenerateImage.onGenerateSvg.style`.split(`.`))):f(``,!0),m(`div`,at,[(y(),p(`svg`,{ref_key:`svgRef`,ref:R,xmlns:w(fe),class:Ye({"vue-data-ui-fullscreen--on":$.value,"vue-data-ui-fulscreen--off":!$.value,"vue-data-ui-no-transition":!w(fn)||w(Hn)}),viewBox:`0 0 ${B.value} ${V.value}`,style:v(`max-width:100%; overflow: visible; background:transparent;color:${I.value.color};;visibility:${w(Vn)?`visible`:`hidden`}`),"aria-describedby":`chart-instructions-${Kt.value}`,tabindex:`0`,onFocus:Gr,onBlur:Kr,onKeydown:qr},[Ke(w(Bt)),S(e.$slots,`svg-underlayer`,{svg:{...G.value,isPrintingImg:w(kn)||w(An)||w(Pr),isPrintingSvg:w(Fr),boxPlotSummaries:X.value,series:K.value}},void 0,!0),e.$slots[`chart-background`]?(y(),p(`foreignObject`,{key:0,x:G.value.left,y:G.value.top,width:Math.max(.1,G.value.width),height:Math.max(.1,G.value.height),style:{pointerEvents:`none`}},[S(e.$slots,`chart-background`,{},void 0,!0)],8,st)):f(``,!0),F.value.show?(y(),p(`g`,ct,[F.value.horizontalGrid.show?(y(),p(`g`,lt,[(y(!0),p(l,null,x(lr.value,e=>(y(),p(`line`,{x1:e.x1,x2:e.x2,y1:e.y,y2:e.y,stroke:F.value.horizontalGrid.stroke,"stroke-width":F.value.horizontalGrid.strokeWidth,"stroke-dasharray":F.value.horizontalGrid.strokeDasharray,"stroke-linecap":`round`},null,8,ut))),256))])):f(``,!0),F.value.verticalGrid.show?(y(),p(`g`,dt,[(y(!0),p(l,null,x(K.value,(e,t)=>(y(),p(`line`,{x1:G.value.left+(t+1)*G.value.stripWidth,x2:G.value.left+(t+1)*G.value.stripWidth,y1:G.value.top,y2:G.value.bottom,stroke:F.value.verticalGrid.stroke,"stroke-width":F.value.verticalGrid.strokeWidth,"stroke-dasharray":F.value.verticalGrid.strokeDasharray,"stroke-linecap":`round`},null,8,ft))),256))])):f(``,!0),m(`line`,{x1:G.value.left,x2:G.value.left,y1:G.value.top,y2:G.value.bottom,stroke:F.value.stroke,"stroke-width":F.value.strokeWidth,"stroke-linecap":`round`},null,8,pt),m(`line`,{x1:G.value.left,x2:G.value.right,y1:G.value.bottom,y2:G.value.bottom,stroke:F.value.stroke,"stroke-width":F.value.strokeWidth,"stroke-linecap":`round`},null,8,mt)])):f(``,!0),N.value.yAxisLabels.show?(y(),p(`g`,{key:2,ref_key:`scaleLabels`,ref:cn},[(y(!0),p(l,null,x(lr.value,(e,t)=>(y(),p(`text`,{class:Ye({"vue-data-ui-transition":w(fn)&&!w(Hn)}),key:`sl_${t}`,transform:`translate(${e.x1+N.value.yAxisLabels.offsetX-5}, ${e.y+N.value.yAxisLabels.fontSize/3})`,fill:N.value.yAxisLabels.color,"font-size":N.value.yAxisLabels.fontSize,"text-anchor":`end`},C(w(oe)(N.value.formatter,e.value,w(n)({p:N.value.prefix,v:e.value,s:N.value.suffix,r:N.value.yAxisLabels.rounding}),{datapoint:e,seriesIndex:t})),11,ht))),128))],512)):f(``,!0),N.value.xAxisLabels.show?(y(),p(`g`,{key:3,ref_key:`timeLabelsEls`,ref:sn},[(y(!0),p(l,null,x(Or.value,(e,t)=>(y(),p(`g`,null,[String(e).includes(`
2
+ `)?(y(),p(`text`,{key:1,class:`vue-ui-strip-plot-category-name`,transform:`translate(${G.value.left+(t+1)*G.value.stripWidth-G.value.stripWidth/2}, ${G.value.bottom+N.value.xAxisLabels.fontSize*2+N.value.xAxisLabels.offsetY}), rotate(${N.value.xAxisLabels.rotation})`,"font-size":N.value.xAxisLabels.fontSize,fill:N.value.xAxisLabels.color,"text-anchor":N.value.xAxisLabels.rotation>0?`start`:N.value.xAxisLabels.rotation<0?`end`:`middle`,innerHTML:w(s)({content:w(de)(String(e)),fontSize:N.value.xAxisLabels.fontSize,fill:N.value.xAxisLabels.color,x:0,y:0})},null,8,_t)):(y(),p(`text`,{key:0,class:`vue-ui-strip-plot-category-name`,transform:`translate(${G.value.left+(t+1)*G.value.stripWidth-G.value.stripWidth/2}, ${G.value.bottom+N.value.xAxisLabels.fontSize*2+N.value.xAxisLabels.offsetY}), rotate(${N.value.xAxisLabels.rotation})`,"font-size":N.value.xAxisLabels.fontSize,fill:N.value.xAxisLabels.color,"text-anchor":N.value.xAxisLabels.rotation>0?`start`:N.value.xAxisLabels.rotation<0?`end`:`middle`},C(String(e)),9,gt))]))),256))],512)):f(``,!0),N.value.axis.yLabel?(y(),p(`text`,{key:4,ref_key:`yAxisLabel`,ref:on,fill:N.value.axis.color,"font-size":N.value.axis.fontSize,transform:`translate(${N.value.axis.fontSize}, ${G.value.top+G.value.height/2}) rotate(-90)`,"text-anchor":`middle`},C(N.value.axis.yLabel),9,vt)):f(``,!0),N.value.axis.xLabel?(y(),p(`text`,{key:5,ref_key:`xAxisLabel`,ref:an,fill:N.value.axis.color,"font-size":N.value.axis.fontSize,x:G.value.left+G.value.width/2,y:V.value-N.value.axis.fontSize/3,"text-anchor":`middle`},C(N.value.axis.xLabel),9,yt)):f(``,!0),Q.value?(y(),p(l,{key:6},[m(`line`,{x1:G.value.left,x2:G.value.right,y1:Q.value.y,y2:Q.value.y,stroke:Q.value.color,"stroke-width":1,class:Ye({"select-circle":A.value.useCssAnimation})},null,10,bt),m(`circle`,{cx:G.value.left,cy:Q.value.y,r:3,fill:Q.value.color,class:Ye({"select-circle":A.value.useCssAnimation})},null,10,xt),m(`circle`,{cx:G.value.right,cy:Q.value.y,r:3,fill:Q.value.color,class:Ye({"select-circle":A.value.useCssAnimation})},null,10,St)],64)):f(``,!0),m(`defs`,null,[(y(!0),p(l,null,x(K.value,e=>(y(),d(ze,{t:`radial`,id:e.id,key:`r_${e.id}`,fy:`30%`,stops:[[`10%`,w(a)(e.color,I.value.plots.gradient.intensity/100),1],[`90%`,w(c)(e.color,.1),1],[`100%`,e.color,1]]},null,8,[`id`,`stops`]))),128))]),(y(!0),p(l,null,x(tr.value,(e,n)=>(y(),p(l,{key:e.id},[e.path?(y(),p(`path`,{key:0,d:e.path,fill:e.fill,stroke:e.color,"fill-opacity":P.value.opacity,"stroke-opacity":P.value.strokeOpacity,"stroke-width":P.value.strokeWidth,style:v({pointerEvents:Y.value?`auto`:`none`,cursor:Y.value&&L.value?`pointer`:`default`}),onMouseenter:e=>Y.value&&X.value[n]&&gr({boxPlot:X.value[n],seriesIndex:n,triggerMode:`pointer`}),onMouseleave:t[0]||=e=>Y.value&&hr()},null,44,Ct)):f(``,!0),(y(!0),p(l,null,x(e.connectors,(t,n)=>(y(),p(`line`,{key:`violin_connector_${e.id}_${n}`,x1:t.x,x2:t.x,y1:t.y1,y2:t.y2,stroke:e.color,"stroke-opacity":P.value.strokeOpacity,"stroke-width":P.value.strokeWidth,"stroke-linecap":`round`,style:{"pointer-events":`none`}},null,8,wt))),128))],64))),128)),(y(!0),p(l,null,x(X.value,(e,t)=>(y(),p(`g`,{key:`boxplot_${e.id}`,style:v({cursor:L.value?`pointer`:`default`}),onMouseenter:n=>gr({boxPlot:e,seriesIndex:t,triggerMode:`pointer`}),onMouseleave:hr},[m(`line`,{x1:e.centerX,x2:e.centerX,y1:e.upperY,y2:e.lowerY,stroke:w(c)(e.boxPlotColor,.2),"stroke-width":Math.max(1,P.value.strokeWidth),"stroke-linecap":`round`},null,8,Et),m(`rect`,{x:e.boxLeft,y:Math.min(e.q1Y,e.q3Y),width:e.boxWidth,height:Math.max(1,Math.abs(e.q3Y-e.q1Y)),fill:e.boxPlotColor,stroke:w(c)(e.boxPlotColor,.2),"stroke-width":Math.max(1,P.value.strokeWidth),rx:e.boxWidth/20},null,8,Dt),m(`circle`,{cx:e.boxLeft+e.boxWidth/2,cy:e.medianY,r:e.boxWidth/3*Math.min(1,P.value.boxPlot.medianCircleRadiusRatio),fill:P.value.boxPlot.medianCircleFill,stroke:w(c)(e.boxPlotColor,.2)},null,8,Ot)],44,Tt))),128)),(y(!0),p(l,null,x(J.value,(t,r)=>(y(),p(l,null,[Y.value?f(``,!0):(y(!0),p(l,{key:0},x(t.plots,(n,r)=>(y(),d(Le,qe({ref_for:!0},e.$attrs,{plot:{x:n.x,y:$t.value?n.y:G.value.top},radius:Q.value&&Q.value.id===n.id?U.value*1.5:U.value,shape:I.value.plots.shape,stroke:I.value.plots.stroke,strokeWidth:I.value.plots.strokeWidth,color:I.value.plots.gradient.show?`url(#${t.id})`:t.color,style:`transition: all 0.2s ease-in-out; opacity:${Q.value?Q.value.id===n.id?1:.2:I.value.plots.opacity};${Fn.value?`transition-delay:${r*50}ms`:``}`,class:{"vue-ui-strip-plot-animated":A.value.useCssAnimation&&Fn.value&&!w(hn),"vue-ui-strip-plot-select-circle":A.value.useCssAnimation&&!Fn.value},onMouseenter:e=>mr({datapoint:n,seriesIndex:r,triggerMode:`pointer`}),onMouseleave:e=>dr({datapoint:n,seriesIndex:r}),onClick:e=>fr({datapoint:n,seriesIndex:r})}),null,16,[`plot`,`radius`,`shape`,`stroke`,`strokeWidth`,`color`,`style`,`class`,`onMouseenter`,`onMouseleave`,`onClick`]))),256)),H.value.dataLabels.show&&!Y.value?(y(),p(`g`,kt,[(y(!0),p(l,null,x(t.plots,(e,r)=>(y(),p(l,null,[r===t.plots.length-1||Q.value&&Q.value.id===e.id&&!H.value.showTooltip?(y(),p(`text`,{key:0,x:e.x,y:e.y+N.value.bestPlotLabel.offsetY-U.value*(Q.value&&Q.value.id===e.id&&!H.value.showTooltip?2:1.5),"font-size":N.value.bestPlotLabel.fontSize,fill:N.value.bestPlotLabel.color,"text-anchor":`middle`,style:v(`opacity:${A.value.useCssAnimation?+!Fn.value:1};transition:opacity 0.2s ease-in;`)},C(e.name)+` `+C(N.value.bestPlotLabel.showValue?w(oe)(N.value.formatter,e.value,w(n)({p:`(${N.value.prefix}`,v:e.value,s:`${N.value.suffix})`,r:I.value.labels.bestPlotLabel.rounding}),{datapoint:e,seriesIndex:r}):``),13,At)):f(``,!0)],64))),256))])):f(``,!0)],64))),256)),S(e.$slots,`svg`,{svg:{...G.value,isPrintingImg:w(kn)||w(An)||w(Pr),isPrintingSvg:w(Fr),boxPlotSummaries:X.value,series:K.value}},void 0,!0)],46,ot)),e.$slots.hint?(y(),p(`div`,jt,[S(e.$slots,`hint`,_(g({hint:A.value.a11y.translations.keyboardNavigation,isVisible:dn.value})),void 0,!0)])):f(``,!0)]),e.$slots.watermark?(y(),p(`div`,Mt,[S(e.$slots,`watermark`,_(g({isPrinting:w(kn)||w(An)||w(Pr)||w(Fr)})),void 0,!0)])):f(``,!0),e.$slots.source?(y(),p(`div`,{key:6,ref_key:`source`,ref:Zt,dir:`auto`},[S(e.$slots,`source`,{},void 0,!0)],512)):f(``,!0),Ke(w(Pt),{teleportTo:M.value.teleportTo,show:H.value.showTooltip&&Jt.value,backgroundColor:M.value.backgroundColor,color:M.value.color,borderRadius:M.value.borderRadius,borderColor:M.value.borderColor,borderWidth:M.value.borderWidth,fontSize:M.value.fontSize,backgroundOpacity:M.value.backgroundOpacity,position:M.value.position,offsetX:M.value.offsetX,offsetY:M.value.offsetY,parent:D.value,content:Yt.value,isFullscreen:$.value,isCustom:w(i)(M.value.customFormat),smooth:M.value.smooth,backdropFilter:M.value.backdropFilter,smoothForce:M.value.smoothForce,smoothSnapThreshold:M.value.smoothSnapThreshold,isA11yMode:k.value===`keyboard`,a11yPosition:un.value},{"tooltip-before":T(()=>[S(e.$slots,`tooltip-before`,_(g({...ur.value})),void 0,!0)]),tooltip:T(()=>[S(e.$slots,`tooltip`,_(g({...ur.value})),void 0,!0)]),"tooltip-after":T(()=>[S(e.$slots,`tooltip-after`,_(g({...ur.value})),void 0,!0)]),_:3},8,[`teleportTo`,`show`,`backgroundColor`,`color`,`borderRadius`,`borderColor`,`borderWidth`,`fontSize`,`backgroundOpacity`,`position`,`offsetX`,`offsetY`,`parent`,`content`,`isFullscreen`,`isCustom`,`smooth`,`backdropFilter`,`smoothForce`,`smoothSnapThreshold`,`isA11yMode`,`a11yPosition`]),Gt.value&&j.value.buttons.table?(y(),d(Qe(Ar.value.component),qe({key:7},Ar.value.props,{ref_key:`tableUnit`,ref:nn,onClose:jr}),We({content:T(()=>[(y(),d(w(Lt),{key:`table_${tn.value}`,colNames:yr.value.colNames,head:yr.value.head,body:yr.value.body,config:yr.value.config,title:A.value.table.useDialog?``:Ar.value.title,withCloseButton:!A.value.table.useDialog,isCursorPointer:L.value,onClose:jr},{th:T(({th:e})=>[m(`div`,Nt,C(e),1)]),td:T(({td:e})=>[Ge(C(e.name||e),1)]),_:1},8,[`colNames`,`head`,`body`,`config`,`title`,`withCloseButton`,`isCursorPointer`]))]),_:2},[A.value.table.useDialog?{name:`title`,fn:T(()=>[Ge(C(Ar.value.title),1)]),key:`0`}:void 0,A.value.table.useDialog?{name:`actions`,fn:T(()=>[m(`button`,{tabindex:`0`,class:`vue-ui-user-options-button`,onClick:t[1]||=e=>vr(j.value.callbacks.csv),style:v({cursor:L.value?`pointer`:`default`})},[Ke(w(Ft),{name:`fileCsv`,stroke:Ar.value.props.color},null,8,[`stroke`])],4)]),key:`1`}:void 0]),1040)):f(``,!0),S(e.$slots,`skeleton`,{},()=>[w(hn)?(y(),d(ye,{key:0})):f(``,!0)],!0)],46,rt))}},[[`__scopeId`,`data-v-2d480e5c`]]);export{nt as n,Pt as t};
@@ -1 +1 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{D as n,Tt as r,X as i,at as ee,m as a,nt as te,r as ne,zt as re}from"./lib-rPeBMZrn.js";import{n as ie,t as ae}from"./useHints-BH9r_0Vd.js";import{t as o}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as oe}from"./resolveChartConfig-CIhClE5R.js";import{n as se,t as ce}from"./userOptionsSlots-DYuo-E5m.js";import{t as le}from"./usePrinter-sVoTzet1.js";import{t as ue}from"./Shape-CRe8woTu.js";import{t as de}from"./useUserOptionState-CXlFnwPv.js";import{t as fe}from"./vue_ui_table_heatmap-vfeY6r97.js";import{Fragment as s,computed as c,createBlock as pe,createCommentVNode as l,createElementBlock as u,createElementVNode as d,createSlots as me,createVNode as he,defineAsyncComponent as ge,guardReactiveProps as _e,mergeProps as f,nextTick as ve,normalizeClass as p,normalizeProps as ye,normalizeStyle as m,onMounted as h,openBlock as g,ref as _,renderList as v,renderSlot as y,unref as b,useCssVars as be,useSlots as xe,watch as x,withCtx as S}from"vue";var C=/* @__PURE__ */ e({default:()=>N}),w=[`id`],T={role:`cell`},E={role:`row`},D=[`data-cell`],O={key:0,style:{display:`flex`,"flex-direction":`row`,gap:`2px`,"align-items":`center`}},k=[`height`,`width`],A={key:0,role:`cell`,"data-cell":`sum`},j={key:1,role:`cell`,"data-cell":`average`},M={key:2,role:`cell`,"data-cell":`median`},Se={key:1,ref:`source`,dir:`auto`},N=/*#__PURE__*/ o({__name:`vue-ui-table-heatmap`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},setup(e,{expose:o}){be(e=>({v63f427d8:ke.value,v4016fab3:Oe.value}));let C=ge(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),{vue_ui_table_heatmap:N}=t(),P=e,F=_(i()),I=_(!1),L=_(null),R=_(!1),z=_(0),Ce=xe(),B=c({get:()=>G(),set:e=>e}),V=c(()=>B.value.debug);h(()=>{Ce[`chart-background`]&&V.value&&console.warn(`VueUiTableHeatmap does not support the #chart-background slot.`)}),ie({config:()=>B.value,dataset:()=>P.dataset,component:`VueUiTableHeatmap`,rules:[ae.emptyArray,{test:e=>e.length>31,message:[`👀 The number of series is > 31. Consider:`,``,`▶️ Using filters to let users choose a maximum number of series to display.`]},{test:e=>e.some(e=>e?.values&&e?.values.length>31),message:[`👀 Some series have a number of data points > 31. Consider:`,``,`▶️ Using filters to let users choose a maximum number of data points to display.`]}]});let{userOptionsVisible:H,setUserOptionsVisibility:U,keepUserOptionState:W}=de({config:B.value});function G(){return oe(P.config,N,fe)}x(()=>P.config,e=>{B.value=G(),H.value=!B.value.userOptions.showOnChartHover,Y()},{deep:!0});let{isPrinting:we,isImaging:Te,generatePdf:K,generateImage:q}=le({elementId:`table_heatmap_${F.value}`,fileName:`vue-ui-table-heatmap`,options:B.value.userOptions.print}),J=c(()=>B.value.table.responsiveBreakpoint),Ee=c(()=>!!P.dataset&&P.dataset.length);h(()=>{Y()});function Y(){re(P.dataset)&&ee({componentName:`VueUiTableHeatmap`,type:`dataset`,debug:V.value});let e=new ResizeObserver(e=>{e.forEach(e=>{I.value=e.contentRect.width<J.value})});L.value&&e.observe(L.value)}let X=c(()=>P.dataset.map(e=>{let t=e.values.map(e=>isNaN(e)?0:e),n=t.reduce((e,t)=>e+t,0);return{...e,values:t,serieExtremes:{max:Math.max(...t),min:Math.min(...t)},sum:n,average:n/t.length,median:a(t),displayValues:[e.name,...e.values],id:i()}})),Z=c(()=>{let e=X.value.flatMap(e=>e.values);return{min:Math.min(...e),max:Math.max(...e)}});function De(e,t){let n=B.value.style.heatmapColors.useIndividualScale;return r(B.value.style.heatmapColors.min,B.value.style.heatmapColors.max,n?t.min:Z.value.min,n?t.max:Z.value.max,e)}let Q=c(()=>X.value.map(e=>({...e,colors:e.displayValues.map(t=>isNaN(t)?B.value.style.backgroundColor:De(t,e.serieExtremes))}))),Oe=c(()=>B.value.style.backgroundColor),ke=c(()=>`${B.value.table.borderWidth}px`);function $(e=null){ve(()=>{let t=Q.value.map(e=>[[e.name],e.displayValues,[e.sum],[e.average],[e.median]]),r=[[[``],B.value.table.head.values,[`sum`],[`average`],[`median`]]].concat(t),i=n(r);e?e(i):te({csvContent:i,title:`vue-ui-table-heatmap`})})}function Ae(e){R.value=e,z.value+=1}return o({generatePdf:K,generateCsv:$,generateImage:q}),(e,t)=>(g(),u(`div`,{ref_key:`tableContainer`,ref:L,style:m(`width:100%; overflow-x:auto; container-type: inline-size;padding-top:${B.value.userOptions.show?`36px`:``}; ${R.value?`vue-data-ui-wrapper-fullscreen`:``}; position:relative;`),class:p({"vue-data-ui-component":!0,"vue-ui-responsive":I.value}),id:`table_heatmap_${F.value}`,onMouseenter:t[0]||=()=>b(U)(!0),onMouseleave:t[1]||=()=>b(U)(!1)},[B.value.userOptions.show&&Ee.value&&(b(W)||b(H))?(g(),pe(b(C),{ref:`details`,key:`user_option_${z.value}`,backgroundColor:B.value.style.backgroundColor,color:B.value.style.color,isPrinting:b(we),isImaging:b(Te),uid:F.value,hasPdf:B.value.userOptions.buttons.pdf,hasXls:B.value.userOptions.buttons.csv,hasImg:B.value.userOptions.buttons.img,hasFullscreen:B.value.userOptions.buttons.fullscreen,isFullscreen:R.value,titles:{...B.value.userOptions.buttonTitles},chartElement:L.value,position:B.value.userOptions.position,callbacks:B.value.userOptions.callbacks,printScale:B.value.userOptions.print.scale,onToggleFullscreen:Ae,onGeneratePdf:b(K),onGenerateCsv:$,onGenerateImage:b(q),style:m({visibility:b(W)?b(H)?`visible`:`hidden`:`visible`})},me({_:2},[v(b(se)(e.$slots,`menuIcon optionPdf optionCsv optionImg optionFullscreen custom-menu-before custom-menu-after`),t=>({name:t,fn:S(n=>[y(e.$slots,t,ye(_e(b(ce)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasXls`,`hasImg`,`hasFullscreen`,`isFullscreen`,`titles`,`chartElement`,`position`,`callbacks`,`printScale`,`onGeneratePdf`,`onGenerateImage`,`style`])):l(``,!0),d(`table`,{class:p({"vue-ui-table-heatmap":!0}),style:m(`width:100%;font-family:${B.value.style.fontFamily};background:${B.value.style.backgroundColor};`)},[d(`caption`,null,[y(e.$slots,`caption`,{},void 0,!0)]),d(`thead`,null,[d(`tr`,{role:`row`,style:m(`background:${B.value.table.head.backgroundColor};color:${B.value.table.head.color}`)},[(g(!0),u(s,null,v(B.value.table.head.values,(t,n)=>(g(),u(`th`,T,[y(e.$slots,`head`,f({ref_for:!0},{value:t,rowIndex:n,type:typeof t,isResponsive:I.value}),void 0,!0)]))),256))],4)]),d(`tbody`,null,[(g(!0),u(s,null,v(Q.value,(t,n)=>(g(),u(`tr`,E,[(g(!0),u(s,null,v(t.displayValues,(r,i)=>(g(),u(`td`,{role:`cell`,"data-cell":B.value.table.head.values[i]},[t.color&&i===0?(g(),u(`div`,O,[t.color?(g(),u(`svg`,{key:0,height:B.value.style.shapeSize,width:B.value.style.shapeSize,viewBox:`0 0 20 20`,style:{background:`none`,overflow:`visible`}},[he(ue,{plot:{x:10,y:10},color:t.color,radius:9,shape:t.shape||`circle`},null,8,[`color`,`shape`])],8,k)):l(``,!0),y(e.$slots,`rowTitle`,f({ref_for:!0},{value:r,rowIndex:n,colIndex:i,type:typeof r,isResponsive:I.value}),void 0,!0)])):(g(),u(s,{key:1},[i===0?y(e.$slots,`rowTitle`,f({ref_for:!0},{value:r,rowIndex:n,colIndex:i,type:typeof r,isResponsive:I.value}),void 0,!0,0):l(``,!0),i>0?y(e.$slots,`cell`,f({ref_for:!0},{value:r,rowIndex:n,colIndex:i,type:typeof r,isResponsive:I.value,color:t.colors[i],textColor:b(ne)(t.colors[i])}),void 0,!0,1):l(``,!0)],64))],8,D))),256)),B.value.table.showSum?(g(),u(`td`,A,[y(e.$slots,`sum`,f({ref_for:!0},{value:t.sum,rowIndex:n,isResponsive:I.value}),void 0,!0)])):l(``,!0),B.value.table.showAverage?(g(),u(`td`,j,[y(e.$slots,`average`,f({ref_for:!0},{value:t.average,rowIndex:n,isResponsive:I.value}),void 0,!0)])):l(``,!0),B.value.table.showMedian?(g(),u(`td`,M,[y(e.$slots,`median`,f({ref_for:!0},{value:t.median,rowIndex:n,isResponsive:I.value}),void 0,!0)])):l(``,!0)]))),256))])],4),e.$slots.source?(g(),u(`div`,Se,[y(e.$slots,`source`,{},void 0,!0)],512)):l(``,!0)],46,w))}},[[`__scopeId`,`data-v-89cef7a9`]]);export{C as n,N as t};
1
+ import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{D as n,Tt as r,X as i,at as ee,m as a,nt as te,r as ne,zt as re}from"./lib-rPeBMZrn.js";import{n as ie,t as ae}from"./useHints-C-TwxM0Y.js";import{t as o}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as oe}from"./resolveChartConfig-CIhClE5R.js";import{n as se,t as ce}from"./userOptionsSlots-DYuo-E5m.js";import{t as le}from"./usePrinter-DVf3YcG5.js";import{t as ue}from"./Shape-CRe8woTu.js";import{t as de}from"./useUserOptionState-CXlFnwPv.js";import{t as fe}from"./vue_ui_table_heatmap-vfeY6r97.js";import{Fragment as s,computed as c,createBlock as pe,createCommentVNode as l,createElementBlock as u,createElementVNode as d,createSlots as me,createVNode as he,defineAsyncComponent as ge,guardReactiveProps as _e,mergeProps as f,nextTick as ve,normalizeClass as p,normalizeProps as ye,normalizeStyle as m,onMounted as h,openBlock as g,ref as _,renderList as v,renderSlot as y,unref as b,useCssVars as be,useSlots as xe,watch as x,withCtx as S}from"vue";var C=/* @__PURE__ */ e({default:()=>N}),w=[`id`],T={role:`cell`},E={role:`row`},D=[`data-cell`],O={key:0,style:{display:`flex`,"flex-direction":`row`,gap:`2px`,"align-items":`center`}},k=[`height`,`width`],A={key:0,role:`cell`,"data-cell":`sum`},j={key:1,role:`cell`,"data-cell":`average`},M={key:2,role:`cell`,"data-cell":`median`},Se={key:1,ref:`source`,dir:`auto`},N=/*#__PURE__*/ o({__name:`vue-ui-table-heatmap`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},setup(e,{expose:o}){be(e=>({v63f427d8:ke.value,v4016fab3:Oe.value}));let C=ge(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),{vue_ui_table_heatmap:N}=t(),P=e,F=_(i()),I=_(!1),L=_(null),R=_(!1),z=_(0),Ce=xe(),B=c({get:()=>G(),set:e=>e}),V=c(()=>B.value.debug);h(()=>{Ce[`chart-background`]&&V.value&&console.warn(`VueUiTableHeatmap does not support the #chart-background slot.`)}),ie({config:()=>B.value,dataset:()=>P.dataset,component:`VueUiTableHeatmap`,rules:[ae.emptyArray,{test:e=>e.length>31,message:[`👀 The number of series is > 31. Consider:`,``,`▶️ Using filters to let users choose a maximum number of series to display.`]},{test:e=>e.some(e=>e?.values&&e?.values.length>31),message:[`👀 Some series have a number of data points > 31. Consider:`,``,`▶️ Using filters to let users choose a maximum number of data points to display.`]}]});let{userOptionsVisible:H,setUserOptionsVisibility:U,keepUserOptionState:W}=de({config:B.value});function G(){return oe(P.config,N,fe)}x(()=>P.config,e=>{B.value=G(),H.value=!B.value.userOptions.showOnChartHover,Y()},{deep:!0});let{isPrinting:we,isImaging:Te,generatePdf:K,generateImage:q}=le({elementId:`table_heatmap_${F.value}`,fileName:`vue-ui-table-heatmap`,options:B.value.userOptions.print}),J=c(()=>B.value.table.responsiveBreakpoint),Ee=c(()=>!!P.dataset&&P.dataset.length);h(()=>{Y()});function Y(){re(P.dataset)&&ee({componentName:`VueUiTableHeatmap`,type:`dataset`,debug:V.value});let e=new ResizeObserver(e=>{e.forEach(e=>{I.value=e.contentRect.width<J.value})});L.value&&e.observe(L.value)}let X=c(()=>P.dataset.map(e=>{let t=e.values.map(e=>isNaN(e)?0:e),n=t.reduce((e,t)=>e+t,0);return{...e,values:t,serieExtremes:{max:Math.max(...t),min:Math.min(...t)},sum:n,average:n/t.length,median:a(t),displayValues:[e.name,...e.values],id:i()}})),Z=c(()=>{let e=X.value.flatMap(e=>e.values);return{min:Math.min(...e),max:Math.max(...e)}});function De(e,t){let n=B.value.style.heatmapColors.useIndividualScale;return r(B.value.style.heatmapColors.min,B.value.style.heatmapColors.max,n?t.min:Z.value.min,n?t.max:Z.value.max,e)}let Q=c(()=>X.value.map(e=>({...e,colors:e.displayValues.map(t=>isNaN(t)?B.value.style.backgroundColor:De(t,e.serieExtremes))}))),Oe=c(()=>B.value.style.backgroundColor),ke=c(()=>`${B.value.table.borderWidth}px`);function $(e=null){ve(()=>{let t=Q.value.map(e=>[[e.name],e.displayValues,[e.sum],[e.average],[e.median]]),r=[[[``],B.value.table.head.values,[`sum`],[`average`],[`median`]]].concat(t),i=n(r);e?e(i):te({csvContent:i,title:`vue-ui-table-heatmap`})})}function Ae(e){R.value=e,z.value+=1}return o({generatePdf:K,generateCsv:$,generateImage:q}),(e,t)=>(g(),u(`div`,{ref_key:`tableContainer`,ref:L,style:m(`width:100%; overflow-x:auto; container-type: inline-size;padding-top:${B.value.userOptions.show?`36px`:``}; ${R.value?`vue-data-ui-wrapper-fullscreen`:``}; position:relative;`),class:p({"vue-data-ui-component":!0,"vue-ui-responsive":I.value}),id:`table_heatmap_${F.value}`,onMouseenter:t[0]||=()=>b(U)(!0),onMouseleave:t[1]||=()=>b(U)(!1)},[B.value.userOptions.show&&Ee.value&&(b(W)||b(H))?(g(),pe(b(C),{ref:`details`,key:`user_option_${z.value}`,backgroundColor:B.value.style.backgroundColor,color:B.value.style.color,isPrinting:b(we),isImaging:b(Te),uid:F.value,hasPdf:B.value.userOptions.buttons.pdf,hasXls:B.value.userOptions.buttons.csv,hasImg:B.value.userOptions.buttons.img,hasFullscreen:B.value.userOptions.buttons.fullscreen,isFullscreen:R.value,titles:{...B.value.userOptions.buttonTitles},chartElement:L.value,position:B.value.userOptions.position,callbacks:B.value.userOptions.callbacks,printScale:B.value.userOptions.print.scale,onToggleFullscreen:Ae,onGeneratePdf:b(K),onGenerateCsv:$,onGenerateImage:b(q),style:m({visibility:b(W)?b(H)?`visible`:`hidden`:`visible`})},me({_:2},[v(b(se)(e.$slots,`menuIcon optionPdf optionCsv optionImg optionFullscreen custom-menu-before custom-menu-after`),t=>({name:t,fn:S(n=>[y(e.$slots,t,ye(_e(b(ce)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasXls`,`hasImg`,`hasFullscreen`,`isFullscreen`,`titles`,`chartElement`,`position`,`callbacks`,`printScale`,`onGeneratePdf`,`onGenerateImage`,`style`])):l(``,!0),d(`table`,{class:p({"vue-ui-table-heatmap":!0}),style:m(`width:100%;font-family:${B.value.style.fontFamily};background:${B.value.style.backgroundColor};`)},[d(`caption`,null,[y(e.$slots,`caption`,{},void 0,!0)]),d(`thead`,null,[d(`tr`,{role:`row`,style:m(`background:${B.value.table.head.backgroundColor};color:${B.value.table.head.color}`)},[(g(!0),u(s,null,v(B.value.table.head.values,(t,n)=>(g(),u(`th`,T,[y(e.$slots,`head`,f({ref_for:!0},{value:t,rowIndex:n,type:typeof t,isResponsive:I.value}),void 0,!0)]))),256))],4)]),d(`tbody`,null,[(g(!0),u(s,null,v(Q.value,(t,n)=>(g(),u(`tr`,E,[(g(!0),u(s,null,v(t.displayValues,(r,i)=>(g(),u(`td`,{role:`cell`,"data-cell":B.value.table.head.values[i]},[t.color&&i===0?(g(),u(`div`,O,[t.color?(g(),u(`svg`,{key:0,height:B.value.style.shapeSize,width:B.value.style.shapeSize,viewBox:`0 0 20 20`,style:{background:`none`,overflow:`visible`}},[he(ue,{plot:{x:10,y:10},color:t.color,radius:9,shape:t.shape||`circle`},null,8,[`color`,`shape`])],8,k)):l(``,!0),y(e.$slots,`rowTitle`,f({ref_for:!0},{value:r,rowIndex:n,colIndex:i,type:typeof r,isResponsive:I.value}),void 0,!0)])):(g(),u(s,{key:1},[i===0?y(e.$slots,`rowTitle`,f({ref_for:!0},{value:r,rowIndex:n,colIndex:i,type:typeof r,isResponsive:I.value}),void 0,!0,0):l(``,!0),i>0?y(e.$slots,`cell`,f({ref_for:!0},{value:r,rowIndex:n,colIndex:i,type:typeof r,isResponsive:I.value,color:t.colors[i],textColor:b(ne)(t.colors[i])}),void 0,!0,1):l(``,!0)],64))],8,D))),256)),B.value.table.showSum?(g(),u(`td`,A,[y(e.$slots,`sum`,f({ref_for:!0},{value:t.sum,rowIndex:n,isResponsive:I.value}),void 0,!0)])):l(``,!0),B.value.table.showAverage?(g(),u(`td`,j,[y(e.$slots,`average`,f({ref_for:!0},{value:t.average,rowIndex:n,isResponsive:I.value}),void 0,!0)])):l(``,!0),B.value.table.showMedian?(g(),u(`td`,M,[y(e.$slots,`median`,f({ref_for:!0},{value:t.median,rowIndex:n,isResponsive:I.value}),void 0,!0)])):l(``,!0)]))),256))])],4),e.$slots.source?(g(),u(`div`,Se,[y(e.$slots,`source`,{},void 0,!0)],512)):l(``,!0)],46,w))}},[[`__scopeId`,`data-v-89cef7a9`]]);export{C as n,N as t};
@@ -1,4 +1,4 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,C as r,D as i,Ft as a,Ht as o,Jt as ee,X as te,d as s,in as ne,nt as re,r as ie}from"./lib-rPeBMZrn.js";import{n as ae,t as oe}from"./useHints-BH9r_0Vd.js";import{t as se}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as c}from"./BaseIcon-Cm-IJ179.js";import{t as l}from"./vue-ui-xy-6B_K-quN.js";import{t as ce}from"./vue-ui-donut-Vbp5Xs2-.js";import{Fragment as u,computed as d,createBlock as le,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createTextVNode as h,createVNode as ue,defineAsyncComponent as de,nextTick as fe,normalizeClass as g,normalizeStyle as _,onMounted as pe,openBlock as v,ref as y,renderList as b,toDisplayString as x,unref as S,useCssVars as me,vModelSelect as he,vModelText as ge,watch as _e,withCtx as ve,withDirectives as ye,withKeys as be,withModifiers as xe}from"vue";var Se=/* @__PURE__ */ e({default:()=>dn}),Ce=[`innerHTML`],we=[`data-is-open`],Te={class:`vue-ui-table-export-hub-options`},Ee={class:`vue-ui-table-export-hub-option-wrapper`},De={class:`label`},Oe=[`innerHTML`],ke={class:`vue-ui-table-export-hub-option-wrapper`},Ae={class:`label`},je=[`innerHTML`],Me={class:`vue-ui-table-dialog-field`},Ne={class:`label vue-ui-table-dialog-input-label`,style:{width:`100%`}},Pe={style:{width:`fit-content`}},Fe={class:`vue-ui-table`},Ie={key:0},Le={key:0},Re={key:1},ze={key:0,style:{display:`flex`,"align-items":`center`,"justify-content":`flex-end`}},Be=[`innerHTML`],Ve={key:0,style:{"margin-left":`3px`}},He={key:0},Ue={class:`th-filter`},We={key:0,class:`th-date`},Ge={class:`date-wrapper--inputs`},Ke={class:`date-fieldset`},qe=[`for`],Je=[`id`,`onUpdate:modelValue`,`onInput`],Ye={class:`date-fieldset`},Xe=[`for`],Ze=[`id`,`onUpdate:modelValue`,`onInput`],Qe={class:`date-wrapper--button`},$e=[`onClick`],et=[`innerHTML`],tt=[`innerHTML`],nt=[`innerHTML`],rt=[`onClick`,`disabled`],it=[`placeholder`,`onUpdate:modelValue`,`name`],at=[`onClick`],ot=[`innerHTML`],st=[`innerHTML`],ct=[`innerHTML`],lt=[`onClick`,`innerHTML`],ut=[`innerHTML`],dt={key:5,class:`th-range-filter`},ft=[`for`],pt=[`id`,`max`,`min`,`onUpdate:modelValue`],mt=[`id`,`max`,`min`,`onUpdate:modelValue`],ht=[`for`],gt=[`onClick`,`disabled`],_t=[`id`],vt=[`onClick`],yt=[`onClick`,`onKeyup`],bt=[`innerHTML`,`onClick`,`onKeyup`],xt=[`data-row`],St=[`data-row`],Ct=[`data-row`,`onClick`,`onKeyup`,`id`],wt=[`innerHTML`],Tt={key:1},Et={key:2},Dt={key:5},Ot=[`innerHTML`],kt={key:0},At={style:{"margin-left":`12px`}},jt={class:`format-num`},Mt={style:{"margin-left":`12px`}},Nt={key:0,class:`format-num`},Pt={key:1,class:`format-num`},Ft={key:2},It={style:{"margin-left":`12px`}},Lt={key:0,class:`format-num`},Rt={key:1,class:`format-num`},zt={key:2},Bt={key:1,class:`vue-ui-table-paginator format-num`},Vt={key:2,class:`vue-ui-table-size-warning`},Ht=[`innerHTML`],Ut={key:4,class:`vue-ui-table-pagination format-num`},Wt=[`innerHTML`,`disabled`],Gt=[`disabled`],Kt={for:`pageScroller`,style:{"font-size":`14px`}},qt=[`max`,`value`],Jt={key:1},Yt=[`disabled`],Xt=[`innerHTML`,`disabled`],Zt={class:`vue-ui-table-chart-modal-options`},Qt=[`innerHTML`],$t=[`innerHTML`],en=[`innerHTML`],tn={style:{width:`100%`,height:`fit-content`}},nn={class:`vue-ui-table-fieldset`},rn={class:`vue-ui-table-fieldset-wrapper`},an=[`name`,`id`,`checked`,`onInput`],on=[`for`],sn=[`disabled`],cn=[`innerHTML`],ln={style:{width:`100%`,"margin-bottom":`12px`}},un={key:2,style:{width:`100%`,"margin-bottom":`32px`}},dn=/*#__PURE__*/ se({__name:`vue-ui-table`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`page-change`],setup(e,{expose:se,emit:Se}){me(e=>({v6b779b9d:Ln.value,v71f90aa0:Rn.value,v82bf5584:Hn.value,bc0e3a90:zn.value,v4bc5be6a:Un.value,v542dfbf0:Wn.value,v5935dfae:Bn.value,v23648322:Vn.value,v98d33e98:Gn.value}));let dn=de(()=>import(`./BaseDraggableDialog-DHgIPVmz.js`).then(e=>e.n)),C=e,fn=Se,{vue_ui_table:pn}=t(),mn=te();y(null);let hn=y(null),gn=y(null),w=y({height:316,type:`bar`,width:512}),T=y({ASC:1,BAR:`bar`,DATE:`date`,DESC:-1,DONUT:`donut`,LINE:`line`,NUMERIC:`numeric`,PERCENTAGE:`percentage`,TEXT:`text`}),_n=y(100),vn=y(100);y(0),y(0),y(400),y(200);let yn=y({CELL:`smart-td-selected`,FIRST_TD:`smart-td-selected-first`,LAST_TD:`smart-td-selected-last`,ROW:`smart-td-selected-neighbor`}),bn=y(void 0),xn=y(void 0),E=y({col:void 0,rows:[]}),D=y(0),O=y(20),Sn=y(!1),Cn=y(!1),k=y({}),A=y({}),wn=y({}),j=y({}),M=y({}),N=y({}),P=y({}),F=y({}),I=y({}),Tn=y(C.config.rowsPerPage?C.config.rowsPerPage:25),En=y([.../* @__PURE__ */ new Set([10,25,50,100,250,500,C.config.rowsPerPage?C.config.rowsPerPage:25,C.dataset.body.length])].sort((e,t)=>e-t)),Dn=y(void 0),L=y(void 0),On=y(void 0),R=y(!1),kn=y(0),An=y(``),jn=y(``),z=y(!1),B=y(JSON.parse(JSON.stringify(C.dataset.body)).map((e,t)=>({...e,absoluteIndex:t}))),Mn=y(JSON.parse(JSON.stringify(C.dataset.body)).map((e,t)=>({...e,absoluteIndex:t}))),V=y(JSON.parse(JSON.stringify(C.dataset.header)).map((e,t)=>({average:Object.hasOwn(e,`average`)?e.average:!1,decimals:Object.hasOwn(e,`decimals`)?e.decimals:0,isMultiselect:Object.hasOwn(e,`isMultiselect`)?e.isMultiselect:!1,isPercentage:Object.hasOwn(e,`isPercentage`)?e.isPercentage:!1,isSearch:Object.hasOwn(e,`isSearch`)?e.isSearch:!1,isSort:Object.hasOwn(e,`isSort`)?e.isSort:!1,name:e.name,percentageTo:Object.hasOwn(e,`percentageTo`)?e.percentageTo:void 0,prefix:Object.hasOwn(e,`prefix`)?e.prefix:``,rangeFilter:Object.hasOwn(e,`rangeFilter`)?e.rangeFilter:!1,suffix:Object.hasOwn(e,`suffix`)?e.suffix:``,sum:Object.hasOwn(e,`sum`)?e.sum:!1,type:e.type,index:t}))),Nn=d(()=>hn.value?hn.value.getBoundingClientRect().height+3:3),H=d(()=>{if(!Object.keys(C.config||{}).length)return pn;let e=ne({defaultConfig:pn,userConfig:C.config});return r(e)}),U=d(()=>H.value.style.exportMenu),W=d(()=>H.value.style.title),G=d(()=>H.value.style.th),K=d(()=>H.value.style.inputs),Pn=d(()=>H.value.style.dropdowns),Fn=d(()=>H.value.style.closeButtons),q=d(()=>H.value.style.rows),J=d(()=>H.value.style.pagination),Y=d(()=>H.value.style.chart),In=d(()=>H.value.style);ae({config:()=>H.value,dataset:()=>C.dataset,component:`VueUiTable`,rules:[oe.noHint]});let X=d(()=>H.value.useCursorPointer),Ln=d(()=>G.value.buttons.cancel.inactive.backgroundColor),Rn=d(()=>G.value.buttons.cancel.inactive.color),zn=d(()=>G.value.buttons.cancel.active.backgroundColor),Bn=d(()=>G.value.buttons.filter.active.backgroundColor),Vn=d(()=>G.value.buttons.filter.active.color),Hn=d(()=>a(zn.value,.33)),Un=d(()=>ee(zn.value,33)),Wn=d(()=>a(Bn.value,.33)),Gn=d(()=>ee(Bn,33)),Kn=d(()=>[...V.value].filter(e=>e.type===T.value.DATE)),qn=d(()=>[``,...Kn.value.map(e=>e.name)]),Jn=d(()=>{let e=Kn.value.find(e=>e.name===An.value);return e?e.index:null}),Z=d(()=>{let e=[];if(B.value.length)for(let t=0;t<B.value.length;t+=Tn.value)e.push(B.value.slice(t,t+Tn.value));return e}),Yn=d(()=>Z.value[D.value]),Xn=d(()=>Jn.value==null?[]:Yn.value.map(e=>e.td[Jn.value])),Zn=d(()=>Object.keys(M.value).map(e=>({index:e,name:C.dataset.header[e].name,options:M.value[e]}))),Qn=d(()=>H.value.useChart&&E.value.rows.length>1),$n=d(()=>C.dataset.header.map(e=>e.type).includes(T.value.NUMERIC)),Q=d(()=>({arrowSort:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 9l4 -4l4 4m-4 -4v14" /><path d="M21 15l-4 4l-4 -4m4 4v-14" /></svg>`,bar:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 12m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z" /><path d="M9 8m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v10a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z" /><path d="M15 4m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z" /><path d="M4 20l14 0" /></svg>`,chart:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 19l16 0" /><path d="M4 15l4 -6l4 2l4 -5l4 4" /></svg>`,chevronDown:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M6 9l6 6l6 -6" /></svg>`,chevronLeft:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*1.6}" height="${O.value*1.6}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M15 6l-6 6l6 6" /></svg>`,chevronRight:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*1.6}" height="${O.value*1.6}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M9 6l6 6l-6 6" /></svg>`,donut:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*.8}" height="${O.value*.8}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M12 3v5m4 4h5" /><path d="M8.929 14.582l-3.429 2.918" /><path d="M12 12m-4 0a4 4 0 1 0 8 0a4 4 0 1 0 -8 0" /><path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0" /></svg>`,export:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M12.5 21h-7.5a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v7.5" /><path d="M3 10h18" /><path d="M10 3v18" /><path d="M16 19h6" /><path d="M19 16l3 3l-3 3" /></svg>`,fileDownload:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M14 3v4a1 1 0 0 0 1 1h4" /><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z" /><path d="M12 17v-6" /><path d="M9.5 14.5l2.5 2.5l2.5 -2.5" /></svg>`,filter:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227z" /></svg>`,move:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 9l3 3l-3 3" /><path d="M15 12h6" /><path d="M6 9l-3 3l3 3" /><path d="M3 12h6" /><path d="M9 18l3 3l3 -3" /><path d="M12 15v6" /><path d="M15 6l-3 -3l-3 3" /><path d="M12 3v6" /></svg>`,sort09:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /><path d="M17 3a2 2 0 0 1 2 2v3a2 2 0 1 1 -4 0v-3a2 2 0 0 1 2 -2z" /><path d="M17 16m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0" /><path d="M19 16v3a2 2 0 0 1 -2 2h-1.5" /></svg>`,sort90:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /><path d="M17 14a2 2 0 0 1 2 2v3a2 2 0 1 1 -4 0v-3a2 2 0 0 1 2 -2z" /><path d="M17 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0" /><path d="M19 5v3a2 2 0 0 1 -2 2h-1.5" /></svg>`,sortAZ:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M15 10v-5c0 -1.38 .62 -2 2 -2s2 .62 2 2v5m0 -3h-4" /><path d="M19 21h-4l4 -7h-4" /><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /></svg>`,sortZA:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M15 21v-5c0 -1.38 .62 -2 2 -2s2 .62 2 2v5m0 -3h-4" /><path d="M19 10h-4l4 -7h-4" /><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /></svg>`,sum:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>`,table:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" fill="white" d="M 10 2, 21 2, 21 21, 10 21Z"/><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14z" /><path d="M3 10h18" /><path d="M10 3v18" /></svg>`,warning:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*.8}" height="${O.value*.8}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M10.24 3.957l-8.422 14.06a1.989 1.989 0 0 0 1.7 2.983h16.845a1.989 1.989 0 0 0 1.7 -2.983l-8.423 -14.06a1.989 1.989 0 0 0 -3.4 0z" /><path d="M12 9v4" /><path d="M12 17h.01" /></svg>`,grip:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><path d="M5 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M5 15m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M12 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M12 15m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M19 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M19 15m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /></svg>`})),er=d(()=>B.value.map(e=>e.td)),tr=d(()=>({sumPercentage:Number((E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0)*100).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString(),sumRegular:Number(E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString(),averagePercentage:Number((E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0)/E.value.rows.length*100).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString(),averageRegular:Number((E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0)/E.value.rows.length).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString()})),nr=y({width:1e3,height:500});function rr({width:e,height:t}){nr.value={width:e,height:t}}let ir=d(()=>{if(!Qn.value)return[];let e=nr.value.height,t=nr.value.width,n=t/E.value.rows.length,r=Math.max(...E.value.rows.map(e=>e.value)),i=Math.min(...E.value.rows.map(e=>e.value)),o=C.dataset.header[E.value.col].isPercentage&&C.dataset.header[E.value.col].percentageTo,ee=w.value.type===T.value.DONUT&&L.value&&L.value.name,te=C.dataset.header[E.value.col].name+(o?` / ${C.dataset.header[N.value[E.value.col].referenceIndex].name}`:``)+(ee?` ${H.value.translations.by} ${L.value.name}`:``),ne=C.dataset.header[E.value.col].prefix,re=C.dataset.header[E.value.col].suffix,ae=[{name:te,series:E.value.rows.map(e=>e.value),type:`line`,useProgression:!0,smooth:Y.value.layout.line.smooth,color:Y.value.layout.line.stroke,useArea:Y.value.layout.line.useArea}],oe=[{name:te,series:E.value.rows.map(e=>e.value),type:`bar`,useProgression:!0,color:Y.value.layout.bar.fill}],se=Y.value.modal.backgroundColor,c=ie(se),l=C.dataset.header[E.value.col].decimals,ce={useCssAnimation:!1,chart:{width:t,height:e-250,backgroundColor:se,color:c,labels:{fontSize:18,prefix:ne,suffix:re},grid:{stroke:a(c,.5),labels:{color:c,xAxisLabels:{color:c,show:Xn.value.length,values:Xn.value,datetimeFormatter:Y.value.layout.datetimeFormatter,showOnlyAtModulo:Y.value.layout.timeLabels.showOnlyAtModulo,modulo:Y.value.layout.timeLabels.modulo}}},highlighter:{color:c},legend:{color:c,show:!1},title:{text:te,color:c,textAlign:`center`,fontSize:18},tooltip:{showTimeLabel:Xn.value.length,backgroundOpacity:30,color:c,backgroundColor:se,showPercentage:!1,roundingValue:l},userOptions:{buttons:{pdf:!1,csv:!1,table:!1,annotator:!1}},zoom:{show:Y.value.layout.zoom.show,autoFit:Y.value.layout.zoom.autoFit,focusOnDrag:!0,minimap:{show:!0}}},line:{labels:{show:!0,color:c,rounding:l},dot:{useSerieColor:!1,fill:Y.value.layout.line.plot.fill,strokeWidth:Y.value.layout.line.plot.strokeWidth}},bar:{useGradient:!1,border:{useSerieColor:!1,stroke:Y.value.layout.bar.stroke,strokeWidth:Y.value.layout.bar.strokeWidth},labels:{show:!0,color:c,rounding:l}}},u=i>=0?0:Math.abs(i),d=r+u,le=C.dataset.header[E.value.col].isPercentage,f=E.value.rows.map((t,r)=>({x:n*r+n/2,y:(1-(t.value+u)/d)*e,value:le?t.value*100:t.value,suffix:le?`%`:C.dataset.header[E.value.col].suffix?C.dataset.header[E.value.col].suffix:``,prefix:C.dataset.header[E.value.col].prefix?C.dataset.header[E.value.col].prefix:``,index:t.index,absoluteValue:le?Math.abs(t.value)*100:Math.abs(t.value)}));return{donutConfig:{useCssAnimation:!1,userOptions:{position:`left`,buttons:{pdf:!1,csv:!1,table:!1,annotator:!1}},style:{chart:{backgroundColor:se,color:c,layout:{curvedMarkers:!0,donut:{strokeWidth:64},labels:{dataLabels:{suffix:le?`%`:``,prefix:ne},value:{rounding:l},percentage:{color:c,rounding:l},name:{color:c},hollow:{average:{color:c,text:H.value.translations.average,value:{color:c}},total:{color:c,offsetY:-12,text:H.value.translations.total,value:{color:c,offsetY:-12}}}}},legend:{backgroundColor:se,color:c,roundingValue:l,roundingPercentage:l},padding:{left:12,right:12},title:{text:te,color:c,fontSize:18},tooltip:{backgroundOpacity:30,color:c,backgroundColor:se,roundingValue:l,roundingValue:l}}}},xyConfig:ce,xyDatasetLine:ae,xyDatasetBar:oe,progression:f.length>=2&&s(f)}});function ar(){let e=L.value.options.map((e,t)=>({name:e,color:o[t]||o[t%o.length],values:[Yn.value.filter((t,n)=>t.td[L.value.index]===e&&E.value.rows.map(e=>e.index).includes(n)).map(e=>e.td[E.value.col]).reduce((e,t)=>Math.abs(e)+Math.abs(t),0)],absoluteValue:Yn.value.filter((t,n)=>t.td[L.value.index]===e&&E.value.rows.map(e=>e.index).includes(n)).map(e=>e.td[E.value.col]).reduce((e,t)=>e+t,0)})).sort((e,t)=>t.value-e.value);bn.value=e,fe(()=>{w.value.type=T.value.DONUT,z.value=!1})}function or(e,t){return!A.value[e]&&(t.isSort||t.isSearch||t.isMultiselect||t.rangeFilter)&&![T.value.DATE].includes(t.type)}function sr(e=`all`){let t=C.dataset.header.map(e=>e.name),n=e===`all`?B.value.map(e=>e.td):Yn.value.map(e=>e.td),r=[t].concat(n),a=i(r);re({csvContent:a,title:jn.value})}function cr(){let e=document.getElementsByClassName(`th-dropdown`);e.length&&Array.from(e).forEach(e=>{e.dataset.isOpen=!1})}function lr(e,t){let n;clearTimeout(n),n=setTimeout(e,t)}function ur(){let e=document.getElementsByClassName(`tr_${mn}`);Array.from(e).forEach(e=>{Array.from(e.getElementsByTagName(`td`)).forEach(e=>{e.dataset.row===`even`?(e.style.background=q.value.even.backgroundColor,e.style.color=q.value.even.color):(e.style.background=q.value.odd.backgroundColor,e.style.color=q.value.odd.color)})}),Array.from(e).forEach(e=>e.dataset.selected=`false`),D.value>Z.value.length-1&&(D.value=Z.value.length-1),R.value=!1,bn.value=void 0,Dn.value=void 0,w.value.type=T.value.BAR,E.value={col:void 0,rows:[]},_n.value=100,vn.value=100}function dr(e,t){B.value=e.filter(e=>e.td[t]>=P.value[t].min&&e[t]<=P.value[t].max)}function fr(e,t){if(I.value[t]===T.value.ASC&&(e=e.sort((e,n)=>e[t]-n[t])),I.value[t]===T.value.DESC)e=e.sort((e,n)=>n[t]-e[t]);else return 0}function pr(){ur(),Object.keys(P.value).forEach(e=>{dr(B.value,e)}),Object.keys(I.value).forEach(e=>{fr(B.value,e)}),xn.value!==void 0&&fr(B.value,xn.value),C.dataset.header.forEach((e,t)=>{if(e.isPercentage){let e=N.value[t].referenceIndex,n=B.value.map(t=>t.td[e]).reduce((e,t)=>e+t,0);B.value.forEach(r=>{r.td[t]=r.td[e]/n})}}),D.value>Z.value.length-1&&(D.value=Z.value.length-1),[-1].includes(D.value)&&(D.value=0)}function mr(){B.value=Mn.value.filter(e=>{for(let t in F.value)if(!e.td[t].toUpperCase().includes(F.value[t].toUpperCase()))return!1;for(let t in M.value)if(!M.value[t].some(n=>n===e.td[t]))return!1;for(let t in k.value){let n=new Date(e.td[t]),r=new Date(k.value[t].from),i=new Date(k.value[t].to);if(n<r||n>i)return!1}return!0}),pr()}function hr(e){return er.value.map(t=>t[e]).map(e=>isNaN(Number(e))?0:e).reduce((e,t)=>e+t,0)/B.value.length}function gr(e){let t=C.dataset.body.map(t=>new Date(t.td[e])),n=new Date(Math.min(...t)),r=new Date(Math.max(...t)),i=n.getFullYear(),a=r.getFullYear(),o=String(n.getMonth()+1).padStart(2,`0`),ee=String(r.getMonth()+1).padStart(2,`0`),te=String(n.getDate()).padStart(2,`0`),s=String(r.getDate()).padStart(2,`0`);return{from:`${i}-${o}-${te}`,to:`${a}-${ee}-${s}`}}function $(e){return[...new Set(C.dataset.body.map(t=>t.td[e]))]}function _r(e){return er.value.map(t=>t[e]).map(e=>isNaN(Number(e))?0:e).reduce((e,t)=>e+t,0)}function vr(e){return e.includes(NaN)}function yr(e,t){return!M.value[t]||M.value[t].includes(e)}function br(e){return!isNaN(Number(String(e).replaceAll(`%`,``)))}function xr(e,t){let n=t.isSort,r=t.isSearch,i=t.isMultiselect&&M.value[e],a=t.rangeFilter,o=e=>{if(a&&P.value[e])return Math.round(P.value[e].min)===j.value[e].min&&Math.round(P.value[e].max)===j.value[e].max};if(n&&r&&i&&a)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e])&&M.value[e].length===$(e).length&&o(e);if(n&&r&&i)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e])&&M.value[e].length===$(e).length;if(n&&r&&a)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e])&&o(e);if(n&&r)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e]);if(n&&i&&a)return[void 0].includes(I.value[e])&&M.value[e].length===$(e).length&&o(e);if(n&&i)return[void 0].includes(I.value[e])&&M.value[e].length===$(e).length;if(r&&i&&a)return[``,void 0].includes(F.value[e])&&M.value[e].length===$(e).length&&o(e);if(r&&i)return[``,void 0].includes(F.value[e])&&M.value[e].length===$(e).length;if(r&&a)return[``,void 0].includes(F.value[e])&&o(e);if(r)return[``,void 0].includes(F.value[e]);if(n&&a)return[void 0].includes(I.value[e])&&o(e);if(n)return[void 0].includes(I.value[e]);if(i&&a)return M.value[e].length===$(e).length&&o(e);if(i)return M.value[e].length===$(e).length}function Sr(){return{totalPages:Z.value.length,itemsPerPage:Tn.value,currentPage:D.value,currentPageData:Yn.value.map(e=>e.td)}}se({getCurrentPageData:Sr});function Cr(){fn(`page-change`,Sr())}let wr=y(null);function Tr(e){if(ur(),e===`next`&&D.value<Z.value.length){if(D.value+1>Z.value.length-1)return;D.value+=1}else if(e===`previous`&&D.value>=1)--D.value;else{if(e-1<0||e>Z.value.length||e===`previous`)return;D.value=e-1}Cr(),wr.value&&wr.value.scrollTo({top:0,left:0,behavior:`smooth`})}function Er(e){e.preventDefault();let t=e.keyCode;if(![38,40,37,39].includes(t))return;let n=e.target.id.match(/cell_(\d+)_(\d+)_([0-9a-fA-F-]{36})/),r=parseInt(n[1]),i=parseInt(n[2]),a=document.getElementById(`cell_${r}_${i+1}_${mn}`),o=document.getElementById(`cell_${r}_${i-1}_${mn}`),ee=document.getElementById(`cell_${r+1}_${i}_${mn}`),te=document.getElementById(`cell_${r-1}_${i}_${mn}`),s;switch(!0){case t===39:s=a;break;case t===37:s=o;break;case t===38:s=te;break;case t===40:s=ee;break;default:return}s&&(s.focus(),s.scrollIntoView({behavior:`smooth`,block:`center`}))}function Dr(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e.charCodeAt(n);return t}async function Or(){return new Promise(e=>{let t=[];V.value.forEach((e,n)=>{if(e.isSearch&&Object.assign(F.value,{[n]:``}),e.isMultiselect&&Object.assign(M.value,{[n]:$(n)}),e.type===T.value.DATE&&(Object.assign(k.value,{[n]:gr(n)}),Object.assign(wn.value,{[n]:!1})),(e.isPercentage||e.percentageTo)&&Object.assign(N.value,{[n]:{reference:e.percentageTo,referenceIndex:C.dataset.header.map(e=>e.name).indexOf(e.percentageTo)}}),e.rangeFilter&&(Object.assign(P.value,{[n]:{min:Math.round(Math.min(...C.dataset.body.map(e=>e.td).map(e=>e[n]))),max:Math.round(Math.max(...C.dataset.body.map(e=>e.td).map(e=>e[n])))}}),Object.assign(j.value,{[n]:{min:Math.round(Math.min(...C.dataset.body.map(e=>e.td).map(e=>e[n]))),max:Math.round(Math.max(...C.dataset.body.map(e=>e.td).map(e=>e[n])))}})),e.isPercentage){let r=C.dataset.header.map(e=>e.name).indexOf(e.percentageTo),i=C.dataset.body.map(e=>e.td[r]).reduce((e,t)=>e+t,0);t.push([n,r,i])}e.type===T.value.NUMERIC&&!e.isPercentage&&Object.assign(A.value,{[n]:vr(C.dataset.body.map(e=>Number(e.td[n])))})}),B.value.forEach((e,n)=>{t.map(t=>{let[n,r,i]=t;e.td[n]=e.td[r]/i}),e.td.forEach((t,r)=>{C.dataset.header[r].type===T.value.TEXT&&C.dataset.header[r].isSearch&&(e[r]=Dr(t)),C.dataset.header[r].type===T.value.DATE&&(e[r]=new Date(t).getTime()),C.dataset.header[r].type===T.value.NUMERIC&&(e[r]=isNaN(Number(t))?r:t),Mn.value[n][r]=e[r]})}),e(!0)})}function kr(e,t){return new Promise((n,r)=>{e().then(e=>{try{n(t(e))}catch(e){r(e)}}).catch(e=>{r(e)})})}async function Ar(e){k.value[e]={from:gr(e).from,to:gr(e).to},wn.value[e]=!1,await fe(),mr()}function jr(e,t,n){let r=n.currentTarget;clearTimeout(gn.value),r.classList.add(`clicked`),gn.value=setTimeout(()=>{r.classList.remove(`clicked`)},200),xn.value=void 0,t.rangeFilter&&(P.value[e].min=j.value[e].min,P.value[e].max=j.value[e].max),t.isMultiselect?(M.value[e]=$(e),t.type===T.value.TEXT&&(I.value[e]=void 0),t.isSearch&&(F.value[e]=``)):t.type===T.value.NUMERIC?I.value[e]=void 0:t.type===T.value.TEXT?(I.value[e]=void 0,F.value[e]=``):t.type===T.value.DATE&&(I.value[e]=void 0),mr()}function Mr({td:e,rowIndex:t,colIndex:n,headerType:r,event:i}){if(r!==T.value.NUMERIC||isNaN(Number(e))){ur();return}E.value.col!==n&&ur();let a=i.currentTarget.parentNode;E.value.col=n,E.value.rows.map(e=>e.index).includes(t)?(a.dataset.selected=`false`,E.value.rows=E.value.rows.filter(e=>e.index!==t),i.currentTarget.classList.remove(yn.value.CELL),Array.from(a.children).forEach((e,t)=>{e.dataset.row===`even`?(e.style.background=q.value.even.backgroundColor,e.style.color=q.value.even.olor):(e.style.background=q.value.odd.backgroundColor,e.style.color=q.value.odd.color)}),i.currentTarget.dataset.row===`even`?(i.currentTarget.style.background=q.value.even.backgroundColor,i.currentTarget.style.color=q.value.even.color):(i.currentTarget.style.background=q.value.odd.backgroundColor,i.currentTarget.style.color=q.value.odd.color)):(a.dataset.selected=`true`,E.value.rows.push({index:t,value:e}),Array.from(a.children).forEach((e,t)=>{e.dataset.row===`even`?(e.style.background=q.value.even.selectedNeighbors.backgroundColor,e.style.color=q.value.even.selectedNeighbors.color):(e.style.background=q.value.odd.selectedNeighbors.backgroundColor,e.style.color=q.value.odd.selectedNeighbors.color)}),i.currentTarget.dataset.row===`odd`?(i.currentTarget.style.background=q.value.odd.selectedCell.backgroundColor,i.currentTarget.style.color=q.value.odd.selectedCell.color):(i.currentTarget.style.background=q.value.even.selectedCell.backgroundColor,i.currentTarget.style.color=q.value.even.selectedCell.color)),E.value.rows=E.value.rows.sort((e,t)=>e.index-t.index),w.value.type===T.value.DONUT&&E.value.rows.length>0&&ar()}function Nr(e){E.value.col===e?(Dn.value=void 0,ur()):(Yn.value.forEach((t,n)=>{Mr({td:t.td[e],rowIndex:n,colIndex:e,headerType:T.value.NUMERIC,event:{currentTarget:document.getElementById(`cell_${n}_${e}_${mn}`)}})}),Dn.value=e)}async function Pr(e,t){M.value[t].includes(e)?M.value[t]=M.value[t].filter(t=>t!==e):M.value[t].push(e),await fe(),mr()}function Fr(e){wn.value[e]=gr(e).from!==k.value[e].from||gr(e).to!==k.value[e].to}function Ir(e,t){xn.value=e;let n=t.currentTarget;clearTimeout(gn.value),n.classList.add(`clicked`),gn.value=setTimeout(()=>{n.classList.remove(`clicked`)},200),I.value[e]===1?I.value[e]=T.value.DESC:I.value[e]=T.value.ASC,pr()}function Lr(e,t,n){let r=n.currentTarget;clearTimeout(gn.value),r.classList.add(`clicked`),gn.value=setTimeout(()=>{r.classList.remove(`clicked`)},200);let i=document.getElementById(`th_dropdown_${e}`);i.dataset.isOpen===`false`?i.dataset.isOpen=`true`:i.dataset.isOpen=`false`}function Rr(e){ur(),!e||!e.target.value?D.value=0:D.value=Number(e.target.value),Cr()}let zr=y(null);pe(()=>{if(C.dataset.header.length===0)throw Error(`vue-ui-table error: missing header data.
1
+ import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,C as r,D as i,Ft as a,Ht as o,Jt as ee,X as te,d as s,in as ne,nt as re,r as ie}from"./lib-rPeBMZrn.js";import{n as ae,t as oe}from"./useHints-C-TwxM0Y.js";import{t as se}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as c}from"./BaseIcon-Cm-IJ179.js";import{t as l}from"./vue-ui-xy-B6XNUCzQ.js";import{t as ce}from"./vue-ui-donut-CmLo1r4-.js";import{Fragment as u,computed as d,createBlock as le,createCommentVNode as f,createElementBlock as p,createElementVNode as m,createTextVNode as h,createVNode as ue,defineAsyncComponent as de,nextTick as fe,normalizeClass as g,normalizeStyle as _,onMounted as pe,openBlock as v,ref as y,renderList as b,toDisplayString as x,unref as S,useCssVars as me,vModelSelect as he,vModelText as ge,watch as _e,withCtx as ve,withDirectives as ye,withKeys as be,withModifiers as xe}from"vue";var Se=/* @__PURE__ */ e({default:()=>dn}),Ce=[`innerHTML`],we=[`data-is-open`],Te={class:`vue-ui-table-export-hub-options`},Ee={class:`vue-ui-table-export-hub-option-wrapper`},De={class:`label`},Oe=[`innerHTML`],ke={class:`vue-ui-table-export-hub-option-wrapper`},Ae={class:`label`},je=[`innerHTML`],Me={class:`vue-ui-table-dialog-field`},Ne={class:`label vue-ui-table-dialog-input-label`,style:{width:`100%`}},Pe={style:{width:`fit-content`}},Fe={class:`vue-ui-table`},Ie={key:0},Le={key:0},Re={key:1},ze={key:0,style:{display:`flex`,"align-items":`center`,"justify-content":`flex-end`}},Be=[`innerHTML`],Ve={key:0,style:{"margin-left":`3px`}},He={key:0},Ue={class:`th-filter`},We={key:0,class:`th-date`},Ge={class:`date-wrapper--inputs`},Ke={class:`date-fieldset`},qe=[`for`],Je=[`id`,`onUpdate:modelValue`,`onInput`],Ye={class:`date-fieldset`},Xe=[`for`],Ze=[`id`,`onUpdate:modelValue`,`onInput`],Qe={class:`date-wrapper--button`},$e=[`onClick`],et=[`innerHTML`],tt=[`innerHTML`],nt=[`innerHTML`],rt=[`onClick`,`disabled`],it=[`placeholder`,`onUpdate:modelValue`,`name`],at=[`onClick`],ot=[`innerHTML`],st=[`innerHTML`],ct=[`innerHTML`],lt=[`onClick`,`innerHTML`],ut=[`innerHTML`],dt={key:5,class:`th-range-filter`},ft=[`for`],pt=[`id`,`max`,`min`,`onUpdate:modelValue`],mt=[`id`,`max`,`min`,`onUpdate:modelValue`],ht=[`for`],gt=[`onClick`,`disabled`],_t=[`id`],vt=[`onClick`],yt=[`onClick`,`onKeyup`],bt=[`innerHTML`,`onClick`,`onKeyup`],xt=[`data-row`],St=[`data-row`],Ct=[`data-row`,`onClick`,`onKeyup`,`id`],wt=[`innerHTML`],Tt={key:1},Et={key:2},Dt={key:5},Ot=[`innerHTML`],kt={key:0},At={style:{"margin-left":`12px`}},jt={class:`format-num`},Mt={style:{"margin-left":`12px`}},Nt={key:0,class:`format-num`},Pt={key:1,class:`format-num`},Ft={key:2},It={style:{"margin-left":`12px`}},Lt={key:0,class:`format-num`},Rt={key:1,class:`format-num`},zt={key:2},Bt={key:1,class:`vue-ui-table-paginator format-num`},Vt={key:2,class:`vue-ui-table-size-warning`},Ht=[`innerHTML`],Ut={key:4,class:`vue-ui-table-pagination format-num`},Wt=[`innerHTML`,`disabled`],Gt=[`disabled`],Kt={for:`pageScroller`,style:{"font-size":`14px`}},qt=[`max`,`value`],Jt={key:1},Yt=[`disabled`],Xt=[`innerHTML`,`disabled`],Zt={class:`vue-ui-table-chart-modal-options`},Qt=[`innerHTML`],$t=[`innerHTML`],en=[`innerHTML`],tn={style:{width:`100%`,height:`fit-content`}},nn={class:`vue-ui-table-fieldset`},rn={class:`vue-ui-table-fieldset-wrapper`},an=[`name`,`id`,`checked`,`onInput`],on=[`for`],sn=[`disabled`],cn=[`innerHTML`],ln={style:{width:`100%`,"margin-bottom":`12px`}},un={key:2,style:{width:`100%`,"margin-bottom":`32px`}},dn=/*#__PURE__*/ se({__name:`vue-ui-table`,props:{config:{type:Object,default(){return{}}},dataset:{type:Object,default(){return{}}}},emits:[`page-change`],setup(e,{expose:se,emit:Se}){me(e=>({v6b779b9d:Ln.value,v71f90aa0:Rn.value,v82bf5584:Hn.value,bc0e3a90:zn.value,v4bc5be6a:Un.value,v542dfbf0:Wn.value,v5935dfae:Bn.value,v23648322:Vn.value,v98d33e98:Gn.value}));let dn=de(()=>import(`./BaseDraggableDialog-DHgIPVmz.js`).then(e=>e.n)),C=e,fn=Se,{vue_ui_table:pn}=t(),mn=te();y(null);let hn=y(null),gn=y(null),w=y({height:316,type:`bar`,width:512}),T=y({ASC:1,BAR:`bar`,DATE:`date`,DESC:-1,DONUT:`donut`,LINE:`line`,NUMERIC:`numeric`,PERCENTAGE:`percentage`,TEXT:`text`}),_n=y(100),vn=y(100);y(0),y(0),y(400),y(200);let yn=y({CELL:`smart-td-selected`,FIRST_TD:`smart-td-selected-first`,LAST_TD:`smart-td-selected-last`,ROW:`smart-td-selected-neighbor`}),bn=y(void 0),xn=y(void 0),E=y({col:void 0,rows:[]}),D=y(0),O=y(20),Sn=y(!1),Cn=y(!1),k=y({}),A=y({}),wn=y({}),j=y({}),M=y({}),N=y({}),P=y({}),F=y({}),I=y({}),Tn=y(C.config.rowsPerPage?C.config.rowsPerPage:25),En=y([.../* @__PURE__ */ new Set([10,25,50,100,250,500,C.config.rowsPerPage?C.config.rowsPerPage:25,C.dataset.body.length])].sort((e,t)=>e-t)),Dn=y(void 0),L=y(void 0),On=y(void 0),R=y(!1),kn=y(0),An=y(``),jn=y(``),z=y(!1),B=y(JSON.parse(JSON.stringify(C.dataset.body)).map((e,t)=>({...e,absoluteIndex:t}))),Mn=y(JSON.parse(JSON.stringify(C.dataset.body)).map((e,t)=>({...e,absoluteIndex:t}))),V=y(JSON.parse(JSON.stringify(C.dataset.header)).map((e,t)=>({average:Object.hasOwn(e,`average`)?e.average:!1,decimals:Object.hasOwn(e,`decimals`)?e.decimals:0,isMultiselect:Object.hasOwn(e,`isMultiselect`)?e.isMultiselect:!1,isPercentage:Object.hasOwn(e,`isPercentage`)?e.isPercentage:!1,isSearch:Object.hasOwn(e,`isSearch`)?e.isSearch:!1,isSort:Object.hasOwn(e,`isSort`)?e.isSort:!1,name:e.name,percentageTo:Object.hasOwn(e,`percentageTo`)?e.percentageTo:void 0,prefix:Object.hasOwn(e,`prefix`)?e.prefix:``,rangeFilter:Object.hasOwn(e,`rangeFilter`)?e.rangeFilter:!1,suffix:Object.hasOwn(e,`suffix`)?e.suffix:``,sum:Object.hasOwn(e,`sum`)?e.sum:!1,type:e.type,index:t}))),Nn=d(()=>hn.value?hn.value.getBoundingClientRect().height+3:3),H=d(()=>{if(!Object.keys(C.config||{}).length)return pn;let e=ne({defaultConfig:pn,userConfig:C.config});return r(e)}),U=d(()=>H.value.style.exportMenu),W=d(()=>H.value.style.title),G=d(()=>H.value.style.th),K=d(()=>H.value.style.inputs),Pn=d(()=>H.value.style.dropdowns),Fn=d(()=>H.value.style.closeButtons),q=d(()=>H.value.style.rows),J=d(()=>H.value.style.pagination),Y=d(()=>H.value.style.chart),In=d(()=>H.value.style);ae({config:()=>H.value,dataset:()=>C.dataset,component:`VueUiTable`,rules:[oe.noHint]});let X=d(()=>H.value.useCursorPointer),Ln=d(()=>G.value.buttons.cancel.inactive.backgroundColor),Rn=d(()=>G.value.buttons.cancel.inactive.color),zn=d(()=>G.value.buttons.cancel.active.backgroundColor),Bn=d(()=>G.value.buttons.filter.active.backgroundColor),Vn=d(()=>G.value.buttons.filter.active.color),Hn=d(()=>a(zn.value,.33)),Un=d(()=>ee(zn.value,33)),Wn=d(()=>a(Bn.value,.33)),Gn=d(()=>ee(Bn,33)),Kn=d(()=>[...V.value].filter(e=>e.type===T.value.DATE)),qn=d(()=>[``,...Kn.value.map(e=>e.name)]),Jn=d(()=>{let e=Kn.value.find(e=>e.name===An.value);return e?e.index:null}),Z=d(()=>{let e=[];if(B.value.length)for(let t=0;t<B.value.length;t+=Tn.value)e.push(B.value.slice(t,t+Tn.value));return e}),Yn=d(()=>Z.value[D.value]),Xn=d(()=>Jn.value==null?[]:Yn.value.map(e=>e.td[Jn.value])),Zn=d(()=>Object.keys(M.value).map(e=>({index:e,name:C.dataset.header[e].name,options:M.value[e]}))),Qn=d(()=>H.value.useChart&&E.value.rows.length>1),$n=d(()=>C.dataset.header.map(e=>e.type).includes(T.value.NUMERIC)),Q=d(()=>({arrowSort:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 9l4 -4l4 4m-4 -4v14" /><path d="M21 15l-4 4l-4 -4m4 4v-14" /></svg>`,bar:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 12m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v6a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z" /><path d="M9 8m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v10a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z" /><path d="M15 4m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v14a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z" /><path d="M4 20l14 0" /></svg>`,chart:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 19l16 0" /><path d="M4 15l4 -6l4 2l4 -5l4 4" /></svg>`,chevronDown:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M6 9l6 6l6 -6" /></svg>`,chevronLeft:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*1.6}" height="${O.value*1.6}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M15 6l-6 6l6 6" /></svg>`,chevronRight:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*1.6}" height="${O.value*1.6}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M9 6l6 6l-6 6" /></svg>`,donut:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*.8}" height="${O.value*.8}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M12 3v5m4 4h5" /><path d="M8.929 14.582l-3.429 2.918" /><path d="M12 12m-4 0a4 4 0 1 0 8 0a4 4 0 1 0 -8 0" /><path d="M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0" /></svg>`,export:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M12.5 21h-7.5a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v7.5" /><path d="M3 10h18" /><path d="M10 3v18" /><path d="M16 19h6" /><path d="M19 16l3 3l-3 3" /></svg>`,fileDownload:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M14 3v4a1 1 0 0 0 1 1h4" /><path d="M17 21h-10a2 2 0 0 1 -2 -2v-14a2 2 0 0 1 2 -2h7l5 5v11a2 2 0 0 1 -2 2z" /><path d="M12 17v-6" /><path d="M9.5 14.5l2.5 2.5l2.5 -2.5" /></svg>`,filter:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 4h16v2.172a2 2 0 0 1 -.586 1.414l-4.414 4.414v7l-6 2v-8.5l-4.48 -4.928a2 2 0 0 1 -.52 -1.345v-2.227z" /></svg>`,move:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 9l3 3l-3 3" /><path d="M15 12h6" /><path d="M6 9l-3 3l3 3" /><path d="M3 12h6" /><path d="M9 18l3 3l3 -3" /><path d="M12 15v6" /><path d="M15 6l-3 -3l-3 3" /><path d="M12 3v6" /></svg>`,sort09:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /><path d="M17 3a2 2 0 0 1 2 2v3a2 2 0 1 1 -4 0v-3a2 2 0 0 1 2 -2z" /><path d="M17 16m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0" /><path d="M19 16v3a2 2 0 0 1 -2 2h-1.5" /></svg>`,sort90:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /><path d="M17 14a2 2 0 0 1 2 2v3a2 2 0 1 1 -4 0v-3a2 2 0 0 1 2 -2z" /><path d="M17 5m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0" /><path d="M19 5v3a2 2 0 0 1 -2 2h-1.5" /></svg>`,sortAZ:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M15 10v-5c0 -1.38 .62 -2 2 -2s2 .62 2 2v5m0 -3h-4" /><path d="M19 21h-4l4 -7h-4" /><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /></svg>`,sortZA:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M15 21v-5c0 -1.38 .62 -2 2 -2s2 .62 2 2v5m0 -3h-4" /><path d="M19 10h-4l4 -7h-4" /><path d="M4 15l3 3l3 -3" /><path d="M7 6v12" /></svg>`,sum:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M18 16v2a1 1 0 0 1 -1 1h-11l6 -7l-6 -7h11a1 1 0 0 1 1 1v2" /></svg>`,table:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" fill="white" d="M 10 2, 21 2, 21 21, 10 21Z"/><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14z" /><path d="M3 10h18" /><path d="M10 3v18" /></svg>`,warning:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value*.8}" height="${O.value*.8}" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M10.24 3.957l-8.422 14.06a1.989 1.989 0 0 0 1.7 2.983h16.845a1.989 1.989 0 0 0 1.7 -2.983l-8.423 -14.06a1.989 1.989 0 0 0 -3.4 0z" /><path d="M12 9v4" /><path d="M12 17h.01" /></svg>`,grip:`<svg xmlns="http://www.w3.org/2000/svg" width="${O.value}" height="${O.value}" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"><path d="M5 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M5 15m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M12 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M12 15m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M19 9m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /><path d="M19 15m-1 0a1 1 0 1 0 2 0a1 1 0 1 0 -2 0" /></svg>`})),er=d(()=>B.value.map(e=>e.td)),tr=d(()=>({sumPercentage:Number((E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0)*100).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString(),sumRegular:Number(E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString(),averagePercentage:Number((E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0)/E.value.rows.length*100).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString(),averageRegular:Number((E.value.rows.map(e=>e.value).reduce((e,t)=>e+t,0)/E.value.rows.length).toFixed(C.dataset.header[E.value.col].decimals)).toLocaleString()})),nr=y({width:1e3,height:500});function rr({width:e,height:t}){nr.value={width:e,height:t}}let ir=d(()=>{if(!Qn.value)return[];let e=nr.value.height,t=nr.value.width,n=t/E.value.rows.length,r=Math.max(...E.value.rows.map(e=>e.value)),i=Math.min(...E.value.rows.map(e=>e.value)),o=C.dataset.header[E.value.col].isPercentage&&C.dataset.header[E.value.col].percentageTo,ee=w.value.type===T.value.DONUT&&L.value&&L.value.name,te=C.dataset.header[E.value.col].name+(o?` / ${C.dataset.header[N.value[E.value.col].referenceIndex].name}`:``)+(ee?` ${H.value.translations.by} ${L.value.name}`:``),ne=C.dataset.header[E.value.col].prefix,re=C.dataset.header[E.value.col].suffix,ae=[{name:te,series:E.value.rows.map(e=>e.value),type:`line`,useProgression:!0,smooth:Y.value.layout.line.smooth,color:Y.value.layout.line.stroke,useArea:Y.value.layout.line.useArea}],oe=[{name:te,series:E.value.rows.map(e=>e.value),type:`bar`,useProgression:!0,color:Y.value.layout.bar.fill}],se=Y.value.modal.backgroundColor,c=ie(se),l=C.dataset.header[E.value.col].decimals,ce={useCssAnimation:!1,chart:{width:t,height:e-250,backgroundColor:se,color:c,labels:{fontSize:18,prefix:ne,suffix:re},grid:{stroke:a(c,.5),labels:{color:c,xAxisLabels:{color:c,show:Xn.value.length,values:Xn.value,datetimeFormatter:Y.value.layout.datetimeFormatter,showOnlyAtModulo:Y.value.layout.timeLabels.showOnlyAtModulo,modulo:Y.value.layout.timeLabels.modulo}}},highlighter:{color:c},legend:{color:c,show:!1},title:{text:te,color:c,textAlign:`center`,fontSize:18},tooltip:{showTimeLabel:Xn.value.length,backgroundOpacity:30,color:c,backgroundColor:se,showPercentage:!1,roundingValue:l},userOptions:{buttons:{pdf:!1,csv:!1,table:!1,annotator:!1}},zoom:{show:Y.value.layout.zoom.show,autoFit:Y.value.layout.zoom.autoFit,focusOnDrag:!0,minimap:{show:!0}}},line:{labels:{show:!0,color:c,rounding:l},dot:{useSerieColor:!1,fill:Y.value.layout.line.plot.fill,strokeWidth:Y.value.layout.line.plot.strokeWidth}},bar:{useGradient:!1,border:{useSerieColor:!1,stroke:Y.value.layout.bar.stroke,strokeWidth:Y.value.layout.bar.strokeWidth},labels:{show:!0,color:c,rounding:l}}},u=i>=0?0:Math.abs(i),d=r+u,le=C.dataset.header[E.value.col].isPercentage,f=E.value.rows.map((t,r)=>({x:n*r+n/2,y:(1-(t.value+u)/d)*e,value:le?t.value*100:t.value,suffix:le?`%`:C.dataset.header[E.value.col].suffix?C.dataset.header[E.value.col].suffix:``,prefix:C.dataset.header[E.value.col].prefix?C.dataset.header[E.value.col].prefix:``,index:t.index,absoluteValue:le?Math.abs(t.value)*100:Math.abs(t.value)}));return{donutConfig:{useCssAnimation:!1,userOptions:{position:`left`,buttons:{pdf:!1,csv:!1,table:!1,annotator:!1}},style:{chart:{backgroundColor:se,color:c,layout:{curvedMarkers:!0,donut:{strokeWidth:64},labels:{dataLabels:{suffix:le?`%`:``,prefix:ne},value:{rounding:l},percentage:{color:c,rounding:l},name:{color:c},hollow:{average:{color:c,text:H.value.translations.average,value:{color:c}},total:{color:c,offsetY:-12,text:H.value.translations.total,value:{color:c,offsetY:-12}}}}},legend:{backgroundColor:se,color:c,roundingValue:l,roundingPercentage:l},padding:{left:12,right:12},title:{text:te,color:c,fontSize:18},tooltip:{backgroundOpacity:30,color:c,backgroundColor:se,roundingValue:l,roundingValue:l}}}},xyConfig:ce,xyDatasetLine:ae,xyDatasetBar:oe,progression:f.length>=2&&s(f)}});function ar(){let e=L.value.options.map((e,t)=>({name:e,color:o[t]||o[t%o.length],values:[Yn.value.filter((t,n)=>t.td[L.value.index]===e&&E.value.rows.map(e=>e.index).includes(n)).map(e=>e.td[E.value.col]).reduce((e,t)=>Math.abs(e)+Math.abs(t),0)],absoluteValue:Yn.value.filter((t,n)=>t.td[L.value.index]===e&&E.value.rows.map(e=>e.index).includes(n)).map(e=>e.td[E.value.col]).reduce((e,t)=>e+t,0)})).sort((e,t)=>t.value-e.value);bn.value=e,fe(()=>{w.value.type=T.value.DONUT,z.value=!1})}function or(e,t){return!A.value[e]&&(t.isSort||t.isSearch||t.isMultiselect||t.rangeFilter)&&![T.value.DATE].includes(t.type)}function sr(e=`all`){let t=C.dataset.header.map(e=>e.name),n=e===`all`?B.value.map(e=>e.td):Yn.value.map(e=>e.td),r=[t].concat(n),a=i(r);re({csvContent:a,title:jn.value})}function cr(){let e=document.getElementsByClassName(`th-dropdown`);e.length&&Array.from(e).forEach(e=>{e.dataset.isOpen=!1})}function lr(e,t){let n;clearTimeout(n),n=setTimeout(e,t)}function ur(){let e=document.getElementsByClassName(`tr_${mn}`);Array.from(e).forEach(e=>{Array.from(e.getElementsByTagName(`td`)).forEach(e=>{e.dataset.row===`even`?(e.style.background=q.value.even.backgroundColor,e.style.color=q.value.even.color):(e.style.background=q.value.odd.backgroundColor,e.style.color=q.value.odd.color)})}),Array.from(e).forEach(e=>e.dataset.selected=`false`),D.value>Z.value.length-1&&(D.value=Z.value.length-1),R.value=!1,bn.value=void 0,Dn.value=void 0,w.value.type=T.value.BAR,E.value={col:void 0,rows:[]},_n.value=100,vn.value=100}function dr(e,t){B.value=e.filter(e=>e.td[t]>=P.value[t].min&&e[t]<=P.value[t].max)}function fr(e,t){if(I.value[t]===T.value.ASC&&(e=e.sort((e,n)=>e[t]-n[t])),I.value[t]===T.value.DESC)e=e.sort((e,n)=>n[t]-e[t]);else return 0}function pr(){ur(),Object.keys(P.value).forEach(e=>{dr(B.value,e)}),Object.keys(I.value).forEach(e=>{fr(B.value,e)}),xn.value!==void 0&&fr(B.value,xn.value),C.dataset.header.forEach((e,t)=>{if(e.isPercentage){let e=N.value[t].referenceIndex,n=B.value.map(t=>t.td[e]).reduce((e,t)=>e+t,0);B.value.forEach(r=>{r.td[t]=r.td[e]/n})}}),D.value>Z.value.length-1&&(D.value=Z.value.length-1),[-1].includes(D.value)&&(D.value=0)}function mr(){B.value=Mn.value.filter(e=>{for(let t in F.value)if(!e.td[t].toUpperCase().includes(F.value[t].toUpperCase()))return!1;for(let t in M.value)if(!M.value[t].some(n=>n===e.td[t]))return!1;for(let t in k.value){let n=new Date(e.td[t]),r=new Date(k.value[t].from),i=new Date(k.value[t].to);if(n<r||n>i)return!1}return!0}),pr()}function hr(e){return er.value.map(t=>t[e]).map(e=>isNaN(Number(e))?0:e).reduce((e,t)=>e+t,0)/B.value.length}function gr(e){let t=C.dataset.body.map(t=>new Date(t.td[e])),n=new Date(Math.min(...t)),r=new Date(Math.max(...t)),i=n.getFullYear(),a=r.getFullYear(),o=String(n.getMonth()+1).padStart(2,`0`),ee=String(r.getMonth()+1).padStart(2,`0`),te=String(n.getDate()).padStart(2,`0`),s=String(r.getDate()).padStart(2,`0`);return{from:`${i}-${o}-${te}`,to:`${a}-${ee}-${s}`}}function $(e){return[...new Set(C.dataset.body.map(t=>t.td[e]))]}function _r(e){return er.value.map(t=>t[e]).map(e=>isNaN(Number(e))?0:e).reduce((e,t)=>e+t,0)}function vr(e){return e.includes(NaN)}function yr(e,t){return!M.value[t]||M.value[t].includes(e)}function br(e){return!isNaN(Number(String(e).replaceAll(`%`,``)))}function xr(e,t){let n=t.isSort,r=t.isSearch,i=t.isMultiselect&&M.value[e],a=t.rangeFilter,o=e=>{if(a&&P.value[e])return Math.round(P.value[e].min)===j.value[e].min&&Math.round(P.value[e].max)===j.value[e].max};if(n&&r&&i&&a)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e])&&M.value[e].length===$(e).length&&o(e);if(n&&r&&i)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e])&&M.value[e].length===$(e).length;if(n&&r&&a)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e])&&o(e);if(n&&r)return[``,void 0].includes(F.value[e])&&[void 0].includes(I.value[e]);if(n&&i&&a)return[void 0].includes(I.value[e])&&M.value[e].length===$(e).length&&o(e);if(n&&i)return[void 0].includes(I.value[e])&&M.value[e].length===$(e).length;if(r&&i&&a)return[``,void 0].includes(F.value[e])&&M.value[e].length===$(e).length&&o(e);if(r&&i)return[``,void 0].includes(F.value[e])&&M.value[e].length===$(e).length;if(r&&a)return[``,void 0].includes(F.value[e])&&o(e);if(r)return[``,void 0].includes(F.value[e]);if(n&&a)return[void 0].includes(I.value[e])&&o(e);if(n)return[void 0].includes(I.value[e]);if(i&&a)return M.value[e].length===$(e).length&&o(e);if(i)return M.value[e].length===$(e).length}function Sr(){return{totalPages:Z.value.length,itemsPerPage:Tn.value,currentPage:D.value,currentPageData:Yn.value.map(e=>e.td)}}se({getCurrentPageData:Sr});function Cr(){fn(`page-change`,Sr())}let wr=y(null);function Tr(e){if(ur(),e===`next`&&D.value<Z.value.length){if(D.value+1>Z.value.length-1)return;D.value+=1}else if(e===`previous`&&D.value>=1)--D.value;else{if(e-1<0||e>Z.value.length||e===`previous`)return;D.value=e-1}Cr(),wr.value&&wr.value.scrollTo({top:0,left:0,behavior:`smooth`})}function Er(e){e.preventDefault();let t=e.keyCode;if(![38,40,37,39].includes(t))return;let n=e.target.id.match(/cell_(\d+)_(\d+)_([0-9a-fA-F-]{36})/),r=parseInt(n[1]),i=parseInt(n[2]),a=document.getElementById(`cell_${r}_${i+1}_${mn}`),o=document.getElementById(`cell_${r}_${i-1}_${mn}`),ee=document.getElementById(`cell_${r+1}_${i}_${mn}`),te=document.getElementById(`cell_${r-1}_${i}_${mn}`),s;switch(!0){case t===39:s=a;break;case t===37:s=o;break;case t===38:s=te;break;case t===40:s=ee;break;default:return}s&&(s.focus(),s.scrollIntoView({behavior:`smooth`,block:`center`}))}function Dr(e){let t=0;for(let n=0;n<e.length;n+=1)t+=e.charCodeAt(n);return t}async function Or(){return new Promise(e=>{let t=[];V.value.forEach((e,n)=>{if(e.isSearch&&Object.assign(F.value,{[n]:``}),e.isMultiselect&&Object.assign(M.value,{[n]:$(n)}),e.type===T.value.DATE&&(Object.assign(k.value,{[n]:gr(n)}),Object.assign(wn.value,{[n]:!1})),(e.isPercentage||e.percentageTo)&&Object.assign(N.value,{[n]:{reference:e.percentageTo,referenceIndex:C.dataset.header.map(e=>e.name).indexOf(e.percentageTo)}}),e.rangeFilter&&(Object.assign(P.value,{[n]:{min:Math.round(Math.min(...C.dataset.body.map(e=>e.td).map(e=>e[n]))),max:Math.round(Math.max(...C.dataset.body.map(e=>e.td).map(e=>e[n])))}}),Object.assign(j.value,{[n]:{min:Math.round(Math.min(...C.dataset.body.map(e=>e.td).map(e=>e[n]))),max:Math.round(Math.max(...C.dataset.body.map(e=>e.td).map(e=>e[n])))}})),e.isPercentage){let r=C.dataset.header.map(e=>e.name).indexOf(e.percentageTo),i=C.dataset.body.map(e=>e.td[r]).reduce((e,t)=>e+t,0);t.push([n,r,i])}e.type===T.value.NUMERIC&&!e.isPercentage&&Object.assign(A.value,{[n]:vr(C.dataset.body.map(e=>Number(e.td[n])))})}),B.value.forEach((e,n)=>{t.map(t=>{let[n,r,i]=t;e.td[n]=e.td[r]/i}),e.td.forEach((t,r)=>{C.dataset.header[r].type===T.value.TEXT&&C.dataset.header[r].isSearch&&(e[r]=Dr(t)),C.dataset.header[r].type===T.value.DATE&&(e[r]=new Date(t).getTime()),C.dataset.header[r].type===T.value.NUMERIC&&(e[r]=isNaN(Number(t))?r:t),Mn.value[n][r]=e[r]})}),e(!0)})}function kr(e,t){return new Promise((n,r)=>{e().then(e=>{try{n(t(e))}catch(e){r(e)}}).catch(e=>{r(e)})})}async function Ar(e){k.value[e]={from:gr(e).from,to:gr(e).to},wn.value[e]=!1,await fe(),mr()}function jr(e,t,n){let r=n.currentTarget;clearTimeout(gn.value),r.classList.add(`clicked`),gn.value=setTimeout(()=>{r.classList.remove(`clicked`)},200),xn.value=void 0,t.rangeFilter&&(P.value[e].min=j.value[e].min,P.value[e].max=j.value[e].max),t.isMultiselect?(M.value[e]=$(e),t.type===T.value.TEXT&&(I.value[e]=void 0),t.isSearch&&(F.value[e]=``)):t.type===T.value.NUMERIC?I.value[e]=void 0:t.type===T.value.TEXT?(I.value[e]=void 0,F.value[e]=``):t.type===T.value.DATE&&(I.value[e]=void 0),mr()}function Mr({td:e,rowIndex:t,colIndex:n,headerType:r,event:i}){if(r!==T.value.NUMERIC||isNaN(Number(e))){ur();return}E.value.col!==n&&ur();let a=i.currentTarget.parentNode;E.value.col=n,E.value.rows.map(e=>e.index).includes(t)?(a.dataset.selected=`false`,E.value.rows=E.value.rows.filter(e=>e.index!==t),i.currentTarget.classList.remove(yn.value.CELL),Array.from(a.children).forEach((e,t)=>{e.dataset.row===`even`?(e.style.background=q.value.even.backgroundColor,e.style.color=q.value.even.olor):(e.style.background=q.value.odd.backgroundColor,e.style.color=q.value.odd.color)}),i.currentTarget.dataset.row===`even`?(i.currentTarget.style.background=q.value.even.backgroundColor,i.currentTarget.style.color=q.value.even.color):(i.currentTarget.style.background=q.value.odd.backgroundColor,i.currentTarget.style.color=q.value.odd.color)):(a.dataset.selected=`true`,E.value.rows.push({index:t,value:e}),Array.from(a.children).forEach((e,t)=>{e.dataset.row===`even`?(e.style.background=q.value.even.selectedNeighbors.backgroundColor,e.style.color=q.value.even.selectedNeighbors.color):(e.style.background=q.value.odd.selectedNeighbors.backgroundColor,e.style.color=q.value.odd.selectedNeighbors.color)}),i.currentTarget.dataset.row===`odd`?(i.currentTarget.style.background=q.value.odd.selectedCell.backgroundColor,i.currentTarget.style.color=q.value.odd.selectedCell.color):(i.currentTarget.style.background=q.value.even.selectedCell.backgroundColor,i.currentTarget.style.color=q.value.even.selectedCell.color)),E.value.rows=E.value.rows.sort((e,t)=>e.index-t.index),w.value.type===T.value.DONUT&&E.value.rows.length>0&&ar()}function Nr(e){E.value.col===e?(Dn.value=void 0,ur()):(Yn.value.forEach((t,n)=>{Mr({td:t.td[e],rowIndex:n,colIndex:e,headerType:T.value.NUMERIC,event:{currentTarget:document.getElementById(`cell_${n}_${e}_${mn}`)}})}),Dn.value=e)}async function Pr(e,t){M.value[t].includes(e)?M.value[t]=M.value[t].filter(t=>t!==e):M.value[t].push(e),await fe(),mr()}function Fr(e){wn.value[e]=gr(e).from!==k.value[e].from||gr(e).to!==k.value[e].to}function Ir(e,t){xn.value=e;let n=t.currentTarget;clearTimeout(gn.value),n.classList.add(`clicked`),gn.value=setTimeout(()=>{n.classList.remove(`clicked`)},200),I.value[e]===1?I.value[e]=T.value.DESC:I.value[e]=T.value.ASC,pr()}function Lr(e,t,n){let r=n.currentTarget;clearTimeout(gn.value),r.classList.add(`clicked`),gn.value=setTimeout(()=>{r.classList.remove(`clicked`)},200);let i=document.getElementById(`th_dropdown_${e}`);i.dataset.isOpen===`false`?i.dataset.isOpen=`true`:i.dataset.isOpen=`false`}function Rr(e){ur(),!e||!e.target.value?D.value=0:D.value=Number(e.target.value),Cr()}let zr=y(null);pe(()=>{if(C.dataset.header.length===0)throw Error(`vue-ui-table error: missing header data.
2
2
  Provide an array of objects of type:
3
3
  {
4
4
  name: string;
@@ -1 +1 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,D as r,Ht as i,Jt as a,S as o,X as ee,at as s,i as te,m as ne,nt as re,w as ie,yt as ae,zt as oe}from"./lib-rPeBMZrn.js";import{n as se,t as ce}from"./useHints-BH9r_0Vd.js";import{t as le}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as ue}from"./resolveChartConfig-CIhClE5R.js";import{n as de,t as fe}from"./userOptionsSlots-DYuo-E5m.js";import{t as pe}from"./usePrinter-sVoTzet1.js";import{t as me}from"./useUserOptionState-CXlFnwPv.js";import{t as he}from"./vClickOutside-BxNzkY17.js";import{t as ge}from"./vue_ui_table_sparkline-Dlfbza49.js";import{Fragment as c,computed as l,createBlock as _e,createCommentVNode as u,createElementBlock as d,createElementVNode as f,createSlots as ve,createVNode as p,defineAsyncComponent as ye,mergeProps as be,nextTick as xe,normalizeClass as Se,normalizeStyle as m,onBeforeUnmount as Ce,onMounted as we,openBlock as h,ref as g,renderList as _,renderSlot as Te,shallowRef as Ee,toDisplayString as v,unref as y,useCssVars as De,useSlots as Oe,watch as ke,withCtx as Ae,withDirectives as je}from"vue";var Me=/* @__PURE__ */ e({default:()=>b}),Ne=[`id`],Pe={style:{"z-index":`1`,"padding-right":`24px`}},Fe={key:0,style:{display:`flex`,flexDirection:`row`,alignItems:`center`}},Ie={key:0,style:{display:`flex`,flexDirection:`row`,alignItems:`center`}},Le=[`onClick`],Re=[`onClick`],ze=[`data-cell`],Be=[`data-cell`,`onPointerenter`],Ve=[`data-cell`],He=[`data-cell`],Ue=[`data-cell`],We=[`data-cell`],Ge={key:1,ref:`source`,dir:`auto`},b=/*#__PURE__*/ le({__name:`vue-ui-table-sparkline`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`copyAlt`],setup(e,{expose:le,emit:Me}){De(e=>({v5fe3988e:e.tdo}));let b=ye(()=>import(`./vue-ui-sparkline-Y-sljnbS.js`).then(e=>e.n)),x=ye(()=>import(`./BaseIcon-Cm-IJ179.js`).then(e=>e.n)),Ke=ye(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),{vue_ui_table_sparkline:qe}=t(),S=e,Je=Me,C=g(ee()),Ye=g(0),w=g(0),T=g(null),Xe=Oe(),Ze=g(!1),E=l({get:()=>et(),set:e=>e}),D=l(()=>E.value.userOptions),O=l(()=>E.value.sparkline),k=l(()=>E.value.thead),A=l(()=>E.value.tbody),j=l(()=>E.value.title);we(()=>{Xe[`chart-background`]&&E.value.debug&&console.warn(`VueUiTableSparkline does not support the #chart-background slot.`)}),se({config:()=>E.value,dataset:()=>S.dataset,component:`VueUiTableSparkline`,rules:[ce.emptyArray,{test:e=>e.some(e=>e?.values&&e.values.length>500),message:[`👀 One or more series have > 500 datapoints. Consider if you really need this level of detail.`,``,`▶️ Use larger time scales, or aggregated values`]},{test:e=>e.some(e=>e?.values&&e.values.length>1095),message:[`👀 One or more series have > 1095 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 will be impacted.`]}]});let M=l(()=>E.value.userOptions.useCursorPointer),{userOptionsVisible:N,setUserOptionsVisibility:Qe,keepUserOptionState:$e}=me({config:E.value});function et(){return ue(S.config,qe,ge)}ke(()=>S.config,e=>{E.value=et(),N.value=!E.value.userOptions.showOnChartHover,st(),w.value+=1},{deep:!0}),ke(()=>S.dataset,e=>{W.value=U.value,w.value+=1},{deep:!0});let{isPrinting:tt,isImaging:nt,generatePdf:rt,generateImage:it}=pe({elementId:`table_${C.value}`,fileName:j.value.text||`vue-ui-table-sparkline`,options:E.value.userOptions.print}),at=l(()=>ie(E.value.customPalette)),P=g(null),F=g(!1),ot=l(()=>E.value.responsiveBreakpoint);we(()=>{st()});let I=g(E.value.colNames),L=Ee(null);function st(){oe(S.dataset)&&s({componentName:`VueUiTableSparkline`,type:`dataset`}),L.value&&L.value.disconnect(),L.value=new ResizeObserver(e=>{e.forEach(e=>{F.value=e.contentRect.width<ot.value})}),P.value&&L.value.observe(P.value),I.value=[];for(let e=0;e<mt.value;e+=1)I.value.push(E.value.colNames[e]||`col ${e}`)}Ce(()=>{L.value&&L.value.disconnect()});function R(e){if([null,void 0].includes(e))return null;let t=Number(e);return Number.isFinite(t)?t:null}function z(e){return typeof e==`number`&&Number.isFinite(e)}function ct(e=[]){return e.map(R).filter(z)}function B(e,t,n){let r=R(e),i=R(t),a=z(r),o=z(i);return a&&o?n===-1?r-i:i-r:a?-1:+!!o}function V(e,t,r={}){let i=R(e);return i===null?`-`:te(E.value.formatter,i,n({p:E.value.prefix,v:i,s:E.value.suffix,r:t}),r)}let H=l(()=>(S.dataset.forEach((e,t)=>{ae({datasetObject:e,requiredAttributes:[`name`,`values`]}).forEach(e=>{s({componentName:`VueUiTableSparkline`,type:`datasetSerieAttribute`,property:e,index:t})})}),S.dataset.map((e,t)=>{let n=e.values||[],r=ct(n),a=r.length?r.reduce((e,t)=>e+t,0):null,ee=r.length?a/r.length:null,s=r.length?ne(r):null;return{...e,values:n,color:o(e.color)||at.value[t]||i[t]||i[t%i.length],sum:a,average:ee,median:s,sparklineDataset:n.map((e,t)=>({period:E.value.colNames[t]||`col ${t}`,value:R(e)}))}})));function lt(e){let t=(e[0]?.values||[]).map((t,n)=>e.map(e=>e?.values?.[n]??null)).map(e=>e.map((e,t)=>[e,t]).sort((e,t)=>B(e[0],t[0],1)).map(e=>e[1]));return e.map((e,n)=>({...e,values:e.values||[],orders:t[n]}))}let U=l(()=>lt(H.value)),W=g(U.value),ut=l(()=>Math.max(...W.value.map(e=>(e.values||[]).length))),dt=g(void 0),ft=g(!1),G=g(void 0),pt=g(1);function K(){ft.value=!1,G.value=void 0,X.value=void 0,pt.value=1,$.value.forEach(e=>e.state=1),Y.value={name:1,sum:1,average:1,median:1},W.value=U.value}function q(e,t,n){if([`name`,`sum`,`average`,`median`].includes(e.type)){ht(e.type,t,n);return}if(!bt(t))return;if(Z.value=t,X.value=void 0,![null,void 0].includes(G.value)&&t!==G.value&&(G.value=void 0,K()),$.value[t].state===n&&G.value===t){G.value=void 0,K();return}ft.value=!0,G.value=t;let r=U.value.map(e=>e.values?.[t]??null),i=n;$.value[t].state=i,pt.value=i,t===dt.value?dt.value=void 0:dt.value=t;let a=r.map((e,t)=>[t,e]).sort((e,t)=>B(e[1],t[1],i)).map(e=>e[0]).map(e=>U.value[e]);W.value=a,w.value+=1}let mt=l(()=>Math.max(...S.dataset.map(e=>(e.values||[]).length))),J=l(()=>{let e=I.value.map(e=>({type:`reg`,value:e}));if(!e.length)for(let t=0;t<mt.value;t+=1)e.push({type:`reg`,value:`col ${t+1}`});E.value.showTotal&&(e=[...e,{type:`sum`,value:E.value.translations.total}]);let t;return t=E.value.showAverage&&E.value.showMedian?[...e,{type:`average`,value:E.value.translations.average},{type:`median`,value:E.value.translations.median}]:E.value.showAverage&&!E.value.showMedian?[...e,{type:`average`,value:E.value.translations.average}]:!E.value.showAverage&&E.value.showMedian?[...e,{type:`median`,value:E.value.translations.median}]:e,E.value.showSparklines?[...t,{type:`chart`,value:E.value.translations.chart}]:t}),Y=g({name:1,sum:1,average:1,median:1}),X=g(void 0);function ht(e,t,n){if(!W.value||W.value.length===0||!xt(e))return;if(X.value!==e&&(X.value=void 0),![null,void 0].includes(G.value)&&t!==G.value&&K(),G.value=void 0,Y.value[e]===n&&X.value){X.value=void 0,K();return}X.value=e,ft.value=!0,Y.value[e]=n,[null,void 0].includes(t)||($.value[t].state=Y.value[e]);let r=Y.value[e],i=[...W.value].sort((t,n)=>{let i=t[e],a=n[e];return typeof i==`string`&&typeof a==`string`?r===-1?i.localeCompare(a):a.localeCompare(i):B(i,a,r)});W.value=i}let Z=g(void 0),Q=g(void 0);function gt({dataIndex:e,serieIndex:t}){Z.value=e,Q.value=t,T.value[e]&&!F.value&&T.value[e].scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`center`})}let _t=g(!1);function vt(e){_t.value=e,Ye.value+=1}function yt(e=null){xe(()=>{let t=[E.value.translations.serie].concat(J.value),n=H.value.map((e,t)=>[[e.name],e.values,[e.sum],[e.average],[e.median]]),i=[t].concat(n),a=r(i);e?e(a):re({csvContent:a,title:j.value.text||`vue-ui-table-sparkline`})})}function bt(e){return E.value.sortedDataColumnIndices.includes(e)}function xt(e){return e.type===`name`||e===`name`?E.value.sortedSeriesName:e.type===`sum`||e===`sum`?E.value.sortedSum:e.type===`average`||e===`average`?E.value.sortedAverage:e.type===`median`||e===`median`?E.value.sortedMedian:!1}function St(e,t,n){return[`sum`,`average`,`median`].includes(t.type)?X.value===t.type&&Y.value[t.type]===n?1:.3:e===G.value&&$.value[e].state===n?1:.3}function Ct(){E.value.resetSortOnClickOutside&&K()}let $=l({get:()=>J.value.map(e=>({state:1})),set:e=>e});function wt(e){e?.stage===`start`?Ze.value=!0:e?.stage===`end`?Ze.value=!1:it()}async function Tt(){Je(`copyAlt`,{config:E.value,dataset:H.value}),E.value.userOptions.callbacks.altCopy?await Promise.resolve(E.value.userOptions.callbacks.altCopy({config:E.value,dataset:H.value})):console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.")}return le({generatePdf:rt,generateImage:it,generateCsv:yt,restoreOrder:K,copyAlt:Tt}),(e,t)=>(h(),d(`div`,{ref_key:`tableContainer`,ref:P,class:Se({"vue-data-ui-component":!0,"vue-ui-table-sparkline":!0,"vue-ui-responsive":F.value}),style:{overflow:`hidden`},id:`table_${C.value}`,onMouseenter:t[3]||=()=>y(Qe)(!0),onMouseleave:t[4]||=()=>y(Qe)(!1)},[j.value.text?(h(),d(`div`,{key:0,class:`vue-ui-table-sparkline-caption`,style:m({backgroundColor:j.value.backgroundColor})},[f(`div`,{class:`atom-title`,style:m({fontSize:`${j.value.fontSize}px`,fontWeight:j.value.bold?`bold`:`normal`,color:j.value.color,textAlign:j.value.textAlign})},v(j.value.text),5),j.value.subtitle.text?(h(),d(`div`,{key:0,class:`atom-subtitle`,style:m({fontSize:`${j.value.subtitle.fontSize}px`,fontWeight:j.value.subtitle.bold?`bold`:`normal`,color:j.value.subtitle.color,textAlign:j.value.textAlign})},v(j.value.subtitle.text),5)):u(``,!0)],4)):u(``,!0),f(`div`,{style:{overflow:`auto`},onPointerleave:t[2]||=e=>{Q.value=void 0,Z.value=void 0}},[f(`table`,{class:`vue-ui-data-table`,style:m({fontFamily:E.value.fontFamily,position:`relative`})},[f(`thead`,Pe,[je((h(),d(`tr`,{role:`row`,class:`vue-ui-data-table__thead-row`,style:m({backgroundColor:k.value.backgroundColor,color:k.value.color})},[f(`th`,{role:`cell`,style:m({backgroundColor:k.value.backgroundColor,border:k.value.outline,textAlign:k.value.textAlign,fontWeight:k.value.bold?`bold`:`normal`}),class:`sticky-col-first`},[f(`div`,{style:m({display:`flex`,flexDirection:`row`,alignItems:`center`,gap:`3px`,justifyContent:k.value.textAlign})},[f(`span`,null,v(E.value.translations.serie),1),W.value.length>1&&E.value.sortedSeriesName?(h(),d(`div`,Fe,[f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-down`,onClick:t[0]||=e=>q({type:`name`},null,-1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowBottom`,stroke:k.value.color,style:m({opacity:X.value===`name`&&Y.value.name===-1?1:.3})},null,8,[`stroke`,`style`])],4),f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-up`,onClick:t[1]||=e=>q({type:`name`},null,1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowTop`,stroke:k.value.color,style:m({opacity:X.value===`name`&&Y.value.name===1?1:.3})},null,8,[`stroke`,`style`])],4)])):u(``,!0)],4)],4),(h(!0),d(c,null,_(J.value,(t,n)=>(h(),d(`th`,{role:`cell`,style:m({background:k.value.backgroundColor,border:k.value.outline,textAlign:k.value.textAlign,fontWeight:k.value.bold?`bold`:`normal`,minWidth:n===J.value.length-1?`${O.value.dimensions.width}px`:`48px`,paddingRight:n===J.value.length-1&&D.value.show?`36px`:``}),class:Se({"sticky-col":n===J.value.length-1&&E.value.showSparklines})},[f(`div`,{style:m({display:`flex`,flexDirection:`row`,alignItems:`center`,gap:`3px`,justifyContent:k.value.textAlign})},[f(`span`,null,v(t.value),1),W.value.length>1&&(bt(n)||xt(t))?(h(),d(`div`,Ie,[f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-down`,onClick:()=>q(t,n,-1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowBottom`,stroke:k.value.color,style:m({opacity:St(n,t,-1)})},null,8,[`stroke`,`style`])],12,Le),f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-up`,onClick:()=>q(t,n,1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowTop`,stroke:k.value.color,style:m({opacity:St(n,t,1)})},null,8,[`stroke`,`style`])],12,Re)])):u(``,!0)],4),D.value.show&&n===J.value.length-1&&(y($e)||y(N))?(h(),_e(y(Ke),{ref_for:!0,ref:`details`,key:`user_option_${Ye.value}`,backgroundColor:k.value.backgroundColor,color:k.value.color,isPrinting:y(tt),isImaging:y(nt),uid:C.value,hasPdf:D.value.buttons.pdf,hasXls:D.value.buttons.csv,hasImg:D.value.buttons.img,hasFullscreen:D.value.buttons.fullscreen,hasAltCopy:D.value.buttons.altCopy,isFullscreen:_t.value,titles:{...D.value.buttonTitles},chartElement:P.value,position:D.value.position,callbacks:D.value.callbacks,printScale:D.value.print.scale,isCursorPointer:M.value,onToggleFullscreen:vt,onGeneratePdf:y(rt),onGenerateImage:wt,onGenerateCsv:yt,onCopyAlt:Tt,style:m({visibility:y($e)?y(N)?`visible`:`hidden`:`visible`})},ve({_:2},[_(y(de)(e.$slots,`menuIcon optionPdf optionCsv optionImg optionFullscreen optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:Ae(n=>[Te(e.$slots,t,be({ref_for:!0},y(fe)(t,n)),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasXls`,`hasImg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`titles`,`chartElement`,`position`,`callbacks`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`style`])):u(``,!0)],6))),256))],4)),[[y(he),Ct]])]),f(`tbody`,null,[(h(!0),d(c,null,_(W.value,(e,t)=>(h(),d(`tr`,{role:`row`,style:m({backgroundColor:A.value.backgroundColor,color:A.value.color}),class:Se({"vue-ui-data-table__tbody__row":!0,"vue-ui-data-table__tbody__row-even":t%2==0,"vue-ui-data-table__tbody__row-odd":t%2!=0})},[f(`td`,{role:`cell`,style:m({backgroundColor:A.value.backgroundColor,border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.serie,class:`vue-ui-data-table__tbody__td sticky-col-first`},[f(`div`,{dir:`auto`,style:m({display:`flex`,flexDirection:`row`,alignItems:`center`,gap:`6px`,justifyContent:A.value.textAlign})},[A.value.showColorMarker?(h(),d(`span`,{key:0,style:m({color:e.color})},`⬤`,4)):u(``,!0),f(`span`,null,v(e.name??`-`),1)],4)],12,ze),(h(!0),d(c,null,_(ut.value,(n,r)=>(h(),d(`td`,{dir:`auto`,role:`cell`,ref_for:!0,ref_key:`TD`,ref:T,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign,background:Z.value!==void 0&&r===Z.value?A.value.selectedColor.useSerieColor?y(a)(e.color,20):A.value.selectedColor.fallback:``}),"data-cell":J.value[r]?J.value[r].value:``,class:`vue-ui-data-table__tbody__td`,onPointerenter:e=>{Q.value=t,Z.value=r}},v(V(e.values[r],E.value.roundingValues,{datapoint:e,seriesIndex:t,datapointIndex:r})),45,Be))),256)),E.value.showTotal?(h(),d(`td`,{key:0,dir:`auto`,role:`cell`,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.total,class:`vue-ui-data-table__tbody__td`},v(V(e.sum,E.value.roundingTotal,{datapoint:e.sum,seriesIndex:t})),13,Ve)):u(``,!0),E.value.showAverage?(h(),d(`td`,{key:1,dir:`auto`,role:`cell`,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.average,class:`vue-ui-data-table__tbody__td`},v(V(e.average,E.value.roundingAverage,{datapoint:e.average,seriesIndex:t})),13,He)):u(``,!0),E.value.showMedian?(h(),d(`td`,{key:2,dir:`auto`,role:`cell`,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.median,class:`vue-ui-data-table__tbody__td`},v(V(e.median,E.value.roundingMedian,{datapoint:e.median,seriesIndex:t})),13,Ue)):u(``,!0),E.value.showSparklines?(h(),d(`td`,{key:3,role:`cell`,"data-cell":E.value.translations.chart,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign,backgroundColor:A.value.backgroundColor,padding:`0`}),class:`vue-ui-data-table__tbody__td sticky-col`},[p(y(b),{onHoverIndex:({index:e})=>gt({dataIndex:e,serieIndex:t}),"height-ratio":O.value.dimensions.heightRatio,"forced-padding":30,dataset:e.sparklineDataset,showInfo:!1,selectedIndex:Z.value,config:{type:O.value.type,style:{backgroundColor:`transparent`,animation:{show:O.value.animation.show&&!y(tt)&&!y(nt),animationFrames:O.value.animation.animationFrames},padding:{right:12},line:{color:e.color,smooth:O.value.smooth,cutNullValues:O.value.cutNullValues,strokeWidth:O.value.strokeWidth},bar:{color:e.color},area:{color:e.color,opacity:O.value.showArea?16:0,useGradient:O.value.useGradient},verticalIndicator:{color:e.color},plot:{radius:9,stroke:A.value.backgroundColor,strokeWidth:3}}}},null,8,[`onHoverIndex`,`height-ratio`,`dataset`,`selectedIndex`,`config`])],12,We)):u(``,!0)],6))),256))])],4)],32),e.$slots.source?(h(),d(`div`,Ge,[Te(e.$slots,`source`,{},void 0,!0)],512)):u(``,!0)],42,Ne))}},[[`__scopeId`,`data-v-bb68c573`]]);export{Me as n,b as t};
1
+ import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,D as r,Ht as i,Jt as a,S as o,X as ee,at as s,i as te,m as ne,nt as re,w as ie,yt as ae,zt as oe}from"./lib-rPeBMZrn.js";import{n as se,t as ce}from"./useHints-C-TwxM0Y.js";import{t as le}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as ue}from"./resolveChartConfig-CIhClE5R.js";import{n as de,t as fe}from"./userOptionsSlots-DYuo-E5m.js";import{t as pe}from"./usePrinter-DVf3YcG5.js";import{t as me}from"./useUserOptionState-CXlFnwPv.js";import{t as he}from"./vClickOutside-BxNzkY17.js";import{t as ge}from"./vue_ui_table_sparkline-Dlfbza49.js";import{Fragment as c,computed as l,createBlock as _e,createCommentVNode as u,createElementBlock as d,createElementVNode as f,createSlots as ve,createVNode as p,defineAsyncComponent as ye,mergeProps as be,nextTick as xe,normalizeClass as Se,normalizeStyle as m,onBeforeUnmount as Ce,onMounted as we,openBlock as h,ref as g,renderList as _,renderSlot as Te,shallowRef as Ee,toDisplayString as v,unref as y,useCssVars as De,useSlots as Oe,watch as ke,withCtx as Ae,withDirectives as je}from"vue";var Me=/* @__PURE__ */ e({default:()=>b}),Ne=[`id`],Pe={style:{"z-index":`1`,"padding-right":`24px`}},Fe={key:0,style:{display:`flex`,flexDirection:`row`,alignItems:`center`}},Ie={key:0,style:{display:`flex`,flexDirection:`row`,alignItems:`center`}},Le=[`onClick`],Re=[`onClick`],ze=[`data-cell`],Be=[`data-cell`,`onPointerenter`],Ve=[`data-cell`],He=[`data-cell`],Ue=[`data-cell`],We=[`data-cell`],Ge={key:1,ref:`source`,dir:`auto`},b=/*#__PURE__*/ le({__name:`vue-ui-table-sparkline`,props:{config:{type:Object,default(){return{}}},dataset:{type:Array,default(){return[]}}},emits:[`copyAlt`],setup(e,{expose:le,emit:Me}){De(e=>({v5fe3988e:e.tdo}));let b=ye(()=>import(`./vue-ui-sparkline-BMMrpUPR.js`).then(e=>e.n)),x=ye(()=>import(`./BaseIcon-Cm-IJ179.js`).then(e=>e.n)),Ke=ye(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),{vue_ui_table_sparkline:qe}=t(),S=e,Je=Me,C=g(ee()),Ye=g(0),w=g(0),T=g(null),Xe=Oe(),Ze=g(!1),E=l({get:()=>et(),set:e=>e}),D=l(()=>E.value.userOptions),O=l(()=>E.value.sparkline),k=l(()=>E.value.thead),A=l(()=>E.value.tbody),j=l(()=>E.value.title);we(()=>{Xe[`chart-background`]&&E.value.debug&&console.warn(`VueUiTableSparkline does not support the #chart-background slot.`)}),se({config:()=>E.value,dataset:()=>S.dataset,component:`VueUiTableSparkline`,rules:[ce.emptyArray,{test:e=>e.some(e=>e?.values&&e.values.length>500),message:[`👀 One or more series have > 500 datapoints. Consider if you really need this level of detail.`,``,`▶️ Use larger time scales, or aggregated values`]},{test:e=>e.some(e=>e?.values&&e.values.length>1095),message:[`👀 One or more series have > 1095 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 will be impacted.`]}]});let M=l(()=>E.value.userOptions.useCursorPointer),{userOptionsVisible:N,setUserOptionsVisibility:Qe,keepUserOptionState:$e}=me({config:E.value});function et(){return ue(S.config,qe,ge)}ke(()=>S.config,e=>{E.value=et(),N.value=!E.value.userOptions.showOnChartHover,st(),w.value+=1},{deep:!0}),ke(()=>S.dataset,e=>{W.value=U.value,w.value+=1},{deep:!0});let{isPrinting:tt,isImaging:nt,generatePdf:rt,generateImage:it}=pe({elementId:`table_${C.value}`,fileName:j.value.text||`vue-ui-table-sparkline`,options:E.value.userOptions.print}),at=l(()=>ie(E.value.customPalette)),P=g(null),F=g(!1),ot=l(()=>E.value.responsiveBreakpoint);we(()=>{st()});let I=g(E.value.colNames),L=Ee(null);function st(){oe(S.dataset)&&s({componentName:`VueUiTableSparkline`,type:`dataset`}),L.value&&L.value.disconnect(),L.value=new ResizeObserver(e=>{e.forEach(e=>{F.value=e.contentRect.width<ot.value})}),P.value&&L.value.observe(P.value),I.value=[];for(let e=0;e<mt.value;e+=1)I.value.push(E.value.colNames[e]||`col ${e}`)}Ce(()=>{L.value&&L.value.disconnect()});function R(e){if([null,void 0].includes(e))return null;let t=Number(e);return Number.isFinite(t)?t:null}function z(e){return typeof e==`number`&&Number.isFinite(e)}function ct(e=[]){return e.map(R).filter(z)}function B(e,t,n){let r=R(e),i=R(t),a=z(r),o=z(i);return a&&o?n===-1?r-i:i-r:a?-1:+!!o}function V(e,t,r={}){let i=R(e);return i===null?`-`:te(E.value.formatter,i,n({p:E.value.prefix,v:i,s:E.value.suffix,r:t}),r)}let H=l(()=>(S.dataset.forEach((e,t)=>{ae({datasetObject:e,requiredAttributes:[`name`,`values`]}).forEach(e=>{s({componentName:`VueUiTableSparkline`,type:`datasetSerieAttribute`,property:e,index:t})})}),S.dataset.map((e,t)=>{let n=e.values||[],r=ct(n),a=r.length?r.reduce((e,t)=>e+t,0):null,ee=r.length?a/r.length:null,s=r.length?ne(r):null;return{...e,values:n,color:o(e.color)||at.value[t]||i[t]||i[t%i.length],sum:a,average:ee,median:s,sparklineDataset:n.map((e,t)=>({period:E.value.colNames[t]||`col ${t}`,value:R(e)}))}})));function lt(e){let t=(e[0]?.values||[]).map((t,n)=>e.map(e=>e?.values?.[n]??null)).map(e=>e.map((e,t)=>[e,t]).sort((e,t)=>B(e[0],t[0],1)).map(e=>e[1]));return e.map((e,n)=>({...e,values:e.values||[],orders:t[n]}))}let U=l(()=>lt(H.value)),W=g(U.value),ut=l(()=>Math.max(...W.value.map(e=>(e.values||[]).length))),dt=g(void 0),ft=g(!1),G=g(void 0),pt=g(1);function K(){ft.value=!1,G.value=void 0,X.value=void 0,pt.value=1,$.value.forEach(e=>e.state=1),Y.value={name:1,sum:1,average:1,median:1},W.value=U.value}function q(e,t,n){if([`name`,`sum`,`average`,`median`].includes(e.type)){ht(e.type,t,n);return}if(!bt(t))return;if(Z.value=t,X.value=void 0,![null,void 0].includes(G.value)&&t!==G.value&&(G.value=void 0,K()),$.value[t].state===n&&G.value===t){G.value=void 0,K();return}ft.value=!0,G.value=t;let r=U.value.map(e=>e.values?.[t]??null),i=n;$.value[t].state=i,pt.value=i,t===dt.value?dt.value=void 0:dt.value=t;let a=r.map((e,t)=>[t,e]).sort((e,t)=>B(e[1],t[1],i)).map(e=>e[0]).map(e=>U.value[e]);W.value=a,w.value+=1}let mt=l(()=>Math.max(...S.dataset.map(e=>(e.values||[]).length))),J=l(()=>{let e=I.value.map(e=>({type:`reg`,value:e}));if(!e.length)for(let t=0;t<mt.value;t+=1)e.push({type:`reg`,value:`col ${t+1}`});E.value.showTotal&&(e=[...e,{type:`sum`,value:E.value.translations.total}]);let t;return t=E.value.showAverage&&E.value.showMedian?[...e,{type:`average`,value:E.value.translations.average},{type:`median`,value:E.value.translations.median}]:E.value.showAverage&&!E.value.showMedian?[...e,{type:`average`,value:E.value.translations.average}]:!E.value.showAverage&&E.value.showMedian?[...e,{type:`median`,value:E.value.translations.median}]:e,E.value.showSparklines?[...t,{type:`chart`,value:E.value.translations.chart}]:t}),Y=g({name:1,sum:1,average:1,median:1}),X=g(void 0);function ht(e,t,n){if(!W.value||W.value.length===0||!xt(e))return;if(X.value!==e&&(X.value=void 0),![null,void 0].includes(G.value)&&t!==G.value&&K(),G.value=void 0,Y.value[e]===n&&X.value){X.value=void 0,K();return}X.value=e,ft.value=!0,Y.value[e]=n,[null,void 0].includes(t)||($.value[t].state=Y.value[e]);let r=Y.value[e],i=[...W.value].sort((t,n)=>{let i=t[e],a=n[e];return typeof i==`string`&&typeof a==`string`?r===-1?i.localeCompare(a):a.localeCompare(i):B(i,a,r)});W.value=i}let Z=g(void 0),Q=g(void 0);function gt({dataIndex:e,serieIndex:t}){Z.value=e,Q.value=t,T.value[e]&&!F.value&&T.value[e].scrollIntoView({behavior:`smooth`,block:`nearest`,inline:`center`})}let _t=g(!1);function vt(e){_t.value=e,Ye.value+=1}function yt(e=null){xe(()=>{let t=[E.value.translations.serie].concat(J.value),n=H.value.map((e,t)=>[[e.name],e.values,[e.sum],[e.average],[e.median]]),i=[t].concat(n),a=r(i);e?e(a):re({csvContent:a,title:j.value.text||`vue-ui-table-sparkline`})})}function bt(e){return E.value.sortedDataColumnIndices.includes(e)}function xt(e){return e.type===`name`||e===`name`?E.value.sortedSeriesName:e.type===`sum`||e===`sum`?E.value.sortedSum:e.type===`average`||e===`average`?E.value.sortedAverage:e.type===`median`||e===`median`?E.value.sortedMedian:!1}function St(e,t,n){return[`sum`,`average`,`median`].includes(t.type)?X.value===t.type&&Y.value[t.type]===n?1:.3:e===G.value&&$.value[e].state===n?1:.3}function Ct(){E.value.resetSortOnClickOutside&&K()}let $=l({get:()=>J.value.map(e=>({state:1})),set:e=>e});function wt(e){e?.stage===`start`?Ze.value=!0:e?.stage===`end`?Ze.value=!1:it()}async function Tt(){Je(`copyAlt`,{config:E.value,dataset:H.value}),E.value.userOptions.callbacks.altCopy?await Promise.resolve(E.value.userOptions.callbacks.altCopy({config:E.value,dataset:H.value})):console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.")}return le({generatePdf:rt,generateImage:it,generateCsv:yt,restoreOrder:K,copyAlt:Tt}),(e,t)=>(h(),d(`div`,{ref_key:`tableContainer`,ref:P,class:Se({"vue-data-ui-component":!0,"vue-ui-table-sparkline":!0,"vue-ui-responsive":F.value}),style:{overflow:`hidden`},id:`table_${C.value}`,onMouseenter:t[3]||=()=>y(Qe)(!0),onMouseleave:t[4]||=()=>y(Qe)(!1)},[j.value.text?(h(),d(`div`,{key:0,class:`vue-ui-table-sparkline-caption`,style:m({backgroundColor:j.value.backgroundColor})},[f(`div`,{class:`atom-title`,style:m({fontSize:`${j.value.fontSize}px`,fontWeight:j.value.bold?`bold`:`normal`,color:j.value.color,textAlign:j.value.textAlign})},v(j.value.text),5),j.value.subtitle.text?(h(),d(`div`,{key:0,class:`atom-subtitle`,style:m({fontSize:`${j.value.subtitle.fontSize}px`,fontWeight:j.value.subtitle.bold?`bold`:`normal`,color:j.value.subtitle.color,textAlign:j.value.textAlign})},v(j.value.subtitle.text),5)):u(``,!0)],4)):u(``,!0),f(`div`,{style:{overflow:`auto`},onPointerleave:t[2]||=e=>{Q.value=void 0,Z.value=void 0}},[f(`table`,{class:`vue-ui-data-table`,style:m({fontFamily:E.value.fontFamily,position:`relative`})},[f(`thead`,Pe,[je((h(),d(`tr`,{role:`row`,class:`vue-ui-data-table__thead-row`,style:m({backgroundColor:k.value.backgroundColor,color:k.value.color})},[f(`th`,{role:`cell`,style:m({backgroundColor:k.value.backgroundColor,border:k.value.outline,textAlign:k.value.textAlign,fontWeight:k.value.bold?`bold`:`normal`}),class:`sticky-col-first`},[f(`div`,{style:m({display:`flex`,flexDirection:`row`,alignItems:`center`,gap:`3px`,justifyContent:k.value.textAlign})},[f(`span`,null,v(E.value.translations.serie),1),W.value.length>1&&E.value.sortedSeriesName?(h(),d(`div`,Fe,[f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-down`,onClick:t[0]||=e=>q({type:`name`},null,-1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowBottom`,stroke:k.value.color,style:m({opacity:X.value===`name`&&Y.value.name===-1?1:.3})},null,8,[`stroke`,`style`])],4),f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-up`,onClick:t[1]||=e=>q({type:`name`},null,1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowTop`,stroke:k.value.color,style:m({opacity:X.value===`name`&&Y.value.name===1?1:.3})},null,8,[`stroke`,`style`])],4)])):u(``,!0)],4)],4),(h(!0),d(c,null,_(J.value,(t,n)=>(h(),d(`th`,{role:`cell`,style:m({background:k.value.backgroundColor,border:k.value.outline,textAlign:k.value.textAlign,fontWeight:k.value.bold?`bold`:`normal`,minWidth:n===J.value.length-1?`${O.value.dimensions.width}px`:`48px`,paddingRight:n===J.value.length-1&&D.value.show?`36px`:``}),class:Se({"sticky-col":n===J.value.length-1&&E.value.showSparklines})},[f(`div`,{style:m({display:`flex`,flexDirection:`row`,alignItems:`center`,gap:`3px`,justifyContent:k.value.textAlign})},[f(`span`,null,v(t.value),1),W.value.length>1&&(bt(n)||xt(t))?(h(),d(`div`,Ie,[f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-down`,onClick:()=>q(t,n,-1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowBottom`,stroke:k.value.color,style:m({opacity:St(n,t,-1)})},null,8,[`stroke`,`style`])],12,Le),f(`button`,{class:`vue-ui-table-sparkline-sorting-button vue-ui-table-sparkline-sorting-button-up`,onClick:()=>q(t,n,1),style:m({cursor:M.value?`pointer`:`default`})},[p(y(x),{size:12,name:`arrowTop`,stroke:k.value.color,style:m({opacity:St(n,t,1)})},null,8,[`stroke`,`style`])],12,Re)])):u(``,!0)],4),D.value.show&&n===J.value.length-1&&(y($e)||y(N))?(h(),_e(y(Ke),{ref_for:!0,ref:`details`,key:`user_option_${Ye.value}`,backgroundColor:k.value.backgroundColor,color:k.value.color,isPrinting:y(tt),isImaging:y(nt),uid:C.value,hasPdf:D.value.buttons.pdf,hasXls:D.value.buttons.csv,hasImg:D.value.buttons.img,hasFullscreen:D.value.buttons.fullscreen,hasAltCopy:D.value.buttons.altCopy,isFullscreen:_t.value,titles:{...D.value.buttonTitles},chartElement:P.value,position:D.value.position,callbacks:D.value.callbacks,printScale:D.value.print.scale,isCursorPointer:M.value,onToggleFullscreen:vt,onGeneratePdf:y(rt),onGenerateImage:wt,onGenerateCsv:yt,onCopyAlt:Tt,style:m({visibility:y($e)?y(N)?`visible`:`hidden`:`visible`})},ve({_:2},[_(y(de)(e.$slots,`menuIcon optionPdf optionCsv optionImg optionFullscreen optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:Ae(n=>[Te(e.$slots,t,be({ref_for:!0},y(fe)(t,n)),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isPrinting`,`isImaging`,`uid`,`hasPdf`,`hasXls`,`hasImg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`titles`,`chartElement`,`position`,`callbacks`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`style`])):u(``,!0)],6))),256))],4)),[[y(he),Ct]])]),f(`tbody`,null,[(h(!0),d(c,null,_(W.value,(e,t)=>(h(),d(`tr`,{role:`row`,style:m({backgroundColor:A.value.backgroundColor,color:A.value.color}),class:Se({"vue-ui-data-table__tbody__row":!0,"vue-ui-data-table__tbody__row-even":t%2==0,"vue-ui-data-table__tbody__row-odd":t%2!=0})},[f(`td`,{role:`cell`,style:m({backgroundColor:A.value.backgroundColor,border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.serie,class:`vue-ui-data-table__tbody__td sticky-col-first`},[f(`div`,{dir:`auto`,style:m({display:`flex`,flexDirection:`row`,alignItems:`center`,gap:`6px`,justifyContent:A.value.textAlign})},[A.value.showColorMarker?(h(),d(`span`,{key:0,style:m({color:e.color})},`⬤`,4)):u(``,!0),f(`span`,null,v(e.name??`-`),1)],4)],12,ze),(h(!0),d(c,null,_(ut.value,(n,r)=>(h(),d(`td`,{dir:`auto`,role:`cell`,ref_for:!0,ref_key:`TD`,ref:T,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign,background:Z.value!==void 0&&r===Z.value?A.value.selectedColor.useSerieColor?y(a)(e.color,20):A.value.selectedColor.fallback:``}),"data-cell":J.value[r]?J.value[r].value:``,class:`vue-ui-data-table__tbody__td`,onPointerenter:e=>{Q.value=t,Z.value=r}},v(V(e.values[r],E.value.roundingValues,{datapoint:e,seriesIndex:t,datapointIndex:r})),45,Be))),256)),E.value.showTotal?(h(),d(`td`,{key:0,dir:`auto`,role:`cell`,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.total,class:`vue-ui-data-table__tbody__td`},v(V(e.sum,E.value.roundingTotal,{datapoint:e.sum,seriesIndex:t})),13,Ve)):u(``,!0),E.value.showAverage?(h(),d(`td`,{key:1,dir:`auto`,role:`cell`,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.average,class:`vue-ui-data-table__tbody__td`},v(V(e.average,E.value.roundingAverage,{datapoint:e.average,seriesIndex:t})),13,He)):u(``,!0),E.value.showMedian?(h(),d(`td`,{key:2,dir:`auto`,role:`cell`,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign}),"data-cell":E.value.translations.median,class:`vue-ui-data-table__tbody__td`},v(V(e.median,E.value.roundingMedian,{datapoint:e.median,seriesIndex:t})),13,Ue)):u(``,!0),E.value.showSparklines?(h(),d(`td`,{key:3,role:`cell`,"data-cell":E.value.translations.chart,style:m({border:A.value.outline,fontSize:`${A.value.fontSize}px`,fontWeight:A.value.bold?`bold`:`normal`,textAlign:A.value.textAlign,backgroundColor:A.value.backgroundColor,padding:`0`}),class:`vue-ui-data-table__tbody__td sticky-col`},[p(y(b),{onHoverIndex:({index:e})=>gt({dataIndex:e,serieIndex:t}),"height-ratio":O.value.dimensions.heightRatio,"forced-padding":30,dataset:e.sparklineDataset,showInfo:!1,selectedIndex:Z.value,config:{type:O.value.type,style:{backgroundColor:`transparent`,animation:{show:O.value.animation.show&&!y(tt)&&!y(nt),animationFrames:O.value.animation.animationFrames},padding:{right:12},line:{color:e.color,smooth:O.value.smooth,cutNullValues:O.value.cutNullValues,strokeWidth:O.value.strokeWidth},bar:{color:e.color},area:{color:e.color,opacity:O.value.showArea?16:0,useGradient:O.value.useGradient},verticalIndicator:{color:e.color},plot:{radius:9,stroke:A.value.backgroundColor,strokeWidth:3}}}},null,8,[`onHoverIndex`,`height-ratio`,`dataset`,`selectedIndex`,`config`])],12,We)):u(``,!0)],6))),256))])],4)],32),e.$slots.source?(h(),d(`div`,Ge,[Te(e.$slots,`source`,{},void 0,!0)],512)):u(``,!0)],42,Ne))}},[[`__scopeId`,`data-v-bb68c573`]]);export{Me as n,b as t};
@@ -1 +1 @@
1
- import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,Ht as r,Jt as i,S as a,X as ee,at as o,b as s,i as te,in as ne,t as re,w as ie,yt as ae,zt as oe}from"./lib-rPeBMZrn.js";import{n as se,t as ce}from"./BaseScanner-8NdoBs7B.js";import{n as le,t as ue}from"./useHints-BH9r_0Vd.js";import{t as de}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as fe}from"./resolveChartConfig-CIhClE5R.js";import{t as pe}from"./img-D4RQwASc.js";import{n as me}from"./Title-BliHuXfT.js";import{t as he}from"./useChartExport-BZts4KFb.js";import{n as ge,t as _e}from"./annotationSlots-BRR85CqJ.js";import{n as ve,t as ye}from"./userOptionsSlots-DYuo-E5m.js";import{t as be}from"./usePrinter-sVoTzet1.js";import{c as xe}from"./canvas-lib-22VpOI4_.js";import{t as Se}from"./useResponsive-CENUxfEL.js";import{t as Ce}from"./DefGrad-DKMq1REY.js";import{t as we}from"./useUserOptionState-CXlFnwPv.js";import{t as Te}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ee}from"./usePrefersMotion-XLHwega2.js";import{t as De}from"./useAutoSizeLabelsInsideViewbox-AIRF0PlD.js";import{t as Oe}from"./vue_ui_thermometer-CRijq6H6.js";import{Fragment as c,computed as l,createBlock as u,createCommentVNode as d,createElementBlock as f,createElementVNode as p,createSlots as ke,createVNode as Ae,defineAsyncComponent as m,guardReactiveProps as h,normalizeClass as g,normalizeProps as _,normalizeStyle as je,onMounted as Me,openBlock as v,ref as y,renderList as b,renderSlot as x,toDisplayString as S,toRefs as Ne,unref as C,useCssVars as Pe,watch as Fe,withCtx as Ie}from"vue";var Le=/* @__PURE__ */ e({default:()=>w}),Re=[`id`],ze={key:1,ref:`noTitle`,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},Be=[`xmlns`,`viewBox`,`aria-labelledby`,`aria-describedby`],Ve=[`id`],He=[`id`],Ue=[`width`,`height`],We=[`id`],Ge=[`x`,`y`,`width`,`height`,`rx`,`ry`],Ke=[`clip-path`],qe=[`x`,`y`,`height`,`width`],Je=[`x`,`y`,`height`,`width`,`fill`],Ye=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],Xe=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],Ze=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],Qe=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],$e=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],et=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],tt=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],nt=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],rt=[`x`,`y`,`height`,`width`],it=[`aria-label`],at=[`x`,`y`,`height`],ot=[`y`,`x`,`fill`,`font-size`,`font-weight`],st={key:4,class:`vue-data-ui-watermark`},w=/*#__PURE__*/ de({__name:`vue-ui-thermometer`,props:{dataset:{type:Object,default(){return{}}},config:{type:Object,default(){return{}}}},emits:[`copyAlt`],setup(e,{expose:de,emit:Le}){Pe(e=>({fff55a2e:Mt.value,v6d4692c5:jt.value,v4e7414f2:At.value}));let w=m(()=>import(`./PackageVersion-BIhjLNBU.js`).then(e=>e.t)),ct=m(()=>import(`./PenAndPaper-BGEp-TUm.js`).then(e=>e.t)),lt=m(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),{vue_ui_thermometer:ut}=t(),dt=Ee(),T=e,ft=Le,E=y(ee()),D=y(null),pt=y(0),mt=y(0),ht=y(null),gt=y(null),O=y(null),k=y(null),_t=l(()=>!!T.dataset&&Object.keys(T.dataset).length);Me(()=>{St()});let A=y(B()),j=l(()=>A.value.userOptions),M=l(()=>A.value.style.chart.graduations),N=l(()=>A.value.style.chart);le({config:()=>A.value,dataset:()=>T.dataset,component:`VueUiThermometer`,rules:[ue.noHint]});let vt=y(N.value.thermometer.width),P=y(N.value.height),F=y(N.value.width),yt=l(()=>A.value.userOptions.useCursorPointer),bt=l(()=>ne({defaultConfig:{userOptions:{show:!1},style:{chart:{animation:{use:!1},backgroundColor:`#99999930`,graduations:{stroke:`#6A6A6A`}}}},userConfig:A.value.skeletonConfig??{}})),{loading:I,FINAL_DATASET:L}=se({...Ne(T),FINAL_CONFIG:A,prepareConfig:B,skeletonDataset:T.config?.skeletonDataset??{value:0,from:-100,to:100,steps:20,colors:{from:`#A1A1A1`,to:`#CACACA`}},skeletonConfig:ne({defaultConfig:A.value,userConfig:bt.value})}),xt=l(()=>A.value.debug);function St(){if(oe(T.dataset)?o({componentName:`VueUiThermometer`,type:`dataset`,debug:xt.value}):ae({datasetObject:T.dataset,requiredAttributes:[`value`,`from`,`to`]}).forEach(e=>{o({componentName:`VueUiThermometer`,type:`datasetAttribute`,property:e,debug:xt.value})}),A.value.responsive){let e=xe(()=>{let{width:e,height:t}=Se({chart:D.value,title:A.value.style.title.text?ht.value:null,source:gt.value});requestAnimationFrame(()=>{P.value=Math.max(.1,t-12),F.value=e,Rt()})});O.value&&(k.value&&O.value.unobserve(k.value),O.value.disconnect()),O.value=new ResizeObserver(e),k.value=D.value,O.value.observe(k.value)}Rt()}let{userOptionsVisible:R,setUserOptionsVisibility:Ct,keepUserOptionState:wt}=we({config:A.value}),{svgRef:z}=Te({config:A.value.style.title});function B(){return fe(T.config,ut,Oe)}Fe(()=>T.config,e=>{A.value=B(),R.value=!A.value.userOptions.showOnChartHover,vt.value=N.value.thermometer.width,P.value=N.value.height,F.value=N.value.width,St(),mt.value+=1},{deep:!0});let{isPrinting:V,isImaging:H,generatePdf:Tt,generateImage:Et}=be({elementId:`thermometer__${E.value}`,fileName:A.value.style.title.text||`vue-ui-thermometer`,options:A.value.userOptions.print}),Dt=l(()=>A.value.userOptions.show&&!A.value.style.title.text),U=l(()=>ie(A.value.customPalette)),W=l(()=>L.value.steps||10);function G(e,t,n){let r=[],i=Ot(e),a=Ot(t);for(let e=0;e<n;e+=1){let t=K(i.red,a.red,e,n),ee=K(i.green,a.green,e,n),o=K(i.blue,a.blue,e,n),s=`#${q(t)}${q(ee)}${q(o)}`;r.push(s)}return r}function Ot(e){let t=e.slice(1);return{red:parseInt(t.slice(0,2),16),green:parseInt(t.slice(2,4),16),blue:parseInt(t.slice(4,6),16)}}function K(e,t,n,r){return Math.round(e+(t-e)*n/r)}function q(e){return e.toString(16).padStart(2,`0`)}let J=l(()=>{let e=Math.max(.1,F.value),t=Math.max(.1,P.value),n=N.value.padding;return{width:e,left:e/2-N.value.thermometer.width/2,right:e/2+N.value.thermometer.width/2,top:n.top,bottom:t-n.bottom-n.top,height:t,thermoHeight:t-n.top-n.bottom,thermoWidth:N.value.thermometer.width}}),kt=l(()=>J.value),Y=l(()=>{let e=s(L.value.from)<0?Math.abs(s(L.value.from)):s(L.value.from),t=s(L.value.to)<0?Math.abs(s(L.value.to)):s(L.value.to),n=0;return n=s(L.value.to)>0?e+t:e>t?e-t:t-e,(1-(Math.abs(s(L.value.from))+s(L.value.value))/n)*J.value.thermoHeight}),At=l(()=>`${Y.value}px`),jt=l(()=>`${J.value.thermoHeight}px`),Mt=l(()=>dt.value?`0ms`:`${N.value.animation.speedMs}ms`),Nt=l(()=>{if(L.value.colors){if(!L.value.colors.from)return G(U.value[0]||r[0],a(L.value.colors.to),W.value||10);if(!L.value.colors.to)return G(a(L.value.colors.from),U.value[1]||r[1],W.value||10)}else return G(U.value[1]||r[1],U.value[0]||r[0],W.value||10);return G(a(L.value.colors.from),a(L.value.colors.to),W.value||10)}),Pt=l(()=>{let e=[],t=0,n=J.value.thermoHeight;for(let r=0;r<n-1;r+=n/W.value)e.push({x:J.value.left,y:J.value.top+r,qYLess:J.value.top+r+n/W.value/4,halfY:J.value.top+r+n/W.value/2,qYMore:J.value.top+r+n/W.value/4*3,color:Nt.value[t],height:Math.max(.1,n/W.value)}),t+=1;return e}),X=y(!1);function Ft(e){X.value=e,pt.value+=1}let Z=y(!1);function It(){Z.value=!Z.value}async function Lt({scale:e=2}={}){if(!D.value)return;let{width:t,height:n}=D.value.getBoundingClientRect(),r=t/n,{imageUri:i,base64:a}=await pe({domElement:D.value,base64:!0,img:!0,scale:e});return{imageUri:i,base64:a,title:A.value.style.title.text,width:t,height:n,aspectRatio:r}}let Q=l({get:()=>N.value.label.fontSize,set:e=>e}),{autoSizeLabels:Rt}=De({svgRef:z,fontSize:N.value.label.fontSize,minFontSize:N.value.label.minFontSize,sizeRef:Q,labelClass:`.vue-ui-thermometer-label`}),zt=l(()=>N.value.backgroundColor),Bt=l(()=>A.value.style.title),{isCallbackImaging:Vt,isCallbackSvg:Ht,generateSvg:Ut,onGenerateImage:Wt}=he({svg:z,title:Bt,legend:null,legendItems:null,backgroundColor:zt,getSvgCallback:()=>A.value.userOptions.callbacks.svg,generateImage:Et});async function Gt(){ft(`copyAlt`,{config:A.value,dataset:L.value}),A.value.userOptions.callbacks.altCopy?await Promise.resolve(A.value.userOptions.callbacks.altCopy({config:A.value,dataset:L.value})):console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.")}let Kt=l(()=>`${E.value}-title`),qt=l(()=>`${E.value}-desc`),$=l(()=>te(N.value.label.formatter,L.value.value,n({p:N.value.label.prefix,v:L.value.value,s:N.value.label.suffix,r:N.value.label.rounding}),{datapoint:L.value})),Jt=l(()=>A.value.style.title.text||``),Yt=l(()=>{if(I.value)return`...`;let e=s(L.value.from),t=s(L.value.to);return`Thermometer value: ${$.value}. Range: ${e} to ${t}.`});return de({getImage:Lt,generatePdf:Tt,generateImage:Et,generateSvg:Ut,toggleAnnotator:It,toggleFullscreen:Ft,copyAlt:Gt}),(e,t)=>(v(),f(`div`,{ref_key:`thermoChart`,ref:D,class:g(`vue-data-ui-component vue-ui-thermometer ${X.value?`vue-data-ui-wrapper-fullscreen`:``}`),style:je(`width:100%;background:${N.value.backgroundColor};color:${N.value.color};font-family:${A.value.style.fontFamily}`),id:`thermometer__${E.value}`,onMouseenter:t[0]||=()=>C(Ct)(!0),onMouseleave:t[1]||=()=>C(Ct)(!1)},[j.value.buttons.annotator?(v(),u(C(ct),{key:0,svgRef:C(z),backgroundColor:N.value.backgroundColor,color:N.value.color,active:Z.value,isCursorPointer:yt.value,palette:j.value.annotatorPalette,onClose:It},ke({_:2},[b(C(_e),t=>({name:t,fn:Ie(n=>[x(e.$slots,t,_(h(C(ge)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):d(``,!0),Dt.value?(v(),f(`div`,ze,null,512)):d(``,!0),A.value.style.title.text?(v(),f(`div`,{key:2,ref_key:`chartTitle`,ref:ht,style:`width:100%`},[(v(),u(me,{key:`title_${mt.value}`,config:{title:{cy:`thermometer-div-title`,...A.value.style.title},subtitle:{cy:`thermometer-div-subtitle`,...A.value.style.title.subtitle}}},null,8,[`config`]))],512)):d(``,!0),j.value.show&&_t.value&&(C(wt)||C(R))?(v(),u(C(lt),{ref:`details`,key:`user_options_${pt.value}`,backgroundColor:N.value.backgroundColor,color:N.value.color,isImaging:C(H),isPrinting:C(V),uid:E.value,hasPdf:j.value.buttons.pdf,hasImg:j.value.buttons.img,hasSvg:j.value.buttons.svg,hasFullscreen:j.value.buttons.fullscreen,hasAltCopy:j.value.buttons.altCopy,hasXls:!1,isFullscreen:X.value,titles:{...j.value.buttonTitles},chartElement:D.value,position:j.value.position,hasAnnotator:j.value.buttons.annotator,isAnnotation:Z.value,callbacks:j.value.callbacks,printScale:j.value.print.scale,isCursorPointer:yt.value,onToggleFullscreen:Ft,onGeneratePdf:C(Tt),onGenerateImage:C(Wt),onGenerateSvg:C(Ut),onToggleAnnotator:It,onCopyAlt:Gt,style:je({visibility:C(wt)?C(R)?`visible`:`hidden`:`visible`})},ke({_:2},[b(C(ve)(e.$slots,`menuIcon optionPdf optionImg optionSvg optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:Ie(n=>[x(e.$slots,t,_(h(C(ye)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isImaging`,`isPrinting`,`uid`,`hasPdf`,`hasImg`,`hasSvg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`titles`,`chartElement`,`position`,`hasAnnotator`,`isAnnotation`,`callbacks`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):d(``,!0),(v(),f(`svg`,{ref_key:`svgRef`,ref:z,xmlns:C(re),class:g({"vue-data-ui-fullscreen--on":X.value,"vue-data-ui-fulscreen--off":!X.value}),width:`100%`,viewBox:`0 0 ${J.value.width} ${J.value.height}`,style:`background:transparent`,"aria-labelledby":Kt.value,"aria-describedby":qt.value},[p(`title`,{id:Kt.value},S(Jt.value),9,Ve),p(`desc`,{id:qt.value},S(Yt.value),9,He),Ae(C(w)),x(e.$slots,`svg-underlayer`,{svg:{...kt.value,isPrintingImg:C(V)||C(H)||C(Vt),isPrintingSvg:C(Ht)}},void 0,!0),e.$slots[`chart-background`]?(v(),f(`foreignObject`,{key:0,x:0,y:0,width:J.value.width,height:J.value.height,style:{pointerEvents:`none`}},[x(e.$slots,`chart-background`,{},void 0,!0)],8,Ue)):d(``,!0),p(`defs`,null,[p(`clipPath`,{id:`vueUiPill-${E.value}`,clipPathUnits:`userSpaceOnUse`},[p(`rect`,{x:J.value.left,y:J.value.top,width:J.value.thermoWidth,height:J.value.thermoHeight,rx:J.value.thermoWidth/2,ry:J.value.thermoWidth/2},null,8,Ge)],8,We),(v(!0),f(c,null,b(Pt.value,(e,t)=>(v(),u(Ce,{t:`linear`,id:`vueUiThermometerGradient_${t}_${E.value}`,key:`t_${t}_${E.value}`,x1:`0%`,y1:`0%`,x2:`100%`,y2:`0%`,stops:[[`0%`,e.color,1],[`50%`,C(i)(e.color,100-M.value.gradient.intensity),1],[`100%`,e.color,1]]},null,8,[`id`,`stops`]))),128))]),p(`g`,{"clip-path":`url(#vueUiPill-${E.value})`},[p(`rect`,{x:J.value.left,y:J.value.top,height:J.value.thermoHeight,width:J.value.thermoWidth,fill:`#FFFFFF`},null,8,qe),(v(!0),f(c,null,b(Pt.value,(e,t)=>(v(),f(`g`,{key:`graduation_${t}`},[p(`rect`,{x:e.x,y:e.y,height:e.height,width:J.value.thermoWidth,fill:M.value.gradient.show?`url(#vueUiThermometerGradient_${t}_${E.value})`:e.color,"shape-rendering":`crispEdges`},null,8,Je),M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:0,x1:e.x,x2:e.x+10,y1:e.y,y2:e.y,"stroke-width":M.value.strokeWidth,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Ye)):d(``,!0),M.value.showIntermediate?(v(),f(c,{key:1},[M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:0,x1:e.x,x2:e.x+5,y1:e.halfY,y2:e.halfY,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Xe)):d(``,!0),M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:1,x1:e.x,x2:e.x+2.5,y1:e.qYLess,y2:e.qYLess,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Ze)):d(``,!0),M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:2,x1:e.x,x2:e.x+2.5,y1:e.qYMore,y2:e.qYMore,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Qe)):d(``,!0)],64)):d(``,!0),M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:2,x1:J.value.right,x2:J.value.right-10,y1:e.y,y2:e.y,"stroke-width":M.value.strokeWidth,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,$e)):d(``,!0),M.value.showIntermediate?(v(),f(c,{key:3},[M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:0,x1:J.value.right,x2:J.value.right-5,y1:e.halfY,y2:e.halfY,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,et)):d(``,!0),M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:1,x1:J.value.right,x2:J.value.right-2.5,y1:e.qYLess,y2:e.qYLess,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,tt)):d(``,!0),M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:2,x1:J.value.right,x2:J.value.right-2.5,y1:e.qYMore,y2:e.qYMore,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,nt)):d(``,!0)],64)):d(``,!0)]))),128)),p(`rect`,{class:g({"vue-ui-thermometer-temperature":N.value.animation.use}),x:J.value.left,y:J.value.top,height:Y.value,width:J.value.thermoWidth,fill:`#FFFFFF66`},null,10,rt)],8,Ke),N.value.label.show?(v(),f(`g`,{key:1,role:`status`,"aria-live":`polite`,"aria-label":C(I)?`Loading data`:$.value},[C(I)?(v(),f(`rect`,{key:0,x:J.value.left-60,y:Y.value+J.value.top-Q.value/2,width:50,height:Q.value,fill:`#6A6A6A40`,rx:`3`},null,8,at)):(v(),f(`text`,{key:1,"aria-hidden":`true`,class:g({"vue-ui-thermometer-temperature-value":N.value.animation.use,"vue-ui-thermometer-label":!0}),y:Y.value+J.value.top+Q.value/3,x:J.value.left-10,"text-anchor":`end`,fill:N.value.label.color,"font-size":Q.value,"font-weight":N.value.label.bold?`bold`:`normal`},S($.value),11,ot))],8,it)):d(``,!0),x(e.$slots,`svg`,{svg:{...kt.value,isPrintingImg:C(V)||C(H)||C(Vt),isPrintingSvg:C(Ht)}},void 0,!0)],10,Be)),e.$slots.watermark?(v(),f(`div`,st,[x(e.$slots,`watermark`,_(h({isPrinting:C(V)||C(H)||C(Vt)||C(Ht)})),void 0,!0)])):d(``,!0),e.$slots.source?(v(),f(`div`,{key:5,ref_key:`source`,ref:gt,dir:`auto`},[x(e.$slots,`source`,{},void 0,!0)],512)):d(``,!0),x(e.$slots,`skeleton`,{},()=>[C(I)?(v(),u(ce,{key:0})):d(``,!0)],!0)],46,Re))}},[[`__scopeId`,`data-v-fec98266`]]);export{Le as n,w as t};
1
+ import{t as e}from"./rolldown-runtime-DK3Fl9T5.js";import{t}from"./useConfig-6jO1fkp5.js";import{$ as n,Ht as r,Jt as i,S as a,X as ee,at as o,b as s,i as te,in as ne,t as re,w as ie,yt as ae,zt as oe}from"./lib-rPeBMZrn.js";import{n as se,t as ce}from"./BaseScanner-8NdoBs7B.js";import{n as le,t as ue}from"./useHints-C-TwxM0Y.js";import{t as de}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as fe}from"./resolveChartConfig-CIhClE5R.js";import{t as pe}from"./img-D4RQwASc.js";import{n as me}from"./Title-BliHuXfT.js";import{t as he}from"./useChartExport-BZts4KFb.js";import{n as ge,t as _e}from"./annotationSlots-BRR85CqJ.js";import{n as ve,t as ye}from"./userOptionsSlots-DYuo-E5m.js";import{t as be}from"./usePrinter-DVf3YcG5.js";import{c as xe}from"./canvas-lib-22VpOI4_.js";import{t as Se}from"./useResponsive-CENUxfEL.js";import{t as Ce}from"./DefGrad-DKMq1REY.js";import{t as we}from"./useUserOptionState-CXlFnwPv.js";import{t as Te}from"./useChartAccessibility-DOMuYJfm.js";import{t as Ee}from"./usePrefersMotion-XLHwega2.js";import{t as De}from"./useAutoSizeLabelsInsideViewbox-AIRF0PlD.js";import{t as Oe}from"./vue_ui_thermometer-CRijq6H6.js";import{Fragment as c,computed as l,createBlock as u,createCommentVNode as d,createElementBlock as f,createElementVNode as p,createSlots as ke,createVNode as Ae,defineAsyncComponent as m,guardReactiveProps as h,normalizeClass as g,normalizeProps as _,normalizeStyle as je,onMounted as Me,openBlock as v,ref as y,renderList as b,renderSlot as x,toDisplayString as S,toRefs as Ne,unref as C,useCssVars as Pe,watch as Fe,withCtx as Ie}from"vue";var Le=/* @__PURE__ */ e({default:()=>w}),Re=[`id`],ze={key:1,ref:`noTitle`,class:`vue-data-ui-no-title-space`,style:`height:36px; width: 100%;background:transparent`},Be=[`xmlns`,`viewBox`,`aria-labelledby`,`aria-describedby`],Ve=[`id`],He=[`id`],Ue=[`width`,`height`],We=[`id`],Ge=[`x`,`y`,`width`,`height`,`rx`,`ry`],Ke=[`clip-path`],qe=[`x`,`y`,`height`,`width`],Je=[`x`,`y`,`height`,`width`,`fill`],Ye=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],Xe=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],Ze=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],Qe=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],$e=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],et=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],tt=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],nt=[`x1`,`x2`,`y1`,`y2`,`stroke-width`,`stroke`],rt=[`x`,`y`,`height`,`width`],it=[`aria-label`],at=[`x`,`y`,`height`],ot=[`y`,`x`,`fill`,`font-size`,`font-weight`],st={key:4,class:`vue-data-ui-watermark`},w=/*#__PURE__*/ de({__name:`vue-ui-thermometer`,props:{dataset:{type:Object,default(){return{}}},config:{type:Object,default(){return{}}}},emits:[`copyAlt`],setup(e,{expose:de,emit:Le}){Pe(e=>({fff55a2e:Mt.value,v6d4692c5:jt.value,v4e7414f2:At.value}));let w=m(()=>import(`./PackageVersion-DhptF5oD.js`).then(e=>e.t)),ct=m(()=>import(`./PenAndPaper-BGEp-TUm.js`).then(e=>e.t)),lt=m(()=>import(`./UserOptions-uWHV_zPB.js`).then(e=>e.n)),{vue_ui_thermometer:ut}=t(),dt=Ee(),T=e,ft=Le,E=y(ee()),D=y(null),pt=y(0),mt=y(0),ht=y(null),gt=y(null),O=y(null),k=y(null),_t=l(()=>!!T.dataset&&Object.keys(T.dataset).length);Me(()=>{St()});let A=y(B()),j=l(()=>A.value.userOptions),M=l(()=>A.value.style.chart.graduations),N=l(()=>A.value.style.chart);le({config:()=>A.value,dataset:()=>T.dataset,component:`VueUiThermometer`,rules:[ue.noHint]});let vt=y(N.value.thermometer.width),P=y(N.value.height),F=y(N.value.width),yt=l(()=>A.value.userOptions.useCursorPointer),bt=l(()=>ne({defaultConfig:{userOptions:{show:!1},style:{chart:{animation:{use:!1},backgroundColor:`#99999930`,graduations:{stroke:`#6A6A6A`}}}},userConfig:A.value.skeletonConfig??{}})),{loading:I,FINAL_DATASET:L}=se({...Ne(T),FINAL_CONFIG:A,prepareConfig:B,skeletonDataset:T.config?.skeletonDataset??{value:0,from:-100,to:100,steps:20,colors:{from:`#A1A1A1`,to:`#CACACA`}},skeletonConfig:ne({defaultConfig:A.value,userConfig:bt.value})}),xt=l(()=>A.value.debug);function St(){if(oe(T.dataset)?o({componentName:`VueUiThermometer`,type:`dataset`,debug:xt.value}):ae({datasetObject:T.dataset,requiredAttributes:[`value`,`from`,`to`]}).forEach(e=>{o({componentName:`VueUiThermometer`,type:`datasetAttribute`,property:e,debug:xt.value})}),A.value.responsive){let e=xe(()=>{let{width:e,height:t}=Se({chart:D.value,title:A.value.style.title.text?ht.value:null,source:gt.value});requestAnimationFrame(()=>{P.value=Math.max(.1,t-12),F.value=e,Rt()})});O.value&&(k.value&&O.value.unobserve(k.value),O.value.disconnect()),O.value=new ResizeObserver(e),k.value=D.value,O.value.observe(k.value)}Rt()}let{userOptionsVisible:R,setUserOptionsVisibility:Ct,keepUserOptionState:wt}=we({config:A.value}),{svgRef:z}=Te({config:A.value.style.title});function B(){return fe(T.config,ut,Oe)}Fe(()=>T.config,e=>{A.value=B(),R.value=!A.value.userOptions.showOnChartHover,vt.value=N.value.thermometer.width,P.value=N.value.height,F.value=N.value.width,St(),mt.value+=1},{deep:!0});let{isPrinting:V,isImaging:H,generatePdf:Tt,generateImage:Et}=be({elementId:`thermometer__${E.value}`,fileName:A.value.style.title.text||`vue-ui-thermometer`,options:A.value.userOptions.print}),Dt=l(()=>A.value.userOptions.show&&!A.value.style.title.text),U=l(()=>ie(A.value.customPalette)),W=l(()=>L.value.steps||10);function G(e,t,n){let r=[],i=Ot(e),a=Ot(t);for(let e=0;e<n;e+=1){let t=K(i.red,a.red,e,n),ee=K(i.green,a.green,e,n),o=K(i.blue,a.blue,e,n),s=`#${q(t)}${q(ee)}${q(o)}`;r.push(s)}return r}function Ot(e){let t=e.slice(1);return{red:parseInt(t.slice(0,2),16),green:parseInt(t.slice(2,4),16),blue:parseInt(t.slice(4,6),16)}}function K(e,t,n,r){return Math.round(e+(t-e)*n/r)}function q(e){return e.toString(16).padStart(2,`0`)}let J=l(()=>{let e=Math.max(.1,F.value),t=Math.max(.1,P.value),n=N.value.padding;return{width:e,left:e/2-N.value.thermometer.width/2,right:e/2+N.value.thermometer.width/2,top:n.top,bottom:t-n.bottom-n.top,height:t,thermoHeight:t-n.top-n.bottom,thermoWidth:N.value.thermometer.width}}),kt=l(()=>J.value),Y=l(()=>{let e=s(L.value.from)<0?Math.abs(s(L.value.from)):s(L.value.from),t=s(L.value.to)<0?Math.abs(s(L.value.to)):s(L.value.to),n=0;return n=s(L.value.to)>0?e+t:e>t?e-t:t-e,(1-(Math.abs(s(L.value.from))+s(L.value.value))/n)*J.value.thermoHeight}),At=l(()=>`${Y.value}px`),jt=l(()=>`${J.value.thermoHeight}px`),Mt=l(()=>dt.value?`0ms`:`${N.value.animation.speedMs}ms`),Nt=l(()=>{if(L.value.colors){if(!L.value.colors.from)return G(U.value[0]||r[0],a(L.value.colors.to),W.value||10);if(!L.value.colors.to)return G(a(L.value.colors.from),U.value[1]||r[1],W.value||10)}else return G(U.value[1]||r[1],U.value[0]||r[0],W.value||10);return G(a(L.value.colors.from),a(L.value.colors.to),W.value||10)}),Pt=l(()=>{let e=[],t=0,n=J.value.thermoHeight;for(let r=0;r<n-1;r+=n/W.value)e.push({x:J.value.left,y:J.value.top+r,qYLess:J.value.top+r+n/W.value/4,halfY:J.value.top+r+n/W.value/2,qYMore:J.value.top+r+n/W.value/4*3,color:Nt.value[t],height:Math.max(.1,n/W.value)}),t+=1;return e}),X=y(!1);function Ft(e){X.value=e,pt.value+=1}let Z=y(!1);function It(){Z.value=!Z.value}async function Lt({scale:e=2}={}){if(!D.value)return;let{width:t,height:n}=D.value.getBoundingClientRect(),r=t/n,{imageUri:i,base64:a}=await pe({domElement:D.value,base64:!0,img:!0,scale:e});return{imageUri:i,base64:a,title:A.value.style.title.text,width:t,height:n,aspectRatio:r}}let Q=l({get:()=>N.value.label.fontSize,set:e=>e}),{autoSizeLabels:Rt}=De({svgRef:z,fontSize:N.value.label.fontSize,minFontSize:N.value.label.minFontSize,sizeRef:Q,labelClass:`.vue-ui-thermometer-label`}),zt=l(()=>N.value.backgroundColor),Bt=l(()=>A.value.style.title),{isCallbackImaging:Vt,isCallbackSvg:Ht,generateSvg:Ut,onGenerateImage:Wt}=he({svg:z,title:Bt,legend:null,legendItems:null,backgroundColor:zt,getSvgCallback:()=>A.value.userOptions.callbacks.svg,generateImage:Et});async function Gt(){ft(`copyAlt`,{config:A.value,dataset:L.value}),A.value.userOptions.callbacks.altCopy?await Promise.resolve(A.value.userOptions.callbacks.altCopy({config:A.value,dataset:L.value})):console.warn("Vue Data UI - A callback must be set for `altCopy` in userOptions.")}let Kt=l(()=>`${E.value}-title`),qt=l(()=>`${E.value}-desc`),$=l(()=>te(N.value.label.formatter,L.value.value,n({p:N.value.label.prefix,v:L.value.value,s:N.value.label.suffix,r:N.value.label.rounding}),{datapoint:L.value})),Jt=l(()=>A.value.style.title.text||``),Yt=l(()=>{if(I.value)return`...`;let e=s(L.value.from),t=s(L.value.to);return`Thermometer value: ${$.value}. Range: ${e} to ${t}.`});return de({getImage:Lt,generatePdf:Tt,generateImage:Et,generateSvg:Ut,toggleAnnotator:It,toggleFullscreen:Ft,copyAlt:Gt}),(e,t)=>(v(),f(`div`,{ref_key:`thermoChart`,ref:D,class:g(`vue-data-ui-component vue-ui-thermometer ${X.value?`vue-data-ui-wrapper-fullscreen`:``}`),style:je(`width:100%;background:${N.value.backgroundColor};color:${N.value.color};font-family:${A.value.style.fontFamily}`),id:`thermometer__${E.value}`,onMouseenter:t[0]||=()=>C(Ct)(!0),onMouseleave:t[1]||=()=>C(Ct)(!1)},[j.value.buttons.annotator?(v(),u(C(ct),{key:0,svgRef:C(z),backgroundColor:N.value.backgroundColor,color:N.value.color,active:Z.value,isCursorPointer:yt.value,palette:j.value.annotatorPalette,onClose:It},ke({_:2},[b(C(_e),t=>({name:t,fn:Ie(n=>[x(e.$slots,t,_(h(C(ge)(t,n))),void 0,!0)])}))]),1032,[`svgRef`,`backgroundColor`,`color`,`active`,`isCursorPointer`,`palette`])):d(``,!0),Dt.value?(v(),f(`div`,ze,null,512)):d(``,!0),A.value.style.title.text?(v(),f(`div`,{key:2,ref_key:`chartTitle`,ref:ht,style:`width:100%`},[(v(),u(me,{key:`title_${mt.value}`,config:{title:{cy:`thermometer-div-title`,...A.value.style.title},subtitle:{cy:`thermometer-div-subtitle`,...A.value.style.title.subtitle}}},null,8,[`config`]))],512)):d(``,!0),j.value.show&&_t.value&&(C(wt)||C(R))?(v(),u(C(lt),{ref:`details`,key:`user_options_${pt.value}`,backgroundColor:N.value.backgroundColor,color:N.value.color,isImaging:C(H),isPrinting:C(V),uid:E.value,hasPdf:j.value.buttons.pdf,hasImg:j.value.buttons.img,hasSvg:j.value.buttons.svg,hasFullscreen:j.value.buttons.fullscreen,hasAltCopy:j.value.buttons.altCopy,hasXls:!1,isFullscreen:X.value,titles:{...j.value.buttonTitles},chartElement:D.value,position:j.value.position,hasAnnotator:j.value.buttons.annotator,isAnnotation:Z.value,callbacks:j.value.callbacks,printScale:j.value.print.scale,isCursorPointer:yt.value,onToggleFullscreen:Ft,onGeneratePdf:C(Tt),onGenerateImage:C(Wt),onGenerateSvg:C(Ut),onToggleAnnotator:It,onCopyAlt:Gt,style:je({visibility:C(wt)?C(R)?`visible`:`hidden`:`visible`})},ke({_:2},[b(C(ve)(e.$slots,`menuIcon optionPdf optionImg optionSvg optionFullscreen optionAnnotator optionAltCopy custom-menu-before custom-menu-after`),t=>({name:t,fn:Ie(n=>[x(e.$slots,t,_(h(C(ye)(t,n))),void 0,!0)])}))]),1032,[`backgroundColor`,`color`,`isImaging`,`isPrinting`,`uid`,`hasPdf`,`hasImg`,`hasSvg`,`hasFullscreen`,`hasAltCopy`,`isFullscreen`,`titles`,`chartElement`,`position`,`hasAnnotator`,`isAnnotation`,`callbacks`,`printScale`,`isCursorPointer`,`onGeneratePdf`,`onGenerateImage`,`onGenerateSvg`,`style`])):d(``,!0),(v(),f(`svg`,{ref_key:`svgRef`,ref:z,xmlns:C(re),class:g({"vue-data-ui-fullscreen--on":X.value,"vue-data-ui-fulscreen--off":!X.value}),width:`100%`,viewBox:`0 0 ${J.value.width} ${J.value.height}`,style:`background:transparent`,"aria-labelledby":Kt.value,"aria-describedby":qt.value},[p(`title`,{id:Kt.value},S(Jt.value),9,Ve),p(`desc`,{id:qt.value},S(Yt.value),9,He),Ae(C(w)),x(e.$slots,`svg-underlayer`,{svg:{...kt.value,isPrintingImg:C(V)||C(H)||C(Vt),isPrintingSvg:C(Ht)}},void 0,!0),e.$slots[`chart-background`]?(v(),f(`foreignObject`,{key:0,x:0,y:0,width:J.value.width,height:J.value.height,style:{pointerEvents:`none`}},[x(e.$slots,`chart-background`,{},void 0,!0)],8,Ue)):d(``,!0),p(`defs`,null,[p(`clipPath`,{id:`vueUiPill-${E.value}`,clipPathUnits:`userSpaceOnUse`},[p(`rect`,{x:J.value.left,y:J.value.top,width:J.value.thermoWidth,height:J.value.thermoHeight,rx:J.value.thermoWidth/2,ry:J.value.thermoWidth/2},null,8,Ge)],8,We),(v(!0),f(c,null,b(Pt.value,(e,t)=>(v(),u(Ce,{t:`linear`,id:`vueUiThermometerGradient_${t}_${E.value}`,key:`t_${t}_${E.value}`,x1:`0%`,y1:`0%`,x2:`100%`,y2:`0%`,stops:[[`0%`,e.color,1],[`50%`,C(i)(e.color,100-M.value.gradient.intensity),1],[`100%`,e.color,1]]},null,8,[`id`,`stops`]))),128))]),p(`g`,{"clip-path":`url(#vueUiPill-${E.value})`},[p(`rect`,{x:J.value.left,y:J.value.top,height:J.value.thermoHeight,width:J.value.thermoWidth,fill:`#FFFFFF`},null,8,qe),(v(!0),f(c,null,b(Pt.value,(e,t)=>(v(),f(`g`,{key:`graduation_${t}`},[p(`rect`,{x:e.x,y:e.y,height:e.height,width:J.value.thermoWidth,fill:M.value.gradient.show?`url(#vueUiThermometerGradient_${t}_${E.value})`:e.color,"shape-rendering":`crispEdges`},null,8,Je),M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:0,x1:e.x,x2:e.x+10,y1:e.y,y2:e.y,"stroke-width":M.value.strokeWidth,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Ye)):d(``,!0),M.value.showIntermediate?(v(),f(c,{key:1},[M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:0,x1:e.x,x2:e.x+5,y1:e.halfY,y2:e.halfY,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Xe)):d(``,!0),M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:1,x1:e.x,x2:e.x+2.5,y1:e.qYLess,y2:e.qYLess,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Ze)):d(``,!0),M.value.show&&[`both`,`left`].includes(M.value.sides)?(v(),f(`line`,{key:2,x1:e.x,x2:e.x+2.5,y1:e.qYMore,y2:e.qYMore,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,Qe)):d(``,!0)],64)):d(``,!0),M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:2,x1:J.value.right,x2:J.value.right-10,y1:e.y,y2:e.y,"stroke-width":M.value.strokeWidth,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,$e)):d(``,!0),M.value.showIntermediate?(v(),f(c,{key:3},[M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:0,x1:J.value.right,x2:J.value.right-5,y1:e.halfY,y2:e.halfY,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,et)):d(``,!0),M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:1,x1:J.value.right,x2:J.value.right-2.5,y1:e.qYLess,y2:e.qYLess,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,tt)):d(``,!0),M.value.show&&[`both`,`right`].includes(M.value.sides)?(v(),f(`line`,{key:2,x1:J.value.right,x2:J.value.right-2.5,y1:e.qYMore,y2:e.qYMore,"stroke-width":M.value.strokeWidth/2,stroke:M.value.stroke,"stroke-linecap":`round`},null,8,nt)):d(``,!0)],64)):d(``,!0)]))),128)),p(`rect`,{class:g({"vue-ui-thermometer-temperature":N.value.animation.use}),x:J.value.left,y:J.value.top,height:Y.value,width:J.value.thermoWidth,fill:`#FFFFFF66`},null,10,rt)],8,Ke),N.value.label.show?(v(),f(`g`,{key:1,role:`status`,"aria-live":`polite`,"aria-label":C(I)?`Loading data`:$.value},[C(I)?(v(),f(`rect`,{key:0,x:J.value.left-60,y:Y.value+J.value.top-Q.value/2,width:50,height:Q.value,fill:`#6A6A6A40`,rx:`3`},null,8,at)):(v(),f(`text`,{key:1,"aria-hidden":`true`,class:g({"vue-ui-thermometer-temperature-value":N.value.animation.use,"vue-ui-thermometer-label":!0}),y:Y.value+J.value.top+Q.value/3,x:J.value.left-10,"text-anchor":`end`,fill:N.value.label.color,"font-size":Q.value,"font-weight":N.value.label.bold?`bold`:`normal`},S($.value),11,ot))],8,it)):d(``,!0),x(e.$slots,`svg`,{svg:{...kt.value,isPrintingImg:C(V)||C(H)||C(Vt),isPrintingSvg:C(Ht)}},void 0,!0)],10,Be)),e.$slots.watermark?(v(),f(`div`,st,[x(e.$slots,`watermark`,_(h({isPrinting:C(V)||C(H)||C(Vt)||C(Ht)})),void 0,!0)])):d(``,!0),e.$slots.source?(v(),f(`div`,{key:5,ref_key:`source`,ref:gt,dir:`auto`},[x(e.$slots,`source`,{},void 0,!0)],512)):d(``,!0),x(e.$slots,`skeleton`,{},()=>[C(I)?(v(),u(ce,{key:0})):d(``,!0)],!0)],46,Re))}},[[`__scopeId`,`data-v-fec98266`]]);export{Le as n,w as t};