dsp-semactic 0.5.15 → 0.5.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +11 -11
- package/dist/index.es.js +711 -694
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),qt=require("vue-i18n"),bo=["data-chart-type"],Eo={class:"dss-chart-header"},Bo={class:"dss-chart-header-titles"},So={key:0,class:"dss-chart-title"},Vo={key:1,class:"dss-chart-subtitle"},$o={key:0,class:"dss-chart-legend"},_o=["onClick","onMouseenter"],Do={class:"dss-legend-text"},Lo=["width","height","data-smooth","data-animated"],zo={id:"chart-clip"},No=["x","y","width","height"],Ho={key:0},Ao={key:0,class:"dss-grid-lines","clip-path":"url(#chart-clip)"},Fo=["x1","x2","y1","y2"],Xo={class:"dss-axes"},Io=["x1","x2","y1","y2"],To=["x1","x2","y1","y2"],Yo={class:"dss-axis-labels"},Ro=["x","y"],Oo=["x","y"],Zo=["x","y"],Po=["y","transform"],jo={key:1,class:"dss-flag-markers"},Uo={"clip-path":"url(#chart-clip)"},Wo=["x1","x2","y1","y2","onMouseover"],qo=["x1","x2","y1","y2","onMouseover"],Ko=["x1","x2","y1","y2","onMouseover"],Qo=["cx","cy","onMouseover"],Go=["cx","cy","fill","onMouseover"],Jo=["x","y"],el={class:"dss-chart-data","clip-path":"url(#chart-clip)"},tl={key:0},al={class:"dss-bar-chart"},ol=["d","fill","onMouseover"],ll=["x","y","width","height","fill","onMouseover"],sl={class:"dss-line-chart"},nl=["d","stroke","stroke-width"],rl=["cx","cy","r","fill","onMouseover"],il={key:1},cl=["d","stroke","stroke-width"],ul=["cx","cy","r","fill","onMouseover"],dl={key:2},ml=["id"],hl=["x","y","width","height"],vl=["d","fill","fill-opacity","mask"],gl=["d","stroke","stroke-width"],pl={key:3},fl=["d","fill","onMouseover"],yl=["x","y","width","height","fill","onMouseover"],kl={key:2,class:"dss-crosshair","clip-path":"url(#chart-clip)"},Cl=["x1","x2","y1","y2","stroke"],xl=["cx","cy","r","fill"],Ml={key:1,class:"dss-bubble-chart"},wl={key:0,class:"dss-bubble-group"},bl=["cx","cy","r","fill","fill-opacity","stroke","stroke-width","onMouseenter","onMouseleave","onClick"],El=["x","y","width","height","xlink:href","clip-path","onLoad","onError","onMouseenter","onMouseleave","onClick"],Bl={key:2,class:"radial-chart"},Sl=["cx","cy","r"],Vl=["data-chart-type"],$l=["d","fill","fill-opacity","stroke","stroke-width","onMouseover"],_l={key:1,class:"dss-radial-labels"},Dl=["x1","y1","x2","y2","stroke"],Ll=["x1","y1","x2","y2","stroke"],zl=["x","y","text-anchor","font-size"],Nl={key:3,class:"dss-spider-chart"},Hl={key:0,class:"dss-spider-grid"},Al=["cx","cy","r"],Fl={class:"dss-spider-grid-labels"},Xl=["x","y"],Il=["x","y"],Tl=["x1","x2","y1","y2"],Yl={class:"dss-spider-labels"},Rl=["x","y","text-anchor","dominant-baseline"],Ol={class:"dss-spider-data"},Zl=["points","fill","fill-opacity","stroke","stroke-width","onMouseover"],Pl=["cx","cy","r","fill","onMouseover"],jl={class:"dss-chart-logos"},Ul=["cx","cy","r","fill"],Wl=["x","y","width","height","xlink:href","onLoad","onError","clip-path"],ql=["onClick","title"],Kl=["src","onError"],Ql={class:"dss-tooltip-section"},Gl={class:"dss-tooltip-title"},Jl={class:"dss-tooltip-value"},es={key:0,class:"dss-tooltip-section"},ts={class:"dss-tooltip-section-title"},as={class:"dss-tooltip-group-header"},os={class:"dss-tooltip-item-content"},ls={class:"dss-tooltip-item-text"},ss={key:1,class:"dss-tooltip-section"},ns={class:"dss-tooltip-section-title"},rs={class:"dss-tooltip-item-content"},is={class:"dss-tooltip-item-title"},cs={key:0,class:"dss-tooltip-item-description"},us={class:"dss-tooltip-section"},ds={class:"dss-tooltip-title"},ms={key:0,class:"dss-bubble-tooltip-data"},hs={class:"dss-tooltip-series-name"},vs={class:"dss-tooltip-series-value"},gs={key:0,class:"dss-tooltip-section"},ps={class:"dss-tooltip-section-title"},fs={class:"dss-tooltip-group-header"},ys={class:"dss-tooltip-item-content"},ks={class:"dss-tooltip-item-text"},Cs={key:1,class:"dss-tooltip-section"},xs={class:"dss-tooltip-section-title"},Ms={class:"dss-tooltip-item-content"},ws={class:"dss-tooltip-item-title"},bs={key:0,class:"dss-tooltip-item-description"},Es={key:2,class:"dss-context-menu-separator"},Bs={key:0,class:"dss-context-menu-separator"},Ss={key:0,class:"dss-context-menu-separator"},Vs=["onClick"],$s=["innerHTML"],_s={key:0,class:"dss-context-menu-icon"},Ds={class:"dss-marker-modal-header"},Ls={class:"dss-marker-modal-body"},zs={class:"dss-form-group"},Ns={for:"dss-marker-title"},Hs=["placeholder"],As={class:"dss-form-group"},Fs={for:"dss-marker-description"},Xs=["placeholder"],Is={key:0,class:"dss-form-group"},Ts={for:"dss-marker-type"},Ys={value:"default"},Rs=["value"],Os={class:"dss-form-group"},Zs={class:"icon-preview"},Ps=["src"],js={class:"dss-marker-modal-footer"},Us={class:"modal-footer-left"},Ws={class:"dss-modal-footer-right"},qs=["disabled"],Ks={name:"DSSChart"},Qs=Object.assign(Ks,{props:{series:{type:Array,required:!0,default:()=>[]},categories:{type:Array,default:()=>[]},flags:{type:Array,default:()=>[]},chartId:{type:String,default:()=>"chart-"+Math.random().toString(36).substring(2,9)},locale:{type:String,default:null},options:{type:Object,default:()=>({}),validator:se=>typeof se=="object"&&se!==null}},setup(se){const{t:D,locale:st}=qt.useI18n(),y=se,Kt={chart:{type:"line",width:800,height:400,orientation:"vertical"},title:{text:"",style:{}},subtitle:{text:"",style:{}},xAxis:{title:{text:""},type:"category"},yAxis:{min:"auto",max:"auto",title:{text:""}},legend:{show:!0},radialLabels:{show:!1,pointerLength:25,horizontalLength:35,fontSize:14,color:"#000",textOffset:8},grid:{show:!0,style:{}},watermark:{enabled:!0,opacity:.05,size:"25%",position:"bottom-right"},colors:["#3B82F6","#EF4444","#10B981","#F59E0B","#8B5CF6","#F97316","#06B6D4","#84CC16"],logos:[],stroke:{width:2,curve:"smooth"},bubbles:{size:4},markers:{show:!0,icon:null,iconSize:25,customIcons:{}},fill:{area:{opacity:.3},spider:{opacity:.15}},crosshair:{show:!1,color:"#666"},bubbles:{size:4,tooltip:{fields:["x","y","size"],labels:{x:"X",y:"Y",size:"Size",label:"Label",seriesName:"Series"},formatters:{}}},zoom:{enabled:!0,minScale:1,maxScale:2.5},smoothing:{enabled:!1,factor:.3,barRadius:4},animations:{enabled:!0,type:"draw",duration:2500,delay:0,staggerDelay:200,easing:"ease-out",onDataChange:!0,respectReducedMotion:!0},contextMenu:{enabled:!0,items:{addMarker:!0,downloadSvg:!0,downloadPng:!0,downloadCsv:!0},customItems:[]}};function nt(t,o){const a=Object.assign({},t);return Re(t)&&Re(o)&&Object.keys(o).forEach(l=>{Re(o[l])?l in t?a[l]=nt(t[l],o[l]):Object.assign(a,{[l]:o[l]}):Object.assign(a,{[l]:o[l]})}),a}const rt=()=>{let t=20,o=0;if(q.value&&(t+=30),G.value&&(t+=25),Ne.value&&y.series.length>0){const a=y.series.filter((c,r)=>!I.value.has(r)).length,s=Math.floor(Q.value/100);o=Math.ceil(a/s)*25+10,t+=o}return{height:t,legendHeight:o}};function Re(t){return t&&typeof t=="object"&&!Array.isArray(t)}const f=e.computed(()=>nt(Kt,y.options)),Q=e.computed(()=>{const t=f.value;return t&&t.chart&&typeof t.chart.width=="number"?t.chart.width:800}),ne=e.computed(()=>{const t=f.value;return t&&t.chart&&typeof t.chart.height=="number"?t.chart.height:400}),F=e.computed(()=>{const t=f.value;return t&&t.chart&&t.chart.type?t.chart.type:"line"}),it=e.computed(()=>{const t=y.series.map(o=>o.type||F.value);return new Set(t).size>1}),q=e.computed(()=>{const t=f.value;return t&&t.title&&t.title.text?t.title.text:""}),G=e.computed(()=>{const t=f.value;return t&&t.subtitle&&t.subtitle.text?t.subtitle.text:""}),Oe=e.computed(()=>{const t=f.value;return t&&t.xAxis&&t.xAxis.title&&t.xAxis.title.text?t.xAxis.title.text:""}),ct=e.computed(()=>{const t=f.value;return t&&t.yAxis&&t.yAxis.title&&t.yAxis.title.text?t.yAxis.title.text:""}),Qt=e.computed(()=>{const t=f.value;if(!t||!t.yAxis)return pe;const o=t.yAxis.min;return typeof o=="number"||o===pe?o:pe}),Gt=e.computed(()=>{const t=f.value;if(!t||!t.yAxis)return pe;const o=t.yAxis.max;return typeof o=="number"||o===pe?o:pe}),ut=e.computed(()=>{const t=f.value;return t&&t.grid&&t.grid.show!==!1}),Ne=e.computed(()=>{const t=f.value;return t&&t.legend&&t.legend.show!==!1}),de=e.computed(()=>{const t=f.value;if(!t||!t.crosshair)return!1;const o=t.crosshair.show;return o===!0||o==="true"}),Jt=e.computed(()=>{const t=f.value;return t&&t.crosshair&&t.crosshair.color?t.crosshair.color:"#666"}),Ce=e.computed(()=>{const t=f.value;return t&&t.zoom&&t.zoom.enabled!==!1}),ea=e.computed(()=>{const t=f.value;return t&&t.zoom&&typeof t.zoom.minScale=="number"?t.zoom.minScale:1}),ta=e.computed(()=>{const t=f.value;return t&&t.zoom&&typeof t.zoom.maxScale=="number"?t.zoom.maxScale:2.5}),me=e.computed(()=>{const t=f.value;return t&&t.stroke&&typeof t.stroke.width=="number"?t.stroke.width:2}),ee=e.computed(()=>{const t=f.value;return t&&t.bubbles&&typeof t.bubbles.size=="number"?t.bubbles.size:4}),dt=e.computed(()=>{const t=f.value;return t&&t.fill&&t.fill.area&&typeof t.fill.area.opacity=="number"?t.fill.area.opacity:.3}),re=e.computed(()=>{const t=f.value;return t&&t.smoothing&&t.smoothing.enabled===!0}),He=e.computed(()=>{const t=f.value;return t&&t.smoothing&&typeof t.smoothing.factor=="number"?t.smoothing.factor:.3}),mt=e.computed(()=>{const t=f.value;return re.value?t&&t.smoothing&&typeof t.smoothing.barRadius=="number"?t.smoothing.barRadius:4:0}),aa=e.computed(()=>{const t=f.value,o=t&&t.colors&&Array.isArray(t.colors)?t.colors:[];return o.length>0?o:["#3B82F6","#EF4444","#10B981","#F59E0B","#8B5CF6","#F97316","#06B6D4","#84CC16"]}),Ee=e.computed(()=>{const t=f.value;return t&&t.animations&&t.animations.enabled!==!1}),ht=e.computed(()=>{const t=f.value;return t&&t.animations&&t.animations.type?t.animations.type:"draw"}),vt=e.computed(()=>{const t=f.value;return t&&t.animations&&typeof t.animations.duration=="number"?t.animations.duration:2500}),gt=e.computed(()=>{const t=f.value;return t&&t.animations&&typeof t.animations.delay=="number"?t.animations.delay:0}),pt=e.computed(()=>{const t=f.value;return t&&t.animations&&t.animations.easing?t.animations.easing:"ease-out"}),he=e.computed(()=>{const t=f.value;return t&&t.animations&&typeof t.animations.staggerDelay=="number"?t.animations.staggerDelay:200}),oa=e.computed(()=>{const t=f.value;return t&&t.animations&&t.animations.onDataChange!==!1}),la=e.computed(()=>{const t=f.value;return t&&t.animations&&t.animations.respectReducedMotion!==!1}),Be=e.computed(()=>{const t=f.value;return t&&t.fill&&t.fill.spider&&typeof t.fill.spider.opacity=="number"?t.fill.spider.opacity:.15}),Ze=e.computed(()=>{const t=[];for(let a=1;a<=5;a++)t.push(A.value/5*a);return t}),sa=t=>{const o=f.value;if(o?.spider?.gridLabels&&o.spider.gridLabels[t])return o.spider.gridLabels[t];const a=Ze.value[t];return Math.round(a/A.value*100)+"%"},na=e.computed(()=>{const t=f.value;return t&&t.contextMenu&&t.contextMenu.enabled===!0}),te=e.computed(()=>{const t=f.value,o={addMarker:!0,downloadSvg:!0,downloadPng:!0,downloadCsv:!0};return t&&t.contextMenu&&t.contextMenu.items?{...o,...t.contextMenu.items}:o}),Pe=e.computed(()=>{const t=f.value;return t&&t.contextMenu&&Array.isArray(t.contextMenu.customItems)?t.contextMenu.customItems:[]}),ra=e.computed(()=>{const t=f.value;return t&&t.markers&&t.markers.icon?t.markers.icon:ma.value}),Ae=e.computed(()=>{const t=f.value;return t&&t.markers&&t.markers.customIcons?t.markers.customIcons:{}}),ft=e.computed(()=>{const t=f.value;return t&&t.markers&&typeof t.markers.iconSize=="number"?t.markers.iconSize:20}),yt=e.computed(()=>!m.value.isZooming),ia=e.computed(()=>T.value.map(t=>{if(t.categoryIndex!==void 0&&(W.value||Y.value)){const o=K(t.categoryIndex),a=i.value.bottom+(Y.value?100:85);return{...t,x:o,y:a}}return t})),je=e.computed(()=>{const t=f.value;return t&&t.watermark&&t.watermark.enabled===!0}),Ue=e.computed(()=>{const t=f.value;return t&&t.watermark&&typeof t.watermark.opacity=="number"?t.watermark.opacity:.05}),ca=e.computed(()=>{const t=f.value;return t&&t.watermark&&t.watermark.size?t.watermark.size:"25%"}),We=e.computed(()=>{const t=f.value;return t&&t.watermark&&t.watermark.position?t.watermark.position:"bottom-right"}),qe=e.computed(()=>{const t={left:i.value.left,top:i.value.top,width:i.value.width,height:i.value.height};let o,a;const l=String(ca.value);if(l.includes("%")){const s=parseFloat(l)/100;o=t.width*s,a=o*(96/499)}else{const s=parseFloat(l)||25;o=Math.min(t.width*.25,200)*(s/25),a=o*(96/499)}return{width:o,height:a,area:t}}),ua=e.computed(()=>{const{width:t,height:o}=qe.value,a=We.value;let l,s;const n=i.value.left,c=i.value.right,r=i.value.top,u=i.value.bottom,d=i.value.width,h=i.value.height;switch(a){case"center":l=n+(d-t)/2,s=r+(h-o)/2;break;case"top-left":l=n+15,s=r+90;break;case"top-right":l=c-t-15,s=r+90;break;case"bottom-left":l=n+15,s=u-o+75;break;case"bottom-right":default:l=c-t-15,s=u-o+75;break}return{backgroundPositionX:l+"px",backgroundPositionY:s+"px",backgroundSize:`${t}px ${o}px`}}),da=t=>!y.flags||!y.flags.length?[]:y.flags.filter(o=>o.categoryIndex===t),ve=t=>{const o=da(t),a=Va(t),l=o.filter(c=>c.manual),s=o.filter(c=>!c.manual),n=[];return l.length>0&&n.push({type:D("chart.tooltip.manualFlags"),color:"#047395",flags:l.map(c=>({text:c.text,color:"#047395"}))}),s.length>0&&n.push({type:D("chart.tooltip.autoFlags"),color:"#0dbf89",flags:s.map(c=>({text:c.text,color:"#0dbf89"}))}),{flagGroups:n,markers:a.map(c=>({title:c.title,description:c.description,type:D("chart.tooltip.markers"),color:c.color||"#FF6B6B"}))}},ma=e.computed(()=>`data:image/svg+xml;base64,${btoa(`<svg width="55" height="56" viewBox="0 0 55 56" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),qt=require("vue-i18n"),Bo=["data-chart-type"],So={class:"dss-chart-header"},Vo={class:"dss-chart-header-titles"},$o={key:0,class:"dss-chart-title"},_o={key:1,class:"dss-chart-subtitle"},Do={key:0,class:"dss-chart-legend"},Lo=["onClick","onMouseenter"],zo={class:"dss-legend-text"},No=["width","height","data-smooth","data-animated"],Ho={id:"chart-clip"},Ao=["x","y","width","height"],Fo={key:0},Xo={key:0,class:"dss-grid-lines","clip-path":"url(#chart-clip)"},Io=["x1","x2","y1","y2"],To={class:"dss-axes"},Yo=["x1","x2","y1","y2"],Ro=["x1","x2","y1","y2"],Oo={class:"dss-axis-labels"},Po=["x","y"],Zo=["x","y"],jo=["x","y"],Uo=["y","transform"],Wo={key:1,class:"dss-flag-markers"},qo={"clip-path":"url(#chart-clip)"},Go=["x1","x2","y1","y2","onMouseover"],Ko=["x1","x2","y1","y2","onMouseover"],Qo=["x1","x2","y1","y2","onMouseover"],Jo=["cx","cy","onMouseover"],el=["cx","cy","fill","onMouseover"],tl=["x","y"],al={class:"dss-chart-data","clip-path":"url(#chart-clip)"},ol={key:0},ll={class:"dss-bar-chart"},sl=["d","fill","onMouseover"],nl=["x","y","width","height","fill","onMouseover"],rl={class:"dss-line-chart"},il=["d","stroke","stroke-width"],cl=["cx","cy","r","fill","onMouseover"],ul={key:1},dl=["d","stroke","stroke-width"],ml=["cx","cy","r","fill","onMouseover"],hl={key:2},vl=["id"],gl=["x","y","width","height"],pl=["d","fill","fill-opacity","mask"],fl=["d","stroke","stroke-width"],yl={key:3},kl=["d","fill","onMouseover"],Cl=["x","y","width","height","fill","onMouseover"],xl={key:2,class:"dss-crosshair","clip-path":"url(#chart-clip)"},Ml=["x1","x2","y1","y2","stroke"],wl=["cx","cy","r","fill"],bl={key:1,class:"dss-bubble-chart"},El={key:0,class:"dss-bubble-group"},Bl=["cx","cy","r","fill","fill-opacity","stroke","stroke-width","onMouseenter","onMouseleave","onClick"],Sl=["x","y","width","height","xlink:href","clip-path","onLoad","onError","onMouseenter","onMouseleave","onClick"],Vl={key:2,class:"radial-chart"},$l=["cx","cy","r"],_l=["data-chart-type"],Dl=["d","fill","fill-opacity","stroke","stroke-width","onMouseover"],Ll={key:1,class:"dss-radial-labels"},zl=["x1","y1","x2","y2","stroke"],Nl=["x1","y1","x2","y2","stroke"],Hl=["x","y","text-anchor","font-size"],Al={key:3,class:"dss-spider-chart"},Fl={key:0,class:"dss-spider-grid"},Xl=["cx","cy","r"],Il={class:"dss-spider-grid-labels"},Tl=["x","y"],Yl=["x","y"],Rl=["x1","x2","y1","y2"],Ol={class:"dss-spider-labels"},Pl=["x","y","text-anchor","dominant-baseline"],Zl={class:"dss-spider-data"},jl=["points","fill","fill-opacity","stroke","stroke-width","onMouseover"],Ul=["cx","cy","r","fill","onMouseover"],Wl={class:"dss-chart-logos"},ql=["cx","cy","r","fill"],Gl=["x","y","width","height","xlink:href","onLoad","onError","clip-path"],Kl=["onClick","title"],Ql=["src","onError"],Jl={class:"dss-tooltip-section"},es={class:"dss-tooltip-title"},ts={class:"dss-tooltip-value"},as={key:0,class:"dss-tooltip-section"},os={class:"dss-tooltip-section-title"},ls={class:"dss-tooltip-group-header"},ss={class:"dss-tooltip-item-content"},ns={class:"dss-tooltip-item-text"},rs={key:1,class:"dss-tooltip-section"},is={class:"dss-tooltip-section-title"},cs={class:"dss-tooltip-item-content"},us={class:"dss-tooltip-item-title"},ds={key:0,class:"dss-tooltip-item-description"},ms={class:"dss-tooltip-section"},hs={class:"dss-tooltip-title"},vs={key:0,class:"dss-bubble-tooltip-data"},gs={class:"dss-tooltip-series-name"},ps={class:"dss-tooltip-series-value"},fs={key:0,class:"dss-tooltip-section"},ys={class:"dss-tooltip-section-title"},ks={class:"dss-tooltip-group-header"},Cs={class:"dss-tooltip-item-content"},xs={class:"dss-tooltip-item-text"},Ms={key:1,class:"dss-tooltip-section"},ws={class:"dss-tooltip-section-title"},bs={class:"dss-tooltip-item-content"},Es={class:"dss-tooltip-item-title"},Bs={key:0,class:"dss-tooltip-item-description"},Ss={key:2,class:"dss-context-menu-separator"},Vs={key:0,class:"dss-context-menu-separator"},$s={key:0,class:"dss-context-menu-separator"},_s=["onClick"],Ds=["innerHTML"],Ls={key:0,class:"dss-context-menu-icon"},zs={class:"dss-marker-modal-header"},Ns={class:"dss-marker-modal-body"},Hs={class:"dss-form-group"},As={for:"dss-marker-title"},Fs=["placeholder"],Xs={class:"dss-form-group"},Is={for:"dss-marker-description"},Ts=["placeholder"],Ys={key:0,class:"dss-form-group"},Rs={for:"dss-marker-type"},Os={value:"default"},Ps=["value"],Zs={class:"dss-form-group"},js={class:"icon-preview"},Us=["src"],Ws={class:"dss-marker-modal-footer"},qs={class:"modal-footer-left"},Gs={class:"dss-modal-footer-right"},Ks=["disabled"],Qs={name:"DSSChart"},Js=Object.assign(Qs,{props:{series:{type:Array,required:!0,default:()=>[]},categories:{type:Array,default:()=>[]},flags:{type:Array,default:()=>[]},chartId:{type:String,default:()=>"chart-"+Math.random().toString(36).substring(2,9)},locale:{type:String,default:null},options:{type:Object,default:()=>({}),validator:ne=>typeof ne=="object"&&ne!==null}},setup(ne){const{t:D,locale:st}=qt.useI18n(),y=ne,Gt={chart:{type:"line",width:800,height:400,orientation:"vertical"},title:{text:"",style:{}},subtitle:{text:"",style:{}},xAxis:{title:{text:""},type:"category"},yAxis:{min:"auto",max:"auto",title:{text:""}},legend:{show:!0},radialLabels:{show:!1,pointerLength:25,horizontalLength:35,fontSize:14,color:"#000",textOffset:8},grid:{show:!0,style:{}},watermark:{enabled:!0,opacity:.05,size:"25%",position:"bottom-right"},colors:["#3B82F6","#EF4444","#10B981","#F59E0B","#8B5CF6","#F97316","#06B6D4","#84CC16"],logos:[],stroke:{width:2,curve:"smooth"},bubbles:{size:4},markers:{show:!0,icon:null,iconSize:25,customIcons:{}},fill:{area:{opacity:.3},spider:{opacity:.15}},crosshair:{show:!1,color:"#666"},bubbles:{size:4,tooltip:{fields:["x","y","size"],labels:{x:"X",y:"Y",size:"Size",label:"Label",seriesName:"Series"},formatters:{}}},spider:{gridLabels:null,gridSteps:5},zoom:{enabled:!0,minScale:1,maxScale:2.5},smoothing:{enabled:!1,factor:.3,barRadius:4},animations:{enabled:!0,type:"draw",duration:2500,delay:0,staggerDelay:200,easing:"ease-out",onDataChange:!0,respectReducedMotion:!0},contextMenu:{enabled:!0,items:{addMarker:!0,downloadSvg:!0,downloadPng:!0,downloadCsv:!0},customItems:[]}};function nt(t,o){const a=Object.assign({},t);return Oe(t)&&Oe(o)&&Object.keys(o).forEach(l=>{Oe(o[l])?l in t?a[l]=nt(t[l],o[l]):Object.assign(a,{[l]:o[l]}):Object.assign(a,{[l]:o[l]})}),a}const rt=()=>{let t=20,o=0;if(q.value&&(t+=30),Q.value&&(t+=25),He.value&&y.series.length>0){const a=y.series.filter((c,r)=>!I.value.has(r)).length,s=Math.floor(K.value/100);o=Math.ceil(a/s)*25+10,t+=o}return{height:t,legendHeight:o}};function Oe(t){return t&&typeof t=="object"&&!Array.isArray(t)}const p=e.computed(()=>nt(Gt,y.options)),K=e.computed(()=>{const t=p.value;return t&&t.chart&&typeof t.chart.width=="number"?t.chart.width:800}),le=e.computed(()=>{const t=p.value;return t&&t.chart&&typeof t.chart.height=="number"?t.chart.height:400}),F=e.computed(()=>{const t=p.value;return t&&t.chart&&t.chart.type?t.chart.type:"line"}),it=e.computed(()=>{const t=y.series.map(o=>o.type||F.value);return new Set(t).size>1}),q=e.computed(()=>{const t=p.value;return t&&t.title&&t.title.text?t.title.text:""}),Q=e.computed(()=>{const t=p.value;return t&&t.subtitle&&t.subtitle.text?t.subtitle.text:""}),Pe=e.computed(()=>{const t=p.value;return t&&t.xAxis&&t.xAxis.title&&t.xAxis.title.text?t.xAxis.title.text:""}),ct=e.computed(()=>{const t=p.value;return t&&t.yAxis&&t.yAxis.title&&t.yAxis.title.text?t.yAxis.title.text:""}),Kt=e.computed(()=>{const t=p.value;if(!t||!t.yAxis)return pe;const o=t.yAxis.min;return typeof o=="number"||o===pe?o:pe}),Qt=e.computed(()=>{const t=p.value;if(!t||!t.yAxis)return pe;const o=t.yAxis.max;return typeof o=="number"||o===pe?o:pe}),ut=e.computed(()=>{const t=p.value;return t&&t.grid&&t.grid.show!==!1}),He=e.computed(()=>{const t=p.value;return t&&t.legend&&t.legend.show!==!1}),de=e.computed(()=>{const t=p.value;if(!t||!t.crosshair)return!1;const o=t.crosshair.show;return o===!0||o==="true"}),Jt=e.computed(()=>{const t=p.value;return t&&t.crosshair&&t.crosshair.color?t.crosshair.color:"#666"}),Ce=e.computed(()=>{const t=p.value;return t&&t.zoom&&t.zoom.enabled!==!1}),ea=e.computed(()=>{const t=p.value;return t&&t.zoom&&typeof t.zoom.minScale=="number"?t.zoom.minScale:1}),ta=e.computed(()=>{const t=p.value;return t&&t.zoom&&typeof t.zoom.maxScale=="number"?t.zoom.maxScale:2.5}),me=e.computed(()=>{const t=p.value;return t&&t.stroke&&typeof t.stroke.width=="number"?t.stroke.width:2}),ee=e.computed(()=>{const t=p.value;return t&&t.bubbles&&typeof t.bubbles.size=="number"?t.bubbles.size:4}),dt=e.computed(()=>{const t=p.value;return t&&t.fill&&t.fill.area&&typeof t.fill.area.opacity=="number"?t.fill.area.opacity:.3}),re=e.computed(()=>{const t=p.value;return t&&t.smoothing&&t.smoothing.enabled===!0}),Ae=e.computed(()=>{const t=p.value;return t&&t.smoothing&&typeof t.smoothing.factor=="number"?t.smoothing.factor:.3}),mt=e.computed(()=>{const t=p.value;return re.value?t&&t.smoothing&&typeof t.smoothing.barRadius=="number"?t.smoothing.barRadius:4:0}),aa=e.computed(()=>{const t=p.value,o=t&&t.colors&&Array.isArray(t.colors)?t.colors:[];return o.length>0?o:["#3B82F6","#EF4444","#10B981","#F59E0B","#8B5CF6","#F97316","#06B6D4","#84CC16"]}),Be=e.computed(()=>{const t=p.value;return t&&t.animations&&t.animations.enabled!==!1}),ht=e.computed(()=>{const t=p.value;return t&&t.animations&&t.animations.type?t.animations.type:"draw"}),vt=e.computed(()=>{const t=p.value;return t&&t.animations&&typeof t.animations.duration=="number"?t.animations.duration:2500}),gt=e.computed(()=>{const t=p.value;return t&&t.animations&&typeof t.animations.delay=="number"?t.animations.delay:0}),pt=e.computed(()=>{const t=p.value;return t&&t.animations&&t.animations.easing?t.animations.easing:"ease-out"}),he=e.computed(()=>{const t=p.value;return t&&t.animations&&typeof t.animations.staggerDelay=="number"?t.animations.staggerDelay:200}),oa=e.computed(()=>{const t=p.value;return t&&t.animations&&t.animations.onDataChange!==!1}),la=e.computed(()=>{const t=p.value;return t&&t.animations&&t.animations.respectReducedMotion!==!1}),Se=e.computed(()=>{const t=p.value;return t&&t.fill&&t.fill.spider&&typeof t.fill.spider.opacity=="number"?t.fill.spider.opacity:.15}),sa=e.computed(()=>p.value?.spider?.gridSteps||5),Ze=e.computed(()=>{const t=[],o=sa.value;for(let a=1;a<=o;a++)t.push(A.value/o*a);return t}),na=t=>{const o=ra.value;if(o&&Array.isArray(o)&&o[t]!==void 0)return o[t].toString();const a=Ze.value[t];return Math.round(a/A.value*100)+"%"},ra=e.computed(()=>p.value?.spider?.gridLabels||null),ia=e.computed(()=>{const t=p.value;return t&&t.contextMenu&&t.contextMenu.enabled===!0}),te=e.computed(()=>{const t=p.value,o={addMarker:!0,downloadSvg:!0,downloadPng:!0,downloadCsv:!0};return t&&t.contextMenu&&t.contextMenu.items?{...o,...t.contextMenu.items}:o}),je=e.computed(()=>{const t=p.value;return t&&t.contextMenu&&Array.isArray(t.contextMenu.customItems)?t.contextMenu.customItems:[]}),ca=e.computed(()=>{const t=p.value;return t&&t.markers&&t.markers.icon?t.markers.icon:va.value}),Fe=e.computed(()=>{const t=p.value;return t&&t.markers&&t.markers.customIcons?t.markers.customIcons:{}}),ft=e.computed(()=>{const t=p.value;return t&&t.markers&&typeof t.markers.iconSize=="number"?t.markers.iconSize:20}),yt=e.computed(()=>!m.value.isZooming),ua=e.computed(()=>T.value.map(t=>{if(t.categoryIndex!==void 0&&(W.value||Y.value)){const o=G(t.categoryIndex),a=i.value.bottom+(Y.value?100:85);return{...t,x:o,y:a}}return t})),Ue=e.computed(()=>{const t=p.value;return t&&t.watermark&&t.watermark.enabled===!0}),We=e.computed(()=>{const t=p.value;return t&&t.watermark&&typeof t.watermark.opacity=="number"?t.watermark.opacity:.05}),da=e.computed(()=>{const t=p.value;return t&&t.watermark&&t.watermark.size?t.watermark.size:"25%"}),qe=e.computed(()=>{const t=p.value;return t&&t.watermark&&t.watermark.position?t.watermark.position:"bottom-right"}),Ge=e.computed(()=>{const t={left:i.value.left,top:i.value.top,width:i.value.width,height:i.value.height};let o,a;const l=String(da.value);if(l.includes("%")){const s=parseFloat(l)/100;o=t.width*s,a=o*(96/499)}else{const s=parseFloat(l)||25;o=Math.min(t.width*.25,200)*(s/25),a=o*(96/499)}return{width:o,height:a,area:t}}),ma=e.computed(()=>{const{width:t,height:o}=Ge.value,a=qe.value;let l,s;const n=i.value.left,c=i.value.right,r=i.value.top,u=i.value.bottom,d=i.value.width,h=i.value.height;switch(a){case"center":l=n+(d-t)/2,s=r+(h-o)/2;break;case"top-left":l=n+15,s=r+90;break;case"top-right":l=c-t-15,s=r+90;break;case"bottom-left":l=n+15,s=u-o+75;break;case"bottom-right":default:l=c-t-15,s=u-o+75;break}return{backgroundPositionX:l+"px",backgroundPositionY:s+"px",backgroundSize:`${t}px ${o}px`}}),ha=t=>!y.flags||!y.flags.length?[]:y.flags.filter(o=>o.categoryIndex===t),ve=t=>{const o=ha(t),a=_a(t),l=o.filter(c=>c.manual),s=o.filter(c=>!c.manual),n=[];return l.length>0&&n.push({type:D("chart.tooltip.manualFlags"),color:"#047395",flags:l.map(c=>({text:c.text,color:"#047395"}))}),s.length>0&&n.push({type:D("chart.tooltip.autoFlags"),color:"#0dbf89",flags:s.map(c=>({text:c.text,color:"#0dbf89"}))}),{flagGroups:n,markers:a.map(c=>({title:c.title,description:c.description,type:D("chart.tooltip.markers"),color:c.color||"#FF6B6B"}))}},va=e.computed(()=>`data:image/svg+xml;base64,${btoa(`<svg width="55" height="56" viewBox="0 0 55 56" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
2
|
<path d="M55 51.841V4.14647C55 1.86149 53.1797 0.00915527 50.9343 0.00915527L4.06568 0.00915527C1.82027 0.00915527 0 1.86149 0 4.14647V51.841C0 54.126 1.82027 55.9783 4.06568 55.9783H50.9343C53.1797 55.9783 55 54.126 55 51.841Z" fill="#020203"/>
|
|
3
3
|
<path d="M27.7145 10.8883H16.9591C12.7639 10.8883 9.3623 14.3498 9.3623 18.619C9.3623 22.8882 12.7639 26.3497 16.9591 26.3497H27.8036C28.3624 26.3497 28.816 25.8881 28.816 25.3112L28.7188 11.9103C28.7188 11.3416 28.2653 10.8883 27.7064 10.8883H27.7145Z" fill="#FFC230"/>
|
|
4
4
|
<path d="M38.6799 25.649C42.5176 25.649 45.6288 22.483 45.6288 18.5776C45.6288 14.6722 42.5176 11.5063 38.6799 11.5063C34.8421 11.5063 31.731 14.6722 31.731 18.5776C31.731 22.483 34.8421 25.649 38.6799 25.649Z" fill="#fafafa"/>
|
|
@@ -18,23 +18,23 @@
|
|
|
18
18
|
<path d="M67.37 43.9C74.0582 43.9 79.48 38.4782 79.48 31.79C79.48 25.1018 74.0582 19.68 67.37 19.68C60.6818 19.68 55.26 25.1018 55.26 31.79C55.26 38.4782 60.6818 43.9 67.37 43.9Z" fill="#fafafa"/>
|
|
19
19
|
<path d="M47.5201 77.18H66.2501C73.5601 77.18 79.4801 71.26 79.4801 63.95C79.4801 56.64 73.5601 50.72 66.2501 50.72H47.3601C46.3801 50.72 45.5901 51.52 45.6001 52.5L45.7601 75.44C45.7601 76.41 46.5501 77.19 47.5201 77.19V77.18Z" fill="#07ACDD"/>
|
|
20
20
|
<path d="M28.4201 76.12C35.1082 76.12 40.5301 70.6982 40.5301 64.01C40.5301 57.3218 35.1082 51.9 28.4201 51.9C21.7319 51.9 16.3101 57.3218 16.3101 64.01C16.3101 70.6982 21.7319 76.12 28.4201 76.12Z" fill="#fafafa"/>
|
|
21
|
-
</svg>`)}`),Ct=e.computed(()=>{const t=
|
|
22
|
-
`)}})}),Ke=e.ref({show:!1,x:0,y:0,content:"",count:0}),
|
|
21
|
+
</svg>`)}`),Ct=e.computed(()=>{const t=p.value;return t&&t.radialLabels&&t.radialLabels.show===!0}),ga=e.computed(()=>{const t=p.value;return t&&t.radialLabels&&typeof t.radialLabels.fontSize=="number"?t.radialLabels.fontSize:12});e.computed(()=>{const t=p.value;return t&&t.radialLabels&&t.radialLabels.color?t.radialLabels.color:"#000"});const pa=e.computed(()=>{const t=p.value;return t&&t.radialLabels&&typeof t.radialLabels.pointerLength=="number"?t.radialLabels.pointerLength:25}),fa=e.computed(()=>{const t=p.value;return t&&t.radialLabels&&typeof t.radialLabels.horizontalLength=="number"?t.radialLabels.horizontalLength:40}),ya=e.computed(()=>{const t=p.value;return t&&t.radialLabels&&typeof t.radialLabels.textOffset=="number"?t.radialLabels.textOffset:8}),xt=e.computed(()=>{if(!y.flags||!y.flags.length)return[];const t=new Map;return y.flags.forEach(o=>{const a=o.categoryIndex;t.has(a)||t.set(a,[]),t.get(a).push(o)}),Array.from(t.entries()).map(([o,a])=>{const l=G(o),s=a.filter(c=>c.manual),n=a.filter(c=>!c.manual);return{categoryIndex:parseInt(o),x:l,flags:a,manualCount:s.length,autoCount:n.length,totalCount:a.length,hasManual:s.length>0,hasAuto:n.length>0,texts:a.map(c=>c.text).join(`
|
|
22
|
+
`)}})}),Ke=e.ref({show:!1,x:0,y:0,content:"",count:0}),ka=e.computed(()=>p.value?.bubbles?.tooltip?.fields||["x","y","size","label"]),Ca=e.computed(()=>{const t=p.value;return{...{x:"X",y:"Y",size:"Size",label:"Label",seriesName:"Series"},...t?.bubbles?.tooltip?.labels||{}}}),xa=e.computed(()=>p.value?.bubbles?.tooltip?.formatters||{}),I=e.ref(new Set),B=e.ref(null),Qe=e.ref(!1),P=e.ref({show:!1,x:0,y:0,title:"",value:""}),$=e.ref({show:!1,x:0,categoryIndex:-1,data:[]}),Z=e.ref({show:!1,x:0,y:0,mouseDataX:0,mouseDataY:0,categoryIndex:-1,chartX:0,chartY:0}),m=e.ref({scale:1,offsetX:0,minScale:1,maxScale:2.5,isDragging:!1,lastMouseX:0,lastMouseY:0,isZooming:!1,zoomTimeout:null}),T=e.ref([]),L=e.ref({show:!1,title:"",description:"",color:"#FF6B6B",type:"default",editingMarkerId:null}),Mt=e.computed(()=>{const t=["default"];return Fe.value&&t.push(...Object.keys(Fe.value)),t}),Ve=e.computed(()=>L.value.editingMarkerId!==null),Ma=t=>{I.value.has(t)||(ot.value=!0,B.value=t)},wa=()=>{ot.value=!1,B.value=null},ba=t=>{if(De.value||Re.value){$.value.show=!1;return}const a=t.currentTarget.getBoundingClientRect(),l=t.clientX-a.left,s=t.clientY-a.top,n=Y.value?l>=i.value.left-50&&l<=i.value.right+50&&s>=i.value.top-50&&s<=i.value.bottom+100:l>=i.value.left&&l<=i.value.right&&s>=i.value.top&&s<=i.value.bottom;if(Qe.value=n,Y.value){if(!de.value||!n||m.value.isDragging||m.value.isZooming){$.value.show=!1;return}if(Te.value.find(C=>!C||C.isHidden?!1:Math.sqrt(Math.pow(C.x-l,2)+Math.pow(C.y-s,2))<=C.radius+3))$.value.show=!1;else{const C=Te.value.filter(S=>!S||S.isHidden?!1:Math.sqrt(Math.pow(S.x-l,2)+Math.pow(S.y-s,2))<=250);if(C.length>0){let S=C[0],_=Math.sqrt(Math.pow(S.x-l,2)+Math.pow(S.y-s,2));C.forEach(f=>{const k=Math.sqrt(Math.pow(f.x-l,2)+Math.pow(f.y-s,2));k<_&&(_=k,S=f)});const g=30,V=Te.value.filter(f=>!f||f.isHidden?!1:Math.abs(f.x-S.x)<=g).sort((f,k)=>f.y-k.y);$.value={show:!0,x:S.x,categoryIndex:Math.round(S.originalX),data:(()=>{const f=ka.value,k=Ca.value,b=[];return V.forEach(w=>{f.forEach(z=>{const H=k[z]||z,oe=no(z,w);oe&&b.push({seriesName:w.seriesName,label:w.label,value:`${H}: ${oe}`,color:w.color,y:w.y})})}),b})()}}else $.value.show=!1}return}if(m.value.isDragging&&m.value.scale>1&&W.value&&Ce.value){$.value.show=!1;const E=t.clientX-m.value.lastMouseX,{minX:C,maxX:S}=X.value,_=S-C||1,V=E*.8;m.value.offsetX+=V;const f=_/m.value.scale,k=_-f,b=0,w=-k/_*i.value.width,z=b;m.value.offsetX=Math.max(w,Math.min(z,m.value.offsetX)),m.value.lastMouseX=t.clientX,m.value.lastMouseY=t.clientY;return}if(!de.value||!W.value||m.value.isDragging||m.value.isZooming||!n){$.value.show=!1;return}const{minX:c,maxX:r}=X.value,u=r-c||1,d=u/m.value.scale,h=c-m.value.offsetX/i.value.width*u,v=(l-i.value.left)/i.value.width,M=h+v*d,x=Math.round(M);if(x>=0&&x<=r){const E=G(x),C=ke.value.map((S,_)=>{const g=y.series.findIndex(f=>f===S),V=S.data[x];return{seriesName:S.name,value:V!==void 0?V:null,color:j(g),y:V!==void 0?ae(V):null}}).filter(S=>S.value!==null);$.value={show:!0,x:E,categoryIndex:x,data:C}}},Ea=()=>{$.value.show=!1,Qe.value=!1,Re.value=!1,De.value||(Ke.value.show=!1),m.value.isDragging&&(m.value.isDragging=!1),m.value.zoomTimeout&&(clearTimeout(m.value.zoomTimeout),m.value.zoomTimeout=null),m.value.isZooming=!1,setTimeout(()=>{B.value=null,P.value.show=!1},150)},Ba=t=>{if(!ia.value)return;t.preventDefault();const a=t.currentTarget.getBoundingClientRect(),l=t.clientX-a.left,s=t.clientY-a.top,n=l>=i.value.left&&l<=i.value.right&&s>=i.value.top+60&&s<=i.value.bottom+90,c=40,r=s>=i.value.bottom-c&&s<=i.value.bottom+c;if(!n||!r)return;let u=0,d=0,h=-1;if(W.value){const{minX:C,maxX:S,minY:_}=X.value,g=S-C||1,V=g/m.value.scale,f=C-m.value.offsetX/i.value.width*g,k=(l-i.value.left)/i.value.width;u=f+k*V,d=_,h=Math.round(u)}else if(Y.value){const{minX:C,maxX:S,minY:_}=X.value,g=S-C||1,V=(l-i.value.left)/i.value.width;u=C+V*g,d=_,h=Math.round(u)}let v=t.clientX,M=t.clientY;const x=200,E=150;v+x>window.innerWidth&&(v=window.innerWidth-x-10),M+E>window.innerHeight&&(M=window.innerHeight-E-10),Z.value={show:!0,x:v,y:M,mouseDataX:u,mouseDataY:d,categoryIndex:Math.max(0,h),chartX:l,chartY:i.value.bottom}},ie=()=>{Z.value.show=!1},Sa=t=>{if(typeof t.template=="function"){const o={series:y.series,categories:y.categories,markers:T.value},a={chartX:Z.value.chartX,chartY:Z.value.chartY,dataX:Z.value.mouseDataX,dataY:Z.value.mouseDataY,categoryIndex:Z.value.categoryIndex};return t.template(o,a)}return t.template||t.label||""},Va=t=>{const o=["dss-context-menu-item"];return t.cssClass&&o.push(t.cssClass),o},$a=t=>t.style||{},wt=t=>t.type&&Fe.value[t.type]?Fe.value[t.type]:t.customIcon?t.customIcon:ca.value,_a=t=>T.value.length?T.value.filter(o=>o.categoryIndex===t):[],Da=t=>{if(!W.value&&!Y.value)return{x:0,y:0};const o=G(t),a=i.value.bottom+85;return{x:o,y:a}},bt=()=>{T.value.forEach(t=>{if(t.categoryIndex!==void 0&&(W.value||Y.value)){const o=Da(t.categoryIndex);t.x=o.x,t.y=o.y}})},Et=()=>{if(L.value.title.trim()){if(Ve.value){const t=T.value.findIndex(o=>o.id===L.value.editingMarkerId);t!==-1&&(T.value[t].title=L.value.title.trim(),T.value[t].description=L.value.description.trim(),T.value[t].color=L.value.color,T.value[t].type=L.value.type||"default")}else{const t="dss-marker-"+Date.now()+"-"+Math.random().toString(36).substring(2,9);let o=Math.max(0,Z.value.categoryIndex);if(Y.value){const{maxX:n}=X.value;o=Math.max(0,Math.min(o,Math.floor(n)))}else W.value&&(o=Math.max(0,Math.min(o,X.value.maxX)));const a=G(o),l=i.value.bottom+85,s={id:t,title:L.value.title.trim(),description:L.value.description.trim(),color:L.value.color,type:L.value.type||"default",x:a,y:l,categoryIndex:o,chartType:F.value};T.value.push(s)}xe(),Bt()}},xe=()=>{L.value.show=!1,L.value.title="",L.value.description="",L.value.color="#FF6B6B",L.value.type="default",L.value.editingMarkerId=null},La=()=>{Ve.value&&(za(L.value.editingMarkerId),xe())},za=t=>{const o=T.value.findIndex(a=>a.id===t);o!==-1&&(T.value.splice(o,1),Bt())},Na=t=>{L.value.show=!0,L.value.title=t.title,L.value.description=t.description,L.value.color=t.color,L.value.type=t.type||"default",L.value.editingMarkerId=t.id},Ha=()=>{T.value=[],Xa(),ie()},Aa=(t,o)=>{console.warn(`Failed to load custom icon for marker ${o.id}, falling back to default`)},Bt=()=>{try{const t=`dss-chart-markers-${y.chartId}`;localStorage.setItem(t,JSON.stringify(T.value))}catch(t){console.warn("Could not save markers to localStorage:",t)}},Fa=()=>{try{const t=`dss-chart-markers-${y.chartId}`,o=localStorage.getItem(t);if(o){const a=JSON.parse(o);Array.isArray(a)&&(T.value=a.map(l=>({...l,originalYOffset:l.originalYOffset!==void 0?l.originalYOffset:15})))}}catch(t){console.warn("Could not load markers from localStorage:",t),T.value=[]}},Xa=()=>{try{const t=`dss-chart-markers-${y.chartId}`;localStorage.removeItem(t)}catch(t){console.warn("Could not clear markers from localStorage:",t)}},Xe=t=>{const o=q.value||"Chart",a=new Date().toLocaleDateString("en-GB",{day:"2-digit",month:"2-digit",year:"2-digit"}).replace(/\//g,"-");return`${o.replace(/[^a-zA-Z0-9\s]/g,"").replace(/\s+/g,"-").substring(0,50).replace(/^-|-$/g,"")||"Chart"}-${a}.${t}`},St=()=>{const t=$.value.show,o=P.value.show;return $.value.show=!1,P.value.show=!1,{originalCrosshair:t,originalTooltip:o}},fe=t=>{$.value.show=t.originalCrosshair,P.value.show=t.originalTooltip},Ia=async(t,o=32,a=32)=>new Promise((l,s)=>{if(t.startsWith("data:")){l(t);return}const n=new Image;n.crossOrigin="anonymous";const c=setTimeout(()=>{console.warn("Image conversion timeout for:",t),l(t)},5e3);n.onload=()=>{clearTimeout(c);try{const r=document.createElement("canvas"),u=r.getContext("2d");r.width=o,r.height=a,u.fillStyle="#fafafa",u.fillRect(0,0,o,a),u.drawImage(n,0,0,o,a);const d=r.toDataURL("image/png");l(d)}catch(r){console.warn("Canvas conversion failed:",r),l(t)}},n.onerror=r=>{clearTimeout(c),console.warn("Failed to load image:",t,r),l(t)},n.src=t}),Ta=async()=>{try{const t=St();setTimeout(async()=>{try{const o=document.querySelector(".dss-chart-svg");if(!o){console.error("Chart SVG element not found"),fe(t);return}const a=rt(),l=K.value,s=le.value+a.height,n=o.cloneNode(!0);n.querySelectorAll(".dss-flag-markers, .dss-flag-line, .dss-flag-extension-line, .dss-flag-count-indicator, .dss-flag-count-text").forEach(g=>g.remove());const r=n.querySelectorAll("image"),u=Array.from(r).map(async g=>{const V=g.getAttribute("xlink:href")||g.getAttribute("href");if(V&&!V.startsWith("data:"))try{const f=await Ia(V,32,32);g.setAttribute("xlink:href",f),g.setAttribute("href",f)}catch(f){console.warn("Failed to convert logo to base64:",f)}});await Promise.all(u);const h=new XMLSerializer().serializeToString(n).replace(/<svg[^>]*>/,"").replace("</svg>","");let v="",M=30;if(q.value&&(v+=`
|
|
23
23
|
<text x="24" y="${M}"
|
|
24
24
|
font-family="Arial, sans-serif"
|
|
25
25
|
font-size="18"
|
|
26
26
|
font-weight="bold"
|
|
27
27
|
fill="#333">
|
|
28
28
|
${q.value.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}
|
|
29
|
-
</text>`,M+=30),
|
|
29
|
+
</text>`,M+=30),Q.value&&(v+=`
|
|
30
30
|
<text x="24" y="${M}"
|
|
31
31
|
font-family="Arial, sans-serif"
|
|
32
32
|
font-size="14"
|
|
33
33
|
fill="#666">
|
|
34
|
-
${
|
|
35
|
-
</text>`,M+=25),
|
|
36
|
-
<g opacity="${
|
|
37
|
-
<g transform="translate(${U}, ${
|
|
34
|
+
${Q.value.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}
|
|
35
|
+
</text>`,M+=25),He.value&&y.series.length>0){let g=l-200,V=q.value||Q.value?35:25;const f=Math.floor((l-250)/120);let k=0;y.series.forEach((b,w)=>{if(!I.value.has(w)){const z=j(w),H=b.name.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">");v+=`<circle cx="${g+6}" cy="${V-4}" r="6" fill="${z}"/>`,v+=`<text x="${g+18}" y="${V}" font-family="Arial, sans-serif" font-size="12" fill="#333">${H}</text>`,k++,k%f===0?(g=l-200,V+=20):g+=Math.min(120,H.length*8+35)}})}let x="";if(Ue.value)try{const{width:g,height:V}=Ge.value,f=qe.value,k=i.value.left,b=i.value.right,w=i.value.top,z=i.value.bottom,H=i.value.width,oe=i.value.height;let U,se;switch(f){case"center":U=k+(H-g)/2,se=w+(oe-V)/2;break;case"top-left":U=k+15,se=w+5;break;case"top-right":U=b-g-5,se=w+5;break;case"bottom-left":U=k+15,se=z-V-5;break;case"bottom-right":default:U=b-g-5,se=z-V-5;break}x=`
|
|
36
|
+
<g opacity="${We.value}">
|
|
37
|
+
<g transform="translate(${U}, ${se}) scale(${g/499})">
|
|
38
38
|
<path d="M171.52 37.8399H160.38C160.26 36.4799 160.02 35.0599 159.68 33.5699C159.34 32.0799 158.77 30.7399 157.96 29.5299C157.16 28.3199 156 27.3199 154.48 26.5099C152.96 25.7099 150.94 25.2999 148.4 25.2999C144.69 25.2999 141.93 26.1299 140.14 27.8099C138.34 29.4799 137.45 31.5499 137.45 34.0299C137.45 37.7999 139.29 40.0799 142.97 40.8499C146.65 41.6299 150.67 42.3799 155.03 43.1199C159.39 43.8599 163.41 45.3899 167.09 47.7099C170.77 50.0299 172.61 54.6199 172.61 61.4899C172.61 64.6499 172.02 67.5099 170.85 70.0699C169.67 72.6399 168.02 74.7899 165.89 76.5199C163.76 78.2499 161.19 79.5799 158.19 80.5099C155.19 81.4399 151.93 81.8999 148.4 81.8999C143.95 81.8999 140.12 81.2699 136.94 79.9999C133.75 78.7299 131.19 77.0799 129.24 75.0399C127.29 72.9999 125.93 70.6899 125.16 68.1299C124.39 65.5599 124.19 62.9499 124.56 60.2899H136.25C136.37 62.0799 136.58 63.7899 136.85 65.3899C137.13 66.9999 137.68 68.4099 138.52 69.6099C139.35 70.8199 140.58 71.7799 142.19 72.4899C143.8 73.1999 145.99 73.5599 148.78 73.5599C153.3 73.5599 156.47 72.6199 158.29 70.7299C160.11 68.8399 161.03 66.6899 161.03 64.2799C161.03 60.2599 159.19 57.7799 155.51 56.8599C151.83 55.9299 147.79 55.0499 143.4 54.2099C139.01 53.3799 134.97 51.7699 131.29 49.3799C127.61 46.9999 125.77 42.3699 125.77 35.5099C125.77 32.8499 126.3 30.3899 127.35 28.1299C128.4 25.8699 129.9 23.9199 131.85 22.2799C133.8 20.6399 136.16 19.3399 138.95 18.3799C141.73 17.4199 144.8 16.9399 148.14 16.9399C152.41 16.9399 156.07 17.4699 159.14 18.5199C162.2 19.5699 164.69 21.0299 166.61 22.8799C168.53 24.7399 169.89 26.9499 170.69 29.5199C171.49 32.0899 171.77 34.8599 171.52 37.8199V37.8399Z" fill="#020203"/>
|
|
39
39
|
<path d="M179.04 58.1699C179.04 55.0799 179.55 52.0499 180.57 49.0699C181.59 46.0999 183.04 43.4899 184.93 41.2299C186.82 38.9699 189.09 37.1499 191.75 35.7499C194.41 34.3599 197.35 33.6599 200.57 33.6599C207 33.6599 212.15 35.9299 216.02 40.4799C219.89 45.0299 221.97 51.5999 222.28 60.1999H189.34C189.77 64.2199 191.09 67.1499 193.28 68.9699C195.48 70.7999 198.12 71.7099 201.21 71.7099C203 71.7099 204.5 71.4599 205.71 70.9699C206.92 70.4799 207.91 69.8899 208.68 69.2099C209.45 68.5299 210.06 67.8199 210.49 67.0799C210.92 66.3399 211.26 65.7199 211.51 65.2199H221.72C221.6 66.7699 221.1 68.5099 220.24 70.4599C219.37 72.4099 218.14 74.2299 216.53 75.9399C214.92 77.6399 212.85 79.0599 210.31 80.2099C207.77 81.3499 204.77 81.9299 201.31 81.9299C197.85 81.9299 194.91 81.2799 192.12 79.9799C189.34 78.6799 186.98 76.9499 185.07 74.7799C183.15 72.6099 181.67 70.0899 180.61 67.2199C179.56 64.3399 179.03 61.3299 179.03 58.1699H179.04ZM200.94 42.0199C198.47 42.0199 196.24 42.7299 194.26 44.1499C192.28 45.5699 190.89 47.8299 190.08 50.9199H211.33C211.02 48.0799 209.95 45.8799 208.13 44.3299C206.3 42.7899 203.91 42.0099 200.94 42.0099V42.0199Z" fill="#020203"/>
|
|
40
40
|
<path d="M268.59 80.9999H258.01V50.3799C258.01 48.2099 257.3 46.5099 255.88 45.2799C254.46 44.0399 252.6 43.4199 250.31 43.4199C248.45 43.4199 246.94 43.8399 245.76 44.6699C244.58 45.4999 243.67 46.5399 243.02 47.7799C242.37 49.0199 241.94 50.3799 241.72 51.8599C241.5 53.3399 241.4 54.7099 241.4 55.9399V80.9999H230.82V34.5999H241.03V38.3099C241.83 37.6899 243.27 36.7599 245.34 35.5199C247.41 34.2799 250.3 33.6599 254.02 33.6599C256.68 33.6599 259.12 34.1599 261.35 35.1399C263.58 36.1299 265.31 37.6799 266.55 39.7799C267.04 39.2899 267.71 38.6799 268.55 37.9699C269.38 37.2599 270.41 36.5799 271.61 35.9299C272.82 35.2799 274.22 34.7399 275.83 34.3099C277.44 33.8799 279.23 33.6599 281.21 33.6599C285.23 33.6599 288.67 34.8099 291.51 37.0899C294.36 39.3799 295.78 43.0599 295.78 48.1299V80.9799H285.2V50.3599C285.2 48.1899 284.49 46.4899 283.07 45.2599C281.65 44.0199 279.79 43.3999 277.5 43.3999C275.64 43.3999 274.13 43.8199 272.95 44.6499C271.77 45.4799 270.86 46.5199 270.21 47.7599C269.56 48.9999 269.13 50.3599 268.91 51.8399C268.69 53.3199 268.59 54.6899 268.59 55.9199V80.9799V80.9999Z" fill="#020203"/>
|
|
@@ -66,10 +66,10 @@
|
|
|
66
66
|
${h}
|
|
67
67
|
${x}
|
|
68
68
|
</g>
|
|
69
|
-
</svg>`,C=new Blob([E],{type:"image/svg+xml;charset=utf-8"}),S=URL.createObjectURL(C),_=document.createElement("a");_.href=S,_.download=
|
|
70
|
-
`),
|
|
69
|
+
</svg>`,C=new Blob([E],{type:"image/svg+xml;charset=utf-8"}),S=URL.createObjectURL(C),_=document.createElement("a");_.href=S,_.download=Xe("svg"),document.body.appendChild(_),_.click(),document.body.removeChild(_),URL.revokeObjectURL(S),fe(t),ie()}catch(o){console.error("Error downloading SVG:",o),fe(t)}},50)}catch(t){console.error("Error downloading SVG:",t)}},Ya=async()=>{try{const t=St();document.querySelector(".dss-custom-chart-container").offsetHeight,await new Promise(g=>setTimeout(g,300));const o=rt(),a=K.value,l=le.value+o.height,s=document.createElement("canvas"),n=s.getContext("2d"),c=2;s.width=a*c,s.height=l*c,s.style.width=a+"px",s.style.height=l+"px",n.scale(c,c),n.fillStyle="#fafafa",n.fillRect(0,0,a,l);let r=30;if(q.value&&(n.fillStyle="#333",n.font="bold 18px Arial, sans-serif",n.fillText(q.value,24,r),r+=30),Q.value&&(n.fillStyle="#666",n.font="14px Arial, sans-serif",n.fillText(Q.value,24,r),r+=25),He.value&&y.series.length>0){let g=a-200,V=q.value||Q.value?35:25;const f=Math.floor((a-250)/120);let k=0;n.font="12px Arial, sans-serif",y.series.forEach((b,w)=>{if(!I.value.has(w)){const z=j(w);n.beginPath(),n.arc(g+6,V-4,6,0,2*Math.PI),n.fillStyle=z,n.fill(),n.fillStyle="#333",n.fillText(b.name,g+18,V),k++,k%f===0?(g=a-200,V+=20):g+=Math.min(120,b.name.length*8+35)}})}const d=document.querySelector(".dss-chart-svg").cloneNode(!0),h=d.querySelectorAll(".dss-flag-markers, .dss-flag-line, .dss-flag-extension-line, .dss-flag-count-indicator, .dss-flag-count-text"),v=d.querySelectorAll(".dss-crosshair"),M=d.querySelectorAll('[class*="tooltip"]');h.forEach(g=>g.remove()),v.forEach(g=>g.remove()),M.forEach(g=>g.remove()),d.querySelectorAll("image").forEach((g,V)=>{const f=g.getAttribute("xlink:href")||g.getAttribute("href");if(f&&!f.startsWith("data:")){const k=Ye.value[V],b=k?j(k.seriesIndex):"#3B82F6",w=g.getAttribute("x")||0,z=g.getAttribute("y")||0,H=g.getAttribute("width")||32,oe=g.getAttribute("height")||32,U=document.createElementNS("http://www.w3.org/2000/svg","circle");U.setAttribute("cx",parseFloat(w)+parseFloat(H)/2),U.setAttribute("cy",parseFloat(z)+parseFloat(oe)/2),U.setAttribute("r",Math.min(parseFloat(H),parseFloat(oe))/2-1),U.setAttribute("fill",b),U.setAttribute("stroke","#fafafa"),U.setAttribute("stroke-width","2"),g.parentNode.replaceChild(U,g)}});const E=new XMLSerializer().serializeToString(d),C=new Blob([E],{type:"image/svg+xml;charset=utf-8"}),S=URL.createObjectURL(C),_=new Image;return new Promise((g,V)=>{_.onload=async()=>{try{if(n.drawImage(_,0,o.height),Ye.value.forEach(f=>{const k=f.x,b=f.y+o.height,w=(f.width||32)/2,z=j(f.seriesIndex);n.save(),n.beginPath(),n.arc(k,b,w-1,0,2*Math.PI),n.fillStyle=z,n.fill(),n.strokeStyle="#fafafa",n.lineWidth=2,n.stroke(),n.restore()}),Ue.value){const f=new Image,k=()=>{const{width:w,height:z}=Ge.value,H=qe.value,oe=i.value.left,U=i.value.right,se=i.value.top,Wt=i.value.bottom,bo=i.value.width,Eo=i.value.height;let be,Ee;switch(H){case"center":be=oe+(bo-w)/2,Ee=se+o.height+(Eo-z)/2;break;case"top-left":be=oe+15,Ee=se+o.height+10;break;case"top-right":be=U-w-5,Ee=se+o.height+10;break;case"bottom-left":be=oe+15,Ee=Wt+o.height-z-5;break;case"bottom-right":default:be=U-w-5,Ee=Wt+o.height-z-5;break}n.globalAlpha=We.value,n.drawImage(f,be,Ee,w,z),n.globalAlpha=1,b()},b=()=>{s.toBlob(w=>{const z=URL.createObjectURL(w),H=document.createElement("a");H.href=z,H.download=Xe("png"),document.body.appendChild(H),H.click(),document.body.removeChild(H),URL.revokeObjectURL(z),URL.revokeObjectURL(S),fe(t),ie(),g()},"image/png")};f.onload=k,f.onerror=b,f.src=kt.value}else s.toBlob(f=>{const k=URL.createObjectURL(f),b=document.createElement("a");b.href=k,b.download=Xe("png"),document.body.appendChild(b),b.click(),document.body.removeChild(b),URL.revokeObjectURL(k),URL.revokeObjectURL(S),fe(t),ie(),g()},"image/png")}catch(f){URL.revokeObjectURL(S),fe(t),V(f)}},_.onerror=()=>{URL.revokeObjectURL(S),fe(t),V(new Error("Failed to load SVG image"))},_.src=S})}catch(t){console.error("Error downloading PNG:",t)}},Ra=()=>{try{let t="";q.value&&(t+=`# ${D("chart.csv.chartTitle")}: ${q.value}
|
|
70
|
+
`),Q.value&&(t+=`# ${D("chart.csv.chartSubtitle")}: ${Q.value}
|
|
71
71
|
`),t+=`# ${D("chart.csv.generated")}: ${new Date().toLocaleString()}
|
|
72
72
|
|
|
73
73
|
`,t+="Category",y.series.forEach(n=>{const c=n.name.replace(/"/g,'""');t+=',"'+c+'"'}),t+=`
|
|
74
74
|
`;const o=Math.max(...y.series.map(n=>n.data?.length||0));for(let n=0;n<o;n++){let u='"'+(y.categories[n]||D("chart.fallback.item",{number:n+1})).toString().replace(/"/g,'""')+'"';y.series.forEach(d=>{const h=d.data&&d.data[n]!==void 0?d.data[n]:"";u+=","+h}),t+=u+`
|
|
75
|
-
`}const a=new Blob([t],{type:"text/csv;charset=utf-8;"}),l=URL.createObjectURL(a),s=document.createElement("a");s.href=l,s.download=Fe("csv"),document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(l),ie()}catch(t){console.error("Error downloading CSV:",t)}},Ya=t=>{if(typeof t.action=="function"){const o={series:y.series,categories:y.categories,markers:T.value},a={chartX:P.value.chartX,chartY:P.value.chartY,dataX:P.value.mouseDataX,dataY:P.value.mouseDataY,categoryIndex:clampedCategoryIndex||P.value.categoryIndex};t.action(o,a)}ie()},Ra=()=>{xe(),L.value.show=!0,ie()},Vt=t=>{if(P.value.show){const o=document.querySelector(".dss-chart-context-menu");o&&!o.contains(t.target)&&ie()}},$t=t=>{if(!W.value||!Ce.value)return;t.preventDefault(),t.stopPropagation(),m.value.isZooming=!0,$.value.show=!1,m.value.zoomTimeout&&clearTimeout(m.value.zoomTimeout);const a=t.currentTarget.getBoundingClientRect(),l=t.clientX-a.left,s=t.clientY-a.top;if(l<i.value.left-50||l>i.value.right+50||s<i.value.top-50||s>i.value.bottom+100){m.value.isZooming=!1;return}const n=t.deltaY>0?.9:1.1,c=Math.max(m.value.minScale,Math.min(m.value.maxScale,m.value.scale*n));if(c!==m.value.scale){const{minX:r,maxX:u}=X.value,d=u-r||1,h=d/m.value.scale,v=r-m.value.offsetX/i.value.width*d,M=(l-i.value.left)/i.value.width,x=v+M*h;m.value.scale=c;const E=d/m.value.scale,C=x-M*E;m.value.offsetX=-(C-r)/d*i.value.width,m.value.scale<=1.01&&(m.value.scale=1,m.value.offsetX=0)}m.value.zoomTimeout=setTimeout(()=>{m.value.isZooming=!1,m.value.zoomTimeout=null},300)},Oa=t=>{if(!W.value||!Ce.value||m.value.scale<=1)return;$.value.show=!1;const a=t.currentTarget.getBoundingClientRect();t.clientX-a.left,t.clientY-a.top,m.value.isDragging=!0,m.value.lastMouseX=t.clientX,m.value.lastMouseY=t.clientY,t.preventDefault()},Za=()=>{m.value.isDragging=!1},Ge=()=>{!W.value||!Ce.value||(m.value.scale=1,m.value.offsetX=0,m.value.isDragging=!1,m.value.zoomTimeout&&(clearTimeout(m.value.zoomTimeout),m.value.zoomTimeout=null),m.value.isZooming=!1)},Pa=()=>!W.value||!Qe.value||!Ce.value?"default":m.value.isDragging?"grabbing":m.value.scale>1?"grab":"dss-crosshair",Je=t=>{if(t.length<2)return"";if(t.length===2)return`M ${t[0].x} ${t[0].y} L ${t[1].x} ${t[1].y}`;let o=`M ${t[0].x} ${t[0].y}`;for(let a=0;a<t.length-1;a++){const l=t[Math.max(a-1,0)],s=t[a],n=t[a+1],c=t[Math.min(a+2,t.length-1)],r=s.x+(n.x-l.x)/6*He.value,u=s.y+(n.y-l.y)/6*He.value,d=n.x-(c.x-s.x)/6*He.value,h=n.y-(c.y-s.y)/6*He.value;o+=` C ${r} ${u} ${d} ${h} ${n.x} ${n.y}`}return o},ge=e.computed(()=>{const o=50+(Oe.value?30:0)+60;let a=0;return q.value&&(a+=15),G.value&&(a+=10),{left:66,top:50+a,right:50,bottom:o}}),i=e.computed(()=>({left:ge.value.left,top:ge.value.top,right:Q.value-ge.value.right,bottom:ne.value-ge.value.bottom,width:Q.value-(ge.value.left+ge.value.right),height:ne.value-(ge.value.top+ge.value.bottom)})),W=e.computed(()=>["line","area","bar"].includes(F.value)||it.value),Me=e.computed(()=>it.value),Ve=e.computed(()=>["radial","semi-radial"].includes(F.value)),et=e.computed(()=>F.value==="spider"),Y=e.computed(()=>F.value==="bubble"),Xe=e.computed(()=>f.value?.chart?.orientation==="horizontal"&&(F.value==="bar"||Me.value)),_t=t=>{const{minY:o,maxY:a}=X.value,l=a-o||1;return i.value.left+(t-o)/l*i.value.width},Dt=t=>{const{maxX:o}=X.value,a=o+1,s=i.value.height/a;return i.value.top+(t+.5)*s},R=e.computed(()=>Q.value/2),O=e.computed(()=>ne.value/2),A=e.computed(()=>Math.min(i.value.width,i.value.height)/2),J=e.computed(()=>A.value*.45),tt=e.computed(()=>f.value?.bubbles?.minSize||8),Lt=e.computed(()=>f.value?.bubbles?.maxSize||50),zt=e.computed(()=>f.value?.bubbles?.opacity||.7),Nt=(t,o)=>{const a=[15,20,25,18,22],l=a[t%a.length]||20,s=1+Math.sin(o*.5)*.2;return Math.max(5,l*s)},ja=t=>{const o=document.querySelector(`.dss-bubble-image-${t}`);o&&(o.style.opacity="1")},Ua=t=>{const o=document.querySelector(`.dss-bubble-image-${t}`);o&&(o.style.display="none")},ye=e.computed(()=>y.series),ke=e.computed(()=>y.series.filter((t,o)=>!I.value.has(o))),pe="auto",X=e.computed(()=>{if(Y.value)return Wa();if(!ke.value.length)return{minX:0,maxX:1,minY:0,maxY:1};let t=1/0,o=-1/0,a=0;ke.value.forEach(r=>{r.data&&r.data.length&&(a=Math.max(a,r.data.length-1),r.data.forEach(u=>{typeof u=="number"&&(t=Math.min(t,u),o=Math.max(o,u))}))}),y.categories.length>0&&(a=Math.max(a,y.categories.length-1)),t===1/0&&(t=0,o=100);const l=Qt.value,s=Gt.value;let n,c;if(l===pe){const r=o-t,u=r>0?r*.1:1;n=Math.max(0,t-u)}else if(typeof l=="number")n=l;else{const r=o-t,u=r>0?r*.1:1;n=Math.max(0,t-u)}if(s===pe){const r=o-t,u=r>0?r*.1:2;c=o+u}else if(typeof s=="number")c=s;else{const r=o-t,u=r>0?r*.1:2;c=o+u}return{minX:0,maxX:a,minY:n,maxY:c}}),Wa=()=>{if(!ke.value.length)return{minX:0,maxX:8,minY:0,maxY:50,minSize:10,maxSize:30};let t=1/0,o=-1/0,a=1/0,l=-1/0,s=1/0,n=-1/0,c=!1;if(ke.value.forEach((d,h)=>{d?.data?.length&&d.data.forEach((v,M)=>{let x,E,C;if(typeof v=="object"&&v!==null&&!Array.isArray(v))x=typeof v.x=="number"?v.x:M,E=typeof v.y=="number"?v.y:0,C=typeof v.size=="number"?v.size:20;else if(Array.isArray(v)&&v.length>=3)x=typeof v[0]=="number"?v[0]:M,E=typeof v[1]=="number"?v[1]:0,C=typeof v[2]=="number"?v[2]:20;else if(typeof v=="number")x=M,E=v,C=Nt(h,M);else return;isFinite(x)&&isFinite(E)&&isFinite(C)&&(t=Math.min(t,x),o=Math.max(o,x),a=Math.min(a,E),l=Math.max(l,E),s=Math.min(s,C),n=Math.max(n,C),c=!0)})}),!c)return{minX:0,maxX:8,minY:0,maxY:50,minSize:10,maxSize:30};t===o&&(t=Math.min(t,0),o=Math.max(o,y.categories?.length-1||8)),a===l&&(a=Math.max(0,a-10),l=a+20);const r=o-t,u=l-a;return{minX:t-r*.1,maxX:o+r*.1,minY:a-u*.1,maxY:l+u*.1,minSize:s,maxSize:n}},K=t=>{if(Y.value){const{minX:r,maxX:u}=X.value,d=u-r||1;return i.value.left+(t-r)/d*i.value.width}const{minX:o,maxX:a}=X.value,l=a-o||1,s=l/m.value.scale,n=o-m.value.offsetX/i.value.width*l,c=(t-n)/s;return i.value.left+c*i.value.width},ae=t=>{const{minY:o,maxY:a}=X.value,l=a-o||1;return i.value.bottom-(t-o)/l*i.value.height},qa=t=>{if(!Y.value)return ee.value||4;const{minSize:o,maxSize:a}=X.value,l=a-o||1;if(l===0)return(tt.value+Lt.value)/2;const s=(t-o)/l;return tt.value+s*(Lt.value-tt.value)},Ka=e.computed(()=>Ht.value.map(t=>({y:t.y}))),Qa=e.computed(()=>{if(Y.value)return Ga();if(F.value==="bar"){const E=[],{maxX:C}=X.value,S=C+1,_=5,V=(i.value.width-_*2)/S;for(let p=0;p<=C;p++){const k=i.value.left+_+(p+.5)*V;E.push({x:k,y:i.value.bottom+20,text:y.categories[p]||D("chart.fallback.item",{number:p+1})})}return E}const t=[],{minX:o,maxX:a}=X.value,l=a-o||1,s=l/m.value.scale,n=o-m.value.offsetX/i.value.width*l,c=n+s,r=Math.max(0,Math.floor(n-2)),u=Math.min(a,Math.ceil(c+2)),d=u-r,h=i.value.width,M=Math.floor(h/60);let x=1;d>M&&(x=Math.ceil(d/M));for(let E=r;E<=u;E+=x)if(E>=0&&E<=a){const C=K(E);C>=i.value.left-100&&C<=i.value.right+100&&t.push({x:C,y:i.value.bottom+20,text:y.categories[E]||`Item ${E+1}`})}return t}),Ga=()=>{const t=[],{minX:o,maxX:a}=X.value,l=a-o||1,s=Math.min(8,Math.max(4,Math.floor(i.value.width/80)));for(let n=0;n<=s;n++){const c=o+l*n/s,r=K(c);if(r>=i.value.left-10&&r<=i.value.right+10){const u=Math.round(c),d=y.categories?.[u];t.push({x:r,y:i.value.bottom+20,text:d||(Number.isInteger(c)?c.toString():c.toFixed(1))})}}return t},Ht=e.computed(()=>{if(Xe.value){const s=[],{maxX:n}=X.value;for(let c=0;c<=n;c++)s.push({x:i.value.left-10,y:Dt(c),text:y.categories[c]||`Item ${c+1}`});return s}const t=[],{minY:o,maxY:a}=X.value,l=5;for(let s=0;s<=l;s++){const n=o+(a-o)*(s/l),c=Math.round(n);t.push({x:i.value.left-10,y:ae(n),text:c.toString()})}return t}),j=t=>{const o=aa.value;if(!o||o.length===0){const a=["#3B82F6","#EF4444","#10B981","#F59E0B","#8B5CF6","#F97316","#06B6D4","#84CC16"];return a[t%a.length]}return o[t%o.length]},At=t=>{let o=0;for(let a=1;a<t.length;a++){const l=t[a].x-t[a-1].x,s=t[a].y-t[a-1].y;o+=Math.sqrt(l*l+s*s)}return o},Ft=e.computed(()=>F.value==="line"||Me.value?(Me.value?y.series.filter(o=>(o.type||F.value)==="line"):ye.value).map((o,a)=>{const l=y.series.findIndex(h=>h===o),s=o.data.map((h,v)=>({x:Xe.value?_t(h):K(v),y:Xe.value?Dt(v):ae(h)}));let n="";s.length>0&&(re.value?n=Je(s):n=`M ${s[0].x} ${s[0].y}`+s.slice(1).map(h=>` L ${h.x} ${h.y}`).join(""));const c=At(s),r=I.value.has(l),u=B.value===l,d=B.value!==null&&B.value!==l;return{path:n,color:j(l),pathLength:c,seriesIndex:l,animationDelay:a*he.value,isHighlighted:u,isDimmed:d,isHidden:r}}):[]),Ja=e.computed(()=>{if(F.value!=="line")return[];const t=[];return ye.value.forEach((o,a)=>{const l=B.value===a,s=B.value!==null&&B.value!==a,n=I.value.has(a);o.data.forEach((c,r)=>{t.push({x:K(r),y:ae(c),color:j(a),value:c,label:y.categories[r]||r.toString(),seriesName:o.name,categoryIndex:r,dataIndex:r,animationDelay:(a*o.data.length+r)*(he.value/8),isHighlighted:l,isDimmed:s,isHidden:n})})}),t}),Ie=e.computed(()=>{if(!Y.value)return[];const t=[];return ye.value.forEach((o,a)=>{if(!o?.data?.length)return;const l=B.value,s=l!==null&&l===a,n=l!==null&&l!==a,c=I.value.has(a);o.data.forEach((r,u)=>{let d,h,v,M,x;if(typeof r=="object"&&r!==null&&!Array.isArray(r))d=typeof r.x=="number"?r.x:u,h=typeof r.y=="number"?r.y:0,v=typeof r.size=="number"?r.size:20,M=r.label||y.categories?.[u]||`Point ${u+1}`,x=r.image||r.imageUrl;else if(Array.isArray(r)&&r.length>=3)d=typeof r[0]=="number"?r[0]:u,h=typeof r[1]=="number"?r[1]:0,v=typeof r[2]=="number"?r[2]:20,M=r[3]||y.categories?.[u]||`Point ${u+1}`,x=r[4];else if(typeof r=="number")d=u,h=r,v=Nt(a,u),M=y.categories?.[u]||`Point ${u+1}`;else return;!isFinite(d)||!isFinite(h)||!isFinite(v)||t.push({x:K(d),y:ae(h),radius:qa(v),originalX:d,originalY:h,originalSize:v,color:j(a),seriesName:o.name||`Series ${a+1}`,label:M,imageUrl:x,seriesIndex:a,dataIndex:u,categoryIndex:Math.round(d),isHighlighted:s,isDimmed:n,isHidden:c,opacity:zt.value})})}),t}),at=e.computed(()=>F.value!=="area"?[]:ye.value.map((t,o)=>{const a=t.data.map((h,v)=>({x:K(v),y:ae(h)}));if(a.length===0)return{linePath:"",areaPath:"",color:j(o),isHidden:I.value.has(o)};let l=`M ${a[0].x} ${a[0].y}`;re.value&&a.length>1?l=Je(a):a.slice(1).forEach(h=>{l+=` L ${h.x} ${h.y}`});const s=i.value.bottom+1;let n=`M ${a[0].x} ${s}`;if(n+=` L ${a[0].x} ${a[0].y}`,re.value&&a.length>1){const h=Je(a),v=h.substring(h.indexOf("C")||h.indexOf("Q")||h.indexOf("L"));v?n+=" "+v:a.slice(1).forEach(M=>{n+=` L ${M.x} ${M.y}`})}else a.slice(1).forEach(h=>{n+=` L ${h.x} ${h.y}`});n+=` L ${a[a.length-1].x} ${s} Z`;const c=B.value===o,r=B.value!==null&&B.value!==o,u=I.value.has(o),d=At(a);return{linePath:l,areaPath:n,color:j(o),pathLength:d,isHighlighted:c,isDimmed:r,isHidden:u}})),Xt=e.computed(()=>{if(!(["bar"].includes(F.value)||Me.value))return[];const t=[],{maxX:o}=X.value,a=Me.value?y.series.filter(s=>(s.type||F.value)==="bar"):ye.value,l=a.length;if(Xe.value){const s=o+1,c=i.value.height/s,r=c*.8,u=r/l,d=u*.05,h=u-d;a.forEach((v,M)=>{const x=y.series.findIndex(_=>_===v),E=B.value===x,C=B.value!==null&&B.value!==x,S=I.value.has(x);v.data.forEach((_,g)=>{const k=i.value.top+(g+.5)*c-r/2+M*u+d/2,b=i.value.left,w=Math.abs(_t(_)-i.value.left);let z="";if(re.value&&w>0){const H=Math.min(mt.value,h/2,w/2);z=[`M ${b} ${k}`,`L ${b+w-H} ${k}`,`Q ${b+w} ${k} ${b+w} ${k+H}`,`L ${b+w} ${k+h-H}`,`Q ${b+w} ${k+h} ${b+w-H} ${k+h}`,`L ${b} ${k+h}`,"Z"].join(" ")}t.push({x:b,y:k,width:w,height:h,color:j(x),value:_,label:y.categories[g]||g.toString(),seriesName:v.name,animationDelay:(M*a.length+g)*(he.value/4),isHighlighted:E,isDimmed:C,isHidden:S,barPath:z,isSmooth:re.value&&w>0})})})}else{const s=o+1,c=i.value.width/s,r=c*.8,u=r/l,d=u*.05,h=u-d;a.forEach((v,M)=>{const x=y.series.findIndex(_=>_===v),E=B.value===x,C=B.value!==null&&B.value!==x,S=I.value.has(x);v.data.forEach((_,g)=>{const k=i.value.left+(g+.5)*c-r/2+M*u+d/2,b=ae(Math.max(0,_)),w=Math.abs(ae(0)-ae(_));let z="";if(re.value&&w>0){const H=Math.min(mt.value,h/2,w/2);z=[`M ${k} ${b+w}`,`L ${k} ${b+H}`,`Q ${k} ${b} ${k+H} ${b}`,`L ${k+h-H} ${b}`,`Q ${k+h} ${b} ${k+h} ${b+H}`,`L ${k+h} ${b+w}`,"Z"].join(" ")}t.push({x:k,y:b,width:h,height:w,color:j(x),value:_,label:y.categories[g]||g.toString(),seriesName:v.name,animationDelay:(M*a.length+g)*(he.value/4),isHighlighted:E,isDimmed:C,isHidden:S,barPath:z,isSmooth:re.value&&w>0})})})}return t}),It=e.computed(()=>{if(!Ve.value)return[];const t=ye.value.map((n,c)=>({series:n,originalIndex:c})).filter(({originalIndex:n})=>!I.value.has(n));if(t.length===0)return[];let o=F.value==="semi-radial"?Math.PI:-Math.PI/2;const a=F.value==="semi-radial"?Math.PI:Math.PI*2,l=[];if(t.length===1){const{series:n,originalIndex:c}=t[0],r=n.data[0]||0,u=o,d=o+a-.001,h=u+a/2,v=R.value+Math.cos(u)*J.value,M=O.value+Math.sin(u)*J.value,x=R.value+Math.cos(d)*J.value,E=O.value+Math.sin(d)*J.value,C=R.value+Math.cos(d)*A.value,S=O.value+Math.sin(d)*A.value,_=R.value+Math.cos(u)*A.value,g=O.value+Math.sin(u)*A.value,V=1,p=[`M ${v} ${M}`,`A ${J.value} ${J.value} 0 ${V} 1 ${x} ${E}`,`L ${C} ${S}`,`A ${A.value} ${A.value} 0 ${V} 0 ${_} ${g}`,"Z"].join(" ");return l.push({path:p,color:j(c),value:r,seriesName:n.name,opacity:.8,isHighlighted:B.value===c,isDimmed:!1,isHidden:!1,startAngle:u,endAngle:d,midAngle:h}),l}const s=t.reduce((n,{series:c})=>n+(c.data[0]||0),0);return s===0?[]:(t.forEach(({series:n,originalIndex:c})=>{const r=n.data[0]||0,u=r/s*a,d=o,h=o+u,v=d+u/2,M=R.value+Math.cos(d)*J.value,x=O.value+Math.sin(d)*J.value,E=R.value+Math.cos(h)*J.value,C=O.value+Math.sin(h)*J.value,S=R.value+Math.cos(h)*A.value,_=O.value+Math.sin(h)*A.value,g=R.value+Math.cos(d)*A.value,V=O.value+Math.sin(d)*A.value,p=u>Math.PI?1:0,k=[`M ${M} ${x}`,`A ${J.value} ${J.value} 0 ${p} 1 ${E} ${C}`,`L ${S} ${_}`,`A ${A.value} ${A.value} 0 ${p} 0 ${g} ${V}`,"Z"].join(" ");l.push({path:k,color:j(c),value:r,seriesName:n.name,opacity:.8,isHighlighted:B.value===c,isDimmed:B.value!==null&&B.value!==c,isHidden:!1,startAngle:d,endAngle:h,midAngle:v}),o=h}),l)}),eo=e.computed(()=>!Ct.value||!Ve.value?[]:It.value.map((t,o)=>{if(t.isHidden)return null;const a=va.value,l=ga.value,s=pa.value,n=R.value+Math.cos(t.midAngle)*A.value,c=O.value+Math.sin(t.midAngle)*A.value,r=R.value+Math.cos(t.midAngle)*(A.value+a),u=O.value+Math.sin(t.midAngle)*(A.value+a),d=Math.cos(t.midAngle)>=0,v=r+l*(d?1:-1),M=u,x=d?r+15:r-15,E=M-s,C=d?"start":"end";return{pointerStartX:n,pointerStartY:c,pointerEndX:r,pointerEndY:u,horizontalEndX:v,horizontalEndY:M,textX:x,textY:E,text:`${t.seriesName}: ${t.value}`,color:t.color,textAnchor:C,isRightSide:d,isHighlighted:t.isHighlighted,isDimmed:t.isDimmed}}).filter(Boolean)),to=t=>{if(!t||t.isHidden)return 0;const o=t.opacity||zt.value||.7;return B.value===null||B.value===void 0?o:B.value!==null?t.seriesIndex===B.value?Math.min(1,o+.1):Math.max(.5,o*.8):o},ao=t=>{if(!t||t.isHidden)return 0;const o=t.radius>20?.9:.8;return B.value!==null?t.seriesIndex===B.value?Math.min(1,o+.1):o*.7:o},Tt=(t,o)=>{if(t)try{if(B.value===t.seriesIndex?B.value=null:B.value=t.seriesIndex,typeof window<"u"&&window.dispatchEvent){const a=new CustomEvent("dss-bubble-click",{detail:{bubble:t,originalEvent:o,chartId:y.chartId}});window.dispatchEvent(a)}}catch(a){console.error("Error in onBubbleClick:",a)}},oo=(t,o)=>{const a=[`dss-bubble-fallback-${o}`];return t.isHighlighted&&a.push("dss-bubble-highlighted"),t.isDimmed&&a.push("dss-bubble-dimmed"),t.isHidden&&a.push("dss-bubble-hidden"),a.push(`dss-bubble-series-${t.seriesIndex}`),a.join(" ")},Yt=(t,o)=>{t&&(o.stopPropagation(),Ye.value=!0,B.value=t.seriesIndex,$.value.show=!1)},lo=(t,o)=>{let a;switch(t){case"x":a=o.originalX;break;case"y":a=o.originalY;break;case"size":a=o.originalSize;break;case"label":a=o.label;break;case"seriesName":a=o.seriesName;break;default:a=o[t]||""}const l=ka.value[t];return typeof l=="function"?l(a,o):typeof a=="number"?a.toFixed(1):a?.toString()||""},so=()=>{if(!Y.value||!$.value.data||$.value.data.length===0)return"Bubbles";const t=[],o=new Set;return $.value.data.forEach(a=>{if(a.seriesName&&a.label){const l=`${a.seriesName} - ${a.label}`;o.has(l)||(t.push(l),o.add(l))}else a.seriesName&&(o.has(a.seriesName)||(t.push(a.seriesName),o.add(a.seriesName)))}),t.length>0?t.join(" | "):"Bubbles"},Rt=(t,o)=>{t&&(Ye.value=!1,B.value=null)},$e=e.computed(()=>y.categories.length||Math.max(...ke.value.map(t=>t.data.length))),no=e.computed(()=>{let t=0;return ke.value.forEach(o=>{o.data.forEach(a=>{typeof a=="number"&&(t=Math.max(t,a))})}),t||100}),Ot=e.computed(()=>{const t=[],o=$e.value;for(let a=0;a<o;a++){const l=a*2*Math.PI/o-Math.PI/2,s=R.value+Math.cos(l)*A.value,n=O.value+Math.sin(l)*A.value;t.push({x:s,y:n,angle:l,index:a})}return t}),ro=e.computed(()=>{const t=[],o=$e.value;return Ot.value.forEach((a,l)=>{const s=A.value+20,n=l*2*Math.PI/o-Math.PI/2,c=R.value+Math.cos(n)*s,r=O.value+Math.sin(n)*s+5;let u="middle",d="middle";Math.abs(Math.cos(n))>.5&&(u=Math.cos(n)>0?"start":"end"),Math.abs(Math.sin(n))>.5&&(d=Math.sin(n)>0?"hanging":"auto"),t.push({x:c,y:r,text:y.categories[l]||`Axis ${l+1}`,anchor:u,baseline:d})}),t}),io=e.ref(new Set),co=(t,o,a)=>{const l=`current-${a}`,s=io.value.has(l);return!s&&B.value===null?o.fillOpacity||Be.value:o.isHighlighted||s?(o.fillOpacity||Be.value)+.15:o.isDimmed?(o.fillOpacity||Be.value)*.3:o.fillOpacity||Be.value},uo=e.computed(()=>{if(!et.value)return[];const t=[],o=$e.value;return ye.value.forEach((a,l)=>{const s=[],n=[],c=B.value===l,r=B.value!==null&&B.value!==l,u=I.value.has(l);for(let d=0;d<o;d++){const h=a.data[d]||0,M=h/no.value*A.value,x=d*2*Math.PI/o-Math.PI/2,E=R.value+Math.cos(x)*M,C=O.value+Math.sin(x)*M;s.push(`${E},${C}`),n.push({x:E,y:C,value:h,label:y.categories[d]||`Axis ${d+1}`,seriesName:a.name})}t.push({points:s.join(" "),dataPoints:n,color:j(l),fillOpacity:Be.value,seriesName:a.name,value:`${a.name}: ${a.data.join(", ")}`,isHighlighted:c,isDimmed:r,isHidden:u})}),t}),Te=e.computed(()=>{const t=f.value;return t.logos.map((o,a)=>{const l=y.series[o.seriesIndex];if(!l||!l.data||l.data.length===0||I.value.has(o.seriesIndex))return null;let s,n;if(W.value){const r=l.data.map((u,d)=>({x:K(d),y:ae(u)}));if(t.animations.enabled&&!ze.value&&t.animations.type==="draw"&&t.chart.type==="line"&&(N.value.isAnimating||!N.value.hasAnimated))if(N.value.isAnimating){const u=N.value.currentFrame/N.value.totalFrames,d=Zt(t.animations.easing,Math.min(u,1)),h=xo(r,d);s=h.x+(o.offsetX||0),n=h.y+(o.offsetY||0)}else s=r[0].x+(o.offsetX||0),n=r[0].y+(o.offsetY||0);else{const u=l.data.length-1,d=l.data[u];s=K(u)+(o.offsetX||0),n=ae(d)+(o.offsetY||0)}}else if(Ve.value||et.value){const r=Math.PI*2/t.logos.length*a;s=R.value+Math.cos(r)*(A.value+30)+(o.offsetX||0),n=O.value+Math.sin(r)*(A.value+30)+(o.offsetY||0)}return{...o,x:s,y:n,seriesIndex:o.seriesIndex}}).filter(Boolean)}),mo=t=>{const o=document.querySelector(`.dss-logo-fallback-${t}`),a=document.querySelector(`.dss-logo-image-${t}`);o&&(o.style.opacity="0"),a&&(a.style.opacity="1")},ho=t=>{console.warn(`Logo ${t} failed to load, keeping fallback circle`);const o=document.querySelector(`.dss-logo-image-${t}`);o&&(o.style.display="none")},vo=t=>{I.value.has(t)?I.value.delete(t):I.value.add(t)},go=e.computed(()=>{if(!Z.value.show&&!(de.value&&$.value.show&&!m.value.isZooming))return{display:"none"};let t,o;if(de.value&&$.value.show&&!m.value.isZooming){t=$.value.x+15,o=i.value.top;const a=Y.value?200:150;t+a>Q.value&&(t=$.value.x-a-15),t<0&&(t=10),o<10&&(o=10)}else t=Z.value.x,o=Z.value.y;return{left:t+"px",top:o+"px"}}),ce=(t,o)=>{if(_e.value)return;const l=o.target.closest(".dss-custom-chart-container").getBoundingClientRect();let s=o.clientX-l.left+10,n=o.clientY-l.top-10;const c=200,r=120,u=Q.value,d=ne.value;s+c>u&&(s=o.clientX-l.left-c-10),n+r>d&&(n=o.clientY-l.top-r-10),s<0&&(s=10),n<0&&(n=10);let h;typeof t.categoryIndex=="number"?h=t.categoryIndex:typeof t.dataIndex=="number"?h=t.dataIndex:t.label&&y.categories.includes(t.label)&&(h=y.categories.indexOf(t.label)),Z.value={show:!0,x:s,y:n,title:t.seriesName||t.label||"",value:t.value?.toString()||"",categoryIndex:h}},ot=e.ref(!1),Ye=e.ref(!1),ue=()=>{Z.value.show=!1,$.value.show=!1,ot.value||(B.value=null)},_e=e.ref(!1),De=(t,o)=>{_e.value=!0,Z.value.show=!1,$.value.show=!1;const l=o.target.closest(".dss-custom-chart-container").getBoundingClientRect();let s=o.clientX-l.left+15,n=o.clientY-l.top-10;const c=250;s+c>Q.value&&(s=o.clientX-l.left-c-15),s<0&&(s=10),n<0&&(n=10),Ke.value={show:!0,x:s,y:n,content:t.texts,count:t.totalCount}},Le=()=>{_e.value=!1,Ke.value.show=!1},N=e.ref({isAnimating:!1,currentFrame:0,totalFrames:0,animationId:null,hasAnimated:!1}),Zt=(t,o)=>{switch(t){case"linear":return o;case"ease":return o<.5?2*o*o:-1+(4-2*o)*o;case"ease-in":return o*o;case"ease-out":return o*(2-o);case"ease-in-out":return o<.5?2*o*o:-1+(4-2*o)*o;default:return o}},ze=e.computed(()=>la.value?window.matchMedia("(prefers-reduced-motion: reduce)").matches:!1),Pt=()=>{if(!Ee.value||ze.value){N.value.hasAnimated=!0;return}N.value.isAnimating=!0,N.value.currentFrame=0,N.value.totalFrames=Math.ceil(vt.value/16.67);const t=()=>{const o=N.value.currentFrame/N.value.totalFrames,a=Zt(pt.value,Math.min(o,1));po(a),o<1?(N.value.currentFrame++,N.value.animationId=requestAnimationFrame(t)):fo()};N.value.animationId=requestAnimationFrame(t)},po=t=>{const o=document.querySelector(".dss-custom-chart-container");o&&o.style.setProperty("--dss-animation-progress",t)},fo=()=>{N.value.isAnimating=!1,N.value.hasAnimated=!0,N.value.animationId&&(cancelAnimationFrame(N.value.animationId),N.value.animationId=null)},yo=e.computed(()=>{if(!Ee.value||ze.value||N.value.hasAnimated)return{};const t={};return t["--dss-animation-duration"]=`${vt.value}ms`,t["--dss-animation-easing"]=ko(pt.value),t["--dss-stagger-delay"]=`${he.value}ms`,t}),ko=t=>({linear:"linear",ease:"ease","ease-in":"ease-in","ease-out":"ease-out","ease-in-out":"ease-in-out"})[t]||"ease-out",Co=()=>{if(!Ee.value||ze.value)return"";const t=["dss-chart-animated"];return N.value.hasAnimated||t.push(`dss-animate-${ht.value}`),N.value.hasAnimated||(Ve.value?t.push("dss-animate-fill"):t.push(`dss-animate-${ht.value}`)),N.value.isAnimating&&t.push("dss-is-animating"),t.join(" ")};e.watch(()=>y.series,(t,o)=>{oa.value&&o&&N.value.hasAnimated&&(N.value.hasAnimated=!1,e.nextTick(()=>{setTimeout(()=>Pt(),gt.value)}))},{deep:!0}),e.watch(()=>m.value.isZooming,(t,o)=>{o&&!t&&setTimeout(()=>{bt()},50)}),e.watch(()=>[m.value.scale,m.value.offsetX],()=>{!m.value.isZooming&&!m.value.isDragging&&bt()},{flush:"post"}),e.watch([ea,ta],([t,o])=>{m.value.minScale=t,m.value.maxScale=o,(m.value.scale<t||m.value.scale>o)&&Ge()},{immediate:!0}),e.watch(()=>y.locale,t=>{t&&t!==st.value&&(st.value=t)},{immediate:!0}),e.onMounted(()=>{B.value=null,Ha(),Ee.value&&!ze.value?setTimeout(()=>Pt(),gt.value):N.value.hasAnimated=!0,document.addEventListener("mousemove",jt),document.addEventListener("mouseup",Ut),document.addEventListener("click",Vt)}),e.onUnmounted(()=>{N.value.animationId&&cancelAnimationFrame(N.value.animationId),m.value.zoomTimeout&&clearTimeout(m.value.zoomTimeout),document.removeEventListener("mousemove",jt),document.removeEventListener("mouseup",Ut),document.removeEventListener("click",Vt)});const jt=t=>{if(m.value.isDragging&&m.value.scale>1&&W.value){$.value.show=!1;const o=t.clientX-m.value.lastMouseX,{minX:a,maxX:l}=X.value,s=l-a||1,c=o*.8;m.value.offsetX+=c;const r=s/m.value.scale,u=s-r,d=0,h=-u/s*i.value.width,v=d;m.value.offsetX=Math.max(h,Math.min(v,m.value.offsetX)),m.value.lastMouseX=t.clientX,m.value.lastMouseY=t.clientY}},Ut=()=>{m.value.isDragging&&(m.value.isDragging=!1,setTimeout(()=>{!m.value.isDragging&&m.value.isZooming},100))},xo=(t,o)=>{if(!t||t.length===0)return{x:0,y:0};if(t.length===1||o<=0)return t[0];if(o>=1)return t[t.length-1];let a=0;const l=[];for(let c=1;c<t.length;c++){const r=t[c].x-t[c-1].x,u=t[c].y-t[c-1].y,d=Math.sqrt(r*r+u*u);l.push(d),a+=d}const s=a*o;let n=0;for(let c=0;c<l.length;c++){const r=n+l[c];if(s<=r){const u=(s-n)/l[c],d=t[c],h=t[c+1];return{x:d.x+(h.x-d.x)*u,y:d.y+(h.y-d.y)*u}}n=r}return t[t.length-1]};return(t,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["dss-custom-chart-container",Co()]),style:e.normalizeStyle({width:Q.value+"px",height:ne.value+20+"px",...yo.value,cursor:Pa()}),"data-chart-type":F.value,onWheel:$t,onMousedown:Oa,onMousemove:Ma,onMouseup:Za,onMouseleave:wa,onDblclick:Ge,onContextmenu:ba,onClick:ie,onWheelCapture:$t},[e.createElementVNode("div",Eo,[e.createElementVNode("div",Bo,[q.value?(e.openBlock(),e.createElementBlock("div",So,e.toDisplayString(q.value),1)):e.createCommentVNode("",!0),G.value?(e.openBlock(),e.createElementBlock("div",Vo,e.toDisplayString(G.value),1)):e.createCommentVNode("",!0)]),Ne.value?(e.openBlock(),e.createElementBlock("div",$o,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.series,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`legend-${l}`,class:e.normalizeClass(["dss-legend-item",{"dss-legend-hidden":I.value.has(l),"dss-legend-hovered":B.value===l,"dss-legend-dimmed":B.value!==null&&B.value!==l}]),onClick:s=>vo(l),onMouseenter:s=>Ca(l),onMouseleave:xa,style:e.normalizeStyle({animationDelay:`${l*100}ms`})},[e.createElementVNode("div",{class:"dss-legend-color",style:e.normalizeStyle({backgroundColor:j(l)})},null,4),e.createElementVNode("span",Do,e.toDisplayString(a.name),1)],46,_o))),128))])):e.createCommentVNode("",!0)]),(e.openBlock(),e.createElementBlock("svg",{width:Q.value,height:ne.value,class:"dss-chart-svg","data-smooth":re.value,"data-animated":Ee.value},[e.createElementVNode("defs",null,[e.createElementVNode("clipPath",zo,[e.createElementVNode("rect",{x:i.value.left,y:i.value.top,width:i.value.width,height:i.value.height*4},null,8,No)])]),W.value||Y.value?(e.openBlock(),e.createElementBlock("g",Ho,[ut.value?(e.openBlock(),e.createElementBlock("g",Ao,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ka.value,(a,l)=>(e.openBlock(),e.createElementBlock("line",{key:`h-grid-${l}`,x1:i.value.left,x2:i.value.right,y1:a.y,y2:a.y,stroke:"#e0e0e0","stroke-width":"1","stroke-dasharray":"4,2",style:e.normalizeStyle({animationDelay:`${l*50}ms`})},null,12,Fo))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",Xo,[e.createElementVNode("line",{x1:i.value.left,x2:i.value.right,y1:i.value.bottom,y2:i.value.bottom,stroke:"#ccc","stroke-width":"1"},null,8,Io),e.createElementVNode("line",{x1:i.value.left,x2:i.value.left,y1:i.value.top,y2:i.value.bottom,stroke:"#ccc","stroke-width":"1"},null,8,To)]),e.createElementVNode("g",Yo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Qa.value,(a,l)=>(e.openBlock(),e.createElementBlock("text",{key:`x-${l}`,x:a.x,y:a.y,"text-anchor":"middle","font-size":"12",fill:"#666",style:e.normalizeStyle({animationDelay:`${l*100}ms`})},e.toDisplayString(a.text),13,Ro))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ht.value,(a,l)=>(e.openBlock(),e.createElementBlock("text",{key:`y-${l}`,x:a.x,y:a.y,"text-anchor":"end","font-size":"12",fill:"#666","dominant-baseline":"middle",style:e.normalizeStyle({animationDelay:`${l*80}ms`})},e.toDisplayString(a.text),13,Oo))),128)),Oe.value?(e.openBlock(),e.createElementBlock("text",{key:0,x:i.value.left+i.value.width/2,y:i.value.bottom+45,"text-anchor":"middle","font-size":"14","font-weight":"bold",fill:"#333"},e.toDisplayString(Oe.value),9,Zo)):e.createCommentVNode("",!0),ct.value?(e.openBlock(),e.createElementBlock("text",{key:1,x:15,y:i.value.top+12+i.value.height/2,"text-anchor":"middle","font-size":"14","font-weight":"bold",fill:"#333",transform:`rotate(-90, 15, ${i.value.top+i.value.height/2})`},e.toDisplayString(ct.value),9,Po)):e.createCommentVNode("",!0)]),xt.value.length>0?(e.openBlock(),e.createElementBlock("g",jo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(xt.value,a=>(e.openBlock(),e.createElementBlock("g",{key:`flag-group-${a.categoryIndex}`},[e.createElementVNode("g",Uo,[a.hasManual?(e.openBlock(),e.createElementBlock("line",{key:0,x1:a.x,x2:a.x,y1:i.value.bottom,y2:i.value.top,stroke:"#047395","stroke-width":"2","stroke-dasharray":"8",opacity:"0.9",class:"dss-flag-line",onMouseover:l=>De(a,l),onMouseleave:Le},null,40,Wo)):e.createCommentVNode("",!0),a.hasAuto&&!a.hasManual?(e.openBlock(),e.createElementBlock("line",{key:1,x1:a.x,x2:a.x,y1:i.value.bottom,y2:i.value.top,stroke:"#0dbf89","stroke-width":"2","stroke-dasharray":"8",opacity:"0.9",class:"dss-flag-line",onMouseover:l=>De(a,l),onMouseleave:Le},null,40,qo)):e.createCommentVNode("",!0),a.hasAuto&&a.hasManual?(e.openBlock(),e.createElementBlock("line",{key:2,x1:a.x,x2:a.x,y1:i.value.bottom,y2:i.value.top,stroke:"#047395","stroke-width":"2","stroke-dasharray":"8",opacity:"0.9",class:"dss-flag-line",onMouseover:l=>De(a,l),onMouseleave:Le},null,40,Ko)):e.createCommentVNode("",!0)]),a.hasManual&&a.hasAuto?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:a.x+8,cy:Math.max(15,i.value.top-10),r:"14",fill:"#0dbf89",stroke:"#fafafa","stroke-width":"2",class:"flag-count-circle",onMouseover:l=>De(a,l),onMouseleave:Le},null,40,Qo)):e.createCommentVNode("",!0),e.createElementVNode("circle",{cx:a.x,cy:Math.max(15,i.value.top-10),r:"14",fill:a.hasManual&&a.hasAuto||a.hasManual?"#047395":"#0dbf89",stroke:"#fafafa","stroke-width":"2",class:"dss-flag-count-indicator",onMouseover:l=>De(a,l),onMouseleave:Le},null,40,Go),e.createElementVNode("text",{x:a.x,y:Math.max(15,i.value.top-5),"text-anchor":"middle","font-size":"12","font-weight":"bold",fill:"#fafafa",class:"dss-flag-count-text","pointer-events":"none"},e.toDisplayString(a.totalCount),9,Jo)]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",el,[Me.value?(e.openBlock(),e.createElementBlock("g",tl,[e.createElementVNode("g",al,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Xt.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`mixed-bar-${l}`},[a.isSmooth?(e.openBlock(),e.createElementBlock("path",{key:0,d:a.barPath,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,ol)):(e.openBlock(),e.createElementBlock("rect",{key:1,x:a.x,y:a.y,width:a.width,height:a.height,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,ll))],64))),128))]),e.createElementVNode("g",sl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ft.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`mixed-line-${l}`,d:a.path,stroke:a.color,"stroke-width":a.isHighlighted?me.value+2:me.value,fill:"none","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({"--dss-path-length":a.pathLength,animationDelay:`${a.animationDelay}ms`})},null,14,nl))),128)),ee.value>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.mixedLinePoints,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`mixed-point-${l}`,cx:a.x,cy:a.y,r:a.isHighlighted?ee.value+2:ee.value,fill:a.color,stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass({"dss-point-highlighted":a.isHighlighted,"dss-point-dimmed":a.isDimmed,"dss-point-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,rl))),128)):e.createCommentVNode("",!0)])])):F.value==="line"?(e.openBlock(),e.createElementBlock("g",il,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ft.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`line-${l}`,d:a.path,stroke:a.color,"stroke-width":a.isHighlighted?me.value+2:me.value,fill:"none","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({"--dss-path-length":a.pathLength,animationDelay:`${a.animationDelay}ms`})},null,14,cl))),128)),ee.value>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(Ja.value,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${l}`,cx:a.x,cy:a.y,r:a.isHighlighted?ee.value+2:ee.value,fill:a.color,stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass({"dss-point-highlighted":a.isHighlighted,"dss-point-dimmed":a.isDimmed,"dss-point-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,ul))),128)):e.createCommentVNode("",!0)])):F.value==="area"?(e.openBlock(),e.createElementBlock("g",dl,[e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(at.value,(a,l)=>(e.openBlock(),e.createElementBlock("mask",{key:`mask-${l}`,id:`area-mask-${l}-${se.chartId}`},[e.createElementVNode("rect",{x:i.value.left-10,y:i.value.top-10,width:i.value.width+20,height:i.value.height+20,fill:"#fafafa",class:"dss-area-mask-rect",style:e.normalizeStyle({"--dss-mask-width":`${i.value.width+20}px`})},null,12,hl)],8,ml))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(at.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`area-fill-${l}`,d:a.areaPath,fill:a.color,"fill-opacity":a.isHighlighted?dt.value+.2:dt.value,mask:`url(#area-mask-${l}-${se.chartId})`,class:e.normalizeClass({"dss-area-fill-smooth":!0,"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden})},null,10,vl))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(at.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`area-line-${l}`,d:a.linePath,stroke:a.color,"stroke-width":a.isHighlighted?me.value+1:me.value,fill:"none","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass({"dss-area-line-animated":!0,"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({"--dss-path-length":a.pathLength,animationDelay:`${l*he.value}ms`})},null,14,gl))),128))])):F.value==="bar"?(e.openBlock(),e.createElementBlock("g",pl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Xt.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`bar-${l}`},[a.isSmooth?(e.openBlock(),e.createElementBlock("path",{key:0,d:a.barPath,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,fl)):(e.openBlock(),e.createElementBlock("rect",{key:1,x:a.x,y:a.y,width:a.width,height:a.height,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,yl))],64))),128))])):e.createCommentVNode("",!0)]),de.value&&$.value.show&&!m.value.isZooming?(e.openBlock(),e.createElementBlock("g",kl,[e.createElementVNode("line",{x1:$.value.x,x2:$.value.x,y1:i.value.top,y2:i.value.bottom,stroke:Jt.value,"stroke-width":"1","stroke-dasharray":"4,4",opacity:"0.8"},null,8,Cl),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value.data,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`dss-crosshair-point-${l}`,cx:$.value.x,cy:a.y,r:ee.value+2,fill:a.color,stroke:"#fafafa","stroke-width":"2",opacity:"0.9"},null,8,xl))),128))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),Y.value?(e.openBlock(),e.createElementBlock("g",Ml,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ie.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`bubble-${l}`},[a?(e.openBlock(),e.createElementBlock("g",wl,[e.createElementVNode("circle",{cx:a.x,cy:a.y,r:a.radius,fill:a.color,"fill-opacity":to(a),stroke:a.color,"stroke-width":a.isHighlighted?3:1,"stroke-opacity":"0.8",class:e.normalizeClass(oo(a,l)),style:{cursor:"pointer",transition:"all 0.3s ease"},onMouseenter:s=>Yt(a,s),onMouseleave:s=>Rt(a),onClick:s=>Tt(a,s)},null,42,bl),a.imageUrl?(e.openBlock(),e.createElementBlock("image",{key:0,x:a.x-a.radius*.65,y:a.y-a.radius*.65,width:a.radius*1.3,height:a.radius*1.3,"xlink:href":a.imageUrl,class:e.normalizeClass(`dss-bubble-image-${l} ${a.isHighlighted?"dss-bubble-highlighted":""} ${a.isDimmed?"dss-bubble-dimmed":""} ${a.isHidden?"dss-bubble-hidden":""}`),"clip-path":`circle(${a.radius*.65}px at ${a.radius*.65}px ${a.radius*.65}px)`,style:e.normalizeStyle({cursor:"pointer",transition:"all 0.3s ease",opacity:ao(a)}),onLoad:s=>ja(l),onError:s=>Ua(l),onMouseenter:s=>Yt(a,s),onMouseleave:s=>Rt(a),onClick:s=>Tt(a,s)},null,46,El)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],64))),128))])):e.createCommentVNode("",!0),Ve.value?(e.openBlock(),e.createElementBlock("g",Bl,[F.value==="radial"?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:R.value,cy:O.value,r:A.value,fill:"none",stroke:"#e0e0e0","stroke-width":"1"},null,8,Sl)):e.createCommentVNode("",!0),e.createElementVNode("g",{class:"dss-radial-data","data-chart-type":F.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(It.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`radial-${l}`,d:a.path,fill:a.color,"fill-opacity":a.isHighlighted?(a.opacity||.8)+.2:a.opacity||.8,stroke:a.color,"stroke-width":a.isHighlighted?2:1,class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,42,$l))),128))],8,Vl),Ct.value?(e.openBlock(),e.createElementBlock("g",_l,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(eo.value,(a,l)=>(e.openBlock(),e.createElementBlock("g",{key:`radial-label-${l}`,class:e.normalizeClass({"dss-label-highlighted":a.isHighlighted,"dss-label-dimmed":a.isDimmed})},[e.createElementVNode("line",{x1:a.pointerStartX,y1:a.pointerStartY,x2:a.pointerEndX,y2:a.pointerEndY,stroke:a.color,"stroke-width":"1.5",opacity:"0.8",style:e.normalizeStyle({animationDelay:`${l*100}ms`})},null,12,Dl),e.createElementVNode("line",{x1:a.pointerEndX,y1:a.pointerEndY,x2:a.horizontalEndX,y2:a.horizontalEndY,stroke:a.color,"stroke-width":"1.5",opacity:"0.8",style:e.normalizeStyle({animationDelay:`${l*120}ms`})},null,12,Ll),e.createElementVNode("text",{x:a.textX,y:a.textY,"text-anchor":a.textAnchor,"font-size":ha.value,"dominant-baseline":"middle",style:e.normalizeStyle({animationDelay:`${l*150}ms`})},e.toDisplayString(a.text),13,zl)],2))),128))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),et.value?(e.openBlock(),e.createElementBlock("g",Nl,[ut.value?(e.openBlock(),e.createElementBlock("g",Hl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ze.value,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`spider-grid-circle-${l}`,cx:R.value,cy:O.value,r:a,fill:"none",stroke:"#dedede","stroke-width":"1",style:e.normalizeStyle({animationDelay:`${l*150}ms`})},null,12,Al))),128)),e.createElementVNode("g",Fl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ze.value,(a,l)=>(e.openBlock(),e.createElementBlock("g",{key:`spider-grid-label-group-${l}`},[e.createElementVNode("rect",{x:R.value-16,y:O.value-a-7,width:"32",height:"16",fill:"#fafafa",stroke:"none"},null,8,Xl),e.createElementVNode("text",{x:R.value,y:O.value-a+2,"text-anchor":"middle","dominant-baseline":"central",class:"dss-spider-grid-label",style:{fontSize:"10px",fill:"#999",fontWeight:"600"}},e.toDisplayString(sa(l)),9,Il)]))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ot.value,(a,l)=>(e.openBlock(),e.createElementBlock("line",{key:`spider-axis-${l}`,x1:R.value,x2:a.x,y1:O.value,y2:a.y,stroke:"#dedede","stroke-width":"1",style:e.normalizeStyle({animationDelay:`${l*100}ms`})},null,12,Tl))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",Yl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ro.value,(a,l)=>(e.openBlock(),e.createElementBlock("text",{key:`spider-label-${l}`,x:a.x+Math.cos(l*2*Math.PI/$e.value-Math.PI/2)*16,y:a.y+Math.sin(l*2*Math.PI/$e.value-Math.PI/2)*16,"text-anchor":a.anchor,"dominant-baseline":a.baseline,"font-size":"14px",fill:"#666","font-weight":"500",style:e.normalizeStyle({animationDelay:`${l*120}ms`})},e.toDisplayString(a.text.charAt(0).toUpperCase()+a.text.slice(1)),13,Rl))),128))]),e.createElementVNode("g",Ol,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(uo.value,(a,l)=>(e.openBlock(),e.createElementBlock("g",{key:`spider-${l}`},[e.createElementVNode("polygon",{points:a.points,fill:a.color,"fill-opacity":co("current",a,l),stroke:a.color,"stroke-width":a.isHighlighted?me.value+1:me.value,"stroke-linejoin":"round",class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${l*he.value}ms`,transition:"all 0.2s ease"}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,Zl),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataPoints,(s,n)=>(e.openBlock(),e.createElementBlock("circle",{key:`spider-point-${l}-${n}`,cx:s.x,cy:s.y,r:a.isHighlighted?ee.value+1:ee.value>0?ee.value:0,fill:a.color,stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass({"dss-point-highlighted":a.isHighlighted,"dss-point-dimmed":a.isDimmed,"dss-point-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${l*he.value+n*50}ms`,transition:"all 0.2s ease"}),onMouseover:c=>ce(s,c),onMouseleave:ue},null,46,Pl))),128))]))),128))])])):e.createCommentVNode("",!0),e.createElementVNode("g",jl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Te.value,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`logo-fallback-${l}`,cx:a.x,cy:a.y,r:a.width/2,fill:j(a.seriesIndex),stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass(`logo-fallback-${l}`),style:e.normalizeStyle({animationDelay:`${l*200}ms`})},null,14,Ul))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Te.value,(a,l)=>(e.openBlock(),e.createElementBlock("image",{key:`logo-${l}`,x:a.x-a.width/2,y:a.y-a.height/2,width:a.width,height:a.height,"xlink:href":a.url,onLoad:s=>mo(l),onError:s=>ho(l),class:e.normalizeClass(`dss-logo-image-${l}`),"clip-path":`circle(${a.width/2}px at ${a.width/2}px ${a.height/2}px)`,style:e.normalizeStyle({animationDelay:`${l*200}ms`})},null,46,Wl))),128))])],8,Lo)),je.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dss-chart-watermark",style:e.normalizeStyle({position:"absolute",top:"0px",left:"0px",width:Q.value+"px",height:ne.value+"px",backgroundImage:`url('${kt.value}')`,backgroundRepeat:"no-repeat",...ua.value,opacity:Ue.value,pointerEvents:"none",zIndex:10})},null,4)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ia.value,(a,l)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:"marker-"+a.id,class:"dss-chart-marker",style:e.normalizeStyle({position:"absolute",left:a.x+"px",top:a.y+"px",width:ft.value+"px",height:ft.value+"px",transform:"translate(-50%, -50%)",cursor:"pointer",zIndex:500,backgroundColor:"#fff",borderRadius:"50%",border:"2px solid #ddd",pointerEvents:yt.value?"auto":"none"}),onClick:e.withModifiers(s=>La(a),["stop"]),onWheel:o[0]||(o[0]=e.withModifiers(()=>{},["prevent","stop"])),title:a.title+(a.description?": "+a.description:"")},[e.createElementVNode("img",{src:wt(a),class:"dss-marker-icon",alt:"Marker Icon",style:{width:"100%",height:"100%",objectFit:"contain",borderRadius:"50%",pointerEvents:"none"},onError:s=>Na(s,a),draggable:"false"},null,40,Kl)],44,ql)),[[e.vShow,yt.value]])),128)),Z.value.show||de.value&&$.value.show&&!m.value.isZooming?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["dss-chart-tooltip",{"dss-crosshair-tooltip":de.value&&$.value.show&&!m.value.isZooming}]),style:e.normalizeStyle(go.value)},[!de.value||!$.value.show||m.value.isZooming?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",Ql,[e.createElementVNode("div",Gl,e.toDisplayString(Z.value.title),1),e.createElementVNode("div",Jl,e.toDisplayString(Z.value.value),1)]),Z.value.categoryIndex!==void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[ve(Z.value.categoryIndex).flagGroups.length>0?(e.openBlock(),e.createElementBlock("div",es,[o[7]||(o[7]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",ts,e.toDisplayString(e.unref(D)("chart.tooltip.flags")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve(Z.value.categoryIndex).flagGroups,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`tooltip-flag-group-${l}`},[e.createElementVNode("div",as,[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("span",null,e.toDisplayString(a.type),1)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.flags,(s,n)=>(e.openBlock(),e.createElementBlock("div",{key:`tooltip-flag-${l}-${n}`,class:"dss-tooltip-item dss-tooltip-item-no-indicator"},[e.createElementVNode("div",os,[e.createElementVNode("div",ls,e.toDisplayString(s.text),1)])]))),128))]))),128))])):e.createCommentVNode("",!0),ve(Z.value.categoryIndex).markers.length>0?(e.openBlock(),e.createElementBlock("div",ss,[o[8]||(o[8]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",ns,e.toDisplayString(e.unref(D)("chart.tooltip.markers")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve(Z.value.categoryIndex).markers,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`tooltip-marker-${l}`,class:"dss-tooltip-item"},[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("div",rs,[e.createElementVNode("div",is,e.toDisplayString(a.title),1),a.description?(e.openBlock(),e.createElementBlock("div",cs,e.toDisplayString(a.description),1)):e.createCommentVNode("",!0)])]))),128))])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",us,[e.createElementVNode("div",ds,e.toDisplayString(Y.value?so():se.categories[$.value.categoryIndex]||`Category ${$.value.categoryIndex+1}`),1),Y.value?(e.openBlock(),e.createElementBlock("div",ms,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value.data,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-tooltip-${l}`,class:"dss-bubble-tooltip-item"},e.toDisplayString(a.value),1))),128))])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList($.value.data,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-tooltip-${l}`,class:"dss-tooltip-series"},[e.createElementVNode("div",{class:"dss-tooltip-series-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("span",hs,e.toDisplayString(a.seriesName)+":",1),e.createElementVNode("span",vs,e.toDisplayString(a.value),1)]))),128))]),ve($.value.categoryIndex).flagGroups.length>0?(e.openBlock(),e.createElementBlock("div",gs,[o[9]||(o[9]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",ps,e.toDisplayString(e.unref(D)("chart.tooltip.flags")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve($.value.categoryIndex).flagGroups,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-flag-group-${l}`},[e.createElementVNode("div",fs,[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("span",null,e.toDisplayString(a.type),1)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.flags,(s,n)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-flag-${l}-${n}`,class:"dss-tooltip-item dss-tooltip-item-no-indicator"},[e.createElementVNode("div",ys,[e.createElementVNode("div",ks,e.toDisplayString(s.text),1)])]))),128))]))),128))])):e.createCommentVNode("",!0),ve($.value.categoryIndex).markers.length>0?(e.openBlock(),e.createElementBlock("div",Cs,[o[10]||(o[10]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",xs,e.toDisplayString(e.unref(D)("chart.tooltip.markers")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve($.value.categoryIndex).markers,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-dss-marker-${l}`,class:"dss-tooltip-item"},[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("div",Ms,[e.createElementVNode("div",ws,e.toDisplayString(a.title),1),a.description?(e.openBlock(),e.createElementBlock("div",bs,e.toDisplayString(a.description),1)):e.createCommentVNode("",!0)])]))),128))])):e.createCommentVNode("",!0)],64))],6)):e.createCommentVNode("",!0),W.value&&Ce.value&&m.value.scale>1?(e.openBlock(),e.createElementBlock("div",{key:2,class:"dss-zoom-indicator",onClick:Ge},[o[11]||(o[11]=e.createElementVNode("span",{style:{display:"inline-block",transform:"scaleX(-1)","font-size":"14px"}},"⌕",-1)),e.createTextVNode(" "+e.toDisplayString(Math.round(m.value.scale*100))+"% "+e.toDisplayString(e.unref(D)("chart.zoom.doubleClickToReset")),1)])):e.createCommentVNode("",!0)],46,bo),P.value.show?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dss-chart-context-menu",style:e.normalizeStyle({left:P.value.x+"px",top:P.value.y+"px"}),onClick:o[1]||(o[1]=e.withModifiers(()=>{},["stop"]))},[te.value.addMarker?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dss-context-menu-item",onClick:Ra},e.toDisplayString(e.unref(D)("chart.contextMenu.addMarker")),1)):e.createCommentVNode("",!0),T.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:"dss-context-menu-item",onClick:za},e.toDisplayString(e.unref(D)("chart.contextMenu.clearAllMarkers")),1)):e.createCommentVNode("",!0),te.value.addMarker&&(te.value.downloadSvg||te.value.downloadPng||te.value.downloadCsv||Pe.value.length>0)?(e.openBlock(),e.createElementBlock("div",Es)):e.createCommentVNode("",!0),te.value.downloadSvg?(e.openBlock(),e.createElementBlock("div",{key:3,class:"dss-context-menu-item",onClick:Xa},e.toDisplayString(e.unref(D)("chart.contextMenu.downloadSvg")),1)):e.createCommentVNode("",!0),te.value.downloadPng?(e.openBlock(),e.createElementBlock("div",{key:4,class:"dss-context-menu-item",onClick:Ia},e.toDisplayString(e.unref(D)("chart.contextMenu.downloadPng")),1)):e.createCommentVNode("",!0),te.value.downloadCsv?(e.openBlock(),e.createElementBlock("div",{key:5,class:"dss-context-menu-item",onClick:Ta},e.toDisplayString(e.unref(D)("chart.contextMenu.downloadCsv")),1)):e.createCommentVNode("",!0),Pe.value.length>0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:6},[te.value.downloadSvg||te.value.downloadPng||te.value.downloadCsv?(e.openBlock(),e.createElementBlock("div",Bs)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Pe.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:"custom-"+l},[a.separator?(e.openBlock(),e.createElementBlock("div",Ss)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(Ba(a)),style:e.normalizeStyle(Sa(a)),onClick:s=>Ya(a)},[a.template?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:Ea(a),class:"dss-custom-menu-content"},null,8,$s)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[a.icon?(e.openBlock(),e.createElementBlock("span",_s,e.toDisplayString(a.icon),1)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(a.label),1)],64))],14,Vs)],64))),128))],64)):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0),L.value.show?(e.openBlock(),e.createElementBlock("div",{key:1,class:"dss-marker-modal-overlay",onClick:xe},[e.createElementVNode("div",{class:"dss-marker-modal",onClick:o[6]||(o[6]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Ds,[e.createElementVNode("h3",null,e.toDisplayString(Se.value?e.unref(D)("chart.modalMarker.editMarker"):e.unref(D)("chart.contextMenu.addMarker")),1),e.createElementVNode("button",{class:"dss-modal-close-btn",onClick:xe},"×")]),e.createElementVNode("div",Ls,[e.createElementVNode("div",zs,[e.createElementVNode("label",Ns,[e.createTextVNode(e.toDisplayString(e.unref(D)("chart.modalMarker.title"))+" ",1),o[12]||(o[12]=e.createElementVNode("span",{style:{color:"hsl(345, 94%, 44%)"}},"*",-1))]),e.withDirectives(e.createElementVNode("input",{id:"dss-marker-title","onUpdate:modelValue":o[2]||(o[2]=a=>L.value.title=a),type:"text",placeholder:e.unref(D)("chart.modalMarker.placeholderTitle"),class:"dss-form-input",onKeyup:e.withKeys(Et,["enter"])},null,40,Hs),[[e.vModelText,L.value.title]])]),e.createElementVNode("div",As,[e.createElementVNode("label",Fs,e.toDisplayString(e.unref(D)("chart.modalMarker.description")),1),e.withDirectives(e.createElementVNode("textarea",{id:"dss-marker-description","onUpdate:modelValue":o[3]||(o[3]=a=>L.value.description=a),placeholder:e.unref(D)("chart.modalMarker.placeholderDescription"),class:"dss-form-textarea",rows:"3"},null,8,Xs),[[e.vModelText,L.value.description]])]),Mt.value.length>1?(e.openBlock(),e.createElementBlock("div",Is,[e.createElementVNode("label",Ts,e.toDisplayString(e.unref(D)("chart.modalMarker.iconType")),1),e.withDirectives(e.createElementVNode("select",{id:"dss-marker-type","onUpdate:modelValue":o[4]||(o[4]=a=>L.value.type=a),class:"form-select"},[e.createElementVNode("option",Ys,e.toDisplayString(e.unref(D)("chart.modalMarker.defaultIcon")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Mt.value.filter(a=>a!=="default"),a=>(e.openBlock(),e.createElementBlock("option",{key:a,value:a},e.toDisplayString(a.charAt(0).toUpperCase()+a.slice(1)),9,Rs))),128))],512),[[e.vModelSelect,L.value.type]])])):e.createCommentVNode("",!0),e.createElementVNode("div",Os,[e.createElementVNode("label",null,e.toDisplayString(e.unref(D)("chart.modalMarker.iconPreview")),1),e.createElementVNode("div",Zs,[e.createElementVNode("img",{src:wt({type:L.value.type}),alt:"Marker Icon Preview",class:"preview-icon",style:{width:"32px",height:"32px","border-radius":"50%",border:"2px solid #ddd"},onError:o[5]||(o[5]=a=>a.target.style.display="none")},null,40,Ps)])])]),e.createElementVNode("div",js,[e.createElementVNode("div",Us,[Se.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"dss-btn dss-btn-danger",onClick:_a},e.toDisplayString(e.unref(D)("chart.modalMarker.deleteMarker")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ws,[e.createElementVNode("button",{class:"dss-btn dss-btn-secondary",onClick:xe},e.toDisplayString(e.unref(D)("chart.modalMarker.cancel")),1),e.createElementVNode("button",{class:"dss-btn dss-btn-primary",onClick:Et,disabled:!L.value.title.trim()},e.toDisplayString(Se.value?e.unref(D)("chart.modalMarker.save"):e.unref(D)("chart.contextMenu.addMarker")),9,qs)])])])])):e.createCommentVNode("",!0)],64))}}),Gs={contextMenu:{addMarker:"Add Marker",clearAllMarkers:"Clear All Markers",downloadSvg:"Download SVG",downloadPng:"Download PNG",downloadCsv:"Download CSV"},modalMarker:{editMarker:"Edit Marker",title:"Title",description:"Description",iconType:"Icon Type",defaultIcon:"Default Logo",iconPreview:"Icon Preview",deleteMarker:"Delete Marker",cancel:"Cancel",save:"Save",placeholderTitle:"Enter marker title",placeholderDescription:"Enter marker description (optional)"},zoom:{doubleClickToReset:"(Double-click to reset)"},csv:{chartTitle:"Chart Title",chartSubtitle:"Chart Subtitle",generated:"Generated"},fallback:{item:"Item",axis:"Axis"},tooltip:{flags:"Flags",markers:"Markers",manualFlags:"Manual Flags",autoFlags:"Auto Flags"}},Js={chart:Gs},en={contextMenu:{addMarker:"Ajouter un marqueur",clearAllMarkers:"Effacer tous les marqueurs",downloadSvg:"Télécharger SVG",downloadPng:"Télécharger PNG",downloadCsv:"Télécharger CSV"},modalMarker:{editMarker:"Modifier le marqueur",title:"Titre",description:"Description",iconType:"Type d'icône",defaultIcon:"Logo par défaut",iconPreview:"Prévisualisation de l'icône",deleteMarker:"Suprimer le marqueur",cancel:"Annuler",save:"Sauvegarder",placeholderTitle:"Entrez le titre du marqueur",placeholderDescription:"Entrez la description du marqueur (optionnel)"},zoom:{doubleClickToReset:"(Double-cliquez pour réinitialiser)"},csv:{chartTitle:"Titre du graphique",chartSubtitle:"Sous-titre du graphique",generated:"Généré"},fallback:{item:"Objet",axis:"Axe"},tooltip:{flags:"Drapeaux",markers:"Marqueurs",manualFlags:"Drapeaux manuels",autoFlags:"Drapeaux automatiques"}},tn={chart:en},an={contextMenu:{addMarker:"Markering toevoegen",clearAllMarkers:"Wis alle markers",downloadSvg:"SVG downloaden",downloadPng:"PNG downloaden",downloadCsv:"CSV downloaden"},modalMarker:{editMarker:"Markering bewerken",title:"Titel",description:"Beschrijving",iconType:"Icoon Type",defaultIcon:"Standaard Logo",iconPreview:"Icoon Voorbeeld",deleteMarker:"Markering verwijderen",cancel:"Annuleren",save:"Opslaan",placeholderTitle:"Voer marker titel in",placeholderDescription:"Voer marker beschrijving in (optioneel)"},zoom:{doubleClickToReset:"(Dubbelklik om te resetten)"},csv:{chartTitle:"Grafiek Titel",chartSubtitle:"Grafiek Ondertitel",generated:"Gegenereerd"},fallback:{item:"Item",axis:"As"},tooltip:{flags:"Vlaggen",markers:"Markeringen",manualFlags:"Handmatige Vlaggen",autoFlags:"Automatische Vlaggen"}},on={chart:an},lt={en:Js,fr:tn,nl:on};function ln(se){Object.keys(lt).forEach(D=>{se.global.mergeLocaleMessage(D,lt[D])})}qt.createI18n({legacy:!1,locale:"en",messages:lt});exports.DSSChart=Qs;exports.addDSSChartTranslations=ln;
|
|
75
|
+
`}const a=new Blob([t],{type:"text/csv;charset=utf-8;"}),l=URL.createObjectURL(a),s=document.createElement("a");s.href=l,s.download=Xe("csv"),document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(l),ie()}catch(t){console.error("Error downloading CSV:",t)}},Oa=t=>{if(typeof t.action=="function"){const o={series:y.series,categories:y.categories,markers:T.value},a={chartX:Z.value.chartX,chartY:Z.value.chartY,dataX:Z.value.mouseDataX,dataY:Z.value.mouseDataY,categoryIndex:clampedCategoryIndex||Z.value.categoryIndex};t.action(o,a)}ie()},Pa=()=>{xe(),L.value.show=!0,ie()},Vt=t=>{if(Z.value.show){const o=document.querySelector(".dss-chart-context-menu");o&&!o.contains(t.target)&&ie()}},$t=t=>{if(!W.value||!Ce.value)return;t.preventDefault(),t.stopPropagation(),m.value.isZooming=!0,$.value.show=!1,m.value.zoomTimeout&&clearTimeout(m.value.zoomTimeout);const a=t.currentTarget.getBoundingClientRect(),l=t.clientX-a.left,s=t.clientY-a.top;if(l<i.value.left-50||l>i.value.right+50||s<i.value.top-50||s>i.value.bottom+100){m.value.isZooming=!1;return}const n=t.deltaY>0?.9:1.1,c=Math.max(m.value.minScale,Math.min(m.value.maxScale,m.value.scale*n));if(c!==m.value.scale){const{minX:r,maxX:u}=X.value,d=u-r||1,h=d/m.value.scale,v=r-m.value.offsetX/i.value.width*d,M=(l-i.value.left)/i.value.width,x=v+M*h;m.value.scale=c;const E=d/m.value.scale,C=x-M*E;m.value.offsetX=-(C-r)/d*i.value.width,m.value.scale<=1.01&&(m.value.scale=1,m.value.offsetX=0)}m.value.zoomTimeout=setTimeout(()=>{m.value.isZooming=!1,m.value.zoomTimeout=null},300)},Za=t=>{if(!W.value||!Ce.value||m.value.scale<=1)return;$.value.show=!1;const a=t.currentTarget.getBoundingClientRect();t.clientX-a.left,t.clientY-a.top,m.value.isDragging=!0,m.value.lastMouseX=t.clientX,m.value.lastMouseY=t.clientY,t.preventDefault()},ja=()=>{m.value.isDragging=!1},Je=()=>{!W.value||!Ce.value||(m.value.scale=1,m.value.offsetX=0,m.value.isDragging=!1,m.value.zoomTimeout&&(clearTimeout(m.value.zoomTimeout),m.value.zoomTimeout=null),m.value.isZooming=!1)},Ua=()=>!W.value||!Qe.value||!Ce.value?"default":m.value.isDragging?"grabbing":m.value.scale>1?"grab":"dss-crosshair",et=t=>{if(t.length<2)return"";if(t.length===2)return`M ${t[0].x} ${t[0].y} L ${t[1].x} ${t[1].y}`;let o=`M ${t[0].x} ${t[0].y}`;for(let a=0;a<t.length-1;a++){const l=t[Math.max(a-1,0)],s=t[a],n=t[a+1],c=t[Math.min(a+2,t.length-1)],r=s.x+(n.x-l.x)/6*Ae.value,u=s.y+(n.y-l.y)/6*Ae.value,d=n.x-(c.x-s.x)/6*Ae.value,h=n.y-(c.y-s.y)/6*Ae.value;o+=` C ${r} ${u} ${d} ${h} ${n.x} ${n.y}`}return o},ge=e.computed(()=>{let o=50+(Pe.value?30:0)+60;if(we.value)return{left:90,top:90,right:90,bottom:90};let a=0;return q.value&&(a+=15),Q.value&&(a+=10),{left:66,top:50+a,right:50,bottom:o}}),i=e.computed(()=>({left:ge.value.left,top:ge.value.top,right:K.value-ge.value.right,bottom:le.value-ge.value.bottom,width:K.value-(ge.value.left+ge.value.right),height:le.value-(ge.value.top+ge.value.bottom)})),W=e.computed(()=>["line","area","bar"].includes(F.value)||it.value),Me=e.computed(()=>it.value),$e=e.computed(()=>["radial","semi-radial"].includes(F.value)),we=e.computed(()=>F.value==="spider"),Y=e.computed(()=>F.value==="bubble"),Ie=e.computed(()=>p.value?.chart?.orientation==="horizontal"&&(F.value==="bar"||Me.value)),_t=t=>{const{minY:o,maxY:a}=X.value,l=a-o||1;return i.value.left+(t-o)/l*i.value.width},Dt=t=>{const{maxX:o}=X.value,a=o+1,s=i.value.height/a;return i.value.top+(t+.5)*s},R=e.computed(()=>K.value/2),O=e.computed(()=>we.value?le.value/2-40:le.value/2),A=e.computed(()=>{if(we.value){const t=i.value.width-80,o=i.value.height-80;return Math.min(t,o)/2}return Math.min(i.value.width,i.value.height)/2}),J=e.computed(()=>A.value*.45),tt=e.computed(()=>p.value?.bubbles?.minSize||8),Lt=e.computed(()=>p.value?.bubbles?.maxSize||50),zt=e.computed(()=>p.value?.bubbles?.opacity||.7),Nt=(t,o)=>{const a=[15,20,25,18,22],l=a[t%a.length]||20,s=1+Math.sin(o*.5)*.2;return Math.max(5,l*s)},Wa=t=>{const o=document.querySelector(`.dss-bubble-image-${t}`);o&&(o.style.opacity="1")},qa=t=>{const o=document.querySelector(`.dss-bubble-image-${t}`);o&&(o.style.display="none")},ye=e.computed(()=>y.series),ke=e.computed(()=>y.series.filter((t,o)=>!I.value.has(o))),pe="auto",X=e.computed(()=>{if(Y.value)return Ga();if(!ke.value.length)return{minX:0,maxX:1,minY:0,maxY:1};let t=1/0,o=-1/0,a=0;ke.value.forEach(r=>{r.data&&r.data.length&&(a=Math.max(a,r.data.length-1),r.data.forEach(u=>{typeof u=="number"&&(t=Math.min(t,u),o=Math.max(o,u))}))}),y.categories.length>0&&(a=Math.max(a,y.categories.length-1)),t===1/0&&(t=0,o=100);const l=Kt.value,s=Qt.value;let n,c;if(l===pe){const r=o-t,u=r>0?r*.1:1;n=Math.max(0,t-u)}else if(typeof l=="number")n=l;else{const r=o-t,u=r>0?r*.1:1;n=Math.max(0,t-u)}if(s===pe){const r=o-t,u=r>0?r*.1:2;c=o+u}else if(typeof s=="number")c=s;else{const r=o-t,u=r>0?r*.1:2;c=o+u}return{minX:0,maxX:a,minY:n,maxY:c}}),Ga=()=>{if(!ke.value.length)return{minX:0,maxX:8,minY:0,maxY:50,minSize:10,maxSize:30};let t=1/0,o=-1/0,a=1/0,l=-1/0,s=1/0,n=-1/0,c=!1;if(ke.value.forEach((d,h)=>{d?.data?.length&&d.data.forEach((v,M)=>{let x,E,C;if(typeof v=="object"&&v!==null&&!Array.isArray(v))x=typeof v.x=="number"?v.x:M,E=typeof v.y=="number"?v.y:0,C=typeof v.size=="number"?v.size:20;else if(Array.isArray(v)&&v.length>=3)x=typeof v[0]=="number"?v[0]:M,E=typeof v[1]=="number"?v[1]:0,C=typeof v[2]=="number"?v[2]:20;else if(typeof v=="number")x=M,E=v,C=Nt(h,M);else return;isFinite(x)&&isFinite(E)&&isFinite(C)&&(t=Math.min(t,x),o=Math.max(o,x),a=Math.min(a,E),l=Math.max(l,E),s=Math.min(s,C),n=Math.max(n,C),c=!0)})}),!c)return{minX:0,maxX:8,minY:0,maxY:50,minSize:10,maxSize:30};t===o&&(t=Math.min(t,0),o=Math.max(o,y.categories?.length-1||8)),a===l&&(a=Math.max(0,a-10),l=a+20);const r=o-t,u=l-a;return{minX:t-r*.1,maxX:o+r*.1,minY:a-u*.1,maxY:l+u*.1,minSize:s,maxSize:n}},G=t=>{if(Y.value){const{minX:r,maxX:u}=X.value,d=u-r||1;return i.value.left+(t-r)/d*i.value.width}const{minX:o,maxX:a}=X.value,l=a-o||1,s=l/m.value.scale,n=o-m.value.offsetX/i.value.width*l,c=(t-n)/s;return i.value.left+c*i.value.width},ae=t=>{const{minY:o,maxY:a}=X.value,l=a-o||1;return i.value.bottom-(t-o)/l*i.value.height},Ka=t=>{if(!Y.value)return ee.value||4;const{minSize:o,maxSize:a}=X.value,l=a-o||1;if(l===0)return(tt.value+Lt.value)/2;const s=(t-o)/l;return tt.value+s*(Lt.value-tt.value)},Qa=e.computed(()=>Ht.value.map(t=>({y:t.y}))),Ja=e.computed(()=>{if(Y.value)return eo();if(F.value==="bar"){const E=[],{maxX:C}=X.value,S=C+1,_=5,V=(i.value.width-_*2)/S;for(let f=0;f<=C;f++){const k=i.value.left+_+(f+.5)*V;E.push({x:k,y:i.value.bottom+20,text:y.categories[f]||D("chart.fallback.item",{number:f+1})})}return E}const t=[],{minX:o,maxX:a}=X.value,l=a-o||1,s=l/m.value.scale,n=o-m.value.offsetX/i.value.width*l,c=n+s,r=Math.max(0,Math.floor(n-2)),u=Math.min(a,Math.ceil(c+2)),d=u-r,h=i.value.width,M=Math.floor(h/60);let x=1;d>M&&(x=Math.ceil(d/M));for(let E=r;E<=u;E+=x)if(E>=0&&E<=a){const C=G(E);C>=i.value.left-100&&C<=i.value.right+100&&t.push({x:C,y:i.value.bottom+20,text:y.categories[E]||`Item ${E+1}`})}return t}),eo=()=>{const t=[],{minX:o,maxX:a}=X.value,l=a-o||1,s=Math.min(8,Math.max(4,Math.floor(i.value.width/80)));for(let n=0;n<=s;n++){const c=o+l*n/s,r=G(c);if(r>=i.value.left-10&&r<=i.value.right+10){const u=Math.round(c),d=y.categories?.[u];t.push({x:r,y:i.value.bottom+20,text:d||(Number.isInteger(c)?c.toString():c.toFixed(1))})}}return t},Ht=e.computed(()=>{if(Ie.value){const s=[],{maxX:n}=X.value;for(let c=0;c<=n;c++)s.push({x:i.value.left-10,y:Dt(c),text:y.categories[c]||`Item ${c+1}`});return s}const t=[],{minY:o,maxY:a}=X.value,l=5;for(let s=0;s<=l;s++){const n=o+(a-o)*(s/l),c=Math.round(n);t.push({x:i.value.left-10,y:ae(n),text:c.toString()})}return t}),j=t=>{const o=aa.value;if(!o||o.length===0){const a=["#3B82F6","#EF4444","#10B981","#F59E0B","#8B5CF6","#F97316","#06B6D4","#84CC16"];return a[t%a.length]}return o[t%o.length]},At=t=>{let o=0;for(let a=1;a<t.length;a++){const l=t[a].x-t[a-1].x,s=t[a].y-t[a-1].y;o+=Math.sqrt(l*l+s*s)}return o},Ft=e.computed(()=>F.value==="line"||Me.value?(Me.value?y.series.filter(o=>(o.type||F.value)==="line"):ye.value).map((o,a)=>{const l=y.series.findIndex(h=>h===o),s=o.data.map((h,v)=>({x:Ie.value?_t(h):G(v),y:Ie.value?Dt(v):ae(h)}));let n="";s.length>0&&(re.value?n=et(s):n=`M ${s[0].x} ${s[0].y}`+s.slice(1).map(h=>` L ${h.x} ${h.y}`).join(""));const c=At(s),r=I.value.has(l),u=B.value===l,d=B.value!==null&&B.value!==l;return{path:n,color:j(l),pathLength:c,seriesIndex:l,animationDelay:a*he.value,isHighlighted:u,isDimmed:d,isHidden:r}}):[]),to=e.computed(()=>{if(F.value!=="line")return[];const t=[];return ye.value.forEach((o,a)=>{const l=B.value===a,s=B.value!==null&&B.value!==a,n=I.value.has(a);o.data.forEach((c,r)=>{t.push({x:G(r),y:ae(c),color:j(a),value:c,label:y.categories[r]||r.toString(),seriesName:o.name,categoryIndex:r,dataIndex:r,animationDelay:(a*o.data.length+r)*(he.value/8),isHighlighted:l,isDimmed:s,isHidden:n})})}),t}),Te=e.computed(()=>{if(!Y.value)return[];const t=[];return ye.value.forEach((o,a)=>{if(!o?.data?.length)return;const l=B.value,s=l!==null&&l===a,n=l!==null&&l!==a,c=I.value.has(a);o.data.forEach((r,u)=>{let d,h,v,M,x;if(typeof r=="object"&&r!==null&&!Array.isArray(r))d=typeof r.x=="number"?r.x:u,h=typeof r.y=="number"?r.y:0,v=typeof r.size=="number"?r.size:20,M=r.label||y.categories?.[u]||`Point ${u+1}`,x=r.image||r.imageUrl;else if(Array.isArray(r)&&r.length>=3)d=typeof r[0]=="number"?r[0]:u,h=typeof r[1]=="number"?r[1]:0,v=typeof r[2]=="number"?r[2]:20,M=r[3]||y.categories?.[u]||`Point ${u+1}`,x=r[4];else if(typeof r=="number")d=u,h=r,v=Nt(a,u),M=y.categories?.[u]||`Point ${u+1}`;else return;!isFinite(d)||!isFinite(h)||!isFinite(v)||t.push({x:G(d),y:ae(h),radius:Ka(v),originalX:d,originalY:h,originalSize:v,color:j(a),seriesName:o.name||`Series ${a+1}`,label:M,imageUrl:x,seriesIndex:a,dataIndex:u,categoryIndex:Math.round(d),isHighlighted:s,isDimmed:n,isHidden:c,opacity:zt.value})})}),t}),at=e.computed(()=>F.value!=="area"?[]:ye.value.map((t,o)=>{const a=t.data.map((h,v)=>({x:G(v),y:ae(h)}));if(a.length===0)return{linePath:"",areaPath:"",color:j(o),isHidden:I.value.has(o)};let l=`M ${a[0].x} ${a[0].y}`;re.value&&a.length>1?l=et(a):a.slice(1).forEach(h=>{l+=` L ${h.x} ${h.y}`});const s=i.value.bottom+1;let n=`M ${a[0].x} ${s}`;if(n+=` L ${a[0].x} ${a[0].y}`,re.value&&a.length>1){const h=et(a),v=h.substring(h.indexOf("C")||h.indexOf("Q")||h.indexOf("L"));v?n+=" "+v:a.slice(1).forEach(M=>{n+=` L ${M.x} ${M.y}`})}else a.slice(1).forEach(h=>{n+=` L ${h.x} ${h.y}`});n+=` L ${a[a.length-1].x} ${s} Z`;const c=B.value===o,r=B.value!==null&&B.value!==o,u=I.value.has(o),d=At(a);return{linePath:l,areaPath:n,color:j(o),pathLength:d,isHighlighted:c,isDimmed:r,isHidden:u}})),Xt=e.computed(()=>{if(!(["bar"].includes(F.value)||Me.value))return[];const t=[],{maxX:o}=X.value,a=Me.value?y.series.filter(s=>(s.type||F.value)==="bar"):ye.value,l=a.length;if(Ie.value){const s=o+1,c=i.value.height/s,r=c*.8,u=r/l,d=u*.05,h=u-d;a.forEach((v,M)=>{const x=y.series.findIndex(_=>_===v),E=B.value===x,C=B.value!==null&&B.value!==x,S=I.value.has(x);v.data.forEach((_,g)=>{const k=i.value.top+(g+.5)*c-r/2+M*u+d/2,b=i.value.left,w=Math.abs(_t(_)-i.value.left);let z="";if(re.value&&w>0){const H=Math.min(mt.value,h/2,w/2);z=[`M ${b} ${k}`,`L ${b+w-H} ${k}`,`Q ${b+w} ${k} ${b+w} ${k+H}`,`L ${b+w} ${k+h-H}`,`Q ${b+w} ${k+h} ${b+w-H} ${k+h}`,`L ${b} ${k+h}`,"Z"].join(" ")}t.push({x:b,y:k,width:w,height:h,color:j(x),value:_,label:y.categories[g]||g.toString(),seriesName:v.name,animationDelay:(M*a.length+g)*(he.value/4),isHighlighted:E,isDimmed:C,isHidden:S,barPath:z,isSmooth:re.value&&w>0})})})}else{const s=o+1,c=i.value.width/s,r=c*.8,u=r/l,d=u*.05,h=u-d;a.forEach((v,M)=>{const x=y.series.findIndex(_=>_===v),E=B.value===x,C=B.value!==null&&B.value!==x,S=I.value.has(x);v.data.forEach((_,g)=>{const k=i.value.left+(g+.5)*c-r/2+M*u+d/2,b=ae(Math.max(0,_)),w=Math.abs(ae(0)-ae(_));let z="";if(re.value&&w>0){const H=Math.min(mt.value,h/2,w/2);z=[`M ${k} ${b+w}`,`L ${k} ${b+H}`,`Q ${k} ${b} ${k+H} ${b}`,`L ${k+h-H} ${b}`,`Q ${k+h} ${b} ${k+h} ${b+H}`,`L ${k+h} ${b+w}`,"Z"].join(" ")}t.push({x:k,y:b,width:h,height:w,color:j(x),value:_,label:y.categories[g]||g.toString(),seriesName:v.name,animationDelay:(M*a.length+g)*(he.value/4),isHighlighted:E,isDimmed:C,isHidden:S,barPath:z,isSmooth:re.value&&w>0})})})}return t}),It=e.computed(()=>{if(!$e.value)return[];const t=ye.value.map((n,c)=>({series:n,originalIndex:c})).filter(({originalIndex:n})=>!I.value.has(n));if(t.length===0)return[];let o=F.value==="semi-radial"?Math.PI:-Math.PI/2;const a=F.value==="semi-radial"?Math.PI:Math.PI*2,l=[];if(t.length===1){const{series:n,originalIndex:c}=t[0],r=n.data[0]||0,u=o,d=o+a-.001,h=u+a/2,v=R.value+Math.cos(u)*J.value,M=O.value+Math.sin(u)*J.value,x=R.value+Math.cos(d)*J.value,E=O.value+Math.sin(d)*J.value,C=R.value+Math.cos(d)*A.value,S=O.value+Math.sin(d)*A.value,_=R.value+Math.cos(u)*A.value,g=O.value+Math.sin(u)*A.value,V=1,f=[`M ${v} ${M}`,`A ${J.value} ${J.value} 0 ${V} 1 ${x} ${E}`,`L ${C} ${S}`,`A ${A.value} ${A.value} 0 ${V} 0 ${_} ${g}`,"Z"].join(" ");return l.push({path:f,color:j(c),value:r,seriesName:n.name,opacity:.8,isHighlighted:B.value===c,isDimmed:!1,isHidden:!1,startAngle:u,endAngle:d,midAngle:h}),l}const s=t.reduce((n,{series:c})=>n+(c.data[0]||0),0);return s===0?[]:(t.forEach(({series:n,originalIndex:c})=>{const r=n.data[0]||0,u=r/s*a,d=o,h=o+u,v=d+u/2,M=R.value+Math.cos(d)*J.value,x=O.value+Math.sin(d)*J.value,E=R.value+Math.cos(h)*J.value,C=O.value+Math.sin(h)*J.value,S=R.value+Math.cos(h)*A.value,_=O.value+Math.sin(h)*A.value,g=R.value+Math.cos(d)*A.value,V=O.value+Math.sin(d)*A.value,f=u>Math.PI?1:0,k=[`M ${M} ${x}`,`A ${J.value} ${J.value} 0 ${f} 1 ${E} ${C}`,`L ${S} ${_}`,`A ${A.value} ${A.value} 0 ${f} 0 ${g} ${V}`,"Z"].join(" ");l.push({path:k,color:j(c),value:r,seriesName:n.name,opacity:.8,isHighlighted:B.value===c,isDimmed:B.value!==null&&B.value!==c,isHidden:!1,startAngle:d,endAngle:h,midAngle:v}),o=h}),l)}),ao=e.computed(()=>!Ct.value||!$e.value?[]:It.value.map((t,o)=>{if(t.isHidden)return null;const a=pa.value,l=fa.value,s=ya.value,n=R.value+Math.cos(t.midAngle)*A.value,c=O.value+Math.sin(t.midAngle)*A.value,r=R.value+Math.cos(t.midAngle)*(A.value+a),u=O.value+Math.sin(t.midAngle)*(A.value+a),d=Math.cos(t.midAngle)>=0,v=r+l*(d?1:-1),M=u,x=d?r+15:r-15,E=M-s,C=d?"start":"end";return{pointerStartX:n,pointerStartY:c,pointerEndX:r,pointerEndY:u,horizontalEndX:v,horizontalEndY:M,textX:x,textY:E,text:`${t.seriesName}: ${t.value}`,color:t.color,textAnchor:C,isRightSide:d,isHighlighted:t.isHighlighted,isDimmed:t.isDimmed}}).filter(Boolean)),oo=t=>{if(!t||t.isHidden)return 0;const o=t.opacity||zt.value||.7;return B.value===null||B.value===void 0?o:B.value!==null?t.seriesIndex===B.value?Math.min(1,o+.1):Math.max(.5,o*.8):o},lo=t=>{if(!t||t.isHidden)return 0;const o=t.radius>20?.9:.8;return B.value!==null?t.seriesIndex===B.value?Math.min(1,o+.1):o*.7:o},Tt=(t,o)=>{if(t)try{if(B.value===t.seriesIndex?B.value=null:B.value=t.seriesIndex,typeof window<"u"&&window.dispatchEvent){const a=new CustomEvent("dss-bubble-click",{detail:{bubble:t,originalEvent:o,chartId:y.chartId}});window.dispatchEvent(a)}}catch(a){console.error("Error in onBubbleClick:",a)}},so=(t,o)=>{const a=[`dss-bubble-fallback-${o}`];return t.isHighlighted&&a.push("dss-bubble-highlighted"),t.isDimmed&&a.push("dss-bubble-dimmed"),t.isHidden&&a.push("dss-bubble-hidden"),a.push(`dss-bubble-series-${t.seriesIndex}`),a.join(" ")},Yt=(t,o)=>{t&&(o.stopPropagation(),Re.value=!0,B.value=t.seriesIndex,$.value.show=!1)},no=(t,o)=>{let a;switch(t){case"x":a=o.originalX;break;case"y":a=o.originalY;break;case"size":a=o.originalSize;break;case"label":a=o.label;break;case"seriesName":a=o.seriesName;break;default:a=o[t]||""}const l=xa.value[t];return typeof l=="function"?l(a,o):typeof a=="number"?a.toFixed(1):a?.toString()||""},ro=()=>{if(!Y.value||!$.value.data||$.value.data.length===0)return"Bubbles";const t=[],o=new Set;return $.value.data.forEach(a=>{if(a.seriesName&&a.label){const l=`${a.seriesName} - ${a.label}`;o.has(l)||(t.push(l),o.add(l))}else a.seriesName&&(o.has(a.seriesName)||(t.push(a.seriesName),o.add(a.seriesName)))}),t.length>0?t.join(" | "):"Bubbles"},Rt=(t,o)=>{t&&(Re.value=!1,B.value=null)},_e=e.computed(()=>y.categories.length||Math.max(...ke.value.map(t=>t.data.length))),io=e.computed(()=>{let t=0;return ke.value.forEach(o=>{o.data.forEach(a=>{typeof a=="number"&&(t=Math.max(t,a))})}),t||100}),Ot=e.computed(()=>{const t=[],o=_e.value;for(let a=0;a<o;a++){const l=a*2*Math.PI/o-Math.PI/2,s=R.value+Math.cos(l)*A.value,n=O.value+Math.sin(l)*A.value;t.push({x:s,y:n,angle:l,index:a})}return t}),co=e.computed(()=>{const t=[],o=_e.value;return Ot.value.forEach((a,l)=>{const s=A.value+15,n=l*2*Math.PI/o-Math.PI/2,c=R.value+Math.cos(n)*s,r=O.value+Math.sin(n)*s+5;let u="middle",d="middle";Math.abs(Math.cos(n))>.5&&(u=Math.cos(n)>0?"start":"end"),Math.abs(Math.sin(n))>.5&&(d=Math.sin(n)>0?"hanging":"auto"),t.push({x:c,y:r,text:y.categories[l]||`Axis ${l+1}`,anchor:u,baseline:d})}),t}),uo=e.ref(new Set),mo=(t,o,a)=>{const l=`current-${a}`,s=uo.value.has(l);return!s&&B.value===null?o.fillOpacity||Se.value:o.isHighlighted||s?(o.fillOpacity||Se.value)+.15:o.isDimmed?(o.fillOpacity||Se.value)*.3:o.fillOpacity||Se.value},ho=e.computed(()=>{if(!we.value)return[];const t=[],o=_e.value;return ye.value.forEach((a,l)=>{const s=[],n=[],c=B.value===l,r=B.value!==null&&B.value!==l,u=I.value.has(l);for(let d=0;d<o;d++){const h=a.data[d]||0,M=h/io.value*A.value,x=d*2*Math.PI/o-Math.PI/2,E=R.value+Math.cos(x)*M,C=O.value+Math.sin(x)*M;s.push(`${E},${C}`),n.push({x:E,y:C,value:h,label:y.categories[d]||`Axis ${d+1}`,seriesName:a.name})}t.push({points:s.join(" "),dataPoints:n,color:j(l),fillOpacity:Se.value,seriesName:a.name,value:`${a.name}: ${a.data.join(", ")}`,isHighlighted:c,isDimmed:r,isHidden:u})}),t}),Ye=e.computed(()=>{const t=p.value;return t.logos.map((o,a)=>{const l=y.series[o.seriesIndex];if(!l||!l.data||l.data.length===0||I.value.has(o.seriesIndex))return null;let s,n;if(W.value){const r=l.data.map((u,d)=>({x:G(d),y:ae(u)}));if(t.animations.enabled&&!Ne.value&&t.animations.type==="draw"&&t.chart.type==="line"&&(N.value.isAnimating||!N.value.hasAnimated))if(N.value.isAnimating){const u=N.value.currentFrame/N.value.totalFrames,d=Pt(t.animations.easing,Math.min(u,1)),h=wo(r,d);s=h.x+(o.offsetX||0),n=h.y+(o.offsetY||0)}else s=r[0].x+(o.offsetX||0),n=r[0].y+(o.offsetY||0);else{const u=l.data.length-1,d=l.data[u];s=G(u)+(o.offsetX||0),n=ae(d)+(o.offsetY||0)}}else if($e.value||we.value){const r=Math.PI*2/t.logos.length*a;s=R.value+Math.cos(r)*(A.value+30)+(o.offsetX||0),n=O.value+Math.sin(r)*(A.value+30)+(o.offsetY||0)}return{...o,x:s,y:n,seriesIndex:o.seriesIndex}}).filter(Boolean)}),vo=t=>{const o=document.querySelector(`.dss-logo-fallback-${t}`),a=document.querySelector(`.dss-logo-image-${t}`);o&&(o.style.opacity="0"),a&&(a.style.opacity="1")},go=t=>{console.warn(`Logo ${t} failed to load, keeping fallback circle`);const o=document.querySelector(`.dss-logo-image-${t}`);o&&(o.style.display="none")},po=t=>{I.value.has(t)?I.value.delete(t):I.value.add(t)},fo=e.computed(()=>{if(!P.value.show&&!(de.value&&$.value.show&&!m.value.isZooming))return{display:"none"};let t,o;if(de.value&&$.value.show&&!m.value.isZooming){t=$.value.x+15,o=i.value.top;const a=Y.value?200:150;t+a>K.value&&(t=$.value.x-a-15),t<0&&(t=10),o<10&&(o=10)}else t=P.value.x,o=P.value.y;return{left:t+"px",top:o+"px"}}),ce=(t,o)=>{if(De.value)return;const l=o.target.closest(".dss-custom-chart-container").getBoundingClientRect();let s=o.clientX-l.left+10,n=o.clientY-l.top-10;const c=200,r=120,u=K.value,d=le.value;s+c>u&&(s=o.clientX-l.left-c-10),n+r>d&&(n=o.clientY-l.top-r-10),s<0&&(s=10),n<0&&(n=10);let h;typeof t.categoryIndex=="number"?h=t.categoryIndex:typeof t.dataIndex=="number"?h=t.dataIndex:t.label&&y.categories.includes(t.label)&&(h=y.categories.indexOf(t.label)),P.value={show:!0,x:s,y:n,title:t.seriesName||t.label||"",value:t.value?.toString()||"",categoryIndex:h}},ot=e.ref(!1),Re=e.ref(!1),ue=()=>{P.value.show=!1,$.value.show=!1,ot.value||(B.value=null)},De=e.ref(!1),Le=(t,o)=>{De.value=!0,P.value.show=!1,$.value.show=!1;const l=o.target.closest(".dss-custom-chart-container").getBoundingClientRect();let s=o.clientX-l.left+15,n=o.clientY-l.top-10;const c=250;s+c>K.value&&(s=o.clientX-l.left-c-15),s<0&&(s=10),n<0&&(n=10),Ke.value={show:!0,x:s,y:n,content:t.texts,count:t.totalCount}},ze=()=>{De.value=!1,Ke.value.show=!1},N=e.ref({isAnimating:!1,currentFrame:0,totalFrames:0,animationId:null,hasAnimated:!1}),Pt=(t,o)=>{switch(t){case"linear":return o;case"ease":return o<.5?2*o*o:-1+(4-2*o)*o;case"ease-in":return o*o;case"ease-out":return o*(2-o);case"ease-in-out":return o<.5?2*o*o:-1+(4-2*o)*o;default:return o}},Ne=e.computed(()=>la.value?window.matchMedia("(prefers-reduced-motion: reduce)").matches:!1),Zt=()=>{if(!Be.value||Ne.value){N.value.hasAnimated=!0;return}N.value.isAnimating=!0,N.value.currentFrame=0,N.value.totalFrames=Math.ceil(vt.value/16.67);const t=()=>{const o=N.value.currentFrame/N.value.totalFrames,a=Pt(pt.value,Math.min(o,1));yo(a),o<1?(N.value.currentFrame++,N.value.animationId=requestAnimationFrame(t)):ko()};N.value.animationId=requestAnimationFrame(t)},yo=t=>{const o=document.querySelector(".dss-custom-chart-container");o&&o.style.setProperty("--dss-animation-progress",t)},ko=()=>{N.value.isAnimating=!1,N.value.hasAnimated=!0,N.value.animationId&&(cancelAnimationFrame(N.value.animationId),N.value.animationId=null)},Co=e.computed(()=>{if(!Be.value||Ne.value||N.value.hasAnimated)return{};const t={};return t["--dss-animation-duration"]=`${vt.value}ms`,t["--dss-animation-easing"]=xo(pt.value),t["--dss-stagger-delay"]=`${he.value}ms`,t}),xo=t=>({linear:"linear",ease:"ease","ease-in":"ease-in","ease-out":"ease-out","ease-in-out":"ease-in-out"})[t]||"ease-out",Mo=()=>{if(!Be.value||Ne.value)return"";const t=["dss-chart-animated"];return N.value.hasAnimated||t.push(`dss-animate-${ht.value}`),N.value.hasAnimated||($e.value?t.push("dss-animate-fill"):t.push(`dss-animate-${ht.value}`)),N.value.isAnimating&&t.push("dss-is-animating"),t.join(" ")};e.watch(()=>y.series,(t,o)=>{oa.value&&o&&N.value.hasAnimated&&(N.value.hasAnimated=!1,e.nextTick(()=>{setTimeout(()=>Zt(),gt.value)}))},{deep:!0}),e.watch(()=>m.value.isZooming,(t,o)=>{o&&!t&&setTimeout(()=>{bt()},50)}),e.watch(()=>[m.value.scale,m.value.offsetX],()=>{!m.value.isZooming&&!m.value.isDragging&&bt()},{flush:"post"}),e.watch([ea,ta],([t,o])=>{m.value.minScale=t,m.value.maxScale=o,(m.value.scale<t||m.value.scale>o)&&Je()},{immediate:!0}),e.watch(()=>y.locale,t=>{t&&t!==st.value&&(st.value=t)},{immediate:!0}),e.onMounted(()=>{B.value=null,Fa(),Be.value&&!Ne.value?setTimeout(()=>Zt(),gt.value):N.value.hasAnimated=!0,document.addEventListener("mousemove",jt),document.addEventListener("mouseup",Ut),document.addEventListener("click",Vt)}),e.onUnmounted(()=>{N.value.animationId&&cancelAnimationFrame(N.value.animationId),m.value.zoomTimeout&&clearTimeout(m.value.zoomTimeout),document.removeEventListener("mousemove",jt),document.removeEventListener("mouseup",Ut),document.removeEventListener("click",Vt)});const jt=t=>{if(m.value.isDragging&&m.value.scale>1&&W.value){$.value.show=!1;const o=t.clientX-m.value.lastMouseX,{minX:a,maxX:l}=X.value,s=l-a||1,c=o*.8;m.value.offsetX+=c;const r=s/m.value.scale,u=s-r,d=0,h=-u/s*i.value.width,v=d;m.value.offsetX=Math.max(h,Math.min(v,m.value.offsetX)),m.value.lastMouseX=t.clientX,m.value.lastMouseY=t.clientY}},Ut=()=>{m.value.isDragging&&(m.value.isDragging=!1,setTimeout(()=>{!m.value.isDragging&&m.value.isZooming},100))},wo=(t,o)=>{if(!t||t.length===0)return{x:0,y:0};if(t.length===1||o<=0)return t[0];if(o>=1)return t[t.length-1];let a=0;const l=[];for(let c=1;c<t.length;c++){const r=t[c].x-t[c-1].x,u=t[c].y-t[c-1].y,d=Math.sqrt(r*r+u*u);l.push(d),a+=d}const s=a*o;let n=0;for(let c=0;c<l.length;c++){const r=n+l[c];if(s<=r){const u=(s-n)/l[c],d=t[c],h=t[c+1];return{x:d.x+(h.x-d.x)*u,y:d.y+(h.y-d.y)*u}}n=r}return t[t.length-1]};return(t,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["dss-custom-chart-container",Mo()]),style:e.normalizeStyle({width:K.value+"px",height:le.value+20+"px",...Co.value,cursor:Ua()}),"data-chart-type":F.value,onWheel:$t,onMousedown:Za,onMousemove:ba,onMouseup:ja,onMouseleave:Ea,onDblclick:Je,onContextmenu:Ba,onClick:ie,onWheelCapture:$t},[e.createElementVNode("div",So,[e.createElementVNode("div",Vo,[q.value?(e.openBlock(),e.createElementBlock("div",$o,e.toDisplayString(q.value),1)):e.createCommentVNode("",!0),Q.value?(e.openBlock(),e.createElementBlock("div",_o,e.toDisplayString(Q.value),1)):e.createCommentVNode("",!0)]),He.value?(e.openBlock(),e.createElementBlock("div",Do,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.series,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`legend-${l}`,class:e.normalizeClass(["dss-legend-item",{"dss-legend-hidden":I.value.has(l),"dss-legend-hovered":B.value===l,"dss-legend-dimmed":B.value!==null&&B.value!==l}]),onClick:s=>po(l),onMouseenter:s=>Ma(l),onMouseleave:wa,style:e.normalizeStyle({animationDelay:`${l*100}ms`})},[e.createElementVNode("div",{class:"dss-legend-color",style:e.normalizeStyle({backgroundColor:j(l)})},null,4),e.createElementVNode("span",zo,e.toDisplayString(a.name),1)],46,Lo))),128))])):e.createCommentVNode("",!0)]),(e.openBlock(),e.createElementBlock("svg",{width:K.value,height:le.value,class:"dss-chart-svg","data-smooth":re.value,"data-animated":Be.value},[e.createElementVNode("defs",null,[e.createElementVNode("clipPath",Ho,[e.createElementVNode("rect",{x:i.value.left,y:i.value.top,width:i.value.width,height:i.value.height*4},null,8,Ao)])]),W.value||Y.value?(e.openBlock(),e.createElementBlock("g",Fo,[ut.value?(e.openBlock(),e.createElementBlock("g",Xo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Qa.value,(a,l)=>(e.openBlock(),e.createElementBlock("line",{key:`h-grid-${l}`,x1:i.value.left,x2:i.value.right,y1:a.y,y2:a.y,stroke:"#e0e0e0","stroke-width":"1","stroke-dasharray":"4,2",style:e.normalizeStyle({animationDelay:`${l*50}ms`})},null,12,Io))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",To,[e.createElementVNode("line",{x1:i.value.left,x2:i.value.right,y1:i.value.bottom,y2:i.value.bottom,stroke:"#ccc","stroke-width":"1"},null,8,Yo),e.createElementVNode("line",{x1:i.value.left,x2:i.value.left,y1:i.value.top,y2:i.value.bottom,stroke:"#ccc","stroke-width":"1"},null,8,Ro)]),e.createElementVNode("g",Oo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ja.value,(a,l)=>(e.openBlock(),e.createElementBlock("text",{key:`x-${l}`,x:a.x,y:a.y,"text-anchor":"middle","font-size":"12",fill:"#666",style:e.normalizeStyle({animationDelay:`${l*100}ms`})},e.toDisplayString(a.text),13,Po))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ht.value,(a,l)=>(e.openBlock(),e.createElementBlock("text",{key:`y-${l}`,x:a.x,y:a.y,"text-anchor":"end","font-size":"12",fill:"#666","dominant-baseline":"middle",style:e.normalizeStyle({animationDelay:`${l*80}ms`})},e.toDisplayString(a.text),13,Zo))),128)),Pe.value?(e.openBlock(),e.createElementBlock("text",{key:0,x:i.value.left+i.value.width/2,y:i.value.bottom+45,"text-anchor":"middle","font-size":"14","font-weight":"bold",fill:"#333"},e.toDisplayString(Pe.value),9,jo)):e.createCommentVNode("",!0),ct.value?(e.openBlock(),e.createElementBlock("text",{key:1,x:15,y:i.value.top+12+i.value.height/2,"text-anchor":"middle","font-size":"14","font-weight":"bold",fill:"#333",transform:`rotate(-90, 15, ${i.value.top+i.value.height/2})`},e.toDisplayString(ct.value),9,Uo)):e.createCommentVNode("",!0)]),xt.value.length>0?(e.openBlock(),e.createElementBlock("g",Wo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(xt.value,a=>(e.openBlock(),e.createElementBlock("g",{key:`flag-group-${a.categoryIndex}`},[e.createElementVNode("g",qo,[a.hasManual?(e.openBlock(),e.createElementBlock("line",{key:0,x1:a.x,x2:a.x,y1:i.value.bottom,y2:i.value.top,stroke:"#047395","stroke-width":"2","stroke-dasharray":"8",opacity:"0.9",class:"dss-flag-line",onMouseover:l=>Le(a,l),onMouseleave:ze},null,40,Go)):e.createCommentVNode("",!0),a.hasAuto&&!a.hasManual?(e.openBlock(),e.createElementBlock("line",{key:1,x1:a.x,x2:a.x,y1:i.value.bottom,y2:i.value.top,stroke:"#0dbf89","stroke-width":"2","stroke-dasharray":"8",opacity:"0.9",class:"dss-flag-line",onMouseover:l=>Le(a,l),onMouseleave:ze},null,40,Ko)):e.createCommentVNode("",!0),a.hasAuto&&a.hasManual?(e.openBlock(),e.createElementBlock("line",{key:2,x1:a.x,x2:a.x,y1:i.value.bottom,y2:i.value.top,stroke:"#047395","stroke-width":"2","stroke-dasharray":"8",opacity:"0.9",class:"dss-flag-line",onMouseover:l=>Le(a,l),onMouseleave:ze},null,40,Qo)):e.createCommentVNode("",!0)]),a.hasManual&&a.hasAuto?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:a.x+8,cy:Math.max(15,i.value.top-10),r:"14",fill:"#0dbf89",stroke:"#fafafa","stroke-width":"2",class:"flag-count-circle",onMouseover:l=>Le(a,l),onMouseleave:ze},null,40,Jo)):e.createCommentVNode("",!0),e.createElementVNode("circle",{cx:a.x,cy:Math.max(15,i.value.top-10),r:"14",fill:a.hasManual&&a.hasAuto||a.hasManual?"#047395":"#0dbf89",stroke:"#fafafa","stroke-width":"2",class:"dss-flag-count-indicator",onMouseover:l=>Le(a,l),onMouseleave:ze},null,40,el),e.createElementVNode("text",{x:a.x,y:Math.max(15,i.value.top-5),"text-anchor":"middle","font-size":"12","font-weight":"bold",fill:"#fafafa",class:"dss-flag-count-text","pointer-events":"none"},e.toDisplayString(a.totalCount),9,tl)]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",al,[Me.value?(e.openBlock(),e.createElementBlock("g",ol,[e.createElementVNode("g",ll,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Xt.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`mixed-bar-${l}`},[a.isSmooth?(e.openBlock(),e.createElementBlock("path",{key:0,d:a.barPath,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,sl)):(e.openBlock(),e.createElementBlock("rect",{key:1,x:a.x,y:a.y,width:a.width,height:a.height,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,nl))],64))),128))]),e.createElementVNode("g",rl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ft.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`mixed-line-${l}`,d:a.path,stroke:a.color,"stroke-width":a.isHighlighted?me.value+2:me.value,fill:"none","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({"--dss-path-length":a.pathLength,animationDelay:`${a.animationDelay}ms`})},null,14,il))),128)),ee.value>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.mixedLinePoints,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`mixed-point-${l}`,cx:a.x,cy:a.y,r:a.isHighlighted?ee.value+2:ee.value,fill:a.color,stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass({"dss-point-highlighted":a.isHighlighted,"dss-point-dimmed":a.isDimmed,"dss-point-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,cl))),128)):e.createCommentVNode("",!0)])])):F.value==="line"?(e.openBlock(),e.createElementBlock("g",ul,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ft.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`line-${l}`,d:a.path,stroke:a.color,"stroke-width":a.isHighlighted?me.value+2:me.value,fill:"none","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({"--dss-path-length":a.pathLength,animationDelay:`${a.animationDelay}ms`})},null,14,dl))),128)),ee.value>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(to.value,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`point-${l}`,cx:a.x,cy:a.y,r:a.isHighlighted?ee.value+2:ee.value,fill:a.color,stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass({"dss-point-highlighted":a.isHighlighted,"dss-point-dimmed":a.isDimmed,"dss-point-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,ml))),128)):e.createCommentVNode("",!0)])):F.value==="area"?(e.openBlock(),e.createElementBlock("g",hl,[e.createElementVNode("defs",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(at.value,(a,l)=>(e.openBlock(),e.createElementBlock("mask",{key:`mask-${l}`,id:`area-mask-${l}-${ne.chartId}`},[e.createElementVNode("rect",{x:i.value.left-10,y:i.value.top-10,width:i.value.width+20,height:i.value.height+20,fill:"#fafafa",class:"dss-area-mask-rect",style:e.normalizeStyle({"--dss-mask-width":`${i.value.width+20}px`})},null,12,gl)],8,vl))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(at.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`area-fill-${l}`,d:a.areaPath,fill:a.color,"fill-opacity":a.isHighlighted?dt.value+.2:dt.value,mask:`url(#area-mask-${l}-${ne.chartId})`,class:e.normalizeClass({"dss-area-fill-smooth":!0,"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden})},null,10,pl))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(at.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`area-line-${l}`,d:a.linePath,stroke:a.color,"stroke-width":a.isHighlighted?me.value+1:me.value,fill:"none","stroke-linecap":"round","stroke-linejoin":"round",class:e.normalizeClass({"dss-area-line-animated":!0,"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({"--dss-path-length":a.pathLength,animationDelay:`${l*he.value}ms`})},null,14,fl))),128))])):F.value==="bar"?(e.openBlock(),e.createElementBlock("g",yl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Xt.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`bar-${l}`},[a.isSmooth?(e.openBlock(),e.createElementBlock("path",{key:0,d:a.barPath,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,kl)):(e.openBlock(),e.createElementBlock("rect",{key:1,x:a.x,y:a.y,width:a.width,height:a.height,fill:a.color,stroke:"#fafafa","stroke-width":"1",class:e.normalizeClass({"dss-bar-highlighted":a.isHighlighted,"dss-bar-dimmed":a.isDimmed,"dss-bar-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${a.animationDelay}ms`}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,Cl))],64))),128))])):e.createCommentVNode("",!0)]),de.value&&$.value.show&&!m.value.isZooming?(e.openBlock(),e.createElementBlock("g",xl,[e.createElementVNode("line",{x1:$.value.x,x2:$.value.x,y1:i.value.top,y2:i.value.bottom,stroke:Jt.value,"stroke-width":"1","stroke-dasharray":"4,4",opacity:"0.8"},null,8,Ml),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value.data,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`dss-crosshair-point-${l}`,cx:$.value.x,cy:a.y,r:ee.value+2,fill:a.color,stroke:"#fafafa","stroke-width":"2",opacity:"0.9"},null,8,wl))),128))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),Y.value?(e.openBlock(),e.createElementBlock("g",bl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Te.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`bubble-${l}`},[a?(e.openBlock(),e.createElementBlock("g",El,[e.createElementVNode("circle",{cx:a.x,cy:a.y,r:a.radius,fill:a.color,"fill-opacity":oo(a),stroke:a.color,"stroke-width":a.isHighlighted?3:1,"stroke-opacity":"0.8",class:e.normalizeClass(so(a,l)),style:{cursor:"pointer",transition:"all 0.3s ease"},onMouseenter:s=>Yt(a,s),onMouseleave:s=>Rt(a),onClick:s=>Tt(a,s)},null,42,Bl),a.imageUrl?(e.openBlock(),e.createElementBlock("image",{key:0,x:a.x-a.radius*.65,y:a.y-a.radius*.65,width:a.radius*1.3,height:a.radius*1.3,"xlink:href":a.imageUrl,class:e.normalizeClass(`dss-bubble-image-${l} ${a.isHighlighted?"dss-bubble-highlighted":""} ${a.isDimmed?"dss-bubble-dimmed":""} ${a.isHidden?"dss-bubble-hidden":""}`),"clip-path":`circle(${a.radius*.65}px at ${a.radius*.65}px ${a.radius*.65}px)`,style:e.normalizeStyle({cursor:"pointer",transition:"all 0.3s ease",opacity:lo(a)}),onLoad:s=>Wa(l),onError:s=>qa(l),onMouseenter:s=>Yt(a,s),onMouseleave:s=>Rt(a),onClick:s=>Tt(a,s)},null,46,Sl)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],64))),128))])):e.createCommentVNode("",!0),$e.value?(e.openBlock(),e.createElementBlock("g",Vl,[F.value==="radial"?(e.openBlock(),e.createElementBlock("circle",{key:0,cx:R.value,cy:O.value,r:A.value,fill:"none",stroke:"#e0e0e0","stroke-width":"1"},null,8,$l)):e.createCommentVNode("",!0),e.createElementVNode("g",{class:"dss-radial-data","data-chart-type":F.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(It.value,(a,l)=>(e.openBlock(),e.createElementBlock("path",{key:`radial-${l}`,d:a.path,fill:a.color,"fill-opacity":a.isHighlighted?(a.opacity||.8)+.2:a.opacity||.8,stroke:a.color,"stroke-width":a.isHighlighted?2:1,class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,42,Dl))),128))],8,_l),Ct.value?(e.openBlock(),e.createElementBlock("g",Ll,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ao.value,(a,l)=>(e.openBlock(),e.createElementBlock("g",{key:`radial-label-${l}`,class:e.normalizeClass({"dss-label-highlighted":a.isHighlighted,"dss-label-dimmed":a.isDimmed})},[e.createElementVNode("line",{x1:a.pointerStartX,y1:a.pointerStartY,x2:a.pointerEndX,y2:a.pointerEndY,stroke:a.color,"stroke-width":"1.5",opacity:"0.8",style:e.normalizeStyle({animationDelay:`${l*100}ms`})},null,12,zl),e.createElementVNode("line",{x1:a.pointerEndX,y1:a.pointerEndY,x2:a.horizontalEndX,y2:a.horizontalEndY,stroke:a.color,"stroke-width":"1.5",opacity:"0.8",style:e.normalizeStyle({animationDelay:`${l*120}ms`})},null,12,Nl),e.createElementVNode("text",{x:a.textX,y:a.textY,"text-anchor":a.textAnchor,"font-size":ga.value,"dominant-baseline":"middle",style:e.normalizeStyle({animationDelay:`${l*150}ms`})},e.toDisplayString(a.text),13,Hl)],2))),128))])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),we.value?(e.openBlock(),e.createElementBlock("g",Al,[ut.value?(e.openBlock(),e.createElementBlock("g",Fl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ze.value,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`spider-grid-circle-${l}`,cx:R.value,cy:O.value,r:a,fill:"none",stroke:"#dedede","stroke-width":"1",style:e.normalizeStyle({animationDelay:`${l*150}ms`})},null,12,Xl))),128)),e.createElementVNode("g",Il,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ze.value,(a,l)=>(e.openBlock(),e.createElementBlock("g",{key:`spider-grid-label-group-${l}`},[e.createElementVNode("rect",{x:R.value-16,y:O.value-a-7,width:"32",height:"16",fill:"#fafafa",stroke:"none"},null,8,Tl),e.createElementVNode("text",{x:R.value,y:O.value-a+2,"text-anchor":"middle","dominant-baseline":"central",class:"dss-spider-grid-label",style:{fontSize:"10px",fill:"#999",fontWeight:"600"}},e.toDisplayString(na(l)),9,Yl)]))),128))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ot.value,(a,l)=>(e.openBlock(),e.createElementBlock("line",{key:`spider-axis-${l}`,x1:R.value,x2:a.x,y1:O.value,y2:a.y,stroke:"#dedede","stroke-width":"1",style:e.normalizeStyle({animationDelay:`${l*100}ms`})},null,12,Rl))),128))])):e.createCommentVNode("",!0),e.createElementVNode("g",Ol,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(co.value,(a,l)=>(e.openBlock(),e.createElementBlock("text",{key:`spider-label-${l}`,x:a.x+Math.cos(l*2*Math.PI/_e.value-Math.PI/2)*16,y:a.y+Math.sin(l*2*Math.PI/_e.value-Math.PI/2)*16,"text-anchor":a.anchor,"dominant-baseline":a.baseline,"font-size":"14px",fill:"#666","font-weight":"500",style:e.normalizeStyle({animationDelay:`${l*120}ms`})},e.toDisplayString(a.text.charAt(0).toUpperCase()+a.text.slice(1)),13,Pl))),128))]),e.createElementVNode("g",Zl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ho.value,(a,l)=>(e.openBlock(),e.createElementBlock("g",{key:`spider-${l}`},[e.createElementVNode("polygon",{points:a.points,fill:a.color,"fill-opacity":mo("current",a,l),stroke:a.color,"stroke-width":a.isHighlighted?me.value+1:me.value,"stroke-linejoin":"round",class:e.normalizeClass({"dss-series-highlighted":a.isHighlighted,"dss-series-dimmed":a.isDimmed,"dss-series-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${l*he.value}ms`,transition:"all 0.2s ease"}),onMouseover:s=>ce(a,s),onMouseleave:ue},null,46,jl),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.dataPoints,(s,n)=>(e.openBlock(),e.createElementBlock("circle",{key:`spider-point-${l}-${n}`,cx:s.x,cy:s.y,r:a.isHighlighted?ee.value+1:ee.value>0?ee.value:0,fill:a.color,stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass({"dss-point-highlighted":a.isHighlighted,"dss-point-dimmed":a.isDimmed,"dss-point-hidden":a.isHidden}),style:e.normalizeStyle({animationDelay:`${l*he.value+n*50}ms`,transition:"all 0.2s ease"}),onMouseover:c=>ce(s,c),onMouseleave:ue},null,46,Ul))),128))]))),128))])])):e.createCommentVNode("",!0),e.createElementVNode("g",Wl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ye.value,(a,l)=>(e.openBlock(),e.createElementBlock("circle",{key:`logo-fallback-${l}`,cx:a.x,cy:a.y,r:a.width/2,fill:j(a.seriesIndex),stroke:"#fafafa","stroke-width":"2",class:e.normalizeClass(`logo-fallback-${l}`),style:e.normalizeStyle({animationDelay:`${l*200}ms`})},null,14,ql))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Ye.value,(a,l)=>(e.openBlock(),e.createElementBlock("image",{key:`logo-${l}`,x:a.x-a.width/2,y:a.y-a.height/2,width:a.width,height:a.height,"xlink:href":a.url,onLoad:s=>vo(l),onError:s=>go(l),class:e.normalizeClass(`dss-logo-image-${l}`),"clip-path":`circle(${a.width/2}px at ${a.width/2}px ${a.height/2}px)`,style:e.normalizeStyle({animationDelay:`${l*200}ms`})},null,46,Gl))),128))])],8,No)),Ue.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dss-chart-watermark",style:e.normalizeStyle({position:"absolute",top:"0px",left:"0px",width:K.value+"px",height:le.value+"px",backgroundImage:`url('${kt.value}')`,backgroundRepeat:"no-repeat",...ma.value,opacity:We.value,pointerEvents:"none",zIndex:10})},null,4)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ua.value,(a,l)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:"marker-"+a.id,class:"dss-chart-marker",style:e.normalizeStyle({position:"absolute",left:a.x+"px",top:a.y+"px",width:ft.value+"px",height:ft.value+"px",transform:"translate(-50%, -50%)",cursor:"pointer",zIndex:500,backgroundColor:"#fafafa",borderRadius:"50%",border:"2px solid #ddd",pointerEvents:yt.value?"auto":"none"}),onClick:e.withModifiers(s=>Na(a),["stop"]),onWheel:o[0]||(o[0]=e.withModifiers(()=>{},["prevent","stop"])),title:a.title+(a.description?": "+a.description:"")},[e.createElementVNode("img",{src:wt(a),class:"dss-marker-icon",alt:"Marker Icon",style:{width:"100%",height:"100%",objectFit:"contain",borderRadius:"50%",pointerEvents:"none"},onError:s=>Aa(s,a),draggable:"false"},null,40,Ql)],44,Kl)),[[e.vShow,yt.value]])),128)),P.value.show||de.value&&$.value.show&&!m.value.isZooming?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["dss-chart-tooltip",{"dss-crosshair-tooltip":de.value&&$.value.show&&!m.value.isZooming}]),style:e.normalizeStyle(fo.value)},[!de.value||!$.value.show||m.value.isZooming?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",Jl,[e.createElementVNode("div",es,e.toDisplayString(P.value.title),1),e.createElementVNode("div",ts,e.toDisplayString(P.value.value),1)]),P.value.categoryIndex!==void 0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[ve(P.value.categoryIndex).flagGroups.length>0?(e.openBlock(),e.createElementBlock("div",as,[o[7]||(o[7]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",os,e.toDisplayString(e.unref(D)("chart.tooltip.flags")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve(P.value.categoryIndex).flagGroups,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`tooltip-flag-group-${l}`},[e.createElementVNode("div",ls,[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("span",null,e.toDisplayString(a.type),1)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.flags,(s,n)=>(e.openBlock(),e.createElementBlock("div",{key:`tooltip-flag-${l}-${n}`,class:"dss-tooltip-item dss-tooltip-item-no-indicator"},[e.createElementVNode("div",ss,[e.createElementVNode("div",ns,e.toDisplayString(s.text),1)])]))),128))]))),128))])):e.createCommentVNode("",!0),ve(P.value.categoryIndex).markers.length>0?(e.openBlock(),e.createElementBlock("div",rs,[o[8]||(o[8]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",is,e.toDisplayString(e.unref(D)("chart.tooltip.markers")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve(P.value.categoryIndex).markers,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`tooltip-marker-${l}`,class:"dss-tooltip-item"},[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("div",cs,[e.createElementVNode("div",us,e.toDisplayString(a.title),1),a.description?(e.openBlock(),e.createElementBlock("div",ds,e.toDisplayString(a.description),1)):e.createCommentVNode("",!0)])]))),128))])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("div",ms,[e.createElementVNode("div",hs,e.toDisplayString(Y.value?ro():ne.categories[$.value.categoryIndex]||`Category ${$.value.categoryIndex+1}`),1),Y.value?(e.openBlock(),e.createElementBlock("div",vs,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value.data,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-tooltip-${l}`,class:"dss-bubble-tooltip-item"},e.toDisplayString(a.value),1))),128))])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList($.value.data,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-tooltip-${l}`,class:"dss-tooltip-series"},[e.createElementVNode("div",{class:"dss-tooltip-series-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("span",gs,e.toDisplayString(a.seriesName)+":",1),e.createElementVNode("span",ps,e.toDisplayString(a.value),1)]))),128))]),ve($.value.categoryIndex).flagGroups.length>0?(e.openBlock(),e.createElementBlock("div",fs,[o[9]||(o[9]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",ys,e.toDisplayString(e.unref(D)("chart.tooltip.flags")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve($.value.categoryIndex).flagGroups,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-flag-group-${l}`},[e.createElementVNode("div",ks,[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("span",null,e.toDisplayString(a.type),1)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.flags,(s,n)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-flag-${l}-${n}`,class:"dss-tooltip-item dss-tooltip-item-no-indicator"},[e.createElementVNode("div",Cs,[e.createElementVNode("div",xs,e.toDisplayString(s.text),1)])]))),128))]))),128))])):e.createCommentVNode("",!0),ve($.value.categoryIndex).markers.length>0?(e.openBlock(),e.createElementBlock("div",Ms,[o[10]||(o[10]=e.createElementVNode("div",{class:"dss-tooltip-separator"},null,-1)),e.createElementVNode("div",ws,e.toDisplayString(e.unref(D)("chart.tooltip.markers")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(ve($.value.categoryIndex).markers,(a,l)=>(e.openBlock(),e.createElementBlock("div",{key:`crosshair-dss-marker-${l}`,class:"dss-tooltip-item"},[e.createElementVNode("div",{class:"dss-tooltip-item-indicator",style:e.normalizeStyle({backgroundColor:a.color})},null,4),e.createElementVNode("div",bs,[e.createElementVNode("div",Es,e.toDisplayString(a.title),1),a.description?(e.openBlock(),e.createElementBlock("div",Bs,e.toDisplayString(a.description),1)):e.createCommentVNode("",!0)])]))),128))])):e.createCommentVNode("",!0)],64))],6)):e.createCommentVNode("",!0),W.value&&Ce.value&&m.value.scale>1?(e.openBlock(),e.createElementBlock("div",{key:2,class:"dss-zoom-indicator",onClick:Je},[o[11]||(o[11]=e.createElementVNode("span",{style:{display:"inline-block",transform:"scaleX(-1)","font-size":"14px"}},"⌕",-1)),e.createTextVNode(" "+e.toDisplayString(Math.round(m.value.scale*100))+"% "+e.toDisplayString(e.unref(D)("chart.zoom.doubleClickToReset")),1)])):e.createCommentVNode("",!0)],46,Bo),Z.value.show?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dss-chart-context-menu",style:e.normalizeStyle({left:Z.value.x+"px",top:Z.value.y+"px"}),onClick:o[1]||(o[1]=e.withModifiers(()=>{},["stop"]))},[te.value.addMarker?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dss-context-menu-item",onClick:Pa},e.toDisplayString(e.unref(D)("chart.contextMenu.addMarker")),1)):e.createCommentVNode("",!0),T.value.length>0?(e.openBlock(),e.createElementBlock("div",{key:1,class:"dss-context-menu-item",onClick:Ha},e.toDisplayString(e.unref(D)("chart.contextMenu.clearAllMarkers")),1)):e.createCommentVNode("",!0),te.value.addMarker&&(te.value.downloadSvg||te.value.downloadPng||te.value.downloadCsv||je.value.length>0)?(e.openBlock(),e.createElementBlock("div",Ss)):e.createCommentVNode("",!0),te.value.downloadSvg?(e.openBlock(),e.createElementBlock("div",{key:3,class:"dss-context-menu-item",onClick:Ta},e.toDisplayString(e.unref(D)("chart.contextMenu.downloadSvg")),1)):e.createCommentVNode("",!0),te.value.downloadPng?(e.openBlock(),e.createElementBlock("div",{key:4,class:"dss-context-menu-item",onClick:Ya},e.toDisplayString(e.unref(D)("chart.contextMenu.downloadPng")),1)):e.createCommentVNode("",!0),te.value.downloadCsv?(e.openBlock(),e.createElementBlock("div",{key:5,class:"dss-context-menu-item",onClick:Ra},e.toDisplayString(e.unref(D)("chart.contextMenu.downloadCsv")),1)):e.createCommentVNode("",!0),je.value.length>0?(e.openBlock(),e.createElementBlock(e.Fragment,{key:6},[te.value.downloadSvg||te.value.downloadPng||te.value.downloadCsv?(e.openBlock(),e.createElementBlock("div",Vs)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(je.value,(a,l)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:"custom-"+l},[a.separator?(e.openBlock(),e.createElementBlock("div",$s)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(Va(a)),style:e.normalizeStyle($a(a)),onClick:s=>Oa(a)},[a.template?(e.openBlock(),e.createElementBlock("div",{key:0,innerHTML:Sa(a),class:"dss-custom-menu-content"},null,8,Ds)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[a.icon?(e.openBlock(),e.createElementBlock("span",Ls,e.toDisplayString(a.icon),1)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(a.label),1)],64))],14,_s)],64))),128))],64)):e.createCommentVNode("",!0)],4)):e.createCommentVNode("",!0),L.value.show?(e.openBlock(),e.createElementBlock("div",{key:1,class:"dss-marker-modal-overlay",onClick:xe},[e.createElementVNode("div",{class:"dss-marker-modal",onClick:o[6]||(o[6]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",zs,[e.createElementVNode("h3",null,e.toDisplayString(Ve.value?e.unref(D)("chart.modalMarker.editMarker"):e.unref(D)("chart.contextMenu.addMarker")),1),e.createElementVNode("button",{class:"dss-modal-close-btn",onClick:xe},"×")]),e.createElementVNode("div",Ns,[e.createElementVNode("div",Hs,[e.createElementVNode("label",As,[e.createTextVNode(e.toDisplayString(e.unref(D)("chart.modalMarker.title"))+" ",1),o[12]||(o[12]=e.createElementVNode("span",{style:{color:"hsl(345, 94%, 44%)"}},"*",-1))]),e.withDirectives(e.createElementVNode("input",{id:"dss-marker-title","onUpdate:modelValue":o[2]||(o[2]=a=>L.value.title=a),type:"text",placeholder:e.unref(D)("chart.modalMarker.placeholderTitle"),class:"dss-form-input",onKeyup:e.withKeys(Et,["enter"])},null,40,Fs),[[e.vModelText,L.value.title]])]),e.createElementVNode("div",Xs,[e.createElementVNode("label",Is,e.toDisplayString(e.unref(D)("chart.modalMarker.description")),1),e.withDirectives(e.createElementVNode("textarea",{id:"dss-marker-description","onUpdate:modelValue":o[3]||(o[3]=a=>L.value.description=a),placeholder:e.unref(D)("chart.modalMarker.placeholderDescription"),class:"dss-form-textarea",rows:"3"},null,8,Ts),[[e.vModelText,L.value.description]])]),Mt.value.length>1?(e.openBlock(),e.createElementBlock("div",Ys,[e.createElementVNode("label",Rs,e.toDisplayString(e.unref(D)("chart.modalMarker.iconType")),1),e.withDirectives(e.createElementVNode("select",{id:"dss-marker-type","onUpdate:modelValue":o[4]||(o[4]=a=>L.value.type=a),class:"form-select"},[e.createElementVNode("option",Os,e.toDisplayString(e.unref(D)("chart.modalMarker.defaultIcon")),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Mt.value.filter(a=>a!=="default"),a=>(e.openBlock(),e.createElementBlock("option",{key:a,value:a},e.toDisplayString(a.charAt(0).toUpperCase()+a.slice(1)),9,Ps))),128))],512),[[e.vModelSelect,L.value.type]])])):e.createCommentVNode("",!0),e.createElementVNode("div",Zs,[e.createElementVNode("label",null,e.toDisplayString(e.unref(D)("chart.modalMarker.iconPreview")),1),e.createElementVNode("div",js,[e.createElementVNode("img",{src:wt({type:L.value.type}),alt:"Marker Icon Preview",class:"preview-icon",style:{width:"32px",height:"32px","border-radius":"50%",border:"2px solid #ddd"},onError:o[5]||(o[5]=a=>a.target.style.display="none")},null,40,Us)])])]),e.createElementVNode("div",Ws,[e.createElementVNode("div",qs,[Ve.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"dss-btn dss-btn-danger",onClick:La},e.toDisplayString(e.unref(D)("chart.modalMarker.deleteMarker")),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Gs,[e.createElementVNode("button",{class:"dss-btn dss-btn-secondary",onClick:xe},e.toDisplayString(e.unref(D)("chart.modalMarker.cancel")),1),e.createElementVNode("button",{class:"dss-btn dss-btn-primary",onClick:Et,disabled:!L.value.title.trim()},e.toDisplayString(Ve.value?e.unref(D)("chart.modalMarker.save"):e.unref(D)("chart.contextMenu.addMarker")),9,Ks)])])])])):e.createCommentVNode("",!0)],64))}}),en={contextMenu:{addMarker:"Add Marker",clearAllMarkers:"Clear All Markers",downloadSvg:"Download SVG",downloadPng:"Download PNG",downloadCsv:"Download CSV"},modalMarker:{editMarker:"Edit Marker",title:"Title",description:"Description",iconType:"Icon Type",defaultIcon:"Default Logo",iconPreview:"Icon Preview",deleteMarker:"Delete Marker",cancel:"Cancel",save:"Save",placeholderTitle:"Enter marker title",placeholderDescription:"Enter marker description (optional)"},zoom:{doubleClickToReset:"(Double-click to reset)"},csv:{chartTitle:"Chart Title",chartSubtitle:"Chart Subtitle",generated:"Generated"},fallback:{item:"Item",axis:"Axis"},tooltip:{flags:"Flags",markers:"Markers",manualFlags:"Manual Flags",autoFlags:"Auto Flags"}},tn={chart:en},an={contextMenu:{addMarker:"Ajouter un marqueur",clearAllMarkers:"Effacer tous les marqueurs",downloadSvg:"Télécharger SVG",downloadPng:"Télécharger PNG",downloadCsv:"Télécharger CSV"},modalMarker:{editMarker:"Modifier le marqueur",title:"Titre",description:"Description",iconType:"Type d'icône",defaultIcon:"Logo par défaut",iconPreview:"Prévisualisation de l'icône",deleteMarker:"Suprimer le marqueur",cancel:"Annuler",save:"Sauvegarder",placeholderTitle:"Entrez le titre du marqueur",placeholderDescription:"Entrez la description du marqueur (optionnel)"},zoom:{doubleClickToReset:"(Double-cliquez pour réinitialiser)"},csv:{chartTitle:"Titre du graphique",chartSubtitle:"Sous-titre du graphique",generated:"Généré"},fallback:{item:"Objet",axis:"Axe"},tooltip:{flags:"Drapeaux",markers:"Marqueurs",manualFlags:"Drapeaux manuels",autoFlags:"Drapeaux automatiques"}},on={chart:an},ln={contextMenu:{addMarker:"Markering toevoegen",clearAllMarkers:"Wis alle markers",downloadSvg:"SVG downloaden",downloadPng:"PNG downloaden",downloadCsv:"CSV downloaden"},modalMarker:{editMarker:"Markering bewerken",title:"Titel",description:"Beschrijving",iconType:"Icoon Type",defaultIcon:"Standaard Logo",iconPreview:"Icoon Voorbeeld",deleteMarker:"Markering verwijderen",cancel:"Annuleren",save:"Opslaan",placeholderTitle:"Voer marker titel in",placeholderDescription:"Voer marker beschrijving in (optioneel)"},zoom:{doubleClickToReset:"(Dubbelklik om te resetten)"},csv:{chartTitle:"Grafiek Titel",chartSubtitle:"Grafiek Ondertitel",generated:"Gegenereerd"},fallback:{item:"Item",axis:"As"},tooltip:{flags:"Vlaggen",markers:"Markeringen",manualFlags:"Handmatige Vlaggen",autoFlags:"Automatische Vlaggen"}},sn={chart:ln},lt={en:tn,fr:on,nl:sn};function nn(ne){Object.keys(lt).forEach(D=>{ne.global.mergeLocaleMessage(D,lt[D])})}qt.createI18n({legacy:!1,locale:"en",messages:lt});exports.DSSChart=Js;exports.addDSSChartTranslations=nn;
|