@oliasoft-open-source/charts-library 5.2.1-beta-12 → 5.2.2-beta-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{Color-AVL7NMMY-Cb2-bd5I.js → Color-AVL7NMMY-CEOTAsSb.js} +1 -1
- package/dist/assets/{DocsRenderer-PQXLIZUC-CjYFY4v1.js → DocsRenderer-PQXLIZUC-DR9ZvnFo.js} +2 -2
- package/dist/assets/{bar-chart.stories-DM307tLn.js → bar-chart.stories-DZzxa8nS.js} +1 -1
- package/dist/assets/client-DnDXBRQi.js +1 -0
- package/dist/assets/{components-GkTcjyb8.js → components-DJ6pdfar.js} +1 -1
- package/dist/assets/{get-draggableData-Bobxhi2c.js → get-draggableData-D6slJ9lV.js} +1 -1
- package/dist/assets/{iframe-ssGAGOoN.js → iframe-C1GQfKrF.js} +5 -5
- package/dist/assets/{legend-BhtvtFF5.js → legend-CsZDU7pS.js} +1 -1
- package/dist/assets/{legend-context-BjaECN31.js → legend-context-DcwmaAWO.js} +1 -1
- package/dist/assets/line-chart-DisTE6pS.js +1 -0
- package/dist/assets/{line-chart.stories-C_rP3xzY.js → line-chart.stories-B_aLm8_T.js} +1 -1
- package/dist/assets/{line-chart.test-case.stories-_ccmREqm.js → line-chart.test-case.stories-RMTIyFLI.js} +1 -1
- package/dist/assets/{pie-chart.stories-Kl-j-Lt6.js → pie-chart.stories-H95546GG.js} +1 -1
- package/dist/assets/{react-18-BJiLw6wy.js → react-18-DN53juTb.js} +1 -1
- package/dist/assets/{react-C7bT4huM.js → react-uV65ERJZ.js} +1 -1
- package/dist/assets/{scatter-chart.stories-BeIk_1_v.js → scatter-chart.stories-CQmSxXmq.js} +1 -1
- package/dist/iframe.html +1 -1
- package/dist/index.js +1 -0
- package/dist/project.json +1 -1
- package/package.json +1 -1
- package/dist/assets/client-D0XldUgU.js +0 -1
- package/dist/assets/line-chart-BmcE7UzQ.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_t as e,at as t,dt as n}from"./iframe-ssGAGOoN.js";import{W as r}from"./legend-context-BjaECN31.js";import{v as i,w as a}from"./legend-BhtvtFF5.js";import"./get-draggableData-Bobxhi2c.js";import{t as o}from"./line-chart-BmcE7UzQ.js";var s=e(n(),1),c={controlsPortalId:`chartOne-plan-view-chart-controls`,data:{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:[]}]}]},options:{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:[]}}},l=e(t(),1),u=[{label:`Dataset 1`,data:[{x:0,y:0},{x:5,y:25}]}],d={title:`LineChart / Test Cases`,component:o,args:{chart:{data:{datasets:u},options:{title:`Chart title`,chartStyling:{height:`100%`}}}}};const f=()=>(0,l.jsx)(o,{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}}}}),p=()=>(0,l.jsx)(o,{chart:c}),m=()=>{let[e,t]=(0,s.useState)(u),[n,i]=(0,s.useState)(0),[c,d]=(0,s.useState)(!1),[f,p]=(0,s.useState)(!0),[m,h]=(0,s.useState)(!1),[g,_]=(0,s.useState)(!0),[v,y]=(0,s.useState)(`linear`),[b,x]=(0,s.useState)(!1),S=(0,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:2,color:`red`,label:`Draggable Point`,labelConfig:{font:`bold 8px ${r}`,color:`rgba(0,0,0,0.7)`}}]},chartStyling:{height:`100%`,squareAspectRatio:g},additionalAxesOptions:{chartScaleType:v},legend:{display:!1}}),[e,g,v]),C=(0,s.useMemo)(()=>({data:{datasets:e},options:S}),[e,S]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{style:{display:`flex`,gap:8,flexWrap:`wrap`,marginBottom:16},children:[(0,l.jsx)(a,{label:`Reset to Initial State`,colored:!0,onClick:()=>{t(u),i(e=>e+1),p(!0),x(!1)}}),(0,l.jsx)(a,{label:`Async Dataset + Unmount`,onClick:()=>{h(!0);let e=[];for(let n=0;n<50;n++)setTimeout(()=>{e.push({label:`DS ${n+1}`,data:[{x:n,y:Math.random()*100},{x:n+1,y:Math.random()*100}],borderColor:`hsl(${n*(360/50)}, 100%, 50%)`}),t([...e]),n===15&&(console.warn(`Forcing unmount mid-update`),p(!1)),n===25&&(console.warn(`Remounting chart`),p(!0),i(e=>e+1)),n===49&&(console.log(`Async injection complete`),h(!1))},n*40)},disabled:m}),(0,l.jsx)(a,{label:`Set Invalid Dataset`,onClick:()=>{t([{label:`Broken Dataset`,borderColor:`red`}])}}),(0,l.jsx)(a,{label:`Set Empty Dataset`,onClick:()=>{t([])}}),(0,l.jsx)(a,{label:`Mixed Data Formats`,onClick:()=>{t([{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`}])}}),(0,l.jsx)(a,{label:`Bad Axis Ref`,onClick:()=>{t([{label:`Bad Y Axis Ref`,yAxisID:`y-missing`,data:[{x:1,y:1},{x:2,y:2}],borderColor:`purple`}])}}),(0,l.jsx)(a,{label:`Toggle size`,onClick:()=>d(!c)}),(0,l.jsx)(a,{label:`Toggle Axis Type`,onClick:()=>{y(e=>e===`linear`?`logarithmic`:`linear`)}}),(0,l.jsx)(a,{label:`Toggle Aspect Ratio`,onClick:()=>{_(e=>!e)}}),(0,l.jsx)(a,{label:`Spam Re-renders`,onClick:()=>{let e=0,t=setInterval(()=>{i(e=>e+1),e++,e===100&&clearInterval(t)},30)}}),(0,l.jsx)(a,{label:f?`Unmount Chart`:`Remount Chart`,onClick:()=>p(e=>!e)}),(0,l.jsx)(a,{label:`Manual Re-render`,onClick:()=>i(e=>e+1)}),(0,l.jsx)(a,{label:`Empty Dataset`,onClick:()=>t([])}),(0,l.jsx)(a,{label:`Add 5k Points Slowly`,onClick:()=>{t([{label:`Big 5k Points`,data:Array.from({length:5e3},(e,t)=>({x:t,y:Math.sin(t/100)*100})),borderColor:`orange`}])}}),(0,l.jsx)(a,{label:`Dataset With Invalid Point`,onClick:()=>{t([{label:`Corrupt Point Dataset`,data:[{x:0,y:10},{x:1},{y:20},null,void 0,`bad-value`,{x:5,y:50}],borderColor:`red`}])}}),(0,l.jsx)(a,{label:`Malformed Dataset Combo`,onClick:()=>{t([{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`}])}}),(0,l.jsx)(a,{label:`Cycle Big Load (Async)`,onClick:()=>{let e=[];for(let t=0;t<4;t++){let n=Array.from({length:3e3},(e,t)=>({x:t,y:Math.random()*100}));e.push({label:`Stream DS ${t+1}`,data:n,borderColor:`hsl(${t*90}, 100%, 50%)`})}let n=0,r=setInterval(()=>{t(e.slice(0,n+1)),n++,n===e.length&&clearInterval(r)},500)}}),(0,l.jsx)(a,{label:`Timed Unmount During Drag`,onClick:()=>{x(!0),p(!0),setTimeout(()=>{p(!1),x(!1)},5e3)},disabled:b})]}),b&&(0,l.jsx)(`span`,{style:{color:`crimson`,fontWeight:`bold`},children:`⏱ Unmounting in 5s – start dragging!`}),(0,l.jsx)(`div`,{style:{height:c?300:null,width:c?300:null,padding:`var(--padding)`,overflow:`auto`},children:f?(0,l.jsx)(o,{chart:C},n):(0,l.jsx)(`div`,{style:{padding:40,textAlign:`center`},children:`Chart unmounted`})})]})};f.__docgenInfo={description:``,methods:[],displayName:`PartialRangeWithSimilarValues`},p.__docgenInfo={description:``,methods:[],displayName:`closeToValueInDifferentAxes`},m.__docgenInfo={description:``,methods:[],displayName:`StressTest`},f.parameters={...f.parameters,docs:{...f.parameters?.docs,source:{originalSource:`() => {
|
|
1
|
+
import{_t as e,at as t,dt as n}from"./iframe-C1GQfKrF.js";import{W as r}from"./legend-context-DcwmaAWO.js";import{v as i,w as a}from"./legend-CsZDU7pS.js";import"./get-draggableData-D6slJ9lV.js";import{t as o}from"./line-chart-DisTE6pS.js";var s=e(n(),1),c={controlsPortalId:`chartOne-plan-view-chart-controls`,data:{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:[]}]}]},options:{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:[]}}},l=e(t(),1),u=[{label:`Dataset 1`,data:[{x:0,y:0},{x:5,y:25}]}],d={title:`LineChart / Test Cases`,component:o,args:{chart:{data:{datasets:u},options:{title:`Chart title`,chartStyling:{height:`100%`}}}}};const f=()=>(0,l.jsx)(o,{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}}}}),p=()=>(0,l.jsx)(o,{chart:c}),m=()=>{let[e,t]=(0,s.useState)(u),[n,i]=(0,s.useState)(0),[c,d]=(0,s.useState)(!1),[f,p]=(0,s.useState)(!0),[m,h]=(0,s.useState)(!1),[g,_]=(0,s.useState)(!0),[v,y]=(0,s.useState)(`linear`),[b,x]=(0,s.useState)(!1),S=(0,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:2,color:`red`,label:`Draggable Point`,labelConfig:{font:`bold 8px ${r}`,color:`rgba(0,0,0,0.7)`}}]},chartStyling:{height:`100%`,squareAspectRatio:g},additionalAxesOptions:{chartScaleType:v},legend:{display:!1}}),[e,g,v]),C=(0,s.useMemo)(()=>({data:{datasets:e},options:S}),[e,S]);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{style:{display:`flex`,gap:8,flexWrap:`wrap`,marginBottom:16},children:[(0,l.jsx)(a,{label:`Reset to Initial State`,colored:!0,onClick:()=>{t(u),i(e=>e+1),p(!0),x(!1)}}),(0,l.jsx)(a,{label:`Async Dataset + Unmount`,onClick:()=>{h(!0);let e=[];for(let n=0;n<50;n++)setTimeout(()=>{e.push({label:`DS ${n+1}`,data:[{x:n,y:Math.random()*100},{x:n+1,y:Math.random()*100}],borderColor:`hsl(${n*(360/50)}, 100%, 50%)`}),t([...e]),n===15&&(console.warn(`Forcing unmount mid-update`),p(!1)),n===25&&(console.warn(`Remounting chart`),p(!0),i(e=>e+1)),n===49&&(console.log(`Async injection complete`),h(!1))},n*40)},disabled:m}),(0,l.jsx)(a,{label:`Set Invalid Dataset`,onClick:()=>{t([{label:`Broken Dataset`,borderColor:`red`}])}}),(0,l.jsx)(a,{label:`Set Empty Dataset`,onClick:()=>{t([])}}),(0,l.jsx)(a,{label:`Mixed Data Formats`,onClick:()=>{t([{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`}])}}),(0,l.jsx)(a,{label:`Bad Axis Ref`,onClick:()=>{t([{label:`Bad Y Axis Ref`,yAxisID:`y-missing`,data:[{x:1,y:1},{x:2,y:2}],borderColor:`purple`}])}}),(0,l.jsx)(a,{label:`Toggle size`,onClick:()=>d(!c)}),(0,l.jsx)(a,{label:`Toggle Axis Type`,onClick:()=>{y(e=>e===`linear`?`logarithmic`:`linear`)}}),(0,l.jsx)(a,{label:`Toggle Aspect Ratio`,onClick:()=>{_(e=>!e)}}),(0,l.jsx)(a,{label:`Spam Re-renders`,onClick:()=>{let e=0,t=setInterval(()=>{i(e=>e+1),e++,e===100&&clearInterval(t)},30)}}),(0,l.jsx)(a,{label:f?`Unmount Chart`:`Remount Chart`,onClick:()=>p(e=>!e)}),(0,l.jsx)(a,{label:`Manual Re-render`,onClick:()=>i(e=>e+1)}),(0,l.jsx)(a,{label:`Empty Dataset`,onClick:()=>t([])}),(0,l.jsx)(a,{label:`Add 5k Points Slowly`,onClick:()=>{t([{label:`Big 5k Points`,data:Array.from({length:5e3},(e,t)=>({x:t,y:Math.sin(t/100)*100})),borderColor:`orange`}])}}),(0,l.jsx)(a,{label:`Dataset With Invalid Point`,onClick:()=>{t([{label:`Corrupt Point Dataset`,data:[{x:0,y:10},{x:1},{y:20},null,void 0,`bad-value`,{x:5,y:50}],borderColor:`red`}])}}),(0,l.jsx)(a,{label:`Malformed Dataset Combo`,onClick:()=>{t([{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`}])}}),(0,l.jsx)(a,{label:`Cycle Big Load (Async)`,onClick:()=>{let e=[];for(let t=0;t<4;t++){let n=Array.from({length:3e3},(e,t)=>({x:t,y:Math.random()*100}));e.push({label:`Stream DS ${t+1}`,data:n,borderColor:`hsl(${t*90}, 100%, 50%)`})}let n=0,r=setInterval(()=>{t(e.slice(0,n+1)),n++,n===e.length&&clearInterval(r)},500)}}),(0,l.jsx)(a,{label:`Timed Unmount During Drag`,onClick:()=>{x(!0),p(!0),setTimeout(()=>{p(!1),x(!1)},5e3)},disabled:b})]}),b&&(0,l.jsx)(`span`,{style:{color:`crimson`,fontWeight:`bold`},children:`⏱ Unmounting in 5s – start dragging!`}),(0,l.jsx)(`div`,{style:{height:c?300:null,width:c?300:null,padding:`var(--padding)`,overflow:`auto`},children:f?(0,l.jsx)(o,{chart:C},n):(0,l.jsx)(`div`,{style:{padding:40,textAlign:`center`},children:`Chart unmounted`})})]})};f.__docgenInfo={description:``,methods:[],displayName:`PartialRangeWithSimilarValues`},p.__docgenInfo={description:``,methods:[],displayName:`closeToValueInDifferentAxes`},m.__docgenInfo={description:``,methods:[],displayName:`StressTest`},f.parameters={...f.parameters,docs:{...f.parameters?.docs,source:{originalSource:`() => {
|
|
2
2
|
return <LineChart chart={{
|
|
3
3
|
data: {
|
|
4
4
|
datasets: [{
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_t as e,at as t,dt as n}from"./iframe-
|
|
1
|
+
import{_t as e,at as t,dt as n}from"./iframe-C1GQfKrF.js";import{B as r,Ct as i,F as a,Mt as o,Nt as s,Ot as c,Pt as l,Q as u,X as ee,Z as d,b as f,et as p,ht as m,it as h,j as g,jt as _,kt as te,mt as ne,n as re,q as ie,u as ae,vt as oe,wt as se,x as ce,xt as le}from"./legend-context-DcwmaAWO.js";import{n as ue,t as de}from"./bar-chart-const-D_44J3Hs.js";var v=e(u(),1),y=e(n(),1),b={chart:`_chart_1jdnu_1`,fixedHeight:`_fixedHeight_1jdnu_13`,stretchHeight:`_stretchHeight_1jdnu_19`,zoomForm:`_zoomForm_1jdnu_32`,zoomReset:`_zoomReset_1jdnu_40`,help:`_help_1jdnu_43`,autoWeight:`_autoWeight_1jdnu_47`},x=e=>({width:e?.width,height:e?.height,maintainAspectRatio:e?.maintainAspectRatio||!1,staticChartHeight:e?.staticChartHeight||!1,performanceMode:e?.performanceMode??!0}),S=e=>({tooltips:e?.tooltips??!0,showLabelsInTooltips:e?.showLabelsInTooltips||!1,scientificNotation:e?.scientificNotation??!0}),fe=e=>({showDataLabels:e?.showDataLabels||!1,stacked:e?.stacked||!1,cutout:e?.cutout||0}),C=e=>({display:e?.display??!0,useDataset:e?.useDataset||!1,position:e?.position||g.Bottom,align:e?.align||ce.Center}),w=e=>({enableZoom:e?.enableZoom||!1,enablePan:e?.enablePan||!1}),T=e=>({onLegendClick:e?.onLegendClick,onHover:e?.onHover,onUnhover:e?.onUnhover}),E=e=>({labels:e?.labels||[],datasets:e?.datasets||[]});const D=e=>{let t=e?.chart||{},n=t?.options||{};return{testId:t?.testId??null,data:E(t?.data),options:{title:n?.title||``,chartStyling:x(n?.chartStyling),tooltip:S(n?.tooltip),graph:fe(n?.graph),legend:C(n?.legend),chartOptions:w(n?.chartOptions),interactions:T(n?.interactions)}}},O=e=>{let[t,n]=(0,y.useState)(!1),{data:i,options:a}=e,o=(e=>{let t=[...e];if(a.graph.stacked){let e={label:t?.[0]?.label??``,backgroundColor:[],borderColor:``,borderWidth:Number(t[0].borderWidth)||1,data:[],borderDash:[]};return i.labels.map((n,i)=>{t.map((t,n)=>{e.data.push(t.data[i]);let{backgroundColor:a}=t,{borderColor:o}=t;e.backgroundColor.push((Array.isArray(a)?a[i%(o?.length||1)]:a)||r[i]+`${99-10*n}`),e.borderColor=o??``})}),[e]}return t.map((e,t)=>{let{borderWidth:n=`1`}=e??{},i=parseFloat(String(n))||1,a=r[t],o=e.borderColor||a,s=e.backgroundColor||ae(r);return{...e,borderWidth:i,borderColor:o,backgroundColor:s}})})(i.datasets),s=()=>a.title===``?{}:{display:!0,text:e.options.title},c=(e,t,n)=>{let{chart:r}=n??{};if(t&&r){let{index:e=0}=t;if(r.toggleDataVisibility(e),r.update(),a.interactions?.onLegendClick){let n=r.isDatasetVisible(e);a.interactions.onLegendClick(t.text,!n)}}};return{generatedDatasets:o,getTitle:s,legendClick:c,onClick:(e,t,n)=>{n.resetZoom()},onHover:(e,r)=>{if(t&&!r?.length&&(n(!1),a.interactions.onUnhover&&a.interactions.onUnhover(e)),!t&&r?.length&&(n(!0),a.interactions.onHover)){let{index:t,datasetIndex:n}=r[0],i=o;a.interactions.onHover(e,n,t,i)}},getDatalabels:()=>a.graph.showDataLabels?{display:`auto`,align:`center`,anchor:`center`,formatter:(e,t)=>{if(t.chart.getDatasetMeta(a.graph.stacked?0:t.datasetIndex).data[t.dataIndex].hidden)return``;let n=t.dataset.data[t.dataIndex],r=n?.label||(typeof n==`number`?n:Array.isArray(n)?n.reduce((e,t,n)=>n===0?`${e} ${t}`:`${e}, ${t}`,``):``);return typeof n==`number`?Number.isInteger(r)?r:r.toFixed(2):r}}:{display:!1},getLegend:()=>({position:a.legend.position,display:a.legend.display,align:a.legend.align,labels:{boxHeight:6,boxWidth:6,usePointStyle:!0,filter:e=>a.legend.useDataset?!i.datasets[e.index]?.hideLegend:!0},onClick:c}),getToolTips:()=>{let e=e=>{let t={};return a?.tooltip?.scientificNotation?(Math.abs(e)<1e-4||Math.abs(e)>1e7)&&(t={roundScientificCoefficient:3}):t={scientific:!1},p(h(e),t)};return{callbacks:{title:e=>{let{dataIndex:t}=e[0],n=a.graph.stacked?parseInt(String(t/i.labels.length)):t;return`${i.labels[n]}`},label:t=>{let{dataIndex:n}=t,r=a.graph.stacked?n%i.datasets.length:t.datasetIndex,o=i.datasets.length>1?`${i.datasets[r]?.label}: `:``,s=t.dataset.data[n],c=typeof s==`object`?`${s.value||``} ${a.tooltip.showLabelsInTooltips&&s.label?`(`+s.label+`)`:``}`:s,l=i?.yUnit?`[${i?.yUnit}]`:``;return`${o} ${e(c)} ${l}`}},padding:8,boxWidth:12,boxHeight:12,boxPadding:4,usePointStyle:!0}}}};var k=e(t(),1);se.register(c,i,te,le,o,l,s,_,m,ne);var A=e=>{f();let t=D(e),n=(0,y.useRef)(null),{data:r,options:i,testId:o}=t,{generatedDatasets:s,getTitle:c,onClick:l,onHover:u,getDatalabels:ee,getLegend:d,getToolTips:p}=O(t);return(0,k.jsx)(`div`,{className:(0,v.default)(b.chart,!i.chartStyling.width||!i.chartStyling.height?i.chartStyling.staticChartHeight?b.fixedHeight:b.stretchHeight:``),style:{width:i.chartStyling.width||`auto`,height:i.chartStyling.height||`auto`},"data-testid":o,children:(0,k.jsx)(oe,{ref:n,data:{datasets:s,labels:i.graph.stacked?void 0:r.labels},options:{cutout:i.graph.cutout,onClick:l,responsive:!0,maintainAspectRatio:i.chartStyling.maintainAspectRatio,animation:i.chartStyling.performanceMode?!1:{duration:a.FAST},hover:{mode:`nearest`,intersect:!0},onHover:u,plugins:{annotation:!1,title:c(),datalabels:ee(),tooltip:p(),legend:d()}}})})},j=e=>{let{options:t}=D(e);return(0,k.jsx)(re,{options:t,children:(0,k.jsx)(A,{...e})})};j.__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:``}}};var M=[`label 1`,`label 2`,`label 3`],N={label:`data1`,data:[3,8,7]},P={label:`data2`,data:[1,2,3]},F={label:`data3`,data:[5,0,4]},I={label:`spacing data`,offset:40,data:[3,8,7]},L={label:`hover data`,data:[3,8,7],hoverOffset:40},R={label:`data`,data:[{value:210,label:`label`},{value:333,label:`labal`},{value:248,label:`lebel`}]},z={label:`data`,data:[210,333,248]},B={data:{labels:M,datasets:[N]}},V={data:{labels:M,datasets:[N,P,F]}},pe={data:{labels:M,datasets:[N,P,F]},options:{title:`Stacked`,graph:{stacked:!0}}},me={data:{labels:M,datasets:[R]},options:{title:`With custom datalabels`,graph:{showDataLabels:!0}}},he={data:{labels:M,datasets:[z]},options:{title:`With value as datalabels`,graph:{showDataLabels:!0}}},ge={data:{labels:M,datasets:[R]},options:{title:`With datalabels in tooltips`,tooltip:{showLabelsInTooltips:!0}}},_e={data:{labels:M,datasets:[L]},options:{title:`Hover offset`}},ve={data:{labels:M,datasets:[I]},options:{title:`Segment offset`}},ye={data:{labels:M,datasets:[N]},options:{chartStyling:{performanceMode:!1}}},be={data:{labels:M,datasets:[N]},options:{title:`Cutout 50%`,graph:{cutout:`50%`}}},xe={data:{labels:M,datasets:[N]},options:{title:`Cutout 20 pixels`,graph:{cutout:20}}},Se={title:`PieChart`,component:j,args:{chart:B}},H=e=>(0,k.jsx)(j,{...e});const U=H.bind({}),W=H.bind({});W.args={chart:V};const G=H.bind({});G.args={chart:pe};const K=H.bind({});K.args={chart:me};const q=H.bind({});q.args={chart:he};const J=H.bind({});J.args={chart:ge};const Y=H.bind({});Y.args={chart:ye};const X=H.bind({});X.args={chart:be};const Z=H.bind({});Z.args={chart:xe};const Q=H.bind({});Q.args={chart:_e};const $=H.bind({});Q.args={chart:ve},U.parameters={...U.parameters,docs:{...U.parameters?.docs,source:{originalSource:`args => {
|
|
2
2
|
return <PieChart
|
|
3
3
|
// eslint-disable-next-line react/jsx-props-no-spreading
|
|
4
4
|
{...args} />;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_t as e,dt as t}from"./iframe-
|
|
1
|
+
import{_t as e,dt as t}from"./iframe-C1GQfKrF.js";import{t as n}from"./client-DnDXBRQi.js";var r=e(t(),1),i=e(n(),1),a=new Map;function o(){return globalThis.IS_REACT_ACT_ENVIRONMENT}var s=({callback:e,children:t})=>{let n=r.useRef();return r.useLayoutEffect(()=>{n.current!==e&&(n.current=e,e())},[e]),t};typeof Promise.withResolvers>`u`&&(Promise.withResolvers=()=>{let e=null,t=null;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}});var c=async(e,t,n)=>{let i=await u(t,n);if(o()){i.render(e);return}let{promise:a,resolve:c}=Promise.withResolvers();return i.render(r.createElement(s,{callback:c},e)),a},l=(e,t)=>{let n=a.get(e);n&&(n.unmount(),a.delete(e))},u=async(e,t)=>{let n=a.get(e);return n||(n=i.createRoot(e,t),a.set(e,n)),n};export{c as renderElement,l as unmountElement};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{_t as e,dt as t}from"./iframe-
|
|
1
|
+
import{_t as e,dt as t}from"./iframe-C1GQfKrF.js";var n=e(t(),1),r={},i=n.createContext(r);function a(e){let t=n.useContext(i);return n.useMemo(function(){return typeof e==`function`?e(t):{...t,...e}},[t,e])}function o(e){let t;return t=e.disableParentContext?typeof e.components==`function`?e.components(r):e.components||r:a(e.components),n.createElement(i.Provider,{value:t},e.children)}export{o as MDXProvider,a as useMDXComponents};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{_t as e,at as t,dt as n}from"./iframe-
|
|
1
|
+
import{_t as e,at as t,dt as n}from"./iframe-C1GQfKrF.js";import{At as r,B as i,C as a,Ct as o,F as s,G as c,K as l,L as u,M as d,Mt as f,Nt as p,Ot as m,Pt as h,R as ee,b as g,et as _,g as v,h as y,ht as b,it as te,j as ne,mt as re,n as ie,p as ae,wt as oe,x as se,y as ce,yt as le}from"./legend-context-DcwmaAWO.js";import{J as ue,Y as de,d as fe,f as pe,g as me,i as he,p as ge,q as _e,r as ve,t as ye}from"./legend-CsZDU7pS.js";import{n as be,t as xe}from"./bar-chart-const-D_44J3Hs.js";var x=e(n(),1);const S=(e,t)=>{let n={};return t?(Math.abs(e)<1e-4||Math.abs(e)>1e7)&&(n={roundScientificCoefficient:3}):n={scientific:!1},_(te(e),n)};var C=(e,t)=>{if(t?.tooltip?.showLabelsInTooltips){let{label:t}=e[0]?.dataset??{};return t}},w=(e,t)=>{let{raw:n,dataset:r}=e??{},i=n?.label,a=t?.tooltip?.scientificNotation;return`${i??r?.label} ( x: ${S(n?.x,a)} , y: ${S(n?.y,a)} )`};const T=e=>({enabled:e?.tooltip?.enabled,callbacks:{title:t=>C(t,e),label:t=>w(t,e)},backgroundColor:e?.tooltip?.backgroundColor,displayColors:e?.tooltip?.displayColors,padding:7});var E=({options:e,axisType:t=a.X,currentScale:n})=>{let r=ce(e.direction),i=n||e?.axes?.[t]?.[0],o=r&&t===a.Y||!r&&t===a.X,s=i?.gridLines||{};return{type:d.Linear,position:i?.position,beginAtZero:e?.additionalAxesOptions?.beginAtZero,reverse:(()=>t===(r?a.Y:a.X)?e?.additionalAxesOptions?.reverse:!1)(),suggestedMax:e?.additionalAxesOptions?.suggestedMax,suggestedMin:e?.additionalAxesOptions?.suggestedMin,min:o?e?.additionalAxesOptions?.min:void 0,max:o?e?.additionalAxesOptions?.max:void 0,title:{display:!!i?.label?.length||!!i?.unit?.length,text:i?.label||i?.unit,padding:0},ticks:(()=>{let n=e?.additionalAxesOptions;return{stepSize:i?.stepSize??(t===a.Y?n?.stepSize:void 0),includeBounds:!1,font:{size:12}}})(),grid:{...s}}};const D=e=>({x:E({options:e,axisType:a.X}),y:E({options:e,axisType:a.Y})}),O=(e,t)=>{let{data:n,options:r}=e,{interactions:a,chartStyling:o}=r,[c,l]=(0,x.useState)(!1),{legend:u,customLegendPlugin:d,legendClick:f}=pe({chartRef:t,options:r}),{state:p}=ge(),{annotation:m}=p,h=(e=>e.map((e,t)=>{let{borderWidth:n=1}=e??{},r=parseFloat(String(n))||1,a=i[t],o=e.borderColor??a,s=e.backgroundColor??a;return{...e,borderWidth:r,borderColor:o,backgroundColor:s}}))(n.datasets),g=(e,t,n)=>{n.resetZoom()},_=(e,t)=>{if(c&&!t?.length&&(l(!1),a.onUnhover&&a.onUnhover(e)),!c&&t?.length&&(l(!0),a.onHover)){let{index:n,datasetIndex:r}=t[0];a.onHover(e,r,n,h)}};return{generatedDatasets:h,scatterOptions:{onClick:g,onHover:_,...o,interactions:{onLegendClick:f,onHover:_},scales:D(e?.options),animation:o.performanceMode?{duration:s.NO}:{duration:s.FAST,onComplete:a?.onAnimationComplete},plugins:{legend:{...u,display:!1,events:[]},customLegendPlugin:d,title:v(r),annotation:fe(m),chartAreaBorder:{borderColor:ee},datalabels:{display:r.graph.showDataLabels},tooltip:T(r)}}}};let k=function(e){return 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}({});var A=e=>({display:e?.display??!1,gradientColors:e?.gradientColors??l,direction:e?.direction??k.BottomLeftToTopRight}),j=e=>({width:e?.width??`auto`,height:e?.height??`auto`,maintainAspectRatio:e?.maintainAspectRatio||!1,staticChartHeight:e?.staticChartHeight||!1,performanceMode:e?.performanceMode??!0,gradient:A(e?.gradient)}),M=e=>({enabled:e?.enabled??!0,tooltips:e?.tooltips??!0,showLabelsInTooltips:e?.showLabelsInTooltips||!1,backgroundColor:e?.backgroundColor||`#333`,displayColors:e?.displayColors||!1,scientificNotation:e?.scientificNotation??!0}),Se=e=>({showMinorGridlines:e?.showMinorGridlines??!1,showDataLabels:e?.showDataLabels??!1}),Ce=e=>({display:e?.display??!0,useDataset:e?.useDataset||!1,position:e?.position||ne.BottomLeft,align:e?.align||se.Center}),we=e=>({enableZoom:e?.enableZoom||!1,enablePan:e?.enablePan||!1}),Te=e=>({onLegendClick:e?.onLegendClick,onHover:e?.onHover,onUnhover:e?.onUnhover,onAnimationComplete:e?.onAnimationComplete}),Ee=e=>({labels:e?.labels||[],datasets:e?.datasets||[]}),De=e=>e?e.map(e=>({...e,display:e?.display??!0})):[],Oe=e=>({showAnnotations:e?.showAnnotations??!0,controlAnnotation:e?.controlAnnotation||!1,annotationsData:De(e?.annotationsData)}),ke=e=>({x:e?.x||[{}],y:e?.y||[{}]}),Ae=e=>({reverse:e?.reverse||!1,stacked:e?.stacked||!1,beginAtZero:e?.beginAtZero??!0,stepSize:e?.stepSize,suggestedMin:e?.suggestedMin,suggestedMax:e?.suggestedMax,min:e?.min,max:e?.max});const N=e=>{let t=e?.chart||{},n=t?.options||{};return{testId:t?.testId??null,data:Ee(t?.data),options:{title:n?.title||``,axes:ke(n?.axes),additionalAxesOptions:Ae(n?.additionalAxesOptions),direction:n?.direction||ve.VERTICAL,chartStyling:j(n?.chartStyling),tooltip:M(n?.tooltip),graph:Se(n?.graph),legend:Ce(n?.legend),annotations:Oe(n?.annotations),chartOptions:we(n?.chartOptions),interactions:Te(n?.interactions)}}};var je=(e,t)=>{switch(e){case k.TopToBottom:return[t.left,t.top,t.left,t.bottom];case k.BottomToTop:return[t.left,t.bottom,t.left,t.top];case k.LeftToRight:return[t.left,t.top,t.right,t.top];case k.RightToLeft:return[t.right,t.top,t.left,t.top];case k.TopLeftToBottomRight:return[t.left,t.top,t.right,t.bottom];case k.BottomRightToTopLeft:return[t.right,t.bottom,t.left,t.top];case k.BottomLeftToTopRight:return[t.left,t.bottom,t.right,t.top];case k.TopRightToBottomLeft:return[t.right,t.top,t.left,t.bottom];default:return[t.left,t.bottom,t.right,t.top]}};const Me={id:`gradientBackgroundPlugin`,beforeDraw:e=>{let{ctx:t,chartArea:n,options:r}=e;if(!t||!n)return;let{display:i=!1,gradientColors:a,direction:o=k.BottomLeftToTopRight}=r?.gradient??{};if(!i||!a||a.length===0)return;let[s,c,l,u]=je(o,n),d=t.createLinearGradient(s,c,l,u);a.forEach(({offset:e,color:t})=>{d.addColorStop(e,t)}),t.save(),t.globalCompositeOperation=`destination-over`,t.fillStyle=d,t.fillRect(n.left,n.top,n.right-n.left,n.bottom-n.top),t.restore()}};var P={chart:`_chart_1qlu1_1`,canvas:`_canvas_1qlu1_11`,fixedHeight:`_fixedHeight_1qlu1_20`,stretchHeight:`_stretchHeight_1qlu1_26`,squareAspectRatio:`_squareAspectRatio_1qlu1_32`,zoomForm:`_zoomForm_1qlu1_43`,zoomReset:`_zoomReset_1qlu1_51`,help:`_help_1qlu1_54`,autoWeight:`_autoWeight_1qlu1_58`},F=e(t(),1);oe.register(m,r,o,f,h,p,b,re,de,Me);var Ne=e=>{g();let t=(0,x.useRef)(null),n=N(e),{options:r,testId:i}=n,{scatterOptions:a,generatedDatasets:o}=O(n,t);return(0,F.jsx)(`div`,{className:ae(r.chartStyling,P),style:{width:r.chartStyling.width,height:r.chartStyling.height},"data-testid":i,children:(0,F.jsx)(_e,{backend:ue,context:window,children:(0,F.jsxs)(`div`,{className:P.canvas,id:`canvas`,children:[(0,F.jsx)(le,{ref:t,data:{datasets:o},options:a,plugins:y(r.graph,r.legend)}),!!o.length&&(0,F.jsx)(ye,{chartRef:t,legendConfig:{options:r,generatedDatasets:o,chartType:he.SCATTER}})]})})})},I=e=>{let{options:t}=N(e);return(0,F.jsx)(ie,{options:t,children:(0,F.jsx)(Ne,{...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:``}}};var L=[`label 1`,`label 2`,`label 3`],R={label:`Dataset 1`,data:[{x:1,y:5},{x:3,y:7},{x:6,y:2},{x:8,y:6},{x:9,y:4}]},z={label:`Dataset 2`,data:[{x:1,y:3},{x:4,y:5},{x:7,y:9},{x:10,y:2},{x:12,y:7}]},Pe={label:`Dataset 3`,data:[{x:2,y:8},{x:5,y:6},{x:8,y:10},{x:11,y:5},{x:14,y:9}]},B={label:`Dataset 4`,data:[{x:2,y:8},{x:14,y:9}]},Fe={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`}]},Ie={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`}]},Le={label:`Dataset Decimals`,data:[{x:4.30021321123002,y:2.30021321123005},{x:5.12321321000003,y:3.23213210000037}]},V={data:{labels:L,datasets:[R]}},Re={data:{labels:L,datasets:[R]},options:{chartStyling:{height:300,width:700}}},ze={data:{labels:L,datasets:[R,z,Pe]}},Be={data:{labels:L,datasets:[R]},options:{title:`With Data Labels`,graph:{showDataLabels:!0}}},Ve={data:{labels:L,datasets:[R,z,Le]},options:{title:`With Tooltips`,tooltip:{title:`Tooltip`,showLabelsInTooltips:!0}}},He={data:{labels:L,datasets:[{...R,backgroundColor:`red`,borderColor:`red`}]}},Ue={data:{labels:L,datasets:[R]},options:{title:`With Annotation`,annotations:{showAnnotations:!0,annotationsData:[{annotationAxis:`y`,label:`Horizontal Annotation`,value:2.5,color:`rgba(96, 32, 196, 0.5)`}]}}},We={data:{labels:L,datasets:[R,z,B]},options:{title:`With Axes Labels`,axes:{x:[{label:`x axis`}],y:[{label:`y axis`}]}}},Ge={...V,options:{title:`With Gradient`,chartStyling:{gradient:{display:!0}}}},H={data:{datasets:[Fe,Ie,B]},options:{title:`With datapoint label showing when hovered`,tooltip:{showLabelsInTooltips:!0}}},Ke={title:`ScatterChart`,component:I,args:{chart:V}},U=e=>(0,F.jsx)(I,{...e});const W=U.bind({});W.args={chart:V};const G=U.bind({});G.args={chart:Re};const K=U.bind({});K.args={chart:ze};const q=U.bind({});q.args={chart:Be};const J=U.bind({});J.args={chart:Ve};const Y=U.bind({});Y.args={chart:Ue};const X=U.bind({});X.args={chart:We};const Z=U.bind({});Z.args={chart:Ge};const Q=U.bind({});Q.args={chart:H};const $=U.bind({});$.args={chart:He},W.parameters={...W.parameters,docs:{...W.parameters?.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
|
@@ -529,7 +529,7 @@
|
|
|
529
529
|
}
|
|
530
530
|
</script>
|
|
531
531
|
|
|
532
|
-
<script type="module" crossorigin src="./assets/iframe-
|
|
532
|
+
<script type="module" crossorigin src="./assets/iframe-C1GQfKrF.js"></script>
|
|
533
533
|
<link rel="modulepreload" crossorigin href="./assets/preload-helper-Dr7BywEQ.js">
|
|
534
534
|
|
|
535
535
|
</head>
|
package/dist/index.js
CHANGED
|
@@ -19624,6 +19624,7 @@ const useChartOptions = ({ chartRef, state, options, dispatch, generatedDatasets
|
|
|
19624
19624
|
onUpdateEdited(true);
|
|
19625
19625
|
}
|
|
19626
19626
|
}), [zoomEnabled]);
|
|
19627
|
+
console.log(annotation$1);
|
|
19627
19628
|
const plugins$1 = {
|
|
19628
19629
|
datalabels,
|
|
19629
19630
|
annotationDraggerPlugin: { enabled: state?.enableDragAnnotation },
|
package/dist/project.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"generatedAt":
|
|
1
|
+
{"generatedAt":1762443309028,"hasCustomBabel":false,"hasCustomWebpack":false,"hasStaticDirs":false,"hasStorybookEslint":true,"refCount":0,"testPackages":{"@storybook/testing-library":"0.2.2","eslint-plugin-vitest":"0.5.4","eslint-plugin-vitest-globals":"1.5.0","vitest":"4.0.4"},"hasRouterPackage":false,"packageManager":{"type":"yarn","agent":"yarn","nodeLinker":"undefined"},"typescriptOptions":{"reactDocgen":"react-docgen"},"preview":{"usesGlobals":false},"framework":{"name":"@storybook/react-vite","options":{}},"builder":"@storybook/builder-vite","renderer":"@storybook/react","portableStoriesFileCount":0,"applicationFileCount":0,"storybookVersion":"9.1.16","language":"javascript","storybookPackages":{"@storybook/react-vite":{"version":"9.1.16"},"@storybook/testing-library":{"version":"0.2.2"},"eslint-plugin-storybook":{"version":"9.1.16"},"storybook":{"version":"9.1.16"}},"addons":{"@storybook/addon-themes":{"version":"9.1.16"},"@storybook/addon-docs":{"version":"9.1.16"}}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oliasoft-open-source/charts-library",
|
|
3
|
-
"version": "5.2.
|
|
3
|
+
"version": "5.2.2-beta-1",
|
|
4
4
|
"description": "React Chart Library (based on Chart.js and react-chart-js-2)",
|
|
5
5
|
"homepage": "https://gitlab.com/oliasoft-open-source/charts-library",
|
|
6
6
|
"resolutions": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{ft as e,it as t}from"./iframe-ssGAGOoN.js";var n=e((e=>{var n=t();e.createRoot=n.createRoot,e.hydrateRoot=n.hydrateRoot}));export{n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_t as e,at as t,dt as n}from"./iframe-ssGAGOoN.js";import{A as r,At as i,B as a,C as o,Ct as s,D as c,Dt as l,E as u,F as d,G as f,H as p,I as m,J as h,L as g,M as _,Mt as v,N as y,Nt as b,O as x,Ot as S,Pt as C,R as w,U as ee,W as te,X as ne,Y as T,Z as re,_ as E,_t as ie,a as D,b as ae,d as oe,et as se,ft as O,h as k,ht as ce,i as A,it as le,j,jt as ue,k as M,kt as de,l as fe,mt as pe,n as me,o as he,p as ge,pt as _e,q as ve,r as ye,rt as N,s as P,tt as F,u as be,v as xe,w as Se,wt as Ce,x as I,z as we}from"./legend-context-BjaECN31.js";import{A as Te,B as Ee,C as De,F as Oe,H as ke,J as Ae,K as je,L as Me,M as Ne,N as Pe,P as Fe,R as Ie,S as Le,T as Re,W as ze,Y as Be,_ as Ve,a as He,c as Ue,d as We,f as Ge,g as Ke,h as qe,i as Je,k as Ye,l as Xe,m as Ze,n as Qe,o as $e,p as et,q as tt,s as nt,t as rt,u as it,v as at,w as L,x as ot,y as st}from"./legend-BhtvtFF5.js";import{c as ct,i as lt,n as ut,r as dt,t as ft}from"./get-draggableData-Bobxhi2c.js";const pt=(e,t,n)=>{let[r,i]=e.major,[a,o]=e.minor,s=(r.x+i.x+a.x+o.x)/4,c=(r.y+i.y+a.y+o.y)/4,l=i.x-r.x,u=i.y-r.y,d=Math.atan2(n.getPixelForValue(c+u/2)-n.getPixelForValue(c-u/2),t.getPixelForValue(s+l/2)-t.getPixelForValue(s-l/2)),f=Math.hypot(t.getPixelForValue(r.x)-t.getPixelForValue(i.x),n.getPixelForValue(r.y)-n.getPixelForValue(i.y))/2,p=Math.hypot(t.getPixelForValue(a.x)-t.getPixelForValue(o.x),n.getPixelForValue(a.y)-n.getPixelForValue(o.y))/2;return{cx:t.getPixelForValue(s),cy:n.getPixelForValue(c),radiusX:f,radiusY:p,angle:d}};var mt=e=>e.data.datasets.some(e=>e.data.some(e=>!!e.ellipsePoints));const ht={id:`ellipsisAnnotationPlugin`,afterDatasetsDraw(e){if(!mt(e))return;let t=e?.ctx,n=e?.scales?.x,r=e?.scales?.y,i=e?.chartArea;!n||!r||!i||(t?.save?.(),t?.beginPath?.(),t?.rect?.(i.left,i.top,i.right-i.left,i.bottom-i.top),t?.clip?.(),e?.data?.datasets?.forEach(e=>{let i=e;i?.data?.forEach(e=>{let{ellipsePoints:a}=e??{};if(!a)return;let{cx:o,cy:s,radiusX:c,radiusY:l,angle:u}=pt(a,n,r);t?.save?.(),t?.beginPath?.(),t?.ellipse?.(o,s,c,l,u,0,2*Math.PI),t.strokeStyle=i.borderColor||`hsl(60, 10.34482759%, 12.5%)`,t.lineWidth=i.borderWidth||1,t?.stroke?.(),t?.restore?.()})}),t?.restore?.())}};var gt={chart:`_chart_e3qdd_1`,canvas:`_canvas_e3qdd_11`,fixedHeight:`_fixedHeight_e3qdd_20`,stretchHeight:`_stretchHeight_e3qdd_26`,squareAspectRatio:`_squareAspectRatio_e3qdd_32`,zoomForm:`_zoomForm_e3qdd_43`,zoomReset:`_zoomReset_e3qdd_51`,help:`_help_e3qdd_54`,autoWeight:`_autoWeight_e3qdd_58`,table:`_table_e3qdd_62`},_t=Symbol.for(`immer-nothing`),vt=Symbol.for(`immer-draftable`),R=Symbol.for(`immer-state`);function z(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var B=Object.getPrototypeOf;function V(e){return!!e&&!!e[R]}function H(e){return e?bt(e)||Array.isArray(e)||!!e[vt]||!!e.constructor?.[vt]||Et(e)||Dt(e):!1}var yt=Object.prototype.constructor.toString();function bt(e){if(!e||typeof e!=`object`)return!1;let t=B(e);if(t===null)return!0;let n=Object.hasOwnProperty.call(t,`constructor`)&&t.constructor;return n===Object?!0:typeof n==`function`&&Function.toString.call(n)===yt}function xt(e,t){St(e)===0?Reflect.ownKeys(e).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function St(e){let t=e[R];return t?t.type_:Array.isArray(e)?1:Et(e)?2:Dt(e)?3:0}function Ct(e,t){return St(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function wt(e,t,n){let r=St(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function Tt(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}function Et(e){return e instanceof Map}function Dt(e){return e instanceof Set}function U(e){return e.copy_||e.base_}function Ot(e,t){if(Et(e))return new Map(e);if(Dt(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);let n=bt(e);if(t===!0||t===`class_only`&&!n){let t=Object.getOwnPropertyDescriptors(e);delete t[R];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a.writable===!1&&(a.writable=!0,a.configurable=!0),(a.get||a.set)&&(t[i]={configurable:!0,writable:!0,enumerable:a.enumerable,value:e[i]})}return Object.create(B(e),t)}else{let t=B(e);if(t!==null&&n)return{...e};let r=Object.create(t);return Object.assign(r,e)}}function kt(e,t=!1){return jt(e)||V(e)||!H(e)?e:(St(e)>1&&(e.set=e.add=e.clear=e.delete=At),Object.freeze(e),t&&Object.entries(e).forEach(([e,t])=>kt(t,!0)),e)}function At(){z(2)}function jt(e){return Object.isFrozen(e)}var Mt={};function W(e){let t=Mt[e];return t||z(0,e),t}var G;function Nt(){return G}function Pt(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Ft(e,t){t&&(W(`Patches`),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function It(e){Lt(e),e.drafts_.forEach(zt),e.drafts_=null}function Lt(e){e===G&&(G=e.parent_)}function Rt(e){return G=Pt(G,e)}function zt(e){let t=e[R];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Bt(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];return e!==void 0&&e!==n?(n[R].modified_&&(It(t),z(4)),H(e)&&(e=Vt(t,e),t.parent_||Ut(t,e)),t.patches_&&W(`Patches`).generateReplacementPatches_(n[R].base_,e,t.patches_,t.inversePatches_)):e=Vt(t,n,[]),It(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===_t?void 0:e}function Vt(e,t,n){if(jt(t))return t;let r=t[R];if(!r)return xt(t,(i,a)=>Ht(e,r,t,i,a,n)),t;if(r.scope_!==e)return t;if(!r.modified_)return Ut(e,r.base_,!0),r.base_;if(!r.finalized_){r.finalized_=!0,r.scope_.unfinalizedDrafts_--;let t=r.copy_,i=t,a=!1;r.type_===3&&(i=new Set(t),t.clear(),a=!0),xt(i,(i,o)=>Ht(e,r,t,i,o,n,a)),Ut(e,t,!1),n&&e.patches_&&W(`Patches`).generatePatches_(r,n,e.patches_,e.inversePatches_)}return r.copy_}function Ht(e,t,n,r,i,a,o){if(V(i)){let o=Vt(e,i,a&&t&&t.type_!==3&&!Ct(t.assigned_,r)?a.concat(r):void 0);if(wt(n,r,o),V(o))e.canAutoFreeze_=!1;else return}else o&&n.add(i);if(H(i)&&!jt(i)){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1)return;Vt(e,i),(!t||!t.scope_.parent_)&&typeof r!=`symbol`&&Object.prototype.propertyIsEnumerable.call(n,r)&&Ut(e,i)}}function Ut(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&kt(t,n)}function Wt(e,t){let n=Array.isArray(e),r={type_:n?1:0,scope_:t?t.scope_:Nt(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1},i=r,a=Gt;n&&(i=[r],a=K);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,s}var Gt={get(e,t){if(t===R)return e;let n=U(e);if(!Ct(n,t))return qt(e,n,t);let r=n[t];return e.finalized_||!H(r)?r:r===Kt(e.base_,t)?(Xt(e),e.copy_[t]=Qt(r,e)):r},has(e,t){return t in U(e)},ownKeys(e){return Reflect.ownKeys(U(e))},set(e,t,n){let r=Jt(U(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=Kt(U(e),t),i=r?.[R];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_[t]=!1,!0;if(Tt(n,r)&&(n!==void 0||Ct(e.base_,t)))return!0;Xt(e),Yt(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_[t]=!0,!0)},deleteProperty(e,t){return Kt(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,Xt(e),Yt(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=U(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{writable:!0,configurable:e.type_!==1||t!==`length`,enumerable:r.enumerable,value:n[t]}},defineProperty(){z(11)},getPrototypeOf(e){return B(e.base_)},setPrototypeOf(){z(12)}},K={};xt(Gt,(e,t)=>{K[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),K.deleteProperty=function(e,t){return K.set.call(this,e,t,void 0)},K.set=function(e,t,n){return Gt.set.call(this,e[0],t,n,e[0])};function Kt(e,t){let n=e[R];return(n?U(n):e)[t]}function qt(e,t,n){let r=Jt(t,n);return r?`value`in r?r.value:r.get?.call(e.draft_):void 0}function Jt(e,t){if(!(t in e))return;let n=B(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=B(n)}}function Yt(e){e.modified_||(e.modified_=!0,e.parent_&&Yt(e.parent_))}function Xt(e){e.copy_||=Ot(e.base_,e.scope_.immer_.useStrictShallowCopy_)}var Zt=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.produce=(e,t,n)=>{if(typeof e==`function`&&typeof t!=`function`){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}typeof t!=`function`&&z(6),n!==void 0&&typeof n!=`function`&&z(7);let r;if(H(e)){let i=Rt(this),a=Qt(e,void 0),o=!0;try{r=t(a),o=!1}finally{o?It(i):Lt(i)}return Ft(i,n),Bt(r,i)}else if(!e||typeof e!=`object`){if(r=t(e),r===void 0&&(r=e),r===_t&&(r=void 0),this.autoFreeze_&&kt(r,!0),n){let t=[],i=[];W(`Patches`).generateReplacementPatches_(e,r,t,i),n(t,i)}return r}else z(1,e)},this.produceWithPatches=(e,t)=>{if(typeof e==`function`)return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},typeof e?.autoFreeze==`boolean`&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy==`boolean`&&this.setUseStrictShallowCopy(e.useStrictShallowCopy)}createDraft(e){H(e)||z(8),V(e)&&(e=$t(e));let t=Rt(this),n=Qt(e,void 0);return n[R].isManual_=!0,Lt(t),n}finishDraft(e,t){let n=e&&e[R];(!n||!n.isManual_)&&z(9);let{scope_:r}=n;return Ft(r,t),Bt(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=W(`Patches`).applyPatches_;return V(e)?r(e,t):this.produce(e,e=>r(e,t))}};function Qt(e,t){let n=Et(e)?W(`MapSet`).proxyMap_(e,t):Dt(e)?W(`MapSet`).proxySet_(e,t):Wt(e,t);return(t?t.scope_:Nt()).drafts_.push(n),n}function $t(e){return V(e)||z(10,e),en(e)}function en(e){if(!H(e)||jt(e))return e;let t=e[R],n;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=Ot(e,t.scope_.immer_.useStrictShallowCopy_)}else n=Ot(e,!0);return xt(n,(e,t)=>{wt(n,e,en(t))}),t&&(t.finalized_=!1),n}var q=new Zt,tn=q.produce;q.produceWithPatches.bind(q),q.setAutoFreeze.bind(q),q.setUseStrictShallowCopy.bind(q),q.applyPatches.bind(q),q.createDraft.bind(q),q.finishDraft.bind(q);const nn=`TOGGLE_ZOOM`,rn=`TOGGLE_PAN`,an=`TOGGLE_POINTS`,on=`TOGGLE_LINE`,sn=`TOGGLE_LEGEND`,cn=`TOGGLE_TABLE`,ln=`RESET_AXES_RANGES`,un=`UPDATE_AXES_RANGES`,dn=`TOGGLE_DRAG_POINTS`,fn=`TOGGLE_DRAG_ANNOTATION`,pn=`DISABLE_DRAG_OPTIONS`,mn=`UPDATE_EDITED`,hn=(e,t)=>tn(e,e=>{switch(t.type){case nn:e.zoomEnabled=!e.zoomEnabled,e.panEnabled&&=!1,e.enableDragPoints&&=!1,e.enableDragAnnotation&&=!1;break;case rn:e.panEnabled=!e.panEnabled,e.zoomEnabled&&=!1,e.enableDragPoints&&=!1,e.enableDragAnnotation&&=!1;break;case an:e.pointsEnabled=!e.pointsEnabled;break;case on:e.lineEnabled=!e.lineEnabled;break;case sn:e.legendEnabled=!e.legendEnabled;break;case cn:e.showTable=!e.showTable;break;case un:{let{axes:n}=t.payload;e.axes=n;break}case ln:{let{axes:n}=t.payload;e.axes=n;break}case dn:e.enableDragPoints=!e.enableDragPoints,e.panEnabled&&=!1,e.zoomEnabled&&=!1,e.enableDragAnnotation&&=!1;break;case fn:e.enableDragAnnotation=!e.enableDragAnnotation,e.panEnabled&&=!1,e.zoomEnabled&&=!1;break;case pn:(e.enableDragAnnotation||e.enableDragPoints||e.panEnabled||e.zoomEnabled)&&(e.enableDragAnnotation=!1,e.enableDragPoints=!1,e.panEnabled=!1,e.zoomEnabled=!1);break;case mn:e.edited=t.payload;break}}),gn=e=>{if(!e)return null;let t=`line-chart-state-${e}`,n=localStorage.getItem(t);return n?JSON.parse(n).state:null};var _n=(e=72)=>{let t=new Date().getTime(),n=e*60*60*1e3;for(let e=0;e<localStorage.length;e++){let r=localStorage.key(e);if(r?.includes(`line-chart-state-`)){let e=localStorage.getItem(r);if(e){let i=JSON.parse(e).timestamp;i&&t-i>n&&localStorage.removeItem(r)}}}};const vn=(e,t)=>{if(!t)return;let n=new Date().getTime(),r=`line-chart-state-${t}`,i={state:e,timestamp:n};localStorage.setItem(r,JSON.stringify(i)),_n()};var yn=({options:e,persistenceId:t})=>{let{chartOptions:{enableZoom:n,enablePan:r,showPoints:i,showLine:a,enableDragAnnotation:o},legend:{display:s},dragData:c}=e,{zoomEnabled:l,panEnabled:u,pointsEnabled:d,lineEnabled:f,legendEnabled:p,enableDragPoints:m,enableDragAnnotation:h}=gn(t)||{};return{zoomEnabled:o??h?!1:l??n,panEnabled:u??r,pointsEnabled:d??i,lineEnabled:f??a,legendEnabled:p??s,axes:[],showTable:!1,enableDragPoints:c?.enableDragData&&m,enableDragAnnotation:o??h,edited:!1}},J=e(n()),Y=e(t()),bn=e=>(0,Y.jsxs)(`svg`,{fill:`currentColor`,height:`1em`,viewBox:`0 0 12 12`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,xmlnsXlink:`http://www.w3.org/1999/xlink`,...e,children:[(0,Y.jsx)(`clipPath`,{id:`a`,children:(0,Y.jsx)(`path`,{d:`m0 0h12v12h-12z`})}),(0,Y.jsx)(`g`,{clipPath:`url(#a)`,children:(0,Y.jsx)(`path`,{d:`m.5 6.5v-1h11v1c-4.16104 0-6.63549 0-11 0z`})})]}),xn=e=>(0,Y.jsx)(`svg`,{fill:`currentColor`,height:`1em`,viewBox:`0 0 12 12`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,Y.jsx)(`circle`,{cx:6,cy:6,r:2})}),Sn=e=>(0,Y.jsxs)(`svg`,{fill:`currentColor`,height:`1em`,viewBox:`0 0 12 12`,width:`1em`,xmlns:`http://www.w3.org/2000/svg`,xmlnsXlink:`http://www.w3.org/1999/xlink`,...e,children:[(0,Y.jsx)(`clipPath`,{id:`a`,children:(0,Y.jsx)(`path`,{d:`m0 0h12v12h-12z`})}),(0,Y.jsx)(`g`,{clipPath:`url(#a)`,children:(0,Y.jsx)(`path`,{d:`m7.937 6.5c-.11122.42912-.36179.80916-.71237 1.08047-.35058.2713-.78133.4185-1.22463.4185s-.87405-.1472-1.22463-.4185c-.35058-.27131-.60115-.65135-.71237-1.08047h-3.563v-1h3.563c.11122-.42912.36179-.80916.71237-1.08046s.78133-.41851 1.22463-.41851.87405.14721 1.22463.41851.60115.65134.71237 1.08046h3.563v1z`})})]});function Cn({lineEnabled:e,onToggleLine:t,onTogglePoints:n,pointsEnabled:r,translations:i}){return[{type:`Option`,label:i.pointsLines,icon:(0,Y.jsx)(Ne,{icon:(0,Y.jsx)(Sn,{})}),selected:r&&e,onClick:()=>{r||n(),e||t()}},{type:`Option`,label:i.linesOnly,icon:(0,Y.jsx)(Ne,{icon:(0,Y.jsx)(bn,{})}),selected:!r&&e,onClick:()=>{r&&n(),e||t()}},{type:`Option`,label:i.pointsOnly,icon:(0,Y.jsx)(Ne,{icon:(0,Y.jsx)(xn,{})}),selected:r&&!e,onClick:()=>{r||n(),e&&t()}}]}const wn=({options:e})=>{let[t,n]=(0,J.useState)(!1),r=e.find(e=>e.selected);return(0,Y.jsx)(Oe,{open:t,setOpen:n,menu:{sections:e,trigger:`Component`,component:(0,Y.jsx)(je,{display:`inline-flex`,text:r?.label,placement:`bottom-start`,enabled:!t,children:(0,Y.jsx)(L,{colored:`muted`,basic:!0,small:!0,round:!0,icon:r?.icon})})}})};wn.__docgenInfo={description:``,methods:[],displayName:`LineOptions`,props:{options:{required:!0,tsType:{name:`Array`,elements:[{name:`IMenuSection`}],raw:`IMenuSection[]`},description:``}}};function Tn({onTogglePan:e,onToggleZoom:t,panEnabled:n,zoomEnabled:r,enableDragPoints:i,enableDragAnnotation:a,isDragDataAllowed:o,isDragAnnotationAllowed:s,onToggleDragAnnotation:c,onToggleDragPoints:l,onDisableDragOptions:u,translations:{dragToZoom:d,doubleClickToReset:f,dragToPan:p,dragToMovePoints:m,dragDisabled:h,dragToMoveAnnotation:g}}){return[{label:d,description:f,icon:(0,Y.jsx)(Xe,{}),selected:r,type:`Option`,onClick:()=>{r||t()}},{label:p,description:f,icon:(0,Y.jsx)(He,{}),selected:n,type:`Option`,onClick:()=>{n||e()}},...o?[{label:m,icon:(0,Y.jsx)(nt,{}),selected:i,type:`Option`,onClick:()=>{i||l()}}]:[],...s?[{label:g,icon:(0,Y.jsx)(nt,{}),selected:a,type:`Option`,onClick:()=>{a||c()}}]:[],{label:h,icon:(0,Y.jsx)($e,{}),selected:!r&&!n&&!i&&!a,type:`Option`,onClick:u}]}const En=({options:e})=>{let t=e.find(e=>e.selected);return(0,Y.jsx)(Oe,{menu:{sections:e,trigger:`Component`,component:(0,Y.jsx)(L,{colored:`muted`,basic:!0,small:!0,label:t?.label,icon:t?.icon})}})};En.__docgenInfo={description:`@param {import('./drag-options-interfaces').IDragOptions} obj`,methods:[],displayName:`DragOptions`,props:{options:{required:!0,tsType:{name:`Array`,elements:[{name:`IMenuSection`}],raw:`IMenuSection[]`},description:``}}};var Dn={controls:`_controls_1edjs_1`,buttons:`_buttons_1edjs_6`};const On=e=>{let t=(0,J.useCallback)(t=>()=>{e({type:t})},[e]);return{onToggleLegend:t(sn),onToggleLine:t(on),onTogglePan:t(rn),onTogglePoints:t(an),onToggleTable:t(cn),onToggleZoom:t(nn),onToggleDragPoints:t(dn),onToggleDragAnnotation:t(fn),onDisableDragOptions:t(pn)}};var kn=e(Qe(),1);const An=(e,t)=>e===void 0||t===void 0||Number(e)<Number(t),jn=(e,t)=>e===void 0||t===void 0||Number(e)>Number(t),Mn=(e,t=0,n=!1)=>`${e}${n&&t!==0?t+1:``}`,Nn=e=>e?.match(/[^0-9/]+/gi)?.[0]??``,Pn=e=>typeof e==`string`||typeof e==`number`||typeof e==`boolean`||e===null,Fn=(e,t)=>(0,kn.default)({state:e,languageKey:t},{unorderedObjects:!0});var In=e(_e(),1);const Ln=({chartRef:e,state:t,options:n,dispatch:r,generatedDatasets:i})=>{let{interactions:{onHover:a,onUnhover:s},axes:c}=n,l=(0,J.useCallback)(()=>{let n=e?.current;n&&t?.edited&&(n?.resetZoom?.(),n?.reset?.(),r({type:ln,payload:{axes:[]}}),r({type:mn,payload:!1}))},[e?.current,r,t]),u=(0,J.useCallback)((e,t,n)=>(r,i)=>{if(!i?.length&&s&&e&&(t(null),s(r)),i?.length&&a){let{index:o,datasetIndex:s}=i[0],c=n[s]?.data[o];c&&!(0,In.default)(e,c)&&(t(c),a(r,s,o,n))}},[a,s,i]),d=(0,J.useCallback)(()=>dt(e),[e?.current]),f=(0,J.useCallback)(t=>{if(t.key===x.Shift){let t=e.current,n=t?.config?.options?.plugins?.zoom;n?.zoom?.mode&&n?.pan?.mode&&(n.zoom.mode=M.Y,n.pan.mode=M.Y,t?.update())}},[e?.current]),p=(0,J.useCallback)(t=>{if(t.key===x.Shift){let t=e.current,n=t?.config?.options?.plugins?.zoom;n?.zoom?.mode&&n?.pan?.mode&&(n.zoom.mode=M.XY,n.pan.mode=M.XY,t?.update())}},[e?.current]),m=(0,J.useCallback)(e=>{if(!Object.keys(e)?.length)return[];let t=(e,t)=>!e[t]||!e[t]?.length?[]:e[t].map((n,r)=>({id:Mn(t,r,e[t].length>1),label:n?.label||``}));return[...t(e,o.X),...t(e,o.Y)]},[c]),h=(0,J.useCallback)(()=>{let{scales:t={}}=e?.current||{},n=Object.entries(t)?.map(([e,{min:t,max:n}])=>({id:e,min:t??0,max:n??0}));r({type:un,payload:{axes:n}})},[c]),g=(0,J.useCallback)(()=>{let n=e?.current;n&&t.edited&&(n?.resetZoom?.(),n?.reset?.(),r({type:ln,payload:{axes:[]}}),r({type:mn,payload:!1}))},[e?.current]),_=(0,J.useCallback)(({axes:e})=>{r({type:un,payload:{axes:e}})},[]),v=(0,J.useCallback)(e=>{r({type:mn,payload:e})},[t]);return{resetZoom:l,onHover:u,handleDownload:d,handleKeyDown:f,handleKeyUp:p,controlsAxesLabels:m(c),updateAxesRangesFromChart:h,onResetAxes:g,onUpdateAxes:_,onUpdateEdited:v}};var Rn=(e,t,n)=>{let r=[];return xe(e)&&r.push(`mustHaveAValue`),n===`min`&&!An(e,t)?r.push(`mustBeLessThanMax`):n===`max`&&!jn(e,t)&&r.push(`mustBeGreaterThanMin`),r};const zn=e=>{let t=e.map(({id:e,min:t,max:n})=>({id:e,min:Rn(String(t),String(n),`min`),max:Rn(String(n),String(t),`max`)}));return{errors:t,valid:t.every(e=>e.min.length===0&&e.max.length===0)}};var Bn=1;const Vn=({chartRef:e,state:t})=>{let n=e?.current;if(!n)return[];let r=n?.getInitialScaleBounds()??{};return Object.entries(r).map(([e,{min:n=``,max:r=``}])=>{let i=Number(n),a=Number(r);isNaN(i)&&(i=0),isNaN(a)&&(a=i+Bn),i===a&&(a+=Bn);let{unit:o}=t?.axes?.find(t=>t.id===e)??{};return{id:e,min:i,max:a,unit:o}})};var Hn=e(O(),1),Un=e=>{let{state:t,controlsAxesLabels:n,onUpdateAxes:r,onResetAxes:i,onUpdateEdited:a,depthType:o,translations:s,close:c,chartRef:l}=e??{},[u,d]=(0,J.useState)({localAxes:Vn({chartRef:l,state:t}),depthType:o?.selectedDepthType,edited:t.edited}),{errors:f,valid:p}=zn(u.localAxes),m=({name:e,value:t,id:n})=>{d(r=>({...r,localAxes:r.localAxes.map(r=>r.id===n?{...r,[e]:t}:r),edited:!0}))},h=({name:e,value:t,id:n})=>{d(r=>({...r,localAxes:r.localAxes.map(r=>r.id===n&&typeof r.unit==`object`?{...r,unit:{...r.unit,[e]:t}}:r),edited:!0}))},g=e=>{e.preventDefault(),p&&(r({axes:u.localAxes}),c?.()),o&&o?.setSelectedDepthType&&o?.setSelectedDepthType(u.depthType),a(u.edited)},_=()=>{d({localAxes:Vn({chartRef:l,state:t}),depthType:o?.selectedDepthType,edited:!1}),i(),a(!1),c?.()},v=e=>e.target.select();return(0,Y.jsxs)(`form`,{onSubmit:g,children:[u.localAxes.map(e=>{let t=n.find(t=>t.id===e.id)?.label||(0,Hn.startCase)(e.id),r=f.find(t=>t.id===e.id);return(0,Y.jsx)(Ye,{label:t,children:(0,Y.jsxs)(Pe,{small:!0,width:`300px`,children:[(0,Y.jsx)(Me,{name:`min`,value:e.min,error:r?.min?.[0]?s[r.min[0]]:null,width:`100%`,onChange:t=>m({name:t.target.name,value:t.target.value,id:e.id}),onFocus:v}),(0,Y.jsx)(Fe,{children:`to`}),(0,Y.jsx)(Me,{name:`max`,value:e.max,error:r?.max?.[0]?s[r.max[0]]:null,width:`100%`,onChange:t=>m({name:t.target.name,value:t.target.value,id:e.id}),onFocus:v}),e.unit?(0,Y.jsx)(Ee,{name:`selectedUnit`,options:typeof e.unit==`string`?[]:e.unit.options,value:typeof e.unit==`string`?void 0:e.unit.selectedUnit,onChange:t=>h({name:t.target.name,value:t.target.value,id:e.id}),autoLayerWidth:!0,width:`15%`}):null]})},e.id)}),o?.options?.length>0&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Re,{items:o.options.map((e,t)=>({key:t,label:e})),onSelected:e=>{d(t=>({...t,depthType:o.options[e],edited:!0}))},small:!0,value:o.options.indexOf(u.depthType)}),(0,Y.jsx)(ke,{})]}),(0,Y.jsxs)(Te,{gap:`8px`,alignItems:`center`,children:[(0,Y.jsx)(L,{type:`submit`,small:!0,colored:!0,label:s.done,disabled:!p||!u.edited}),(0,Y.jsx)(L,{small:!0,name:`resetAxes`,label:s.resetAxes,onClick:_}),(0,Y.jsx)(ze,{small:!0,muted:!0,children:s.orDoubleClickToCanvas})]})]})};const Wn=e=>(0,Y.jsx)(Ie,{placement:`bottom-start`,overflowContainer:!0,content:(0,Y.jsx)(Un,{...e}),children:(0,Y.jsx)(je,{text:e.translations.axesOptions,placement:`bottom-start`,display:`inline-flex`,children:(0,Y.jsx)(L,{small:!0,basic:!0,colored:`muted`,round:!0,icon:(0,Y.jsx)(Ue,{})})})});Wn.__docgenInfo={description:``,methods:[],displayName:`AxesOptions`,props:{chartRef:{required:!0,tsType:{name:`RefObject`,elements:[{name:`Chart`}],raw:`RefObject<Chart>`},description:``},state:{required:!0,tsType:{name:`IState`},description:``},controlsAxesLabels:{required:!0,tsType:{name:`Array`,elements:[{name:`IAxisControlLabel`}],raw:`IAxisControlLabel[]`},description:``},onUpdateAxes:{required:!0,tsType:{name:`signature`,type:`function`,raw:`({ axes }: { axes: IAxisState }) => void`,signature:{arguments:[{type:{name:`signature`,type:`object`,raw:`{ axes: IAxisState }`,signature:{properties:[{key:`axes`,value:{name:`IAxisState`,required:!0}}]}},name:``}],return:{name:`void`}}},description:``},onResetAxes:{required:!0,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},onUpdateEdited:{required:!0,tsType:{name:`signature`,type:`function`,raw:`(edited: boolean) => void`,signature:{arguments:[{type:{name:`boolean`},name:`edited`}],return:{name:`void`}}},description:``},depthType:{required:!1,tsType:{name:`union`,raw:`IDepthType | object`,elements:[{name:`IDepthType`},{name:`object`}]},description:``},close:{required:!1,tsType:{name:`signature`,type:`function`,raw:`() => void`,signature:{arguments:[],return:{name:`void`}}},description:``},translations:{required:!0,tsType:{name:`Record`,elements:[{name:`string`},{name:`string`}],raw:`Record<string, string>`},description:``}}};var Gn=({table:e,headerComponent:t,subheaderComponent:n,chartRef:r,state:i,options:a,dispatch:o,generatedDatasets:s,translations:c,controlsPortalId:l})=>{let{enableDragPoints:u,lineEnabled:d,panEnabled:f,pointsEnabled:p,showTable:m,zoomEnabled:h,enableDragAnnotation:g}=i,{dragData:_,depthType:v,annotations:y}=a,{onToggleLine:b,onTogglePan:x,onTogglePoints:S,onToggleTable:C,onToggleZoom:w,onToggleDragPoints:ee,onToggleDragAnnotation:te,onDisableDragOptions:ne}=On(o),{handleDownload:T,controlsAxesLabels:re,onResetAxes:E,onUpdateAxes:ie,onUpdateEdited:D}=Ln({chartRef:r,state:i,options:a,dispatch:o,generatedDatasets:s}),[ae,{width:oe}]=it(),se=oe<200,O=(0,J.useMemo)(()=>Cn({lineEnabled:d,onToggleLine:b,onTogglePoints:S,pointsEnabled:p,translations:c}),[d,p]),k=(0,J.useMemo)(()=>Tn({onTogglePan:x,onToggleZoom:w,panEnabled:f,zoomEnabled:h,enableDragPoints:u,enableDragAnnotation:g,isDragDataAllowed:_?.enableDragData,isDragAnnotationAllowed:y?.enableDragAnnotation,onToggleDragAnnotation:te,onToggleDragPoints:ee,onDisableDragOptions:ne,translations:c}),[h,f,u,_?.enableDragData,y?.enableDragAnnotation]);return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:Dn.controls,children:[!!a.title&&(0,Y.jsx)(ze,{bold:!0,children:a.title}),t,(0,Y.jsx)(ct,{controlsPortalId:l??``,children:(0,Y.jsxs)(`div`,{className:Dn.buttons,ref:ae,children:[!m&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Wn,{chartRef:r,state:i,controlsAxesLabels:re,onUpdateAxes:ie,onResetAxes:E,onUpdateEdited:D,depthType:v,translations:c}),se?(0,Y.jsx)(Oe,{menu:{placement:`bottom-end`,sections:[...O,{type:`Divider`},...k,{type:`Divider`},{icon:`download`,label:c.downloadAsPNG,type:`Option`,onClick:T}],trigger:`Component`,component:(0,Y.jsx)(L,{colored:`muted`,basic:!0,small:!0,round:!0,icon:`menu`})}}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(wn,{options:O}),(0,Y.jsx)(je,{display:`inline-flex`,text:c.downloadAsPNG,placement:`bottom-end`,children:(0,Y.jsx)(L,{small:!0,basic:!0,colored:`muted`,round:!0,icon:`download`,onClick:T})}),(0,Y.jsx)(En,{options:k})]})]}),e?(0,Y.jsx)(je,{display:`inline-flex`,text:m?c.showChart:c.showTable,placement:`bottom-end`,children:(0,Y.jsx)(L,{small:!0,basic:!0,colored:`muted`,round:!0,icon:m?`chart`:`table`,onClick:C})}):null]})})]}),n]})},Kn=Gn;Gn.__docgenInfo={description:``,methods:[],displayName:`Controls`,props:{headerComponent:{required:!1,tsType:{name:`ReactNode`},description:``},subheaderComponent:{required:!1,tsType:{name:`ReactNode`},description:``},table:{required:!1,tsType:{name:`ReactNode`},description:``},chartRef:{required:!0,tsType:{name:`RefObject`,elements:[{name:`Chart`}],raw:`RefObject<Chart>`},description:``},state:{required:!0,tsType:{name:`IState`},description:``},options:{required:!0,tsType:{name:`ILineChartOptions`},description:``},dispatch:{required:!0,tsType:{name:`Dispatch`,elements:[{name:`any`}],raw:`Dispatch<any>`},description:``},generatedDatasets:{required:!0,tsType:{name:`Array`,elements:[{name:`IGeneratedLineChartDataset`}],raw:`IGeneratedLineChartDataset[]`},description:``},translations:{required:!0,tsType:{name:`Record`,elements:[{name:`string`},{name:`string`}],raw:`Record<string, string>`},description:``},controlsPortalId:{required:!1,tsType:{name:`string`},description:``}}};const X={TOP_LEFT:`top-left`,TOP_CENTER:`top-center`,TOP_RIGHT:`top-right`,MIDDLE_LEFT:`middle-left`,MIDDLE_CENTER:`middle-center`,MIDDLE_RIGHT:`middle-right`,BOTTOM_LEFT:`bottom-left`,BOTTOM_CENTER:`bottom-center`,BOTTOM_RIGHT:`bottom-right`};var qn=e=>({label:``,position:e,color:``,unit:{options:[],selectedUnit:``,setSelectedUnit:()=>{}}}),Jn=e=>({x:e?.x||[qn(`bottom`)],y:e?.y||[qn(`left`)]}),Yn=e=>({chartScaleType:e?.chartScaleType||`linear`,reverse:e?.reverse||!1,beginAtZero:e?.beginAtZero??!1,stepSize:e?.stepSize,suggestedMin:e?.suggestedMin,suggestedMax:e?.suggestedMax,range:e?.range,autoAxisPadding:e?.autoAxisPadding??!1}),Xn=e=>({width:e?.width,height:e?.height,maintainAspectRatio:e?.maintainAspectRatio??!1,staticChartHeight:e?.staticChartHeight??!1,performanceMode:e?.performanceMode??!0,squareAspectRatio:e?.squareAspectRatio??!1,layoutPadding:e?.layoutPadding||{top:0,bottom:20,left:0,right:0}}),Zn=e=>({tooltips:e?.tooltips??!0,showLabelsInTooltips:e?.showLabelsInTooltips??!1,hideSimulationName:e?.hideSimulationName??!1,scientificNotation:e?.scientificNotation??!0}),Qn=e=>({lineTension:e?.lineTension??.01,spanGaps:e?.spanGaps??!1,showDataLabels:e?.showDataLabels??!1,showMinorGridlines:e?.showMinorGridlines??!1}),$n=e=>e?e.map(e=>({...e,display:e?.display??!0})):[],er=e=>({labelAnnotation:{showLabel:e?.labelAnnotation?.showLabel??!1,text:e?.labelAnnotation?.text??``,position:e?.labelAnnotation?.position??X.BOTTOM_RIGHT,fontSize:e?.labelAnnotation?.fontSize??12,xOffset:e?.labelAnnotation?.xOffset??5,yOffset:e?.labelAnnotation?.yOffset??5,maxWidth:e?.labelAnnotation?.maxWidth??300,lineHeight:e?.labelAnnotation?.lineHeight??12},showAnnotations:e?.showAnnotations??!1,controlAnnotation:e?.controlAnnotation??!1,enableDragAnnotation:e?.enableDragAnnotation??!1,annotationsData:$n(e?.annotationsData)}),tr=e=>({display:e?.display??!0,position:e?.position??j.BottomLeft,align:e?.align??I.Center,customLegend:e?.customLegend??{customLegendPlugin:null,customLegendContainerID:``},usePointStyle:e?.usePointStyle??!0}),nr=e=>({showPoints:e?.showPoints??!0,showLine:e?.showLine??!0,enableZoom:e?.enableZoom??!0,enablePan:e?.enablePan??!1,enableDragAnnotation:e?.enableDragAnnotation??!1,closeOnOutsideClick:e?.closeOnOutsideClick??!1}),rr=e=>({onLegendClick:e?.onLegendClick,onHover:e?.onHover,onUnhover:e?.onUnhover,onAnimationComplete:e?.onAnimationComplete}),ir=e=>({enableDragData:e?.enableDragData??!1,showTooltip:e?.showTooltip??!0,roundPoints:e?.roundPoints??!0,dragX:e?.dragX??!0,dragY:e?.dragY??!0,onDragStart:e?.onDragStart,onDrag:e?.onDrag,onDragEnd:e?.onDragEnd});const ar=e=>{let t=e?.chart||{},n=t?.options||{};return{persistenceId:t?.persistenceId??``,controlsPortalId:t?.controlsPortalId??``,testId:t?.testId??void 0,data:t?.data??{datasets:[]},options:{title:n?.title??``,scales:n?.scales??{},axes:Jn(n?.axes),additionalAxesOptions:Yn(n?.additionalAxesOptions),chartStyling:Xn(n?.chartStyling),tooltip:Zn(n?.tooltip),graph:Qn(n?.graph),annotations:er(n?.annotations),legend:tr(n?.legend),chartOptions:nr(n?.chartOptions),interactions:rr(n?.interactions),dragData:ir(n?.dragData),depthType:n?.depthType??{}}}};var Z=e(O(),1);const or=(e,t)=>{if((0,Z.isEmpty)(e)||(0,Z.isEmpty)(t))return!1;let n=e=>typeof t==`string`?e&&(0,Z.has)(e,t):(0,Z.isArray)(t)?e&&(0,Z.some)(t,t=>e&&(0,Z.has)(e,t)):e&&(0,Z.some)(Object.values(t),t=>e&&(0,Z.has)(e,t));return(0,Z.isArray)(e)?(0,Z.some)(e,n):n(e)};let sr=function(e){return e.showLine=`showLine`,e.showPoints=`showPoints`,e}({});const cr=(e,t,n,{label:r})=>{let i=[...e??[]],{annotations:o,graph:s}=n??{},{controlAnnotation:c,showAnnotations:l,annotationsData:u=[]}=o??{};if(c&&l){let e=u.map((e,t)=>{let{type:n,...r}=e,i=r.color??a[t],o=m,s=we.INITIAL;return{...r,isAnnotation:!0,annotationType:n,label:r.label,annotationIndex:t,backgroundColor:i,pointBackgroundColor:i,borderColor:i,borderDash:o,borderWidth:s,data:[{}]}});i.push(...e)}return i?.map((e,n)=>{let{formation:i,data:o=[],pointRadius:c,pointHoverRadius:l,borderWidth:u,borderColor:d,backgroundColor:f,pointBackgroundColor:p,borderDash:m,showPoints:h,showLine:g}=e??{},{lineEnabled:_,pointsEnabled:v,axes:y=[]}=t??{},{lineTension:b,spanGaps:x}=s??{},S=Array.isArray(o)?o:[];if(i&&S?.length){let e=Number(y[0]?.min),t=Number(y[0]?.max),[n,r]=S;e&&n?.x&&(S[0].x=Math.max(e,n.x)),t&&r?.x&&(S[2].x=Math.min(t,r.x))}let C=or(e,sr),w=S?.filter(Boolean)||[],ee=w?.length===1,te,ne;te=h===void 0?g===!1?!0:v||ee:h,ne=g===void 0?h===!1?!0:_:g;let T=parseFloat(c)||2,re=parseFloat(l)||5,E=a[n];return{...e,label:e?.label??`${r} ${n+1}`,data:w,showLine:ne,lineTension:e?.lineTension??b,spanGaps:x,borderWidth:parseFloat(u)||1,borderDash:m||[],borderJoinStyle:Ze,borderColor:d??E??be(a),backgroundColor:f??`transparent`,pointBackgroundColor:p??E??be(a),pointRadius:te?T:0,pointHoverRadius:re,pointHitRadius:e?.pointHitRadius??re,...C?{hasCustomOpt:C}:{}}})};var lr=(e,t,n,r,i=0)=>{let a=r||e.axes[t][0]||{},s=n?.axes.filter(e=>e?.id?.startsWith(t))[i],c=e?.scales?.[`${i===0?t:t+i}`]?.ticks,{additionalAxesOptions:l}=e;return{display:!0,type:l.chartScaleType,position:a.position,beginAtZero:l.beginAtZero,reverse:t===o.Y?l.reverse:!1,suggestedMax:l.suggestedMax,suggestedMin:l.suggestedMin,min:s?.min??l?.range?.[t]?.min,max:s?.max??l?.range?.[t]?.max,title:{display:a.label?.length,text:a.label,padding:0},ticks:(()=>{let e=l?.chartScaleType===_.Logarithmic,n=(t,n,r)=>e?h.includes(t)?ut(t,r):``:ut(t,r);return{...e?{}:{stepSize:a.stepSize??(t===o.Y?l.stepSize:null)},callback:n,includeBounds:!1,...c,font:{size:12}}})(),grid:{...a.gridLines}}},ur=(e,t,n)=>e.axes[t].reduce((r,i,o)=>{let s=i;s.color=i.color||a[o]||be(a),s.position=i.position||oe(t,o);let c=lr(e,t,n,s,o),l=Mn(t,o,!0);return{...r,[l]:c}},{}),dr=(e,t)=>{let n=e.axes.x?.length>1,r=e.axes.y?.length>1,i=n?ur(e,o.X,t):{x:lr(e,o.X,t)},a=r?ur(e,o.Y,t):{y:lr(e,o.Y,t)};return{...i,...a}};const fr=e=>{if(!Array.isArray(e)||!e?.length)return!1;let t=e?.reduce((e,t)=>{let n=t?.xAxisID??`x`,r=t?.yAxisID??`y`,i=t?.data??[];if(i&&i?.length){let{x:t,y:a}=i?.[0]??{},{x:o=0,y:s=0}=i?.at(-1)??{},c=e?.[n]?.xFirst??t,l=e?.[n]?.xLast??o,u=e?.[r]?.yFirst??a,d=e?.[r]?.yLast??s,f=Math.min(t,c),p=Math.max(o,l),m=Math.min(a,u),h=Math.max(s,d);e={...e,[n]:{...e[n],xFirst:f,xLast:p},[r]:{yFirst:m,yLast:h}}}return e},{});return Object.values(t)?.some(({xFirst:e,xLast:t,yFirst:n,yLast:r})=>F(e,t,{absoluteDiff:T})||F(n,r,{absoluteDiff:T}))};var pr=.05,mr={min:-1,max:1};const hr=({data:e,beginAtZero:t=!1,autoAxisPadding:n=!1})=>{let r=Math.min(...e.filter(e=>e!=null&&!isNaN(e))),i=Math.max(...e.filter(e=>e!=null&&!isNaN(e))),a=Math.sign(r)===-1||Math.sign(i)===-1,o=F(r,0,{absoluteDiff:T})&&F(i,0,{absoluteDiff:T});if(!e?.length||o)return mr;if(F(r,i,{absoluteDiff:T})){let e=i,n=e*pr,r=t&&!a?0:e-n,o=N(t&&a?0:e+n,9),s=N(r,9);return{min:o<0?o:s,max:s<0?s:o}}if(!n)return{min:void 0,max:void 0};let s=r===0||i===0||t,c=Math.sign(r)===-1&&Math.sign(i)===1,l=Math.abs(i-r),u=n?l*pr:0,d=!c&&s&&t&&!a?0:r-u,f=!c&&s&&t&&a?0:i+u;return{min:N(d,9),max:N(f,9)}},gr=e=>e?.reduce((e,t)=>({...e,[t.annotationAxis]:[...e[t.annotationAxis]||[],+t.value]}),{}),_r=(e,t,n)=>{if(!Array.isArray(e)||!Array.isArray(t))return{};let r=gr(n);return t.reduce((t,n)=>{let i=Nn(n),a=e.filter(e=>(e[`${i}AxisID`]??i)===n).flatMap(e=>(e?.data??[]).map(e=>e[i])),o=r?.[n]??[];return t[n]=[...new Set([...a,...o])],t},{})};var vr=e(O(),1),yr=(e,t)=>!(0,vr.isNil)(e)||!(0,vr.isNil)(t);const br=(e,t,n)=>{let{additionalAxesOptions:r,annotations:{annotationsData:i=[],controlAnnotation:a=!1}={}}=e||{},o=dr(e,t)||{},s=a?n.filter(({isAnnotation:e})=>!e):n;if(!r?.autoAxisPadding&&!fr(s))return o;let c=Object.keys(o)??[],l=_r(n,c,i);return(l&&c?.reduce((e,t)=>{let n=o[t],{min:i=void 0,max:a=void 0}=n,{min:s,max:c}=hr({data:l[t],beginAtZero:r?.beginAtZero,autoAxisPadding:r?.autoAxisPadding}),u={[t]:{...n,min:i??(yr(i,a)?void 0:s),max:a??(yr(i,a)?void 0:c)}};return{...e,...u}},{}))??o},xr=(e,t,n,r,i)=>{let a=e??0,o=t??0,s=n??0,c=r??0,l=i??0;return{overLeftSide:a-100<=s,overRightSide:a+100>=c,overBottomSide:a+100>=s&&a+100<c&&o+100>=l}},Sr=e=>{let t=e?.chart,n=e?.dataIndex??0,r=e?.datasetIndex??0,{left:i=null,right:a=null,bottom:o=null}=t?.chartArea??{},s=(t?.getDatasetMeta?.(r))?.data?.[n];return{x:s?.x??null,y:s?.y??null,left:i,right:a,bottom:o}},Cr=()=>e=>{let{x:t,y:n,left:r,right:i,bottom:a}=Sr(e),{overLeftSide:o=!1,overRightSide:s=!1,overBottomSide:c=!1}=xr(t,n,r,i,a);return o&&I.Right||s&&I.Left||c&&I.End||I.Start};var wr=e=>e?.graph?.showDataLabels?{display:g,align:Cr(),formatter:(e,t)=>{let n=t?.dataset?.data?.[t.dataIndex];return!n||n.label==null?``:typeof n.label==`string`?n.label:Array.isArray(n.label)?n.label.map(String):String(n.label)}}:{display:!1};const Tr=e=>{let t=e?.match(/\[(.*)\]/g);return t&&t?.length>0?t?.[0]:``};var Er=(e,t)=>{let n={};return t?(Math.abs(e)<1e-4||Math.abs(e)>1e7)&&(n={roundScientificCoefficient:3}):n={scientific:!1},se(le(e),n)},Dr=e=>{if(!e?.axes?.x?.length||!e?.axes?.y?.length)return console.warn(`Tooltip config fallback: missing axes`,e),{enabled:!1,callbacks:{}};let{scientificNotation:t}=e?.tooltip??{},n=({xAxisID:t=``,yAxisID:n=``})=>{let r=t?.length>1?Number(t?.[1])-1:0,i=n?.length>1?Number(n?.[1])-1:0,a=e?.axes?.x?.[r],o=e?.axes?.y?.[i];return e?.axes?.x?.[0]?.position===j.Top?{titleAxisLabel:o?.label||``,valueAxisLabel:a?.label||``,titleLabel:y.Y,valueLabel:y.X}:{titleAxisLabel:a?.label||``,valueAxisLabel:o?.label||``,titleLabel:y.X,valueLabel:y.Y}};return{enabled:e?.tooltip?.tooltips,mode:Se.Nearest,intersect:!0,padding:8,usePointStyle:!0,boxWidth:12,boxHeight:12,boxPadding:4,callbacks:{title:e=>{if(!e?.[0])return``;let{titleLabel:r=``,titleAxisLabel:i=``}=n(e[0].dataset)??{};return`${Er(r===y.Y?e?.[0]?.parsed?.y:e?.[0]?.parsed?.x,t)} ${i}`},label:r=>{let{showLabelsInTooltips:i}=e?.tooltip??{},a=r?.dataset?.label||``,{valueLabel:o=``,valueAxisLabel:s=``}=n(r?.dataset)??{};return`${a}: ${(()=>Er(o===y.X?r?.parsed?.x:r?.parsed?.y,t))()} ${Tr(s)} ${E(r,i)}`},afterLabel:fe}}};const Or=({chartRef:e,state:t,options:n,dispatch:i,generatedDatasets:a})=>{let{interactions:{onAnimationComplete:o},annotations:{controlAnnotation:s,showAnnotations:l=!1,annotationsData:u=[],labelAnnotation:{showLabel:f,text:p,position:m,fontSize:h,xOffset:g,yOffset:_,maxWidth:v,lineHeight:y}={}},chartStyling:{layoutPadding:b}}=n,{enableDragPoints:x,zoomEnabled:S,panEnabled:C,lineEnabled:ee}=t,[te,ne]=(0,J.useState)(null),{updateAxesRangesFromChart:T,onHover:re,onUpdateEdited:E}=Ln({chartRef:e,state:t,options:n,dispatch:i,generatedDatasets:a}),{legend:ie,customLegendPlugin:D}=Ge({chartRef:e,options:n})??{},{state:ae}=et()??{},{annotation:oe}=ae??{},se=(s?oe:ye({showAnnotations:l,annotationsData:u}))??[],O=wr(n)??{},k=Dr(n)??{},ce=(0,J.useMemo)(()=>br(n,t,a),[n,t,a,e]),A=(0,J.useMemo)(()=>x&&ft(n),[x,n]),le=(0,J.useMemo)(()=>({enabled:C,mode:M.XY,onPanComplete(){T(),E(!0)}}),[C]),j=(0,J.useMemo)(()=>({mode:M.XY,drag:{enabled:S,threshold:3,backgroundColor:De,borderColor:w,borderWidth:1},onZoomComplete(){T(),E(!0)}}),[S]),ue={datalabels:O,annotationDraggerPlugin:{enabled:t?.enableDragAnnotation},annotation:We(se),zoom:{pan:le,zoom:j},tooltip:k,legend:{...ie,display:!1,events:[]},customLegendPlugin:D,chartAreaBorder:{borderColor:w},chartAreaText:{showLabel:f,text:p,position:m,fontSize:h,xOffset:g,yOffset:_,maxWidth:v,lineHeight:y},...A};return(0,J.useMemo)(()=>({layout:{padding:b},onHover:re(te,ne,a),maintainAspectRatio:n?.chartStyling?.maintainAspectRatio,aspectRatio:n?.chartStyling?.squareAspectRatio?1:0,animation:n?.chartStyling?.performanceMode?!1:{duration:d.FAST,onComplete:o},hover:{mode:Se.Nearest,intersect:!0},elements:{line:{pointStyle:r.Circle,showLine:ee,tension:0}},scales:ce,plugins:ue,events:Object.values(c)}),[t,n,e,a])},kr=({options:e,resetZoom:t})=>{let{graph:n,legend:r}=e,i=(0,J.useCallback)((e,n)=>{let{event:r}=n;return r.type===`dblclick`?(t(),!1):!0},[t]);return(0,J.useMemo)(()=>[...k(n,r),{id:`customEventCatcher`,beforeEvent:i}],[i])};var Ar=(e,t)=>{(0,J.useEffect)(()=>{if(t?.legend?.customLegend?.customLegendPlugin){let n=document.getElementById(t.legend.customLegend.customLegendContainerID);n!==null&&(n.style.visibility=e.legendEnabled?`visible`:`hidden`)}},[t?.legend?.customLegend?.customLegendPlugin,e.legendEnabled])},jr=(e,t)=>{(0,J.useEffect)(()=>{vn(e,t)},[e.panEnabled,e.lineEnabled,e.pointsEnabled,e.legendEnabled,e.enableDragPoints,e.zoomEnabled])};const Mr=({options:e,state:t,persistenceId:n})=>{let r=(0,J.useMemo)(()=>t,[t]),i=(0,J.useMemo)(()=>e,[e]);jr(r,n),Ar(r,i)};var Nr=` `,Pr=`rgba(0, 0, 0, 0.5)`,Fr=e=>(Array.isArray(e)?e.join(Nr):e)?.split(Nr),Ir=({ctx:e,lines:t,lineHeight:n,x:r,y:i,position:a})=>{t?.forEach((o,s)=>{let c=a?.includes(`top`)?i+n*(s+1)-5:i-(t.length-1-s)*n;e?.fillText(o,r,c)})},Lr=(e,t)=>e*(t<500?.5:t<700?.7:1),Rr=e=>{let{legend:t}=e??{};return{legendWidth:t&&t?.display&&t?.options?.position===`left`?t?.width+t?.options?.labels?.padding*2:0,legendHeight:t&&t.display&&(t?.options?.position===`top`||t?.options?.position===`bottom`)?t?.height+t?.options?.labels?.padding*2:0}},zr=(e,t,n,r)=>{let{chartArea:i,width:a}=t??{},o=a-8,{legendWidth:s,legendHeight:c}=Rr(t)??{};switch(e){case X.TOP_LEFT:return[i?.left+n+s,i?.top+r+c];case X.TOP_CENTER:return[i?.left+i?.width/2,i?.top+r+c];case X.TOP_RIGHT:return[o-n,i?.top+r+c];case X.MIDDLE_LEFT:return[i?.left+n+s,i?.top+i?.height/2];case X.MIDDLE_CENTER:return[i?.left+i?.width/2,i?.top+i?.height/2];case X.MIDDLE_RIGHT:return[o-n-s,i?.top+i?.height/2];case X.BOTTOM_LEFT:return[i?.left+n+s,i?.bottom-r-c];case X.BOTTOM_CENTER:return[i?.left+i?.width/2,i?.bottom-r-c];case X.BOTTOM_RIGHT:default:return[o-n-s,i?.bottom-r-c]}},Br=e=>e?.includes(I.Center)?I.Center:e?.includes(I.Left)?I.Left:I.Right,Vr=(e,t,n)=>{let r=``,i=[];for(let a=0;a<e.length;a++){let o=`${r}${e?.[a]}${Nr}`,{width:s}=n?.measureText(o)??{};s>t?(i.push(r?.trim()),r=`${e?.[a]}${Nr}`):r=o}return i.push(r.trim()),i},Hr=(e,t)=>{if(!e)return;let{text:n,maxWidth:r,fontSize:i,lineHeight:a,x:o,y:s,position:c}=t??{},l=Vr(Fr(n),r,e);e?.save?.(),e.font=`${i}px Arial`,e.fillStyle=Pr,e.textAlign=Br(c),Ir({ctx:e,lines:l,lineHeight:a,x:o,y:s,position:c}),e?.restore?.()};const Ur={id:`chartAreaText`,beforeDraw:(e,t,n)=>{let{showLabel:r,text:i,fontSize:a,xOffset:o,yOffset:s,lineHeight:c,maxWidth:l,position:u}=n??{};if(!r||!i)return;let{ctx:d,chartArea:f}=e??{};if(!d||!f)return;let p=Lr(l,f.width),[m,h]=zr(u,e,o,s);Hr(d,{text:i,maxWidth:p,fontSize:a,lineHeight:c,x:m,y:h,position:u})}};var Q=e(O(),1);const Wr=(e,t,n,r,i)=>{let a=t.getBoundingClientRect(),o=e.clientX-a.left,s=e.clientY-a.top,c=n?.[r],l=n?.[i];return{x:c?.getValueForPixel(o)??-1,y:l?.getValueForPixel(s)??-1}},Gr=e=>{let{xMin:t,xMax:n,yMin:r,yMax:i,xValue:a,yValue:o,type:s}=e??{},c,l,u,d;return!(0,Q.isNil)(t)&&!(0,Q.isNil)(n)&&!(0,Q.isNil)(r)&&!(0,Q.isNil)(i)&&s===A.BOX?(c=(t+n)/2,l=(r+i)/2,u=n-t,d=i-r):!(0,Q.isNil)(a)&&!(0,Q.isNil)(o)&&s===A.POINT&&(c=a,l=o,u=0,d=0),{centerX:c,centerY:l,width:u,height:d}},Kr=(e,t,n,r)=>{let{xMin:i,xMax:a,yMin:o,yMax:s,xValue:c,yValue:l,type:u}=e??{},d,f,p,m,h=t?.[n],g=t?.[r];if(!h||!g)return{centerX:-1,centerY:-1,width:0,height:0};if(!(0,Q.isNil)(i)&&!(0,Q.isNil)(a)&&!(0,Q.isNil)(o)&&!(0,Q.isNil)(s)&&u===A.BOX){let e=(i+a)/2,t=(o+s)/2,n=h?.getPixelForValue(i)??0,r=h?.getPixelForValue(a)??0,c=g?.getPixelForValue(o)??0,l=g?.getPixelForValue(s)??0;p=n-r,m=c-l,d=h?.getPixelForValue(e)??-1,f=g?.getPixelForValue(t)??-1}else !(0,Q.isNil)(c)&&!(0,Q.isNil)(l)&&u===A.POINT&&(p=0,m=0,d=h?.getPixelForValue(c)??-1,f=g?.getPixelForValue(l)??-1);return{centerX:d,centerY:f,width:p,height:m}},qr=({x:e,y:t,chartArea:n,scales:r,metrics:i,resizable:a=!1,dragRange:o,annotationType:s,xScaleID:c,yScaleID:l})=>{if(a&&!o)return!0;if(o){let n=e!==void 0&&o.x?e>=o.x[0]&&e<=o.x[1]:!0,r=t!==void 0&&o.y?t>=o.y[0]&&t<=o.y[1]:!0;return n&&r}let u=r?.[c],d=r?.[l];if(!r?.[c]||!r?.[l])return!1;let f=u?.getValueForPixel(n.left)??-1/0,p=u?.getValueForPixel(n.right)??1/0,m=d?.getValueForPixel(n.bottom)??-1/0,h=d?.getValueForPixel(n.top)??1/0;if(s===A.POINT)return(e===void 0?!0:e>=f&&e<=p)&&(t===void 0?!0:t>=m&&t<=h);if(s===A.BOX&&i.width!==void 0&&i.height!==void 0){let n=e===void 0?void 0:e-i.width/2,r=e===void 0?void 0:e+i.width/2,a=t===void 0?void 0:t-i.height/2,o=t===void 0?void 0:t+i.height/2;return(n!==void 0&&r!==void 0?n>=f&&r<=p:!0)&&(a!==void 0&&o!==void 0?a>=m&&o<=h:!0)}return!0},Jr=(e,t,n,r,i,a,o,s)=>{if(!r?.chartArea)return;let{resizable:c,dragRange:l=null}=n??{};qr({[e]:t,chartArea:r?.chartArea,scales:i,resizable:c,dragRange:l,metrics:s||{},annotationType:n?.type,xScaleID:a,yScaleID:o})&&(n.type===A.POINT?e===`x`?n.xValue=t:e===`y`&&(n.yValue=t):n.type===A.BOX&&s&&(e===`x`&&s.width&&(n.xMin=t-s.width/2,n.xMax=t+s.width/2),e===`y`&&s.height&&(n.yMin=t-s.height/2,n.yMax=t+s.height/2)))},Yr=(e,t,n)=>{if(!t)return;let r=e?.options?.plugins?.annotation?.annotations;r&&t&&r[t]&&(r[t].borderWidth=n)};var $=e(O(),1);const Xr=(e,t,n,r,i,a)=>{let o=a?r?.[a]:null;if(!o)return;let{xScaleID:s=`x`,yScaleID:c=`y`}=o,{x:l,y:d}=Wr(e,t,n,s,c),f=Gr(o);o&&o.enableDrag&&!(0,$.isNil)(f.centerY)&&!(0,$.isNil)(f.centerX)&&(!(0,$.isNil)(t)&&!(0,$.isNil)(t.style)&&(t.style.cursor=u.Move),i(!0,o,l-f.centerX,d-f.centerY),o?.onDragStart&&o.onDragStart({x:l,y:d},o))},Zr=(e,t,n,r,i,a,o,s)=>{if(r&&i){!(0,$.isNil)(t)&&!(0,$.isNil)(t.style)&&(t.style.cursor=u.Move);let r=i?.id;Yr(s,r,we.HOVERED);let c=i?.dragAxis??D.Both,{xScaleID:l=`x`,yScaleID:d=`y`}=i,{x:f,y:p}=Wr(e,t,n,l,d),m=Gr(i),h=f-a,g=p-o;c!==D.Y&&Jr(D.X,h,i,s,n,l,d,m),c!==D.X&&Jr(D.Y,g,i,s,n,l,d,m),s?.update?.(),i?.onDrag&&i.onDrag({x:f,y:p},i);let{ctx:_,width:v,height:y}=s,{centerX:b,centerY:x}=Gr(i)??{},{centerX:S,centerY:C}=Kr(i,n,l,d);if(!(0,$.isNil)(b)&&!(0,$.isNil)(x)&&!(0,$.isNil)(S)&&!(0,$.isNil)(C)&&(_?.save?.(),_?.clearRect?.(0,0,v,y),s?.draw?.(),_.font=`"Roobert", "Noto Sans", sans-serif`,_.fillStyle=`black`,i?.displayDragCoordinates)){let e=S-45,t=C-20,n=`X: ${N(b,2)}, Y: ${N(x,2)}`;t-14<0&&(t=C+14+15),t>y&&(t=y-7),_?.fillText?.(n,e,t),_?.restore?.()}}},Qr=(e,t,n,r,i)=>{if(e&&t){let e=t?.id;Yr(n,e,we.ZERO);let{centerX:a=-1,centerY:o=-1}=Gr(t)??{};(0,$.isNil)(t?.onDragEnd)||t?.onDragEnd({x:a,y:o},t),!(0,$.isNil)(r)&&!(0,$.isNil)(r.style)&&(r.style.cursor=u.Pointer),i(!1,null)}};var $r=e(O(),1);const ei=(e,t,n)=>{!e||!t||Object.values(t).forEach(t=>{if(t.type===A.POINT&&!(0,$r.isNil)(t?.label)&&t?.label?.display){let{content:r,font:i,color:a,position:o,padding:s}=t?.label??{},{xScaleID:c=`x`,yScaleID:l=`y`}=t;e?.save?.(),e.font=i,e.fillStyle=a;let{centerX:u=-1,centerY:d=-1}=Kr(t,n,c,l),f=e.measureText(r).width,p=u-f/2,m=d+20;switch(o){case j.Top:m=d-20;break;case j.Left:p=u-f-s,m=d;break;case j.Right:p=u+s,m=d;break}e?.fillText?.(r,p,m),e?.restore?.()}})};var ti=e(O(),1);Ce.register(S,i,l,s,de,v,C,b,ue,ce,pe,Be,Ur,{id:`annotationDraggerPlugin`,beforeDraw(e){let t=e?.ctx,n=e?.options?.plugins?.annotationDraggerPlugin||{enabled:!1},r=e?.options?.plugins?.annotation?.annotations??{};r&&(!t||!r||(ei(e?.ctx,r,e?.scales),n.enabled&&(e?.options?.plugins?.tooltip&&(e.options.plugins.tooltip.enabled=!1),e?.options?.hover&&(e.options.hover={mode:void 0,intersect:!1}))))},afterUpdate(e){let{canvas:t,scales:n,hoveredAnnotationId:r}=e??{},i=e?.options?.plugins?.annotationDraggerPlugin||{enabled:!1};if(!t||!n||!i||!i?.enabled)return;let a={...n,x:n.x,y:n.y},o=e?.options?.plugins?.annotation?.annotations??{};if(!e&&!o)return;i.enabled?(e?.options?.plugins?.tooltip&&(e.options.plugins.tooltip.enabled=!1),e?.options?.hover&&(e.options.hover={mode:void 0,intersect:!1})):(e?.options?.plugins?.tooltip&&(e.options.plugins.tooltip.enabled=!0),e?.options?.hover&&(e.options.hover={mode:Se.Nearest,intersect:!0}));let s=!1,c,l,u=null,d=(e,t,n,r)=>{s=e,u=t,n!==void 0&&r!==void 0&&(c=n,l=r)};!t.dataset.annotationDraggerInitialized&&i.enabled&&r&&(t.addEventListener(P.MOUSEDOWN,n=>{Xr(n,t,a,e?.options?.plugins?.annotation?.annotations,d,e?.hoveredAnnotationId)}),t.addEventListener(P.MOUSEMOVE,n=>{(0,ti.debounce)(()=>Zr(n,t,a,s,u,c,l,e),5)()}),t.addEventListener(P.MOUSEUP,t=>{let n=t.currentTarget;Qr(s,u,e,n,d)}),t.dataset.annotationDraggerInitialized=`true`),i.enabled||(t.removeEventListener(P.MOUSEDOWN,()=>{}),t.removeEventListener(P.MOUSEMOVE,()=>{}),t.removeEventListener(P.MOUSEUP,()=>{}),t.dataset.annotationDraggerInitialized=``)}},ht);var ni=e=>{ae();let t=(0,J.useRef)(null),{table:n,headerComponent:r,subheaderComponent:i}=e??{},{translations:a,languageKey:o}=lt(),{data:{datasets:s}={datasets:[]},options:c,testId:l,persistenceId:u,controlsPortalId:d}=ar(e),{annotations:f,axes:p,chartStyling:m,graph:h}=c??{},g=!c?.legend?.customLegend?.customLegendContainerID,[_,v]=(0,J.useReducer)(hn,{options:c,persistenceId:u},yn),y=(0,J.useMemo)(()=>cr(s,_,c,a),[_.lineEnabled,_.pointsEnabled,s,p,f,h]);Mr({options:c,state:_,persistenceId:u});let{resetZoom:b,handleKeyDown:x,handleKeyUp:S}=Ln({chartRef:t,state:_,options:c,dispatch:v,generatedDatasets:y}),C=Or({chartRef:t,state:_,options:c,dispatch:v,generatedDatasets:y}),w=kr({options:c,resetZoom:b});return(0,Y.jsxs)(`div`,{className:ge(m,gt),style:{width:m.width||`auto`,height:m.height||`auto`},tabIndex:0,onKeyDown:x,onKeyUp:S,"data-testid":l,children:[(0,Y.jsx)(Kn,{table:n,headerComponent:r,subheaderComponent:i,chartRef:t,state:_,options:c,dispatch:v,generatedDatasets:y,translations:a,controlsPortalId:d}),n&&_.showTable?(0,Y.jsx)(`div`,{className:gt.table,children:n}):(0,Y.jsx)(tt,{backend:Ae,context:window,children:(0,Y.jsxs)(`div`,{className:gt.canvas,id:`canvas`,children:[(0,Y.jsx)(ie,{ref:t,data:{datasets:y},options:C,plugins:w}),g&&!!y.length&&(0,Y.jsx)(rt,{chartRef:t,legendConfig:{options:c,generatedDatasets:y,chartType:Je.LINE}})]})})]},Fn(_,o))},ri=e=>{let{options:t,data:{datasets:n=[]}={}}=ar(e);return(0,Y.jsx)(me,{options:t,datasets:n,children:(0,Y.jsx)(ni,{...e})})};ri.__docgenInfo={description:``,methods:[],displayName:`LineChartWithLegend`,props:{chart:{required:!0,tsType:{name:`ILineChartData`},description:``},table:{required:!1,tsType:{name:`ReactNode`},description:``},headerComponent:{required:!1,tsType:{name:`ReactNode`},description:``},subheaderComponent:{required:!1,tsType:{name:`ReactNode`},description:``}}};export{Pn as n,ri as t};
|