UNPKG

@nivo/core

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