@oliasoft-open-source/charts-library 5.0.8-beta-1 → 5.0.8-beta-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. package/dist/assets/{Color-YHDXOIA2-CdwL15G5.js → Color-YHDXOIA2-4v8Ep5yA.js} +1 -1
  2. package/dist/assets/{DocsRenderer-CFRXHY34-Dg2X56DC.js → DocsRenderer-CFRXHY34-DuvngF7q.js} +3 -3
  3. package/dist/assets/{bar-chart.stories-CMHZnlP4.js → bar-chart.stories-BtoqoUxl.js} +1 -1
  4. package/dist/assets/{entry-preview-Dk_wWDkt.js → entry-preview-CuUmUEeH.js} +1 -1
  5. package/dist/assets/{get-draggableData-Dccb4oAz.js → get-draggableData-DpL-PCw1.js} +1 -1
  6. package/dist/assets/{iframe-BAfMmzoz.js → iframe-BsL3XxOF.js} +2 -2
  7. package/dist/assets/{legend-Dl2DUlTl.js → legend-DU0eJsZy.js} +1 -1
  8. package/dist/assets/{legend-context-CUxjGljk.js → legend-context-BD2-S1C1.js} +18 -18
  9. package/dist/assets/line-chart-DNNbp9dj.js +1 -0
  10. package/dist/assets/{line-chart.stories-DNpxHMyZ.js → line-chart.stories-uy97k1nH.js} +1 -1
  11. package/dist/assets/{line-chart.test-case.stories-iWaQFA2t.js → line-chart.test-case.stories-Dvd9yMu2.js} +1 -1
  12. package/dist/assets/{pie-chart.stories-DQH7bOja.js → pie-chart.stories-DkA8tvR7.js} +1 -1
  13. package/dist/assets/{preview-CsgyCU-7.js → preview-2VwhhXCv.js} +1 -1
  14. package/dist/assets/{preview-CfXyMlir.js → preview-CzvgRopp.js} +2 -2
  15. package/dist/assets/{scatter-chart.stories-CM6nYYvv.js → scatter-chart.stories-H8K5l3_j.js} +1 -1
  16. package/dist/iframe.html +1 -1
  17. package/dist/index.js.js +53 -86
  18. package/dist/index.js.js.map +1 -1
  19. package/dist/line-chart/utils/get-line-chart-data-labels.d.ts +0 -3
  20. package/dist/project.json +1 -1
  21. package/dist/src/components/line-chart/utils/get-line-chart-data-labels.d.ts +0 -3
  22. package/package.json +2 -2
  23. package/dist/assets/line-chart-BvC78NXq.js +0 -1
  24. package/dist/line-chart/plugins/tooltip-null-guard.d.ts +0 -2
  25. package/dist/src/components/line-chart/plugins/tooltip-null-guard.d.ts +0 -2
