@nivo/core
Version:
<a href="https://nivo.rocks"><img alt="nivo" src="https://raw.githubusercontent.com/plouc/nivo/master/nivo.png" width="216" height="68"/></a>
3 lines (2 loc) • 28.6 kB
JavaScript
import{createContext as e,useMemo as r,useContext as t,useRef as n,useEffect as i,useState as o,cloneElement as l,useCallback as a,memo as d,createElement as s,Component as u}from"react";import c from"prop-types";import{TooltipProvider as f,Tooltip as p,useTooltipHandlers as h,TooltipActionsContext as g,TooltipStateContext as b}from"@nivo/tooltip";import m from"lodash/merge";import y from"lodash/get";import v from"lodash/set";import{interpolateString as _}from"d3-interpolate";import{config as w,useSpring as k,to as R,animated as x}from"@react-spring/web";import O from"lodash/isString";import{jsx as q,jsxs as C}from"react/jsx-runtime";import W from"lodash/last";import z from"lodash/isArray";import{scaleQuantize as T,scaleOrdinal as M,scaleSequential as P}from"d3-scale";import{schemeBrBG as j,schemePRGn as S,schemePiYG as B,schemePuOr as G,schemeRdBu as L,schemeRdGy as I,schemeRdYlBu as Y,schemeRdYlGn as D,schemeSpectral as A,schemeBlues as E,schemeGreens as U,schemeGreys as F,schemeOranges as X,schemePurples as N,schemeReds as H,schemeBuGn as K,schemeBuPu as V,schemeGnBu as J,schemeOrRd as Q,schemePuBuGn as Z,schemePuBu as $,schemePuRd as ee,schemeRdPu as re,schemeYlGnBu as te,schemeYlGn as ne,schemeYlOrBr as ie,schemeYlOrRd as oe,schemeCategory10 as le,schemeAccent as ae,schemeDark2 as de,schemePaired as se,schemePastel1 as ue,schemePastel2 as ce,schemeSet1 as fe,schemeSet2 as pe,schemeSet3 as he,interpolateBrBG as ge,interpolatePRGn as be,interpolatePiYG as me,interpolatePuOr as ye,interpolateRdBu as ve,interpolateRdGy as _e,interpolateRdYlBu as we,interpolateRdYlGn as ke,interpolateSpectral as Re,interpolateBlues as xe,interpolateGreens as Oe,interpolateGreys as qe,interpolateOranges as Ce,interpolatePurples as We,interpolateReds as ze,interpolateViridis as Te,interpolateInferno as Me,interpolateMagma as Pe,interpolatePlasma as je,interpolateWarm as Se,interpolateCool as Be,interpolateCubehelixDefault as Ge,interpolateBuGn as Le,interpolateBuPu as Ie,interpolateGnBu as Ye,interpolateOrRd as De,interpolatePuBuGn as Ae,interpolatePuBu as Ee,interpolatePuRd as Ue,interpolateRdPu as Fe,interpolateYlGnBu as Xe,interpolateYlGn as Ne,interpolateYlOrBr as He,interpolateYlOrRd as Ke,interpolateRainbow as Ve,interpolateSinebow as Je}from"d3-scale-chromatic";import Qe from"lodash/isFunction";import Ze from"lodash/without";import{curveBasis as $e,curveBasisClosed as er,curveBasisOpen as rr,curveBundle as tr,curveCardinal as nr,curveCardinalClosed as ir,curveCardinalOpen as or,curveCatmullRom as lr,curveCatmullRomClosed as ar,curveCatmullRomOpen as dr,curveLinear as sr,curveLinearClosed as ur,curveMonotoneX as cr,curveMonotoneY as fr,curveNatural as pr,curveStep as hr,curveStepAfter as gr,curveStepBefore as br,stackOrderAscending as mr,stackOrderDescending as yr,stackOrderInsideOut as vr,stackOrderNone as _r,stackOrderReverse as wr,stackOffsetExpand as kr,stackOffsetDiverging as Rr,stackOffsetNone as xr,stackOffsetSilhouette as Or,stackOffsetWiggle as qr}from"d3-shape";import{format as Cr}from"d3-format";import{timeFormat as Wr}from"d3-time-format";import zr from"lodash/isPlainObject";import Tr from"lodash/pick";import Mr from"lodash/isEqual";var Pr={background:"transparent",text:{fontFamily:"sans-serif",fontSize:11,fill:"#333333",outlineWidth:0,outlineColor:"transparent",outlineOpacity:1},axis:{domain:{line:{stroke:"transparent",strokeWidth:1}},ticks:{line:{stroke:"#777777",strokeWidth:1},text:{}},legend:{text:{fontSize:12}}},grid:{line:{stroke:"#dddddd",strokeWidth:1}},legends:{hidden:{symbol:{fill:"#333333",opacity:.6},text:{fill:"#333333",opacity:.6}},text:{},ticks:{line:{stroke:"#777777",strokeWidth:1},text:{fontSize:10}},title:{text:{}}},labels:{text:{}},markers:{lineColor:"#000000",lineStrokeWidth:1,text:{}},dots:{text:{}},tooltip:{container:{background:"white",color:"inherit",fontSize:"inherit",borderRadius:"2px",boxShadow:"0 1px 2px rgba(0, 0, 0, 0.25)",padding:"5px 9px"},basic:{whiteSpace:"pre",display:"flex",alignItems:"center"},chip:{marginRight:7},table:{},tableCell:{padding:"3px 5px"},tableCellValue:{fontWeight:"bold"}},crosshair:{line:{stroke:"#000000",strokeWidth:1,strokeOpacity:.75,strokeDasharray:"6 6"}},annotations:{text:{fontSize:13,outlineWidth:2,outlineColor:"#ffffff",outlineOpacity:1},link:{stroke:"#000000",strokeWidth:1,outlineWidth:2,outlineColor:"#ffffff",outlineOpacity:1},outline:{fill:"none",stroke:"#000000",strokeWidth:2,outlineWidth:2,outlineColor:"#ffffff",outlineOpacity:1},symbol:{fill:"#000000",outlineWidth:2,outlineColor:"#ffffff",outlineOpacity:1}}};function jr(){return jr=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},jr.apply(this,arguments)}function Sr(e,r){return Sr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,r){return e.__proto__=r,e},Sr(e,r)}function Br(e,r){if(null==e)return{};var t,n,i={},o=Object.keys(e);for(n=0;n<o.length;n++)t=o[n],r.indexOf(t)>=0||(i[t]=e[t]);return i}var Gr=["axis.ticks.text","axis.legend.text","legends.title.text","legends.text","legends.ticks.text","legends.title.text","labels.text","dots.text","markers.text","annotations.text"],Lr=function(e,r){return jr({},r,e)},Ir=function(e,r){var t=m({},e,r);return Gr.forEach((function(e){v(t,e,Lr(y(t,e),t.text))})),t},Yr=e(),Dr={animate:!0,config:"default"},Ar=function(e){var t=e.children,n=e.animate,i=void 0===n||n,o=e.config,l=void 0===o?"default":o,a=r((function(){var e=O(l)?w[l]:l;return{animate:i,config:e}}),[i,l]);return q(Yr.Provider,{value:a,children:t})},Er={animate:c.bool,motionConfig:c.oneOfType([c.oneOf(Object.keys(w)),c.shape({mass:c.number,tension:c.number,friction:c.number,clamp:c.bool,precision:c.number,velocity:c.number,duration:c.number,easing:c.func})])};Ar.propTypes={children:c.node.isRequired,animate:Er.animate,config:Er.motionConfig};var Ur=function(){return t(Yr)},Fr=function(e){var t=Ur(),o=t.animate,l=t.config,a=function(e){var r=n();return i((function(){r.current=e}),[e]),r.current}(e),d=r((function(){return _(a,e)}),[a,e]),s=k({from:{value:0},to:{value:1},reset:!0,config:l,immediate:!o}).value;return R(s,d)},Xr={nivo:["#d76445","#f47560","#e8c1a0","#97e3d5","#61cdbb","#00b0a7"],BrBG:W(j),PRGn:W(S),PiYG:W(B),PuOr:W(G),RdBu:W(L),RdGy:W(I),RdYlBu:W(Y),RdYlGn:W(D),spectral:W(A),blues:W(E),greens:W(U),greys:W(F),oranges:W(X),purples:W(N),reds:W(H),BuGn:W(K),BuPu:W(V),GnBu:W(J),OrRd:W(Q),PuBuGn:W(Z),PuBu:W($),PuRd:W(ee),RdPu:W(re),YlGnBu:W(te),YlGn:W(ne),YlOrBr:W(ie),YlOrRd:W(oe)},Nr=Object.keys(Xr),Hr=function(e){if(Qe(e)){if(!Qe(e.domain))throw new Error("Provided colors should be a valid quantize scale providing a 'domain()' function");return e}if(Xr[e])return T().range(Xr[e]);if(z(e))return T().range(e);throw new Error("Unable to guess quantize color scale from '"+e+"',\nmust be a function or one of:\n'"+Nr.join("', '")+"'")},Kr={nivo:["#e8c1a0","#f47560","#f1e15b","#e8a838","#61cdbb","#97e3d5"],category10:le,accent:ae,dark2:de,paired:se,pastel1:ue,pastel2:ce,set1:fe,set2:pe,set3:he,brown_blueGreen:W(j),purpleRed_green:W(S),pink_yellowGreen:W(B),purple_orange:W(G),red_blue:W(L),red_grey:W(I),red_yellow_blue:W(Y),red_yellow_green:W(D),spectral:W(A),blues:W(E),greens:W(U),greys:W(F),oranges:W(X),purples:W(N),reds:W(H),blue_green:W(K),blue_purple:W(V),green_blue:W(J),orange_red:W(Q),purple_blue_green:W(Z),purple_blue:W($),purple_red:W(ee),red_purple:W(re),yellow_green_blue:W(te),yellow_green:W(ne),yellow_orange_brown:W(ie),yellow_orange_red:W(oe)},Vr=["nivo","category10","accent","dark2","paired","pastel1","pastel2","set1","set2","set3","brown_blueGreen","purpleRed_green","pink_yellowGreen","purple_orange","red_blue","red_grey","red_yellow_blue","red_yellow_green","spectral","blues","greens","greys","oranges","purples","reds","blue_green","blue_purple","green_blue","orange_red","purple_blue_green","purple_blue","purple_red","red_purple","yellow_green_blue","yellow_green","yellow_orange_brown","yellow_orange_red"],Jr={brown_blueGreen:ge,purpleRed_green:be,pink_yellowGreen:me,purple_orange:ye,red_blue:ve,red_grey:_e,red_yellow_blue:we,red_yellow_green:ke,spectral:Re,blues:xe,greens:Oe,greys:qe,oranges:Ce,purples:We,reds:ze,viridis:Te,inferno:Me,magma:Pe,plasma:je,warm:Se,cool:Be,cubehelixDefault:Ge,blue_green:Le,blue_purple:Ie,green_blue:Ye,orange_red:De,purple_blue_green:Ae,purple_blue:Ee,purple_red:Ue,red_purple:Fe,yellow_green_blue:Xe,yellow_green:Ne,yellow_orange_brown:He,yellow_orange_red:Ke,rainbow:Ve,sinebow:Je},Qr=["brown_blueGreen","purpleRed_green","pink_yellowGreen","purple_orange","red_blue","red_grey","red_yellow_blue","red_yellow_green","spectral","blues","greens","greys","oranges","purples","reds","viridis","inferno","magma","plasma","warm","cool","cubehelixDefault","blue_green","blue_purple","green_blue","orange_red","purple_blue_green","purple_blue","purple_red","red_purple","yellow_green_blue","yellow_green","yellow_orange_brown","yellow_orange_red","rainbow","sinebow"],Zr=function(){return M(["#e8c1a0","#f47560","#f1e15b","#e8a838","#61cdbb","#97e3d5"])},$r=function(e,r){if(O(e)){var t=Kr[e];if(void 0!==t){var n=M(t);return n.type="ordinal",n}if(void 0!==r&&0===e.indexOf("seq:")){var i=Jr[e.slice(4)];if(void 0!==i){var o=P(i).domain(r.domain());return o.type="sequential",o}}}if(z(e)){var l=M(e);return l.type="ordinal",l}return function(){return e}},et=c.oneOfType([c.oneOf(Nr),c.func,c.arrayOf(c.string)]),rt={basis:$e,basisClosed:er,basisOpen:rr,bundle:tr,cardinal:nr,cardinalClosed:ir,cardinalOpen:or,catmullRom:lr,catmullRomClosed:ar,catmullRomOpen:dr,linear:sr,linearClosed:ur,monotoneX:cr,monotoneY:fr,natural:pr,step:hr,stepAfter:gr,stepBefore:br},tt=Object.keys(rt),nt=tt.filter((function(e){return e.endsWith("Closed")})),it=Ze(tt,"bundle","basisClosed","basisOpen","cardinalClosed","cardinalOpen","catmullRomClosed","catmullRomOpen","linearClosed"),ot=Ze(tt,"bundle","basisClosed","basisOpen","cardinalClosed","cardinalOpen","catmullRomClosed","catmullRomOpen","linearClosed"),lt=function(e){if(!rt[e])throw new TypeError("'"+e+"', is not a valid curve interpolator identifier.");return rt[e]},at={ascending:mr,descending:yr,insideOut:vr,none:_r,reverse:wr},dt=Object.keys(at),st=function(e){return at[e]},ut={expand:kr,diverging:Rr,none:xr,silhouette:Or,wiggle:qr},ct=Object.keys(ut),ft=function(e){return ut[e]},pt=c.shape({top:c.number,right:c.number,bottom:c.number,left:c.number}).isRequired,ht=["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],gt=c.oneOf(ht),bt=function(e){return r((function(){return lt(e)}),[e])},mt=!0,yt=Zr,vt=M(he),_t={top:0,right:0,bottom:0,left:0},wt=function(e,t,n){return void 0===n&&(n={}),r((function(){var r=jr({},_t,n);return{margin:r,innerWidth:e-r.left-r.right,innerHeight:t-r.top-r.bottom,outerWidth:e,outerHeight:t}}),[e,t,n.top,n.right,n.bottom,n.left])},kt=function(){var e=n(null),r=o({left:0,top:0,width:0,height:0}),t=r[0],l=r[1],a=o((function(){return"undefined"==typeof ResizeObserver?null:new ResizeObserver((function(e){var r=e[0];return l(r.contentRect)}))}))[0];return i((function(){return e.current&&null!==a&&a.observe(e.current),function(){null!==a&&a.disconnect()}}),[]),[e,t]},Rt=function(e){return r((function(){return Ir(Pr,e)}),[e])},xt=function(e){return"function"==typeof e?e:"string"==typeof e?0===e.indexOf("time:")?Wr(e.slice("5")):Cr(e):function(e){return""+e}},Ot=function(e){return r((function(){return xt(e)}),[e])},qt=e(),Ct={},Wt=function(e){var r=e.theme,t=void 0===r?Ct:r,n=e.children,i=Rt(t);return q(qt.Provider,{value:i,children:n})};Wt.propTypes={children:c.node.isRequired,theme:c.object};var zt=function(){return t(qt)},Tt=["outlineWidth","outlineColor","outlineOpacity"],Mt=function(e){return e.outlineWidth,e.outlineColor,e.outlineOpacity,Br(e,Tt)},Pt=function(e){var r=e.children,t=e.condition,n=e.wrapper;return t?l(n,{},r):r};Pt.propTypes={children:c.node.isRequired,condition:c.bool.isRequired,wrapper:c.element.isRequired};var jt={position:"relative"},St=function(e){var r=e.children,t=e.theme,i=e.renderWrapper,o=void 0===i||i,l=e.isInteractive,a=void 0===l||l,d=e.animate,s=e.motionConfig,u=n(null);return q(Wt,{theme:t,children:q(Ar,{animate:d,config:s,children:q(f,{container:u,children:C(Pt,{condition:o,wrapper:q("div",{style:jt,ref:u}),children:[r,a&&q(p,{})]})})})})};St.propTypes={children:c.element.isRequired,isInteractive:c.bool,renderWrapper:c.bool,theme:c.object,animate:c.bool,motionConfig:c.oneOfType([c.string,Er.motionConfig])};var Bt=function(){},Gt={position:"relative"},Lt=function(e){var t=e.children,i=e.theme,o=e.isInteractive,l=void 0===o||o,d=e.renderWrapper,s=void 0===d||d,u=e.animate,c=e.motionConfig,f=n(null),m=h(f),y=m.actions,v=m.state,_=a((function(e,r){return y.showTooltipFromEvent(e,r)}),[y.showTooltipFromEvent]),w=r((function(){return{showTooltip:l?_:Bt,hideTooltip:l?y.hideTooltip:Bt}}),[y.hideTooltip,l,_]);return q(Wt,{theme:i,children:q(Ar,{animate:u,config:c,children:q(g.Provider,{value:y,children:q(b.Provider,{value:v,children:C(Pt,{condition:s,wrapper:q("div",{style:Gt,ref:f}),children:[t(w),l&&q(p,{})]})})})})})};Lt.propTypes={children:c.func.isRequired,isInteractive:c.bool,renderWrapper:c.bool,theme:c.object.isRequired,animate:c.bool.isRequired,motionConfig:c.oneOfType([c.string,Er.motionConfig])};var It=function(e){var r=e.children,t=kt(),n=t[0],i=t[1],o=i.width>0&&i.height>0;return q("div",{ref:n,style:{width:"100%",height:"100%"},children:o&&r({width:i.width,height:i.height})})};It.propTypes={children:c.func.isRequired};var Yt=["id","colors"],Dt=function(e){var r=e.id,t=e.colors,n=Br(e,Yt);return q("linearGradient",jr({id:r,x1:0,x2:0,y1:0,y2:1},n,{children:t.map((function(e){var r=e.offset,t=e.color,n=e.opacity;return q("stop",{offset:r+"%",stopColor:t,stopOpacity:void 0!==n?n:1},r)}))}))};Dt.propTypes={id:c.string.isRequired,colors:c.arrayOf(c.shape({offset:c.number.isRequired,color:c.string.isRequired,opacity:c.number})).isRequired,gradientTransform:c.string};var At=function(e,r,t){return void 0===t&&(t={}),jr({id:e,type:"linearGradient",colors:r},t)},Et={linearGradient:Dt},Ut={color:"#000000",background:"#ffffff",size:4,padding:4,stagger:!1},Ft=d((function(e){var r=e.id,t=e.background,n=void 0===t?Ut.background:t,i=e.color,o=void 0===i?Ut.color:i,l=e.size,a=void 0===l?Ut.size:l,d=e.padding,s=void 0===d?Ut.padding:d,u=e.stagger,c=void 0===u?Ut.stagger:u,f=a+s,p=a/2,h=s/2;return!0===c&&(f=2*a+2*s),C("pattern",{id:r,width:f,height:f,patternUnits:"userSpaceOnUse",children:[q("rect",{width:f,height:f,fill:n}),q("circle",{cx:h+p,cy:h+p,r:p,fill:o}),c&&q("circle",{cx:1.5*s+a+p,cy:1.5*s+a+p,r:p,fill:o})]})}));Ft.displayName="PatternDots",Ft.propTypes={id:c.string.isRequired,color:c.string.isRequired,background:c.string.isRequired,size:c.number.isRequired,padding:c.number.isRequired,stagger:c.bool.isRequired};var Xt=function(e,r){return void 0===r&&(r={}),jr({id:e,type:"patternDots"},r)},Nt=2*Math.PI,Ht=function(e){return e*Math.PI/180},Kt=function(e){return 180*e/Math.PI},Vt=function(e){return e.startAngle+(e.endAngle-e.startAngle)/2},Jt=function(e,r){return{x:Math.cos(e)*r,y:Math.sin(e)*r}},Qt=function(e){var r=e%360;return r<0&&(r+=360),r},Zt=function(e){return e-Nt*Math.floor((e+Math.PI)/Nt)},$t=function(e){return e<0?360- -e%360:e%360},en=function(e,r,t){void 0===t&&(t=360);var n=r;return Math.abs(r-e)>t&&(n=e+(r>e?t:-t)),[e,n]},rn={svg:{align:{left:"start",center:"middle",right:"end",start:"start",middle:"middle",end:"end"},baseline:{top:"text-before-edge",center:"central",bottom:"alphabetic"}},canvas:{align:{left:"left",center:"center",right:"right",start:"left",middle:"center",end:"right"},baseline:{top:"top",center:"middle",bottom:"bottom"}}},tn=function(e,r,t,n){void 0===n&&(n="svg");var i=rn[n],o=Jt(r-Math.PI/2,e),l=o.x,a=o.y,d=Kt(r),s=i.align.center,u=i.baseline.bottom;return t>0?(s=i.align.right,u=i.baseline.center):t<0&&(s=i.align.left,u=i.baseline.center),0!==t&&d>180&&(d-=180,s=s===i.align.right?i.align.left:i.align.right),{x:l,y:a,rotate:d+=t,align:s,baseline:u}},nn={spacing:5,rotation:0,background:"#000000",color:"#ffffff",lineWidth:2},on=d((function(e){var r=e.id,t=e.spacing,n=void 0===t?nn.spacing:t,i=e.rotation,o=void 0===i?nn.rotation:i,l=e.background,a=void 0===l?nn.background:l,d=e.color,s=void 0===d?nn.color:d,u=e.lineWidth,c=void 0===u?nn.lineWidth:u,f=Math.round(o)%360,p=Math.abs(n);f>180?f-=360:f>90?f-=180:f<-180?f+=360:f<-90&&(f+=180);var h,g=p,b=p;return 0===f?h="\n M 0 0 L "+g+" 0\n M 0 "+b+" L "+g+" "+b+"\n ":90===f?h="\n M 0 0 L 0 "+b+"\n M "+g+" 0 L "+g+" "+b+"\n ":(g=Math.abs(p/Math.sin(Ht(f))),b=p/Math.sin(Ht(90-f)),h=f>0?"\n M 0 "+-b+" L "+2*g+" "+b+"\n M "+-g+" "+-b+" L "+g+" "+b+"\n M "+-g+" 0 L "+g+" "+2*b+"\n ":"\n M "+-g+" "+b+" L "+g+" "+-b+"\n M "+-g+" "+2*b+" L "+2*g+" "+-b+"\n M 0 "+2*b+" L "+2*g+" 0\n "),C("pattern",{id:r,width:g,height:b,patternUnits:"userSpaceOnUse",children:[q("rect",{width:g,height:b,fill:a,stroke:"rgba(255, 0, 0, 0.1)",strokeWidth:0}),q("path",{d:h,strokeWidth:c,stroke:s,strokeLinecap:"square"})]})}));on.displayName="PatternLines",on.propTypes={id:c.string.isRequired,spacing:c.number.isRequired,rotation:c.number.isRequired,background:c.string.isRequired,color:c.string.isRequired,lineWidth:c.number.isRequired};var ln=function(e,r){return void 0===r&&(r={}),jr({id:e,type:"patternLines"},r)},an={color:"#000000",background:"#ffffff",size:4,padding:4,stagger:!1},dn=d((function(e){var r=e.id,t=e.color,n=void 0===t?an.color:t,i=e.background,o=void 0===i?an.background:i,l=e.size,a=void 0===l?an.size:l,d=e.padding,s=void 0===d?an.padding:d,u=e.stagger,c=void 0===u?an.stagger:u,f=a+s,p=s/2;return!0===c&&(f=2*a+2*s),C("pattern",{id:r,width:f,height:f,patternUnits:"userSpaceOnUse",children:[q("rect",{width:f,height:f,fill:o}),q("rect",{x:p,y:p,width:a,height:a,fill:n}),c&&q("rect",{x:1.5*s+a,y:1.5*s+a,width:a,height:a,fill:n})]})}));dn.displayName="PatternSquares",dn.propTypes={id:c.string.isRequired,color:c.string.isRequired,background:c.string.isRequired,size:c.number.isRequired,padding:c.number.isRequired,stagger:c.bool.isRequired};var sn=function(e,r){return void 0===r&&(r={}),jr({id:e,type:"patternSquares"},r)},un={patternDots:Ft,patternLines:on,patternSquares:dn},cn=["type"],fn=jr({},Et,un),pn=function(e){var r=e.defs;return!r||r.length<1?null:q("defs",{"aria-hidden":!0,children:r.map((function(e){var r=e.type,t=Br(e,cn);return fn[r]?s(fn[r],jr({key:t.id},t)):null}))})};pn.propTypes={defs:c.arrayOf(c.shape({type:c.oneOf(Object.keys(fn)).isRequired,id:c.string.isRequired}))};var hn=d(pn),gn=function(e){var r=e.width,t=e.height,n=e.margin,i=e.defs,o=e.children,l=e.role,a=e.ariaLabel,d=e.ariaLabelledBy,s=e.ariaDescribedBy,u=e.isFocusable,c=zt();return C("svg",{xmlns:"http://www.w3.org/2000/svg",width:r,height:t,role:l,"aria-label":a,"aria-labelledby":d,"aria-describedby":s,focusable:u,tabIndex:u?0:void 0,children:[q(hn,{defs:i}),q("rect",{width:r,height:t,fill:c.background}),q("g",{transform:"translate("+n.left+","+n.top+")",children:o})]})};gn.propTypes={width:c.number.isRequired,height:c.number.isRequired,margin:c.shape({top:c.number.isRequired,left:c.number.isRequired}).isRequired,defs:c.array,children:c.oneOfType([c.arrayOf(c.node),c.node]).isRequired,role:c.string,isFocusable:c.bool,ariaLabel:c.string,ariaLabelledBy:c.string,ariaDescribedBy:c.string};var bn=function(e){var r=e.size,t=e.color,n=e.borderWidth,i=e.borderColor;return q("circle",{r:r/2,fill:t,stroke:i,strokeWidth:n,style:{pointerEvents:"none"}})};bn.propTypes={size:c.number.isRequired,color:c.string.isRequired,borderWidth:c.number.isRequired,borderColor:c.string.isRequired};var mn=d(bn),yn=function(e){var r=e.x,t=e.y,n=e.symbol,i=void 0===n?mn:n,o=e.size,l=e.datum,a=e.color,d=e.borderWidth,u=e.borderColor,c=e.label,f=e.labelTextAnchor,p=void 0===f?"middle":f,h=e.labelYOffset,g=void 0===h?-12:h,b=zt(),m=Ur(),y=m.animate,v=m.config,_=k({transform:"translate("+r+", "+t+")",config:v,immediate:!y});return C(x.g,{transform:_.transform,style:{pointerEvents:"none"},children:[s(i,{size:o,color:a,datum:l,borderWidth:d,borderColor:u}),c&&q("text",{textAnchor:p,y:g,style:Mt(b.dots.text),children:c})]})};yn.propTypes={x:c.number.isRequired,y:c.number.isRequired,datum:c.object.isRequired,size:c.number.isRequired,color:c.string.isRequired,borderWidth:c.number.isRequired,borderColor:c.string.isRequired,symbol:c.oneOfType([c.func,c.object]),label:c.oneOfType([c.string,c.number]),labelTextAnchor:c.oneOf(["start","middle","end"]),labelYOffset:c.number};var vn=d(yn),_n=function(e){var r=e.width,t=e.height,n=e.axis,i=e.scale,o=e.value,l=e.lineStyle,a=e.textStyle,d=e.legend,s=e.legendNode,u=e.legendPosition,c=void 0===u?"top-right":u,f=e.legendOffsetX,p=void 0===f?14:f,h=e.legendOffsetY,g=void 0===h?14:h,b=e.legendOrientation,m=void 0===b?"horizontal":b,y=zt(),v=0,_=0,w=0,k=0;if("y"===n?(w=i(o),_=r):(v=i(o),k=t),d&&!s){var R=function(e){var r=e.axis,t=e.width,n=e.height,i=e.position,o=e.offsetX,l=e.offsetY,a=e.orientation,d=0,s=0,u="vertical"===a?-90:0,c="start";if("x"===r)switch(i){case"top-left":d=-o,s=l,c="end";break;case"top":s=-l,c="horizontal"===a?"middle":"start";break;case"top-right":d=o,s=l,c="horizontal"===a?"start":"end";break;case"right":d=o,s=n/2,c="horizontal"===a?"start":"middle";break;case"bottom-right":d=o,s=n-l,c="start";break;case"bottom":s=n+l,c="horizontal"===a?"middle":"end";break;case"bottom-left":s=n-l,d=-o,c="horizontal"===a?"end":"start";break;case"left":d=-o,s=n/2,c="horizontal"===a?"end":"middle"}else switch(i){case"top-left":d=o,s=-l,c="start";break;case"top":d=t/2,s=-l,c="horizontal"===a?"middle":"start";break;case"top-right":d=t-o,s=-l,c="horizontal"===a?"end":"start";break;case"right":d=t+o,c="horizontal"===a?"start":"middle";break;case"bottom-right":d=t-o,s=l,c="end";break;case"bottom":d=t/2,s=l,c="horizontal"===a?"middle":"end";break;case"bottom-left":d=o,s=l,c="horizontal"===a?"start":"end";break;case"left":d=-o,c="horizontal"===a?"end":"middle"}return{x:d,y:s,rotation:u,textAnchor:c}}({axis:n,width:r,height:t,position:c,offsetX:p,offsetY:g,orientation:m});s=q("text",{transform:"translate("+R.x+", "+R.y+") rotate("+R.rotation+")",textAnchor:R.textAnchor,dominantBaseline:"central",style:a,children:d})}return C("g",{transform:"translate("+v+", "+w+")",children:[q("line",{x1:0,x2:_,y1:0,y2:k,stroke:y.markers.lineColor,strokeWidth:y.markers.lineStrokeWidth,style:l}),s]})};_n.propTypes={width:c.number.isRequired,height:c.number.isRequired,axis:c.oneOf(["x","y"]).isRequired,scale:c.func.isRequired,value:c.oneOfType([c.number,c.string,c.instanceOf(Date)]).isRequired,lineStyle:c.object,textStyle:c.object,legend:c.string,legendPosition:c.oneOf(["top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"]),legendOffsetX:c.number.isRequired,legendOffsetY:c.number.isRequired,legendOrientation:c.oneOf(["horizontal","vertical"]).isRequired};var wn=d(_n),kn=function(e){var r=e.markers,t=e.width,n=e.height,i=e.xScale,o=e.yScale;return r&&0!==r.length?r.map((function(e,r){return q(wn,jr({},e,{width:t,height:n,scale:"y"===e.axis?o:i}),r)})):null};kn.propTypes={width:c.number.isRequired,height:c.number.isRequired,xScale:c.func.isRequired,yScale:c.func.isRequired,markers:c.arrayOf(c.shape({axis:c.oneOf(["x","y"]).isRequired,value:c.oneOfType([c.number,c.string,c.instanceOf(Date)]).isRequired,lineStyle:c.object,textStyle:c.object}))};var Rn=d(kn),xn=["theme","renderWrapper","animate","motionConfig"],On=function(e){return function(r){var t,n;function i(){return r.apply(this,arguments)||this}return n=r,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,Sr(t,n),i.prototype.render=function(){var r=this.props,t=r.theme,n=r.renderWrapper,i=r.animate,o=r.motionConfig,l=Br(r,xn);return q(St,{theme:t,renderWrapper:n,isInteractive:l.isInteractive,animate:i,motionConfig:o,children:q(e,jr({},l))})},i}(u)},qn=function(e,r){var t,n=Qe(e)?e:function(r){return y(r,e)};return r&&(t=Qe(r)?r:Cr(r)),t?function(e){return t(n(e))}:n},Cn=function(e){return Qe(e)?e:function(r){return y(r,e)}},Wn=function(e){return r((function(){return Cn(e)}),[e])},zn=["center","top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"],Tn=function(e,r,t){var n=r.width-e.width,i=r.height-e.height,o=0,l=0;return"center"===t&&(o=n/2,l=i/2),"top"===t&&(o=n/2),"top-right"===t&&(o=n),"right"===t&&(o=n,l=i/2),"bottom-right"===t&&(o=n,l=i),"bottom"===t&&(o=n/2,l=i),"bottom-left"===t&&(l=i),"left"===t&&(l=i/2),[o,l]},Mn=function(e,r,t,n){var i=t-e,o=n-r;return i*=i,o*=o,Math.sqrt(i+o)},Pn=function(e,r,t,n){var i=Math.atan2(n-r,t-e)-Math.PI/2;return i>0?i:2*Math.PI+i},jn=function(e,r,t,n,i,o){return e<=i&&i<=e+t&&r<=o&&o<=r+n},Sn=function(e,r){var t,n="touches"in r?r.touches[0]:r,i=n.clientX,o=n.clientY,l=e.getBoundingClientRect(),a=(t=void 0!==e.getBBox?e.getBBox():{width:e.offsetWidth||0,height:e.offsetHeight||0}).width===l.width?1:t.width/l.width;return[(i-l.left)*a,(o-l.top)*a]},Bn=Object.keys(Et),Gn=Object.keys(un),Ln=function(e,r,t){if("*"===e)return!0;if(Qe(e))return e(r);if(zr(e)){var n=t?y(r,t):r;return Mr(Tr(n,Object.keys(e)),e)}return!1},In=function(e,r,t,n){var i=void 0===n?{}:n,o=i.dataKey,l=i.colorKey,a=void 0===l?"color":l,d=i.targetKey,s=void 0===d?"fill":d,u=[],c={};return e.length&&r.length&&(u=[].concat(e),r.forEach((function(r){for(var n=function(){var n=t[i],l=n.id,d=n.match;if(Ln(d,r,o)){var f=e.find((function(e){return e.id===l}));if(f)if(Gn.includes(f.type))if("inherit"===f.background||"inherit"===f.color){var p=y(r,a),h=f.background,g=f.color,b=l;"inherit"===f.background&&(b=b+".bg."+p,h=p),"inherit"===f.color&&(b=b+".fg."+p,g=p),v(r,s,"url(#"+b+")"),c[b]||(u.push(jr({},f,{id:b,background:h,color:g})),c[b]=1)}else v(r,s,"url(#"+l+")");else if(Bn.includes(f.type)){if(f.colors.map((function(e){return e.color})).includes("inherit")){var m=y(r,a),_=l,w=jr({},f,{colors:f.colors.map((function(e,r){return"inherit"!==e.color?e:(_=_+"."+r+"."+m,jr({},e,{color:"inherit"===e.color?m:e.color}))}))});w.id=_,v(r,s,"url(#"+_+")"),c[_]||(u.push(w),c[_]=1)}else v(r,s,"url(#"+l+")")}return"break"}},i=0;i<t.length;i++){if("break"===n())break}}))),u};export{Rn as CartesianMarkers,wn as CartesianMarkersItem,St as Container,hn as Defs,vn as DotsItem,Lt as LegacyContainer,Dt as LinearGradient,Ar as MotionConfigProvider,Ft as PatternDots,Ut as PatternDotsDefaultProps,on as PatternLines,nn as PatternLinesDefaultProps,dn as PatternSquares,an as PatternSquaresDefaultProps,It as ResponsiveWrapper,gn as SvgWrapper,Nt as TWO_PI,Wt as ThemeProvider,Qt as absoluteAngleDegrees,Zt as absoluteAngleRadians,Tn as alignBox,it as areaCurvePropKeys,In as bindDefs,gt as blendModePropType,ht as blendModes,zn as boxAlignments,en as clampArc,nt as closedCurvePropKeys,Qr as colorInterpolatorIds,Jr as colorInterpolators,Vr as colorSchemeIds,lt as curveFromProp,tt as curvePropKeys,rt as curvePropMapping,mt as defaultAnimate,yt as defaultCategoricalColors,vt as defaultColorRange,_t as defaultMargin,Pr as defaultTheme,Ht as degreesToRadians,Ir as extendDefaultTheme,Pn as getAngle,$r as getColorScale,Mn as getDistance,qn as getLabelGenerator,tn as getPolarLabelProps,Cn as getPropertyAccessor,Sn as getRelativeCursor,xt as getValueFormatter,Et as gradientTypes,Hr as guessQuantizeColorScale,Lr as inheritRootThemeText,jn as isCursorInRect,Ln as isMatchingDef,ot as lineCurvePropKeys,At as linearGradientDef,pt as marginPropType,Vt as midAngle,Yr as motionConfigContext,Dr as motionDefaultProps,Er as motionPropTypes,Zr as nivoCategoricalColors,Bt as noop,$t as normalizeAngle,Xt as patternDotsDef,ln as patternLinesDef,sn as patternSquaresDef,un as patternTypes,Jt as positionFromAngle,et as quantizeColorScalePropType,Xr as quantizeColorScales,Nr as quantizeColorScalesKeys,Kt as radiansToDegrees,Mt as sanitizeSvgTextStyle,ft as stackOffsetFromProp,ct as stackOffsetPropKeys,ut as stackOffsetPropMapping,st as stackOrderFromProp,dt as stackOrderPropKeys,at as stackOrderPropMapping,rn as textPropsByEngine,qt as themeContext,Fr as useAnimatedPath,bt as useCurveInterpolation,wt as useDimensions,kt as useMeasure,Ur as useMotionConfig,Rt as usePartialTheme,Wn as usePropertyAccessor,zt as useTheme,Ot as useValueFormatter,On as withContainer};
//# sourceMappingURL=nivo-core.es.js.map