UNPKG

react-jsx-highstock

Version:

Highcharts (including Highstock) charts built using React components

2 lines 23.1 kB
/*! For license information please see react-jsx-highstock.min.js.LICENSE.txt */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define(["react"],t):"object"==typeof exports?exports.ReactHighcharts=t(require("react")):e.ReactHighcharts=t(e.React)}("undefined"!=typeof self?self:this,(e=>(()=>{"use strict";var t={197:(e,t)=>{var n=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function i(e,t,r){var i=null;if(void 0!==r&&(i=""+r),void 0!==t.key&&(i=""+t.key),"key"in t)for(var s in r={},t)"key"!==s&&(r[s]=t[s]);else r=t;return t=r.ref,{$$typeof:n,type:e,key:i,ref:void 0!==t?t:null,props:r}}t.Fragment=r,t.jsx=i,t.jsxs=i},85:(e,t,n)=>{e.exports=n(197)},12:t=>{t.exports=e}},n={};function r(e){var i=n[e];if(void 0!==i)return i.exports;var s=n[e]={exports:{}};return t[e](s,s.exports,r),s.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var i={};r.r(i),r.d(i,{Annotation:()=>Se,AreaRangeSeries:()=>gt,AreaSeries:()=>vt,AreaSplineRangeSeries:()=>St,AreaSplineSeries:()=>Et,Axis:()=>ee,BarSeries:()=>mt,BaseChart:()=>W,BellCurveSeries:()=>Ct,BoxPlotSeries:()=>jt,BubbleSeries:()=>Pt,BulletSeries:()=>At,CandlestickSeries:()=>kn,Caption:()=>Ae,Chart:()=>Y,ColorAxis:()=>Oe,ColumnPyramidSeries:()=>Ot,ColumnRangeSeries:()=>wt,ColumnSeries:()=>Lt,Credits:()=>Le,CylinderSeries:()=>Tt,Debug:()=>yt,DependencyWheelSeries:()=>Rt,ErrorBarSeries:()=>kt,FlagsSeries:()=>Nn,Funnel3dSeries:()=>Bt,FunnelSeries:()=>Nt,GaugeSeries:()=>Dt,HeatmapSeries:()=>Ht,Highcharts3dChart:()=>ge,HighchartsChart:()=>X,HighchartsProvider:()=>U,HighchartsSparkline:()=>de,HighchartsStockChart:()=>pn,HistogramSeries:()=>It,ItemSeries:()=>Vt,Legend:()=>Fe,LineSeries:()=>Mt,Loading:()=>ke,Navigator:()=>En,NetworkGraphSeries:()=>Ft,OHLCSeries:()=>Bn,OrganizationSeries:()=>_t,PackedBubbleSeries:()=>Ut,Pane:()=>ze,ParetoSeries:()=>Gt,PieSeries:()=>zt,PlotBand:()=>nt,PlotLine:()=>rt,PolygonSeries:()=>Wt,Pyramid3dSeries:()=>qt,PyramidSeries:()=>Xt,RangeSelector:()=>Ln,SankeySeries:()=>$t,Scatter3dSeries:()=>Zt,ScatterSeries:()=>Yt,Scrollbar:()=>Rn,Series:()=>V,SolidGaugeSeries:()=>Jt,SplineSeries:()=>Kt,StreamGraphSeries:()=>Qt,Subtitle:()=>ot,SunburstSeries:()=>en,TilemapSeries:()=>tn,TimelineSeries:()=>nn,Title:()=>ct,Tooltip:()=>ft,TreemapSeries:()=>rn,VariablePieSeries:()=>sn,VariwideSeries:()=>on,VectorSeries:()=>ln,VennSeries:()=>an,WaterfallSeries:()=>cn,WindBarbSeries:()=>un,XAxis:()=>ne,XRangeSeries:()=>dn,YAxis:()=>ie,ZAxis:()=>bt,getEventsConfig:()=>h,getNonEventHandlerProps:()=>m,useAxis:()=>L,useChart:()=>P,useHighcharts:()=>E,useModifiedProps:()=>q,usePlotBandLine:()=>Je,useSeries:()=>ht,withHighcharts:()=>F,withSeriesType:()=>M});var s=r(12);const o={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};let a;const l=new Uint8Array(16);function c(){if(!a){if("undefined"==typeof crypto||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");a=crypto.getRandomValues.bind(crypto)}return a(l)}const u=[];for(let e=0;e<256;++e)u.push((e+256).toString(16).slice(1));const d=function(e,t,n){if(o.randomUUID&&!t&&!e)return o.randomUUID();const r=(e=e||{}).random||(e.rng||c)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,t){n=n||0;for(let e=0;e<16;++e)t[n+e]=r[e];return t}return function(e,t=0){return(u[e[t+0]]+u[e[t+1]]+u[e[t+2]]+u[e[t+3]]+"-"+u[e[t+4]]+u[e[t+5]]+"-"+u[e[t+6]]+u[e[t+7]]+"-"+u[e[t+8]]+u[e[t+9]]+"-"+u[e[t+10]]+u[e[t+11]]+u[e[t+12]]+u[e[t+13]]+u[e[t+14]]+u[e[t+15]]).toLowerCase()}(r)},f=(0,s.createContext)();f.displayName="SeriesContext";const p=f;function b(e,t){let n={};return e&&Object.keys(e).filter((n=>t(n,e[n]))).forEach((t=>{n[t]=e[t]})),n}const m=e=>b(e,((e,t)=>!y(e,t))),h=e=>{const t=(e=>b(e,y))(e),n={};return Object.keys(t).forEach((e=>{const r=e.slice(2)[0].toLowerCase()+e.slice(3);n[r]=t[e]})),n},y=(e,t)=>0===e.indexOf("on")&&e.length>2&&"function"==typeof t;function x(e,t,n=!1){let{children:r,...i}=t;const s=b(i,((t,n)=>!e||!1===Object.is(n,e[t])));return!n||e&&!1!==Object.is(e.children,r)||(s.text=r),Object.keys(s).length>0&&s}function g(e){const t=(0,s.useRef)();return(0,s.useEffect)((()=>{t.current=e})),t.current}const v=(0,s.createContext)();v.displayName="HighchartsContext";const S=v;function E(){return(0,s.useContext)(S)}const C=(0,s.createContext)();C.displayName="ChartContext";const j=C;function P(){return(0,s.useContext)(j)}const A=(0,s.createContext)();A.displayName="AxisContext";const O=A,w=e=>e?{object:e,id:e.userOptions&&e.userOptions.id,type:e.coll,update:e.update.bind(e),remove:e.remove.bind(e),addPlotBandOrLine:e.addPlotBandOrLine.bind(e),removePlotBandOrLine:e.removePlotBandOrLine.bind(e),getExtremes:e.getExtremes.bind(e),setExtremes:e.setExtremes.bind(e),setTitle:e.setTitle.bind(e)}:null;function L(e){const t=P(),n=(0,s.useContext)(O),r=()=>{if(n)return n;if(e){const n=t.get(e);return w(n)}return null},[i,o]=(0,s.useState)(r);return(0,s.useEffect)((()=>{i||o(r())}),[]),(0,s.useDebugValue)(i?i.id:null),i}const T=(0,s.createContext)();T.displayName="ColorAxisContext";const R=T,k=e=>e?{object:e,id:e.userOptions&&e.userOptions.id}:null;function N(e){return e?{object:e,id:e.userOptions&&e.userOptions.id,type:e.type,update:e.update.bind(e),remove:e.remove.bind(e),setData:e.setData.bind(e),setVisible:e.setVisible.bind(e)}:null}var B=r(85);const D=[],H=(0,s.memo)((({id:e=d,data:t=D,isDataEqual:n=Object.is,type:r="line",visible:i=!0,children:o=null,axisId:a,requiresAxis:l=!0,jsxOptions:c,...u})=>{const f={id:e,data:t,type:r,visible:i,...u},b=E(),{addSeries:y,needsRedraw:v}=P(),S=(0,s.useRef)(null),[,C]=(0,s.useState)(!1),j=(0,s.useRef)(null),A=L(a),O=function(){P();const e=(0,s.useContext)(R),t=()=>e||null,[n,r]=(0,s.useState)(t);return(0,s.useEffect)((()=>{n||r(t())}),[]),(0,s.useDebugValue)(n?n.id:null),n}();(0,s.useEffect)((()=>{if(l&&!A)return;const e=I(f,A,O,l),t=y(e,!1);return S.current=t,j.current=N(S.current),C(!0),v(),()=>{if(t&&t.remove){try{t.remove.bind(t)(!1),S.current=null}catch{}v()}}}),[A]);const w=g(f);return(0,s.useEffect)((()=>{if(!w)return;if(!S.current)return;const e=S.current,{visible:t,data:r,...i}=f;let s=!1;if(!1===n(r,w.data)){const t=c&&c.animation,n=c&&c.updatePoints;e.setData(r,!1,t,n),s=!0}t!==w.visible&&(e.setVisible(t,!1),s=!0);const o=x(w,i);if(!1!==o){const t=m(o);e.update(t,!1);const n=h(o),r=h(w);Object.keys(n).forEach((t=>{const i=r[t];i&&b.removeEvent(e,t,i);const s=n[t];s&&b.addEvent(e,t,s)})),s=!0}s&&v()})),S.current?(0,B.jsx)(p.Provider,{value:j.current,children:o}):null})),I=(e,t,n,r)=>{const{id:i,data:s,...o}=e,a="function"==typeof i?i():i,l=m(o),c={id:a,data:s,events:h(o),...l};return n&&(c.colorAxis=n.id),r&&(c[t.type]=t.id),c};H.displayName="Series";const V=H;function M(e,t={}){const n=n=>(0,B.jsx)(V,{...n,...t,type:e.toLowerCase()});return n.displayName=`${e}Series`,n}function F(e,t){return function(n){return(0,B.jsx)(U,{Highcharts:t,children:(0,B.jsx)(e,{...n})})}}const U=({Highcharts:e,children:t})=>(0,B.jsx)(S.Provider,{value:e,children:t});function G(e){const t=window.cancelAnimationFrame,n=window.requestAnimationFrame;var r;return function(...i){r&&t(r),r=n(e.bind(e,...i))}}const z=e=>e,W=({children:e=null,callback:t=z,className:n="",containerProps:r=null,...i})=>{const[o,a]=(0,s.useState)(!1),l=(0,s.useRef)(null),c=(0,s.useRef)(null),u=(0,s.useRef)(null);(0,s.useLayoutEffect)((()=>{const e=((e,t)=>{if(!t)return;const{chartCreationFunc:n,callback:r,chart:i,polar:s,gauge:o,styledMode:a=!1,children:l,...c}=e,u=n(t,{chart:{styledMode:a,...i},title:{text:null},subtitle:{text:null},legend:{enabled:!1},rangeSelector:{enabled:!1},navigator:{enabled:!1},scrollbar:{enabled:!1},tooltip:{enabled:!1},credits:{enabled:!1},series:[],xAxis:[],yAxis:[],...c});return u.polar=s,u.angular=o,u})(i,l.current);var n,r;c.current=e,u.current=(n=e,r=i.chartType,{object:n,type:r,get:n.get.bind(n),setSize:n.setSize.bind(n),update:n.update.bind(n),addAxis:n.addAxis.bind(n),addColorAxis:n.addColorAxis.bind(n),addSeries:n.addSeries.bind(n),setTitle:n.setTitle.bind(n),setCaption:n.setCaption.bind(n),showLoading:n.showLoading.bind(n),hideLoading:n.hideLoading.bind(n),addCredits:n.addCredits.bind(n),addAnnotation:n.addAnnotation?n.addAnnotation.bind(n):null,removeAnnotation:n.removeAnnotation?n.removeAnnotation.bind(n):null,needsRedraw:G((()=>{if(!n.__destroyed)try{n.redraw.bind(n)()}catch{}}))}),t(e),a(!0)}),[]),(0,s.useEffect)((()=>{const e=c.current;return()=>{e&&(e.destroy.bind(e)(),e.__destroyed=!0)}}),[]);const d=g(i);return(0,s.useEffect)((()=>{if(!o)return;const{plotOptions:e}=i,t=c.current;!1===Object.is(d.plotOptions,e)&&t&&(t.update({plotOptions:e},!1),u.current.needsRedraw())})),(0,B.jsx)("div",{...r,className:`chart ${n}`,ref:l,children:o&&(0,B.jsx)(j.Provider,{value:u.current,children:e})})},X=e=>{const t=E();return(0,B.jsx)(W,{...e,chartCreationFunc:t.chart,chartType:"chart"})};function q(e,t=!1){const n=(0,s.useRef)();(0,s.useEffect)((()=>{n.current=e}));const r=x(n.current,e,t);return(0,s.useDebugValue)(r?"Modified":"Not modified"),r}const $=(0,s.memo)((({type:e="line",width:t,height:n,...r})=>{const i=P(),o=(0,s.useRef)(!1),a=q({type:e,...r});return(0,s.useEffect)((()=>{void 0===t&&void 0===n||i.setSize(t,n)}),[t,n]),(0,s.useEffect)((()=>{if(!1!==a&&o.current){const e=m(a);Object.getOwnPropertyNames(e).length>0&&_(a,i,i.needsRedraw)}})),(0,s.useEffect)((()=>{const t=m({type:e,...r});_(t,i),o.current=!0}),[]),function(e,t){const n=E(),r=h(e),i=g(r),s=x(i,r);!1!==s&&Object.keys(s).forEach((e=>{if(i){const r=i[e];r&&n.removeEvent(t,e,r)}const r=s[e];r&&n.addEvent(t,e,r)}))}(r,i.object),null})),_=(e,t)=>{t.update({chart:e},!1),t.needsRedraw()};$.displayName="Chart";const Y=$,Z=(0,s.memo)((({children:e,axisId:t,...n})=>{const r=L(t);return(0,s.useEffect)((()=>{r&&J({text:e,...n},r)})),(0,s.useEffect)((()=>()=>{if(r)try{J({text:null},r)}catch{}}),[r]),null})),J=(e,t)=>{t.setTitle(e,!0)};Z.displayName="AxisTitle";const K=Z,Q=({children:e=null,dynamicAxis:t=!0,...n})=>{const r=P(),i=(0,s.useRef)(null),o=(0,s.useRef)(null),[a,l]=(0,s.useState)(!1);(0,s.useEffect)((()=>{const e=((e,t,n)=>{const{id:r=d,isX:i}=t,s=(e=>{const{id:t=d,...n}=e,r="function"==typeof t?t():t,i=m(n);return{id:r,title:{text:null},events:h(n),...i}})(t);let o;if(n)o=e.addAxis(s,i,!1);else{const t="function"==typeof r?r():r;o=e.get(t),o.update.call(o,s,!1)}return o})(r,n,t);return i.current=e,o.current=w(i.current),l(!0),r.needsRedraw(),()=>{if(e.remove&&t){try{e.remove.bind(e)(!1)}catch{}r.needsRedraw()}}}),[]);const c=q(n);return(0,s.useEffect)((()=>{if(a&&!1!==c){const e=i.current,t=m(c),s={events:h(n),...t};e.plotLinesAndBands&&e.plotLinesAndBands.length>0?e.update(s,!0):(e.update(s,!1),r.needsRedraw())}})),a?(0,B.jsx)(O.Provider,{value:o.current,children:e}):null};Q.Title=K;const ee=Q,te=({id:e,...t})=>{const n="stockChart"===P().type,r=n?"datetime":"linear",i=n?"xAxis":e;return(0,B.jsx)(ee,{type:r,...t,id:i,isX:!0})};te.Title=ee.Title;const ne=te,re=({type:e="linear",...t})=>(0,B.jsx)(ee,{type:e,...t,isX:!1});re.displayName="YAxis",re.Title=ee.Title;const ie=re,se={series:{animation:!1,lineWidth:1,shadow:!1,states:{hover:{lineWidth:1}},marker:{radius:1,states:{hover:{radius:2}}},fillOpacity:.25}},oe=[],ae={},le=[0],ce={enabled:!1},ue=[2,0,2,0],de=({height:e=20,width:t=120,margin:n=ue,style:r=ae,series:i,children:o,plotOptions:a=se,...l})=>{const c=(0,s.useMemo)((()=>({overflow:"visible",...r})),[r]),u=!!i,d=u?i:o;return(0,B.jsxs)(X,{plotOptions:a,...l,children:[(0,B.jsx)(Y,{height:e,width:t,animation:!1,backgroundColor:null,borderWidth:0,margin:n,style:c,skipClone:!0}),(0,B.jsx)(ne,{labels:ce,startOnTick:!1,endOnTick:!1,tickPositions:oe}),(0,B.jsx)(ie,{id:"sparkline",labels:ce,startOnTick:!1,endOnTick:!1,tickPositions:le,children:d}),u&&(0,B.jsx)(B.Fragment,{children:o})]})},fe={visible:"default",size:1,bottom:{},top:{},left:{},right:{},back:{},front:{}},pe=(0,s.memo)((({enabled:e=!1,alpha:t=0,beta:n=0,depth:r=100,fitToPlot:i=!0,viewDistance:o=25,axisLabelPosition:a="default",frame:l=fe,...c})=>{const u={enabled:e,alpha:t,beta:n,depth:r,fitToPlot:i,viewDistance:o,axisLabelPosition:a,frame:l,...c},d=(E(),P());return(0,s.useEffect)((()=>{be(d,u)})),null})),be=(e,t)=>{const{alpha:n,axisLabelPosition:r,beta:i,depth:s,fitToPlot:o,frame:a,viewDistance:l}=t,c={chart:{options3d:{enabled:!0,alpha:n,axisLabelPosition:r,beta:i,depth:s,fitToPlot:o,frame:a,viewDistance:l}}};e.update(c,!0)};pe.displayName="Options3d";const me=pe,he={options3d:{enabled:!0}},ye={id:"zAxis"},xe=({children:e,alpha:t,axisLabelPosition:n,beta:r,depth:i,fitToPlot:s,frame:o,viewDistance:a,...l})=>(0,B.jsxs)(X,{chart:he,zAxis:ye,...l,children:[(0,B.jsx)(me,{alpha:t,axisLabelPosition:n,beta:r,depth:i,fitToPlot:s,frame:o,viewDistance:a}),e]});xe.propTypes=me.propTypes;const ge=xe,ve=(0,s.memo)((e=>{const{id:t=d,children:n,...r}=e,{addAnnotation:i,removeAnnotation:o}=P(),a=(0,s.useRef)();return(0,s.useEffect)((()=>{a.current="function"==typeof t?t():t;const e=a.current,n={id:e,...r};return i(n),()=>{try{o(e)}catch{}}})),null}));ve.displayName="Annotation";const Se=ve,Ee=e=>e,Ce=(e,t=Ee,n=Ee,r=!0)=>{const i=P(),o=q(e,r);(0,s.useEffect)((()=>{!1!==o&&(t(i,o),i.needsRedraw())})),(0,s.useEffect)((()=>()=>{try{n(i)}catch{}i.needsRedraw()}),[])},je=(0,s.memo)((e=>(Ce(e,Pe,(e=>Pe(e,{text:null}))),null))),Pe=(e,t)=>{e.setCaption(t)};je.displayName="Caption";const Ae=je,Oe=({children:e=null,...t})=>{const n=P(),r=(0,s.useRef)(null),i=(0,s.useRef)(null),[o,a]=(0,s.useState)(!1);(0,s.useEffect)((()=>{const e=((e,t)=>{const n=(e=>{const{id:t=d,...n}=e,r="function"==typeof t?t():t,i=m(n);return{id:r,events:h(n),...i}})(t);return e.addColorAxis(n,!1)})(n,t);return r.current=e,i.current=k(r.current),a(!0),n.needsRedraw(),()=>{if(e&&e.remove){try{e.remove.bind(e)(!1)}catch{}n.needsRedraw()}}}),[]);const l=q(t);return(0,s.useEffect)((()=>{null!==r.current&&!1!==l&&(r.current.update(l,!1),n.needsRedraw())})),o?(0,B.jsx)(R.Provider,{value:i.current,children:e}):null},we=(e,t)=>{"text"in t&&!t.text&&delete t.text,e.addCredits(t,!0)},Le=({enabled:e=!0,...t})=>(Ce({enabled:e,...t},we,(e=>we(e,{enabled:!1}))),null),Te=(0,s.memo)((({children:e,isLoading:t=!0,...n})=>{const r=P(),i=q(n);return(0,s.useEffect)((()=>{!1!==i&&Re(i,r),t?r.showLoading(e):r.hideLoading()})),(0,s.useEffect)((()=>()=>{try{r.hideLoading()}catch{}}),[]),null})),Re=(e,t)=>{t.update({loading:e},!0)};Te.displayName="Loading";const ke=Te,Ne=(0,s.memo)((({children:e=null,enabled:t=!0,...n})=>(Ce({enabled:t,...n},Be,(e=>Be(e,{enabled:!1})),!1),e))),Be=(e,t)=>{e.update({legend:t},!1)};Ne.displayName="Legend";const De=Ne,He=(0,s.memo)((e=>(Ce(e,Ie,(e=>Ie(e,{text:null}))),null))),Ie=(e,t)=>{e.update({legend:{title:t}},!1)};He.displayName="LegendTitle";const Ve=He,Me=De;Me.Title=Ve;const Fe=Me,Ue=(0,s.memo)((({children:e,...t})=>(Ce(t,Ge,(e=>Ge(e,{})),!1),null))),Ge=(e,t)=>{e.update({pane:t},!1)};Ue.displayName="Pane";const ze=Ue,We=(0,s.createContext)();We.displayName="PlotBandLineContext";const Xe=We;function qe(e,t){const{id:n=d,axisId:r,children:i,...o}=e,a=L(r),l=(0,s.useRef)(),[c,u]=(0,s.useState)(null),f=q(o);return(0,s.useEffect)((()=>{if(a&&(!c||!1!==f)){c||(l.current="function"==typeof n?n():n);const e=l.current,r={id:e,...o};c&&a.removePlotBandOrLine(l.current),a.addPlotBandOrLine(r,t),u({id:e,get object(){return a&&a.object&&a.object.plotLinesAndBands?a.object.plotLinesAndBands.find((t=>t.id===e)):null}})}})),(0,s.useEffect)((()=>()=>{try{a.removePlotBandOrLine(l.current)}catch{}}),[]),c}const $e=(0,s.memo)((e=>{const t=qe(e,"plotBands"),{children:n}=e;return n||t?(0,B.jsx)(Xe.Provider,{value:t,children:n}):null}));$e.displayName="PlotBand";const _e=$e,Ye=(0,s.memo)((e=>{const t=qe(e,"plotLines"),{children:n}=e;return n||t?(0,B.jsx)(Xe.Provider,{value:t,children:n}):null}));Ye.displayName="PlotLine";const Ze=Ye;function Je(){return(0,s.useContext)(Xe)}const Ke=(0,s.memo)((e=>{const t=Je();return(0,s.useEffect)((()=>{if(!t)return;const{children:n,id:r,...i}=e;Qe(t.object,{text:n,...i})})),(0,s.useEffect)((()=>()=>{if(t)try{Qe(t.object,{text:null})}catch{}}),[]),null})),Qe=(e,t)=>{e&&(e.options.label=et(t),e.render())},et=e=>{const{text:t,formatter:n,align:r,rotation:i,style:s,textAlign:o,useHTML:a,verticalAlign:l,x:c,y:u}=e;return{text:t,formatter:n,align:r,rotation:i,style:s,textAlign:o,useHTML:a,verticalAlign:l,x:c,y:u}};Ke.displayName="PlotBandLineLabel";const tt=Ke,nt=_e;nt.Label=tt;const rt=Ze;rt.Label=tt;const it=(0,s.memo)((e=>(Ce(e,st,(e=>st(e,{text:null}))),null))),st=(e,t)=>{e.setTitle(void 0,t,!1)};it.displayName="Subtitle";const ot=it,at=(0,s.memo)((e=>(Ce(e,lt,(e=>lt(e,{text:null}))),null))),lt=(e,t)=>{e.setTitle(t,null,!1)};at.displayName="Title";const ct=at,ut=(0,s.memo)((e=>{var t;const{children:n=null,...r}=e,i=P(),o=E();r.enabled=null===(t=e.enabled)||void 0===t||t,(0,s.useEffect)((()=>(dt(i,{...o.defaultOptions&&o.defaultOptions.tooltip,...r}),()=>{try{dt(i,{enabled:!1})}catch{}})),[]);const a=q(r);return(0,s.useEffect)((()=>{!1!==a&&dt(i,a)})),null})),dt=(e,t)=>{e.update({tooltip:t})};ut.displayName="Tooltip";const ft=ut,pt=({type:e="linear",...t})=>(0,B.jsx)(ee,{type:e,...t,id:"zAxis",isX:!1,dynamicAxis:!1});pt.displayName="ZAxis",pt.Title=ee.Title;const bt=pt,mt=e=>{const t=P();return(0,s.useEffect)((()=>{t.update({chart:{inverted:!0}})}),[]),(0,B.jsx)(V,{...e,type:"bar"})};function ht(e){const t=(0,s.useContext)(p),n=P(),r=()=>t||(e?N(n.get(e)):null),[i,o]=(0,s.useState)(r);return(0,s.useEffect)((()=>{i||o(r())}),[]),(0,s.useDebugValue)(i?i.id:null),i}const yt=({varName:e="chart"})=>{const t=P();return(0,s.useEffect)((()=>(window[e]=t.object,console.log(`Chart instance available as global variable as window.${e}`),()=>{window[e]=void 0})),[e]),null},xt={requiresAxis:!1},gt=M("AreaRange"),vt=M("Area"),St=M("AreaSplineRange"),Et=M("AreaSpline"),Ct=M("BellCurve",{}),jt=M("BoxPlot"),Pt=M("Bubble"),At=M("Bullet"),Ot=M("ColumnPyramid"),wt=M("ColumnRange"),Lt=M("Column"),Tt=M("Cylinder"),Rt=M("DependencyWheel"),kt=M("ErrorBar"),Nt=M("Funnel",xt),Bt=M("Funnel3d"),Dt=M("Gauge"),Ht=M("Heatmap"),It=M("Histogram",{}),Vt=M("Item"),Mt=M("Line"),Ft=M("NetworkGraph"),Ut=M("PackedBubble",xt),Gt=M("Pareto",{}),zt=M("Pie",xt),Wt=M("Polygon"),Xt=M("Pyramid",xt),qt=M("Pyramid3d"),$t=M("Sankey"),_t=M("Organization"),Yt=M("Scatter"),Zt=M("Scatter3d"),Jt=M("SolidGauge"),Kt=M("Spline"),Qt=M("StreamGraph"),en=M("Sunburst"),tn=M("Tilemap"),nn=M("Timeline"),rn=M("Treemap"),sn=M("VariablePie",xt),on=M("Variwide"),an=M("Venn",xt),ln=M("Vector"),cn=M("Waterfall"),un=M("WindBarb"),dn=M("XRange");function fn(){return fn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},fn.apply(null,arguments)}const pn=e=>{const t=E();return s.createElement(W,fn({},e,{chartCreationFunc:t.stockChart,chartType:"stockChart"}))},bn=(e,t)=>{t.update(e)},mn=({children:e,axisId:t,...n})=>{const r=L(t),i=(0,s.useRef)(!1);(0,s.useEffect)((()=>{r&&bn(m(n),r)}),[r]);const o=q(n);if((0,s.useEffect)((()=>{i.current?r&&!1!==o&&bn(o,r):i.current=!0})),!e)return null;const a=s.Children.map(e,(e=>!1===(0,s.isValidElement)(e)?e:(0,s.cloneElement)(e,{axisId:t})));return s.createElement(s.Fragment,null,a)};function hn(){return hn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},hn.apply(null,arguments)}const yn=e=>s.createElement(mn,hn({},e,{axisId:"navigator-x-axis"})),xn=(e,t)=>{t.update({navigator:e},!0)},gn=(e,t)=>{e.update(t)};function vn(){return vn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},vn.apply(null,arguments)}const Sn=({enabled:e=!0,...t})=>{const n={enabled:e,...t},[r,i]=(0,s.useState)(!1),o=P(),a=E();(0,s.useEffect)((()=>{const{children:e,...t}=n,r=o.object;return r.options.navigator.enabled=!0,a.fireEvent(r,"beforeRender"),xn(t,o),i(!0),()=>{try{xn({enabled:!1},o)}catch{}}}),[]);const l=q(n);(0,s.useEffect)((()=>{!1!==l&&xn(l,o)}));const{children:c}=n;return c&&r?s.createElement(yn,null,c):null};Sn.Series=e=>{const t=ht(e.seriesId);return(0,s.useEffect)((()=>{if(t)return gn(t,{showInNavigator:!0}),()=>{try{gn(t,{showInNavigator:!1})}catch{}}}),[t]),null},Sn.XAxis=yn,Sn.YAxis=e=>s.createElement(mn,vn({},e,{axisId:"navigator-y-axis"}));const En=Sn,Cn=(e,t)=>{t.update({rangeSelector:e},!0)},jn=e=>{const t=e.object;if(t&&t.options){const{buttons:e=[]}=t.options.rangeSelector;return e}return[]},Pn=(e,t)=>{const{count:n,type:r}=e;return jn(t).findIndex((e=>e.count===n&&e.type===r))},An=(e,t)=>{t.update({rangeSelector:{buttons:e}})},On=(e,t)=>{const n=(e=>{const t={};return Object.keys(e).forEach((n=>{const r=0===n.indexOf("input")?n:`input${i=n,i.charAt(0).toUpperCase()+i.slice(1)}`;var i;t[r]=e[n]})),t})(e);t.update({rangeSelector:{...n}})},wn=({enabled:e=!0,children:t,...n})=>{const r={enabled:e,...n},[i,o]=(0,s.useState)(!1),a=E(),l=P(),c=L("xAxis");(0,s.useEffect)((()=>{if(!c)return;const e=l.object;e.options.rangeSelector.enabled=!0,a.fireEvent(e,"afterGetContainer");const t=((e,t)=>({...t.defaultOptions&&t.defaultOptions.rangeSelector,...e,inputEnabled:!1,buttons:[]}))(r,a);Cn(t,l);const n=((e,t)=>()=>{const n=e.object,r=t.getExtremes();n.rangeSelector.render.call(n.rangeSelector,r.min,r.max)})(l,c),i=c.object;return a.addEvent(i,"afterSetExtremes",n),o(!0),()=>{const e=c.object;a.removeEvent(e,"afterSetExtremes",n);try{Cn({enabled:!1},l)}catch{}}}),[c]);const u=q(r);return(0,s.useEffect)((()=>{c&&i&&!1!==u&&Cn(u,l)})),t&&i?s.createElement(s.Fragment,null,t):null};wn.Button=({count:e=1,offsetMin:t=0,offsetMax:n=0,...r})=>{const i={count:e,offsetMin:t,offsetMax:n,...r},o=P();return(0,s.useEffect)((()=>{if(Pn(i,o)>-1)return;const{count:e,type:t,offsetMin:n,offsetMax:r,dataGrouping:s,children:a,...l}=i;return((e,t)=>{const n=[...jn(t),e];An(n,t)})({count:e,type:t,offsetMin:n,offsetMax:r,dataGrouping:s,text:a,events:h(l)},o),()=>{try{((e,t)=>{const n=Pn(e);if(-1===n)return;const r=[...jn()];r.splice(n,1),An(r,t)})(i,o)}catch{}}}),[]),null},wn.Input=({enabled:e=!0,...t})=>{const n=P();(0,s.useEffect)((()=>()=>{try{On({enabled:!1},n)}catch{}}),[]);const r=q({enabled:e,...t});return(0,s.useEffect)((()=>{!1!==r&&On(r,n)})),null};const Ln=wn,Tn=(e,t)=>{t.update({scrollbar:e},!0)},Rn=({children:e,enabled:t=!0,...n})=>{const r=P();(0,s.useEffect)((()=>()=>{try{Tn({enabled:!1},r)}catch{}}),[]);const i=q({enabled:t,...n});return(0,s.useEffect)((()=>{!1!==i&&Tn(i,r)})),e?s.createElement(s.Fragment,null,e):null},kn=M("Candlestick"),Nn=M("Flags"),Bn=M("OHLC");return i})()));