@@ -1,4 +1,4 @@
1
- import{j as a}from"./jsx-runtime-Y5Ju2SGo.js";import{r as s}from"./index-eCxJ45ll.js";import{D as ea,B as l}from"./legend-Dl2DUlTl.js";import{L as c}from"./line-chart-BvC78NXq.js";import{D as la}from"./legend-context-CUxjGljk.js";import"./index-BGqSdrBK.js";import"./index-D3-0uUTW.js";import"./index-B-BONL6g.js";import"./get-draggableData-Dccb4oAz.js";const ta="chartOne-plan-view-chart-controls",na={datasets:[{label:"CH-4ST",lineTension:0,borderColor:"#a30125",pointBackgroundColor:"#a30125",pointRadius:0,pointHoverRadius:0,pointHitRadius:0,borderWidth:2,fill:!1,data:[{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:.3927,label:[]},{x:0,y:2.4838,label:[]},{x:0,y:7.1727,label:[]},{x:0,y:14.4238,label:[]},{x:0,y:24.1818,label:[]},{x:0,y:36.3728,label:[]},{x:0,y:50.9039,label:[]},{x:0,y:67.6648,label:[]},{x:0,y:86.528,label:[]},{x:0,y:107.3503,label:[]},{x:0,y:129.9733,label:[]},{x:0,y:154.2251,label:[]},{x:0,y:179.9215,label:[]},{x:0,y:206.867,label:[]},{x:0,y:234.8569,label:[]},{x:0,y:263.6785,label:[]},{x:0,y:293.1127,label:[]},{x:0,y:322.9358,label:[]},{x:0,y:344.2833,label:[]},{x:0,y:352.9221,label:[]},{x:0,y:382.9221,label:[]},{x:0,y:412.9221,label:[]},{x:0,y:442.9221,label:[]},{x:0,y:472.9221,label:[]},{x:0,y:502.9221,label:[]},{x:0,y:532.9221,label:[]},{x:0,y:562.9221,label:[]},{x:0,y:592.9221,label:[]},{x:0,y:622.9221,label:[]},{x:0,y:644.2821,label:[]}]},{label:"CH-4",lineTension:0,borderColor:"#0154a3",pointBackgroundColor:"#0154a3",pointRadius:0,pointHoverRadius:0,pointHitRadius:0,borderWidth:2,fill:!1,data:[{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]}]}]},oa={direction:"vertical",axes:{x:[{label:"E/W [m]",position:"top"}],y:[{label:"N/S [m]",position:"left"}]},additionalAxesOptions:{chartScaleType:"linear"},graph:{showDataLabels:!0,showMinorGridlines:!0,lineTension:0},chartStyling:{height:"100%"},annotations:{showAnnotations:!0,enableDragAnnotation:!0,annotationsData:[]}},sa={controlsPortalId:ta,data:na,options:oa},m=[{label:"Dataset 1",data:[{x:0,y:0},{x:5,y:25}]}],ra={data:{datasets:m},options:{title:"Chart title",chartStyling:{height:"100%"}}},ma={title:"LineChart / Test Cases",component:c,args:{chart:ra}},y=()=>a.jsx(c,{chart:{data:{datasets:[{label:"Duration %",lineTension:"0",pointHitRadius:10,borderColor:"#dc3912",pointBackgroundColor:"#dc3912",borderWidth:2,pointRadius:4,data:[{x:3,y:0},{x:3,y:100}],yAxisID:"y2"}]},options:{direction:"vertical",axes:{x:[{label:"Duration (TempSim long) [d]",position:"bottom"}],y:[{label:"Probability"},{label:"Percentage [%]"}]},annotations:{annotationsData:[{annotationAxis:"y2",color:"darkgrey",value:16},{displayDragCoordinates:!1,color:"#ff9900",label:"P16",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:17,yMin:15,yScaleID:"y2"},{annotationAxis:"y2",color:"darkgrey",value:66},{displayDragCoordinates:!1,color:"#109618",label:"P66",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:67,yMin:65,yScaleID:"y2"},{annotationAxis:"y2",color:"darkgrey",value:78},{displayDragCoordinates:!1,color:"#990099",label:"P78",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:79,yMin:77,yScaleID:"y2"},{annotationAxis:"y2",color:"darkgrey",value:90},{displayDragCoordinates:!1,color:"#0099c6",label:"P90",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:91,yMin:89,yScaleID:"y2"}],enableDragAnnotation:!0,showAnnotations:!0},additionalAxesOptions:{range:{x:{min:3}},chartScaleType:"linear",reverse:!1},graph:{showMinorGridlines:!0},chartStyling:{height:"100%"},chartOptions:{showPoints:!1,enableDragAnnotation:!0}}}}),b=()=>a.jsx(c,{chart:sa}),x=()=>{const[u,n]=s.useState(m),[L,d]=s.useState(0),[g,_]=s.useState(!1),[D,i]=s.useState(!0),[O,C]=s.useState(!1),[f,W]=s.useState(!0),[A,E]=s.useState("linear"),[S,p]=s.useState(!1),M=s.useMemo(()=>({title:"Stress Tester",axes:{x:[{label:"X Axis"}],y:[{label:"Y Axis"}]},chartOptions:{enableDragAnnotation:!0},annotations:{showAnnotations:!0,enableDragAnnotation:!0,annotationsData:[{enableDrag:!0,type:"box",xMin:3.5,xMax:4,yMin:5,yMax:10,color:"rgba(255, 0, 0, 0.3)",label:"DRAG ME!"},{type:"point",enableDrag:!0,xValue:1,yValue:10,radius:ea,color:"red",label:"Draggable Point",labelConfig:{font:`bold 8px ${la}`,color:"rgba(0,0,0,0.7)"}}]},chartStyling:{height:"100%",squareAspectRatio:f},additionalAxesOptions:{chartScaleType:A},legend:{display:!1}}),[u,f,A]),U=s.useMemo(()=>({data:{datasets:u},options:M}),[u,M]),V=()=>{p(!0),i(!0),setTimeout(()=>{i(!1),p(!1)},5e3)},F=()=>{n(m),d(e=>e+1),i(!0),p(!1)},$=()=>{C(!0);const e=[],o=50,r=40;for(let t=0;t<o;t++)setTimeout(()=>{e.push({label:`DS ${t+1}`,data:[{x:t,y:Math.random()*100},{x:t+1,y:Math.random()*100}],borderColor:`hsl(${t*(360/o)}, 100%, 50%)`}),n([...e]),t===15&&(console.warn("Forcing unmount mid-update"),i(!1)),t===25&&(console.warn("Remounting chart"),i(!0),d(h=>h+1)),t===o-1&&(console.log("Async injection complete"),C(!1))},t*r)},z=()=>{n([{label:"Broken Dataset",borderColor:"red"}])},X=()=>{n([])},Y=()=>{n([{label:"X/Y Points",data:[{x:0,y:0},{x:1,y:1}],borderColor:"green"},{label:"Y Only Array",data:[2,4,6],borderColor:"blue"}])},K=()=>{n([{label:"Bad Y Axis Ref",yAxisID:"y-missing",data:[{x:1,y:1},{x:2,y:2}],borderColor:"purple"}])},H=()=>{const e=Array.from({length:5e3},(o,r)=>({x:r,y:Math.sin(r/100)*100}));n([{label:"Big 5k Points",data:e,borderColor:"orange"}])},N=()=>{n([{label:"Corrupt Point Dataset",data:[{x:0,y:10},{x:1},{y:20},null,void 0,"bad-value",{x:5,y:50}],borderColor:"red"}])},G=()=>{n([{label:"Valid A",data:[{x:0,y:1},{x:1,y:2}],borderColor:"blue"},{label:"Corrupt",data:"not-an-array",borderColor:"red"},{label:"Valid B",data:[{x:0,y:3},{x:1,y:4}],borderColor:"green"}])},q=()=>{const e=[];for(let t=0;t<4;t++){const h=Array.from({length:3e3},(ia,aa)=>({x:aa,y:Math.random()*100}));e.push({label:`Stream DS ${t+1}`,data:h,borderColor:`hsl(${t*90}, 100%, 50%)`})}let o=0;const r=setInterval(()=>{n(e.slice(0,o+1)),o++,o===e.length&&clearInterval(r)},500)},J=()=>{E(e=>e==="linear"?"logarithmic":"linear")},Q=()=>{W(e=>!e)},Z=()=>{let e=0;const o=setInterval(()=>{d(r=>r+1),e++,e===100&&clearInterval(o)},30)};return a.jsxs(a.Fragment,{children:[a.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginBottom:16},children:[a.jsx(l,{label:"Reset to Initial State",colored:!0,onClick:F}),a.jsx(l,{label:"Async Dataset + Unmount",onClick:$,disabled:O}),a.jsx(l,{label:"Set Invalid Dataset",onClick:z}),a.jsx(l,{label:"Set Empty Dataset",onClick:X}),a.jsx(l,{label:"Mixed Data Formats",onClick:Y}),a.jsx(l,{label:"Bad Axis Ref",onClick:K}),a.jsx(l,{label:"Toggle size",onClick:()=>_(!g)}),a.jsx(l,{label:"Toggle Axis Type",onClick:J}),a.jsx(l,{label:"Toggle Aspect Ratio",onClick:Q}),a.jsx(l,{label:"Spam Re-renders",onClick:Z}),a.jsx(l,{label:D?"Unmount Chart":"Remount Chart",onClick:()=>i(e=>!e)}),a.jsx(l,{label:"Manual Re-render",onClick:()=>d(e=>e+1)}),a.jsx(l,{label:"Empty Dataset",onClick:()=>n([])}),a.jsx(l,{label:"Add 5k Points Slowly",onClick:H}),a.jsx(l,{label:"Dataset With Invalid Point",onClick:N}),a.jsx(l,{label:"Malformed Dataset Combo",onClick:G}),a.jsx(l,{label:"Cycle Big Load (Async)",onClick:q}),a.jsx(l,{label:"Timed Unmount During Drag",onClick:V,disabled:S})]}),S&&a.jsx("span",{style:{color:"crimson",fontWeight:"bold"},children:"⏱ Unmounting in 5s – start dragging!"}),a.jsx("div",{style:{height:g?300:null,width:g?300:null,padding:"var(--padding)",overflow:"auto"},children:D?a.jsx(c,{chart:U},L):a.jsx("div",{style:{padding:40,textAlign:"center"},children:"Chart unmounted"})})]})};y.__docgenInfo={description:"",methods:[],displayName:"PartialRangeWithSimilarValues"};b.__docgenInfo={description:"",methods:[],displayName:"closeToValueInDifferentAxes"};x.__docgenInfo={description:"",methods:[],displayName:"StressTest"};var T,v,R;y.parameters={...y.parameters,docs:{...(T=y.parameters)==null?void 0:T.docs,source:{originalSource:`() => {
1
+ import{j as a}from"./jsx-runtime-Y5Ju2SGo.js";import{r as s}from"./index-eCxJ45ll.js";import{D as ea,B as l}from"./legend-DU0eJsZy.js";import{L as c}from"./line-chart-DNNbp9dj.js";import{D as la}from"./legend-context-BD2-S1C1.js";import"./index-BGqSdrBK.js";import"./index-D3-0uUTW.js";import"./index-B-BONL6g.js";import"./get-draggableData-DpL-PCw1.js";const ta="chartOne-plan-view-chart-controls",na={datasets:[{label:"CH-4ST",lineTension:0,borderColor:"#a30125",pointBackgroundColor:"#a30125",pointRadius:0,pointHoverRadius:0,pointHitRadius:0,borderWidth:2,fill:!1,data:[{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:.3927,label:[]},{x:0,y:2.4838,label:[]},{x:0,y:7.1727,label:[]},{x:0,y:14.4238,label:[]},{x:0,y:24.1818,label:[]},{x:0,y:36.3728,label:[]},{x:0,y:50.9039,label:[]},{x:0,y:67.6648,label:[]},{x:0,y:86.528,label:[]},{x:0,y:107.3503,label:[]},{x:0,y:129.9733,label:[]},{x:0,y:154.2251,label:[]},{x:0,y:179.9215,label:[]},{x:0,y:206.867,label:[]},{x:0,y:234.8569,label:[]},{x:0,y:263.6785,label:[]},{x:0,y:293.1127,label:[]},{x:0,y:322.9358,label:[]},{x:0,y:344.2833,label:[]},{x:0,y:352.9221,label:[]},{x:0,y:382.9221,label:[]},{x:0,y:412.9221,label:[]},{x:0,y:442.9221,label:[]},{x:0,y:472.9221,label:[]},{x:0,y:502.9221,label:[]},{x:0,y:532.9221,label:[]},{x:0,y:562.9221,label:[]},{x:0,y:592.9221,label:[]},{x:0,y:622.9221,label:[]},{x:0,y:644.2821,label:[]}]},{label:"CH-4",lineTension:0,borderColor:"#0154a3",pointBackgroundColor:"#0154a3",pointRadius:0,pointHoverRadius:0,pointHitRadius:0,borderWidth:2,fill:!1,data:[{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]},{x:0,y:0,label:[]}]}]},oa={direction:"vertical",axes:{x:[{label:"E/W [m]",position:"top"}],y:[{label:"N/S [m]",position:"left"}]},additionalAxesOptions:{chartScaleType:"linear"},graph:{showDataLabels:!0,showMinorGridlines:!0,lineTension:0},chartStyling:{height:"100%"},annotations:{showAnnotations:!0,enableDragAnnotation:!0,annotationsData:[]}},sa={controlsPortalId:ta,data:na,options:oa},m=[{label:"Dataset 1",data:[{x:0,y:0},{x:5,y:25}]}],ra={data:{datasets:m},options:{title:"Chart title",chartStyling:{height:"100%"}}},ma={title:"LineChart / Test Cases",component:c,args:{chart:ra}},y=()=>a.jsx(c,{chart:{data:{datasets:[{label:"Duration %",lineTension:"0",pointHitRadius:10,borderColor:"#dc3912",pointBackgroundColor:"#dc3912",borderWidth:2,pointRadius:4,data:[{x:3,y:0},{x:3,y:100}],yAxisID:"y2"}]},options:{direction:"vertical",axes:{x:[{label:"Duration (TempSim long) [d]",position:"bottom"}],y:[{label:"Probability"},{label:"Percentage [%]"}]},annotations:{annotationsData:[{annotationAxis:"y2",color:"darkgrey",value:16},{displayDragCoordinates:!1,color:"#ff9900",label:"P16",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:17,yMin:15,yScaleID:"y2"},{annotationAxis:"y2",color:"darkgrey",value:66},{displayDragCoordinates:!1,color:"#109618",label:"P66",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:67,yMin:65,yScaleID:"y2"},{annotationAxis:"y2",color:"darkgrey",value:78},{displayDragCoordinates:!1,color:"#990099",label:"P78",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:79,yMin:77,yScaleID:"y2"},{annotationAxis:"y2",color:"darkgrey",value:90},{displayDragCoordinates:!1,color:"#0099c6",label:"P90",dragAxis:"y",enableDrag:!0,resizable:!1,type:"box",xMax:3,xMin:3,yMax:91,yMin:89,yScaleID:"y2"}],enableDragAnnotation:!0,showAnnotations:!0},additionalAxesOptions:{range:{x:{min:3}},chartScaleType:"linear",reverse:!1},graph:{showMinorGridlines:!0},chartStyling:{height:"100%"},chartOptions:{showPoints:!1,enableDragAnnotation:!0}}}}),b=()=>a.jsx(c,{chart:sa}),x=()=>{const[u,n]=s.useState(m),[L,d]=s.useState(0),[g,_]=s.useState(!1),[D,i]=s.useState(!0),[O,C]=s.useState(!1),[f,W]=s.useState(!0),[A,E]=s.useState("linear"),[S,p]=s.useState(!1),M=s.useMemo(()=>({title:"Stress Tester",axes:{x:[{label:"X Axis"}],y:[{label:"Y Axis"}]},chartOptions:{enableDragAnnotation:!0},annotations:{showAnnotations:!0,enableDragAnnotation:!0,annotationsData:[{enableDrag:!0,type:"box",xMin:3.5,xMax:4,yMin:5,yMax:10,color:"rgba(255, 0, 0, 0.3)",label:"DRAG ME!"},{type:"point",enableDrag:!0,xValue:1,yValue:10,radius:ea,color:"red",label:"Draggable Point",labelConfig:{font:`bold 8px ${la}`,color:"rgba(0,0,0,0.7)"}}]},chartStyling:{height:"100%",squareAspectRatio:f},additionalAxesOptions:{chartScaleType:A},legend:{display:!1}}),[u,f,A]),U=s.useMemo(()=>({data:{datasets:u},options:M}),[u,M]),V=()=>{p(!0),i(!0),setTimeout(()=>{i(!1),p(!1)},5e3)},F=()=>{n(m),d(e=>e+1),i(!0),p(!1)},$=()=>{C(!0);const e=[],o=50,r=40;for(let t=0;t<o;t++)setTimeout(()=>{e.push({label:`DS ${t+1}`,data:[{x:t,y:Math.random()*100},{x:t+1,y:Math.random()*100}],borderColor:`hsl(${t*(360/o)}, 100%, 50%)`}),n([...e]),t===15&&(console.warn("Forcing unmount mid-update"),i(!1)),t===25&&(console.warn("Remounting chart"),i(!0),d(h=>h+1)),t===o-1&&(console.log("Async injection complete"),C(!1))},t*r)},z=()=>{n([{label:"Broken Dataset",borderColor:"red"}])},X=()=>{n([])},Y=()=>{n([{label:"X/Y Points",data:[{x:0,y:0},{x:1,y:1}],borderColor:"green"},{label:"Y Only Array",data:[2,4,6],borderColor:"blue"}])},K=()=>{n([{label:"Bad Y Axis Ref",yAxisID:"y-missing",data:[{x:1,y:1},{x:2,y:2}],borderColor:"purple"}])},H=()=>{const e=Array.from({length:5e3},(o,r)=>({x:r,y:Math.sin(r/100)*100}));n([{label:"Big 5k Points",data:e,borderColor:"orange"}])},N=()=>{n([{label:"Corrupt Point Dataset",data:[{x:0,y:10},{x:1},{y:20},null,void 0,"bad-value",{x:5,y:50}],borderColor:"red"}])},G=()=>{n([{label:"Valid A",data:[{x:0,y:1},{x:1,y:2}],borderColor:"blue"},{label:"Corrupt",data:"not-an-array",borderColor:"red"},{label:"Valid B",data:[{x:0,y:3},{x:1,y:4}],borderColor:"green"}])},q=()=>{const e=[];for(let t=0;t<4;t++){const h=Array.from({length:3e3},(ia,aa)=>({x:aa,y:Math.random()*100}));e.push({label:`Stream DS ${t+1}`,data:h,borderColor:`hsl(${t*90}, 100%, 50%)`})}let o=0;const r=setInterval(()=>{n(e.slice(0,o+1)),o++,o===e.length&&clearInterval(r)},500)},J=()=>{E(e=>e==="linear"?"logarithmic":"linear")},Q=()=>{W(e=>!e)},Z=()=>{let e=0;const o=setInterval(()=>{d(r=>r+1),e++,e===100&&clearInterval(o)},30)};return a.jsxs(a.Fragment,{children:[a.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginBottom:16},children:[a.jsx(l,{label:"Reset to Initial State",colored:!0,onClick:F}),a.jsx(l,{label:"Async Dataset + Unmount",onClick:$,disabled:O}),a.jsx(l,{label:"Set Invalid Dataset",onClick:z}),a.jsx(l,{label:"Set Empty Dataset",onClick:X}),a.jsx(l,{label:"Mixed Data Formats",onClick:Y}),a.jsx(l,{label:"Bad Axis Ref",onClick:K}),a.jsx(l,{label:"Toggle size",onClick:()=>_(!g)}),a.jsx(l,{label:"Toggle Axis Type",onClick:J}),a.jsx(l,{label:"Toggle Aspect Ratio",onClick:Q}),a.jsx(l,{label:"Spam Re-renders",onClick:Z}),a.jsx(l,{label:D?"Unmount Chart":"Remount Chart",onClick:()=>i(e=>!e)}),a.jsx(l,{label:"Manual Re-render",onClick:()=>d(e=>e+1)}),a.jsx(l,{label:"Empty Dataset",onClick:()=>n([])}),a.jsx(l,{label:"Add 5k Points Slowly",onClick:H}),a.jsx(l,{label:"Dataset With Invalid Point",onClick:N}),a.jsx(l,{label:"Malformed Dataset Combo",onClick:G}),a.jsx(l,{label:"Cycle Big Load (Async)",onClick:q}),a.jsx(l,{label:"Timed Unmount During Drag",onClick:V,disabled:S})]}),S&&a.jsx("span",{style:{color:"crimson",fontWeight:"bold"},children:"⏱ Unmounting in 5s – start dragging!"}),a.jsx("div",{style:{height:g?300:null,width:g?300:null,padding:"var(--padding)",overflow:"auto"},children:D?a.jsx(c,{chart:U},L):a.jsx("div",{style:{padding:40,textAlign:"center"},children:"Chart unmounted"})})]})};y.__docgenInfo={description:"",methods:[],displayName:"PartialRangeWithSimilarValues"};b.__docgenInfo={description:"",methods:[],displayName:"closeToValueInDifferentAxes"};x.__docgenInfo={description:"",methods:[],displayName:"StressTest"};var T,v,R;y.parameters={...y.parameters,docs:{...(T=y.parameters)==null?void 0:T.docs,source:{originalSource:`() => {
2
2
  return <LineChart chart={{
3
3
  data: {
4
4
  datasets: [{
@@ -1,4 +1,4 @@
1
- import{j as H}from"./jsx-runtime-Y5Ju2SGo.js";import{r as Le}from"./index-eCxJ45ll.js";import{A as Oe,P as He,C as w,g as je,T as Ie,L as B,a as Ae,d as ve,r as Ne,b as we,s as Me,c as $e,e as ye,f as We,h as Re,i as Ee,j as Ue,k as Be,l as Fe,p as Ve,m as Ge,n as Ze,o as qe,q as Xe,t as Ye}from"./legend-context-CUxjGljk.js";import{D as ze,a as Je}from"./bar-chart-const-Cgj9sgUU.js";import"./index-B-BONL6g.js";const Ke="_chart_1jdnu_1",Qe="_fixedHeight_1jdnu_13",ea="_stretchHeight_1jdnu_19",M={chart:Ke,fixedHeight:Qe,stretchHeight:ea},aa=e=>({width:e==null?void 0:e.width,height:e==null?void 0:e.height,maintainAspectRatio:(e==null?void 0:e.maintainAspectRatio)||!1,staticChartHeight:(e==null?void 0:e.staticChartHeight)||!1,performanceMode:(e==null?void 0:e.performanceMode)??!0}),ta=e=>({tooltips:(e==null?void 0:e.tooltips)??!0,showLabelsInTooltips:(e==null?void 0:e.showLabelsInTooltips)||!1,scientificNotation:(e==null?void 0:e.scientificNotation)??!0}),sa=e=>({showDataLabels:(e==null?void 0:e.showDataLabels)||!1,stacked:(e==null?void 0:e.stacked)||!1,cutout:(e==null?void 0:e.cutout)||0}),ra=e=>({display:(e==null?void 0:e.display)??!0,useDataset:(e==null?void 0:e.useDataset)||!1,position:(e==null?void 0:e.position)||He.Bottom,align:(e==null?void 0:e.align)||Oe.Center}),na=e=>({enableZoom:(e==null?void 0:e.enableZoom)||!1,enablePan:(e==null?void 0:e.enablePan)||!1}),oa=e=>({onLegendClick:e==null?void 0:e.onLegendClick,onHover:e==null?void 0:e.onHover,onUnhover:e==null?void 0:e.onUnhover}),la=e=>({labels:(e==null?void 0:e.labels)||[],datasets:(e==null?void 0:e.datasets)||[]}),Pe=e=>{const l=(e==null?void 0:e.chart)||{},s=(l==null?void 0:l.options)||{};return{testId:(l==null?void 0:l.testId)??null,data:la(l==null?void 0:l.data),options:{title:(s==null?void 0:s.title)||"",chartStyling:aa(s==null?void 0:s.chartStyling),tooltip:ta(s==null?void 0:s.tooltip),graph:sa(s==null?void 0:s.graph),legend:ra(s==null?void 0:s.legend),chartOptions:na(s==null?void 0:s.chartOptions),interactions:oa(s==null?void 0:s.interactions)}}},ia=e=>{const[l,s]=Le.useState(!1),{data:i,options:t}=e,j=(u=>{var n;const a=[...u];if(t.graph.stacked){const o={label:((n=a==null?void 0:a[0])==null?void 0:n.label)??"",backgroundColor:[],borderColor:"",borderWidth:Number(a[0].borderWidth)||1,data:[],borderDash:[]};return i.labels.map((c,d)=>{a.map((g,b)=>{o.data.push(g.data[d]);const{backgroundColor:x}=g,{borderColor:f}=g;o.backgroundColor.push((Array.isArray(x)?x[d%((f==null?void 0:f.length)||1)]:x)||w[d]+`${99-10*b}`),o.borderColor=f??""})}),[o]}return a.map((o,c)=>{const{borderWidth:d="1"}=o??{},g=parseFloat(String(d))||1,b=w[c],x=o.borderColor||b,f=o.backgroundColor||je(w);return{...o,borderWidth:g,borderColor:x,backgroundColor:f}})})(i.datasets),N=()=>t.title!==""?{display:!0,text:e.options.title}:{},I=(u,a,r)=>{var o;const{chart:n}=r??{};if(a&&n){const{index:c=0}=a;if(n.toggleDataVisibility(c),n.update(),(o=t.interactions)!=null&&o.onLegendClick){const d=n.isDatasetVisible(c);t.interactions.onLegendClick(a.text,!d)}}};return{generatedDatasets:j,getTitle:N,legendClick:I,onClick:(u,a,r)=>{r.resetZoom()},onHover:(u,a)=>{if(l&&!(a!=null&&a.length)&&(s(!1),t.interactions.onUnhover&&t.interactions.onUnhover(u)),!l&&(a!=null&&a.length)&&(s(!0),t.interactions.onHover)){const{index:r,datasetIndex:n}=a[0],o=j;t.interactions.onHover(u,n,r,o)}},getDatalabels:()=>t.graph.showDataLabels?{display:"auto",align:"center",anchor:"center",formatter:(u,a)=>{if(a.chart.getDatasetMeta(t.graph.stacked?0:a.datasetIndex).data[a.dataIndex].hidden)return"";const r=a.dataset.data[a.dataIndex],n=(r==null?void 0:r.label)||(typeof r=="number"?r:Array.isArray(r)?r.reduce((c,d,g)=>g===0?`${c} ${d}`:`${c}, ${d}`,""):"");return typeof r=="number"?Number.isInteger(n)?n:n.toFixed(2):n}}:{display:!1},getLegend:()=>({position:t.legend.position,display:t.legend.display,align:t.legend.align,labels:{boxHeight:6,boxWidth:6,usePointStyle:!0,filter:u=>{var a;return t.legend.useDataset?!((a=i.datasets[u.index])!=null&&a.hideLegend):!0}},onClick:I}),getToolTips:()=>{const u=a=>{var n;let r={};return(n=t==null?void 0:t.tooltip)!=null&&n.scientificNotation?(Math.abs(a)<ze||Math.abs(a)>Je)&&(r={roundScientificCoefficient:3}):r={scientific:!1},ve(Ne(a),r)};return{callbacks:{title:a=>{const{dataIndex:r}=a[0],n=t.graph.stacked?parseInt(String(r/i.labels.length)):r;return`${i.labels[n]}`},label:a=>{var b;const{dataIndex:r}=a,n=t.graph.stacked?r%i.datasets.length:a.datasetIndex,o=i.datasets.length>1?`${(b=i.datasets[n])==null?void 0:b.label}: `:"",c=a.dataset.data[r],d=typeof c=="object"?`${c.value||""} ${t.tooltip.showLabelsInTooltips&&c.label?"("+c.label+")":""}`:c,g=i!=null&&i.yUnit?`[${i==null?void 0:i.yUnit}]`:"";return`${o} ${u(d)} ${g}`}},padding:Ae,boxWidth:B,boxHeight:B,boxPadding:Ie,usePointStyle:!0}}}};Re.register(Ee,Ue,Be,Fe,Ve,Ge,Ze,qe,Xe,Ye);const ca=e=>{Me();const l=Pe(e),s=Le.useRef(null),{data:i,options:t,testId:y}=l,{generatedDatasets:j,getTitle:N,onClick:I,onHover:W,getDatalabels:R,getLegend:E,getToolTips:U}=ia(l);return H.jsx("div",{className:$e(M.chart,!t.chartStyling.width||!t.chartStyling.height?t.chartStyling.staticChartHeight?M.fixedHeight:M.stretchHeight:""),style:{width:t.chartStyling.width||"auto",height:t.chartStyling.height||"auto"},"data-testid":y,children:H.jsx(ye,{ref:s,data:{datasets:j,labels:t.graph.stacked?void 0:i.labels},options:{cutout:t.graph.cutout,onClick:I,responsive:!0,maintainAspectRatio:t.chartStyling.maintainAspectRatio,animation:t.chartStyling.performanceMode?!1:{duration:We.FAST},hover:{mode:"nearest",intersect:!0},onHover:W,plugins:{annotation:!1,title:N(),datalabels:R(),tooltip:U(),legend:E()}}})})},$=e=>{const{options:l}=Pe(e);return H.jsx(we,{options:l,children:H.jsx(ca,{...e})})};$.__docgenInfo={description:"",methods:[],displayName:"PieChartWithLegend",props:{chart:{required:!0,tsType:{name:"IPieChartData"},description:""},testId:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""}}};const h=["label 1","label 2","label 3"],C={label:"data1",data:[3,8,7]},_e={label:"data2",data:[1,2,3]},Te={label:"data3",data:[5,0,4]},da={label:"spacing data",offset:40,data:[3,8,7]},ua={label:"hover data",data:[3,8,7],hoverOffset:40},ke={label:"data",data:[{value:210,label:"label"},{value:333,label:"labal"},{value:248,label:"lebel"}]},ha={label:"data",data:[210,333,248]},pa={data:{labels:h,datasets:[C]}},ga={data:{labels:h,datasets:[C,_e,Te]}},ba={data:{labels:h,datasets:[C,_e,Te]},options:{title:"Stacked",graph:{stacked:!0}}},fa={data:{labels:h,datasets:[ke]},options:{title:"With custom datalabels",graph:{showDataLabels:!0}}},ma={data:{labels:h,datasets:[ha]},options:{title:"With value as datalabels",graph:{showDataLabels:!0}}},Ca={data:{labels:h,datasets:[ke]},options:{title:"With datalabels in tooltips",tooltip:{showLabelsInTooltips:!0}}},xa={data:{labels:h,datasets:[ua]},options:{title:"Hover offset"}},Da={data:{labels:h,datasets:[da]},options:{title:"Segment offset"}},Sa={data:{labels:h,datasets:[C]},options:{chartStyling:{performanceMode:!1}}},La={data:{labels:h,datasets:[C]},options:{title:"Cutout 50%",graph:{cutout:"50%"}}},Pa={data:{labels:h,datasets:[C]},options:{title:"Cutout 20 pixels",graph:{cutout:20}}},Ia={title:"PieChart",component:$,args:{chart:pa}},p=e=>H.jsx($,{...e}),A=p.bind({}),D=p.bind({});D.args={chart:ga};const S=p.bind({});S.args={chart:ba};const L=p.bind({});L.args={chart:fa};const P=p.bind({});P.args={chart:ma};const _=p.bind({});_.args={chart:Ca};const T=p.bind({});T.args={chart:Sa};const k=p.bind({});k.args={chart:La};const O=p.bind({});O.args={chart:Pa};const m=p.bind({});m.args={chart:xa};const v=p.bind({});m.args={chart:Da};var F,V,G;A.parameters={...A.parameters,docs:{...(F=A.parameters)==null?void 0:F.docs,source:{originalSource:`args => {
1
+ import{j as H}from"./jsx-runtime-Y5Ju2SGo.js";import{r as Le}from"./index-eCxJ45ll.js";import{A as Oe,P as He,C as w,g as je,T as Ie,L as B,a as Ae,d as ve,r as Ne,b as we,s as Me,c as $e,e as ye,f as We,h as Re,i as Ee,j as Ue,k as Be,l as Fe,p as Ve,m as Ge,n as Ze,o as qe,q as Xe,t as Ye}from"./legend-context-BD2-S1C1.js";import{D as ze,a as Je}from"./bar-chart-const-Cgj9sgUU.js";import"./index-B-BONL6g.js";const Ke="_chart_1jdnu_1",Qe="_fixedHeight_1jdnu_13",ea="_stretchHeight_1jdnu_19",M={chart:Ke,fixedHeight:Qe,stretchHeight:ea},aa=e=>({width:e==null?void 0:e.width,height:e==null?void 0:e.height,maintainAspectRatio:(e==null?void 0:e.maintainAspectRatio)||!1,staticChartHeight:(e==null?void 0:e.staticChartHeight)||!1,performanceMode:(e==null?void 0:e.performanceMode)??!0}),ta=e=>({tooltips:(e==null?void 0:e.tooltips)??!0,showLabelsInTooltips:(e==null?void 0:e.showLabelsInTooltips)||!1,scientificNotation:(e==null?void 0:e.scientificNotation)??!0}),sa=e=>({showDataLabels:(e==null?void 0:e.showDataLabels)||!1,stacked:(e==null?void 0:e.stacked)||!1,cutout:(e==null?void 0:e.cutout)||0}),ra=e=>({display:(e==null?void 0:e.display)??!0,useDataset:(e==null?void 0:e.useDataset)||!1,position:(e==null?void 0:e.position)||He.Bottom,align:(e==null?void 0:e.align)||Oe.Center}),na=e=>({enableZoom:(e==null?void 0:e.enableZoom)||!1,enablePan:(e==null?void 0:e.enablePan)||!1}),oa=e=>({onLegendClick:e==null?void 0:e.onLegendClick,onHover:e==null?void 0:e.onHover,onUnhover:e==null?void 0:e.onUnhover}),la=e=>({labels:(e==null?void 0:e.labels)||[],datasets:(e==null?void 0:e.datasets)||[]}),Pe=e=>{const l=(e==null?void 0:e.chart)||{},s=(l==null?void 0:l.options)||{};return{testId:(l==null?void 0:l.testId)??null,data:la(l==null?void 0:l.data),options:{title:(s==null?void 0:s.title)||"",chartStyling:aa(s==null?void 0:s.chartStyling),tooltip:ta(s==null?void 0:s.tooltip),graph:sa(s==null?void 0:s.graph),legend:ra(s==null?void 0:s.legend),chartOptions:na(s==null?void 0:s.chartOptions),interactions:oa(s==null?void 0:s.interactions)}}},ia=e=>{const[l,s]=Le.useState(!1),{data:i,options:t}=e,j=(u=>{var n;const a=[...u];if(t.graph.stacked){const o={label:((n=a==null?void 0:a[0])==null?void 0:n.label)??"",backgroundColor:[],borderColor:"",borderWidth:Number(a[0].borderWidth)||1,data:[],borderDash:[]};return i.labels.map((c,d)=>{a.map((g,b)=>{o.data.push(g.data[d]);const{backgroundColor:x}=g,{borderColor:f}=g;o.backgroundColor.push((Array.isArray(x)?x[d%((f==null?void 0:f.length)||1)]:x)||w[d]+`${99-10*b}`),o.borderColor=f??""})}),[o]}return a.map((o,c)=>{const{borderWidth:d="1"}=o??{},g=parseFloat(String(d))||1,b=w[c],x=o.borderColor||b,f=o.backgroundColor||je(w);return{...o,borderWidth:g,borderColor:x,backgroundColor:f}})})(i.datasets),N=()=>t.title!==""?{display:!0,text:e.options.title}:{},I=(u,a,r)=>{var o;const{chart:n}=r??{};if(a&&n){const{index:c=0}=a;if(n.toggleDataVisibility(c),n.update(),(o=t.interactions)!=null&&o.onLegendClick){const d=n.isDatasetVisible(c);t.interactions.onLegendClick(a.text,!d)}}};return{generatedDatasets:j,getTitle:N,legendClick:I,onClick:(u,a,r)=>{r.resetZoom()},onHover:(u,a)=>{if(l&&!(a!=null&&a.length)&&(s(!1),t.interactions.onUnhover&&t.interactions.onUnhover(u)),!l&&(a!=null&&a.length)&&(s(!0),t.interactions.onHover)){const{index:r,datasetIndex:n}=a[0],o=j;t.interactions.onHover(u,n,r,o)}},getDatalabels:()=>t.graph.showDataLabels?{display:"auto",align:"center",anchor:"center",formatter:(u,a)=>{if(a.chart.getDatasetMeta(t.graph.stacked?0:a.datasetIndex).data[a.dataIndex].hidden)return"";const r=a.dataset.data[a.dataIndex],n=(r==null?void 0:r.label)||(typeof r=="number"?r:Array.isArray(r)?r.reduce((c,d,g)=>g===0?`${c} ${d}`:`${c}, ${d}`,""):"");return typeof r=="number"?Number.isInteger(n)?n:n.toFixed(2):n}}:{display:!1},getLegend:()=>({position:t.legend.position,display:t.legend.display,align:t.legend.align,labels:{boxHeight:6,boxWidth:6,usePointStyle:!0,filter:u=>{var a;return t.legend.useDataset?!((a=i.datasets[u.index])!=null&&a.hideLegend):!0}},onClick:I}),getToolTips:()=>{const u=a=>{var n;let r={};return(n=t==null?void 0:t.tooltip)!=null&&n.scientificNotation?(Math.abs(a)<ze||Math.abs(a)>Je)&&(r={roundScientificCoefficient:3}):r={scientific:!1},ve(Ne(a),r)};return{callbacks:{title:a=>{const{dataIndex:r}=a[0],n=t.graph.stacked?parseInt(String(r/i.labels.length)):r;return`${i.labels[n]}`},label:a=>{var b;const{dataIndex:r}=a,n=t.graph.stacked?r%i.datasets.length:a.datasetIndex,o=i.datasets.length>1?`${(b=i.datasets[n])==null?void 0:b.label}: `:"",c=a.dataset.data[r],d=typeof c=="object"?`${c.value||""} ${t.tooltip.showLabelsInTooltips&&c.label?"("+c.label+")":""}`:c,g=i!=null&&i.yUnit?`[${i==null?void 0:i.yUnit}]`:"";return`${o} ${u(d)} ${g}`}},padding:Ae,boxWidth:B,boxHeight:B,boxPadding:Ie,usePointStyle:!0}}}};Re.register(Ee,Ue,Be,Fe,Ve,Ge,Ze,qe,Xe,Ye);const ca=e=>{Me();const l=Pe(e),s=Le.useRef(null),{data:i,options:t,testId:y}=l,{generatedDatasets:j,getTitle:N,onClick:I,onHover:W,getDatalabels:R,getLegend:E,getToolTips:U}=ia(l);return H.jsx("div",{className:$e(M.chart,!t.chartStyling.width||!t.chartStyling.height?t.chartStyling.staticChartHeight?M.fixedHeight:M.stretchHeight:""),style:{width:t.chartStyling.width||"auto",height:t.chartStyling.height||"auto"},"data-testid":y,children:H.jsx(ye,{ref:s,data:{datasets:j,labels:t.graph.stacked?void 0:i.labels},options:{cutout:t.graph.cutout,onClick:I,responsive:!0,maintainAspectRatio:t.chartStyling.maintainAspectRatio,animation:t.chartStyling.performanceMode?!1:{duration:We.FAST},hover:{mode:"nearest",intersect:!0},onHover:W,plugins:{annotation:!1,title:N(),datalabels:R(),tooltip:U(),legend:E()}}})})},$=e=>{const{options:l}=Pe(e);return H.jsx(we,{options:l,children:H.jsx(ca,{...e})})};$.__docgenInfo={description:"",methods:[],displayName:"PieChartWithLegend",props:{chart:{required:!0,tsType:{name:"IPieChartData"},description:""},testId:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""}}};const h=["label 1","label 2","label 3"],C={label:"data1",data:[3,8,7]},_e={label:"data2",data:[1,2,3]},Te={label:"data3",data:[5,0,4]},da={label:"spacing data",offset:40,data:[3,8,7]},ua={label:"hover data",data:[3,8,7],hoverOffset:40},ke={label:"data",data:[{value:210,label:"label"},{value:333,label:"labal"},{value:248,label:"lebel"}]},ha={label:"data",data:[210,333,248]},pa={data:{labels:h,datasets:[C]}},ga={data:{labels:h,datasets:[C,_e,Te]}},ba={data:{labels:h,datasets:[C,_e,Te]},options:{title:"Stacked",graph:{stacked:!0}}},fa={data:{labels:h,datasets:[ke]},options:{title:"With custom datalabels",graph:{showDataLabels:!0}}},ma={data:{labels:h,datasets:[ha]},options:{title:"With value as datalabels",graph:{showDataLabels:!0}}},Ca={data:{labels:h,datasets:[ke]},options:{title:"With datalabels in tooltips",tooltip:{showLabelsInTooltips:!0}}},xa={data:{labels:h,datasets:[ua]},options:{title:"Hover offset"}},Da={data:{labels:h,datasets:[da]},options:{title:"Segment offset"}},Sa={data:{labels:h,datasets:[C]},options:{chartStyling:{performanceMode:!1}}},La={data:{labels:h,datasets:[C]},options:{title:"Cutout 50%",graph:{cutout:"50%"}}},Pa={data:{labels:h,datasets:[C]},options:{title:"Cutout 20 pixels",graph:{cutout:20}}},Ia={title:"PieChart",component:$,args:{chart:pa}},p=e=>H.jsx($,{...e}),A=p.bind({}),D=p.bind({});D.args={chart:ga};const S=p.bind({});S.args={chart:ba};const L=p.bind({});L.args={chart:fa};const P=p.bind({});P.args={chart:ma};const _=p.bind({});_.args={chart:Ca};const T=p.bind({});T.args={chart:Sa};const k=p.bind({});k.args={chart:La};const O=p.bind({});O.args={chart:Pa};const m=p.bind({});m.args={chart:xa};const v=p.bind({});m.args={chart:Da};var F,V,G;A.parameters={...A.parameters,docs:{...(F=A.parameters)==null?void 0:F.docs,source:{originalSource:`args => {
2
2
  return <PieChart
3
3
  // eslint-disable-next-line react/jsx-props-no-spreading
4
4
  {...args} />;
@@ -1,3 +1,3 @@
1
- import{j as c}from"./jsx-runtime-Y5Ju2SGo.js";import{r as v}from"./index-eCxJ45ll.js";import{c as p,D as j}from"./DocsRenderer-CFRXHY34-Dg2X56DC.js";import{e as E}from"./index-B-BONL6g.js";import"./preview-CfXyMlir.js";import"./iframe-BAfMmzoz.js";import"./index-BGqSdrBK.js";import"./index-D3-0uUTW.js";import"./index-Dytf1aFS.js";import"./client-9BU5HM4U.js";var g="DARK_MODE";function f(t){"@babel/helpers - typeof";return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},f(t)}var b;function A(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);r&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),e.push.apply(e,n)}return e}function D(t){for(var r=1;r<arguments.length;r++){var e=arguments[r]!=null?arguments[r]:{};r%2?A(Object(e),!0).forEach(function(n){I(t,n,e[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):A(Object(e)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))})}return t}function I(t,r,e){return r=M(r),r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}function M(t){var r=R(t,"string");return f(r)==="symbol"?r:String(r)}function R(t,r){if(f(t)!=="object"||t===null)return t;var e=t[Symbol.toPrimitive];if(e!==void 0){var n=e.call(t,r);if(f(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(t)}function y(t){return L(t)||N(t)||K(t)||x()}function x(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
1
+ import{j as c}from"./jsx-runtime-Y5Ju2SGo.js";import{r as v}from"./index-eCxJ45ll.js";import{c as p,D as j}from"./DocsRenderer-CFRXHY34-DuvngF7q.js";import{e as E}from"./index-B-BONL6g.js";import"./preview-CzvgRopp.js";import"./iframe-BsL3XxOF.js";import"./index-BGqSdrBK.js";import"./index-D3-0uUTW.js";import"./index-Dytf1aFS.js";import"./client-9BU5HM4U.js";var g="DARK_MODE";function f(t){"@babel/helpers - typeof";return f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},f(t)}var b;function A(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);r&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(t,a).enumerable})),e.push.apply(e,n)}return e}function D(t){for(var r=1;r<arguments.length;r++){var e=arguments[r]!=null?arguments[r]:{};r%2?A(Object(e),!0).forEach(function(n){I(t,n,e[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):A(Object(e)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(e,n))})}return t}function I(t,r,e){return r=M(r),r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}function M(t){var r=R(t,"string");return f(r)==="symbol"?r:String(r)}function R(t,r){if(f(t)!=="object"||t===null)return t;var e=t[Symbol.toPrimitive];if(e!==void 0){var n=e.call(t,r);if(f(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(r==="string"?String:Number)(t)}function y(t){return L(t)||N(t)||K(t)||x()}function x(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
2
2
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function K(t,r){if(t){if(typeof t=="string")return O(t,r);var e=Object.prototype.toString.call(t).slice(8,-1);if(e==="Object"&&t.constructor&&(e=t.constructor.name),e==="Map"||e==="Set")return Array.from(t);if(e==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return O(t,r)}}function N(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function L(t){if(Array.isArray(t))return O(t)}function O(t,r){(r==null||r>t.length)&&(r=t.length);for(var e=0,n=new Array(r);e<r;e++)n[e]=t[e];return n}const{global:U}=__STORYBOOK_MODULE_GLOBAL__,{STORY_CHANGED:st,SET_STORIES:ct,DOCS_RENDERED:ft}=__STORYBOOK_MODULE_CORE_EVENTS__;var T=U,Y=T.document,h=T.window,C="sb-addon-themes-3";(b=h.matchMedia)===null||b===void 0||b.call(h,"(prefers-color-scheme: dark)");var S={classTarget:"body",dark:p.dark,darkClass:["dark"],light:p.light,lightClass:["light"],stylePreview:!1,userHasExplicitlySetTheTheme:!1},k=function(r){h.localStorage.setItem(C,JSON.stringify(r))},B=function(r,e){var n=e.current,a=e.darkClass,l=a===void 0?S.darkClass:a,o=e.lightClass,i=o===void 0?S.lightClass:o;if(n==="dark"){var u,s;(u=r.classList).remove.apply(u,y(d(i))),(s=r.classList).add.apply(s,y(d(l)))}else{var m,_;(m=r.classList).remove.apply(m,y(d(l))),(_=r.classList).add.apply(_,y(d(i)))}},d=function(r){var e=[];return e.concat(r).map(function(n){return n})},W=function(r){var e=Y.querySelector(r.classTarget);e&&B(e,r)},P=function(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},e=h.localStorage.getItem(C);if(typeof e=="string"){var n=JSON.parse(e);return r&&(r.dark&&!E(n.dark,r.dark)&&(n.dark=r.dark,k(n)),r.light&&!E(n.light,r.light)&&(n.light=r.light,k(n))),n}return D(D({},S),r)};W(P());function H(t,r){return q(t)||G(t,r)||$(t,r)||V()}function V(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
3
3
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function $(t,r){if(t){if(typeof t=="string")return w(t,r);var e=Object.prototype.toString.call(t).slice(8,-1);if(e==="Object"&&t.constructor&&(e=t.constructor.name),e==="Map"||e==="Set")return Array.from(t);if(e==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return w(t,r)}}function w(t,r){(r==null||r>t.length)&&(r=t.length);for(var e=0,n=new Array(r);e<r;e++)n[e]=t[e];return n}function G(t,r){var e=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(e!=null){var n,a,l,o,i=[],u=!0,s=!1;try{if(l=(e=e.call(t)).next,r!==0)for(;!(u=(n=l.call(e)).done)&&(i.push(n.value),i.length!==r);u=!0);}catch(m){s=!0,a=m}finally{try{if(!u&&e.return!=null&&(o=e.return(),Object(o)!==o))return}finally{if(s)throw a}}return i}}function q(t){if(Array.isArray(t))return t}const{addons:J,useState:F,useEffect:z}=__STORYBOOK_MODULE_PREVIEW_API__;function Q(){var t=F(P().current==="dark"),r=H(t,2),e=r[0],n=r[1];return z(function(){var a=J.getChannel();return a.on(g,n),function(){return a.off(g,n)}},[]),e}const{definePreview:mt}=__STORYBOOK_MODULE_PREVIEW_API__,yt=[t=>c.jsx(c.Fragment,{children:c.jsx(t,{})}),t=>{const r=Q();return v.useEffect(()=>(document.documentElement.dataset.theme=r?"dark":"default",()=>{delete document.documentElement.dataset.theme}),[r]),c.jsx(t,{})}],X=t=>{const[r,e]=v.useState(!1);return v.useEffect(()=>{const n=a=>e(a);return t.context.channel.on(g,n),()=>{t.context.channel.off(g,n)}},[t.context.channel]),c.jsx(j,{...t,theme:r?p.dark:p.light})},dt={docs:{container:X},darkMode:{current:"light",stylePreview:!0}},pt=["autodocs"];export{yt as decorators,dt as parameters,pt as tags};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DocsRenderer-CFRXHY34-Dg2X56DC.js","./iframe-BAfMmzoz.js","./index-eCxJ45ll.js","./jsx-runtime-Y5Ju2SGo.js","./index-BGqSdrBK.js","./index-D3-0uUTW.js","./index-Dytf1aFS.js","./client-9BU5HM4U.js"])))=>i.map(i=>d[i]);
2
- import{_ as o}from"./iframe-BAfMmzoz.js";var s=Object.defineProperty,i=(e,r)=>{for(var t in r)s(e,t,{get:r[t],enumerable:!0})},n={};i(n,{parameters:()=>d});var _=Object.entries(globalThis.TAGS_OPTIONS??{}).reduce((e,r)=>{let[t,a]=r;return a.excludeFromDocsStories&&(e[t]=!0),e},{}),d={docs:{renderer:async()=>{let{DocsRenderer:e}=await o(async()=>{const{DocsRenderer:r}=await import("./DocsRenderer-CFRXHY34-Dg2X56DC.js").then(t=>t.e);return{DocsRenderer:r}},__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url);return new e},stories:{filter:e=>{var r;return(e.tags||[]).filter(t=>_[t]).length===0&&!((r=e.parameters.docs)!=null&&r.disable)}}}};export{d as parameters};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./DocsRenderer-CFRXHY34-DuvngF7q.js","./iframe-BsL3XxOF.js","./index-eCxJ45ll.js","./jsx-runtime-Y5Ju2SGo.js","./index-BGqSdrBK.js","./index-D3-0uUTW.js","./index-Dytf1aFS.js","./client-9BU5HM4U.js"])))=>i.map(i=>d[i]);
2
+ import{_ as o}from"./iframe-BsL3XxOF.js";var s=Object.defineProperty,i=(e,r)=>{for(var t in r)s(e,t,{get:r[t],enumerable:!0})},n={};i(n,{parameters:()=>d});var _=Object.entries(globalThis.TAGS_OPTIONS??{}).reduce((e,r)=>{let[t,a]=r;return a.excludeFromDocsStories&&(e[t]=!0),e},{}),d={docs:{renderer:async()=>{let{DocsRenderer:e}=await o(async()=>{const{DocsRenderer:r}=await import("./DocsRenderer-CFRXHY34-DuvngF7q.js").then(t=>t.e);return{DocsRenderer:r}},__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url);return new e},stories:{filter:e=>{var r;return(e.tags||[]).filter(t=>_[t]).length===0&&!((r=e.parameters.docs)!=null&&r.disable)}}}};export{d as parameters};
@@ -1,4 +1,4 @@
1
- import{j as g}from"./jsx-runtime-Y5Ju2SGo.js";import{r as ye}from"./index-eCxJ45ll.js";import{d as ve,r as Ae,w as ke,x as u,S as De,y as He,z as je,B as we,f as U,C as Me,A as Ee,P as Ie,G as Pe,E as z,b as Ne,s as qe,F as Ue,H as ze,I as Fe,h as Ze,i as Ye,J as Xe,j as $e,p as Ve,m as Je,n as Ke,q as Qe,t as Ge}from"./legend-context-CUxjGljk.js";import{u as et,j as tt,t as at,k as st,l as rt,m as lt,H as ot,L as nt,n as ct,o as dt}from"./legend-Dl2DUlTl.js";import{D as it,a as ut}from"./bar-chart-const-Cgj9sgUU.js";import"./index-B-BONL6g.js";import"./index-BGqSdrBK.js";import"./index-D3-0uUTW.js";const F=(e,t)=>{let a={};return t?(Math.abs(e)<it||Math.abs(e)>ut)&&(a={roundScientificCoefficient:3}):a={scientific:!1},ve(Ae(e),a)},gt=(e,t)=>{var a;if((a=t==null?void 0:t.tooltip)!=null&&a.showLabelsInTooltips){const r=e[0],{label:s}=(r==null?void 0:r.dataset)??{};return s}},ht=(e,t)=>{var o;const{raw:a,dataset:r}=e??{},s=a==null?void 0:a.label,n=(o=t==null?void 0:t.tooltip)==null?void 0:o.scientificNotation;return`${s??(r==null?void 0:r.label)} ( x: ${F(a==null?void 0:a.x,n)} , y: ${F(a==null?void 0:a.y,n)} )`},mt=e=>{var t,a,r;return{enabled:(t=e==null?void 0:e.tooltip)==null?void 0:t.enabled,callbacks:{title:s=>gt(s,e),label:s=>ht(s,e)},backgroundColor:(a=e==null?void 0:e.tooltip)==null?void 0:a.backgroundColor,displayColors:(r=e==null?void 0:e.tooltip)==null?void 0:r.displayColors,padding:7}},Z=({options:e,axisType:t=u.X,currentScale:a})=>{var C,T,p,b,L,f,w,y,M;const r=ke(e.direction),s=a||((T=(C=e==null?void 0:e.axes)==null?void 0:C[t])==null?void 0:T[0]),n=r&&t===u.Y||!r&&t===u.X,o=(s==null?void 0:s.gridLines)||{},x=()=>{var l;const c=r?u.Y:u.X;return t===c?(l=e==null?void 0:e.additionalAxesOptions)==null?void 0:l.reverse:!1},S=()=>{const c=e==null?void 0:e.additionalAxesOptions;return{...{stepSize:(s==null?void 0:s.stepSize)??(t===u.Y?c==null?void 0:c.stepSize:void 0)},includeBounds:!1,font:{size:He}}};return{type:De.Linear,position:s==null?void 0:s.position,beginAtZero:(p=e==null?void 0:e.additionalAxesOptions)==null?void 0:p.beginAtZero,reverse:x(),suggestedMax:(b=e==null?void 0:e.additionalAxesOptions)==null?void 0:b.suggestedMax,suggestedMin:(L=e==null?void 0:e.additionalAxesOptions)==null?void 0:L.suggestedMin,min:n?(f=e==null?void 0:e.additionalAxesOptions)==null?void 0:f.min:void 0,max:n?(w=e==null?void 0:e.additionalAxesOptions)==null?void 0:w.max:void 0,title:{display:!!((y=s==null?void 0:s.label)!=null&&y.length)||!!((M=s==null?void 0:s.unit)!=null&&M.length),text:(s==null?void 0:s.label)||(s==null?void 0:s.unit),padding:0},ticks:S(),grid:{...o}}},bt=e=>{const t=Z({options:e,axisType:u.X}),a=Z({options:e,axisType:u.Y});return{x:t,y:a}},ft=(e,t)=>{const{data:a,options:r}=e,{interactions:s,chartStyling:n}=r,[o,x]=ye.useState(!1),{legend:S,customLegendPlugin:C,legendClick:T}=et({chartRef:t,options:r}),{state:p}=tt(),{annotation:b}=p,f=(c=>c.map((l,R)=>{const{borderWidth:E=st}=l??{},_e=parseFloat(String(E))||1,q=Me[R],We=l.borderColor??q,Be=l.backgroundColor??q;return{...l,borderWidth:_e,borderColor:We,backgroundColor:Be}}))(a.datasets),w=(c,l,R)=>{R.resetZoom()},y=(c,l)=>{if(o&&!(l!=null&&l.length)&&(x(!1),s.onUnhover&&s.onUnhover(c)),!o&&(l!=null&&l.length)&&(x(!0),s.onHover)){const{index:R,datasetIndex:E}=l[0];s.onHover(c,E,R,f)}},M={onClick:w,onHover:y,...n,interactions:{onLegendClick:T,onHover:y},scales:bt(e==null?void 0:e.options),animation:n.performanceMode?{duration:U.NO}:{duration:U.FAST,onComplete:s==null?void 0:s.onAnimationComplete},plugins:{legend:{...S,display:!1,events:[]},customLegendPlugin:C,title:je(r),annotation:at(b),chartAreaBorder:{borderColor:we},datalabels:{display:r.graph.showDataLabels},tooltip:mt(r)}};return{generatedDatasets:f,scatterOptions:M}};var d=(e=>(e[e.TopToBottom=0]="TopToBottom",e[e.BottomToTop=1]="BottomToTop",e[e.LeftToRight=2]="LeftToRight",e[e.RightToLeft=3]="RightToLeft",e[e.TopLeftToBottomRight=4]="TopLeftToBottomRight",e[e.BottomRightToTopLeft=5]="BottomRightToTopLeft",e[e.BottomLeftToTopRight=6]="BottomLeftToTopRight",e[e.TopRightToBottomLeft=7]="TopRightToBottomLeft",e))(d||{});const xt=e=>({display:(e==null?void 0:e.display)??!1,gradientColors:(e==null?void 0:e.gradientColors)??Pe,direction:(e==null?void 0:e.direction)??d.BottomLeftToTopRight}),Ct=e=>({width:(e==null?void 0:e.width)??z,height:(e==null?void 0:e.height)??z,maintainAspectRatio:(e==null?void 0:e.maintainAspectRatio)||!1,staticChartHeight:(e==null?void 0:e.staticChartHeight)||!1,performanceMode:(e==null?void 0:e.performanceMode)??!0,gradient:xt(e==null?void 0:e.gradient)}),Tt=e=>({enabled:(e==null?void 0:e.enabled)??!0,tooltips:(e==null?void 0:e.tooltips)??!0,showLabelsInTooltips:(e==null?void 0:e.showLabelsInTooltips)||!1,backgroundColor:(e==null?void 0:e.backgroundColor)||"#333",displayColors:(e==null?void 0:e.displayColors)||!1,scientificNotation:(e==null?void 0:e.scientificNotation)??!0}),pt=e=>({showMinorGridlines:(e==null?void 0:e.showMinorGridlines)??!1,showDataLabels:(e==null?void 0:e.showDataLabels)??!1}),St=e=>({display:(e==null?void 0:e.display)??!0,useDataset:(e==null?void 0:e.useDataset)||!1,position:(e==null?void 0:e.position)||Ie.BottomLeft,align:(e==null?void 0:e.align)||Ee.Center}),Lt=e=>({enableZoom:(e==null?void 0:e.enableZoom)||!1,enablePan:(e==null?void 0:e.enablePan)||!1}),yt=e=>({onLegendClick:e==null?void 0:e.onLegendClick,onHover:e==null?void 0:e.onHover,onUnhover:e==null?void 0:e.onUnhover,onAnimationComplete:e==null?void 0:e.onAnimationComplete}),Rt=e=>({labels:(e==null?void 0:e.labels)||[],datasets:(e==null?void 0:e.datasets)||[]}),Ot=e=>e?e.map(t=>({...t,display:(t==null?void 0:t.display)??!0})):[],_t=e=>({showAnnotations:(e==null?void 0:e.showAnnotations)??!0,controlAnnotation:(e==null?void 0:e.controlAnnotation)||!1,annotationsData:Ot(e==null?void 0:e.annotationsData)}),Wt=e=>({x:(e==null?void 0:e.x)||[{}],y:(e==null?void 0:e.y)||[{}]}),Bt=e=>({reverse:(e==null?void 0:e.reverse)||!1,stacked:(e==null?void 0:e.stacked)||!1,beginAtZero:(e==null?void 0:e.beginAtZero)??!0,stepSize:e==null?void 0:e.stepSize,suggestedMin:e==null?void 0:e.suggestedMin,suggestedMax:e==null?void 0:e.suggestedMax,min:e==null?void 0:e.min,max:e==null?void 0:e.max}),Re=e=>{const t=(e==null?void 0:e.chart)||{},a=(t==null?void 0:t.options)||{};return{testId:(t==null?void 0:t.testId)??null,data:Rt(t==null?void 0:t.data),options:{title:(a==null?void 0:a.title)||"",axes:Wt(a==null?void 0:a.axes),additionalAxesOptions:Bt(a==null?void 0:a.additionalAxesOptions),direction:(a==null?void 0:a.direction)||rt.VERTICAL,chartStyling:Ct(a==null?void 0:a.chartStyling),tooltip:Tt(a==null?void 0:a.tooltip),graph:pt(a==null?void 0:a.graph),legend:St(a==null?void 0:a.legend),annotations:_t(a==null?void 0:a.annotations),chartOptions:Lt(a==null?void 0:a.chartOptions),interactions:yt(a==null?void 0:a.interactions)}}},vt=(e,t)=>{switch(e){case d.TopToBottom:return[t.left,t.top,t.left,t.bottom];case d.BottomToTop:return[t.left,t.bottom,t.left,t.top];case d.LeftToRight:return[t.left,t.top,t.right,t.top];case d.RightToLeft:return[t.right,t.top,t.left,t.top];case d.TopLeftToBottomRight:return[t.left,t.top,t.right,t.bottom];case d.BottomRightToTopLeft:return[t.right,t.bottom,t.left,t.top];case d.BottomLeftToTopRight:return[t.left,t.bottom,t.right,t.top];case d.TopRightToBottomLeft:return[t.right,t.top,t.left,t.bottom];default:return[t.left,t.bottom,t.right,t.top]}},At={id:"gradientBackgroundPlugin",beforeDraw:e=>{const{ctx:t,chartArea:a,options:r}=e;if(!t||!a)return;const s=r==null?void 0:r.gradient,{display:n=!1,gradientColors:o,direction:x=d.BottomLeftToTopRight}=s??{};if(!n||!o||o.length===0)return;const[S,C,T,p]=vt(x,a),b=t.createLinearGradient(S,C,T,p);o.forEach(({offset:L,color:f})=>{b.addColorStop(L,f)}),t.save(),t.globalCompositeOperation="destination-over",t.fillStyle=b,t.fillRect(a.left,a.top,a.right-a.left,a.bottom-a.top),t.restore()}},kt="_chart_1qlu1_1",Dt="_canvas_1qlu1_11",Ht="_fixedHeight_1qlu1_20",jt="_stretchHeight_1qlu1_26",wt="_squareAspectRatio_1qlu1_32",Y={chart:kt,canvas:Dt,fixedHeight:Ht,stretchHeight:jt,squareAspectRatio:wt};Ze.register(Ye,Xe,$e,Ve,Je,Ke,Qe,Ge,dt,At);const Mt=e=>{qe();const t=ye.useRef(null),a=Re(e),{options:r,testId:s}=a,{scatterOptions:n,generatedDatasets:o}=ft(a,t);return g.jsx("div",{className:Ue(r.chartStyling,Y),style:{width:r.chartStyling.width,height:r.chartStyling.height},"data-testid":s,children:g.jsx(lt,{backend:ot,context:window,children:g.jsxs("div",{className:Y.canvas,id:"canvas",children:[g.jsx(ze,{ref:t,data:{datasets:o},options:n,plugins:Fe(r.graph,r.legend)}),!!o.length&&g.jsx(nt,{chartRef:t,legendConfig:{options:r,generatedDatasets:o,chartType:ct.SCATTER}})]})})})},I=e=>{const{options:t}=Re(e);return g.jsx(Ne,{options:t,children:g.jsx(Mt,{...e})})};I.__docgenInfo={description:"",methods:[],displayName:"ScatterChartWithLegend",props:{chart:{required:!0,tsType:{name:"IScatterChartData"},description:""},testId:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""}}};const h=["label 1","label 2","label 3"],m={label:"Dataset 1",data:[{x:1,y:5},{x:3,y:7},{x:6,y:2},{x:8,y:6},{x:9,y:4}]},P={label:"Dataset 2",data:[{x:1,y:3},{x:4,y:5},{x:7,y:9},{x:10,y:2},{x:12,y:7}]},Et={label:"Dataset 3",data:[{x:2,y:8},{x:5,y:6},{x:8,y:10},{x:11,y:5},{x:14,y:9}]},Oe={label:"Dataset 4",data:[{x:2,y:8},{x:14,y:9}]},It={label:"Dataset 5",data:[{x:14,y:7,label:"Echo"},{x:3,y:18,label:"Lima"},{x:19,y:2,label:"Romeo"},{x:8,y:11,label:"Charlie"},{x:12,y:9,label:"Oscar"}]},Pt={label:"Dataset 6",data:[{x:15,y:3,label:"Hotel"},{x:9,y:14,label:"Tango"},{x:4,y:17,label:"Whiskey"},{x:11,y:7,label:"Juliet"},{x:13,y:1,label:"Zulu"}]},Nt={label:"Dataset Decimals",data:[{x:4.30021321123002,y:2.30021321123005},{x:5.12321321000003,y:3.23213210000037}]},N={data:{labels:h,datasets:[m]}},qt={data:{labels:h,datasets:[m]},options:{chartStyling:{height:300,width:700}}},Ut={data:{labels:h,datasets:[m,P,Et]}},zt={data:{labels:h,datasets:[m]},options:{title:"With Data Labels",graph:{showDataLabels:!0}}},Ft={data:{labels:h,datasets:[m,P,Nt]},options:{title:"With Tooltips",tooltip:{title:"Tooltip",showLabelsInTooltips:!0}}},Zt={data:{labels:h,datasets:[{...m,backgroundColor:"red",borderColor:"red"}]}},Yt={data:{labels:h,datasets:[m]},options:{title:"With Annotation",annotations:{showAnnotations:!0,annotationsData:[{annotationAxis:"y",label:"Horizontal Annotation",value:2.5,color:"rgba(96, 32, 196, 0.5)"}]}}},Xt={data:{labels:h,datasets:[m,P,Oe]},options:{title:"With Axes Labels",axes:{x:[{label:"x axis"}],y:[{label:"y axis"}]}}},$t={...N,options:{title:"With Gradient",chartStyling:{gradient:{display:!0}}}},Vt={data:{datasets:[It,Pt,Oe]},options:{title:"With datapoint label showing when hovered",tooltip:{showLabelsInTooltips:!0}}},ra={title:"ScatterChart",component:I,args:{chart:N}},i=e=>g.jsx(I,{...e}),O=i.bind({});O.args={chart:N};const _=i.bind({});_.args={chart:qt};const W=i.bind({});W.args={chart:Ut};const B=i.bind({});B.args={chart:zt};const v=i.bind({});v.args={chart:Ft};const A=i.bind({});A.args={chart:Yt};const k=i.bind({});k.args={chart:Xt};const D=i.bind({});D.args={chart:$t};const H=i.bind({});H.args={chart:Vt};const j=i.bind({});j.args={chart:Zt};var X,$,V;O.parameters={...O.parameters,docs:{...(X=O.parameters)==null?void 0:X.docs,source:{originalSource:`args => {
1
+ import{j as g}from"./jsx-runtime-Y5Ju2SGo.js";import{r as ye}from"./index-eCxJ45ll.js";import{d as ve,r as Ae,w as ke,x as u,S as De,y as He,z as je,B as we,f as U,C as Me,A as Ee,P as Ie,G as Pe,E as z,b as Ne,s as qe,F as Ue,H as ze,I as Fe,h as Ze,i as Ye,J as Xe,j as $e,p as Ve,m as Je,n as Ke,q as Qe,t as Ge}from"./legend-context-BD2-S1C1.js";import{u as et,j as tt,t as at,k as st,l as rt,m as lt,H as ot,L as nt,n as ct,o as dt}from"./legend-DU0eJsZy.js";import{D as it,a as ut}from"./bar-chart-const-Cgj9sgUU.js";import"./index-B-BONL6g.js";import"./index-BGqSdrBK.js";import"./index-D3-0uUTW.js";const F=(e,t)=>{let a={};return t?(Math.abs(e)<it||Math.abs(e)>ut)&&(a={roundScientificCoefficient:3}):a={scientific:!1},ve(Ae(e),a)},gt=(e,t)=>{var a;if((a=t==null?void 0:t.tooltip)!=null&&a.showLabelsInTooltips){const r=e[0],{label:s}=(r==null?void 0:r.dataset)??{};return s}},ht=(e,t)=>{var o;const{raw:a,dataset:r}=e??{},s=a==null?void 0:a.label,n=(o=t==null?void 0:t.tooltip)==null?void 0:o.scientificNotation;return`${s??(r==null?void 0:r.label)} ( x: ${F(a==null?void 0:a.x,n)} , y: ${F(a==null?void 0:a.y,n)} )`},mt=e=>{var t,a,r;return{enabled:(t=e==null?void 0:e.tooltip)==null?void 0:t.enabled,callbacks:{title:s=>gt(s,e),label:s=>ht(s,e)},backgroundColor:(a=e==null?void 0:e.tooltip)==null?void 0:a.backgroundColor,displayColors:(r=e==null?void 0:e.tooltip)==null?void 0:r.displayColors,padding:7}},Z=({options:e,axisType:t=u.X,currentScale:a})=>{var C,T,p,b,L,f,w,y,M;const r=ke(e.direction),s=a||((T=(C=e==null?void 0:e.axes)==null?void 0:C[t])==null?void 0:T[0]),n=r&&t===u.Y||!r&&t===u.X,o=(s==null?void 0:s.gridLines)||{},x=()=>{var l;const c=r?u.Y:u.X;return t===c?(l=e==null?void 0:e.additionalAxesOptions)==null?void 0:l.reverse:!1},S=()=>{const c=e==null?void 0:e.additionalAxesOptions;return{...{stepSize:(s==null?void 0:s.stepSize)??(t===u.Y?c==null?void 0:c.stepSize:void 0)},includeBounds:!1,font:{size:He}}};return{type:De.Linear,position:s==null?void 0:s.position,beginAtZero:(p=e==null?void 0:e.additionalAxesOptions)==null?void 0:p.beginAtZero,reverse:x(),suggestedMax:(b=e==null?void 0:e.additionalAxesOptions)==null?void 0:b.suggestedMax,suggestedMin:(L=e==null?void 0:e.additionalAxesOptions)==null?void 0:L.suggestedMin,min:n?(f=e==null?void 0:e.additionalAxesOptions)==null?void 0:f.min:void 0,max:n?(w=e==null?void 0:e.additionalAxesOptions)==null?void 0:w.max:void 0,title:{display:!!((y=s==null?void 0:s.label)!=null&&y.length)||!!((M=s==null?void 0:s.unit)!=null&&M.length),text:(s==null?void 0:s.label)||(s==null?void 0:s.unit),padding:0},ticks:S(),grid:{...o}}},bt=e=>{const t=Z({options:e,axisType:u.X}),a=Z({options:e,axisType:u.Y});return{x:t,y:a}},ft=(e,t)=>{const{data:a,options:r}=e,{interactions:s,chartStyling:n}=r,[o,x]=ye.useState(!1),{legend:S,customLegendPlugin:C,legendClick:T}=et({chartRef:t,options:r}),{state:p}=tt(),{annotation:b}=p,f=(c=>c.map((l,R)=>{const{borderWidth:E=st}=l??{},_e=parseFloat(String(E))||1,q=Me[R],We=l.borderColor??q,Be=l.backgroundColor??q;return{...l,borderWidth:_e,borderColor:We,backgroundColor:Be}}))(a.datasets),w=(c,l,R)=>{R.resetZoom()},y=(c,l)=>{if(o&&!(l!=null&&l.length)&&(x(!1),s.onUnhover&&s.onUnhover(c)),!o&&(l!=null&&l.length)&&(x(!0),s.onHover)){const{index:R,datasetIndex:E}=l[0];s.onHover(c,E,R,f)}},M={onClick:w,onHover:y,...n,interactions:{onLegendClick:T,onHover:y},scales:bt(e==null?void 0:e.options),animation:n.performanceMode?{duration:U.NO}:{duration:U.FAST,onComplete:s==null?void 0:s.onAnimationComplete},plugins:{legend:{...S,display:!1,events:[]},customLegendPlugin:C,title:je(r),annotation:at(b),chartAreaBorder:{borderColor:we},datalabels:{display:r.graph.showDataLabels},tooltip:mt(r)}};return{generatedDatasets:f,scatterOptions:M}};var d=(e=>(e[e.TopToBottom=0]="TopToBottom",e[e.BottomToTop=1]="BottomToTop",e[e.LeftToRight=2]="LeftToRight",e[e.RightToLeft=3]="RightToLeft",e[e.TopLeftToBottomRight=4]="TopLeftToBottomRight",e[e.BottomRightToTopLeft=5]="BottomRightToTopLeft",e[e.BottomLeftToTopRight=6]="BottomLeftToTopRight",e[e.TopRightToBottomLeft=7]="TopRightToBottomLeft",e))(d||{});const xt=e=>({display:(e==null?void 0:e.display)??!1,gradientColors:(e==null?void 0:e.gradientColors)??Pe,direction:(e==null?void 0:e.direction)??d.BottomLeftToTopRight}),Ct=e=>({width:(e==null?void 0:e.width)??z,height:(e==null?void 0:e.height)??z,maintainAspectRatio:(e==null?void 0:e.maintainAspectRatio)||!1,staticChartHeight:(e==null?void 0:e.staticChartHeight)||!1,performanceMode:(e==null?void 0:e.performanceMode)??!0,gradient:xt(e==null?void 0:e.gradient)}),Tt=e=>({enabled:(e==null?void 0:e.enabled)??!0,tooltips:(e==null?void 0:e.tooltips)??!0,showLabelsInTooltips:(e==null?void 0:e.showLabelsInTooltips)||!1,backgroundColor:(e==null?void 0:e.backgroundColor)||"#333",displayColors:(e==null?void 0:e.displayColors)||!1,scientificNotation:(e==null?void 0:e.scientificNotation)??!0}),pt=e=>({showMinorGridlines:(e==null?void 0:e.showMinorGridlines)??!1,showDataLabels:(e==null?void 0:e.showDataLabels)??!1}),St=e=>({display:(e==null?void 0:e.display)??!0,useDataset:(e==null?void 0:e.useDataset)||!1,position:(e==null?void 0:e.position)||Ie.BottomLeft,align:(e==null?void 0:e.align)||Ee.Center}),Lt=e=>({enableZoom:(e==null?void 0:e.enableZoom)||!1,enablePan:(e==null?void 0:e.enablePan)||!1}),yt=e=>({onLegendClick:e==null?void 0:e.onLegendClick,onHover:e==null?void 0:e.onHover,onUnhover:e==null?void 0:e.onUnhover,onAnimationComplete:e==null?void 0:e.onAnimationComplete}),Rt=e=>({labels:(e==null?void 0:e.labels)||[],datasets:(e==null?void 0:e.datasets)||[]}),Ot=e=>e?e.map(t=>({...t,display:(t==null?void 0:t.display)??!0})):[],_t=e=>({showAnnotations:(e==null?void 0:e.showAnnotations)??!0,controlAnnotation:(e==null?void 0:e.controlAnnotation)||!1,annotationsData:Ot(e==null?void 0:e.annotationsData)}),Wt=e=>({x:(e==null?void 0:e.x)||[{}],y:(e==null?void 0:e.y)||[{}]}),Bt=e=>({reverse:(e==null?void 0:e.reverse)||!1,stacked:(e==null?void 0:e.stacked)||!1,beginAtZero:(e==null?void 0:e.beginAtZero)??!0,stepSize:e==null?void 0:e.stepSize,suggestedMin:e==null?void 0:e.suggestedMin,suggestedMax:e==null?void 0:e.suggestedMax,min:e==null?void 0:e.min,max:e==null?void 0:e.max}),Re=e=>{const t=(e==null?void 0:e.chart)||{},a=(t==null?void 0:t.options)||{};return{testId:(t==null?void 0:t.testId)??null,data:Rt(t==null?void 0:t.data),options:{title:(a==null?void 0:a.title)||"",axes:Wt(a==null?void 0:a.axes),additionalAxesOptions:Bt(a==null?void 0:a.additionalAxesOptions),direction:(a==null?void 0:a.direction)||rt.VERTICAL,chartStyling:Ct(a==null?void 0:a.chartStyling),tooltip:Tt(a==null?void 0:a.tooltip),graph:pt(a==null?void 0:a.graph),legend:St(a==null?void 0:a.legend),annotations:_t(a==null?void 0:a.annotations),chartOptions:Lt(a==null?void 0:a.chartOptions),interactions:yt(a==null?void 0:a.interactions)}}},vt=(e,t)=>{switch(e){case d.TopToBottom:return[t.left,t.top,t.left,t.bottom];case d.BottomToTop:return[t.left,t.bottom,t.left,t.top];case d.LeftToRight:return[t.left,t.top,t.right,t.top];case d.RightToLeft:return[t.right,t.top,t.left,t.top];case d.TopLeftToBottomRight:return[t.left,t.top,t.right,t.bottom];case d.BottomRightToTopLeft:return[t.right,t.bottom,t.left,t.top];case d.BottomLeftToTopRight:return[t.left,t.bottom,t.right,t.top];case d.TopRightToBottomLeft:return[t.right,t.top,t.left,t.bottom];default:return[t.left,t.bottom,t.right,t.top]}},At={id:"gradientBackgroundPlugin",beforeDraw:e=>{const{ctx:t,chartArea:a,options:r}=e;if(!t||!a)return;const s=r==null?void 0:r.gradient,{display:n=!1,gradientColors:o,direction:x=d.BottomLeftToTopRight}=s??{};if(!n||!o||o.length===0)return;const[S,C,T,p]=vt(x,a),b=t.createLinearGradient(S,C,T,p);o.forEach(({offset:L,color:f})=>{b.addColorStop(L,f)}),t.save(),t.globalCompositeOperation="destination-over",t.fillStyle=b,t.fillRect(a.left,a.top,a.right-a.left,a.bottom-a.top),t.restore()}},kt="_chart_1qlu1_1",Dt="_canvas_1qlu1_11",Ht="_fixedHeight_1qlu1_20",jt="_stretchHeight_1qlu1_26",wt="_squareAspectRatio_1qlu1_32",Y={chart:kt,canvas:Dt,fixedHeight:Ht,stretchHeight:jt,squareAspectRatio:wt};Ze.register(Ye,Xe,$e,Ve,Je,Ke,Qe,Ge,dt,At);const Mt=e=>{qe();const t=ye.useRef(null),a=Re(e),{options:r,testId:s}=a,{scatterOptions:n,generatedDatasets:o}=ft(a,t);return g.jsx("div",{className:Ue(r.chartStyling,Y),style:{width:r.chartStyling.width,height:r.chartStyling.height},"data-testid":s,children:g.jsx(lt,{backend:ot,context:window,children:g.jsxs("div",{className:Y.canvas,id:"canvas",children:[g.jsx(ze,{ref:t,data:{datasets:o},options:n,plugins:Fe(r.graph,r.legend)}),!!o.length&&g.jsx(nt,{chartRef:t,legendConfig:{options:r,generatedDatasets:o,chartType:ct.SCATTER}})]})})})},I=e=>{const{options:t}=Re(e);return g.jsx(Ne,{options:t,children:g.jsx(Mt,{...e})})};I.__docgenInfo={description:"",methods:[],displayName:"ScatterChartWithLegend",props:{chart:{required:!0,tsType:{name:"IScatterChartData"},description:""},testId:{required:!1,tsType:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},description:""}}};const h=["label 1","label 2","label 3"],m={label:"Dataset 1",data:[{x:1,y:5},{x:3,y:7},{x:6,y:2},{x:8,y:6},{x:9,y:4}]},P={label:"Dataset 2",data:[{x:1,y:3},{x:4,y:5},{x:7,y:9},{x:10,y:2},{x:12,y:7}]},Et={label:"Dataset 3",data:[{x:2,y:8},{x:5,y:6},{x:8,y:10},{x:11,y:5},{x:14,y:9}]},Oe={label:"Dataset 4",data:[{x:2,y:8},{x:14,y:9}]},It={label:"Dataset 5",data:[{x:14,y:7,label:"Echo"},{x:3,y:18,label:"Lima"},{x:19,y:2,label:"Romeo"},{x:8,y:11,label:"Charlie"},{x:12,y:9,label:"Oscar"}]},Pt={label:"Dataset 6",data:[{x:15,y:3,label:"Hotel"},{x:9,y:14,label:"Tango"},{x:4,y:17,label:"Whiskey"},{x:11,y:7,label:"Juliet"},{x:13,y:1,label:"Zulu"}]},Nt={label:"Dataset Decimals",data:[{x:4.30021321123002,y:2.30021321123005},{x:5.12321321000003,y:3.23213210000037}]},N={data:{labels:h,datasets:[m]}},qt={data:{labels:h,datasets:[m]},options:{chartStyling:{height:300,width:700}}},Ut={data:{labels:h,datasets:[m,P,Et]}},zt={data:{labels:h,datasets:[m]},options:{title:"With Data Labels",graph:{showDataLabels:!0}}},Ft={data:{labels:h,datasets:[m,P,Nt]},options:{title:"With Tooltips",tooltip:{title:"Tooltip",showLabelsInTooltips:!0}}},Zt={data:{labels:h,datasets:[{...m,backgroundColor:"red",borderColor:"red"}]}},Yt={data:{labels:h,datasets:[m]},options:{title:"With Annotation",annotations:{showAnnotations:!0,annotationsData:[{annotationAxis:"y",label:"Horizontal Annotation",value:2.5,color:"rgba(96, 32, 196, 0.5)"}]}}},Xt={data:{labels:h,datasets:[m,P,Oe]},options:{title:"With Axes Labels",axes:{x:[{label:"x axis"}],y:[{label:"y axis"}]}}},$t={...N,options:{title:"With Gradient",chartStyling:{gradient:{display:!0}}}},Vt={data:{datasets:[It,Pt,Oe]},options:{title:"With datapoint label showing when hovered",tooltip:{showLabelsInTooltips:!0}}},ra={title:"ScatterChart",component:I,args:{chart:N}},i=e=>g.jsx(I,{...e}),O=i.bind({});O.args={chart:N};const _=i.bind({});_.args={chart:qt};const W=i.bind({});W.args={chart:Ut};const B=i.bind({});B.args={chart:zt};const v=i.bind({});v.args={chart:Ft};const A=i.bind({});A.args={chart:Yt};const k=i.bind({});k.args={chart:Xt};const D=i.bind({});D.args={chart:$t};const H=i.bind({});H.args={chart:Vt};const j=i.bind({});j.args={chart:Zt};var X,$,V;O.parameters={...O.parameters,docs:{...(X=O.parameters)==null?void 0:X.docs,source:{originalSource:`args => {
2
2
  return <ScatterChart
3
3
  // eslint-disable-next-line react/jsx-props-no-spreading
4
4
  {...args} />;
package/dist/iframe.html CHANGED
@@ -509,7 +509,7 @@
509
509
  }
510
510
  </script>
511
511
 
512
- <script type="module" crossorigin src="./assets/iframe-BAfMmzoz.js"></script>
512
+ <script type="module" crossorigin src="./assets/iframe-BsL3XxOF.js"></script>
513
513
  </head>
514
514
 
515
515
  <body>
package/dist/index.js.js CHANGED
@@ -572,7 +572,7 @@ let Color$1 = class Color {
572
572
  }
573
573
  };
574
574
  /*!
575
- * Chart.js v4.4.9
575
+ * Chart.js v4.4.8
576
576
  * https://www.chartjs.org
577
577
  * (c) 2025 Chart.js Contributors
578
578
  * Released under the MIT License
@@ -2899,36 +2899,8 @@ function styleChanged$1(style, prevStyle) {
2899
2899
  };
2900
2900
  return JSON.stringify(style, replacer) !== JSON.stringify(prevStyle, replacer);
2901
2901
  }
2902
- function getSizeForArea(scale, chartArea, field) {
2903
- return scale.options.clip ? scale[field] : chartArea[field];
2904
- }
2905
- function getDatasetArea(meta, chartArea) {
2906
- const { xScale, yScale } = meta;
2907
- if (xScale && yScale) {
2908
- return {
2909
- left: getSizeForArea(xScale, chartArea, "left"),
2910
- right: getSizeForArea(xScale, chartArea, "right"),
2911
- top: getSizeForArea(yScale, chartArea, "top"),
2912
- bottom: getSizeForArea(yScale, chartArea, "bottom")
2913
- };
2914
- }
2915
- return chartArea;
2916
- }
2917
- function getDatasetClipArea(chart2, meta) {
2918
- const clip = meta._clip;
2919
- if (clip.disabled) {
2920
- return false;
2921
- }
2922
- const area = getDatasetArea(meta, chart2.chartArea);
2923
- return {
2924
- left: clip.left === false ? 0 : area.left - (clip.left === true ? 0 : clip.left),
2925
- right: clip.right === false ? chart2.width : area.right + (clip.right === true ? 0 : clip.right),
2926
- top: clip.top === false ? 0 : area.top - (clip.top === true ? 0 : clip.top),
2927
- bottom: clip.bottom === false ? chart2.height : area.bottom + (clip.bottom === true ? 0 : clip.bottom)
2928
- };
2929
- }
2930
2902
  /*!
2931
- * Chart.js v4.4.9
2903
+ * Chart.js v4.4.8
2932
2904
  * https://www.chartjs.org
2933
2905
  * (c) 2025 Chart.js Contributors
2934
2906
  * Released under the MIT License
@@ -8030,7 +8002,7 @@ function needContext$1(proxy, names2) {
8030
8002
  }
8031
8003
  return false;
8032
8004
  }
8033
- var version$3 = "4.4.9";
8005
+ var version$3 = "4.4.8";
8034
8006
  const KNOWN_POSITIONS$1 = [
8035
8007
  "top",
8036
8008
  "bottom",
@@ -8099,6 +8071,21 @@ function determineLastEvent$1(e2, lastEvent, inChartArea, isClick) {
8099
8071
  }
8100
8072
  return e2;
8101
8073
  }
8074
+ function getSizeForArea(scale, chartArea, field) {
8075
+ return scale.options.clip ? scale[field] : chartArea[field];
8076
+ }
8077
+ function getDatasetArea(meta, chartArea) {
8078
+ const { xScale, yScale } = meta;
8079
+ if (xScale && yScale) {
8080
+ return {
8081
+ left: getSizeForArea(xScale, chartArea, "left"),
8082
+ right: getSizeForArea(xScale, chartArea, "right"),
8083
+ top: getSizeForArea(yScale, chartArea, "top"),
8084
+ bottom: getSizeForArea(yScale, chartArea, "bottom")
8085
+ };
8086
+ }
8087
+ return chartArea;
8088
+ }
8102
8089
  let Chart$2 = (_h = class {
8103
8090
  static register(...items) {
8104
8091
  registry$1.add(...items);
@@ -8591,20 +8578,27 @@ let Chart$2 = (_h = class {
8591
8578
  }
8592
8579
  _drawDataset(meta) {
8593
8580
  const ctx = this.ctx;
8581
+ const clip = meta._clip;
8582
+ const useClip = !clip.disabled;
8583
+ const area = getDatasetArea(meta, this.chartArea);
8594
8584
  const args = {
8595
8585
  meta,
8596
8586
  index: meta.index,
8597
8587
  cancelable: true
8598
8588
  };
8599
- const clip = getDatasetClipArea(this, meta);
8600
8589
  if (this.notifyPlugins("beforeDatasetDraw", args) === false) {
8601
8590
  return;
8602
8591
  }
8603
- if (clip) {
8604
- clipArea$1(ctx, clip);
8592
+ if (useClip) {
8593
+ clipArea$1(ctx, {
8594
+ left: clip.left === false ? 0 : area.left - clip.left,
8595
+ right: clip.right === false ? this.width : area.right + clip.right,
8596
+ top: clip.top === false ? 0 : area.top - clip.top,
8597
+ bottom: clip.bottom === false ? this.height : area.bottom + clip.bottom
8598
+ });
8605
8599
  }
8606
8600
  meta.controller.draw();
8607
- if (clip) {
8601
+ if (useClip) {
8608
8602
  unclipArea$1(ctx);
8609
8603
  }
8610
8604
  args.cancelable = false;
@@ -10103,13 +10097,11 @@ function computeCircularBoundary(source) {
10103
10097
  }
10104
10098
  function _drawfill(ctx, source, area) {
10105
10099
  const target = _getTarget(source);
10106
- const { chart: chart2, index: index2, line, scale, axis } = source;
10100
+ const { line, scale, axis } = source;
10107
10101
  const lineOpts = line.options;
10108
10102
  const fillOption = lineOpts.fill;
10109
10103
  const color2 = lineOpts.backgroundColor;
10110
10104
  const { above = color2, below = color2 } = fillOption || {};
10111
- const meta = chart2.getDatasetMeta(index2);
10112
- const clip = getDatasetClipArea(chart2, meta);
10113
10105
  if (target && line.points.length) {
10114
10106
  clipArea$1(ctx, area);
10115
10107
  doFill(ctx, {
@@ -10119,14 +10111,13 @@ function _drawfill(ctx, source, area) {
10119
10111
  below,
10120
10112
  area,
10121
10113
  scale,
10122
- axis,
10123
- clip
10114
+ axis
10124
10115
  });
10125
10116
  unclipArea$1(ctx);
10126
10117
  }
10127
10118
  }
10128
10119
  function doFill(ctx, cfg) {
10129
- const { line, target, above, below, area, scale, clip } = cfg;
10120
+ const { line, target, above, below, area, scale } = cfg;
10130
10121
  const property = line._loop ? "angle" : cfg.axis;
10131
10122
  ctx.save();
10132
10123
  if (property === "x" && below !== above) {
@@ -10136,8 +10127,7 @@ function doFill(ctx, cfg) {
10136
10127
  target,
10137
10128
  color: above,
10138
10129
  scale,
10139
- property,
10140
- clip
10130
+ property
10141
10131
  });
10142
10132
  ctx.restore();
10143
10133
  ctx.save();
@@ -10148,8 +10138,7 @@ function doFill(ctx, cfg) {
10148
10138
  target,
10149
10139
  color: below,
10150
10140
  scale,
10151
- property,
10152
- clip
10141
+ property
10153
10142
  });
10154
10143
  ctx.restore();
10155
10144
  }
@@ -10183,14 +10172,14 @@ function clipVertical(ctx, target, clipY) {
10183
10172
  ctx.clip();
10184
10173
  }
10185
10174
  function fill(ctx, cfg) {
10186
- const { line, target, property, color: color2, scale, clip } = cfg;
10175
+ const { line, target, property, color: color2, scale } = cfg;
10187
10176
  const segments = _segments(line, target, property);
10188
10177
  for (const { source: src, target: tgt, start, end } of segments) {
10189
10178
  const { style: { backgroundColor = color2 } = {} } = src;
10190
10179
  const notShape = target !== true;
10191
10180
  ctx.save();
10192
10181
  ctx.fillStyle = backgroundColor;
10193
- clipBounds(ctx, scale, clip, notShape && _getBounds(property, start, end));
10182
+ clipBounds(ctx, scale, notShape && _getBounds(property, start, end));
10194
10183
  ctx.beginPath();
10195
10184
  const lineLoop = !!line.pathSegment(ctx, src);
10196
10185
  let loop;
@@ -10214,30 +10203,12 @@ function fill(ctx, cfg) {
10214
10203
  ctx.restore();
10215
10204
  }
10216
10205
  }
10217
- function clipBounds(ctx, scale, clip, bounds) {
10218
- const chartArea = scale.chart.chartArea;
10206
+ function clipBounds(ctx, scale, bounds) {
10207
+ const { top: top2, bottom: bottom2 } = scale.chart.chartArea;
10219
10208
  const { property, start, end } = bounds || {};
10220
- if (property === "x" || property === "y") {
10221
- let left2, top2, right2, bottom2;
10222
- if (property === "x") {
10223
- left2 = start;
10224
- top2 = chartArea.top;
10225
- right2 = end;
10226
- bottom2 = chartArea.bottom;
10227
- } else {
10228
- left2 = chartArea.left;
10229
- top2 = start;
10230
- right2 = chartArea.right;
10231
- bottom2 = end;
10232
- }
10209
+ if (property === "x") {
10233
10210
  ctx.beginPath();
10234
- if (clip) {
10235
- left2 = Math.max(left2, clip.left);
10236
- right2 = Math.min(right2, clip.right);
10237
- top2 = Math.max(top2, clip.top);
10238
- bottom2 = Math.min(bottom2, clip.bottom);
10239
- }
10240
- ctx.rect(left2, top2, right2 - left2, bottom2 - top2);
10211
+ ctx.rect(start, top2, end - start, bottom2 - top2);
10241
10212
  ctx.clip();
10242
10213
  }
10243
10214
  }
@@ -24387,9 +24358,11 @@ const useChartFunctions = ({
24387
24358
  const onHover = useCallback(
24388
24359
  (hoveredPoint, setHoveredPoint, datasets) => {
24389
24360
  return (evt, hoveredItems) => {
24361
+ var _a2, _b2;
24390
24362
  if (!(hoveredItems == null ? void 0 : hoveredItems.length) && onPointUnhover && hoveredPoint) {
24391
24363
  setHoveredPoint(null);
24392
24364
  onPointUnhover(evt);
24365
+ (_a2 = chartRef == null ? void 0 : chartRef.current) == null ? void 0 : _a2.update();
24393
24366
  }
24394
24367
  if ((hoveredItems == null ? void 0 : hoveredItems.length) && onPointHover) {
24395
24368
  const { index: index2, datasetIndex } = hoveredItems[0];
@@ -24398,6 +24371,7 @@ const useChartFunctions = ({
24398
24371
  if (point && !isEqual(hoveredPoint, point)) {
24399
24372
  setHoveredPoint(point);
24400
24373
  onPointHover(evt, datasetIndex, index2, datasets);
24374
+ (_b2 = chartRef == null ? void 0 : chartRef.current) == null ? void 0 : _b2.update();
24401
24375
  }
24402
24376
  }
24403
24377
  };
@@ -25519,8 +25493,15 @@ const getLineChartDataLabels = (options) => {
25519
25493
  align: getPosition(),
25520
25494
  formatter: (_2, context) => {
25521
25495
  var _a2, _b2;
25522
- const dataPoint = (_b2 = (_a2 = context == null ? void 0 : context.dataset) == null ? void 0 : _a2.data) == null ? void 0 : _b2[context == null ? void 0 : context.dataIndex];
25523
- return dataPoint && typeof (dataPoint == null ? void 0 : dataPoint.label) === "string" ? dataPoint == null ? void 0 : dataPoint.label : "";
25496
+ const dataPoint = (_b2 = (_a2 = context == null ? void 0 : context.dataset) == null ? void 0 : _a2.data) == null ? void 0 : _b2[context.dataIndex];
25497
+ if (!dataPoint || dataPoint.label == null) return "";
25498
+ if (typeof dataPoint.label === "string") {
25499
+ return dataPoint.label;
25500
+ }
25501
+ if (Array.isArray(dataPoint.label)) {
25502
+ return dataPoint.label.map(String);
25503
+ }
25504
+ return String(dataPoint.label);
25524
25505
  }
25525
25506
  } : { display: false };
25526
25507
  };
@@ -26807,19 +26788,6 @@ const annotationDraggerPlugin = {
26807
26788
  }
26808
26789
  }
26809
26790
  };
26810
- const tooltipNullGuard = {
26811
- id: "tooltipNullGuard",
26812
- beforeUpdate(chart2) {
26813
- var _a2;
26814
- const tt2 = chart2 == null ? void 0 : chart2.tooltip;
26815
- if (tt2 && ((_a2 = tt2 == null ? void 0 : tt2.getActiveElements()) == null ? void 0 : _a2.some(({ datasetIndex }) => {
26816
- const meta = chart2 == null ? void 0 : chart2.getDatasetMeta(datasetIndex);
26817
- return !meta || !(meta == null ? void 0 : meta.controller);
26818
- }))) {
26819
- tt2 == null ? void 0 : tt2.setActiveElements([], { x: 0, y: 0 });
26820
- }
26821
- }
26822
- };
26823
26791
  var defaultTranslations = /* @__PURE__ */ ((defaultTranslations2) => {
26824
26792
  defaultTranslations2["label"] = "Label";
26825
26793
  defaultTranslations2["pointsLines"] = "Points & lines";
@@ -27303,8 +27271,7 @@ Chart$2.register(
27303
27271
  plugin,
27304
27272
  annotation,
27305
27273
  chartAreaTextPlugin,
27306
- annotationDraggerPlugin,
27307
- tooltipNullGuard
27274
+ annotationDraggerPlugin
27308
27275
  );
27309
27276
  const LineChart = (props) => {
27310
27277
  var _a2, _b2;