From 4dda1ed631b6a795f1075d3bf8dd1de48580cedc Mon Sep 17 00:00:00 2001 From: Joao Gilberto Magalhaes Date: Sun, 22 Feb 2026 20:03:12 -0500 Subject: [PATCH] Enable health checking for HAProxy backend servers - Updated HAProxy configuration templates to include `check` for `srv_stats` and `srv_dashboard` backends. - Adjusted expected test case outputs to account for the added health check settings. --- .../assets/etc/easyhaproxy/www/dashboard.html | 2 +- docs/dashboard.png | Bin 0 -> 126959 bytes src/templates/haproxy.cfg.j2 | 4 ++-- tests/expected/docker.txt | 4 ++-- tests/expected/services-letsencrypt.txt | 4 ++-- tests/expected/services-multiple-hosts.txt | 4 ++-- tests/expected/ssl-loose.txt | 4 ++-- tests/expected/static-cors.txt | 4 ++-- tests/expected/static.txt | 4 ++-- 9 files changed, 15 insertions(+), 15 deletions(-) create mode 100644 docs/dashboard.png diff --git a/deploy/docker/assets/etc/easyhaproxy/www/dashboard.html b/deploy/docker/assets/etc/easyhaproxy/www/dashboard.html index 970fa30..7ce2ba3 100644 --- a/deploy/docker/assets/etc/easyhaproxy/www/dashboard.html +++ b/deploy/docker/assets/etc/easyhaproxy/www/dashboard.html @@ -97,7 +97,7 @@ For more information, see https://radix-ui.com/primitives/docs/components/${t.do A`,",",",0,",",",",",",",` A`,",",",0,0,",",",",","Z"])),P.x,P.y,l,l,+(v<0),D.x,D.y,r,r,+(W>180),+(v>0),j.x,j.y,l,l,+(v<0),N.x,N.y)}else C+=yt(VA||(VA=Vi(["L",",","Z"])),t,n);return C},X9={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},MN=e=>{var t=sn(e,X9),{cx:n,cy:r,innerRadius:o,outerRadius:l,cornerRadius:s,forceCornerRadius:f,cornerIsExternal:d,startAngle:p,endAngle:v,className:m}=t;if(l0&&Math.abs(p-v)<360?S=F9({cx:n,cy:r,innerRadius:o,outerRadius:l,cornerRadius:Math.min(O,x/2),forceCornerRadius:f,cornerIsExternal:d,startAngle:p,endAngle:v}):S=NN({cx:n,cy:r,innerRadius:o,outerRadius:l,startAngle:p,endAngle:v}),g.createElement("path",Sg({},un(t),{className:b,d:S}))};function W9(e,t,n){if(e==="horizontal")return[{x:t.x,y:n.top},{x:t.x,y:n.top+n.height}];if(e==="vertical")return[{x:n.left,y:t.y},{x:n.left+n.width,y:t.y}];if(hC(t)){if(e==="centric"){var{cx:r,cy:o,innerRadius:l,outerRadius:s,angle:f}=t,d=Jt(r,o,l,f),p=Jt(r,o,s,f);return[{x:d.x,y:d.y},{x:p.x,y:p.y}]}return CN(t)}}var py={},my={},vy={},FA;function Z9(){return FA||(FA=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=_C();function n(r){return t.isSymbol(r)?NaN:Number(r)}e.toNumber=n})(vy)),vy}var XA;function Q9(){return XA||(XA=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Z9();function n(r){return r?(r=t.toNumber(r),r===1/0||r===-1/0?(r<0?-1:1)*Number.MAX_VALUE:r===r?r:0):r===0?r:0}e.toFinite=n})(my)),my}var WA;function J9(){return WA||(WA=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=jC(),n=Q9();function r(o,l,s){s&&typeof s!="number"&&t.isIterateeCall(o,l,s)&&(l=s=void 0),o=n.toFinite(o),l===void 0?(l=o,o=0):l=n.toFinite(l),s=s===void 0?ot?1:e>=t?0:NaN}function n7(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function D0(e){let t,n,r;e.length!==2?(t=mi,n=(f,d)=>mi(e(f),d),r=(f,d)=>e(f)-d):(t=e===mi||e===n7?e:r7,n=e,r=e);function o(f,d,p=0,v=f.length){if(p>>1;n(f[m],d)<0?p=m+1:v=m}while(p>>1;n(f[m],d)<=0?p=m+1:v=m}while(pp&&r(f[m-1],d)>-r(f[m],d)?m-1:m}return{left:o,center:s,right:l}}function r7(){return 0}function PN(e){return e===null?NaN:+e}function*a7(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const i7=D0(mi),Es=i7.right;D0(PN).center;class QA extends Map{constructor(t,n=u7){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,o]of t)this.set(r,o)}get(t){return super.get(JA(this,t))}has(t){return super.has(JA(this,t))}set(t,n){return super.set(o7(this,t),n)}delete(t){return super.delete(l7(this,t))}}function JA({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function o7({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function l7({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function u7(e){return e!==null&&typeof e=="object"?e.valueOf():e}function s7(e=mi){if(e===mi)return kN;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function kN(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const c7=Math.sqrt(50),f7=Math.sqrt(10),d7=Math.sqrt(2);function ld(e,t,n){const r=(t-e)/Math.max(0,n),o=Math.floor(Math.log10(r)),l=r/Math.pow(10,o),s=l>=c7?10:l>=f7?5:l>=d7?2:1;let f,d,p;return o<0?(p=Math.pow(10,-o)/s,f=Math.round(e*p),d=Math.round(t*p),f/pt&&--d,p=-p):(p=Math.pow(10,o)*s,f=Math.round(e/p),d=Math.round(t/p),f*pt&&--d),d0))return[];if(e===t)return[e];const r=t=o))return[];const f=l-o+1,d=new Array(f);if(r)if(s<0)for(let p=0;p=r)&&(n=r);return n}function t2(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function RN(e,t,n=0,r=1/0,o){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(o=o===void 0?kN:s7(o);r>n;){if(r-n>600){const d=r-n+1,p=t-n+1,v=Math.log(d),m=.5*Math.exp(2*v/3),b=.5*Math.sqrt(v*m*(d-m)/d)*(p-d/2<0?-1:1),x=Math.max(n,Math.floor(t-p*m/d+b)),O=Math.min(r,Math.floor(t+(d-p)*m/d+b));RN(e,t,x,O,o)}const l=e[t];let s=n,f=r;for(Hu(e,n,t),o(e[r],l)>0&&Hu(e,n,r);s0;)--f}o(e[n],l)===0?Hu(e,n,f):(++f,Hu(e,f,r)),f<=t&&(n=f+1),t<=f&&(r=f-1)}return e}function Hu(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function p7(e,t,n){if(e=Float64Array.from(a7(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return t2(e);if(t>=1)return e2(e);var r,o=(r-1)*t,l=Math.floor(o),s=e2(RN(e,l).subarray(0,l+1)),f=t2(e.subarray(l+1));return s+(f-s)*(o-l)}}function m7(e,t,n=PN){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,o=(r-1)*t,l=Math.floor(o),s=+n(e[l],l,e),f=+n(e[l+1],l+1,e);return s+(f-s)*(o-l)}}function v7(e,t,n){e=+e,t=+t,n=(o=arguments.length)<2?(t=e,e=0,1):o<3?1:+n;for(var r=-1,o=Math.max(0,Math.ceil((t-e)/n))|0,l=new Array(o);++r>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?pf(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?pf(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=g7.exec(e))?new Pn(t[1],t[2],t[3],1):(t=b7.exec(e))?new Pn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=x7.exec(e))?pf(t[1],t[2],t[3],t[4]):(t=w7.exec(e))?pf(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=S7.exec(e))?u2(t[1],t[2]/100,t[3]/100,1):(t=O7.exec(e))?u2(t[1],t[2]/100,t[3]/100,t[4]):n2.hasOwnProperty(e)?i2(n2[e]):e==="transparent"?new Pn(NaN,NaN,NaN,0):null}function i2(e){return new Pn(e>>16&255,e>>8&255,e&255,1)}function pf(e,t,n,r){return r<=0&&(e=t=n=NaN),new Pn(e,t,n,r)}function _7(e){return e instanceof As||(e=ss(e)),e?(e=e.rgb(),new Pn(e.r,e.g,e.b,e.opacity)):new Pn}function jg(e,t,n,r){return arguments.length===1?_7(e):new Pn(e,t,n,r??1)}function Pn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}R0(Pn,jg,IN(As,{brighter(e){return e=e==null?ud:Math.pow(ud,e),new Pn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ls:Math.pow(ls,e),new Pn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Pn(Ji(this.r),Ji(this.g),Ji(this.b),sd(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:o2,formatHex:o2,formatHex8:j7,formatRgb:l2,toString:l2}));function o2(){return`#${Fi(this.r)}${Fi(this.g)}${Fi(this.b)}`}function j7(){return`#${Fi(this.r)}${Fi(this.g)}${Fi(this.b)}${Fi((isNaN(this.opacity)?1:this.opacity)*255)}`}function l2(){const e=sd(this.opacity);return`${e===1?"rgb(":"rgba("}${Ji(this.r)}, ${Ji(this.g)}, ${Ji(this.b)}${e===1?")":`, ${e})`}`}function sd(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ji(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Fi(e){return e=Ji(e),(e<16?"0":"")+e.toString(16)}function u2(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new wr(e,t,n,r)}function LN(e){if(e instanceof wr)return new wr(e.h,e.s,e.l,e.opacity);if(e instanceof As||(e=ss(e)),!e)return new wr;if(e instanceof wr)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,o=Math.min(t,n,r),l=Math.max(t,n,r),s=NaN,f=l-o,d=(l+o)/2;return f?(t===l?s=(n-r)/f+(n0&&d<1?0:s,new wr(s,f,d,e.opacity)}function T7(e,t,n,r){return arguments.length===1?LN(e):new wr(e,t,n,r??1)}function wr(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}R0(wr,T7,IN(As,{brighter(e){return e=e==null?ud:Math.pow(ud,e),new wr(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ls:Math.pow(ls,e),new wr(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,o=2*n-r;return new Pn(yy(e>=240?e-240:e+120,o,r),yy(e,o,r),yy(e<120?e+240:e-120,o,r),this.opacity)},clamp(){return new wr(s2(this.h),mf(this.s),mf(this.l),sd(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=sd(this.opacity);return`${e===1?"hsl(":"hsla("}${s2(this.h)}, ${mf(this.s)*100}%, ${mf(this.l)*100}%${e===1?")":`, ${e})`}`}}));function s2(e){return e=(e||0)%360,e<0?e+360:e}function mf(e){return Math.max(0,Math.min(1,e||0))}function yy(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const z0=e=>()=>e;function C7(e,t){return function(n){return e+n*t}}function N7(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function M7(e){return(e=+e)==1?BN:function(t,n){return n-t?N7(t,n,e):z0(isNaN(t)?n:t)}}function BN(e,t){var n=t-e;return n?C7(e,n):z0(isNaN(e)?t:e)}const c2=(function e(t){var n=M7(t);function r(o,l){var s=n((o=jg(o)).r,(l=jg(l)).r),f=n(o.g,l.g),d=n(o.b,l.b),p=BN(o.opacity,l.opacity);return function(v){return o.r=s(v),o.g=f(v),o.b=d(v),o.opacity=p(v),o+""}}return r.gamma=e,r})(1);function D7(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),o;return function(l){for(o=0;on&&(l=t.slice(n,l),f[s]?f[s]+=l:f[++s]=l),(r=r[0])===(o=o[0])?f[s]?f[s]+=o:f[++s]=o:(f[++s]=null,d.push({i:s,x:cd(r,o)})),n=gy.lastIndex;return nt&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function H7(e,t,n){var r=e[0],o=e[1],l=t[0],s=t[1];return o2?K7:H7,d=p=null,m}function m(b){return b==null||isNaN(b=+b)?l:(d||(d=f(e.map(r),t,n)))(r(s(b)))}return m.invert=function(b){return s(o((p||(p=f(t,e.map(r),cd)))(b)))},m.domain=function(b){return arguments.length?(e=Array.from(b,fd),v()):e.slice()},m.range=function(b){return arguments.length?(t=Array.from(b),v()):t.slice()},m.rangeRound=function(b){return t=Array.from(b),n=I0,v()},m.clamp=function(b){return arguments.length?(s=b?!0:yn,v()):s!==yn},m.interpolate=function(b){return arguments.length?(n=b,v()):n},m.unknown=function(b){return arguments.length?(l=b,m):l},function(b,x){return r=b,o=x,v()}}function L0(){return cp()(yn,yn)}function Y7(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function dd(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function jl(e){return e=dd(Math.abs(e)),e?e[1]:NaN}function G7(e,t){return function(n,r){for(var o=n.length,l=[],s=0,f=e[0],d=0;o>0&&f>0&&(d+f+1>r&&(f=Math.max(1,r-d)),l.push(n.substring(o-=f,o+f)),!((d+=f+1)>r));)f=e[s=(s+1)%e.length];return l.reverse().join(t)}}function V7(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var F7=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function cs(e){if(!(t=F7.exec(e)))throw new Error("invalid format: "+e);var t;return new B0({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}cs.prototype=B0.prototype;function B0(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}B0.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function X7(e){e:for(var t=e.length,n=1,r=-1,o;n0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(o+1):e}var pd;function W7(e,t){var n=dd(e,t);if(!n)return pd=void 0,e.toPrecision(t);var r=n[0],o=n[1],l=o-(pd=Math.max(-8,Math.min(8,Math.floor(o/3)))*3)+1,s=r.length;return l===s?r:l>s?r+new Array(l-s+1).join("0"):l>0?r.slice(0,l)+"."+r.slice(l):"0."+new Array(1-l).join("0")+dd(e,Math.max(0,t+l-1))[0]}function d2(e,t){var n=dd(e,t);if(!n)return e+"";var r=n[0],o=n[1];return o<0?"0."+new Array(-o).join("0")+r:r.length>o+1?r.slice(0,o+1)+"."+r.slice(o+1):r+new Array(o-r.length+2).join("0")}const p2={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:Y7,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>d2(e*100,t),r:d2,s:W7,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function m2(e){return e}var v2=Array.prototype.map,h2=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Z7(e){var t=e.grouping===void 0||e.thousands===void 0?m2:G7(v2.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",o=e.decimal===void 0?".":e.decimal+"",l=e.numerals===void 0?m2:V7(v2.call(e.numerals,String)),s=e.percent===void 0?"%":e.percent+"",f=e.minus===void 0?"−":e.minus+"",d=e.nan===void 0?"NaN":e.nan+"";function p(m,b){m=cs(m);var x=m.fill,O=m.align,S=m.sign,w=m.symbol,A=m.zero,C=m.width,j=m.comma,N=m.precision,M=m.trim,D=m.type;D==="n"?(j=!0,D="g"):p2[D]||(N===void 0&&(N=12),M=!0,D="g"),(A||x==="0"&&O==="=")&&(A=!0,x="0",O="=");var P=(b&&b.prefix!==void 0?b.prefix:"")+(w==="$"?n:w==="#"&&/[boxX]/.test(D)?"0"+D.toLowerCase():""),I=(w==="$"?r:/[%p]/.test(D)?s:"")+(b&&b.suffix!==void 0?b.suffix:""),W=p2[D],ie=/[defgprs%]/.test(D);N=N===void 0?6:/[gprs]/.test(D)?Math.max(1,Math.min(21,N)):Math.max(0,Math.min(20,N));function F(U){var ue=P,ce=I,se,z,K;if(D==="c")ce=W(U)+ce,U="";else{U=+U;var ae=U<0||1/U<0;if(U=isNaN(U)?d:W(Math.abs(U),N),M&&(U=X7(U)),ae&&+U==0&&S!=="+"&&(ae=!1),ue=(ae?S==="("?S:f:S==="-"||S==="("?"":S)+ue,ce=(D==="s"&&!isNaN(U)&&pd!==void 0?h2[8+pd/3]:"")+ce+(ae&&S==="("?")":""),ie){for(se=-1,z=U.length;++seK||K>57){ce=(K===46?o+U.slice(se+1):U.slice(se))+ce,U=U.slice(0,se);break}}}j&&!A&&(U=t(U,1/0));var fe=ue.length+U.length+ce.length,ee=fe>1)+ue+U+ce+ee.slice(fe);break;default:U=ee+ue+U+ce;break}return l(U)}return F.toString=function(){return m+""},F}function v(m,b){var x=Math.max(-8,Math.min(8,Math.floor(jl(b)/3)))*3,O=Math.pow(10,-x),S=p((m=cs(m),m.type="f",m),{suffix:h2[8+x/3]});return function(w){return S(O*w)}}return{format:p,formatPrefix:v}}var vf,U0,UN;Q7({thousands:",",grouping:[3],currency:["$",""]});function Q7(e){return vf=Z7(e),U0=vf.format,UN=vf.formatPrefix,vf}function J7(e){return Math.max(0,-jl(Math.abs(e)))}function e$(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(jl(t)/3)))*3-jl(Math.abs(e)))}function t$(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,jl(t)-jl(e))+1}function $N(e,t,n,r){var o=Ag(e,t,n),l;switch(r=cs(r??",f"),r.type){case"s":{var s=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(l=e$(o,s))&&(r.precision=l),UN(r,s)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(l=t$(o,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=l-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(l=J7(o))&&(r.precision=l-(r.type==="%")*2);break}}return U0(r)}function gi(e){var t=e.domain;return e.ticks=function(n){var r=t();return Og(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var o=t();return $N(o[0],o[o.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),o=0,l=r.length-1,s=r[o],f=r[l],d,p,v=10;for(f0;){if(p=Eg(s,f,n),p===d)return r[o]=s,r[l]=f,t(r);if(p>0)s=Math.floor(s/p)*p,f=Math.ceil(f/p)*p;else if(p<0)s=Math.ceil(s*p)/p,f=Math.floor(f*p)/p;else break;d=p}return e},e}function qN(){var e=L0();return e.copy=function(){return _s(e,qN())},pr.apply(e,arguments),gi(e)}function HN(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,fd),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return HN(e).unknown(t)},e=arguments.length?Array.from(e,fd):[0,1],gi(n)}function KN(e,t){e=e.slice();var n=0,r=e.length-1,o=e[n],l=e[r],s;return lMath.pow(e,t)}function o$(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function b2(e){return(t,n)=>-e(-t,n)}function $0(e){const t=e(y2,g2),n=t.domain;let r=10,o,l;function s(){return o=o$(r),l=i$(r),n()[0]<0?(o=b2(o),l=b2(l),e(n$,r$)):e(y2,g2),t}return t.base=function(f){return arguments.length?(r=+f,s()):r},t.domain=function(f){return arguments.length?(n(f),s()):n()},t.ticks=f=>{const d=n();let p=d[0],v=d[d.length-1];const m=v0){for(;b<=x;++b)for(O=1;Ov)break;A.push(S)}}else for(;b<=x;++b)for(O=r-1;O>=1;--O)if(S=b>0?O/l(-b):O*l(b),!(Sv)break;A.push(S)}A.length*2{if(f==null&&(f=10),d==null&&(d=r===10?"s":","),typeof d!="function"&&(!(r%1)&&(d=cs(d)).precision==null&&(d.trim=!0),d=U0(d)),f===1/0)return d;const p=Math.max(1,r*f/t.ticks().length);return v=>{let m=v/l(Math.round(o(v)));return m*rn(KN(n(),{floor:f=>l(Math.floor(o(f))),ceil:f=>l(Math.ceil(o(f)))})),t}function YN(){const e=$0(cp()).domain([1,10]);return e.copy=()=>_s(e,YN()).base(e.base()),pr.apply(e,arguments),e}function x2(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function w2(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function q0(e){var t=1,n=e(x2(t),w2(t));return n.constant=function(r){return arguments.length?e(x2(t=+r),w2(t)):t},gi(n)}function GN(){var e=q0(cp());return e.copy=function(){return _s(e,GN()).constant(e.constant())},pr.apply(e,arguments)}function S2(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function l$(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function u$(e){return e<0?-e*e:e*e}function H0(e){var t=e(yn,yn),n=1;function r(){return n===1?e(yn,yn):n===.5?e(l$,u$):e(S2(n),S2(1/n))}return t.exponent=function(o){return arguments.length?(n=+o,r()):n},gi(t)}function K0(){var e=H0(cp());return e.copy=function(){return _s(e,K0()).exponent(e.exponent())},pr.apply(e,arguments),e}function s$(){return K0.apply(null,arguments).exponent(.5)}function O2(e){return Math.sign(e)*e*e}function c$(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function VN(){var e=L0(),t=[0,1],n=!1,r;function o(l){var s=c$(e(l));return isNaN(s)?r:n?Math.round(s):s}return o.invert=function(l){return e.invert(O2(l))},o.domain=function(l){return arguments.length?(e.domain(l),o):e.domain()},o.range=function(l){return arguments.length?(e.range((t=Array.from(l,fd)).map(O2)),o):t.slice()},o.rangeRound=function(l){return o.range(l).round(!0)},o.round=function(l){return arguments.length?(n=!!l,o):n},o.clamp=function(l){return arguments.length?(e.clamp(l),o):e.clamp()},o.unknown=function(l){return arguments.length?(r=l,o):r},o.copy=function(){return VN(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},pr.apply(o,arguments),gi(o)}function FN(){var e=[],t=[],n=[],r;function o(){var s=0,f=Math.max(1,t.length);for(n=new Array(f-1);++s0?n[f-1]:e[0],f=n?[r[n-1],t]:[r[p-1],r[p]]},s.unknown=function(d){return arguments.length&&(l=d),s},s.thresholds=function(){return r.slice()},s.copy=function(){return XN().domain([e,t]).range(o).unknown(l)},pr.apply(gi(s),arguments)}function WN(){var e=[.5],t=[0,1],n,r=1;function o(l){return l!=null&&l<=l?t[Es(e,l,0,r)]:n}return o.domain=function(l){return arguments.length?(e=Array.from(l),r=Math.min(e.length,t.length-1),o):e.slice()},o.range=function(l){return arguments.length?(t=Array.from(l),r=Math.min(e.length,t.length-1),o):t.slice()},o.invertExtent=function(l){var s=t.indexOf(l);return[e[s-1],e[s]]},o.unknown=function(l){return arguments.length?(n=l,o):n},o.copy=function(){return WN().domain(e).range(t).unknown(n)},pr.apply(o,arguments)}const by=new Date,xy=new Date;function Pt(e,t,n,r){function o(l){return e(l=arguments.length===0?new Date:new Date(+l)),l}return o.floor=l=>(e(l=new Date(+l)),l),o.ceil=l=>(e(l=new Date(l-1)),t(l,1),e(l),l),o.round=l=>{const s=o(l),f=o.ceil(l);return l-s(t(l=new Date(+l),s==null?1:Math.floor(s)),l),o.range=(l,s,f)=>{const d=[];if(l=o.ceil(l),f=f==null?1:Math.floor(f),!(l0))return d;let p;do d.push(p=new Date(+l)),t(l,f),e(l);while(pPt(s=>{if(s>=s)for(;e(s),!l(s);)s.setTime(s-1)},(s,f)=>{if(s>=s)if(f<0)for(;++f<=0;)for(;t(s,-1),!l(s););else for(;--f>=0;)for(;t(s,1),!l(s););}),n&&(o.count=(l,s)=>(by.setTime(+l),xy.setTime(+s),e(by),e(xy),Math.floor(n(by,xy))),o.every=l=>(l=Math.floor(l),!isFinite(l)||!(l>0)?null:l>1?o.filter(r?s=>r(s)%l===0:s=>o.count(0,s)%l===0):o)),o}const md=Pt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);md.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Pt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):md);md.range;const ha=1e3,ur=ha*60,ya=ur*60,wa=ya*24,Y0=wa*7,E2=wa*30,wy=wa*365,Xi=Pt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*ha)},(e,t)=>(t-e)/ha,e=>e.getUTCSeconds());Xi.range;const G0=Pt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ha)},(e,t)=>{e.setTime(+e+t*ur)},(e,t)=>(t-e)/ur,e=>e.getMinutes());G0.range;const V0=Pt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*ur)},(e,t)=>(t-e)/ur,e=>e.getUTCMinutes());V0.range;const F0=Pt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*ha-e.getMinutes()*ur)},(e,t)=>{e.setTime(+e+t*ya)},(e,t)=>(t-e)/ya,e=>e.getHours());F0.range;const X0=Pt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ya)},(e,t)=>(t-e)/ya,e=>e.getUTCHours());X0.range;const js=Pt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*ur)/wa,e=>e.getDate()-1);js.range;const fp=Pt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/wa,e=>e.getUTCDate()-1);fp.range;const ZN=Pt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/wa,e=>Math.floor(e/wa));ZN.range;function ho(e){return Pt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*ur)/Y0)}const dp=ho(0),vd=ho(1),f$=ho(2),d$=ho(3),Tl=ho(4),p$=ho(5),m$=ho(6);dp.range;vd.range;f$.range;d$.range;Tl.range;p$.range;m$.range;function yo(e){return Pt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/Y0)}const pp=yo(0),hd=yo(1),v$=yo(2),h$=yo(3),Cl=yo(4),y$=yo(5),g$=yo(6);pp.range;hd.range;v$.range;h$.range;Cl.range;y$.range;g$.range;const W0=Pt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());W0.range;const Z0=Pt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());Z0.range;const Sa=Pt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Sa.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Pt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Sa.range;const Oa=Pt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());Oa.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Pt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});Oa.range;function QN(e,t,n,r,o,l){const s=[[Xi,1,ha],[Xi,5,5*ha],[Xi,15,15*ha],[Xi,30,30*ha],[l,1,ur],[l,5,5*ur],[l,15,15*ur],[l,30,30*ur],[o,1,ya],[o,3,3*ya],[o,6,6*ya],[o,12,12*ya],[r,1,wa],[r,2,2*wa],[n,1,Y0],[t,1,E2],[t,3,3*E2],[e,1,wy]];function f(p,v,m){const b=vw).right(s,b);if(x===s.length)return e.every(Ag(p/wy,v/wy,m));if(x===0)return md.every(Math.max(Ag(p,v,m),1));const[O,S]=s[b/s[x-1][2]53)return null;"w"in ne||(ne.w=1),"Z"in ne?(Te=Oy(Ku(ne.y,0,1)),jt=Te.getUTCDay(),Te=jt>4||jt===0?hd.ceil(Te):hd(Te),Te=fp.offset(Te,(ne.V-1)*7),ne.y=Te.getUTCFullYear(),ne.m=Te.getUTCMonth(),ne.d=Te.getUTCDate()+(ne.w+6)%7):(Te=Sy(Ku(ne.y,0,1)),jt=Te.getDay(),Te=jt>4||jt===0?vd.ceil(Te):vd(Te),Te=js.offset(Te,(ne.V-1)*7),ne.y=Te.getFullYear(),ne.m=Te.getMonth(),ne.d=Te.getDate()+(ne.w+6)%7)}else("W"in ne||"U"in ne)&&("w"in ne||(ne.w="u"in ne?ne.u%7:"W"in ne?1:0),jt="Z"in ne?Oy(Ku(ne.y,0,1)).getUTCDay():Sy(Ku(ne.y,0,1)).getDay(),ne.m=0,ne.d="W"in ne?(ne.w+6)%7+ne.W*7-(jt+5)%7:ne.w+ne.U*7-(jt+6)%7);return"Z"in ne?(ne.H+=ne.Z/100|0,ne.M+=ne.Z%100,Oy(ne)):Sy(ne)}}function I(Y,Oe,Ae,ne){for(var dt=0,Te=Oe.length,jt=Ae.length,xt,fn;dt=jt)return-1;if(xt=Oe.charCodeAt(dt++),xt===37){if(xt=Oe.charAt(dt++),fn=M[xt in A2?Oe.charAt(dt++):xt],!fn||(ne=fn(Y,Ae,ne))<0)return-1}else if(xt!=Ae.charCodeAt(ne++))return-1}return ne}function W(Y,Oe,Ae){var ne=p.exec(Oe.slice(Ae));return ne?(Y.p=v.get(ne[0].toLowerCase()),Ae+ne[0].length):-1}function ie(Y,Oe,Ae){var ne=x.exec(Oe.slice(Ae));return ne?(Y.w=O.get(ne[0].toLowerCase()),Ae+ne[0].length):-1}function F(Y,Oe,Ae){var ne=m.exec(Oe.slice(Ae));return ne?(Y.w=b.get(ne[0].toLowerCase()),Ae+ne[0].length):-1}function U(Y,Oe,Ae){var ne=A.exec(Oe.slice(Ae));return ne?(Y.m=C.get(ne[0].toLowerCase()),Ae+ne[0].length):-1}function ue(Y,Oe,Ae){var ne=S.exec(Oe.slice(Ae));return ne?(Y.m=w.get(ne[0].toLowerCase()),Ae+ne[0].length):-1}function ce(Y,Oe,Ae){return I(Y,t,Oe,Ae)}function se(Y,Oe,Ae){return I(Y,n,Oe,Ae)}function z(Y,Oe,Ae){return I(Y,r,Oe,Ae)}function K(Y){return s[Y.getDay()]}function ae(Y){return l[Y.getDay()]}function fe(Y){return d[Y.getMonth()]}function ee(Y){return f[Y.getMonth()]}function R(Y){return o[+(Y.getHours()>=12)]}function X(Y){return 1+~~(Y.getMonth()/3)}function Q(Y){return s[Y.getUTCDay()]}function re(Y){return l[Y.getUTCDay()]}function le(Y){return d[Y.getUTCMonth()]}function de(Y){return f[Y.getUTCMonth()]}function be(Y){return o[+(Y.getUTCHours()>=12)]}function Ee(Y){return 1+~~(Y.getUTCMonth()/3)}return{format:function(Y){var Oe=D(Y+="",j);return Oe.toString=function(){return Y},Oe},parse:function(Y){var Oe=P(Y+="",!1);return Oe.toString=function(){return Y},Oe},utcFormat:function(Y){var Oe=D(Y+="",N);return Oe.toString=function(){return Y},Oe},utcParse:function(Y){var Oe=P(Y+="",!0);return Oe.toString=function(){return Y},Oe}}}var A2={"-":"",_:" ",0:"0"},Ht=/^\s*\d+/,E$=/^%/,A$=/[\\^$*+?|[\]().{}]/g;function Ue(e,t,n){var r=e<0?"-":"",o=(r?-e:e)+"",l=o.length;return r+(l[t.toLowerCase(),n]))}function j$(e,t,n){var r=Ht.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function T$(e,t,n){var r=Ht.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function C$(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function N$(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function M$(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function _2(e,t,n){var r=Ht.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function j2(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function D$(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function P$(e,t,n){var r=Ht.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function k$(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function T2(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function R$(e,t,n){var r=Ht.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function C2(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function z$(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function I$(e,t,n){var r=Ht.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function L$(e,t,n){var r=Ht.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function B$(e,t,n){var r=Ht.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function U$(e,t,n){var r=E$.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function $$(e,t,n){var r=Ht.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function q$(e,t,n){var r=Ht.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function N2(e,t){return Ue(e.getDate(),t,2)}function H$(e,t){return Ue(e.getHours(),t,2)}function K$(e,t){return Ue(e.getHours()%12||12,t,2)}function Y$(e,t){return Ue(1+js.count(Sa(e),e),t,3)}function JN(e,t){return Ue(e.getMilliseconds(),t,3)}function G$(e,t){return JN(e,t)+"000"}function V$(e,t){return Ue(e.getMonth()+1,t,2)}function F$(e,t){return Ue(e.getMinutes(),t,2)}function X$(e,t){return Ue(e.getSeconds(),t,2)}function W$(e){var t=e.getDay();return t===0?7:t}function Z$(e,t){return Ue(dp.count(Sa(e)-1,e),t,2)}function eM(e){var t=e.getDay();return t>=4||t===0?Tl(e):Tl.ceil(e)}function Q$(e,t){return e=eM(e),Ue(Tl.count(Sa(e),e)+(Sa(e).getDay()===4),t,2)}function J$(e){return e.getDay()}function eq(e,t){return Ue(vd.count(Sa(e)-1,e),t,2)}function tq(e,t){return Ue(e.getFullYear()%100,t,2)}function nq(e,t){return e=eM(e),Ue(e.getFullYear()%100,t,2)}function rq(e,t){return Ue(e.getFullYear()%1e4,t,4)}function aq(e,t){var n=e.getDay();return e=n>=4||n===0?Tl(e):Tl.ceil(e),Ue(e.getFullYear()%1e4,t,4)}function iq(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Ue(t/60|0,"0",2)+Ue(t%60,"0",2)}function M2(e,t){return Ue(e.getUTCDate(),t,2)}function oq(e,t){return Ue(e.getUTCHours(),t,2)}function lq(e,t){return Ue(e.getUTCHours()%12||12,t,2)}function uq(e,t){return Ue(1+fp.count(Oa(e),e),t,3)}function tM(e,t){return Ue(e.getUTCMilliseconds(),t,3)}function sq(e,t){return tM(e,t)+"000"}function cq(e,t){return Ue(e.getUTCMonth()+1,t,2)}function fq(e,t){return Ue(e.getUTCMinutes(),t,2)}function dq(e,t){return Ue(e.getUTCSeconds(),t,2)}function pq(e){var t=e.getUTCDay();return t===0?7:t}function mq(e,t){return Ue(pp.count(Oa(e)-1,e),t,2)}function nM(e){var t=e.getUTCDay();return t>=4||t===0?Cl(e):Cl.ceil(e)}function vq(e,t){return e=nM(e),Ue(Cl.count(Oa(e),e)+(Oa(e).getUTCDay()===4),t,2)}function hq(e){return e.getUTCDay()}function yq(e,t){return Ue(hd.count(Oa(e)-1,e),t,2)}function gq(e,t){return Ue(e.getUTCFullYear()%100,t,2)}function bq(e,t){return e=nM(e),Ue(e.getUTCFullYear()%100,t,2)}function xq(e,t){return Ue(e.getUTCFullYear()%1e4,t,4)}function wq(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Cl(e):Cl.ceil(e),Ue(e.getUTCFullYear()%1e4,t,4)}function Sq(){return"+0000"}function D2(){return"%"}function P2(e){return+e}function k2(e){return Math.floor(+e/1e3)}var sl,rM,aM;Oq({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function Oq(e){return sl=O$(e),rM=sl.format,sl.parse,aM=sl.utcFormat,sl.utcParse,sl}function Eq(e){return new Date(e)}function Aq(e){return e instanceof Date?+e:+new Date(+e)}function Q0(e,t,n,r,o,l,s,f,d,p){var v=L0(),m=v.invert,b=v.domain,x=p(".%L"),O=p(":%S"),S=p("%I:%M"),w=p("%I %p"),A=p("%a %d"),C=p("%b %d"),j=p("%B"),N=p("%Y");function M(D){return(d(D)t(o/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(o,l)=>p7(e,l/r))},n.copy=function(){return uM(t).domain(e)},Ta.apply(n,arguments)}function vp(){var e=0,t=.5,n=1,r=1,o,l,s,f,d,p=yn,v,m=!1,b;function x(S){return isNaN(S=+S)?b:(S=.5+((S=+v(S))-l)*(r*Se.chartData,dM=G([Ca],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),tb=(e,t,n,r)=>r?dM(e):Ca(e),Nq=(e,t,n)=>n?dM(e):Ca(e);function Ea(e){if(Array.isArray(e)&&e.length===2){var[t,n]=e;if(ze(t)&&ze(n))return!0}return!1}function R2(e,t,n){return n?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function pM(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[n,r]=e,o,l;if(ze(n))o=n;else if(typeof n=="function")return;if(ze(r))l=r;else if(typeof r=="function")return;var s=[o,l];if(Ea(s))return s}}function Mq(e,t,n){if(!(!n&&t==null)){if(typeof e=="function"&&t!=null)try{var r=e(t,n);if(Ea(r))return R2(r,t,n)}catch{}if(Array.isArray(e)&&e.length===2){var[o,l]=e,s,f;if(o==="auto")t!=null&&(s=Math.min(...t));else if(ye(o))s=o;else if(typeof o=="function")try{t!=null&&(s=o(t?.[0]))}catch{}else if(typeof o=="string"&&GE.test(o)){var d=GE.exec(o);if(d==null||d[1]==null||t==null)s=void 0;else{var p=+d[1];s=t[0]-p}}else s=t?.[0];if(l==="auto")t!=null&&(f=Math.max(...t));else if(ye(l))f=l;else if(typeof l=="function")try{t!=null&&(f=l(t?.[1]))}catch{}else if(typeof l=="string"&&VE.test(l)){var v=VE.exec(l);if(v==null||v[1]==null||t==null)f=void 0;else{var m=+v[1];f=t[1]+m}}else f=t?.[1];var b=[s,f];if(Ea(b))return t==null?b:R2(b,t,n)}}}var Rl=1e9,Dq={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},rb,ft=!0,dr="[DecimalError] ",eo=dr+"Invalid argument: ",nb=dr+"Exponent out of range: ",zl=Math.floor,Gi=Math.pow,Pq=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Hn,Ut=1e7,it=7,mM=9007199254740991,yd=zl(mM/it),pe={};pe.absoluteValue=pe.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};pe.comparedTo=pe.cmp=function(e){var t,n,r,o,l=this;if(e=new l.constructor(e),l.s!==e.s)return l.s||-e.s;if(l.e!==e.e)return l.e>e.e^l.s<0?1:-1;for(r=l.d.length,o=e.d.length,t=0,n=re.d[t]^l.s<0?1:-1;return r===o?0:r>o^l.s<0?1:-1};pe.decimalPlaces=pe.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*it;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};pe.dividedBy=pe.div=function(e){return ga(this,new this.constructor(e))};pe.dividedToIntegerBy=pe.idiv=function(e){var t=this,n=t.constructor;return et(ga(t,new n(e),0,1),n.precision)};pe.equals=pe.eq=function(e){return!this.cmp(e)};pe.exponent=function(){return _t(this)};pe.greaterThan=pe.gt=function(e){return this.cmp(e)>0};pe.greaterThanOrEqualTo=pe.gte=function(e){return this.cmp(e)>=0};pe.isInteger=pe.isint=function(){return this.e>this.d.length-2};pe.isNegative=pe.isneg=function(){return this.s<0};pe.isPositive=pe.ispos=function(){return this.s>0};pe.isZero=function(){return this.s===0};pe.lessThan=pe.lt=function(e){return this.cmp(e)<0};pe.lessThanOrEqualTo=pe.lte=function(e){return this.cmp(e)<1};pe.logarithm=pe.log=function(e){var t,n=this,r=n.constructor,o=r.precision,l=o+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Hn))throw Error(dr+"NaN");if(n.s<1)throw Error(dr+(n.s?"NaN":"-Infinity"));return n.eq(Hn)?new r(0):(ft=!1,t=ga(fs(n,l),fs(e,l),l),ft=!0,et(t,o))};pe.minus=pe.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?yM(t,e):vM(t,(e.s=-e.s,e))};pe.modulo=pe.mod=function(e){var t,n=this,r=n.constructor,o=r.precision;if(e=new r(e),!e.s)throw Error(dr+"NaN");return n.s?(ft=!1,t=ga(n,e,0,1).times(e),ft=!0,n.minus(t)):et(new r(n),o)};pe.naturalExponential=pe.exp=function(){return hM(this)};pe.naturalLogarithm=pe.ln=function(){return fs(this)};pe.negated=pe.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};pe.plus=pe.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?vM(t,e):yM(t,(e.s=-e.s,e))};pe.precision=pe.sd=function(e){var t,n,r,o=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(eo+e);if(t=_t(o)+1,r=o.d.length-1,n=r*it+1,r=o.d[r],r){for(;r%10==0;r/=10)n--;for(r=o.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};pe.squareRoot=pe.sqrt=function(){var e,t,n,r,o,l,s,f=this,d=f.constructor;if(f.s<1){if(!f.s)return new d(0);throw Error(dr+"NaN")}for(e=_t(f),ft=!1,o=Math.sqrt(+f),o==0||o==1/0?(t=$r(f.d),(t.length+e)%2==0&&(t+="0"),o=Math.sqrt(t),e=zl((e+1)/2)-(e<0||e%2),o==1/0?t="5e"+e:(t=o.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new d(t)):r=new d(o.toString()),n=d.precision,o=s=n+3;;)if(l=r,r=l.plus(ga(f,l,s+2)).times(.5),$r(l.d).slice(0,s)===(t=$r(r.d)).slice(0,s)){if(t=t.slice(s-3,s+1),o==s&&t=="4999"){if(et(l,n+1,0),l.times(l).eq(f)){r=l;break}}else if(t!="9999")break;s+=4}return ft=!0,et(r,n)};pe.times=pe.mul=function(e){var t,n,r,o,l,s,f,d,p,v=this,m=v.constructor,b=v.d,x=(e=new m(e)).d;if(!v.s||!e.s)return new m(0);for(e.s*=v.s,n=v.e+e.e,d=b.length,p=x.length,d=0;){for(t=0,o=d+r;o>r;)f=l[o]+x[r]*b[o-r-1]+t,l[o--]=f%Ut|0,t=f/Ut|0;l[o]=(l[o]+t)%Ut|0}for(;!l[--s];)l.pop();return t?++n:l.shift(),e.d=l,e.e=n,ft?et(e,m.precision):e};pe.toDecimalPlaces=pe.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Gr(e,0,Rl),t===void 0?t=r.rounding:Gr(t,0,8),et(n,e+_t(n)+1,t))};pe.toExponential=function(e,t){var n,r=this,o=r.constructor;return e===void 0?n=so(r,!0):(Gr(e,0,Rl),t===void 0?t=o.rounding:Gr(t,0,8),r=et(new o(r),e+1,t),n=so(r,!0,e+1)),n};pe.toFixed=function(e,t){var n,r,o=this,l=o.constructor;return e===void 0?so(o):(Gr(e,0,Rl),t===void 0?t=l.rounding:Gr(t,0,8),r=et(new l(o),e+_t(o)+1,t),n=so(r.abs(),!1,e+_t(r)+1),o.isneg()&&!o.isZero()?"-"+n:n)};pe.toInteger=pe.toint=function(){var e=this,t=e.constructor;return et(new t(e),_t(e)+1,t.rounding)};pe.toNumber=function(){return+this};pe.toPower=pe.pow=function(e){var t,n,r,o,l,s,f=this,d=f.constructor,p=12,v=+(e=new d(e));if(!e.s)return new d(Hn);if(f=new d(f),!f.s){if(e.s<1)throw Error(dr+"Infinity");return f}if(f.eq(Hn))return f;if(r=d.precision,e.eq(Hn))return et(f,r);if(t=e.e,n=e.d.length-1,s=t>=n,l=f.s,s){if((n=v<0?-v:v)<=mM){for(o=new d(Hn),t=Math.ceil(r/it+4),ft=!1;n%2&&(o=o.times(f),I2(o.d,t)),n=zl(n/2),n!==0;)f=f.times(f),I2(f.d,t);return ft=!0,e.s<0?new d(Hn).div(o):et(o,r)}}else if(l<0)throw Error(dr+"NaN");return l=l<0&&e.d[Math.max(t,n)]&1?-1:1,f.s=1,ft=!1,o=e.times(fs(f,r+p)),ft=!0,o=hM(o),o.s=l,o};pe.toPrecision=function(e,t){var n,r,o=this,l=o.constructor;return e===void 0?(n=_t(o),r=so(o,n<=l.toExpNeg||n>=l.toExpPos)):(Gr(e,1,Rl),t===void 0?t=l.rounding:Gr(t,0,8),o=et(new l(o),e,t),n=_t(o),r=so(o,e<=n||n<=l.toExpNeg,e)),r};pe.toSignificantDigits=pe.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Gr(e,1,Rl),t===void 0?t=r.rounding:Gr(t,0,8)),et(new r(n),e,t)};pe.toString=pe.valueOf=pe.val=pe.toJSON=pe[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=_t(e),n=e.constructor;return so(e,t<=n.toExpNeg||t>=n.toExpPos)};function vM(e,t){var n,r,o,l,s,f,d,p,v=e.constructor,m=v.precision;if(!e.s||!t.s)return t.s||(t=new v(e)),ft?et(t,m):t;if(d=e.d,p=t.d,s=e.e,o=t.e,d=d.slice(),l=s-o,l){for(l<0?(r=d,l=-l,f=p.length):(r=p,o=s,f=d.length),s=Math.ceil(m/it),f=s>f?s+1:f+1,l>f&&(l=f,r.length=1),r.reverse();l--;)r.push(0);r.reverse()}for(f=d.length,l=p.length,f-l<0&&(l=f,r=p,p=d,d=r),n=0;l;)n=(d[--l]=d[l]+p[l]+n)/Ut|0,d[l]%=Ut;for(n&&(d.unshift(n),++o),f=d.length;d[--f]==0;)d.pop();return t.d=d,t.e=o,ft?et(t,m):t}function Gr(e,t,n){if(e!==~~e||en)throw Error(eo+e)}function $r(e){var t,n,r,o=e.length-1,l="",s=e[0];if(o>0){for(l+=s,t=1;ts?1:-1;else for(f=d=0;fo[f]?1:-1;break}return d}function n(r,o,l){for(var s=0;l--;)r[l]-=s,s=r[l]1;)r.shift()}return function(r,o,l,s){var f,d,p,v,m,b,x,O,S,w,A,C,j,N,M,D,P,I,W=r.constructor,ie=r.s==o.s?1:-1,F=r.d,U=o.d;if(!r.s)return new W(r);if(!o.s)throw Error(dr+"Division by zero");for(d=r.e-o.e,P=U.length,M=F.length,x=new W(ie),O=x.d=[],p=0;U[p]==(F[p]||0);)++p;if(U[p]>(F[p]||0)&&--d,l==null?C=l=W.precision:s?C=l+(_t(r)-_t(o))+1:C=l,C<0)return new W(0);if(C=C/it+2|0,p=0,P==1)for(v=0,U=U[0],C++;(p1&&(U=e(U,v),F=e(F,v),P=U.length,M=F.length),N=P,S=F.slice(0,P),w=S.length;w=Ut/2&&++D;do v=0,f=t(U,S,P,w),f<0?(A=S[0],P!=w&&(A=A*Ut+(S[1]||0)),v=A/D|0,v>1?(v>=Ut&&(v=Ut-1),m=e(U,v),b=m.length,w=S.length,f=t(m,S,b,w),f==1&&(v--,n(m,P16)throw Error(nb+_t(e));if(!e.s)return new v(Hn);for(ft=!1,f=m,s=new v(.03125);e.abs().gte(.1);)e=e.times(s),p+=5;for(r=Math.log(Gi(2,p))/Math.LN10*2+5|0,f+=r,n=o=l=new v(Hn),v.precision=f;;){if(o=et(o.times(e),f),n=n.times(++d),s=l.plus(ga(o,n,f)),$r(s.d).slice(0,f)===$r(l.d).slice(0,f)){for(;p--;)l=et(l.times(l),f);return v.precision=m,t==null?(ft=!0,et(l,m)):l}l=s}}function _t(e){for(var t=e.e*it,n=e.d[0];n>=10;n/=10)t++;return t}function Ey(e,t,n){if(t>e.LN10.sd())throw ft=!0,n&&(e.precision=n),Error(dr+"LN10 precision limit exceeded");return et(new e(e.LN10),t)}function ci(e){for(var t="";e--;)t+="0";return t}function fs(e,t){var n,r,o,l,s,f,d,p,v,m=1,b=10,x=e,O=x.d,S=x.constructor,w=S.precision;if(x.s<1)throw Error(dr+(x.s?"NaN":"-Infinity"));if(x.eq(Hn))return new S(0);if(t==null?(ft=!1,p=w):p=t,x.eq(10))return t==null&&(ft=!0),Ey(S,p);if(p+=b,S.precision=p,n=$r(O),r=n.charAt(0),l=_t(x),Math.abs(l)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)x=x.times(e),n=$r(x.d),r=n.charAt(0),m++;l=_t(x),r>1?(x=new S("0."+n),l++):x=new S(r+"."+n.slice(1))}else return d=Ey(S,p+2,w).times(l+""),x=fs(new S(r+"."+n.slice(1)),p-b).plus(d),S.precision=w,t==null?(ft=!0,et(x,w)):x;for(f=s=x=ga(x.minus(Hn),x.plus(Hn),p),v=et(x.times(x),p),o=3;;){if(s=et(s.times(v),p),d=f.plus(ga(s,new S(o),p)),$r(d.d).slice(0,p)===$r(f.d).slice(0,p))return f=f.times(2),l!==0&&(f=f.plus(Ey(S,p+2,w).times(l+""))),f=ga(f,new S(m),p),S.precision=w,t==null?(ft=!0,et(f,w)):f;f=d,o+=2}}function z2(e,t){var n,r,o;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(o=t.length;t.charCodeAt(o-1)===48;)--o;if(t=t.slice(r,o),t){if(o-=r,n=n-r-1,e.e=zl(n/it),e.d=[],r=(n+1)%it,n<0&&(r+=it),ryd||e.e<-yd))throw Error(nb+n)}else e.s=0,e.e=0,e.d=[0];return e}function et(e,t,n){var r,o,l,s,f,d,p,v,m=e.d;for(s=1,l=m[0];l>=10;l/=10)s++;if(r=t-s,r<0)r+=it,o=t,p=m[v=0];else{if(v=Math.ceil((r+1)/it),l=m.length,v>=l)return e;for(p=l=m[v],s=1;l>=10;l/=10)s++;r%=it,o=r-it+s}if(n!==void 0&&(l=Gi(10,s-o-1),f=p/l%10|0,d=t<0||m[v+1]!==void 0||p%l,d=n<4?(f||d)&&(n==0||n==(e.s<0?3:2)):f>5||f==5&&(n==4||d||n==6&&(r>0?o>0?p/Gi(10,s-o):0:m[v-1])%10&1||n==(e.s<0?8:7))),t<1||!m[0])return d?(l=_t(e),m.length=1,t=t-l-1,m[0]=Gi(10,(it-t%it)%it),e.e=zl(-t/it)||0):(m.length=1,m[0]=e.e=e.s=0),e;if(r==0?(m.length=v,l=1,v--):(m.length=v+1,l=Gi(10,it-r),m[v]=o>0?(p/Gi(10,s-o)%Gi(10,o)|0)*l:0),d)for(;;)if(v==0){(m[0]+=l)==Ut&&(m[0]=1,++e.e);break}else{if(m[v]+=l,m[v]!=Ut)break;m[v--]=0,l=1}for(r=m.length;m[--r]===0;)m.pop();if(ft&&(e.e>yd||e.e<-yd))throw Error(nb+_t(e));return e}function yM(e,t){var n,r,o,l,s,f,d,p,v,m,b=e.constructor,x=b.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new b(e),ft?et(t,x):t;if(d=e.d,m=t.d,r=t.e,p=e.e,d=d.slice(),s=p-r,s){for(v=s<0,v?(n=d,s=-s,f=m.length):(n=m,r=p,f=d.length),o=Math.max(Math.ceil(x/it),f)+2,s>o&&(s=o,n.length=1),n.reverse(),o=s;o--;)n.push(0);n.reverse()}else{for(o=d.length,f=m.length,v=o0;--o)d[f++]=0;for(o=m.length;o>s;){if(d[--o]0?l=l.charAt(0)+"."+l.slice(1)+ci(r):s>1&&(l=l.charAt(0)+"."+l.slice(1)),l=l+(o<0?"e":"e+")+o):o<0?(l="0."+ci(-o-1)+l,n&&(r=n-s)>0&&(l+=ci(r))):o>=s?(l+=ci(o+1-s),n&&(r=n-o-1)>0&&(l=l+"."+ci(r))):((r=o+1)0&&(o+1===s&&(l+="."),l+=ci(r))),e.s<0?"-"+l:l}function I2(e,t){if(e.length>t)return e.length=t,!0}function gM(e){var t,n,r;function o(l){var s=this;if(!(s instanceof o))return new o(l);if(s.constructor=o,l instanceof o){s.s=l.s,s.e=l.e,s.d=(l=l.d)?l.slice():l;return}if(typeof l=="number"){if(l*0!==0)throw Error(eo+l);if(l>0)s.s=1;else if(l<0)l=-l,s.s=-1;else{s.s=0,s.e=0,s.d=[0];return}if(l===~~l&&l<1e7){s.e=0,s.d=[l];return}return z2(s,l.toString())}else if(typeof l!="string")throw Error(eo+l);if(l.charCodeAt(0)===45?(l=l.slice(1),s.s=-1):s.s=1,Pq.test(l))z2(s,l);else throw Error(eo+l)}if(o.prototype=pe,o.ROUND_UP=0,o.ROUND_DOWN=1,o.ROUND_CEIL=2,o.ROUND_FLOOR=3,o.ROUND_HALF_UP=4,o.ROUND_HALF_DOWN=5,o.ROUND_HALF_EVEN=6,o.ROUND_HALF_CEIL=7,o.ROUND_HALF_FLOOR=8,o.clone=gM,o.config=o.set=kq,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=o[t+1]&&r<=o[t+2])this[n]=r;else throw Error(eo+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(eo+n+": "+r);return this}var rb=gM(Dq);Hn=new rb(1);const Ge=rb;function bM(e){var t;return e===0?t=1:t=Math.floor(new Ge(e).abs().log(10).toNumber())+1,t}function xM(e,t,n){for(var r=new Ge(e),o=0,l=[];r.lt(t)&&o<1e5;)l.push(r.toNumber()),r=r.add(n),o++;return l}var wM=e=>{var[t,n]=e,[r,o]=[t,n];return t>n&&([r,o]=[n,t]),[r,o]},SM=(e,t,n)=>{if(e.lte(0))return new Ge(0);var r=bM(e.toNumber()),o=new Ge(10).pow(r),l=e.div(o),s=r!==1?.05:.1,f=new Ge(Math.ceil(l.div(s).toNumber())).add(n).mul(s),d=f.mul(o);return t?new Ge(d.toNumber()):new Ge(Math.ceil(d.toNumber()))},Rq=(e,t,n)=>{var r=new Ge(1),o=new Ge(e);if(!o.isint()&&n){var l=Math.abs(e);l<1?(r=new Ge(10).pow(bM(e)-1),o=new Ge(Math.floor(o.div(r).toNumber())).mul(r)):l>1&&(o=new Ge(Math.floor(e)))}else e===0?o=new Ge(Math.floor((t-1)/2)):n||(o=new Ge(Math.floor(e)));for(var s=Math.floor((t-1)/2),f=[],d=0;d4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((n-t)/(r-1)))return{step:new Ge(0),tickMin:new Ge(0),tickMax:new Ge(0)};var s=SM(new Ge(n).sub(t).div(r-1),o,l),f;t<=0&&n>=0?f=new Ge(0):(f=new Ge(t).add(n).div(2),f=f.sub(new Ge(f).mod(s)));var d=Math.ceil(f.sub(t).div(s).toNumber()),p=Math.ceil(new Ge(n).sub(f).div(s).toNumber()),v=d+p+1;return v>r?OM(t,n,r,o,l+1):(v0?p+(r-v):p,d=n>0?d:d+(r-v)),{step:s,tickMin:f.sub(new Ge(d).mul(s)),tickMax:f.add(new Ge(p).mul(s))})},zq=function(t){var[n,r]=t,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=Math.max(o,2),[f,d]=wM([n,r]);if(f===-1/0||d===1/0){var p=d===1/0?[f,...Array(o-1).fill(1/0)]:[...Array(o-1).fill(-1/0),d];return n>r?p.reverse():p}if(f===d)return Rq(f,o,l);var{step:v,tickMin:m,tickMax:b}=OM(f,d,s,l,0),x=xM(m,b.add(new Ge(.1).mul(v)),v);return n>r?x.reverse():x},Iq=function(t,n){var[r,o]=t,l=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,[s,f]=wM([r,o]);if(s===-1/0||f===1/0)return[r,o];if(s===f)return[s];var d=Math.max(n,2),p=SM(new Ge(f).sub(s).div(d-1),l,0),v=[...xM(new Ge(s),new Ge(f),p),f];return l===!1&&(v=v.map(m=>Math.round(m))),r>o?v.reverse():v},Lq=e=>e.rootProps.barCategoryGap,hp=e=>e.rootProps.stackOffset,EM=e=>e.rootProps.reverseStackOrder,ab=e=>e.options.chartName,ib=e=>e.rootProps.syncId,AM=e=>e.rootProps.syncMethod,ob=e=>e.options.eventEmitter,Bq=e=>e.rootProps.baseValue,ln={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},Hi={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Rr={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},yp=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function gp(e,t,n){if(n!=="auto")return n;if(e!=null)return jr(e,t)?"category":"number"}function L2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function gd(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},lb=G([Hq,vN],(e,t)=>{var n;if(e!=null)return e;var r=(n=gp(t,"angleAxis",B2.type))!==null&&n!==void 0?n:"category";return gd(gd({},B2),{},{type:r})}),Kq=(e,t)=>e.polarAxis.radiusAxis[t],ub=G([Kq,vN],(e,t)=>{var n;if(e!=null)return e;var r=(n=gp(t,"radiusAxis",U2.type))!==null&&n!==void 0?n:"category";return gd(gd({},U2),{},{type:r})}),bp=e=>e.polarOptions,sb=G([_a,ja,en],$9),_M=G([bp,sb],(e,t)=>{if(e!=null)return hi(e.innerRadius,t,0)}),jM=G([bp,sb],(e,t)=>{if(e!=null)return hi(e.outerRadius,t,t*.8)}),Yq=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:n}=e;return[t,n]},TM=G([bp],Yq);G([lb,TM],yp);var CM=G([sb,_M,jM],(e,t,n)=>{if(!(e==null||t==null||n==null))return[t,n]});G([ub,CM],yp);var NM=G([nt,bp,_M,jM,_a,ja],(e,t,n,r,o,l)=>{if(!(e!=="centric"&&e!=="radial"||t==null||n==null||r==null)){var{cx:s,cy:f,startAngle:d,endAngle:p}=t;return{cx:hi(s,o,o/2),cy:hi(f,l,l/2),innerRadius:n,outerRadius:r,startAngle:d,endAngle:p,clockWise:!1}}}),Kt=(e,t)=>t,xp=(e,t,n)=>n;function cb(e){return e?.id}function MM(e,t,n){var{chartData:r=[]}=t,{allowDuplicatedCategory:o,dataKey:l}=n,s=new Map;return e.forEach(f=>{var d,p=(d=f.data)!==null&&d!==void 0?d:r;if(!(p==null||p.length===0)){var v=cb(f);p.forEach((m,b)=>{var x=l==null||o?b:String(Mt(m,l,null)),O=Mt(m,f.dataKey,0),S;s.has(x)?S=s.get(x):S={},Object.assign(S,{[v]:O}),s.set(x,S)})}}),Array.from(s.values())}function fb(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var wp=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Sp(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function Gq(e,t){if(e.length===t.length){for(var n=0;n{var t=nt(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Il=e=>e.tooltip.settings.axisId;function Vq(e){if(e in Xu)return Xu[e]();var t="scale".concat(ys(e));if(t in Xu)return Xu[t]()}function $2(e){var t=e.ticks,n=e.bandwidth,r=e.range(),o=[Math.min(...r),Math.max(...r)];return{domain:()=>e.domain(),range:(function(l){function s(){return l.apply(this,arguments)}return s.toString=function(){return l.toString()},s})(()=>o),rangeMin:()=>o[0],rangeMax:()=>o[1],isInRange(l){var s=o[0],f=o[1];return s<=f?l>=s&&l<=f:l>=f&&l<=s},bandwidth:n?()=>n.call(e):void 0,ticks:t?l=>t.call(e,l):void 0,map:(l,s)=>{var f=e(l);if(f!=null){if(e.bandwidth&&s!==null&&s!==void 0&&s.position){var d=e.bandwidth();switch(s.position){case"middle":f+=d/2;break;case"end":f+=d;break}}return f}}}}function q2(e,t,n){if(typeof e=="function")return $2(e.copy().domain(t).range(n));if(e!=null){var r=Vq(e);if(r!=null)return r.domain(t).range(n),$2(r)}}var Fq=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Ea(t)){for(var n,r,o=0;or)&&(r=l))}return n!==void 0&&r!==void 0?[n,r]:void 0}return t}default:return t}};function H2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function bd(e){for(var t=1;te.cartesianAxis.xAxis[t],Na=(e,t)=>{var n=DM(e,t);return n??Lt},Bt={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:Ng,hide:!0,id:0,includeHidden:!1,interval:"preserveEnd",minTickGap:5,mirror:!1,name:void 0,orientation:"left",padding:{top:0,bottom:0},reversed:!1,scale:"auto",tick:!0,tickCount:5,tickFormatter:void 0,ticks:void 0,type:"number",unit:void 0,width:xs},PM=(e,t)=>e.cartesianAxis.yAxis[t],Ma=(e,t)=>{var n=PM(e,t);return n??Bt},Qq={domain:[0,"auto"],includeHidden:!1,reversed:!1,allowDataOverflow:!1,allowDuplicatedCategory:!1,dataKey:void 0,id:0,name:"",range:[64,64],scale:"auto",type:"number",unit:""},db=(e,t)=>{var n=e.cartesianAxis.zAxis[t];return n??Qq},bn=(e,t,n)=>{switch(t){case"xAxis":return Na(e,n);case"yAxis":return Ma(e,n);case"zAxis":return db(e,n);case"angleAxis":return lb(e,n);case"radiusAxis":return ub(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Jq=(e,t,n)=>{switch(t){case"xAxis":return Na(e,n);case"yAxis":return Ma(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},Ts=(e,t,n)=>{switch(t){case"xAxis":return Na(e,n);case"yAxis":return Ma(e,n);case"angleAxis":return lb(e,n);case"radiusAxis":return ub(e,n);default:throw new Error("Unexpected axis type: ".concat(t))}},kM=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function RM(e,t){return n=>{switch(e){case"xAxis":return"xAxisId"in n&&n.xAxisId===t;case"yAxis":return"yAxisId"in n&&n.yAxisId===t;case"zAxis":return"zAxisId"in n&&n.zAxisId===t;case"angleAxis":return"angleAxisId"in n&&n.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in n&&n.radiusAxisId===t;default:return!1}}}var pb=e=>e.graphicalItems.cartesianItems,eH=G([Kt,xp],RM),zM=(e,t,n)=>e.filter(n).filter(r=>t?.includeHidden===!0?!0:!r.hide),Cs=G([pb,bn,eH],zM,{memoizeOptions:{resultEqualityCheck:Sp}}),IM=G([Cs],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(fb)),LM=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),tH=G([Cs],LM),BM=e=>e.map(t=>t.data).filter(Boolean).flat(1),nH=G([Cs],BM,{memoizeOptions:{resultEqualityCheck:Sp}}),UM=(e,t)=>{var{chartData:n=[],dataStartIndex:r,dataEndIndex:o}=t;return e.length>0?e:n.slice(r,o+1)},mb=G([nH,tb],UM),$M=(e,t,n)=>t?.dataKey!=null?e.map(r=>({value:Mt(r,t.dataKey)})):n.length>0?n.map(r=>r.dataKey).flatMap(r=>e.map(o=>({value:Mt(o,r)}))):e.map(r=>({value:r})),Op=G([mb,bn,Cs],$M);function qM(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function Af(e){if(Kr(e)||e instanceof Date){var t=Number(e);if(ze(t))return t}}function K2(e){if(Array.isArray(e)){var t=[Af(e[0]),Af(e[1])];return Ea(t)?t:void 0}var n=Af(e);if(n!=null)return[n,n]}function Aa(e){return e.map(Af).filter(Dn)}function rH(e,t,n){return!n||typeof t!="number"||Hr(t)?[]:n.length?Aa(n.flatMap(r=>{var o=Mt(e,r.dataKey),l,s;if(Array.isArray(o)?[l,s]=o:l=s=o,!(!ze(l)||!ze(s)))return[t-l,t+s]})):[]}var kt=e=>{var t=Yt(e),n=Il(e);return Ts(e,t,n)},Ns=G([kt],e=>e?.dataKey),aH=G([IM,tb,kt],MM),HM=(e,t,n,r)=>{var o={},l=t.reduce((s,f)=>{if(f.stackId==null)return s;var d=s[f.stackId];return d==null&&(d=[]),d.push(f),s[f.stackId]=d,s},o);return Object.fromEntries(Object.entries(l).map(s=>{var[f,d]=s,p=r?[...d].reverse():d,v=p.map(cb);return[f,{stackedData:PB(e,v,n),graphicalItems:p}]}))},KM=G([aH,IM,hp,EM],HM),YM=(e,t,n,r)=>{var{dataStartIndex:o,dataEndIndex:l}=t;if(r==null&&n!=="zAxis"){var s=IB(e,o,l);if(!(s!=null&&s[0]===0&&s[1]===0))return s}},iH=G([bn],e=>e.allowDataOverflow),vb=e=>{var t;if(e==null||!("domain"in e))return Ng;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var n=Aa(e.ticks);return[Math.min(...n),Math.max(...n)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:Ng},GM=G([bn],vb),VM=G([GM,iH],pM),oH=G([KM,Ca,Kt,VM],YM,{memoizeOptions:{resultEqualityCheck:wp}}),hb=e=>e.errorBars,lH=(e,t,n)=>e.flatMap(r=>t[r.id]).filter(Boolean).filter(r=>qM(n,r)),xd=function(){for(var t=arguments.length,n=new Array(t),r=0;r{var l,s;if(n.length>0&&e.forEach(f=>{n.forEach(d=>{var p,v,m=(p=r[d.id])===null||p===void 0?void 0:p.filter(A=>qM(o,A)),b=Mt(f,(v=t.dataKey)!==null&&v!==void 0?v:d.dataKey),x=rH(f,b,m);if(x.length>=2){var O=Math.min(...x),S=Math.max(...x);(l==null||Os)&&(s=S)}var w=K2(b);w!=null&&(l=l==null?w[0]:Math.min(l,w[0]),s=s==null?w[1]:Math.max(s,w[1]))})}),t?.dataKey!=null&&e.forEach(f=>{var d=K2(Mt(f,t.dataKey));d!=null&&(l=l==null?d[0]:Math.min(l,d[0]),s=s==null?d[1]:Math.max(s,d[1]))}),ze(l)&&ze(s))return[l,s]},uH=G([mb,bn,tH,hb,Kt],FM,{memoizeOptions:{resultEqualityCheck:wp}});function sH(e){var{value:t}=e;if(Kr(t)||t instanceof Date)return t}var cH=(e,t,n)=>{var r=e.map(sH).filter(o=>o!=null);return n&&(t.dataKey==null||t.allowDuplicatedCategory&&dC(r))?DN(0,e.length):t.allowDuplicatedCategory?r:Array.from(new Set(r))},XM=e=>e.referenceElements.dots,Ll=(e,t,n)=>e.filter(r=>r.ifOverflow==="extendDomain").filter(r=>t==="xAxis"?r.xAxisId===n:r.yAxisId===n),fH=G([XM,Kt,xp],Ll),WM=e=>e.referenceElements.areas,dH=G([WM,Kt,xp],Ll),ZM=e=>e.referenceElements.lines,pH=G([ZM,Kt,xp],Ll),QM=(e,t)=>{if(e!=null){var n=Aa(e.map(r=>t==="xAxis"?r.x:r.y));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},mH=G(fH,Kt,QM),JM=(e,t)=>{if(e!=null){var n=Aa(e.flatMap(r=>[t==="xAxis"?r.x1:r.y1,t==="xAxis"?r.x2:r.y2]));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},vH=G([dH,Kt],JM);function hH(e){var t;if(e.x!=null)return Aa([e.x]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.x);return n==null||n.length===0?[]:Aa(n)}function yH(e){var t;if(e.y!=null)return Aa([e.y]);var n=(t=e.segment)===null||t===void 0?void 0:t.map(r=>r.y);return n==null||n.length===0?[]:Aa(n)}var eD=(e,t)=>{if(e!=null){var n=e.flatMap(r=>t==="xAxis"?hH(r):yH(r));if(n.length!==0)return[Math.min(...n),Math.max(...n)]}},gH=G([pH,Kt],eD),bH=G(mH,gH,vH,(e,t,n)=>xd(e,n,t)),tD=(e,t,n,r,o,l,s,f)=>{if(n!=null)return n;var d=s==="vertical"&&f==="xAxis"||s==="horizontal"&&f==="yAxis",p=d?xd(r,l,o):xd(l,o);return Mq(t,p,e.allowDataOverflow)},xH=G([bn,GM,VM,oH,uH,bH,nt,Kt],tD,{memoizeOptions:{resultEqualityCheck:wp}}),wH=[0,1],nD=(e,t,n,r,o,l,s)=>{if(!((e==null||n==null||n.length===0)&&s===void 0)){var{dataKey:f,type:d}=e,p=jr(t,l);if(p&&f==null){var v;return DN(0,(v=n?.length)!==null&&v!==void 0?v:0)}return d==="category"?cH(r,e,p):o==="expand"?wH:s}},yb=G([bn,nt,mb,Op,hp,Kt,xH],nD);function SH(e){return e in Xu}var rD=(e,t,n)=>{if(e!=null){var{scale:r,type:o}=e;if(r==="auto")return o==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!t)?"point":o==="category"?"band":"linear";if(typeof r=="string"){var l="scale".concat(ys(r));return SH(l)?l:"point"}}},Bl=G([bn,kM,ab],rD);function gb(e,t,n,r){if(!(n==null||r==null))return typeof e.scale=="function"?q2(e.scale,n,r):q2(t,n,r)}var aD=(e,t,n)=>{var r=vb(t);if(!(n!=="auto"&&n!=="linear")){if(t!=null&&t.tickCount&&Array.isArray(r)&&(r[0]==="auto"||r[1]==="auto")&&Ea(e))return zq(e,t.tickCount,t.allowDecimals);if(t!=null&&t.tickCount&&t.type==="number"&&Ea(e))return Iq(e,t.tickCount,t.allowDecimals)}},bb=G([yb,Ts,Bl],aD),iD=(e,t,n,r)=>{if(r!=="angleAxis"&&e?.type==="number"&&Ea(t)&&Array.isArray(n)&&n.length>0){var o,l,s=t[0],f=(o=n[0])!==null&&o!==void 0?o:0,d=t[1],p=(l=n[n.length-1])!==null&&l!==void 0?l:0;return[Math.min(s,f),Math.max(d,p)]}return t},OH=G([bn,yb,bb,Kt],iD),EH=G(Op,bn,(e,t)=>{if(!(!t||t.type!=="number")){var n=1/0,r=Array.from(Aa(e.map(m=>m.value))).sort((m,b)=>m-b),o=r[0],l=r[r.length-1];if(o==null||l==null)return 1/0;var s=l-o;if(s===0)return 1/0;for(var f=0;fo,(e,t,n,r,o)=>{if(!ze(e))return 0;var l=t==="vertical"?r.height:r.width;if(o==="gap")return e*l/2;if(o==="no-gap"){var s=hi(n,e*l),f=e*l/2;return f-s-(f-s)/l*s}return 0}),AH=(e,t,n)=>{var r=Na(e,t);return r==null||typeof r.padding!="string"?0:oD(e,"xAxis",t,n,r.padding)},_H=(e,t,n)=>{var r=Ma(e,t);return r==null||typeof r.padding!="string"?0:oD(e,"yAxis",t,n,r.padding)},jH=G(Na,AH,(e,t)=>{var n,r;if(e==null)return{left:0,right:0};var{padding:o}=e;return typeof o=="string"?{left:t,right:t}:{left:((n=o.left)!==null&&n!==void 0?n:0)+t,right:((r=o.right)!==null&&r!==void 0?r:0)+t}}),TH=G(Ma,_H,(e,t)=>{var n,r;if(e==null)return{top:0,bottom:0};var{padding:o}=e;return typeof o=="string"?{top:t,bottom:t}:{top:((n=o.top)!==null&&n!==void 0?n:0)+t,bottom:((r=o.bottom)!==null&&r!==void 0?r:0)+t}}),CH=G([en,jH,rp,np,(e,t,n)=>n],(e,t,n,r,o)=>{var{padding:l}=r;return o?[l.left,n.width-l.right]:[e.left+t.left,e.left+e.width-t.right]}),NH=G([en,nt,TH,rp,np,(e,t,n)=>n],(e,t,n,r,o,l)=>{var{padding:s}=o;return l?[r.height-s.bottom,s.top]:t==="horizontal"?[e.top+e.height-n.bottom,e.top+n.top]:[e.top+n.top,e.top+e.height-n.bottom]}),Ms=(e,t,n,r)=>{var o;switch(t){case"xAxis":return CH(e,n,r);case"yAxis":return NH(e,n,r);case"zAxis":return(o=db(e,n))===null||o===void 0?void 0:o.range;case"angleAxis":return TM(e);case"radiusAxis":return CM(e,n);default:return}},lD=G([bn,Ms],yp),MH=G([Bl,OH],Fq),Ep=G([bn,Bl,MH,lD],gb);G([Cs,hb,Kt],lH);function uD(e,t){return e.idt.id?1:0}var Ap=(e,t)=>t,_p=(e,t,n)=>n,DH=G(ep,Ap,_p,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(uD)),PH=G(tp,Ap,_p,(e,t,n)=>e.filter(r=>r.orientation===t).filter(r=>r.mirror===n).sort(uD)),sD=(e,t)=>({width:e.width,height:t.height}),kH=(e,t)=>{var n=typeof t.width=="number"?t.width:xs;return{width:n,height:e.height}},RH=G(en,Na,sD),zH=(e,t,n)=>{switch(t){case"top":return e.top;case"bottom":return n-e.bottom;default:return 0}},IH=(e,t,n)=>{switch(t){case"left":return e.left;case"right":return n-e.right;default:return 0}},LH=G(ja,en,DH,Ap,_p,(e,t,n,r,o)=>{var l={},s;return n.forEach(f=>{var d=sD(t,f);s==null&&(s=zH(t,r,e));var p=r==="top"&&!o||r==="bottom"&&o;l[f.id]=s-Number(p)*d.height,s+=(p?-1:1)*d.height}),l}),BH=G(_a,en,PH,Ap,_p,(e,t,n,r,o)=>{var l={},s;return n.forEach(f=>{var d=kH(t,f);s==null&&(s=IH(t,r,e));var p=r==="left"&&!o||r==="right"&&o;l[f.id]=s-Number(p)*d.width,s+=(p?-1:1)*d.width}),l}),UH=(e,t)=>{var n=Na(e,t);if(n!=null)return LH(e,n.orientation,n.mirror)},$H=G([en,Na,UH,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var o=n?.[r];return o==null?{x:e.left,y:0}:{x:e.left,y:o}}}),qH=(e,t)=>{var n=Ma(e,t);if(n!=null)return BH(e,n.orientation,n.mirror)},HH=G([en,Ma,qH,(e,t)=>t],(e,t,n,r)=>{if(t!=null){var o=n?.[r];return o==null?{x:0,y:e.top}:{x:o,y:e.top}}}),KH=G(en,Ma,(e,t)=>{var n=typeof t.width=="number"?t.width:xs;return{width:n,height:e.height}}),cD=(e,t,n,r)=>{if(n!=null){var{allowDuplicatedCategory:o,type:l,dataKey:s}=n,f=jr(e,r),d=t.map(p=>p.value);if(s&&f&&l==="category"&&o&&dC(d))return d}},xb=G([nt,Op,bn,Kt],cD),fD=(e,t,n,r)=>{if(!(n==null||n.dataKey==null)){var{type:o,scale:l}=n,s=jr(e,r);if(s&&(o==="number"||l!=="auto"))return t.map(f=>f.value)}},wb=G([nt,Op,Ts,Kt],fD),Y2=G([nt,Jq,Bl,Ep,xb,wb,Ms,bb,Kt],(e,t,n,r,o,l,s,f,d)=>{if(t!=null){var p=jr(e,d);return{angle:t.angle,interval:t.interval,minTickGap:t.minTickGap,orientation:t.orientation,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit,axisType:d,categoricalDomain:l,duplicateDomain:o,isCategorical:p,niceTicks:f,range:s,realScaleType:n,scale:r}}}),YH=(e,t,n,r,o,l,s,f,d)=>{if(!(t==null||r==null)){var p=jr(e,d),{type:v,ticks:m,tickCount:b}=t,x=n==="scaleBand"&&typeof r.bandwidth=="function"?r.bandwidth()/2:2,O=v==="category"&&r.bandwidth?r.bandwidth()/x:0;O=d==="angleAxis"&&l!=null&&l.length>=2?lr(l[0]-l[1])*2*O:O;var S=m||o;return S?S.map((w,A)=>{var C=s?s.indexOf(w):w,j=r.map(C);return ze(j)?{index:A,coordinate:j+O,value:w,offset:O}:null}).filter(Dn):p&&f?f.map((w,A)=>{var C=r.map(w);return ze(C)?{coordinate:C+O,value:w,index:A,offset:O}:null}).filter(Dn):r.ticks?r.ticks(b).map((w,A)=>{var C=r.map(w);return ze(C)?{coordinate:C+O,value:w,index:A,offset:O}:null}).filter(Dn):r.domain().map((w,A)=>{var C=r.map(w);return ze(C)?{coordinate:C+O,value:s?s[w]:w,index:A,offset:O}:null}).filter(Dn)}},dD=G([nt,Ts,Bl,Ep,bb,Ms,xb,wb,Kt],YH),GH=(e,t,n,r,o,l,s)=>{if(!(t==null||n==null||r==null||r[0]===r[1])){var f=jr(e,s),{tickCount:d}=t,p=0;return p=s==="angleAxis"&&r?.length>=2?lr(r[0]-r[1])*2*p:p,f&&l?l.map((v,m)=>{var b=n.map(v);return ze(b)?{coordinate:b+p,value:v,index:m,offset:p}:null}).filter(Dn):n.ticks?n.ticks(d).map((v,m)=>{var b=n.map(v);return ze(b)?{coordinate:b+p,value:v,index:m,offset:p}:null}).filter(Dn):n.domain().map((v,m)=>{var b=n.map(v);return ze(b)?{coordinate:b+p,value:o?o[v]:v,index:m,offset:p}:null}).filter(Dn)}},jp=G([nt,Ts,Ep,Ms,xb,wb,Kt],GH),Tp=G(bn,Ep,(e,t)=>{if(!(e==null||t==null))return bd(bd({},e),{},{scale:t})}),VH=G([bn,Bl,yb,lD],gb);G((e,t,n)=>db(e,n),VH,(e,t)=>{if(!(e==null||t==null))return bd(bd({},e),{},{scale:t})});var FH=G([nt,ep,tp],(e,t,n)=>{switch(e){case"horizontal":return t.some(r=>r.reversed)?"right-to-left":"left-to-right";case"vertical":return n.some(r=>r.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),pD=e=>e.options.defaultTooltipEventType,mD=e=>e.options.validateTooltipEventTypes;function vD(e,t,n){if(e==null)return t;var r=e?"axis":"item";return n==null?t:n.includes(r)?r:t}function Sb(e,t){var n=pD(e),r=mD(e);return vD(t,n,r)}function XH(e){return we(t=>Sb(t,e))}var hD=(e,t)=>{var n,r=Number(t);if(!(Hr(r)||t==null))return r>=0?e==null||(n=e[r])===null||n===void 0?void 0:n.value:void 0},WH=e=>e.tooltip.settings,di={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},ZH={itemInteraction:{click:di,hover:di},axisInteraction:{click:di,hover:di},keyboardInteraction:di,syncInteraction:{active:!1,index:null,dataKey:void 0,label:void 0,coordinate:void 0,sourceViewBox:void 0,graphicalItemId:void 0},tooltipItemPayloads:[],settings:{shared:void 0,trigger:"hover",axisId:0,active:!1,defaultIndex:void 0}},yD=kn({name:"tooltip",initialState:ZH,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:ct()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:n,next:r}=t.payload,o=Sr(e).tooltipItemPayloads.indexOf(n);o>-1&&(e.tooltipItemPayloads[o]=r)},prepare:ct()},removeTooltipEntrySettings:{reducer(e,t){var n=Sr(e).tooltipItemPayloads.indexOf(t.payload);n>-1&&e.tooltipItemPayloads.splice(n,1)},prepare:ct()},setTooltipSettingsState(e,t){e.settings=t.payload},setActiveMouseOverItemIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.itemInteraction.hover.active=!0,e.itemInteraction.hover.index=t.payload.activeIndex,e.itemInteraction.hover.dataKey=t.payload.activeDataKey,e.itemInteraction.hover.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.hover.coordinate=t.payload.activeCoordinate},mouseLeaveChart(e){e.itemInteraction.hover.active=!1,e.axisInteraction.hover.active=!1},mouseLeaveItem(e){e.itemInteraction.hover.active=!1},setActiveClickItemIndex(e,t){e.syncInteraction.active=!1,e.itemInteraction.click.active=!0,e.keyboardInteraction.active=!1,e.itemInteraction.click.index=t.payload.activeIndex,e.itemInteraction.click.dataKey=t.payload.activeDataKey,e.itemInteraction.click.graphicalItemId=t.payload.activeGraphicalItemId,e.itemInteraction.click.coordinate=t.payload.activeCoordinate},setMouseOverAxisIndex(e,t){e.syncInteraction.active=!1,e.axisInteraction.hover.active=!0,e.keyboardInteraction.active=!1,e.axisInteraction.hover.index=t.payload.activeIndex,e.axisInteraction.hover.dataKey=t.payload.activeDataKey,e.axisInteraction.hover.coordinate=t.payload.activeCoordinate},setMouseClickAxisIndex(e,t){e.syncInteraction.active=!1,e.keyboardInteraction.active=!1,e.axisInteraction.click.active=!0,e.axisInteraction.click.index=t.payload.activeIndex,e.axisInteraction.click.dataKey=t.payload.activeDataKey,e.axisInteraction.click.coordinate=t.payload.activeCoordinate},setSyncInteraction(e,t){e.syncInteraction=t.payload},setKeyboardInteraction(e,t){e.keyboardInteraction.active=t.payload.active,e.keyboardInteraction.index=t.payload.activeIndex,e.keyboardInteraction.coordinate=t.payload.activeCoordinate}}}),{addTooltipEntrySettings:QH,replaceTooltipEntrySettings:JH,removeTooltipEntrySettings:eK,setTooltipSettingsState:tK,setActiveMouseOverItemIndex:nK,mouseLeaveItem:hJ,mouseLeaveChart:gD,setActiveClickItemIndex:yJ,setMouseOverAxisIndex:bD,setMouseClickAxisIndex:rK,setSyncInteraction:Mg,setKeyboardInteraction:Dg}=yD.actions,aK=yD.reducer;function G2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function hf(e){for(var t=1;t{if(t==null)return di;var o=uK(e,t,n);if(o==null)return di;if(o.active)return o;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var l=e.settings.active===!0;if(sK(o)){if(l)return hf(hf({},o),{},{active:!0})}else if(r!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:r,graphicalItemId:void 0};return hf(hf({},di),{},{coordinate:o.coordinate})};function cK(e){if(typeof e=="number")return Number.isFinite(e)?e:void 0;if(e instanceof Date){var t=e.valueOf();return Number.isFinite(t)?t:void 0}var n=Number(e);return Number.isFinite(n)?n:void 0}function fK(e,t){var n=cK(e),r=t[0],o=t[1];if(n===void 0)return!1;var l=Math.min(r,o),s=Math.max(r,o);return n>=l&&n<=s}function dK(e,t,n){if(n==null||t==null)return!0;var r=Mt(e,t);return r==null||!Ea(n)?!0:fK(r,n)}var Ob=(e,t,n,r)=>{var o=e?.index;if(o==null)return null;var l=Number(o);if(!ze(l))return o;var s=0,f=1/0;t.length>0&&(f=t.length-1);var d=Math.max(s,Math.min(l,f)),p=t[d];return p==null||dK(p,n,r)?String(d):null},wD=(e,t,n,r,o,l,s)=>{if(l!=null){var f=s[0],d=f?.getPosition(l);if(d!=null)return d;var p=o?.[Number(l)];if(p)return n==="horizontal"?{x:p.coordinate,y:(r.top+t)/2}:{x:(r.left+e)/2,y:p.coordinate}}},SD=(e,t,n,r)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var o;if(n==="hover"?o=e.itemInteraction.hover.graphicalItemId:o=e.itemInteraction.click.graphicalItemId,o==null&&r!=null){var l=e.tooltipItemPayloads[0];return l!=null?[l]:[]}return e.tooltipItemPayloads.filter(s=>{var f;return((f=s.settings)===null||f===void 0?void 0:f.graphicalItemId)===o})},OD=e=>e.options.tooltipPayloadSearcher,Ul=e=>e.tooltip;function V2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function F2(e){for(var t=1;t{if(!(t==null||l==null)){var{chartData:f,computedData:d,dataStartIndex:p,dataEndIndex:v}=n,m=[];return e.reduce((b,x)=>{var O,{dataDefinedOnItem:S,settings:w}=x,A=hK(S,f),C=Array.isArray(A)?aN(A,p,v):A,j=(O=w?.dataKey)!==null&&O!==void 0?O:r,N=w?.nameKey,M;if(r&&Array.isArray(C)&&!Array.isArray(C[0])&&s==="axis"?M=pC(C,r,o):M=l(C,t,d,N),Array.isArray(M))M.forEach(P=>{var I=F2(F2({},w),{},{name:P.name,unit:P.unit,color:void 0,fill:void 0});b.push(FE({tooltipEntrySettings:I,dataKey:P.dataKey,payload:P.payload,value:Mt(P.payload,P.dataKey),name:P.name}))});else{var D;b.push(FE({tooltipEntrySettings:w,dataKey:j,payload:M,value:Mt(M,j),name:(D=Mt(M,N))!==null&&D!==void 0?D:w?.name}))}return b},m)}},Eb=G([kt,kM,ab],rD),yK=G([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),gK=G([Yt,Il],RM),$l=G([yK,kt,gK],zM,{memoizeOptions:{resultEqualityCheck:Sp}}),bK=G([$l],e=>e.filter(fb)),xK=G([$l],BM,{memoizeOptions:{resultEqualityCheck:Sp}}),ql=G([xK,Ca],UM),wK=G([bK,Ca,kt],MM),Ab=G([ql,kt,$l],$M),AD=G([kt],vb),SK=G([kt],e=>e.allowDataOverflow),_D=G([AD,SK],pM),OK=G([$l],e=>e.filter(fb)),EK=G([wK,OK,hp,EM],HM),AK=G([EK,Ca,Yt,_D],YM),_K=G([$l],LM),jK=G([ql,kt,_K,hb,Yt],FM,{memoizeOptions:{resultEqualityCheck:wp}}),TK=G([XM,Yt,Il],Ll),CK=G([TK,Yt],QM),NK=G([WM,Yt,Il],Ll),MK=G([NK,Yt],JM),DK=G([ZM,Yt,Il],Ll),PK=G([DK,Yt],eD),kK=G([CK,PK,MK],xd),RK=G([kt,AD,_D,AK,jK,kK,nt,Yt],tD),Ds=G([kt,nt,ql,Ab,hp,Yt,RK],nD),zK=G([Ds,kt,Eb],aD),IK=G([kt,Ds,zK,Yt],iD),jD=e=>{var t=Yt(e),n=Il(e),r=!1;return Ms(e,t,n,r)},TD=G([kt,jD],yp),CD=G([kt,Eb,IK,TD],gb),LK=G([nt,Ab,kt,Yt],cD),BK=G([nt,Ab,kt,Yt],fD),UK=(e,t,n,r,o,l,s,f)=>{if(t){var{type:d}=t,p=jr(e,f);if(r){var v=n==="scaleBand"&&r.bandwidth?r.bandwidth()/2:2,m=d==="category"&&r.bandwidth?r.bandwidth()/v:0;return m=f==="angleAxis"&&o!=null&&o?.length>=2?lr(o[0]-o[1])*2*m:m,p&&s?s.map((b,x)=>{var O=r.map(b);return ze(O)?{coordinate:O+m,value:b,index:x,offset:m}:null}).filter(Dn):r.domain().map((b,x)=>{var O=r.map(b);return ze(O)?{coordinate:O+m,value:l?l[b]:b,index:x,offset:m}:null}).filter(Dn)}}},Da=G([nt,kt,Eb,CD,jD,LK,BK,Yt],UK),_b=G([pD,mD,WH],(e,t,n)=>vD(n.shared,e,t)),ND=e=>e.tooltip.settings.trigger,jb=e=>e.tooltip.settings.defaultIndex,Ps=G([Ul,_b,ND,jb],xD),ds=G([Ps,ql,Ns,Ds],Ob),MD=G([Da,ds],hD),$K=G([Ps],e=>{if(e)return e.dataKey});G([Ps],e=>{if(e)return e.graphicalItemId});var DD=G([Ul,_b,ND,jb],SD),qK=G([_a,ja,nt,en,Da,jb,DD],wD),HK=G([Ps,qK],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),KK=G([Ps],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),YK=G([DD,ds,Ca,Ns,MD,OD,_b],ED),GK=G([YK],e=>{if(e!=null){var t=e.map(n=>n.payload).filter(n=>n!=null);return Array.from(new Set(t))}});function X2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function W2(e){for(var t=1;twe(kt),ZK=()=>{var e=WK(),t=we(Da),n=we(CD);return Al(!e||!n?void 0:W2(W2({},e),{},{scale:n}),t)};function Z2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function cl(e){for(var t=1;t{var o=t.find(l=>l&&l.index===n);if(o){if(e==="horizontal")return{x:o.coordinate,y:r.chartY};if(e==="vertical")return{x:r.chartX,y:o.coordinate}}return{x:0,y:0}},nY=(e,t,n,r)=>{var o=t.find(p=>p&&p.index===n);if(o){if(e==="centric"){var l=o.coordinate,{radius:s}=r;return cl(cl(cl({},r),Jt(r.cx,r.cy,s,l)),{},{angle:l,radius:s})}var f=o.coordinate,{angle:d}=r;return cl(cl(cl({},r),Jt(r.cx,r.cy,f,d)),{},{angle:d,radius:f})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function rY(e,t){var{chartX:n,chartY:r}=e;return n>=t.left&&n<=t.left+t.width&&r>=t.top&&r<=t.top+t.height}var PD=(e,t,n,r,o)=>{var l,s=(l=t?.length)!==null&&l!==void 0?l:0;if(s<=1||e==null)return 0;if(r==="angleAxis"&&o!=null&&Math.abs(Math.abs(o[1]-o[0])-360)<=1e-6)for(var f=0;f0?(d=n[f-1])===null||d===void 0?void 0:d.coordinate:(p=n[s-1])===null||p===void 0?void 0:p.coordinate,O=(v=n[f])===null||v===void 0?void 0:v.coordinate,S=f>=s-1?(m=n[0])===null||m===void 0?void 0:m.coordinate:(b=n[f+1])===null||b===void 0?void 0:b.coordinate,w=void 0;if(!(x==null||O==null||S==null))if(lr(O-x)!==lr(S-O)){var A=[];if(lr(S-O)===lr(o[1]-o[0])){w=S;var C=O+o[1]-o[0];A[0]=Math.min(C,(C+x)/2),A[1]=Math.max(C,(C+x)/2)}else{w=x;var j=S+o[1]-o[0];A[0]=Math.min(O,(j+O)/2),A[1]=Math.max(O,(j+O)/2)}var N=[Math.min(O,(w+O)/2),Math.max(O,(w+O)/2)];if(e>N[0]&&e<=N[1]||e>=A[0]&&e<=A[1]){var M;return(M=n[f])===null||M===void 0?void 0:M.index}}else{var D=Math.min(x,S),P=Math.max(x,S);if(e>(D+O)/2&&e<=(P+O)/2){var I;return(I=n[f])===null||I===void 0?void 0:I.index}}}else if(t)for(var W=0;W(ie.coordinate+U.coordinate)/2||W>0&&W(ie.coordinate+U.coordinate)/2&&e<=(ie.coordinate+F.coordinate)/2)return ie.index}}return-1},kD=()=>we(ab),Tb=(e,t)=>t,RD=(e,t,n)=>n,Cb=(e,t,n,r)=>r,aY=G(Da,e=>Hd(e,t=>t.coordinate)),Nb=G([Ul,Tb,RD,Cb],xD),Mb=G([Nb,ql,Ns,Ds],Ob),iY=(e,t,n)=>{if(t!=null){var r=Ul(e);return t==="axis"?n==="hover"?r.axisInteraction.hover.dataKey:r.axisInteraction.click.dataKey:n==="hover"?r.itemInteraction.hover.dataKey:r.itemInteraction.click.dataKey}},zD=G([Ul,Tb,RD,Cb],SD),wd=G([_a,ja,nt,en,Da,Cb,zD],wD),oY=G([Nb,wd],(e,t)=>{var n;return(n=e.coordinate)!==null&&n!==void 0?n:t}),ID=G([Da,Mb],hD),lY=G([zD,Mb,Ca,Ns,ID,OD,Tb],ED),uY=G([Nb,Mb],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),sY=(e,t,n,r,o,l,s)=>{if(!(!e||!n||!r||!o)&&rY(e,s)){var f=LB(e,t),d=PD(f,l,o,n,r),p=tY(t,o,d,e);return{activeIndex:String(d),activeCoordinate:p}}},cY=(e,t,n,r,o,l,s)=>{if(!(!e||!r||!o||!l||!n)){var f=G9(e,n);if(f){var d=BB(f,t),p=PD(d,s,l,r,o),v=nY(t,l,p,f);return{activeIndex:String(p),activeCoordinate:v}}}},fY=(e,t,n,r,o,l,s,f)=>{if(!(!e||!t||!r||!o||!l))return t==="horizontal"||t==="vertical"?sY(e,t,r,o,l,s,f):cY(e,t,n,r,o,l,s)},dY=G(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,n)=>n,(e,t,n)=>{if(t!=null){var r=e[t];if(r!=null)return n?r.panoramaElement:r.element}}),pY=G(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(r=>parseInt(r,10)).concat(Object.values(ln)),n=Array.from(new Set(t));return n.sort((r,o)=>r-o)},{memoizeOptions:{resultEqualityCheck:Gq}});function Q2(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function J2(e){for(var t=1;tJ2(J2({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),yY)},bY=new Set(Object.values(ln));function xY(e){return bY.has(e)}var LD=kn({name:"zIndex",initialState:gY,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]?e.zIndexMap[n].consumers+=1:e.zIndexMap[n]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:ct()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(e.zIndexMap[n].consumers-=1,e.zIndexMap[n].consumers<=0&&!xY(n)&&delete e.zIndexMap[n])},prepare:ct()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n,element:r,isPanorama:o}=t.payload;e.zIndexMap[n]?o?e.zIndexMap[n].panoramaElement=r:e.zIndexMap[n].element=r:e.zIndexMap[n]={consumers:0,element:o?void 0:r,panoramaElement:o?r:void 0}},prepare:ct()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:n}=t.payload;e.zIndexMap[n]&&(t.payload.isPanorama?e.zIndexMap[n].panoramaElement=void 0:e.zIndexMap[n].element=void 0)},prepare:ct()}}}),{registerZIndexPortal:wY,unregisterZIndexPortal:SY,registerZIndexPortalElement:OY,unregisterZIndexPortalElement:EY}=LD.actions,AY=LD.reducer;function Vr(e){var{zIndex:t,children:n}=e,r=yU(),o=r&&t!==void 0&&t!==0,l=cn(),s=qt();g.useLayoutEffect(()=>o?(s(wY({zIndex:t})),()=>{s(SY({zIndex:t}))}):mo,[s,t,o]);var f=we(d=>dY(d,t,l));return o?f?kd.createPortal(n,f):null:n}function Pg(){return Pg=Object.assign?Object.assign.bind():function(e){for(var t=1;tg.useContext(BD),Ay={exports:{}},t_;function PY(){return t_||(t_=1,(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function o(d,p,v){this.fn=d,this.context=p,this.once=v||!1}function l(d,p,v,m,b){if(typeof v!="function")throw new TypeError("The listener must be a function");var x=new o(v,m||d,b),O=n?n+p:p;return d._events[O]?d._events[O].fn?d._events[O]=[d._events[O],x]:d._events[O].push(x):(d._events[O]=x,d._eventsCount++),d}function s(d,p){--d._eventsCount===0?d._events=new r:delete d._events[p]}function f(){this._events=new r,this._eventsCount=0}f.prototype.eventNames=function(){var p=[],v,m;if(this._eventsCount===0)return p;for(m in v=this._events)t.call(v,m)&&p.push(n?m.slice(1):m);return Object.getOwnPropertySymbols?p.concat(Object.getOwnPropertySymbols(v)):p},f.prototype.listeners=function(p){var v=n?n+p:p,m=this._events[v];if(!m)return[];if(m.fn)return[m.fn];for(var b=0,x=m.length,O=new Array(x);b{if(t&&Array.isArray(e)){var n=Number.parseInt(t,10);if(!Hr(n))return e[n]}},zY={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},$D=kn({name:"options",initialState:zY,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),IY=$D.reducer,{createEventEmitter:LY}=$D.actions;function BY(e){return e.tooltip.syncInteraction}var UY={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},qD=kn({name:"chartData",initialState:UY,reducers:{setChartData(e,t){if(e.chartData=t.payload,t.payload==null){e.dataStartIndex=0,e.dataEndIndex=0;return}t.payload.length>0&&e.dataEndIndex!==t.payload.length-1&&(e.dataEndIndex=t.payload.length-1)},setComputedData(e,t){e.computedData=t.payload},setDataStartEndIndexes(e,t){var{startIndex:n,endIndex:r}=t.payload;n!=null&&(e.dataStartIndex=n),r!=null&&(e.dataEndIndex=r)}}}),{setChartData:r_,setDataStartEndIndexes:$Y,setComputedData:gJ}=qD.actions,qY=qD.reducer,HY=["x","y"];function a_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function fl(e){for(var t=1;td.rootProps.className);g.useEffect(()=>{if(e==null)return mo;var d=(p,v,m)=>{if(t!==m&&e===p){if(r==="index"){var b;if(s&&v!==null&&v!==void 0&&(b=v.payload)!==null&&b!==void 0&&b.coordinate&&v.payload.sourceViewBox){var x=v.payload.coordinate,{x:O,y:S}=x,w=VY(x,HY),{x:A,y:C,width:j,height:N}=v.payload.sourceViewBox,M=fl(fl({},w),{},{x:s.x+(j?(O-A)/j:0)*s.width,y:s.y+(N?(S-C)/N:0)*s.height});n(fl(fl({},v),{},{payload:fl(fl({},v.payload),{},{coordinate:M})}))}else n(v);return}if(o!=null){var D;if(typeof r=="function"){var P={activeTooltipIndex:v.payload.index==null?void 0:Number(v.payload.index),isTooltipActive:v.payload.active,activeIndex:v.payload.index==null?void 0:Number(v.payload.index),activeLabel:v.payload.label,activeDataKey:v.payload.dataKey,activeCoordinate:v.payload.coordinate},I=r(o,P);D=o[I]}else r==="value"&&(D=o.find(z=>String(z.value)===v.payload.label));var{coordinate:W}=v.payload;if(D==null||v.payload.active===!1||W==null||s==null){n(Mg({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:ie,y:F}=W,U=Math.min(ie,s.x+s.width),ue=Math.min(F,s.y+s.height),ce={x:l==="horizontal"?D.coordinate:U,y:l==="horizontal"?ue:D.coordinate},se=Mg({active:v.payload.active,coordinate:ce,dataKey:v.payload.dataKey,index:String(D.index),label:v.payload.label,sourceViewBox:v.payload.sourceViewBox,graphicalItemId:v.payload.graphicalItemId});n(se)}}};return ps.on(kg,d),()=>{ps.off(kg,d)}},[f,n,t,e,r,o,l,s])}function WY(){var e=we(ib),t=we(ob),n=qt();g.useEffect(()=>{if(e==null)return mo;var r=(o,l,s)=>{t!==s&&e===o&&n($Y(l))};return ps.on(n_,r),()=>{ps.off(n_,r)}},[n,t,e])}function ZY(){var e=qt();g.useEffect(()=>{e(LY())},[e]),XY(),WY()}function QY(e,t,n,r,o,l){var s=we(x=>iY(x,e,t)),f=we(ob),d=we(ib),p=we(AM),v=we(BY),m=v?.active,b=ap();g.useEffect(()=>{if(!m&&d!=null&&f!=null){var x=Mg({active:l,coordinate:n,dataKey:s,index:o,label:typeof r=="number"?String(r):r,sourceViewBox:b,graphicalItemId:void 0});ps.emit(kg,d,x,f)}},[m,n,s,o,r,f,d,p,l,b])}function i_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function o_(e){for(var t=1;t{P(tK({shared:C,trigger:j,axisId:D,active:o,defaultIndex:I}))},[P,C,j,D,o,I]);var W=ap(),ie=ON(),F=XH(C),{activeIndex:U,isActive:ue}=(t=we(be=>uY(be,F,j,I)))!==null&&t!==void 0?t:{},ce=we(be=>lY(be,F,j,I)),se=we(be=>ID(be,F,j,I)),z=we(be=>oY(be,F,j,I)),K=ce,ae=DY(),fe=(n=o??ue)!==null&&n!==void 0?n:!1,[ee,R]=A8([K,fe]),X=F==="axis"?se:void 0;QY(F,j,z,X,U,fe);var Q=M??ae;if(Q==null||W==null||F==null)return null;var re=K??l_;fe||(re=l_),p&&re.length&&(re=ZL(re.filter(be=>be.value!=null&&(be.hide!==!0||r.includeHidden)),b,nG));var le=re.length>0,de=g.createElement(YU,{allowEscapeViewBox:l,animationDuration:s,animationEasing:f,isAnimationActive:v,active:fe,coordinate:z,hasPayload:le,offset:m,position:x,reverseDirection:O,useTranslate3d:S,viewBox:W,wrapperStyle:w,lastBoundingBox:ee,innerRef:R,hasPortalFromProps:!!M},rG(d,o_(o_({},r),{},{payload:re,label:X,active:fe,activeIndex:U,coordinate:z,accessibilityLayer:ie})));return g.createElement(g.Fragment,null,kd.createPortal(de,Q),fe&&g.createElement(MY,{cursor:A,tooltipEventType:F,coordinate:z,payload:re,index:U}))}function iG(e,t,n){return(t=oG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oG(e){var t=lG(e,"string");return typeof t=="symbol"?t:t+""}function lG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class uG{constructor(t){iG(this,"cache",new Map),this.maxSize=t}get(t){var n=this.cache.get(t);return n!==void 0&&(this.cache.delete(t),this.cache.set(t,n)),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var r=this.cache.keys().next().value;r!=null&&this.cache.delete(r)}this.cache.set(t,n)}clear(){this.cache.clear()}size(){return this.cache.size}}function s_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function sG(e){for(var t=1;t{try{var n=document.getElementById(f_);n||(n=document.createElement("span"),n.setAttribute("id",f_),n.setAttribute("aria-hidden","true"),document.body.appendChild(n)),Object.assign(n.style,mG,t),n.textContent="".concat(e);var r=n.getBoundingClientRect();return{width:r.width,height:r.height}}catch{return{width:0,height:0}}},Qu=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Os.isSsr)return{width:0,height:0};if(!HD.enableCache)return d_(t,n);var r=vG(t,n),o=c_.get(r);if(o)return o;var l=d_(t,n);return c_.set(r,l),l},KD;function hG(e,t,n){return(t=yG(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function yG(e){var t=gG(e,"string");return typeof t=="symbol"?t:t+""}function gG(e,t){if(typeof e!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var p_=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,m_=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,bG=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,xG=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,wG={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},SG=["cm","mm","pt","pc","in","Q","px"];function OG(e){return SG.includes(e)}var vl="NaN";function EG(e,t){return e*wG[t]}class Qt{static parse(t){var n,[,r,o]=(n=xG.exec(t))!==null&&n!==void 0?n:[];return r==null?Qt.NaN:new Qt(parseFloat(r),o??"")}constructor(t,n){this.num=t,this.unit=n,this.num=t,this.unit=n,Hr(t)&&(this.unit=""),n!==""&&!bG.test(n)&&(this.num=NaN,this.unit=""),OG(n)&&(this.num=EG(t,n),this.unit="px")}add(t){return this.unit!==t.unit?new Qt(NaN,""):new Qt(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new Qt(NaN,""):new Qt(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Qt(NaN,""):new Qt(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new Qt(NaN,""):new Qt(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return Hr(this.num)}}KD=Qt;hG(Qt,"NaN",new KD(NaN,""));function YD(e){if(e==null||e.includes(vl))return vl;for(var t=e;t.includes("*")||t.includes("/");){var n,[,r,o,l]=(n=p_.exec(t))!==null&&n!==void 0?n:[],s=Qt.parse(r??""),f=Qt.parse(l??""),d=o==="*"?s.multiply(f):s.divide(f);if(d.isNaN())return vl;t=t.replace(p_,d.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var p,[,v,m,b]=(p=m_.exec(t))!==null&&p!==void 0?p:[],x=Qt.parse(v??""),O=Qt.parse(b??""),S=m==="+"?x.add(O):x.subtract(O);if(S.isNaN())return vl;t=t.replace(m_,S.toString())}return t}var v_=/\(([^()]*)\)/;function AG(e){for(var t=e,n;(n=v_.exec(t))!=null;){var[,r]=n;t=t.replace(v_,YD(r))}return t}function _G(e){var t=e.replace(/\s+/g,"");return t=AG(t),t=YD(t),t}function jG(e){try{return _G(e)}catch{return vl}}function _y(e){var t=jG(e.slice(5,-1));return t===vl?"":t}var TG=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],CG=["dx","dy","angle","className","breakAll"];function Rg(){return Rg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:n,style:r}=e;try{var o=[];$t(t)||(n?o=t.toString().split(""):o=t.toString().split(GD));var l=o.map(f=>({word:f,width:Qu(f,r).width})),s=n?0:Qu(" ",r).width;return{wordsWithComputedWidth:l,spaceWidth:s}}catch{return null}};function MG(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}var FD=(e,t,n,r)=>e.reduce((o,l)=>{var{word:s,width:f}=l,d=o[o.length-1];if(d&&f!=null&&(t==null||r||d.width+f+ne.reduce((t,n)=>t.width>n.width?t:n),DG="…",y_=(e,t,n,r,o,l,s,f)=>{var d=e.slice(0,t),p=VD({breakAll:n,style:r,children:d+DG});if(!p)return[!1,[]];var v=FD(p.wordsWithComputedWidth,l,s,f),m=v.length>o||XD(v).width>Number(l);return[m,v]},PG=(e,t,n,r,o)=>{var{maxLines:l,children:s,style:f,breakAll:d}=e,p=ye(l),v=String(s),m=FD(t,r,n,o);if(!p||o)return m;var b=m.length>l||XD(m).width>Number(r);if(!b)return m;for(var x=0,O=v.length-1,S=0,w;x<=O&&S<=v.length-1;){var A=Math.floor((x+O)/2),C=A-1,[j,N]=y_(v,C,d,f,l,r,n,o),[M]=y_(v,A,d,f,l,r,n,o);if(!j&&!M&&(x=A+1),j&&M&&(O=A-1),!j&&M){w=N;break}S++}return w||m},g_=e=>{var t=$t(e)?[]:e.toString().split(GD);return[{words:t,width:void 0}]},kG=e=>{var{width:t,scaleToFit:n,children:r,style:o,breakAll:l,maxLines:s}=e;if((t||n)&&!Os.isSsr){var f,d,p=VD({breakAll:l,children:r,style:o});if(p){var{wordsWithComputedWidth:v,spaceWidth:m}=p;f=v,d=m}else return g_(r);return PG({breakAll:l,children:r,maxLines:s,style:o},f,d,t,!!n)}return g_(r)},WD="#808080",RG={angle:0,breakAll:!1,capHeight:"0.71em",fill:WD,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},Db=g.forwardRef((e,t)=>{var n=sn(e,RG),{x:r,y:o,lineHeight:l,capHeight:s,fill:f,scaleToFit:d,textAnchor:p,verticalAnchor:v}=n,m=h_(n,TG),b=g.useMemo(()=>kG({breakAll:m.breakAll,children:m.children,maxLines:m.maxLines,scaleToFit:d,style:m.style,width:m.width}),[m.breakAll,m.children,m.maxLines,d,m.style,m.width]),{dx:x,dy:O,angle:S,className:w,breakAll:A}=m,C=h_(m,CG);if(!Kr(r)||!Kr(o)||b.length===0)return null;var j=Number(r)+(ye(x)?x:0),N=Number(o)+(ye(O)?O:0);if(!ze(j)||!ze(N))return null;var M;switch(v){case"start":M=_y("calc(".concat(s,")"));break;case"middle":M=_y("calc(".concat((b.length-1)/2," * -").concat(l," + (").concat(s," / 2))"));break;default:M=_y("calc(".concat(b.length-1," * -").concat(l,")"));break}var D=[],P=b[0];if(d&&P!=null){var I=P.width,{width:W}=m;D.push("scale(".concat(ye(W)&&ye(I)?W/I:1,")"))}return S&&D.push("rotate(".concat(S,", ").concat(j,", ").concat(N,")")),D.length&&(C.transform=D.join(" ")),g.createElement("text",Rg({},un(C),{ref:t,x:j,y:N,className:qe("recharts-text",w),textAnchor:p,fill:f.includes("url")?WD:f}),b.map((ie,F)=>{var U=ie.words.join(A?"":" ");return g.createElement("tspan",{x:j,dy:F===0?M:l,key:"".concat(U,"-").concat(F)},U)}))});Db.displayName="Text";function b_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function zr(e){for(var t=1;t{var{viewBox:t,position:n,offset:r=0,parentViewBox:o}=e,{x:l,y:s,height:f,upperWidth:d,lowerWidth:p}=T0(t),v=l,m=l+(d-p)/2,b=(v+m)/2,x=(d+p)/2,O=v+d/2,S=f>=0?1:-1,w=S*r,A=S>0?"end":"start",C=S>0?"start":"end",j=d>=0?1:-1,N=j*r,M=j>0?"end":"start",D=j>0?"start":"end",P=o;if(n==="top"){var I={x:v+d/2,y:s-w,horizontalAnchor:"middle",verticalAnchor:A};return P&&(I.height=Math.max(s-P.y,0),I.width=d),I}if(n==="bottom"){var W={x:m+p/2,y:s+f+w,horizontalAnchor:"middle",verticalAnchor:C};return P&&(W.height=Math.max(P.y+P.height-(s+f),0),W.width=p),W}if(n==="left"){var ie={x:b-N,y:s+f/2,horizontalAnchor:M,verticalAnchor:"middle"};return P&&(ie.width=Math.max(ie.x-P.x,0),ie.height=f),ie}if(n==="right"){var F={x:b+x+N,y:s+f/2,horizontalAnchor:D,verticalAnchor:"middle"};return P&&(F.width=Math.max(P.x+P.width-F.x,0),F.height=f),F}var U=P?{width:x,height:f}:{};return n==="insideLeft"?zr({x:b+N,y:s+f/2,horizontalAnchor:D,verticalAnchor:"middle"},U):n==="insideRight"?zr({x:b+x-N,y:s+f/2,horizontalAnchor:M,verticalAnchor:"middle"},U):n==="insideTop"?zr({x:v+d/2,y:s+w,horizontalAnchor:"middle",verticalAnchor:C},U):n==="insideBottom"?zr({x:m+p/2,y:s+f-w,horizontalAnchor:"middle",verticalAnchor:A},U):n==="insideTopLeft"?zr({x:v+N,y:s+w,horizontalAnchor:D,verticalAnchor:C},U):n==="insideTopRight"?zr({x:v+d-N,y:s+w,horizontalAnchor:M,verticalAnchor:C},U):n==="insideBottomLeft"?zr({x:m+N,y:s+f-w,horizontalAnchor:D,verticalAnchor:A},U):n==="insideBottomRight"?zr({x:m+p-N,y:s+f-w,horizontalAnchor:M,verticalAnchor:A},U):n&&typeof n=="object"&&(ye(n.x)||io(n.x))&&(ye(n.y)||io(n.y))?zr({x:l+hi(n.x,x),y:s+hi(n.y,f),horizontalAnchor:"end",verticalAnchor:"end"},U):zr({x:O,y:s+f/2,horizontalAnchor:"middle",verticalAnchor:"middle"},U)},UG=["labelRef"],$G=["content"];function x_(e,t){if(e==null)return{};var n,r,o=qG(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{var{x:t,y:n,upperWidth:r,lowerWidth:o,width:l,height:s,children:f}=e,d=g.useMemo(()=>({x:t,y:n,upperWidth:r,lowerWidth:o,width:l,height:s}),[t,n,r,o,l,s]);return g.createElement(ZD.Provider,{value:d},f)},QD=()=>{var e=g.useContext(ZD),t=ap();return e||(t?T0(t):void 0)},VG=g.createContext(null),FG=()=>{var e=g.useContext(VG),t=we(NM);return e||t},XG=e=>{var{value:t,formatter:n}=e,r=$t(e.children)?t:e.children;return typeof n=="function"?n(r):r},Pb=e=>e!=null&&typeof e=="function",WG=(e,t)=>{var n=lr(t-e),r=Math.min(Math.abs(t-e),360);return n*r},ZG=(e,t,n,r,o)=>{var{offset:l,className:s}=e,{cx:f,cy:d,innerRadius:p,outerRadius:v,startAngle:m,endAngle:b,clockWise:x}=o,O=(p+v)/2,S=WG(m,b),w=S>=0?1:-1,A,C;switch(t){case"insideStart":A=m+w*l,C=x;break;case"insideEnd":A=b-w*l,C=!x;break;case"end":A=b+w*l,C=x;break;default:throw new Error("Unsupported position ".concat(t))}C=S<=0?C:!C;var j=Jt(f,d,O,A),N=Jt(f,d,O,A+(C?1:-1)*359),M="M".concat(j.x,",").concat(j.y,` A`).concat(O,",").concat(O,",0,1,").concat(C?0:1,`, - `).concat(N.x,",").concat(N.y),D=$t(e.id)?Ju("recharts-radial-line-"):e.id;return g.createElement("text",va({},r,{dominantBaseline:"central",className:qe("recharts-radial-bar-label",s)}),g.createElement("defs",null,g.createElement("path",{id:D,d:M})),g.createElement("textPath",{xlinkHref:"#".concat(D)},n))},QG=(e,t,n)=>{var{cx:r,cy:o,innerRadius:l,outerRadius:s,startAngle:f,endAngle:d}=e,p=(f+d)/2;if(n==="outside"){var{x:v,y:m}=Jt(r,o,s+t,p);return{x:v,y:m,textAnchor:v>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:o,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:o,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:o,textAnchor:"middle",verticalAnchor:"end"};var b=(l+s)/2,{x,y:O}=Jt(r,o,b,p);return{x,y:O,textAnchor:"middle",verticalAnchor:"middle"}},_f=e=>e!=null&&"cx"in e&&ye(e.cx),JG={angle:0,offset:5,zIndex:ln.label,position:"middle",textBreakAll:!1};function eV(e){if(!_f(e))return e;var{cx:t,cy:n,outerRadius:r}=e,o=r*2;return{x:t-r,y:n-r,width:o,upperWidth:o,lowerWidth:o,height:o}}function fi(e){var t=sn(e,JG),{viewBox:n,parentViewBox:r,position:o,value:l,children:s,content:f,className:d="",textBreakAll:p,labelRef:v}=t,m=FG(),b=QD(),x=o==="center"?b:m??b,O,S,w;n==null?O=x:_f(n)?O=n:O=T0(n);var A=eV(O);if(!O||$t(l)&&$t(s)&&!g.isValidElement(f)&&typeof f!="function")return null;var C=Wu(Wu({},t),{},{viewBox:O});if(g.isValidElement(f)){var{labelRef:j}=C,N=x_(C,UG);return g.cloneElement(f,N)}if(typeof f=="function"){var{content:M}=C,D=x_(C,$G);if(S=g.createElement(f,D),g.isValidElement(S))return S}else S=XG(t);var P=un(t);if(_f(O)){if(o==="insideStart"||o==="insideEnd"||o==="end")return ZG(t,o,S,P,O);w=QG(O,t.offset,t.position)}else{if(!A)return null;var I=BG({viewBox:A,position:o,offset:t.offset,parentViewBox:_f(r)?void 0:r});w=Wu(Wu({x:I.x,y:I.y,textAnchor:I.horizontalAnchor,verticalAnchor:I.verticalAnchor},I.width!==void 0?{width:I.width}:{}),I.height!==void 0?{height:I.height}:{})}return g.createElement(Vr,{zIndex:t.zIndex},g.createElement(Db,va({ref:v,className:qe("recharts-label",d)},P,w,{textAnchor:MG(P.textAnchor)?P.textAnchor:w.textAnchor,breakAll:p}),S))}fi.displayName="Label";var tV=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?g.createElement(fi,va({key:"label-implicit"},r)):Kr(e)?g.createElement(fi,va({key:"label-implicit",value:e},r)):g.isValidElement(e)?e.type===fi?g.cloneElement(e,Wu({key:"label-implicit"},r)):g.createElement(fi,va({key:"label-implicit",content:e},r)):Pb(e)?g.createElement(fi,va({key:"label-implicit",content:e},r)):e&&typeof e=="object"?g.createElement(fi,va({},e,{key:"label-implicit"},r)):null};function nV(e){var{label:t,labelRef:n}=e,r=QD();return tV(t,r,n)||null}var jy={},Ty={},S_;function rV(){return S_||(S_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n[n.length-1]}e.last=t})(Ty)),Ty}var Cy={},O_;function aV(){return O_||(O_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Array.isArray(n)?n:Array.from(n)}e.toArray=t})(Cy)),Cy}var E_;function iV(){return E_||(E_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rV(),n=aV(),r=g0();function o(l){if(r.isArrayLike(l))return t.last(n.toArray(l))}e.last=o})(jy)),jy}var Ny,A_;function oV(){return A_||(A_=1,Ny=iV().last),Ny}var lV=oV();const uV=Er(lV);var sV=["valueAccessor"],cV=["dataKey","clockWise","id","textBreakAll","zIndex"];function Sd(){return Sd=Object.assign?Object.assign.bind():function(e){for(var t=1;tArray.isArray(e.value)?uV(e.value):e.value,JD=g.createContext(void 0),eP=JD.Provider,tP=g.createContext(void 0);tP.Provider;function pV(){return g.useContext(JD)}function mV(){return g.useContext(tP)}function jf(e){var{valueAccessor:t=dV}=e,n=__(e,sV),{dataKey:r,clockWise:o,id:l,textBreakAll:s,zIndex:f}=n,d=__(n,cV),p=pV(),v=mV(),m=p||v;return!m||!m.length?null:g.createElement(Vr,{zIndex:f??ln.label},g.createElement(cr,{className:"recharts-label-list"},m.map((b,x)=>{var O,S=$t(r)?t(b,x):Mt(b.payload,r),w=$t(l)?{}:{id:"".concat(l,"-").concat(x)};return g.createElement(fi,Sd({key:"label-".concat(x)},un(b),d,w,{fill:(O=n.fill)!==null&&O!==void 0?O:b.fill,parentViewBox:b.parentViewBox,value:S,textBreakAll:s,viewBox:b.viewBox,index:x,zIndex:0}))})))}jf.displayName="LabelList";function nP(e){var{label:t}=e;return t?t===!0?g.createElement(jf,{key:"labelList-implicit"}):g.isValidElement(t)||Pb(t)?g.createElement(jf,{key:"labelList-implicit",content:t}):typeof t=="object"?g.createElement(jf,Sd({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function zg(){return zg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{cx:t,cy:n,r,className:o}=e,l=qe("recharts-dot",o);return ye(t)&&ye(n)&&ye(r)?g.createElement("circle",zg({},sr(e),y0(e),{className:l,cx:t,cy:n,r})):null},vV={radiusAxis:{},angleAxis:{}},aP=kn({name:"polarAxis",initialState:vV,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:bJ,removeRadiusAxis:xJ,addAngleAxis:wJ,removeAngleAxis:SJ}=aP.actions,hV=aP.reducer;function yV(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var kb=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,My={},j_;function gV(){return j_||(j_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const o=n[Symbol.toStringTag];return o==null||!Object.getOwnPropertyDescriptor(n,Symbol.toStringTag)?.writable?!1:n.toString()===`[object ${o}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(My)),My}var Dy,T_;function bV(){return T_||(T_=1,Dy=gV().isPlainObject),Dy}var xV=bV();const wV=Er(xV);var C_,N_,M_,D_,P_;function k_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function R_(e){for(var t=1;t{var l=n-r,s;return s=yt(C_||(C_=Vu(["M ",",",""])),e,t),s+=yt(N_||(N_=Vu(["L ",",",""])),e+n,t),s+=yt(M_||(M_=Vu(["L ",",",""])),e+n-l/2,t+o),s+=yt(D_||(D_=Vu(["L ",",",""])),e+n-l/2-r,t+o),s+=yt(P_||(P_=Vu(["L ",","," Z"])),e,t),s},AV={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},_V=e=>{var t=sn(e,AV),{x:n,y:r,upperWidth:o,lowerWidth:l,height:s,className:f}=t,{animationEasing:d,animationDuration:p,animationBegin:v,isUpdateAnimationActive:m}=t,b=g.useRef(null),[x,O]=g.useState(-1),S=g.useRef(o),w=g.useRef(l),A=g.useRef(s),C=g.useRef(n),j=g.useRef(r),N=sp(e,"trapezoid-");if(g.useEffect(()=>{if(b.current&&b.current.getTotalLength)try{var ce=b.current.getTotalLength();ce&&O(ce)}catch{}},[]),n!==+n||r!==+r||o!==+o||l!==+l||s!==+s||o===0&&l===0||s===0)return null;var M=qe("recharts-trapezoid",f);if(!m)return g.createElement("g",null,g.createElement("path",Od({},un(t),{className:M,d:z_(n,r,o,l,s)})));var D=S.current,P=w.current,I=A.current,W=C.current,ie=j.current,F="0px ".concat(x===-1?1:x,"px"),U="".concat(x,"px 0px"),ue=EN(["strokeDasharray"],p,d);return g.createElement(up,{animationId:N,key:N,canBegin:x>0,duration:p,easing:d,isActive:m,begin:v},ce=>{var se=At(D,o,ce),z=At(P,l,ce),K=At(I,s,ce),ae=At(W,n,ce),fe=At(ie,r,ce);b.current&&(S.current=se,w.current=z,A.current=K,C.current=ae,j.current=fe);var ee=ce>0?{transition:ue,strokeDasharray:U}:{strokeDasharray:F};return g.createElement("path",Od({},un(t),{className:M,d:z_(ae,fe,se,z,K),ref:b,style:R_(R_({},ee),t.style)}))})},jV=["option","shapeType","activeClassName"];function TV(e,t){if(e==null)return{};var n,r,o=CV(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{r||(o.current===null?n(QH(t)):o.current!==t&&n(JH({prev:o.current,next:t})),o.current=t)},[t,n,r]),g.useLayoutEffect(()=>()=>{o.current&&(n(eK(o.current)),o.current=null)},[n]),null}function oP(e){var{legendPayload:t}=e,n=qt(),r=cn(),o=g.useRef(null);return g.useLayoutEffect(()=>{r||(o.current===null?n(NU(t)):o.current!==t&&n(MU({prev:o.current,next:t})),o.current=t)},[n,r,t]),g.useLayoutEffect(()=>()=>{o.current&&(n(DU(o.current)),o.current=null)},[n]),null}var Py,IV=()=>{var[e]=g.useState(()=>Ju("uid-"));return e},LV=(Py=Pd.useId)!==null&&Py!==void 0?Py:IV;function BV(e,t){var n=LV();return t||(e?"".concat(e,"-").concat(n):n)}var UV=g.createContext(void 0),lP=e=>{var{id:t,type:n,children:r}=e,o=BV("recharts-".concat(n),t);return g.createElement(UV.Provider,{value:o},r(o))},$V={cartesianItems:[],polarItems:[]},uP=kn({name:"graphicalItems",initialState:$V,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:ct()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,o=Sr(e).cartesianItems.indexOf(n);o>-1&&(e.cartesianItems[o]=r)},prepare:ct()},removeCartesianGraphicalItem:{reducer(e,t){var n=Sr(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:ct()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:ct()},removePolarGraphicalItem:{reducer(e,t){var n=Sr(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:ct()}}}),{addCartesianGraphicalItem:qV,replaceCartesianGraphicalItem:HV,removeCartesianGraphicalItem:KV,addPolarGraphicalItem:OJ,removePolarGraphicalItem:EJ}=uP.actions,YV=uP.reducer,GV=e=>{var t=qt(),n=g.useRef(null);return g.useLayoutEffect(()=>{n.current===null?t(qV(e)):n.current!==e&&t(HV({prev:n.current,next:e})),n.current=e},[t,e]),g.useLayoutEffect(()=>()=>{n.current&&(t(KV(n.current)),n.current=null)},[t]),null},sP=g.memo(GV),VV=["points"];function B_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function ky(e){for(var t=1;t{var w,A,C=ky(ky(ky({r:3},s),m),{},{index:S,cx:(w=O.x)!==null&&w!==void 0?w:void 0,cy:(A=O.y)!==null&&A!==void 0?A:void 0,dataKey:l,value:O.value,payload:O.payload,points:t});return g.createElement(JV,{key:"dot-".concat(S),option:n,dotProps:C,className:o})}),x={};return f&&d!=null&&(x.clipPath="url(#clipPath-".concat(v?"":"dots-").concat(d,")")),g.createElement(Vr,{zIndex:p},g.createElement(cr,Ad({className:r},x),b))}function U_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function $_(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),mF=G([pF,_a,ja],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),Cp=()=>we(mF),vF=()=>we(GK);function q_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function Ry(e){for(var t=1;t{var{point:t,childIndex:n,mainColor:r,activeDot:o,dataKey:l,clipPath:s}=e;if(o===!1||t.x==null||t.y==null)return null;var f={index:n,dataKey:l,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},d=Ry(Ry(Ry({},f),Ld(o)),y0(o)),p;return g.isValidElement(o)?p=g.cloneElement(o,d):typeof o=="function"?p=o(d):p=g.createElement(rP,d),g.createElement(cr,{className:"recharts-active-dot",clipPath:s},p)};function Ig(e){var{points:t,mainColor:n,activeDot:r,itemDataKey:o,clipPath:l,zIndex:s=ln.activeDot}=e,f=we(ds),d=vF();if(t==null||d==null)return null;var p=t.find(v=>d.includes(v.payload));return $t(p)?null:g.createElement(Vr,{zIndex:s},g.createElement(bF,{point:p,childIndex:Number(f),mainColor:n,dataKey:o,activeDot:r,clipPath:l}))}var xF=e=>{var{chartData:t}=e,n=qt(),r=cn();return g.useEffect(()=>r?()=>{}:(n(r_(t)),()=>{n(r_(void 0))}),[t,n,r]),null},H_={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},pP=kn({name:"brush",initialState:H_,reducers:{setBrushSettings(e,t){return t.payload==null?H_:t.payload}}}),{setBrushSettings:TJ}=pP.actions,wF=pP.reducer;function SF(e){return(e%180+180)%180}var OF=function(t){var{width:n,height:r}=t,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=SF(o),s=l*Math.PI/180,f=Math.atan(r/n),d=s>f&&s{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Sr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Sr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=Sr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:CJ,removeDot:NJ,addArea:MJ,removeArea:DJ,addLine:PJ,removeLine:kJ}=mP.actions,AF=mP.reducer,_F=g.createContext(void 0),jF=e=>{var{children:t}=e,[n]=g.useState("".concat(Ju("recharts"),"-clip")),r=Cp();if(r==null)return null;var{x:o,y:l,width:s,height:f}=r;return g.createElement(_F.Provider,{value:n},g.createElement("defs",null,g.createElement("clipPath",{id:n},g.createElement("rect",{x:o,y:l,height:f,width:s}))),t)};function vP(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*o)return!1;var l=n();return e*(t-e*l/2-r)>=0&&e*(t+e*l/2-o)<=0}function NF(e,t){return vP(e,t+1)}function MF(e,t,n,r,o){for(var l=(r||[]).slice(),{start:s,end:f}=t,d=0,p=1,v=s,m=function(){var O=r?.[d];if(O===void 0)return{v:vP(r,p)};var S=d,w,A=()=>(w===void 0&&(w=n(O,S)),w),C=O.coordinate,j=d===0||ms(e,C,A,v,f);j||(d=0,v=s,p+=1),j&&(v=C+e*(A()/2+o),d+=p)},b;p<=l.length;)if(b=m(),b)return b.v;return[]}function DF(e,t,n,r,o){var l=(r||[]).slice(),s=l.length;if(s===0)return[];for(var{start:f,end:d}=t,p=1;p<=s;p++){for(var v=(s-1)%p,m=f,b=!0,x=function(){var N=r[S];if(N==null)return 0;var M=S,D,P=()=>(D===void 0&&(D=n(N,M)),D),I=N.coordinate,W=S===v||ms(e,I,P,m,d);if(!W)return b=!1,1;W&&(m=I+e*(P()/2+o))},O,S=v;S(S===void 0&&(S=n(x,b)),S);if(b===s-1){var A=e*(O.coordinate+e*w()/2-d);l[b]=O=an(an({},O),{},{tickCoord:A>0?O.coordinate-A*e:O.coordinate})}else l[b]=O=an(an({},O),{},{tickCoord:O.coordinate});if(O.tickCoord!=null){var C=ms(e,O.tickCoord,w,f,d);C&&(d=O.tickCoord-e*(w()/2+o),l[b]=an(an({},O),{},{isShow:!0}))}},v=s-1;v>=0;v--)p(v);return l}function IF(e,t,n,r,o,l){var s=(r||[]).slice(),f=s.length,{start:d,end:p}=t;if(l){var v=r[f-1];if(v!=null){var m=n(v,f-1),b=e*(v.coordinate+e*m/2-p);if(s[f-1]=v=an(an({},v),{},{tickCoord:b>0?v.coordinate-b*e:v.coordinate}),v.tickCoord!=null){var x=ms(e,v.tickCoord,()=>m,d,p);x&&(p=v.tickCoord-e*(m/2+o),s[f-1]=an(an({},v),{},{isShow:!0}))}}}for(var O=l?f-1:f,S=function(C){var j=s[C];if(j==null)return 1;var N=j,M,D=()=>(M===void 0&&(M=n(j,C)),M);if(C===0){var P=e*(N.coordinate-e*D()/2-d);s[C]=N=an(an({},N),{},{tickCoord:P<0?N.coordinate-P*e:N.coordinate})}else s[C]=N=an(an({},N),{},{tickCoord:N.coordinate});if(N.tickCoord!=null){var I=ms(e,N.tickCoord,D,d,p);I&&(d=N.tickCoord+e*(D()/2+o),s[C]=an(an({},N),{},{isShow:!0}))}},w=0;w{var P=typeof p=="function"?p(M.value,D):M.value;return O==="width"?TF(Qu(P,{fontSize:t,letterSpacing:n}),S,m):Qu(P,{fontSize:t,letterSpacing:n})[O]},A=o[0],C=o[1],j=o.length>=2&&A!=null&&C!=null?lr(C.coordinate-A.coordinate):1,N=CF(l,j,O);return d==="equidistantPreserveStart"?MF(j,N,w,o,s):d==="equidistantPreserveEnd"?DF(j,N,w,o,s):(d==="preserveStart"||d==="preserveStartEnd"?x=IF(j,N,w,o,s,d==="preserveStartEnd"):x=zF(j,N,w,o,s),x.filter(M=>M.isShow))}var LF=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:o=0,tickMargin:l=0}=e,s=0;if(t){Array.from(t).forEach(v=>{if(v){var m=v.getBoundingClientRect();m.width>s&&(s=m.width)}});var f=n?n.getBoundingClientRect().width:0,d=o+l,p=s+d+f+(n?r:0);return Math.round(p)}return 0},BF=["axisLine","width","height","className","hide","ticks","axisType"];function UF(e,t){if(e==null)return{};var n,r,o=$F(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{var{ticks:n=[],tick:r,tickLine:o,stroke:l,tickFormatter:s,unit:f,padding:d,tickTextProps:p,orientation:v,mirror:m,x:b,y:x,width:O,height:S,tickSize:w,tickMargin:A,fontSize:C,letterSpacing:j,getTicksConfig:N,events:M,axisType:D}=e,P=Rb(ht(ht({},N),{},{ticks:n}),C,j),I=VF(v,m),W=FF(v,m),ie=sr(N),F=Ld(r),U={};typeof o=="object"&&(U=o);var ue=ht(ht({},ie),{},{fill:"none"},U),ce=P.map(K=>ht({entry:K},GF(K,b,x,O,S,v,w,m,A))),se=ce.map(K=>{var{entry:ae,line:fe}=K;return g.createElement(cr,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(ae.value,"-").concat(ae.coordinate,"-").concat(ae.tickCoord)},o&&g.createElement("line",co({},ue,fe,{className:qe("recharts-cartesian-axis-tick-line",qd(o,"className"))})))}),z=ce.map((K,ae)=>{var fe,ee,{entry:R,tick:X}=K,Q=ht(ht(ht(ht({verticalAnchor:W},ie),{},{textAnchor:I,stroke:"none",fill:l},X),{},{index:ae,payload:R,visibleTicksCount:P.length,tickFormatter:s,padding:d},p),{},{angle:(fe=(ee=p?.angle)!==null&&ee!==void 0?ee:ie.angle)!==null&&fe!==void 0?fe:0}),re=ht(ht({},Q),F);return g.createElement(cr,co({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(R.value,"-").concat(R.coordinate,"-").concat(R.tickCoord)},_L(M,R,ae)),r&&g.createElement(XF,{option:r,tickProps:re,value:"".concat(typeof s=="function"?s(R.value,ae):R.value).concat(f||"")}))});return g.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(D,"-ticks")},z.length>0&&g.createElement(Vr,{zIndex:ln.label},g.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(D,"-tick-labels"),ref:t},z)),se.length>0&&g.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(D,"-tick-lines")},se))}),ZF=g.forwardRef((e,t)=>{var{axisLine:n,width:r,height:o,className:l,hide:s,ticks:f,axisType:d}=e,p=UF(e,BF),[v,m]=g.useState(""),[b,x]=g.useState(""),O=g.useRef(null);g.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var w;return LF({ticks:O.current,label:(w=e.labelRef)===null||w===void 0?void 0:w.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=g.useCallback(w=>{if(w){var A=w.getElementsByClassName("recharts-cartesian-axis-tick-value");O.current=A;var C=A[0];if(C){var j=window.getComputedStyle(C),N=j.fontSize,M=j.letterSpacing;(N!==v||M!==b)&&(m(N),x(M))}}},[v,b]);return s||r!=null&&r<=0||o!=null&&o<=0?null:g.createElement(Vr,{zIndex:e.zIndex},g.createElement(cr,{className:qe("recharts-cartesian-axis",l)},g.createElement(YF,{x:e.x,y:e.y,width:r,height:o,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:sr(e)}),g.createElement(WF,{ref:S,axisType:d,events:p,fontSize:v,getTicksConfig:e,height:e.height,letterSpacing:b,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:f,unit:e.unit,width:e.width,x:e.x,y:e.y}),g.createElement(GG,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},g.createElement(nV,{label:e.label,labelRef:e.labelRef}),e.children)))}),zb=g.forwardRef((e,t)=>{var n=sn(e,ba);return g.createElement(ZF,co({},n,{ref:t}))});zb.displayName="CartesianAxis";var QF=["x1","y1","x2","y2","key"],JF=["offset"],eX=["xAxisId","yAxisId"],tX=["xAxisId","yAxisId"];function G_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function on(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:o,width:l,height:s,ry:f}=e;return g.createElement("rect",{x:r,y:o,ry:f,width:l,height:s,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function hP(e){var{option:t,lineItemProps:n}=e,r;if(g.isValidElement(t))r=g.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var o,{x1:l,y1:s,x2:f,y2:d,key:p}=n,v=_d(n,QF),m=(o=sr(v))!==null&&o!==void 0?o:{},{offset:b}=m,x=_d(m,JF);r=g.createElement("line",Wi({},x,{x1:l,y1:s,x2:f,y2:d,fill:"none",key:p}))}return r}function lX(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:o}=e;if(!r||!o||!o.length)return null;var{xAxisId:l,yAxisId:s}=e,f=_d(e,eX),d=o.map((p,v)=>{var m=on(on({},f),{},{x1:t,y1:p,x2:t+n,y2:p,key:"line-".concat(v),index:v});return g.createElement(hP,{key:"line-".concat(v),option:r,lineItemProps:m})});return g.createElement("g",{className:"recharts-cartesian-grid-horizontal"},d)}function uX(e){var{y:t,height:n,vertical:r=!0,verticalPoints:o}=e;if(!r||!o||!o.length)return null;var{xAxisId:l,yAxisId:s}=e,f=_d(e,tX),d=o.map((p,v)=>{var m=on(on({},f),{},{x1:p,y1:t,x2:p,y2:t+n,key:"line-".concat(v),index:v});return g.createElement(hP,{option:r,lineItemProps:m,key:"line-".concat(v)})});return g.createElement("g",{className:"recharts-cartesian-grid-vertical"},d)}function sX(e){var{horizontalFill:t,fillOpacity:n,x:r,y:o,width:l,height:s,horizontalPoints:f,horizontal:d=!0}=e;if(!d||!t||!t.length||f==null)return null;var p=f.map(m=>Math.round(m+o-o)).sort((m,b)=>m-b);o!==p[0]&&p.unshift(0);var v=p.map((m,b)=>{var x=p[b+1],O=x==null,S=O?o+s-m:x-m;if(S<=0)return null;var w=b%t.length;return g.createElement("rect",{key:"react-".concat(b),y:m,x:r,height:S,width:l,stroke:"none",fill:t[w],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return g.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},v)}function cX(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:o,y:l,width:s,height:f,verticalPoints:d}=e;if(!t||!n||!n.length)return null;var p=d.map(m=>Math.round(m+o-o)).sort((m,b)=>m-b);o!==p[0]&&p.unshift(0);var v=p.map((m,b)=>{var x=p[b+1],O=x==null,S=O?o+s-m:x-m;if(S<=0)return null;var w=b%n.length;return g.createElement("rect",{key:"react-".concat(b),x:m,y:l,width:S,height:f,stroke:"none",fill:n[w],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return g.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},v)}var fX=(e,t)=>{var{xAxis:n,width:r,height:o,offset:l}=e;return iN(Rb(on(on(on({},ba),n),{},{ticks:oN(n),viewBox:{x:0,y:0,width:r,height:o}})),l.left,l.left+l.width,t)},dX=(e,t)=>{var{yAxis:n,width:r,height:o,offset:l}=e;return iN(Rb(on(on(on({},ba),n),{},{ticks:oN(n),viewBox:{x:0,y:0,width:r,height:o}})),l.top,l.top+l.height,t)},pX={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:ln.grid};function Lg(e){var t=pN(),n=mN(),r=dN(),o=on(on({},sn(e,pX)),{},{x:ye(e.x)?e.x:r.left,y:ye(e.y)?e.y:r.top,width:ye(e.width)?e.width:r.width,height:ye(e.height)?e.height:r.height}),{xAxisId:l,yAxisId:s,x:f,y:d,width:p,height:v,syncWithTicks:m,horizontalValues:b,verticalValues:x}=o,O=cn(),S=we(W=>Y2(W,"xAxis",l,O)),w=we(W=>Y2(W,"yAxis",s,O));if(!Yr(p)||!Yr(v)||!ye(f)||!ye(d))return null;var A=o.verticalCoordinatesGenerator||fX,C=o.horizontalCoordinatesGenerator||dX,{horizontalPoints:j,verticalPoints:N}=o;if((!j||!j.length)&&typeof C=="function"){var M=b&&b.length,D=C({yAxis:w?on(on({},w),{},{ticks:M?b:w.ticks}):void 0,width:t??p,height:n??v,offset:r},M?!0:m);Qf(Array.isArray(D),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof D,"]")),Array.isArray(D)&&(j=D)}if((!N||!N.length)&&typeof A=="function"){var P=x&&x.length,I=A({xAxis:S?on(on({},S),{},{ticks:P?x:S.ticks}):void 0,width:t??p,height:n??v,offset:r},P?!0:m);Qf(Array.isArray(I),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof I,"]")),Array.isArray(I)&&(N=I)}return g.createElement(Vr,{zIndex:o.zIndex},g.createElement("g",{className:"recharts-cartesian-grid"},g.createElement(oX,{fill:o.fill,fillOpacity:o.fillOpacity,x:o.x,y:o.y,width:o.width,height:o.height,ry:o.ry}),g.createElement(sX,Wi({},o,{horizontalPoints:j})),g.createElement(cX,Wi({},o,{verticalPoints:N})),g.createElement(lX,Wi({},o,{offset:r,horizontalPoints:j,xAxis:S,yAxis:w})),g.createElement(uX,Wi({},o,{offset:r,verticalPoints:N,xAxis:S,yAxis:w}))))}Lg.displayName="CartesianGrid";var mX={},yP=kn({name:"errorBars",initialState:mX,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:o}=t.payload;e[n]&&(e[n]=e[n].map(l=>l.dataKey===r.dataKey&&l.direction===r.direction?o:l))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(o=>o.dataKey!==r.dataKey||o.direction!==r.direction))}}}),{addErrorBar:RJ,replaceErrorBar:zJ,removeErrorBar:IJ}=yP.actions,vX=yP.reducer,hX=["children"];function yX(e,t){if(e==null)return{};var n,r,o=gX(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},xX=g.createContext(bX);function wX(e){var{children:t}=e,n=yX(e,hX);return g.createElement(xX.Provider,{value:n},t)}function Ib(e,t){var n,r,o=we(p=>Na(p,e)),l=we(p=>Ma(p,t)),s=(n=o?.allowDataOverflow)!==null&&n!==void 0?n:Lt.allowDataOverflow,f=(r=l?.allowDataOverflow)!==null&&r!==void 0?r:Bt.allowDataOverflow,d=s||f;return{needClip:d,needClipX:s,needClipY:f}}function gP(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,o=Cp(),{needClipX:l,needClipY:s,needClip:f}=Ib(t,n);if(!f||!o)return null;var{x:d,y:p,width:v,height:m}=o;return g.createElement("clipPath",{id:"clipPath-".concat(r)},g.createElement("rect",{x:l?d:d-v/2,y:s?p:p-m/2,width:l?v:v*2,height:s?m:m*2}))}var bP=(e,t,n,r)=>Tp(e,"xAxis",t,r),xP=(e,t,n,r)=>jp(e,"xAxis",t,r),wP=(e,t,n,r)=>Tp(e,"yAxis",n,r),SP=(e,t,n,r)=>jp(e,"yAxis",n,r),SX=G([nt,bP,wP,xP,SP],(e,t,n,r,o)=>jr(e,"xAxis")?Al(t,r,!1):Al(n,o,!1)),OX=(e,t,n,r,o)=>o;function EX(e){return e.type==="line"}var AX=G([pb,OX],(e,t)=>e.filter(EX).find(n=>n.id===t)),_X=G([nt,bP,wP,xP,SP,AX,SX,tb],(e,t,n,r,o,l,s,f)=>{var{chartData:d,dataStartIndex:p,dataEndIndex:v}=f;if(!(l==null||t==null||n==null||r==null||o==null||r.length===0||o.length===0||s==null||e!=="horizontal"&&e!=="vertical")){var{dataKey:m,data:b}=l,x;if(b!=null&&b.length>0?x=b:x=d?.slice(p,v+1),x!=null)return dW({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:o,dataKey:m,bandSize:s,displayedData:x})}});function OP(e){var t=Ld(e),n=3,r=2;if(t!=null){var{r:o,strokeWidth:l}=t,s=Number(o),f=Number(l);return(Number.isNaN(s)||s<0)&&(s=n),(Number.isNaN(f)||f<0)&&(f=r),{r:s,strokeWidth:f}}return{r:n,strokeWidth:r}}var zy={exports:{}},Iy={};var V_;function jX(){if(V_)return Iy;V_=1;var e=Nl();function t(d,p){return d===p&&(d!==0||1/d===1/p)||d!==d&&p!==p}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,o=e.useRef,l=e.useEffect,s=e.useMemo,f=e.useDebugValue;return Iy.useSyncExternalStoreWithSelector=function(d,p,v,m,b){var x=o(null);if(x.current===null){var O={hasValue:!1,value:null};x.current=O}else O=x.current;x=s(function(){function w(M){if(!A){if(A=!0,C=M,M=m(M),b!==void 0&&O.hasValue){var D=O.value;if(b(D,M))return j=D}return j=M}if(D=j,n(C,M))return D;var P=m(M);return b!==void 0&&b(D,P)?(C=M,D):(C=M,j=P)}var A=!1,C,j,N=v===void 0?null:v;return[function(){return w(p())},N===null?void 0:function(){return w(N())}]},[p,v,m,b]);var S=r(d,x[0],x[1]);return l(function(){O.hasValue=!0,O.value=S},[S]),f(S),S},Iy}var F_;function TX(){return F_||(F_=1,zy.exports=jX()),zy.exports}TX();function CX(e){e()}function NX(){let e=null,t=null;return{clear(){e=null,t=null},notify(){CX(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const o=t={callback:n,next:null,prev:t};return o.prev?o.prev.next=o:e=o,function(){!r||e===null||(r=!1,o.next?o.next.prev=o.prev:t=o.prev,o.prev?o.prev.next=o.next:e=o.next)}}}}var X_={notify(){},get:()=>[]};function MX(e,t){let n,r=X_,o=0,l=!1;function s(S){v();const w=r.subscribe(S);let A=!1;return()=>{A||(A=!0,w(),m())}}function f(){r.notify()}function d(){O.onStateChange&&O.onStateChange()}function p(){return l}function v(){o++,n||(n=e.subscribe(d),r=NX())}function m(){o--,n&&o===0&&(n(),n=void 0,r.clear(),r=X_)}function b(){l||(l=!0,v())}function x(){l&&(l=!1,m())}const O={addNestedSub:s,notifyNestedSubs:f,handleChangeWrapper:d,isSubscribed:p,trySubscribe:b,tryUnsubscribe:x,getListeners:()=>r};return O}var DX=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",PX=DX(),kX=()=>typeof navigator<"u"&&navigator.product==="ReactNative",RX=kX(),zX=()=>PX||RX?g.useLayoutEffect:g.useEffect,IX=zX();function W_(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function LX(e,t){if(W_(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let o=0;o{const d=MX(o);return{store:o,subscription:d,getServerState:r?()=>r:void 0}},[o,r]),s=g.useMemo(()=>o.getState(),[o]);IX(()=>{const{subscription:d}=l;return d.onStateChange=d.notifyNestedSubs,d.trySubscribe(),s!==o.getState()&&d.notifyNestedSubs(),()=>{d.tryUnsubscribe(),d.onStateChange=void 0}},[l,s]);const f=n||qX;return g.createElement(f.Provider,{value:l},t)}var KX=HX,YX=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function GX(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Np(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(YX.has(r)){if(e[r]==null&&t[r]==null)continue;if(!LX(e[r],t[r]))return!1}else if(!GX(e[r],t[r]))return!1;return!0}var VX=["id"],FX=["type","layout","connectNulls","needClip","shape"],XX=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function vs(){return vs=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,legendType:o,hide:l}=e;return[{inactive:l,dataKey:t,type:o,color:r,value:Jd(n,t),payload:e}]},tW=g.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:o,fill:l,name:s,hide:f,unit:d,tooltipType:p,id:v}=e,m={dataDefinedOnItem:n,getPosition:mo,settings:{stroke:r,strokeWidth:o,fill:l,dataKey:t,nameKey:void 0,name:Jd(s,t),hide:f,type:p,color:r,unit:d,graphicalItemId:v}};return g.createElement(iP,{tooltipEntrySettings:m})}),EP=(e,t)=>"".concat(t,"px ").concat(e-t,"px");function nW(e,t){for(var n=e.length%2!==0?[...e,0]:e,r=[],o=0;o{var r=n.reduce((x,O)=>x+O);if(!r)return EP(t,e);for(var o=Math.floor(e/r),l=e%r,s=t-e,f=[],d=0,p=0;dl){f=[...n.slice(0,d),l-p];break}}var b=f.length%2===0?[0,s]:[s];return[...nW(n,o),...f,...b].map(x=>"".concat(x,"px")).join(", ")};function aW(e){var{clipPathId:t,points:n,props:r}=e,{dot:o,dataKey:l,needClip:s}=r,{id:f}=r,d=Lb(r,VX),p=sr(d);return g.createElement(cP,{points:n,dot:o,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:l,baseProps:p,needClip:s,clipPathId:t})}function iW(e){var{showLabels:t,children:n,points:r}=e,o=g.useMemo(()=>r?.map(l=>{var s,f,d={x:(s=l.x)!==null&&s!==void 0?s:0,y:(f=l.y)!==null&&f!==void 0?f:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Lr(Lr({},d),{},{value:l.value,payload:l.payload,viewBox:d,parentViewBox:void 0,fill:void 0})}),[r]);return g.createElement(eP,{value:t?o:void 0},n)}function Q_(e){var{clipPathId:t,pathRef:n,points:r,strokeDasharray:o,props:l}=e,{type:s,layout:f,connectNulls:d,needClip:p,shape:v}=l,m=Lb(l,FX),b=Lr(Lr({},un(m)),{},{fill:"none",className:"recharts-line-curve",clipPath:p?"url(#clipPath-".concat(t,")"):void 0,points:r,type:s,layout:f,connectNulls:d,strokeDasharray:o??l.strokeDasharray});return g.createElement(g.Fragment,null,r?.length>1&&g.createElement(zV,vs({shapeType:"curve",option:v},b,{pathRef:n})),g.createElement(aW,{points:r,clipPathId:t,props:l}))}function oW(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function lW(e){var{clipPathId:t,props:n,pathRef:r,previousPointsRef:o,longestAnimatedLengthRef:l}=e,{points:s,strokeDasharray:f,isAnimationActive:d,animationBegin:p,animationDuration:v,animationEasing:m,animateNewValues:b,width:x,height:O,onAnimationEnd:S,onAnimationStart:w}=n,A=o.current,C=sp(s,"recharts-line-"),j=g.useRef(C),[N,M]=g.useState(!1),D=!N,P=g.useCallback(()=>{typeof S=="function"&&S(),M(!1)},[S]),I=g.useCallback(()=>{typeof w=="function"&&w(),M(!0)},[w]),W=oW(r.current),ie=g.useRef(0);j.current!==C&&(ie.current=l.current,j.current=C);var F=ie.current;return g.createElement(iW,{points:s,showLabels:D},n.children,g.createElement(up,{animationId:C,begin:p,duration:v,isActive:d,easing:m,onAnimationEnd:P,onAnimationStart:I,key:C},U=>{var ue=At(F,W+F,U),ce=Math.min(ue,W),se;if(d)if(f){var z="".concat(f).split(/[,\s]+/gim).map(fe=>parseFloat(fe));se=rW(ce,W,z)}else se=EP(W,ce);else se=f==null?void 0:String(f);if(U>0&&W>0&&(o.current=s,l.current=Math.max(l.current,ce)),A){var K=A.length/s.length,ae=U===1?s:s.map((fe,ee)=>{var R=Math.floor(ee*K);if(A[R]){var X=A[R];return Lr(Lr({},fe),{},{x:At(X.x,fe.x,U),y:At(X.y,fe.y,U)})}return b?Lr(Lr({},fe),{},{x:At(x*2,fe.x,U),y:At(O/2,fe.y,U)}):Lr(Lr({},fe),{},{x:fe.x,y:fe.y})});return o.current=ae,g.createElement(Q_,{props:n,points:ae,clipPathId:t,pathRef:r,strokeDasharray:se})}return g.createElement(Q_,{props:n,points:s,clipPathId:t,pathRef:r,strokeDasharray:se})}),g.createElement(nP,{label:n.label}))}function uW(e){var{clipPathId:t,props:n}=e,r=g.useRef(null),o=g.useRef(0),l=g.useRef(null);return g.createElement(lW,{props:n,clipPathId:t,previousPointsRef:r,longestAnimatedLengthRef:o,pathRef:l})}var sW=(e,t)=>{var n,r;return{x:(n=e.x)!==null&&n!==void 0?n:void 0,y:(r=e.y)!==null&&r!==void 0?r:void 0,value:e.value,errorVal:Mt(e.payload,t)}};class cW extends g.Component{render(){var{hide:t,dot:n,points:r,className:o,xAxisId:l,yAxisId:s,top:f,left:d,width:p,height:v,id:m,needClip:b,zIndex:x}=this.props;if(t)return null;var O=qe("recharts-line",o),S=m,{r:w,strokeWidth:A}=OP(n),C=kb(n),j=w*2+A,N=b?"url(#clipPath-".concat(C?"":"dots-").concat(S,")"):void 0;return g.createElement(Vr,{zIndex:x},g.createElement(cr,{className:O},b&&g.createElement("defs",null,g.createElement(gP,{clipPathId:S,xAxisId:l,yAxisId:s}),!C&&g.createElement("clipPath",{id:"clipPath-dots-".concat(S)},g.createElement("rect",{x:d-j/2,y:f-j/2,width:p+j,height:v+j}))),g.createElement(wX,{xAxisId:l,yAxisId:s,data:r,dataPointFormatter:sW,errorBarOffset:0},g.createElement(uW,{props:this.props,clipPathId:S}))),g.createElement(Ig,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:N}))}}var AP={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:ln.line,type:"linear"};function fW(e){var t=sn(e,AP),{activeDot:n,animateNewValues:r,animationBegin:o,animationDuration:l,animationEasing:s,connectNulls:f,dot:d,hide:p,isAnimationActive:v,label:m,legendType:b,xAxisId:x,yAxisId:O,id:S}=t,w=Lb(t,XX),{needClip:A}=Ib(x,O),C=Cp(),j=vo(),N=cn(),M=we(ie=>_X(ie,x,O,N,S));if(j!=="horizontal"&&j!=="vertical"||M==null||C==null)return null;var{height:D,width:P,x:I,y:W}=C;return g.createElement(cW,vs({},w,{id:S,connectNulls:f,dot:d,activeDot:n,animateNewValues:r,animationBegin:o,animationDuration:l,animationEasing:s,isAnimationActive:v,hide:p,label:m,legendType:b,xAxisId:x,yAxisId:O,points:M,layout:j,height:D,width:P,left:I,top:W,needClip:A}))}function dW(e){var{layout:t,xAxis:n,yAxis:r,xAxisTicks:o,yAxisTicks:l,dataKey:s,bandSize:f,displayedData:d}=e;return d.map((p,v)=>{var m=Mt(p,s);if(t==="horizontal"){var b=Zf({axis:n,ticks:o,bandSize:f,entry:p,index:v}),x=$t(m)?null:r.scale.map(m);return{x:b,y:x??null,value:m,payload:p}}var O=$t(m)?null:n.scale.map(m),S=Zf({axis:r,ticks:l,bandSize:f,entry:p,index:v});return O==null||S==null?null:{x:O,y:S,value:m,payload:p}}).filter(Boolean)}function pW(e){var t=sn(e,AP),n=cn();return g.createElement(lP,{id:t.id,type:"line"},r=>g.createElement(g.Fragment,null,g.createElement(oP,{legendPayload:eW(t)}),g.createElement(tW,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),g.createElement(sP,{type:"line",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),g.createElement(fW,vs({},t,{id:r}))))}var Bg=g.memo(pW,Np);Bg.displayName="Line";function Bb(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(o=>o.id===t))===null||r===void 0?void 0:r.xAxisId)!==null&&n!==void 0?n:fP}function Ub(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(o=>o.id===t))===null||r===void 0?void 0:r.yAxisId)!==null&&n!==void 0?n:fP}var _P=(e,t,n)=>Tp(e,"xAxis",Bb(e,t),n),jP=(e,t,n)=>jp(e,"xAxis",Bb(e,t),n),TP=(e,t,n)=>Tp(e,"yAxis",Ub(e,t),n),CP=(e,t,n)=>jp(e,"yAxis",Ub(e,t),n),mW=G([nt,_P,TP,jP,CP],(e,t,n,r,o)=>jr(e,"xAxis")?Al(t,r,!1):Al(n,o,!1)),vW=(e,t)=>t,NP=G([pb,vW],(e,t)=>e.filter(n=>n.type==="area").find(n=>n.id===t)),MP=e=>{var t=nt(e),n=jr(t,"xAxis");return n?"yAxis":"xAxis"},hW=(e,t)=>{var n=MP(e);return n==="yAxis"?Ub(e,t):Bb(e,t)},yW=(e,t,n)=>KM(e,MP(e),hW(e,t),n),gW=G([NP,yW],(e,t)=>{var n;if(!(e==null||t==null)){var{stackId:r}=e,o=cb(e);if(!(r==null||o==null)){var l=(n=t[r])===null||n===void 0?void 0:n.stackedData,s=l?.find(f=>f.key===o);if(s!=null)return s.map(f=>[f[0],f[1]])}}}),bW=G([nt,_P,TP,jP,CP,gW,Nq,mW,NP,Bq],(e,t,n,r,o,l,s,f,d,p)=>{var{chartData:v,dataStartIndex:m,dataEndIndex:b}=s;if(!(d==null||e!=="horizontal"&&e!=="vertical"||t==null||n==null||r==null||o==null||r.length===0||o.length===0||f==null)){var{data:x}=d,O;if(x&&x.length>0?O=x:O=v?.slice(m,b+1),O!=null)return LW({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:o,dataStartIndex:m,areaSettings:d,stackedData:l,displayedData:O,chartBaseValue:p,bandSize:f})}}),xW=["id"],wW=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function to(){return to=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,fill:o,legendType:l,hide:s}=e;return[{inactive:s,dataKey:t,type:l,color:jd(r,o),value:Jd(n,t),payload:e}]},jW=g.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:o,fill:l,name:s,hide:f,unit:d,tooltipType:p,id:v}=e,m={dataDefinedOnItem:n,getPosition:mo,settings:{stroke:r,strokeWidth:o,fill:l,dataKey:t,nameKey:void 0,name:Jd(s,t),hide:f,type:p,color:jd(r,l),unit:d,graphicalItemId:v}};return g.createElement(iP,{tooltipEntrySettings:m})});function TW(e){var{clipPathId:t,points:n,props:r}=e,{needClip:o,dot:l,dataKey:s}=r,f=sr(r);return g.createElement(cP,{points:n,dot:l,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:s,baseProps:f,needClip:o,clipPathId:t})}function CW(e){var{showLabels:t,children:n,points:r}=e,o=r.map(l=>{var s,f,d={x:(s=l.x)!==null&&s!==void 0?s:0,y:(f=l.y)!==null&&f!==void 0?f:0,width:0,lowerWidth:0,upperWidth:0,height:0};return hl(hl({},d),{},{value:l.value,payload:l.payload,parentViewBox:void 0,viewBox:d,fill:void 0})});return g.createElement(eP,{value:t?o:void 0},n)}function ej(e){var{points:t,baseLine:n,needClip:r,clipPathId:o,props:l}=e,{layout:s,type:f,stroke:d,connectNulls:p,isRange:v}=l,{id:m}=l,b=DP(l,xW),x=sr(b),O=un(b);return g.createElement(g.Fragment,null,t?.length>1&&g.createElement(cr,{clipPath:r?"url(#clipPath-".concat(o,")"):void 0},g.createElement(Zu,to({},O,{id:m,points:t,connectNulls:p,type:f,baseLine:n,layout:s,stroke:"none",className:"recharts-area-area"})),d!=="none"&&g.createElement(Zu,to({},x,{className:"recharts-area-curve",layout:s,type:f,connectNulls:p,fill:"none",points:t})),d!=="none"&&v&&g.createElement(Zu,to({},x,{className:"recharts-area-curve",layout:s,type:f,connectNulls:p,fill:"none",points:n}))),g.createElement(TW,{points:t,props:b,clipPathId:o}))}function NW(e){var t,n,{alpha:r,baseLine:o,points:l,strokeWidth:s}=e,f=(t=l[0])===null||t===void 0?void 0:t.y,d=(n=l[l.length-1])===null||n===void 0?void 0:n.y;if(!ze(f)||!ze(d))return null;var p=r*Math.abs(f-d),v=Math.max(...l.map(m=>m.x||0));return ye(o)?v=Math.max(o,v):o&&Array.isArray(o)&&o.length&&(v=Math.max(...o.map(m=>m.x||0),v)),ye(v)?g.createElement("rect",{x:0,y:fm.y||0));return ye(o)?v=Math.max(o,v):o&&Array.isArray(o)&&o.length&&(v=Math.max(...o.map(m=>m.y||0),v)),ye(v)?g.createElement("rect",{x:f({points:s,baseLine:f}),[s,f]),S=sp(O,"recharts-area-"),w=C0(),[A,C]=g.useState(!1),j=!A,N=g.useCallback(()=>{typeof x=="function"&&x(),C(!1)},[x]),M=g.useCallback(()=>{typeof b=="function"&&b(),C(!0)},[b]);if(w==null)return null;var D=o.current,P=l.current;return g.createElement(CW,{showLabels:j,points:s},r.children,g.createElement(up,{animationId:S,begin:p,duration:v,isActive:d,easing:m,onAnimationEnd:N,onAnimationStart:M,key:S},I=>{if(D){var W=D.length/s.length,ie=I===1?s:s.map((U,ue)=>{var ce=Math.floor(ue*W);if(D[ce]){var se=D[ce];return hl(hl({},U),{},{x:At(se.x,U.x,I),y:At(se.y,U.y,I)})}return U}),F;return ye(f)?F=At(P,f,I):$t(f)||Hr(f)?F=At(P,0,I):F=f.map((U,ue)=>{var ce=Math.floor(ue*W);if(Array.isArray(P)&&P[ce]){var se=P[ce];return hl(hl({},U),{},{x:At(se.x,U.x,I),y:At(se.y,U.y,I)})}return U}),I>0&&(o.current=ie,l.current=F),g.createElement(ej,{points:ie,baseLine:F,needClip:t,clipPathId:n,props:r})}return I>0&&(o.current=s,l.current=f),g.createElement(cr,null,d&&g.createElement("defs",null,g.createElement("clipPath",{id:"animationClipPath-".concat(n)},g.createElement(DW,{alpha:I,points:s,baseLine:f,layout:w,strokeWidth:r.strokeWidth}))),g.createElement(cr,{clipPath:"url(#animationClipPath-".concat(n,")")},g.createElement(ej,{points:s,baseLine:f,needClip:t,clipPathId:n,props:r})))}),g.createElement(nP,{label:r.label}))}function kW(e){var{needClip:t,clipPathId:n,props:r}=e,o=g.useRef(null),l=g.useRef();return g.createElement(PW,{needClip:t,clipPathId:n,props:r,previousPointsRef:o,previousBaselineRef:l})}class RW extends g.PureComponent{render(){var{hide:t,dot:n,points:r,className:o,top:l,left:s,needClip:f,xAxisId:d,yAxisId:p,width:v,height:m,id:b,baseLine:x,zIndex:O}=this.props;if(t)return null;var S=qe("recharts-area",o),w=b,{r:A,strokeWidth:C}=OP(n),j=kb(n),N=A*2+C,M=f?"url(#clipPath-".concat(j?"":"dots-").concat(w,")"):void 0;return g.createElement(Vr,{zIndex:O},g.createElement(cr,{className:S},f&&g.createElement("defs",null,g.createElement(gP,{clipPathId:w,xAxisId:d,yAxisId:p}),!j&&g.createElement("clipPath",{id:"clipPath-dots-".concat(w)},g.createElement("rect",{x:s-N/2,y:l-N/2,width:v+N,height:m+N}))),g.createElement(kW,{needClip:f,clipPathId:w,props:this.props})),g.createElement(Ig,{points:r,mainColor:jd(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:M}),this.props.isRange&&Array.isArray(x)&&g.createElement(Ig,{points:x,mainColor:jd(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:M}))}}var PP={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,xAxisId:0,yAxisId:0,zIndex:ln.area};function zW(e){var t,n=sn(e,PP),{activeDot:r,animationBegin:o,animationDuration:l,animationEasing:s,connectNulls:f,dot:d,fill:p,fillOpacity:v,hide:m,isAnimationActive:b,legendType:x,stroke:O,xAxisId:S,yAxisId:w}=n,A=DP(n,wW),C=vo(),j=kD(),{needClip:N}=Ib(S,w),M=cn(),{points:D,isRange:P,baseLine:I}=(t=we(ce=>bW(ce,e.id,M)))!==null&&t!==void 0?t:{},W=Cp();if(C!=="horizontal"&&C!=="vertical"||W==null||j!=="AreaChart"&&j!=="ComposedChart")return null;var{height:ie,width:F,x:U,y:ue}=W;return!D||!D.length?null:g.createElement(RW,to({},A,{activeDot:r,animationBegin:o,animationDuration:l,animationEasing:s,baseLine:I,connectNulls:f,dot:d,fill:p,fillOpacity:v,height:ie,hide:m,layout:C,isAnimationActive:b==="auto"?!Os.isSsr:b,isRange:P,legendType:x,needClip:N,points:D,stroke:O,width:F,left:U,top:ue,xAxisId:S,yAxisId:w}))}var IW=(e,t,n,r,o)=>{var l=n??t;if(ye(l))return l;var s=e==="horizontal"?o:r,f=s.scale.domain();if(s.type==="number"){var d=Math.max(f[0],f[1]),p=Math.min(f[0],f[1]);return l==="dataMin"?p:l==="dataMax"||d<0?d:Math.max(Math.min(f[0],f[1]),0)}return l==="dataMin"?f[0]:l==="dataMax"?f[1]:f[0]};function LW(e){var{areaSettings:{connectNulls:t,baseValue:n,dataKey:r},stackedData:o,layout:l,chartBaseValue:s,xAxis:f,yAxis:d,displayedData:p,dataStartIndex:v,xAxisTicks:m,yAxisTicks:b,bandSize:x}=e,O=o&&o.length,S=IW(l,s,n,f,d),w=l==="horizontal",A=!1,C=p.map((N,M)=>{var D,P,I,W;if(O)W=o[v+M];else{var ie=Mt(N,r);Array.isArray(ie)?(W=ie,A=!0):W=[S,ie]}var F=(D=(P=W)===null||P===void 0?void 0:P[1])!==null&&D!==void 0?D:null,U=F==null||O&&!t&&Mt(N,r)==null;if(w){var ue;return{x:Zf({axis:f,ticks:m,bandSize:x,entry:N,index:M}),y:U?null:(ue=d.scale.map(F))!==null&&ue!==void 0?ue:null,value:W,payload:N}}return{x:U?null:(I=f.scale.map(F))!==null&&I!==void 0?I:null,y:Zf({axis:d,ticks:b,bandSize:x,entry:N,index:M}),value:W,payload:N}}),j;return O||A?j=C.map(N=>{var M,D=Array.isArray(N.value)?N.value[0]:null;if(w){var P;return{x:N.x,y:D!=null&&N.y!=null&&(P=d.scale.map(D))!==null&&P!==void 0?P:null,payload:N.payload}}return{x:D!=null&&(M=f.scale.map(D))!==null&&M!==void 0?M:null,y:N.y,payload:N.payload}}):j=w?d.scale.map(S):f.scale.map(S),{points:C,baseLine:j??0,isRange:A}}function BW(e){var t=sn(e,PP),n=cn();return g.createElement(lP,{id:t.id,type:"area"},r=>g.createElement(g.Fragment,null,g.createElement(oP,{legendPayload:_W(t)}),g.createElement(jW,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),g.createElement(sP,{type:"area",id:r,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:kB(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),g.createElement(zW,to({},t,{id:r}))))}var Ug=g.memo(BW,Np);Ug.displayName="Area";var UW=["domain","range"],$W=["domain","range"];function tj(e,t){if(e==null)return{};var n,r,o=qW(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{if(s!=null)return aj(aj({},l),{},{type:s})},[l,s]);return g.useLayoutEffect(()=>{f!=null&&(n.current===null?t(iF(f)):n.current!==f&&t(oF({prev:n.current,next:f})),n.current=f)},[f,t]),g.useLayoutEffect(()=>()=>{n.current&&(t(lF(n.current)),n.current=null)},[t]),null}var ZW=e=>{var{xAxisId:t,className:n}=e,r=we(uN),o=cn(),l="xAxis",s=we(A=>dD(A,l,t,o)),f=we(A=>RH(A,t)),d=we(A=>$H(A,t)),p=we(A=>DM(A,t));if(f==null||d==null||p==null)return null;var{dangerouslySetInnerHTML:v,ticks:m,scale:b}=e,x=qg(e,KW),{id:O,scale:S}=p,w=qg(p,YW);return g.createElement(zb,$g({},x,w,{x:d.x,y:d.y,width:f.width,height:f.height,className:qe("recharts-".concat(l," ").concat(l),n),viewBox:r,ticks:s,axisType:l}))},QW={allowDataOverflow:Lt.allowDataOverflow,allowDecimals:Lt.allowDecimals,allowDuplicatedCategory:Lt.allowDuplicatedCategory,angle:Lt.angle,axisLine:ba.axisLine,height:Lt.height,hide:!1,includeHidden:Lt.includeHidden,interval:Lt.interval,label:!1,minTickGap:Lt.minTickGap,mirror:Lt.mirror,orientation:Lt.orientation,padding:Lt.padding,reversed:Lt.reversed,scale:Lt.scale,tick:Lt.tick,tickCount:Lt.tickCount,tickLine:ba.tickLine,tickSize:ba.tickSize,type:Lt.type,xAxisId:0},JW=e=>{var t=sn(e,QW);return g.createElement(g.Fragment,null,g.createElement(WW,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit}),g.createElement(ZW,t))},Hg=g.memo(JW,kP);Hg.displayName="XAxis";var eZ=["type"],tZ=["dangerouslySetInnerHTML","ticks","scale"],nZ=["id","scale"];function Kg(){return Kg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(s!=null)return oj(oj({},l),{},{type:s})},[s,l]);return g.useLayoutEffect(()=>{f!=null&&(n.current===null?t(uF(f)):n.current!==f&&t(sF({prev:n.current,next:f})),n.current=f)},[f,t]),g.useLayoutEffect(()=>()=>{n.current&&(t(cF(n.current)),n.current=null)},[t]),null}function uZ(e){var{yAxisId:t,className:n,width:r,label:o}=e,l=g.useRef(null),s=g.useRef(null),f=we(uN),d=cn(),p=qt(),v="yAxis",m=we(D=>KH(D,t)),b=we(D=>HH(D,t)),x=we(D=>dD(D,v,t,d)),O=we(D=>PM(D,t));if(g.useLayoutEffect(()=>{if(!(r!=="auto"||!m||Pb(o)||g.isValidElement(o)||O==null)){var D=l.current;if(D){var P=D.getCalculatedWidth();Math.round(m.width)!==Math.round(P)&&p(fF({id:t,width:P}))}}},[x,m,p,o,t,r,O]),m==null||b==null||O==null)return null;var{dangerouslySetInnerHTML:S,ticks:w,scale:A}=e,C=Yg(e,tZ),{id:j,scale:N}=O,M=Yg(O,nZ);return g.createElement(zb,Kg({},C,M,{ref:l,labelRef:s,x:b.x,y:b.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:m.width,height:m.height,className:qe("recharts-".concat(v," ").concat(v),n),viewBox:f,ticks:x,axisType:v}))}var sZ={allowDataOverflow:Bt.allowDataOverflow,allowDecimals:Bt.allowDecimals,allowDuplicatedCategory:Bt.allowDuplicatedCategory,angle:Bt.angle,axisLine:ba.axisLine,hide:!1,includeHidden:Bt.includeHidden,interval:Bt.interval,label:!1,minTickGap:Bt.minTickGap,mirror:Bt.mirror,orientation:Bt.orientation,padding:Bt.padding,reversed:Bt.reversed,scale:Bt.scale,tick:Bt.tick,tickCount:Bt.tickCount,tickLine:ba.tickLine,tickSize:ba.tickSize,type:Bt.type,width:Bt.width,yAxisId:0},cZ=e=>{var t=sn(e,sZ);return g.createElement(g.Fragment,null,g.createElement(lZ,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter}),g.createElement(uZ,t))},Gg=g.memo(cZ,kP);Gg.displayName="YAxis";var fZ=(e,t)=>t,$b=G([fZ,nt,NM,Yt,TD,Da,aY,en],fY),qb=e=>{var t=e.currentTarget.getBoundingClientRect(),n=t.width/e.currentTarget.offsetWidth,r=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/n),chartY:Math.round((e.clientY-t.top)/r)}},RP=fr("mouseClick"),zP=bs();zP.startListening({actionCreator:RP,effect:(e,t)=>{var n=e.payload,r=$b(t.getState(),qb(n));r?.activeIndex!=null&&t.dispatch(rK({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var Vg=fr("mouseMove"),IP=bs(),gf=null;IP.startListening({actionCreator:Vg,effect:(e,t)=>{var n=e.payload;gf!==null&&cancelAnimationFrame(gf);var r=qb(n);gf=requestAnimationFrame(()=>{var o=t.getState(),l=Sb(o,o.tooltip.settings.shared);if(l==="axis"){var s=$b(o,r);s?.activeIndex!=null?t.dispatch(bD({activeIndex:s.activeIndex,activeDataKey:void 0,activeCoordinate:s.activeCoordinate})):t.dispatch(gD())}gf=null})}});function dZ(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var lj={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},LP=kn({name:"rootProps",initialState:lj,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:lj.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),pZ=LP.reducer,{updateOptions:mZ}=LP.actions,vZ=null,hZ={updatePolarOptions:(e,t)=>t.payload},BP=kn({name:"polarOptions",initialState:vZ,reducers:hZ}),{updatePolarOptions:LJ}=BP.actions,yZ=BP.reducer,UP=fr("keyDown"),$P=fr("focus"),Hb=bs();Hb.startListening({actionCreator:UP,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:o}=n.tooltip,l=e.payload;if(!(l!=="ArrowRight"&&l!=="ArrowLeft"&&l!=="Enter")){var s=Ob(o,ql(n),Ns(n),Ds(n)),f=s==null?-1:Number(s);if(!(!Number.isFinite(f)||f<0)){var d=Da(n);if(l==="Enter"){var p=wd(n,"axis","hover",String(o.index));t.dispatch(Dg({active:!o.active,activeIndex:o.index,activeCoordinate:p}));return}var v=FH(n),m=v==="left-to-right"?1:-1,b=l==="ArrowRight"?1:-1,x=f+b*m;if(!(d==null||x>=d.length||x<0)){var O=wd(n,"axis","hover",String(x));t.dispatch(Dg({active:!0,activeIndex:x.toString(),activeCoordinate:O}))}}}}}});Hb.startListening({actionCreator:$P,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:o}=n.tooltip;if(!o.active&&o.index==null){var l="0",s=wd(n,"axis","hover",String(l));t.dispatch(Dg({active:!0,activeIndex:l,activeCoordinate:s}))}}}});var ir=fr("externalEvent"),qP=bs(),Ly=new Map;qP.startListening({actionCreator:ir,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){r.persist();var o=r.type,l=Ly.get(o);l!==void 0&&cancelAnimationFrame(l);var s=requestAnimationFrame(()=>{try{var f=t.getState(),d={activeCoordinate:HK(f),activeDataKey:$K(f),activeIndex:ds(f),activeLabel:MD(f),activeTooltipIndex:ds(f),isTooltipActive:KK(f)};n(d,r)}finally{Ly.delete(o)}});Ly.set(o,s)}}});var gZ=G([Ul],e=>e.tooltipItemPayloads),bZ=G([gZ,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(l=>l.settings.graphicalItemId===n);if(r!=null){var{getPosition:o}=r;if(o!=null)return o(t)}}}),HP=fr("touchMove"),KP=bs();KP.startListening({actionCreator:HP,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){var r=t.getState(),o=Sb(r,r.tooltip.settings.shared);if(o==="axis"){var l=n.touches[0];if(l==null)return;var s=$b(r,qb({clientX:l.clientX,clientY:l.clientY,currentTarget:n.currentTarget}));s?.activeIndex!=null&&t.dispatch(bD({activeIndex:s.activeIndex,activeDataKey:void 0,activeCoordinate:s.activeCoordinate}))}else if(o==="item"){var f,d=n.touches[0];if(document.elementFromPoint==null||d==null)return;var p=document.elementFromPoint(d.clientX,d.clientY);if(!p||!p.getAttribute)return;var v=p.getAttribute($B),m=(f=p.getAttribute(qB))!==null&&f!==void 0?f:void 0,b=$l(r).find(S=>S.id===m);if(v==null||b==null||m==null)return;var{dataKey:x}=b,O=bZ(r,v,m);t.dispatch(nK({activeDataKey:x,activeIndex:v,activeCoordinate:O,activeGraphicalItemId:m}))}}}});var xZ=NC({brush:wF,cartesianAxis:dF,chartData:qY,errorBars:vX,graphicalItems:YV,layout:AB,legend:PU,options:IY,polarAxis:hV,polarOptions:yZ,referenceElements:AF,rootProps:pZ,tooltip:aK,zIndex:AY}),wZ=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return W8({reducer:xZ,preloadedState:t,middleware:r=>{var o;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((o="es6")!==null&&o!==void 0?o:"")}).concat([zP.middleware,IP.middleware,Hb.middleware,qP.middleware,KP.middleware])},enhancers:r=>{var o=r;return typeof r=="function"&&(o=r()),o.concat(YC({type:"raf"}))},devTools:{serialize:{replacer:dZ},name:"recharts-".concat(n)}})};function SZ(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,o=cn(),l=g.useRef(null);if(o)return n;l.current==null&&(l.current=wZ(t,r));var s=x0;return g.createElement(KX,{context:s,store:l.current},n)}function OZ(e){var{layout:t,margin:n}=e,r=qt(),o=cn();return g.useEffect(()=>{o||(r(SB(t)),r(wB(n)))},[r,o,t,n]),null}var EZ=g.memo(OZ,Np);function AZ(e){var t=qt();return g.useEffect(()=>{t(mZ(e))},[t,e]),null}function uj(e){var{zIndex:t,isPanorama:n}=e,r=g.useRef(null),o=qt();return g.useLayoutEffect(()=>(r.current&&o(OY({zIndex:t,element:r.current,isPanorama:n})),()=>{o(EY({zIndex:t,isPanorama:n}))}),[o,t,n]),g.createElement("g",{tabIndex:-1,ref:r})}function sj(e){var{children:t,isPanorama:n}=e,r=we(pY);if(!r||r.length===0)return t;var o=r.filter(s=>s<0),l=r.filter(s=>s>0);return g.createElement(g.Fragment,null,o.map(s=>g.createElement(uj,{key:s,zIndex:s,isPanorama:n})),t,l.map(s=>g.createElement(uj,{key:s,zIndex:s,isPanorama:n})))}var _Z=["children"];function jZ(e,t){if(e==null)return{};var n,r,o=TZ(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{var n=pN(),r=mN(),o=ON();if(!Yr(n)||!Yr(r))return null;var{children:l,otherAttributes:s,title:f,desc:d}=e,p,v;return s!=null&&(typeof s.tabIndex=="number"?p=s.tabIndex:p=o?0:void 0,typeof s.role=="string"?v=s.role:v=o?"application":void 0),g.createElement(FT,Td({},s,{title:f,desc:d,role:v,tabIndex:p,width:n,height:r,style:CZ,ref:t}),l)}),MZ=e=>{var{children:t}=e,n=we(rp);if(!n)return null;var{width:r,height:o,y:l,x:s}=n;return g.createElement(FT,{width:r,height:o,x:s,y:l},t)},cj=g.forwardRef((e,t)=>{var{children:n}=e,r=jZ(e,_Z),o=cn();return o?g.createElement(MZ,null,g.createElement(sj,{isPanorama:!0},n)):g.createElement(NZ,Td({ref:t},r),g.createElement(sj,{isPanorama:!1},n))});function DZ(){var e=qt(),[t,n]=g.useState(null),r=we(UB);return g.useEffect(()=>{if(t!=null){var o=t.getBoundingClientRect(),l=o.width/t.offsetWidth;ze(l)&&l!==r&&e(EB(l))}},[t,e,r]),n}function fj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function PZ(e){for(var t=1;t(ZY(),null);function Cd(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var LZ=g.forwardRef((e,t)=>{var n,r,o=g.useRef(null),[l,s]=g.useState({containerWidth:Cd((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:Cd((r=e.style)===null||r===void 0?void 0:r.height)}),f=g.useCallback((p,v)=>{s(m=>{var b=Math.round(p),x=Math.round(v);return m.containerWidth===b&&m.containerHeight===x?m:{containerWidth:b,containerHeight:x}})},[]),d=g.useCallback(p=>{if(typeof t=="function"&&t(p),p!=null&&typeof ResizeObserver<"u"){var{width:v,height:m}=p.getBoundingClientRect();f(v,m);var b=O=>{var S=O[0];if(S!=null){var{width:w,height:A}=S.contentRect;f(w,A)}},x=new ResizeObserver(b);x.observe(p),o.current=x}},[t,f]);return g.useEffect(()=>()=>{var p=o.current;p?.disconnect()},[f]),g.createElement(g.Fragment,null,g.createElement(ws,{width:l.containerWidth,height:l.containerHeight}),g.createElement("div",vi({ref:d},e)))}),BZ=g.forwardRef((e,t)=>{var{width:n,height:r}=e,[o,l]=g.useState({containerWidth:Cd(n),containerHeight:Cd(r)}),s=g.useCallback((d,p)=>{l(v=>{var m=Math.round(d),b=Math.round(p);return v.containerWidth===m&&v.containerHeight===b?v:{containerWidth:m,containerHeight:b}})},[]),f=g.useCallback(d=>{if(typeof t=="function"&&t(d),d!=null){var{width:p,height:v}=d.getBoundingClientRect();s(p,v)}},[t,s]);return g.createElement(g.Fragment,null,g.createElement(ws,{width:o.containerWidth,height:o.containerHeight}),g.createElement("div",vi({ref:f},e)))}),UZ=g.forwardRef((e,t)=>{var{width:n,height:r}=e;return g.createElement(g.Fragment,null,g.createElement(ws,{width:n,height:r}),g.createElement("div",vi({ref:t},e)))}),$Z=g.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?g.createElement(BZ,vi({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?g.createElement(UZ,vi({},e,{width:n,height:r,ref:t})):g.createElement(g.Fragment,null,g.createElement(ws,{width:n,height:r}),g.createElement("div",vi({ref:t},e)))});function qZ(e){return e?LZ:$Z}var HZ=g.forwardRef((e,t)=>{var{children:n,className:r,height:o,onClick:l,onContextMenu:s,onDoubleClick:f,onMouseDown:d,onMouseEnter:p,onMouseLeave:v,onMouseMove:m,onMouseUp:b,onTouchEnd:x,onTouchMove:O,onTouchStart:S,style:w,width:A,responsive:C,dispatchTouchEvents:j=!0}=e,N=g.useRef(null),M=qt(),[D,P]=g.useState(null),[I,W]=g.useState(null),ie=DZ(),F=j0(),U=F?.width>0?F.width:A,ue=F?.height>0?F.height:o,ce=g.useCallback(Y=>{ie(Y),typeof t=="function"&&t(Y),P(Y),W(Y),Y!=null&&(N.current=Y)},[ie,t,P,W]),se=g.useCallback(Y=>{M(RP(Y)),M(ir({handler:l,reactEvent:Y}))},[M,l]),z=g.useCallback(Y=>{M(Vg(Y)),M(ir({handler:p,reactEvent:Y}))},[M,p]),K=g.useCallback(Y=>{M(gD()),M(ir({handler:v,reactEvent:Y}))},[M,v]),ae=g.useCallback(Y=>{M(Vg(Y)),M(ir({handler:m,reactEvent:Y}))},[M,m]),fe=g.useCallback(()=>{M($P())},[M]),ee=g.useCallback(Y=>{M(UP(Y.key))},[M]),R=g.useCallback(Y=>{M(ir({handler:s,reactEvent:Y}))},[M,s]),X=g.useCallback(Y=>{M(ir({handler:f,reactEvent:Y}))},[M,f]),Q=g.useCallback(Y=>{M(ir({handler:d,reactEvent:Y}))},[M,d]),re=g.useCallback(Y=>{M(ir({handler:b,reactEvent:Y}))},[M,b]),le=g.useCallback(Y=>{M(ir({handler:S,reactEvent:Y}))},[M,S]),de=g.useCallback(Y=>{j&&M(HP(Y)),M(ir({handler:O,reactEvent:Y}))},[M,j,O]),be=g.useCallback(Y=>{M(ir({handler:x,reactEvent:Y}))},[M,x]),Ee=qZ(C);return g.createElement(BD.Provider,{value:D},g.createElement(C6.Provider,{value:I},g.createElement(Ee,{width:U??w?.width,height:ue??w?.height,className:qe("recharts-wrapper",r),style:PZ({position:"relative",cursor:"default",width:U,height:ue},w),onClick:se,onContextMenu:R,onDoubleClick:X,onFocus:fe,onKeyDown:ee,onMouseDown:Q,onMouseEnter:z,onMouseLeave:K,onMouseMove:ae,onMouseUp:re,onTouchEnd:be,onTouchMove:de,onTouchStart:le,ref:ce},g.createElement(IZ,null),n)))}),KZ=["width","height","responsive","children","className","style","compact","title","desc"];function YZ(e,t){if(e==null)return{};var n,r,o=GZ(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:o,children:l,className:s,style:f,compact:d,title:p,desc:v}=e,m=YZ(e,KZ),b=sr(m);return d?g.createElement(g.Fragment,null,g.createElement(ws,{width:n,height:r}),g.createElement(cj,{otherAttributes:b,title:p,desc:v},l)):g.createElement(HZ,{className:s,style:f,width:n,height:r,responsive:o??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},g.createElement(cj,{otherAttributes:b,title:p,desc:v,ref:t},g.createElement(jF,null,l)))});function Fg(){return Fg=Object.assign?Object.assign.bind():function(e){for(var t=1;tg.createElement(YP,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:WZ,tooltipPayloadSearcher:UD,categoricalChartProps:e,ref:t})),QZ=["axis"],JZ=g.forwardRef((e,t)=>g.createElement(YP,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:QZ,tooltipPayloadSearcher:UD,categoricalChartProps:e,ref:t}));function eQ({trafficHistory:e}){const t=({active:n,payload:r,label:o})=>n&&r&&r.length?_.jsxs("div",{className:"bg-card border border-border rounded-md p-3 shadow-lg",children:[_.jsx("p",{className:"text-xs text-muted-foreground mb-2",children:o}),r.map((l,s)=>_.jsxs("p",{className:"text-sm font-mono",style:{color:l.color},children:[l.name,": ",l.name.includes("Bytes")?or(l.value):l.value]},s))]}):null;return _.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[_.jsxs(Ol,{className:"p-5 border-border","data-testid":"traffic-volume-chart",children:[_.jsx("h3",{className:"text-sm font-semibold text-foreground mb-4 uppercase tracking-wide",children:"Traffic Volume"}),_.jsx("div",{className:"h-48",children:_.jsx(nA,{width:"100%",height:"100%",children:_.jsxs(JZ,{data:e,margin:{top:5,right:5,left:0,bottom:5},children:[_.jsxs("defs",{children:[_.jsxs("linearGradient",{id:"colorBytesIn",x1:"0",y1:"0",x2:"0",y2:"1",children:[_.jsx("stop",{offset:"5%",stopColor:"hsl(var(--chart-2))",stopOpacity:.3}),_.jsx("stop",{offset:"95%",stopColor:"hsl(var(--chart-2))",stopOpacity:0})]}),_.jsxs("linearGradient",{id:"colorBytesOut",x1:"0",y1:"0",x2:"0",y2:"1",children:[_.jsx("stop",{offset:"5%",stopColor:"hsl(var(--chart-1))",stopOpacity:.3}),_.jsx("stop",{offset:"95%",stopColor:"hsl(var(--chart-1))",stopOpacity:0})]})]}),_.jsx(Lg,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),_.jsx(Hg,{dataKey:"time",tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1}),_.jsx(Gg,{tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1,tickFormatter:n=>or(n,0),width:60}),_.jsx(u_,{content:_.jsx(t,{})}),_.jsx(Ug,{type:"monotone",dataKey:"bytesIn",name:"Bytes In",stroke:"hsl(var(--chart-2))",strokeWidth:2,fillOpacity:1,fill:"url(#colorBytesIn)"}),_.jsx(Ug,{type:"monotone",dataKey:"bytesOut",name:"Bytes Out",stroke:"hsl(var(--chart-1))",strokeWidth:2,fillOpacity:1,fill:"url(#colorBytesOut)"})]})})}),_.jsxs("div",{className:"flex justify-center gap-6 mt-3",children:[_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-2))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Bytes In"})]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-1))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Bytes Out"})]})]})]}),_.jsxs(Ol,{className:"p-5 border-border","data-testid":"request-rate-chart",children:[_.jsx("h3",{className:"text-sm font-semibold text-foreground mb-4 uppercase tracking-wide",children:"Request Rate & Sessions"}),_.jsx("div",{className:"h-48",children:_.jsx(nA,{width:"100%",height:"100%",children:_.jsxs(ZZ,{data:e,margin:{top:5,right:5,left:0,bottom:5},children:[_.jsx(Lg,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),_.jsx(Hg,{dataKey:"time",tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1}),_.jsx(Gg,{tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1,width:40}),_.jsx(u_,{content:_.jsx(t,{})}),_.jsx(Bg,{type:"monotone",dataKey:"rate",name:"Req/s",stroke:"hsl(var(--chart-3))",strokeWidth:2,dot:!1,activeDot:{r:4,fill:"hsl(var(--chart-3))"}}),_.jsx(Bg,{type:"monotone",dataKey:"sessions",name:"Sessions",stroke:"hsl(var(--chart-5))",strokeWidth:2,dot:!1,activeDot:{r:4,fill:"hsl(var(--chart-5))"}})]})})}),_.jsxs("div",{className:"flex justify-center gap-6 mt-3",children:[_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-3))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Req/s"})]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-5))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Sessions"})]})]})]})]})}const tQ=l0("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function Xg({className:e,variant:t,...n}){return _.jsx("div",{className:He(tQ({variant:t}),e),...n})}const Nd=g.forwardRef(({className:e,...t},n)=>_.jsx("div",{className:"relative w-full overflow-auto",children:_.jsx("table",{ref:n,className:He("w-full caption-bottom text-sm",e),...t})}));Nd.displayName="Table";const Md=g.forwardRef(({className:e,...t},n)=>_.jsx("thead",{ref:n,className:He("[&_tr]:border-b",e),...t}));Md.displayName="TableHeader";const Dd=g.forwardRef(({className:e,...t},n)=>_.jsx("tbody",{ref:n,className:He("[&_tr:last-child]:border-0",e),...t}));Dd.displayName="TableBody";const nQ=g.forwardRef(({className:e,...t},n)=>_.jsx("tfoot",{ref:n,className:He("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));nQ.displayName="TableFooter";const Zi=g.forwardRef(({className:e,...t},n)=>_.jsx("tr",{ref:n,className:He("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));Zi.displayName="TableRow";const Qe=g.forwardRef(({className:e,...t},n)=>_.jsx("th",{ref:n,className:He("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...t}));Qe.displayName="TableHead";const Je=g.forwardRef(({className:e,...t},n)=>_.jsx("td",{ref:n,className:He("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...t}));Je.displayName="TableCell";const rQ=g.forwardRef(({className:e,...t},n)=>_.jsx("caption",{ref:n,className:He("mt-4 text-sm text-muted-foreground",e),...t}));rQ.displayName="TableCaption";var Mp="Collapsible",[aQ]=fo(Mp),[iQ,Kb]=aQ(Mp),GP=g.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:l,onOpenChange:s,...f}=e,[d,p]=Ml({prop:r,defaultProp:o??!1,onChange:s,caller:Mp});return _.jsx(iQ,{scope:n,disabled:l,contentId:yl(),open:d,onOpenToggle:g.useCallback(()=>p(v=>!v),[p]),children:_.jsx(lt.div,{"data-state":Gb(d),"data-disabled":l?"":void 0,...f,ref:t})})});GP.displayName=Mp;var VP="CollapsibleTrigger",FP=g.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=Kb(VP,n);return _.jsx(lt.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":Gb(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...r,ref:t,onClick:ot(e.onClick,o.onOpenToggle)})});FP.displayName=VP;var Yb="CollapsibleContent",XP=g.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Kb(Yb,e.__scopeCollapsible);return _.jsx(Dl,{present:n||o.open,children:({present:l})=>_.jsx(oQ,{...r,ref:t,present:l})})});XP.displayName=Yb;var oQ=g.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...l}=e,s=Kb(Yb,n),[f,d]=g.useState(r),p=g.useRef(null),v=Dt(t,p),m=g.useRef(0),b=m.current,x=g.useRef(0),O=x.current,S=s.open||f,w=g.useRef(S),A=g.useRef(void 0);return g.useEffect(()=>{const C=requestAnimationFrame(()=>w.current=!1);return()=>cancelAnimationFrame(C)},[]),no(()=>{const C=p.current;if(C){A.current=A.current||{transitionDuration:C.style.transitionDuration,animationName:C.style.animationName},C.style.transitionDuration="0s",C.style.animationName="none";const j=C.getBoundingClientRect();m.current=j.height,x.current=j.width,w.current||(C.style.transitionDuration=A.current.transitionDuration,C.style.animationName=A.current.animationName),d(r)}},[s.open,r]),_.jsx(lt.div,{"data-state":Gb(s.open),"data-disabled":s.disabled?"":void 0,id:s.contentId,hidden:!S,...l,ref:v,style:{"--radix-collapsible-content-height":b?`${b}px`:void 0,"--radix-collapsible-content-width":O?`${O}px`:void 0,...e.style},children:S&&o})});function Gb(e){return e?"open":"closed"}var lQ=GP;const uQ=lQ,sQ=FP,cQ=XP;function Tf({status:e}){const t=VR(e);return _.jsx(Xg,{"data-testid":`status-badge-${e}`,className:`rounded-full px-2 py-0.5 text-[10px] font-bold tracking-wider uppercase ${t==="success"?"bg-primary text-primary-foreground":t==="destructive"?"bg-destructive text-destructive-foreground":t==="warning"?"bg-[hsl(var(--warning))] text-[hsl(var(--warning-foreground))]":"bg-muted text-muted-foreground"}`,children:e})}function dj({frontends:e,showDetails:t}){const[n,r]=g.useState(""),o=e.filter(l=>(l.pxname||"").toLowerCase().includes(n.toLowerCase()));return _.jsxs(Ol,{className:"border-border","data-testid":"frontend-table",children:[_.jsxs("div",{className:"p-4 border-b border-border",children:[_.jsxs("div",{className:"flex items-center justify-between mb-3",children:[_.jsxs("h3",{className:"text-sm font-semibold text-foreground uppercase tracking-wide flex items-center gap-2",children:[_.jsx(tT,{className:"h-4 w-4 text-primary"}),"Frontends"]}),_.jsxs("span",{className:"text-xs text-muted-foreground font-mono",children:[o.length," entries"]})]}),_.jsxs("div",{className:"relative",children:[_.jsx(nT,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),_.jsx(bl,{"data-testid":"frontend-filter-input",placeholder:"Filter frontends...",value:n,onChange:l=>r(l.target.value),className:"pl-9 h-8 text-sm"})]})]}),_.jsx("div",{className:"overflow-x-auto",children:_.jsxs(Nd,{children:[_.jsx(Md,{children:_.jsxs(Zi,{className:"hover:bg-transparent border-border",children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Name"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Status"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Sessions"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes In"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes Out"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Rate"}),t&&_.jsxs(_.Fragment,{children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Req Tot"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"2xx"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"4xx"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"5xx"})]})]})}),_.jsx(Dd,{children:o.map((l,s)=>_.jsxs(Zi,{className:"hover:bg-muted/50 border-border h-10",children:[_.jsx(Je,{className:"font-mono text-sm py-2",children:l.pxname}),_.jsx(Je,{className:"py-2",children:_.jsx(Tf,{status:l.status})}),_.jsxs(Je,{className:"font-mono text-sm text-right py-2",children:[Mn(l.scur)," / ",Mn(l.smax)]}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(l.bin)}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(l.bout)}),_.jsxs(Je,{className:"font-mono text-sm text-right py-2",children:[Mn(l.rate),"/s"]}),t&&_.jsxs(_.Fragment,{children:[_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:Mn(l.req_tot)}),_.jsx(Je,{className:"font-mono text-sm text-right text-primary py-2",children:Mn(l.hrsp_2xx)}),_.jsx(Je,{className:"font-mono text-sm text-right text-[hsl(var(--warning))] py-2",children:Mn(l.hrsp_4xx)}),_.jsx(Je,{className:"font-mono text-sm text-right text-destructive py-2",children:Mn(l.hrsp_5xx)})]})]},`${l.pxname}-${s}`))})]})})]})}function pj({backends:e,servers:t,showDetails:n}){const[r,o]=g.useState(""),[l,s]=g.useState(new Set),[f,d]=g.useState("tree"),p=e.filter(A=>(A.pxname||"").toLowerCase().includes(r.toLowerCase())),v=g.useMemo(()=>r?t.filter(A=>(A.pxname||"").toLowerCase().includes(r.toLowerCase())||(A.svname||"").toLowerCase().includes(r.toLowerCase())):t,[t,r]),m=A=>{const C=new Set(l);C.has(A)?C.delete(A):C.add(A),s(C)},b=()=>{const A=new Set(p.map(C=>C.pxname));s(A)},x=()=>{s(new Set)},O=p.length>0&&p.every(A=>l.has(A.pxname)),S=A=>t.filter(C=>C.pxname===A),w=A=>e.find(C=>C.pxname===A);return _.jsxs(Ol,{className:"border-border","data-testid":"backend-table",children:[_.jsxs("div",{className:"p-4 border-b border-border",children:[_.jsxs("div",{className:"flex items-center justify-between mb-3",children:[_.jsxs("h3",{className:"text-sm font-semibold text-foreground uppercase tracking-wide flex items-center gap-2",children:[_.jsx(eT,{className:"h-4 w-4 text-[hsl(var(--accent))]"}),"Backends & Servers"]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsxs("span",{className:"text-xs text-muted-foreground font-mono mr-2",children:[p.length," backends, ",t.length," servers"]}),f==="tree"&&_.jsx(hn,{variant:"outline",size:"sm","data-testid":"expand-collapse-toggle",onClick:O?x:b,className:"h-7 px-2 text-xs",children:O?_.jsxs(_.Fragment,{children:[_.jsx(i5,{className:"h-3.5 w-3.5 mr-1"}),"Collapse"]}):_.jsxs(_.Fragment,{children:[_.jsx(_5,{className:"h-3.5 w-3.5 mr-1"}),"Expand"]})}),_.jsx(hn,{variant:"outline",size:"sm","data-testid":"tree-flat-toggle",onClick:()=>d(f==="tree"?"flat":"tree"),className:`h-7 px-2 text-xs ${f==="flat"?"bg-primary/10 border-primary/30":""}`,children:f==="tree"?_.jsxs(_.Fragment,{children:[_.jsx(m5,{className:"h-3.5 w-3.5 mr-1"}),"Flat"]}):_.jsxs(_.Fragment,{children:[_.jsx(l5,{className:"h-3.5 w-3.5 mr-1"}),"Tree"]})})]})]}),_.jsxs("div",{className:"relative",children:[_.jsx(nT,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),_.jsx(bl,{"data-testid":"backend-filter-input",placeholder:f==="tree"?"Filter backends...":"Filter servers...",value:r,onChange:A=>o(A.target.value),className:"pl-9 h-8 text-sm"})]})]}),_.jsxs("div",{className:"overflow-x-auto",children:[f==="tree"&&_.jsx("div",{className:"divide-y divide-border",children:p.map((A,C)=>{const j=S(A.pxname),N=l.has(A.pxname);return _.jsxs(uQ,{open:N,onOpenChange:()=>m(A.pxname),children:[_.jsx(sQ,{className:"w-full","data-testid":`backend-row-${A.pxname}`,children:_.jsxs("div",{className:"flex items-center px-4 py-3 hover:bg-muted/50 transition-colors",children:[_.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[j.length>0?N?_.jsx(Wz,{className:"h-4 w-4 text-muted-foreground"}):_.jsx(Qz,{className:"h-4 w-4 text-muted-foreground"}):_.jsx("div",{className:"w-4"}),_.jsx("span",{className:"font-mono text-sm",children:A.pxname}),_.jsx(Tf,{status:FR(A.status,j)}),j.length>0&&_.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",j.filter(M=>M.status==="UP").length,"/",j.length," servers)"]})]}),_.jsxs("div",{className:"flex items-center gap-6 text-sm font-mono text-muted-foreground",children:[_.jsxs("span",{title:"Sessions",children:[Mn(A.scur)," sess"]}),_.jsx("span",{title:"Bytes In",children:or(A.bin)}),_.jsx("span",{title:"Bytes Out",children:or(A.bout)}),_.jsxs("span",{title:"Rate",children:[Mn(A.rate),"/s"]}),n&&_.jsx(_.Fragment,{children:_.jsxs("span",{title:"Response Time",className:"text-[hsl(var(--accent))]",children:[A.rtime||0,"ms"]})})]})]})}),_.jsx(cQ,{children:j.length>0&&_.jsx("div",{className:"bg-muted/30",children:_.jsxs(Nd,{children:[_.jsx(Md,{children:_.jsxs(Zi,{className:"hover:bg-transparent border-border",children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium pl-12",children:"Server"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Status"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Address"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Sessions"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes In"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes Out"}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Check"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Uptime"})]})]})}),_.jsx(Dd,{children:j.map((M,D)=>_.jsxs(Zi,{className:"hover:bg-muted/50 border-border h-9","data-testid":`server-row-${M.svname}`,children:[_.jsx(Je,{className:"font-mono text-sm py-1.5 pl-12",children:M.svname}),_.jsx(Je,{className:"py-1.5",children:_.jsx(Tf,{status:M.status})}),_.jsx(Je,{className:"font-mono text-xs text-muted-foreground py-1.5",children:M.addr||"-"}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5",children:Mn(M.scur)}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5",children:or(M.bin)}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5",children:or(M.bout)}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Je,{className:"text-xs py-1.5",children:_.jsx("span",{className:`${M.check_status==="L7OK"||M.check_status==="L4OK"?"text-primary":"text-destructive"}`,children:WS(M.check_status)})}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5 text-muted-foreground",children:XS(M.lastchg)})]})]},`${M.pxname}-${M.svname}-${D}`))})]})})})]},`${A.pxname}-${C}`)})}),f==="flat"&&_.jsxs(Nd,{children:[_.jsx(Md,{children:_.jsxs(Zi,{className:"hover:bg-transparent border-border",children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Server"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Status"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Address"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Sessions"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes In"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes Out"}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Check"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Uptime"})]})]})}),_.jsx(Dd,{children:v.map((A,C)=>(w(A.pxname),_.jsxs(Zi,{className:"hover:bg-muted/50 border-border h-10","data-testid":`flat-server-row-${A.pxname}-${A.svname}`,children:[_.jsxs(Je,{className:"font-mono text-sm py-2",children:[_.jsx("span",{className:"text-muted-foreground",children:A.pxname}),_.jsx("span",{className:"text-muted-foreground/50 mx-1",children:"/"}),_.jsx("span",{children:A.svname})]}),_.jsx(Je,{className:"py-2",children:_.jsx(Tf,{status:A.status})}),_.jsx(Je,{className:"font-mono text-xs text-muted-foreground py-2",children:A.addr||"-"}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:Mn(A.scur)}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(A.bin)}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(A.bout)}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Je,{className:"text-xs py-2",children:_.jsx("span",{className:`${A.check_status==="L7OK"||A.check_status==="L4OK"?"text-primary":"text-destructive"}`,children:WS(A.check_status)})}),_.jsx(Je,{className:"font-mono text-sm text-right py-2 text-muted-foreground",children:XS(A.lastchg)})]})]},`flat-${A.pxname}-${A.svname}-${C}`)))})]})]})]})}var Dp="Switch",[fQ]=fo(Dp),[dQ,pQ]=fQ(Dp),WP=g.forwardRef((e,t)=>{const{__scopeSwitch:n,name:r,checked:o,defaultChecked:l,required:s,disabled:f,value:d="on",onCheckedChange:p,form:v,...m}=e,[b,x]=g.useState(null),O=Dt(t,j=>x(j)),S=g.useRef(!1),w=b?v||!!b.closest("form"):!0,[A,C]=Ml({prop:o,defaultProp:l??!1,onChange:p,caller:Dp});return _.jsxs(dQ,{scope:n,checked:A,disabled:f,children:[_.jsx(lt.button,{type:"button",role:"switch","aria-checked":A,"aria-required":s,"data-state":ek(A),"data-disabled":f?"":void 0,disabled:f,value:d,...m,ref:O,onClick:ot(e.onClick,j=>{C(N=>!N),w&&(S.current=j.isPropagationStopped(),S.current||j.stopPropagation())})}),w&&_.jsx(JP,{control:b,bubbles:!S.current,name:r,value:d,checked:A,required:s,disabled:f,form:v,style:{transform:"translateX(-100%)"}})]})});WP.displayName=Dp;var ZP="SwitchThumb",QP=g.forwardRef((e,t)=>{const{__scopeSwitch:n,...r}=e,o=pQ(ZP,n);return _.jsx(lt.span,{"data-state":ek(o.checked),"data-disabled":o.disabled?"":void 0,...r,ref:t})});QP.displayName=ZP;var mQ="SwitchBubbleInput",JP=g.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:r=!0,...o},l)=>{const s=g.useRef(null),f=Dt(s,l),d=jT(n),p=TT(t);return g.useEffect(()=>{const v=s.current;if(!v)return;const m=window.HTMLInputElement.prototype,x=Object.getOwnPropertyDescriptor(m,"checked").set;if(d!==n&&x){const O=new Event("click",{bubbles:r});x.call(v,n),v.dispatchEvent(O)}},[d,n,r]),_.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...o,tabIndex:-1,ref:f,style:{...o.style,...p,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});JP.displayName=mQ;function ek(e){return e?"checked":"unchecked"}var tk=WP,vQ=QP;const nk=g.forwardRef(({className:e,...t},n)=>_.jsx(tk,{className:He("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...t,ref:n,children:_.jsx(vQ,{className:He("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})}));nk.displayName=tk.displayName;var By="rovingFocusGroup.onEntryFocus",hQ={bubbles:!1,cancelable:!0},ks="RovingFocusGroup",[Wg,rk,yQ]=CT(ks),[gQ,ak]=fo(ks,[yQ]),[bQ,xQ]=gQ(ks),ik=g.forwardRef((e,t)=>_.jsx(Wg.Provider,{scope:e.__scopeRovingFocusGroup,children:_.jsx(Wg.Slot,{scope:e.__scopeRovingFocusGroup,children:_.jsx(wQ,{...e,ref:t})})}));ik.displayName=ks;var wQ=g.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:o=!1,dir:l,currentTabStopId:s,defaultCurrentTabStopId:f,onCurrentTabStopIdChange:d,onEntryFocus:p,preventScrollOnEntryFocus:v=!1,...m}=e,b=g.useRef(null),x=Dt(t,b),O=u0(l),[S,w]=Ml({prop:s,defaultProp:f??null,onChange:d,caller:ks}),[A,C]=g.useState(!1),j=Sl(p),N=rk(n),M=g.useRef(!1),[D,P]=g.useState(0);return g.useEffect(()=>{const I=b.current;if(I)return I.addEventListener(By,j),()=>I.removeEventListener(By,j)},[j]),_.jsx(bQ,{scope:n,orientation:r,dir:O,loop:o,currentTabStopId:S,onItemFocus:g.useCallback(I=>w(I),[w]),onItemShiftTab:g.useCallback(()=>C(!0),[]),onFocusableItemAdd:g.useCallback(()=>P(I=>I+1),[]),onFocusableItemRemove:g.useCallback(()=>P(I=>I-1),[]),children:_.jsx(lt.div,{tabIndex:A||D===0?-1:0,"data-orientation":r,...m,ref:x,style:{outline:"none",...e.style},onMouseDown:ot(e.onMouseDown,()=>{M.current=!0}),onFocus:ot(e.onFocus,I=>{const W=!M.current;if(I.target===I.currentTarget&&W&&!A){const ie=new CustomEvent(By,hQ);if(I.currentTarget.dispatchEvent(ie),!ie.defaultPrevented){const F=N().filter(z=>z.focusable),U=F.find(z=>z.active),ue=F.find(z=>z.id===S),se=[U,ue,...F].filter(Boolean).map(z=>z.ref.current);uk(se,v)}}M.current=!1}),onBlur:ot(e.onBlur,()=>C(!1))})})}),ok="RovingFocusGroupItem",lk=g.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:o=!1,tabStopId:l,children:s,...f}=e,d=yl(),p=l||d,v=xQ(ok,n),m=v.currentTabStopId===p,b=rk(n),{onFocusableItemAdd:x,onFocusableItemRemove:O,currentTabStopId:S}=v;return g.useEffect(()=>{if(r)return x(),()=>O()},[r,x,O]),_.jsx(Wg.ItemSlot,{scope:n,id:p,focusable:r,active:o,children:_.jsx(lt.span,{tabIndex:m?0:-1,"data-orientation":v.orientation,...f,ref:t,onMouseDown:ot(e.onMouseDown,w=>{r?v.onItemFocus(p):w.preventDefault()}),onFocus:ot(e.onFocus,()=>v.onItemFocus(p)),onKeyDown:ot(e.onKeyDown,w=>{if(w.key==="Tab"&&w.shiftKey){v.onItemShiftTab();return}if(w.target!==w.currentTarget)return;const A=EQ(w,v.orientation,v.dir);if(A!==void 0){if(w.metaKey||w.ctrlKey||w.altKey||w.shiftKey)return;w.preventDefault();let j=b().filter(N=>N.focusable).map(N=>N.ref.current);if(A==="last")j.reverse();else if(A==="prev"||A==="next"){A==="prev"&&j.reverse();const N=j.indexOf(w.currentTarget);j=v.loop?AQ(j,N+1):j.slice(N+1)}setTimeout(()=>uk(j))}}),children:typeof s=="function"?s({isCurrentTabStop:m,hasTabStop:S!=null}):s})})});lk.displayName=ok;var SQ={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function OQ(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function EQ(e,t,n){const r=OQ(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return SQ[r]}function uk(e,t=!1){const n=document.activeElement;for(const r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function AQ(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var _Q=ik,jQ=lk,Pp="Tabs",[TQ]=fo(Pp,[ak]),sk=ak(),[CQ,Vb]=TQ(Pp),ck=g.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,onValueChange:o,defaultValue:l,orientation:s="horizontal",dir:f,activationMode:d="automatic",...p}=e,v=u0(f),[m,b]=Ml({prop:r,onChange:o,defaultProp:l??"",caller:Pp});return _.jsx(CQ,{scope:n,baseId:yl(),value:m,onValueChange:b,orientation:s,dir:v,activationMode:d,children:_.jsx(lt.div,{dir:v,"data-orientation":s,...p,ref:t})})});ck.displayName=Pp;var fk="TabsList",dk=g.forwardRef((e,t)=>{const{__scopeTabs:n,loop:r=!0,...o}=e,l=Vb(fk,n),s=sk(n);return _.jsx(_Q,{asChild:!0,...s,orientation:l.orientation,dir:l.dir,loop:r,children:_.jsx(lt.div,{role:"tablist","aria-orientation":l.orientation,...o,ref:t})})});dk.displayName=fk;var pk="TabsTrigger",mk=g.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,disabled:o=!1,...l}=e,s=Vb(pk,n),f=sk(n),d=yk(s.baseId,r),p=gk(s.baseId,r),v=r===s.value;return _.jsx(jQ,{asChild:!0,...f,focusable:!o,active:v,children:_.jsx(lt.button,{type:"button",role:"tab","aria-selected":v,"aria-controls":p,"data-state":v?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:d,...l,ref:t,onMouseDown:ot(e.onMouseDown,m=>{!o&&m.button===0&&m.ctrlKey===!1?s.onValueChange(r):m.preventDefault()}),onKeyDown:ot(e.onKeyDown,m=>{[" ","Enter"].includes(m.key)&&s.onValueChange(r)}),onFocus:ot(e.onFocus,()=>{const m=s.activationMode!=="manual";!v&&!o&&m&&s.onValueChange(r)})})})});mk.displayName=pk;var vk="TabsContent",hk=g.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,forceMount:o,children:l,...s}=e,f=Vb(vk,n),d=yk(f.baseId,r),p=gk(f.baseId,r),v=r===f.value,m=g.useRef(v);return g.useEffect(()=>{const b=requestAnimationFrame(()=>m.current=!1);return()=>cancelAnimationFrame(b)},[]),_.jsx(Dl,{present:o||v,children:({present:b})=>_.jsx(lt.div,{"data-state":v?"active":"inactive","data-orientation":f.orientation,role:"tabpanel","aria-labelledby":d,hidden:!b,id:p,tabIndex:0,...s,ref:t,style:{...e.style,animationDuration:m.current?"0s":void 0},children:b&&l})})});hk.displayName=vk;function yk(e,t){return`${e}-trigger-${t}`}function gk(e,t){return`${e}-content-${t}`}var NQ=ck,bk=dk,xk=mk,wk=hk;const MQ=NQ,Sk=g.forwardRef(({className:e,...t},n)=>_.jsx(bk,{ref:n,className:He("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));Sk.displayName=bk.displayName;const Cf=g.forwardRef(({className:e,...t},n)=>_.jsx(xk,{ref:n,className:He("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...t}));Cf.displayName=xk.displayName;const Nf=g.forwardRef(({className:e,...t},n)=>_.jsx(wk,{ref:n,className:He("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));Nf.displayName=wk.displayName;var DQ=(e,t,n,r,o,l,s,f)=>{let d=document.documentElement,p=["light","dark"];function v(x){(Array.isArray(e)?e:[e]).forEach(O=>{let S=O==="class",w=S&&l?o.map(A=>l[A]||A):o;S?(d.classList.remove(...w),d.classList.add(l&&l[x]?l[x]:x)):d.setAttribute(O,x)}),m(x)}function m(x){f&&p.includes(x)&&(d.style.colorScheme=x)}function b(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(r)v(r);else try{let x=localStorage.getItem(t)||n,O=s&&x==="system"?b():x;v(O)}catch{}},PQ=g.createContext(void 0),kQ={setTheme:e=>{},themes:[]},RQ=()=>{var e;return(e=g.useContext(PQ))!=null?e:kQ};g.memo(({forcedTheme:e,storageKey:t,attribute:n,enableSystem:r,enableColorScheme:o,defaultTheme:l,value:s,themes:f,nonce:d,scriptProps:p})=>{let v=JSON.stringify([n,t,l,e,f,s,r,o]).slice(1,-1);return g.createElement("script",{...p,suppressHydrationWarning:!0,nonce:typeof window>"u"?d:"",dangerouslySetInnerHTML:{__html:`(${DQ.toString()})(${v})`}})});function zQ(e){if(typeof document>"u")return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}const IQ=e=>{switch(e){case"success":return UQ;case"info":return qQ;case"warning":return $Q;case"error":return HQ;default:return null}},LQ=Array(12).fill(0),BQ=({visible:e,className:t})=>oe.createElement("div",{className:["sonner-loading-wrapper",t].filter(Boolean).join(" "),"data-visible":e},oe.createElement("div",{className:"sonner-spinner"},LQ.map((n,r)=>oe.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${r}`})))),UQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),$Q=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),qQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),HQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),KQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},oe.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),oe.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),YQ=()=>{const[e,t]=oe.useState(document.hidden);return oe.useEffect(()=>{const n=()=>{t(document.hidden)};return document.addEventListener("visibilitychange",n),()=>window.removeEventListener("visibilitychange",n)},[]),e};let Zg=1;class GQ{constructor(){this.subscribe=t=>(this.subscribers.push(t),()=>{const n=this.subscribers.indexOf(t);this.subscribers.splice(n,1)}),this.publish=t=>{this.subscribers.forEach(n=>n(t))},this.addToast=t=>{this.publish(t),this.toasts=[...this.toasts,t]},this.create=t=>{var n;const{message:r,...o}=t,l=typeof t?.id=="number"||((n=t.id)==null?void 0:n.length)>0?t.id:Zg++,s=this.toasts.find(d=>d.id===l),f=t.dismissible===void 0?!0:t.dismissible;return this.dismissedToasts.has(l)&&this.dismissedToasts.delete(l),s?this.toasts=this.toasts.map(d=>d.id===l?(this.publish({...d,...t,id:l,title:r}),{...d,...t,id:l,dismissible:f,title:r}):d):this.addToast({title:r,...o,dismissible:f,id:l}),l},this.dismiss=t=>(t?(this.dismissedToasts.add(t),requestAnimationFrame(()=>this.subscribers.forEach(n=>n({id:t,dismiss:!0})))):this.toasts.forEach(n=>{this.subscribers.forEach(r=>r({id:n.id,dismiss:!0}))}),t),this.message=(t,n)=>this.create({...n,message:t}),this.error=(t,n)=>this.create({...n,message:t,type:"error"}),this.success=(t,n)=>this.create({...n,type:"success",message:t}),this.info=(t,n)=>this.create({...n,type:"info",message:t}),this.warning=(t,n)=>this.create({...n,type:"warning",message:t}),this.loading=(t,n)=>this.create({...n,type:"loading",message:t}),this.promise=(t,n)=>{if(!n)return;let r;n.loading!==void 0&&(r=this.create({...n,promise:t,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));const o=Promise.resolve(t instanceof Function?t():t);let l=r!==void 0,s;const f=o.then(async p=>{if(s=["resolve",p],oe.isValidElement(p))l=!1,this.create({id:r,type:"default",message:p});else if(FQ(p)&&!p.ok){l=!1;const m=typeof n.error=="function"?await n.error(`HTTP error! status: ${p.status}`):n.error,b=typeof n.description=="function"?await n.description(`HTTP error! status: ${p.status}`):n.description,O=typeof m=="object"&&!oe.isValidElement(m)?m:{message:m};this.create({id:r,type:"error",description:b,...O})}else if(p instanceof Error){l=!1;const m=typeof n.error=="function"?await n.error(p):n.error,b=typeof n.description=="function"?await n.description(p):n.description,O=typeof m=="object"&&!oe.isValidElement(m)?m:{message:m};this.create({id:r,type:"error",description:b,...O})}else if(n.success!==void 0){l=!1;const m=typeof n.success=="function"?await n.success(p):n.success,b=typeof n.description=="function"?await n.description(p):n.description,O=typeof m=="object"&&!oe.isValidElement(m)?m:{message:m};this.create({id:r,type:"success",description:b,...O})}}).catch(async p=>{if(s=["reject",p],n.error!==void 0){l=!1;const v=typeof n.error=="function"?await n.error(p):n.error,m=typeof n.description=="function"?await n.description(p):n.description,x=typeof v=="object"&&!oe.isValidElement(v)?v:{message:v};this.create({id:r,type:"error",description:m,...x})}}).finally(()=>{l&&(this.dismiss(r),r=void 0),n.finally==null||n.finally.call(n)}),d=()=>new Promise((p,v)=>f.then(()=>s[0]==="reject"?v(s[1]):p(s[1])).catch(v));return typeof r!="string"&&typeof r!="number"?{unwrap:d}:Object.assign(r,{unwrap:d})},this.custom=(t,n)=>{const r=n?.id||Zg++;return this.create({jsx:t(r),id:r,...n}),r},this.getActiveToasts=()=>this.toasts.filter(t=>!this.dismissedToasts.has(t.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const Nn=new GQ,VQ=(e,t)=>{const n=t?.id||Zg++;return Nn.addToast({title:e,...t,id:n}),n},FQ=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",XQ=VQ,WQ=()=>Nn.toasts,ZQ=()=>Nn.getActiveToasts(),Uy=Object.assign(XQ,{success:Nn.success,info:Nn.info,warning:Nn.warning,error:Nn.error,custom:Nn.custom,message:Nn.message,promise:Nn.promise,dismiss:Nn.dismiss,loading:Nn.loading},{getHistory:WQ,getToasts:ZQ});zQ("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function bf(e){return e.label!==void 0}const QQ=3,JQ="24px",eJ="16px",mj=4e3,tJ=356,nJ=14,rJ=45,aJ=200;function Ir(...e){return e.filter(Boolean).join(" ")}function iJ(e){const[t,n]=e.split("-"),r=[];return t&&r.push(t),n&&r.push(n),r}const oJ=e=>{var t,n,r,o,l,s,f,d,p;const{invert:v,toast:m,unstyled:b,interacting:x,setHeights:O,visibleToasts:S,heights:w,index:A,toasts:C,expanded:j,removeToast:N,defaultRichColors:M,closeButton:D,style:P,cancelButtonStyle:I,actionButtonStyle:W,className:ie="",descriptionClassName:F="",duration:U,position:ue,gap:ce,expandByDefault:se,classNames:z,icons:K,closeButtonAriaLabel:ae="Close toast"}=e,[fe,ee]=oe.useState(null),[R,X]=oe.useState(null),[Q,re]=oe.useState(!1),[le,de]=oe.useState(!1),[be,Ee]=oe.useState(!1),[Y,Oe]=oe.useState(!1),[Ae,ne]=oe.useState(!1),[dt,Te]=oe.useState(0),[jt,xt]=oe.useState(0),fn=oe.useRef(m.duration||U||mj),Pa=oe.useRef(null),Rn=oe.useRef(null),Hl=A===0,Kl=A+1<=S,dn=m.type,ka=m.dismissible!==!1,pn=m.className||"",kp=m.descriptionClassName||"",xi=oe.useMemo(()=>w.findIndex(_e=>_e.toastId===m.id)||0,[w,m.id]),Rs=oe.useMemo(()=>{var _e;return(_e=m.closeButton)!=null?_e:D},[m.closeButton,D]),wi=oe.useMemo(()=>m.duration||U||mj,[m.duration,U]),Yl=oe.useRef(0),Fr=oe.useRef(0),zs=oe.useRef(0),Ra=oe.useRef(null),[Si,mn]=ue.split("-"),mr=oe.useMemo(()=>w.reduce((_e,ut,Rt)=>Rt>=xi?_e:_e+ut.height,0),[w,xi]),tn=YQ(),Rp=m.invert||v,Gl=dn==="loading";Fr.current=oe.useMemo(()=>xi*ce+mr,[xi,mr]),oe.useEffect(()=>{fn.current=wi},[wi]),oe.useEffect(()=>{re(!0)},[]),oe.useEffect(()=>{const _e=Rn.current;if(_e){const ut=_e.getBoundingClientRect().height;return xt(ut),O(Rt=>[{toastId:m.id,height:ut,position:m.position},...Rt]),()=>O(Rt=>Rt.filter(nn=>nn.toastId!==m.id))}},[O,m.id]),oe.useLayoutEffect(()=>{if(!Q)return;const _e=Rn.current,ut=_e.style.height;_e.style.height="auto";const Rt=_e.getBoundingClientRect().height;_e.style.height=ut,xt(Rt),O(nn=>nn.find(pt=>pt.toastId===m.id)?nn.map(pt=>pt.toastId===m.id?{...pt,height:Rt}:pt):[{toastId:m.id,height:Rt,position:m.position},...nn])},[Q,m.title,m.description,O,m.id,m.jsx,m.action,m.cancel]);const Tr=oe.useCallback(()=>{de(!0),Te(Fr.current),O(_e=>_e.filter(ut=>ut.toastId!==m.id)),setTimeout(()=>{N(m)},aJ)},[m,N,O,Fr]);oe.useEffect(()=>{if(m.promise&&dn==="loading"||m.duration===1/0||m.type==="loading")return;let _e;return j||x||tn?(()=>{if(zs.current{m.onAutoClose==null||m.onAutoClose.call(m,m),Tr()},fn.current)),()=>clearTimeout(_e)},[j,x,m,dn,tn,Tr]),oe.useEffect(()=>{m.delete&&(Tr(),m.onDismiss==null||m.onDismiss.call(m,m))},[Tr,m.delete]);function go(){var _e;if(K?.loading){var ut;return oe.createElement("div",{className:Ir(z?.loader,m==null||(ut=m.classNames)==null?void 0:ut.loader,"sonner-loader"),"data-visible":dn==="loading"},K.loading)}return oe.createElement(BQ,{className:Ir(z?.loader,m==null||(_e=m.classNames)==null?void 0:_e.loader),visible:dn==="loading"})}const bo=m.icon||K?.[dn]||IQ(dn);var Oi,Cr;return oe.createElement("li",{tabIndex:0,ref:Rn,className:Ir(ie,pn,z?.toast,m==null||(t=m.classNames)==null?void 0:t.toast,z?.default,z?.[dn],m==null||(n=m.classNames)==null?void 0:n[dn]),"data-sonner-toast":"","data-rich-colors":(Oi=m.richColors)!=null?Oi:M,"data-styled":!(m.jsx||m.unstyled||b),"data-mounted":Q,"data-promise":!!m.promise,"data-swiped":Ae,"data-removed":le,"data-visible":Kl,"data-y-position":Si,"data-x-position":mn,"data-index":A,"data-front":Hl,"data-swiping":be,"data-dismissible":ka,"data-type":dn,"data-invert":Rp,"data-swipe-out":Y,"data-swipe-direction":R,"data-expanded":!!(j||se&&Q),"data-testid":m.testId,style:{"--index":A,"--toasts-before":A,"--z-index":C.length-A,"--offset":`${le?dt:Fr.current}px`,"--initial-height":se?"auto":`${jt}px`,...P,...m.style},onDragEnd:()=>{Ee(!1),ee(null),Ra.current=null},onPointerDown:_e=>{_e.button!==2&&(Gl||!ka||(Pa.current=new Date,Te(Fr.current),_e.target.setPointerCapture(_e.pointerId),_e.target.tagName!=="BUTTON"&&(Ee(!0),Ra.current={x:_e.clientX,y:_e.clientY})))},onPointerUp:()=>{var _e,ut,Rt;if(Y||!ka)return;Ra.current=null;const nn=Number(((_e=Rn.current)==null?void 0:_e.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),za=Number(((ut=Rn.current)==null?void 0:ut.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),pt=new Date().getTime()-((Rt=Pa.current)==null?void 0:Rt.getTime()),xn=fe==="x"?nn:za,Ei=Math.abs(xn)/pt;if(Math.abs(xn)>=rJ||Ei>.11){Te(Fr.current),m.onDismiss==null||m.onDismiss.call(m,m),X(fe==="x"?nn>0?"right":"left":za>0?"down":"up"),Tr(),Oe(!0);return}else{var wn,Sn;(wn=Rn.current)==null||wn.style.setProperty("--swipe-amount-x","0px"),(Sn=Rn.current)==null||Sn.style.setProperty("--swipe-amount-y","0px")}ne(!1),Ee(!1),ee(null)},onPointerMove:_e=>{var ut,Rt,nn;if(!Ra.current||!ka||((ut=window.getSelection())==null?void 0:ut.toString().length)>0)return;const pt=_e.clientY-Ra.current.y,xn=_e.clientX-Ra.current.x;var Ei;const wn=(Ei=e.swipeDirections)!=null?Ei:iJ(ue);!fe&&(Math.abs(xn)>1||Math.abs(pt)>1)&&ee(Math.abs(xn)>Math.abs(pt)?"x":"y");let Sn={x:0,y:0};const xo=vr=>1/(1.5+Math.abs(vr)/20);if(fe==="y"){if(wn.includes("top")||wn.includes("bottom"))if(wn.includes("top")&&pt<0||wn.includes("bottom")&&pt>0)Sn.y=pt;else{const vr=pt*xo(pt);Sn.y=Math.abs(vr)0)Sn.x=xn;else{const vr=xn*xo(xn);Sn.x=Math.abs(vr)0||Math.abs(Sn.y)>0)&&ne(!0),(Rt=Rn.current)==null||Rt.style.setProperty("--swipe-amount-x",`${Sn.x}px`),(nn=Rn.current)==null||nn.style.setProperty("--swipe-amount-y",`${Sn.y}px`)}},Rs&&!m.jsx&&dn!=="loading"?oe.createElement("button",{"aria-label":ae,"data-disabled":Gl,"data-close-button":!0,onClick:Gl||!ka?()=>{}:()=>{Tr(),m.onDismiss==null||m.onDismiss.call(m,m)},className:Ir(z?.closeButton,m==null||(r=m.classNames)==null?void 0:r.closeButton)},(Cr=K?.close)!=null?Cr:KQ):null,(dn||m.icon||m.promise)&&m.icon!==null&&(K?.[dn]!==null||m.icon)?oe.createElement("div",{"data-icon":"",className:Ir(z?.icon,m==null||(o=m.classNames)==null?void 0:o.icon)},m.promise||m.type==="loading"&&!m.icon?m.icon||go():null,m.type!=="loading"?bo:null):null,oe.createElement("div",{"data-content":"",className:Ir(z?.content,m==null||(l=m.classNames)==null?void 0:l.content)},oe.createElement("div",{"data-title":"",className:Ir(z?.title,m==null||(s=m.classNames)==null?void 0:s.title)},m.jsx?m.jsx:typeof m.title=="function"?m.title():m.title),m.description?oe.createElement("div",{"data-description":"",className:Ir(F,kp,z?.description,m==null||(f=m.classNames)==null?void 0:f.description)},typeof m.description=="function"?m.description():m.description):null),oe.isValidElement(m.cancel)?m.cancel:m.cancel&&bf(m.cancel)?oe.createElement("button",{"data-button":!0,"data-cancel":!0,style:m.cancelButtonStyle||I,onClick:_e=>{bf(m.cancel)&&ka&&(m.cancel.onClick==null||m.cancel.onClick.call(m.cancel,_e),Tr())},className:Ir(z?.cancelButton,m==null||(d=m.classNames)==null?void 0:d.cancelButton)},m.cancel.label):null,oe.isValidElement(m.action)?m.action:m.action&&bf(m.action)?oe.createElement("button",{"data-button":!0,"data-action":!0,style:m.actionButtonStyle||W,onClick:_e=>{bf(m.action)&&(m.action.onClick==null||m.action.onClick.call(m.action,_e),!_e.defaultPrevented&&Tr())},className:Ir(z?.actionButton,m==null||(p=m.classNames)==null?void 0:p.actionButton)},m.action.label):null)};function vj(){if(typeof window>"u"||typeof document>"u")return"ltr";const e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function lJ(e,t){const n={};return[e,t].forEach((r,o)=>{const l=o===1,s=l?"--mobile-offset":"--offset",f=l?eJ:JQ;function d(p){["top","right","bottom","left"].forEach(v=>{n[`${s}-${v}`]=typeof p=="number"?`${p}px`:p})}typeof r=="number"||typeof r=="string"?d(r):typeof r=="object"?["top","right","bottom","left"].forEach(p=>{r[p]===void 0?n[`${s}-${p}`]=f:n[`${s}-${p}`]=typeof r[p]=="number"?`${r[p]}px`:r[p]}):d(f)}),n}const uJ=oe.forwardRef(function(t,n){const{id:r,invert:o,position:l="bottom-right",hotkey:s=["altKey","KeyT"],expand:f,closeButton:d,className:p,offset:v,mobileOffset:m,theme:b="light",richColors:x,duration:O,style:S,visibleToasts:w=QQ,toastOptions:A,dir:C=vj(),gap:j=nJ,icons:N,containerAriaLabel:M="Notifications"}=t,[D,P]=oe.useState([]),I=oe.useMemo(()=>r?D.filter(Q=>Q.toasterId===r):D.filter(Q=>!Q.toasterId),[D,r]),W=oe.useMemo(()=>Array.from(new Set([l].concat(I.filter(Q=>Q.position).map(Q=>Q.position)))),[I,l]),[ie,F]=oe.useState([]),[U,ue]=oe.useState(!1),[ce,se]=oe.useState(!1),[z,K]=oe.useState(b!=="system"?b:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),ae=oe.useRef(null),fe=s.join("+").replace(/Key/g,"").replace(/Digit/g,""),ee=oe.useRef(null),R=oe.useRef(!1),X=oe.useCallback(Q=>{P(re=>{var le;return(le=re.find(de=>de.id===Q.id))!=null&&le.delete||Nn.dismiss(Q.id),re.filter(({id:de})=>de!==Q.id)})},[]);return oe.useEffect(()=>Nn.subscribe(Q=>{if(Q.dismiss){requestAnimationFrame(()=>{P(re=>re.map(le=>le.id===Q.id?{...le,delete:!0}:le))});return}setTimeout(()=>{yj.flushSync(()=>{P(re=>{const le=re.findIndex(de=>de.id===Q.id);return le!==-1?[...re.slice(0,le),{...re[le],...Q},...re.slice(le+1)]:[Q,...re]})})})}),[D]),oe.useEffect(()=>{if(b!=="system"){K(b);return}if(b==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?K("dark"):K("light")),typeof window>"u")return;const Q=window.matchMedia("(prefers-color-scheme: dark)");try{Q.addEventListener("change",({matches:re})=>{K(re?"dark":"light")})}catch{Q.addListener(({matches:le})=>{try{K(le?"dark":"light")}catch(de){console.error(de)}})}},[b]),oe.useEffect(()=>{D.length<=1&&ue(!1)},[D]),oe.useEffect(()=>{const Q=re=>{var le;if(s.every(Ee=>re[Ee]||re.code===Ee)){var be;ue(!0),(be=ae.current)==null||be.focus()}re.code==="Escape"&&(document.activeElement===ae.current||(le=ae.current)!=null&&le.contains(document.activeElement))&&ue(!1)};return document.addEventListener("keydown",Q),()=>document.removeEventListener("keydown",Q)},[s]),oe.useEffect(()=>{if(ae.current)return()=>{ee.current&&(ee.current.focus({preventScroll:!0}),ee.current=null,R.current=!1)}},[ae.current]),oe.createElement("section",{ref:n,"aria-label":`${M} ${fe}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},W.map((Q,re)=>{var le;const[de,be]=Q.split("-");return I.length?oe.createElement("ol",{key:Q,dir:C==="auto"?vj():C,tabIndex:-1,ref:ae,className:p,"data-sonner-toaster":!0,"data-sonner-theme":z,"data-y-position":de,"data-x-position":be,style:{"--front-toast-height":`${((le=ie[0])==null?void 0:le.height)||0}px`,"--width":`${tJ}px`,"--gap":`${j}px`,...S,...lJ(v,m)},onBlur:Ee=>{R.current&&!Ee.currentTarget.contains(Ee.relatedTarget)&&(R.current=!1,ee.current&&(ee.current.focus({preventScroll:!0}),ee.current=null))},onFocus:Ee=>{Ee.target instanceof HTMLElement&&Ee.target.dataset.dismissible==="false"||R.current||(R.current=!0,ee.current=Ee.relatedTarget)},onMouseEnter:()=>ue(!0),onMouseMove:()=>ue(!0),onMouseLeave:()=>{ce||ue(!1)},onDragEnd:()=>ue(!1),onPointerDown:Ee=>{Ee.target instanceof HTMLElement&&Ee.target.dataset.dismissible==="false"||se(!0)},onPointerUp:()=>se(!1)},I.filter(Ee=>!Ee.position&&re===0||Ee.position===Q).map((Ee,Y)=>{var Oe,Ae;return oe.createElement(oJ,{key:Ee.id,icons:N,index:Y,toast:Ee,defaultRichColors:x,duration:(Oe=A?.duration)!=null?Oe:O,className:A?.className,descriptionClassName:A?.descriptionClassName,invert:o,visibleToasts:w,closeButton:(Ae=A?.closeButton)!=null?Ae:d,interacting:ce,position:Q,style:A?.style,unstyled:A?.unstyled,classNames:A?.classNames,cancelButtonStyle:A?.cancelButtonStyle,actionButtonStyle:A?.actionButtonStyle,closeButtonAriaLabel:A?.closeButtonAriaLabel,removeToast:X,toasts:I.filter(ne=>ne.position==Ee.position),heights:ie.filter(ne=>ne.position==Ee.position),setHeights:F,expandByDefault:f,gap:j,expanded:U,swipeDirections:t.swipeDirections})})):null}))}),sJ=({...e})=>{const{theme:t="system"}=RQ();return _.jsx(uJ,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e})};function cJ(){const[e,t]=g.useState(!0),[n,r]=g.useState(!1),[o,l]=g.useState(!1),{isConnected:s,isDemoMode:f,connectionConfig:d,stats:p,error:v,lastUpdate:m,trafficHistory:b,connectionLost:x,retryCount:O,maxRetries:S,connect:w,disconnect:A,retryConnection:C,toggleDemoMode:j}=QR();g.useEffect(()=>{e?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},[e]),g.useEffect(()=>{v&&Uy.error("Connection Error",{description:v,duration:5e3})},[v]),g.useEffect(()=>{s&&Uy.success("Connected",{description:`Connected to HAProxy at ${d.url}`,duration:3e3})},[s,d.url]);const N=P=>{w(P)},M=()=>{A(),Uy.info("Disconnected",{description:"HAProxy connection closed",duration:3e3})},D={frontends:{up:0,total:0},backends:{up:0,total:0},servers:{up:0,down:0,noCheck:0,total:0},bytesIn:0,bytesOut:0,sessions:0,requests:0,rate:0};return _.jsxs("div",{className:"min-h-screen bg-background grid-bg",children:[_.jsx(sJ,{richColors:!0,position:"top-right"}),_.jsxs("header",{className:"sticky top-0 z-50 bg-background/95 backdrop-blur border-b border-border",children:[_.jsx("div",{className:"container mx-auto px-4 sm:px-6 py-3",children:_.jsxs("div",{className:"flex items-center justify-between",children:[_.jsxs("div",{className:"flex items-center gap-3",children:[_.jsx("div",{className:"p-2 rounded-md bg-primary/10",children:_.jsx(Pf,{className:"h-5 w-5 text-primary"})}),_.jsxs("div",{children:[_.jsx("h1",{className:"text-lg font-bold text-foreground tracking-tight",children:"HAProxy Monitor"}),_.jsxs("p",{className:"text-xs text-muted-foreground",children:["Real-time Statistics",_.jsx("span",{className:"ml-2 opacity-50",children:"Local build: 2026-02-23 00:40:39"})]})]})]}),_.jsxs("div",{className:"flex items-center gap-2 sm:gap-4",children:[(s||f)&&_.jsxs("div",{className:"hidden sm:flex items-center gap-2",children:[_.jsx(Jj,{className:"h-4 w-4 text-primary animate-pulse"}),_.jsxs("span",{className:"text-xs text-muted-foreground font-mono",children:[f?"DEMO":"LIVE",m&&` • ${m.toLocaleTimeString()}`]})]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx(nk,{id:"demo-mode","data-testid":"demo-mode-toggle",checked:f,onCheckedChange:j,disabled:s}),_.jsx(pl,{htmlFor:"demo-mode",className:"hidden sm:inline text-xs text-muted-foreground cursor-pointer",children:"Demo"})]}),_.jsx(hn,{variant:"outline",size:"sm","data-testid":"view-toggle-btn",onClick:()=>l(!o),className:"hidden sm:flex items-center gap-2",children:o?_.jsxs(_.Fragment,{children:[_.jsx(pO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Summary"})]}):_.jsxs(_.Fragment,{children:[_.jsx(mO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Details"})]})}),_.jsx(hn,{variant:"outline",size:"icon","data-testid":"theme-toggle-btn",onClick:()=>t(!e),className:"h-9 w-9",children:e?_.jsx(E5,{className:"h-4 w-4"}):_.jsx(h5,{className:"h-4 w-4"})}),s?_.jsxs(hn,{variant:"outline","data-testid":"disconnect-btn",onClick:M,className:"border-destructive/50 text-destructive hover:bg-destructive/10",children:[_.jsx(rT,{className:"h-4 w-4 sm:mr-2"}),_.jsx("span",{className:"hidden sm:inline",children:"Disconnect"})]}):_.jsxs(hn,{"data-testid":"connect-btn",onClick:()=>r(!0),disabled:f,className:"bg-primary text-primary-foreground hover:bg-primary/90 shadow-[0_0_15px_-3px_hsl(var(--primary)/0.4)]",children:[_.jsx(vO,{className:"h-4 w-4 sm:mr-2"}),_.jsx("span",{className:"hidden sm:inline",children:"Connect"})]})]})]})}),f&&_.jsx("div",{className:"border-t border-[hsl(var(--warning))]/30 bg-background","data-testid":"demo-mode-banner",children:_.jsxs("div",{className:"container mx-auto px-4 sm:px-6 py-2 flex items-center justify-between gap-3",children:[_.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[_.jsx(Df,{className:"h-4 w-4 shrink-0 text-[hsl(var(--warning))]"}),_.jsxs("span",{className:"text-sm text-[hsl(var(--warning))] truncate",children:["Demo Mode — showing sample data. Click ",_.jsx("strong",{children:"Connect"})," to link to your HAProxy instance."]})]}),_.jsx(hn,{variant:"outline",size:"sm",onClick:()=>r(!0),className:"shrink-0 border-[hsl(var(--warning))]/50 text-[hsl(var(--warning))] hover:bg-[hsl(var(--warning))]/10",children:"Connect"})]})})]}),_.jsxs("main",{className:"container mx-auto px-4 sm:px-6 py-6",children:[!s&&!f&&_.jsxs("div",{className:"flex flex-col items-center justify-center min-h-[60vh] text-center",children:[_.jsx("div",{className:"p-6 rounded-full bg-muted/50 mb-6",children:_.jsx(Pf,{className:"h-16 w-16 text-muted-foreground"})}),_.jsx("h2",{className:"text-2xl font-bold text-foreground mb-2",children:"No Connection"}),_.jsx("p",{className:"text-muted-foreground mb-6 max-w-md",children:"Connect to your HAProxy instance to start monitoring server statistics, traffic, and health status in real-time."}),_.jsxs("div",{className:"flex flex-col sm:flex-row items-stretch sm:items-center gap-3 w-full sm:w-auto px-4 sm:px-0",children:[_.jsxs(hn,{"data-testid":"hero-connect-btn",onClick:()=>r(!0),size:"lg",className:"bg-primary text-primary-foreground hover:bg-primary/90 shadow-[0_0_20px_-3px_hsl(var(--primary)/0.4)]",children:[_.jsx(vO,{className:"h-5 w-5 mr-2"}),"Connect to HAProxy"]}),_.jsxs(hn,{variant:"outline",size:"lg","data-testid":"hero-demo-btn",onClick:j,children:[_.jsx(g5,{className:"h-5 w-5 mr-2"}),"Try Demo Mode"]})]})]}),(s||f)&&p&&_.jsxs("div",{className:"space-y-6",children:[_.jsx(g6,{summary:p.summary||D}),_.jsx("div",{className:"sm:hidden flex justify-end",children:_.jsx(hn,{variant:"outline",size:"sm","data-testid":"mobile-view-toggle-btn",onClick:()=>l(!o),className:"flex items-center gap-2",children:o?_.jsxs(_.Fragment,{children:[_.jsx(pO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Summary View"})]}):_.jsxs(_.Fragment,{children:[_.jsx(mO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Full Details"})]})})}),_.jsx(eQ,{trafficHistory:b}),_.jsxs(MQ,{defaultValue:"all",className:"w-full",children:[_.jsxs(Sk,{className:"mb-4",children:[_.jsx(Cf,{value:"all","data-testid":"tab-all",children:"All"}),_.jsxs(Cf,{value:"frontends","data-testid":"tab-frontends",children:["Frontends",_.jsx(Xg,{variant:"secondary",className:"ml-2 text-xs",children:p.frontends?.length||0})]}),_.jsxs(Cf,{value:"backends","data-testid":"tab-backends",children:["Backends",_.jsx(Xg,{variant:"secondary",className:"ml-2 text-xs",children:p.backends?.length||0})]})]}),_.jsxs(Nf,{value:"all",className:"space-y-6",children:[_.jsx(dj,{frontends:p.frontends||[],showDetails:o}),_.jsx(pj,{backends:p.backends||[],servers:p.servers||[],showDetails:o})]}),_.jsx(Nf,{value:"frontends",children:_.jsx(dj,{frontends:p.frontends||[],showDetails:o})}),_.jsx(Nf,{value:"backends",children:_.jsx(pj,{backends:p.backends||[],servers:p.servers||[],showDetails:o})})]})]}),(s||f)&&!p&&!v&&_.jsxs("div",{className:"flex flex-col items-center justify-center min-h-[60vh]",children:[_.jsx(Df,{className:"h-12 w-12 text-primary animate-spin mb-4"}),_.jsx("p",{className:"text-muted-foreground",children:"Loading statistics..."})]})]}),_.jsx(c6,{retryCount:O,maxRetries:S,connectionLost:x,error:v,onRetry:C,onDisconnect:M}),_.jsx(s6,{open:n,onOpenChange:r,onConnect:N,defaultConfig:d})]})}const fJ=KR.createRoot(document.getElementById("root"));fJ.render(_.jsx(oe.StrictMode,{children:_.jsx(cJ,{})})); + `).concat(N.x,",").concat(N.y),D=$t(e.id)?Ju("recharts-radial-line-"):e.id;return g.createElement("text",va({},r,{dominantBaseline:"central",className:qe("recharts-radial-bar-label",s)}),g.createElement("defs",null,g.createElement("path",{id:D,d:M})),g.createElement("textPath",{xlinkHref:"#".concat(D)},n))},QG=(e,t,n)=>{var{cx:r,cy:o,innerRadius:l,outerRadius:s,startAngle:f,endAngle:d}=e,p=(f+d)/2;if(n==="outside"){var{x:v,y:m}=Jt(r,o,s+t,p);return{x:v,y:m,textAnchor:v>=r?"start":"end",verticalAnchor:"middle"}}if(n==="center")return{x:r,y:o,textAnchor:"middle",verticalAnchor:"middle"};if(n==="centerTop")return{x:r,y:o,textAnchor:"middle",verticalAnchor:"start"};if(n==="centerBottom")return{x:r,y:o,textAnchor:"middle",verticalAnchor:"end"};var b=(l+s)/2,{x,y:O}=Jt(r,o,b,p);return{x,y:O,textAnchor:"middle",verticalAnchor:"middle"}},_f=e=>e!=null&&"cx"in e&&ye(e.cx),JG={angle:0,offset:5,zIndex:ln.label,position:"middle",textBreakAll:!1};function eV(e){if(!_f(e))return e;var{cx:t,cy:n,outerRadius:r}=e,o=r*2;return{x:t-r,y:n-r,width:o,upperWidth:o,lowerWidth:o,height:o}}function fi(e){var t=sn(e,JG),{viewBox:n,parentViewBox:r,position:o,value:l,children:s,content:f,className:d="",textBreakAll:p,labelRef:v}=t,m=FG(),b=QD(),x=o==="center"?b:m??b,O,S,w;n==null?O=x:_f(n)?O=n:O=T0(n);var A=eV(O);if(!O||$t(l)&&$t(s)&&!g.isValidElement(f)&&typeof f!="function")return null;var C=Wu(Wu({},t),{},{viewBox:O});if(g.isValidElement(f)){var{labelRef:j}=C,N=x_(C,UG);return g.cloneElement(f,N)}if(typeof f=="function"){var{content:M}=C,D=x_(C,$G);if(S=g.createElement(f,D),g.isValidElement(S))return S}else S=XG(t);var P=un(t);if(_f(O)){if(o==="insideStart"||o==="insideEnd"||o==="end")return ZG(t,o,S,P,O);w=QG(O,t.offset,t.position)}else{if(!A)return null;var I=BG({viewBox:A,position:o,offset:t.offset,parentViewBox:_f(r)?void 0:r});w=Wu(Wu({x:I.x,y:I.y,textAnchor:I.horizontalAnchor,verticalAnchor:I.verticalAnchor},I.width!==void 0?{width:I.width}:{}),I.height!==void 0?{height:I.height}:{})}return g.createElement(Vr,{zIndex:t.zIndex},g.createElement(Db,va({ref:v,className:qe("recharts-label",d)},P,w,{textAnchor:MG(P.textAnchor)?P.textAnchor:w.textAnchor,breakAll:p}),S))}fi.displayName="Label";var tV=(e,t,n)=>{if(!e)return null;var r={viewBox:t,labelRef:n};return e===!0?g.createElement(fi,va({key:"label-implicit"},r)):Kr(e)?g.createElement(fi,va({key:"label-implicit",value:e},r)):g.isValidElement(e)?e.type===fi?g.cloneElement(e,Wu({key:"label-implicit"},r)):g.createElement(fi,va({key:"label-implicit",content:e},r)):Pb(e)?g.createElement(fi,va({key:"label-implicit",content:e},r)):e&&typeof e=="object"?g.createElement(fi,va({},e,{key:"label-implicit"},r)):null};function nV(e){var{label:t,labelRef:n}=e,r=QD();return tV(t,r,n)||null}var jy={},Ty={},S_;function rV(){return S_||(S_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return n[n.length-1]}e.last=t})(Ty)),Ty}var Cy={},O_;function aV(){return O_||(O_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return Array.isArray(n)?n:Array.from(n)}e.toArray=t})(Cy)),Cy}var E_;function iV(){return E_||(E_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rV(),n=aV(),r=g0();function o(l){if(r.isArrayLike(l))return t.last(n.toArray(l))}e.last=o})(jy)),jy}var Ny,A_;function oV(){return A_||(A_=1,Ny=iV().last),Ny}var lV=oV();const uV=Er(lV);var sV=["valueAccessor"],cV=["dataKey","clockWise","id","textBreakAll","zIndex"];function Sd(){return Sd=Object.assign?Object.assign.bind():function(e){for(var t=1;tArray.isArray(e.value)?uV(e.value):e.value,JD=g.createContext(void 0),eP=JD.Provider,tP=g.createContext(void 0);tP.Provider;function pV(){return g.useContext(JD)}function mV(){return g.useContext(tP)}function jf(e){var{valueAccessor:t=dV}=e,n=__(e,sV),{dataKey:r,clockWise:o,id:l,textBreakAll:s,zIndex:f}=n,d=__(n,cV),p=pV(),v=mV(),m=p||v;return!m||!m.length?null:g.createElement(Vr,{zIndex:f??ln.label},g.createElement(cr,{className:"recharts-label-list"},m.map((b,x)=>{var O,S=$t(r)?t(b,x):Mt(b.payload,r),w=$t(l)?{}:{id:"".concat(l,"-").concat(x)};return g.createElement(fi,Sd({key:"label-".concat(x)},un(b),d,w,{fill:(O=n.fill)!==null&&O!==void 0?O:b.fill,parentViewBox:b.parentViewBox,value:S,textBreakAll:s,viewBox:b.viewBox,index:x,zIndex:0}))})))}jf.displayName="LabelList";function nP(e){var{label:t}=e;return t?t===!0?g.createElement(jf,{key:"labelList-implicit"}):g.isValidElement(t)||Pb(t)?g.createElement(jf,{key:"labelList-implicit",content:t}):typeof t=="object"?g.createElement(jf,Sd({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function zg(){return zg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{cx:t,cy:n,r,className:o}=e,l=qe("recharts-dot",o);return ye(t)&&ye(n)&&ye(r)?g.createElement("circle",zg({},sr(e),y0(e),{className:l,cx:t,cy:n,r})):null},vV={radiusAxis:{},angleAxis:{}},aP=kn({name:"polarAxis",initialState:vV,reducers:{addRadiusAxis(e,t){e.radiusAxis[t.payload.id]=t.payload},removeRadiusAxis(e,t){delete e.radiusAxis[t.payload.id]},addAngleAxis(e,t){e.angleAxis[t.payload.id]=t.payload},removeAngleAxis(e,t){delete e.angleAxis[t.payload.id]}}}),{addRadiusAxis:bJ,removeRadiusAxis:xJ,addAngleAxis:wJ,removeAngleAxis:SJ}=aP.actions,hV=aP.reducer;function yV(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}var kb=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,My={},j_;function gV(){return j_||(j_=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){if(typeof n!="object"||n==null)return!1;if(Object.getPrototypeOf(n)===null)return!0;if(Object.prototype.toString.call(n)!=="[object Object]"){const o=n[Symbol.toStringTag];return o==null||!Object.getOwnPropertyDescriptor(n,Symbol.toStringTag)?.writable?!1:n.toString()===`[object ${o}]`}let r=n;for(;Object.getPrototypeOf(r)!==null;)r=Object.getPrototypeOf(r);return Object.getPrototypeOf(n)===r}e.isPlainObject=t})(My)),My}var Dy,T_;function bV(){return T_||(T_=1,Dy=gV().isPlainObject),Dy}var xV=bV();const wV=Er(xV);var C_,N_,M_,D_,P_;function k_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function R_(e){for(var t=1;t{var l=n-r,s;return s=yt(C_||(C_=Vu(["M ",",",""])),e,t),s+=yt(N_||(N_=Vu(["L ",",",""])),e+n,t),s+=yt(M_||(M_=Vu(["L ",",",""])),e+n-l/2,t+o),s+=yt(D_||(D_=Vu(["L ",",",""])),e+n-l/2-r,t+o),s+=yt(P_||(P_=Vu(["L ",","," Z"])),e,t),s},AV={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},_V=e=>{var t=sn(e,AV),{x:n,y:r,upperWidth:o,lowerWidth:l,height:s,className:f}=t,{animationEasing:d,animationDuration:p,animationBegin:v,isUpdateAnimationActive:m}=t,b=g.useRef(null),[x,O]=g.useState(-1),S=g.useRef(o),w=g.useRef(l),A=g.useRef(s),C=g.useRef(n),j=g.useRef(r),N=sp(e,"trapezoid-");if(g.useEffect(()=>{if(b.current&&b.current.getTotalLength)try{var ce=b.current.getTotalLength();ce&&O(ce)}catch{}},[]),n!==+n||r!==+r||o!==+o||l!==+l||s!==+s||o===0&&l===0||s===0)return null;var M=qe("recharts-trapezoid",f);if(!m)return g.createElement("g",null,g.createElement("path",Od({},un(t),{className:M,d:z_(n,r,o,l,s)})));var D=S.current,P=w.current,I=A.current,W=C.current,ie=j.current,F="0px ".concat(x===-1?1:x,"px"),U="".concat(x,"px 0px"),ue=EN(["strokeDasharray"],p,d);return g.createElement(up,{animationId:N,key:N,canBegin:x>0,duration:p,easing:d,isActive:m,begin:v},ce=>{var se=At(D,o,ce),z=At(P,l,ce),K=At(I,s,ce),ae=At(W,n,ce),fe=At(ie,r,ce);b.current&&(S.current=se,w.current=z,A.current=K,C.current=ae,j.current=fe);var ee=ce>0?{transition:ue,strokeDasharray:U}:{strokeDasharray:F};return g.createElement("path",Od({},un(t),{className:M,d:z_(ae,fe,se,z,K),ref:b,style:R_(R_({},ee),t.style)}))})},jV=["option","shapeType","activeClassName"];function TV(e,t){if(e==null)return{};var n,r,o=CV(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{r||(o.current===null?n(QH(t)):o.current!==t&&n(JH({prev:o.current,next:t})),o.current=t)},[t,n,r]),g.useLayoutEffect(()=>()=>{o.current&&(n(eK(o.current)),o.current=null)},[n]),null}function oP(e){var{legendPayload:t}=e,n=qt(),r=cn(),o=g.useRef(null);return g.useLayoutEffect(()=>{r||(o.current===null?n(NU(t)):o.current!==t&&n(MU({prev:o.current,next:t})),o.current=t)},[n,r,t]),g.useLayoutEffect(()=>()=>{o.current&&(n(DU(o.current)),o.current=null)},[n]),null}var Py,IV=()=>{var[e]=g.useState(()=>Ju("uid-"));return e},LV=(Py=Pd.useId)!==null&&Py!==void 0?Py:IV;function BV(e,t){var n=LV();return t||(e?"".concat(e,"-").concat(n):n)}var UV=g.createContext(void 0),lP=e=>{var{id:t,type:n,children:r}=e,o=BV("recharts-".concat(n),t);return g.createElement(UV.Provider,{value:o},r(o))},$V={cartesianItems:[],polarItems:[]},uP=kn({name:"graphicalItems",initialState:$V,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:ct()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:n,next:r}=t.payload,o=Sr(e).cartesianItems.indexOf(n);o>-1&&(e.cartesianItems[o]=r)},prepare:ct()},removeCartesianGraphicalItem:{reducer(e,t){var n=Sr(e).cartesianItems.indexOf(t.payload);n>-1&&e.cartesianItems.splice(n,1)},prepare:ct()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:ct()},removePolarGraphicalItem:{reducer(e,t){var n=Sr(e).polarItems.indexOf(t.payload);n>-1&&e.polarItems.splice(n,1)},prepare:ct()}}}),{addCartesianGraphicalItem:qV,replaceCartesianGraphicalItem:HV,removeCartesianGraphicalItem:KV,addPolarGraphicalItem:OJ,removePolarGraphicalItem:EJ}=uP.actions,YV=uP.reducer,GV=e=>{var t=qt(),n=g.useRef(null);return g.useLayoutEffect(()=>{n.current===null?t(qV(e)):n.current!==e&&t(HV({prev:n.current,next:e})),n.current=e},[t,e]),g.useLayoutEffect(()=>()=>{n.current&&(t(KV(n.current)),n.current=null)},[t]),null},sP=g.memo(GV),VV=["points"];function B_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function ky(e){for(var t=1;t{var w,A,C=ky(ky(ky({r:3},s),m),{},{index:S,cx:(w=O.x)!==null&&w!==void 0?w:void 0,cy:(A=O.y)!==null&&A!==void 0?A:void 0,dataKey:l,value:O.value,payload:O.payload,points:t});return g.createElement(JV,{key:"dot-".concat(S),option:n,dotProps:C,className:o})}),x={};return f&&d!=null&&(x.clipPath="url(#clipPath-".concat(v?"":"dots-").concat(d,")")),g.createElement(Vr,{zIndex:p},g.createElement(cr,Ad({className:r},x),b))}function U_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function $_(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),mF=G([pF,_a,ja],(e,t,n)=>{if(!(!e||t==null||n==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,n-e.top-e.bottom)}}),Cp=()=>we(mF),vF=()=>we(GK);function q_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function Ry(e){for(var t=1;t{var{point:t,childIndex:n,mainColor:r,activeDot:o,dataKey:l,clipPath:s}=e;if(o===!1||t.x==null||t.y==null)return null;var f={index:n,dataKey:l,cx:t.x,cy:t.y,r:4,fill:r??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},d=Ry(Ry(Ry({},f),Ld(o)),y0(o)),p;return g.isValidElement(o)?p=g.cloneElement(o,d):typeof o=="function"?p=o(d):p=g.createElement(rP,d),g.createElement(cr,{className:"recharts-active-dot",clipPath:s},p)};function Ig(e){var{points:t,mainColor:n,activeDot:r,itemDataKey:o,clipPath:l,zIndex:s=ln.activeDot}=e,f=we(ds),d=vF();if(t==null||d==null)return null;var p=t.find(v=>d.includes(v.payload));return $t(p)?null:g.createElement(Vr,{zIndex:s},g.createElement(bF,{point:p,childIndex:Number(f),mainColor:n,dataKey:o,activeDot:r,clipPath:l}))}var xF=e=>{var{chartData:t}=e,n=qt(),r=cn();return g.useEffect(()=>r?()=>{}:(n(r_(t)),()=>{n(r_(void 0))}),[t,n,r]),null},H_={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},pP=kn({name:"brush",initialState:H_,reducers:{setBrushSettings(e,t){return t.payload==null?H_:t.payload}}}),{setBrushSettings:TJ}=pP.actions,wF=pP.reducer;function SF(e){return(e%180+180)%180}var OF=function(t){var{width:n,height:r}=t,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,l=SF(o),s=l*Math.PI/180,f=Math.atan(r/n),d=s>f&&s{e.dots.push(t.payload)},removeDot:(e,t)=>{var n=Sr(e).dots.findIndex(r=>r===t.payload);n!==-1&&e.dots.splice(n,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var n=Sr(e).areas.findIndex(r=>r===t.payload);n!==-1&&e.areas.splice(n,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var n=Sr(e).lines.findIndex(r=>r===t.payload);n!==-1&&e.lines.splice(n,1)}}}),{addDot:CJ,removeDot:NJ,addArea:MJ,removeArea:DJ,addLine:PJ,removeLine:kJ}=mP.actions,AF=mP.reducer,_F=g.createContext(void 0),jF=e=>{var{children:t}=e,[n]=g.useState("".concat(Ju("recharts"),"-clip")),r=Cp();if(r==null)return null;var{x:o,y:l,width:s,height:f}=r;return g.createElement(_F.Provider,{value:n},g.createElement("defs",null,g.createElement("clipPath",{id:n},g.createElement("rect",{x:o,y:l,height:f,width:s}))),t)};function vP(e,t){if(t<1)return[];if(t===1)return e;for(var n=[],r=0;re*o)return!1;var l=n();return e*(t-e*l/2-r)>=0&&e*(t+e*l/2-o)<=0}function NF(e,t){return vP(e,t+1)}function MF(e,t,n,r,o){for(var l=(r||[]).slice(),{start:s,end:f}=t,d=0,p=1,v=s,m=function(){var O=r?.[d];if(O===void 0)return{v:vP(r,p)};var S=d,w,A=()=>(w===void 0&&(w=n(O,S)),w),C=O.coordinate,j=d===0||ms(e,C,A,v,f);j||(d=0,v=s,p+=1),j&&(v=C+e*(A()/2+o),d+=p)},b;p<=l.length;)if(b=m(),b)return b.v;return[]}function DF(e,t,n,r,o){var l=(r||[]).slice(),s=l.length;if(s===0)return[];for(var{start:f,end:d}=t,p=1;p<=s;p++){for(var v=(s-1)%p,m=f,b=!0,x=function(){var N=r[S];if(N==null)return 0;var M=S,D,P=()=>(D===void 0&&(D=n(N,M)),D),I=N.coordinate,W=S===v||ms(e,I,P,m,d);if(!W)return b=!1,1;W&&(m=I+e*(P()/2+o))},O,S=v;S(S===void 0&&(S=n(x,b)),S);if(b===s-1){var A=e*(O.coordinate+e*w()/2-d);l[b]=O=an(an({},O),{},{tickCoord:A>0?O.coordinate-A*e:O.coordinate})}else l[b]=O=an(an({},O),{},{tickCoord:O.coordinate});if(O.tickCoord!=null){var C=ms(e,O.tickCoord,w,f,d);C&&(d=O.tickCoord-e*(w()/2+o),l[b]=an(an({},O),{},{isShow:!0}))}},v=s-1;v>=0;v--)p(v);return l}function IF(e,t,n,r,o,l){var s=(r||[]).slice(),f=s.length,{start:d,end:p}=t;if(l){var v=r[f-1];if(v!=null){var m=n(v,f-1),b=e*(v.coordinate+e*m/2-p);if(s[f-1]=v=an(an({},v),{},{tickCoord:b>0?v.coordinate-b*e:v.coordinate}),v.tickCoord!=null){var x=ms(e,v.tickCoord,()=>m,d,p);x&&(p=v.tickCoord-e*(m/2+o),s[f-1]=an(an({},v),{},{isShow:!0}))}}}for(var O=l?f-1:f,S=function(C){var j=s[C];if(j==null)return 1;var N=j,M,D=()=>(M===void 0&&(M=n(j,C)),M);if(C===0){var P=e*(N.coordinate-e*D()/2-d);s[C]=N=an(an({},N),{},{tickCoord:P<0?N.coordinate-P*e:N.coordinate})}else s[C]=N=an(an({},N),{},{tickCoord:N.coordinate});if(N.tickCoord!=null){var I=ms(e,N.tickCoord,D,d,p);I&&(d=N.tickCoord+e*(D()/2+o),s[C]=an(an({},N),{},{isShow:!0}))}},w=0;w{var P=typeof p=="function"?p(M.value,D):M.value;return O==="width"?TF(Qu(P,{fontSize:t,letterSpacing:n}),S,m):Qu(P,{fontSize:t,letterSpacing:n})[O]},A=o[0],C=o[1],j=o.length>=2&&A!=null&&C!=null?lr(C.coordinate-A.coordinate):1,N=CF(l,j,O);return d==="equidistantPreserveStart"?MF(j,N,w,o,s):d==="equidistantPreserveEnd"?DF(j,N,w,o,s):(d==="preserveStart"||d==="preserveStartEnd"?x=IF(j,N,w,o,s,d==="preserveStartEnd"):x=zF(j,N,w,o,s),x.filter(M=>M.isShow))}var LF=e=>{var{ticks:t,label:n,labelGapWithTick:r=5,tickSize:o=0,tickMargin:l=0}=e,s=0;if(t){Array.from(t).forEach(v=>{if(v){var m=v.getBoundingClientRect();m.width>s&&(s=m.width)}});var f=n?n.getBoundingClientRect().width:0,d=o+l,p=s+d+f+(n?r:0);return Math.round(p)}return 0},BF=["axisLine","width","height","className","hide","ticks","axisType"];function UF(e,t){if(e==null)return{};var n,r,o=$F(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{var{ticks:n=[],tick:r,tickLine:o,stroke:l,tickFormatter:s,unit:f,padding:d,tickTextProps:p,orientation:v,mirror:m,x:b,y:x,width:O,height:S,tickSize:w,tickMargin:A,fontSize:C,letterSpacing:j,getTicksConfig:N,events:M,axisType:D}=e,P=Rb(ht(ht({},N),{},{ticks:n}),C,j),I=VF(v,m),W=FF(v,m),ie=sr(N),F=Ld(r),U={};typeof o=="object"&&(U=o);var ue=ht(ht({},ie),{},{fill:"none"},U),ce=P.map(K=>ht({entry:K},GF(K,b,x,O,S,v,w,m,A))),se=ce.map(K=>{var{entry:ae,line:fe}=K;return g.createElement(cr,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(ae.value,"-").concat(ae.coordinate,"-").concat(ae.tickCoord)},o&&g.createElement("line",co({},ue,fe,{className:qe("recharts-cartesian-axis-tick-line",qd(o,"className"))})))}),z=ce.map((K,ae)=>{var fe,ee,{entry:R,tick:X}=K,Q=ht(ht(ht(ht({verticalAnchor:W},ie),{},{textAnchor:I,stroke:"none",fill:l},X),{},{index:ae,payload:R,visibleTicksCount:P.length,tickFormatter:s,padding:d},p),{},{angle:(fe=(ee=p?.angle)!==null&&ee!==void 0?ee:ie.angle)!==null&&fe!==void 0?fe:0}),re=ht(ht({},Q),F);return g.createElement(cr,co({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(R.value,"-").concat(R.coordinate,"-").concat(R.tickCoord)},_L(M,R,ae)),r&&g.createElement(XF,{option:r,tickProps:re,value:"".concat(typeof s=="function"?s(R.value,ae):R.value).concat(f||"")}))});return g.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(D,"-ticks")},z.length>0&&g.createElement(Vr,{zIndex:ln.label},g.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(D,"-tick-labels"),ref:t},z)),se.length>0&&g.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(D,"-tick-lines")},se))}),ZF=g.forwardRef((e,t)=>{var{axisLine:n,width:r,height:o,className:l,hide:s,ticks:f,axisType:d}=e,p=UF(e,BF),[v,m]=g.useState(""),[b,x]=g.useState(""),O=g.useRef(null);g.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var w;return LF({ticks:O.current,label:(w=e.labelRef)===null||w===void 0?void 0:w.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var S=g.useCallback(w=>{if(w){var A=w.getElementsByClassName("recharts-cartesian-axis-tick-value");O.current=A;var C=A[0];if(C){var j=window.getComputedStyle(C),N=j.fontSize,M=j.letterSpacing;(N!==v||M!==b)&&(m(N),x(M))}}},[v,b]);return s||r!=null&&r<=0||o!=null&&o<=0?null:g.createElement(Vr,{zIndex:e.zIndex},g.createElement(cr,{className:qe("recharts-cartesian-axis",l)},g.createElement(YF,{x:e.x,y:e.y,width:r,height:o,orientation:e.orientation,mirror:e.mirror,axisLine:n,otherSvgProps:sr(e)}),g.createElement(WF,{ref:S,axisType:d,events:p,fontSize:v,getTicksConfig:e,height:e.height,letterSpacing:b,mirror:e.mirror,orientation:e.orientation,padding:e.padding,stroke:e.stroke,tick:e.tick,tickFormatter:e.tickFormatter,tickLine:e.tickLine,tickMargin:e.tickMargin,tickSize:e.tickSize,tickTextProps:e.tickTextProps,ticks:f,unit:e.unit,width:e.width,x:e.x,y:e.y}),g.createElement(GG,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},g.createElement(nV,{label:e.label,labelRef:e.labelRef}),e.children)))}),zb=g.forwardRef((e,t)=>{var n=sn(e,ba);return g.createElement(ZF,co({},n,{ref:t}))});zb.displayName="CartesianAxis";var QF=["x1","y1","x2","y2","key"],JF=["offset"],eX=["xAxisId","yAxisId"],tX=["xAxisId","yAxisId"];function G_(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function on(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:n,x:r,y:o,width:l,height:s,ry:f}=e;return g.createElement("rect",{x:r,y:o,ry:f,width:l,height:s,stroke:"none",fill:t,fillOpacity:n,className:"recharts-cartesian-grid-bg"})};function hP(e){var{option:t,lineItemProps:n}=e,r;if(g.isValidElement(t))r=g.cloneElement(t,n);else if(typeof t=="function")r=t(n);else{var o,{x1:l,y1:s,x2:f,y2:d,key:p}=n,v=_d(n,QF),m=(o=sr(v))!==null&&o!==void 0?o:{},{offset:b}=m,x=_d(m,JF);r=g.createElement("line",Wi({},x,{x1:l,y1:s,x2:f,y2:d,fill:"none",key:p}))}return r}function lX(e){var{x:t,width:n,horizontal:r=!0,horizontalPoints:o}=e;if(!r||!o||!o.length)return null;var{xAxisId:l,yAxisId:s}=e,f=_d(e,eX),d=o.map((p,v)=>{var m=on(on({},f),{},{x1:t,y1:p,x2:t+n,y2:p,key:"line-".concat(v),index:v});return g.createElement(hP,{key:"line-".concat(v),option:r,lineItemProps:m})});return g.createElement("g",{className:"recharts-cartesian-grid-horizontal"},d)}function uX(e){var{y:t,height:n,vertical:r=!0,verticalPoints:o}=e;if(!r||!o||!o.length)return null;var{xAxisId:l,yAxisId:s}=e,f=_d(e,tX),d=o.map((p,v)=>{var m=on(on({},f),{},{x1:p,y1:t,x2:p,y2:t+n,key:"line-".concat(v),index:v});return g.createElement(hP,{option:r,lineItemProps:m,key:"line-".concat(v)})});return g.createElement("g",{className:"recharts-cartesian-grid-vertical"},d)}function sX(e){var{horizontalFill:t,fillOpacity:n,x:r,y:o,width:l,height:s,horizontalPoints:f,horizontal:d=!0}=e;if(!d||!t||!t.length||f==null)return null;var p=f.map(m=>Math.round(m+o-o)).sort((m,b)=>m-b);o!==p[0]&&p.unshift(0);var v=p.map((m,b)=>{var x=p[b+1],O=x==null,S=O?o+s-m:x-m;if(S<=0)return null;var w=b%t.length;return g.createElement("rect",{key:"react-".concat(b),y:m,x:r,height:S,width:l,stroke:"none",fill:t[w],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return g.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},v)}function cX(e){var{vertical:t=!0,verticalFill:n,fillOpacity:r,x:o,y:l,width:s,height:f,verticalPoints:d}=e;if(!t||!n||!n.length)return null;var p=d.map(m=>Math.round(m+o-o)).sort((m,b)=>m-b);o!==p[0]&&p.unshift(0);var v=p.map((m,b)=>{var x=p[b+1],O=x==null,S=O?o+s-m:x-m;if(S<=0)return null;var w=b%n.length;return g.createElement("rect",{key:"react-".concat(b),x:m,y:l,width:S,height:f,stroke:"none",fill:n[w],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return g.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},v)}var fX=(e,t)=>{var{xAxis:n,width:r,height:o,offset:l}=e;return iN(Rb(on(on(on({},ba),n),{},{ticks:oN(n),viewBox:{x:0,y:0,width:r,height:o}})),l.left,l.left+l.width,t)},dX=(e,t)=>{var{yAxis:n,width:r,height:o,offset:l}=e;return iN(Rb(on(on(on({},ba),n),{},{ticks:oN(n),viewBox:{x:0,y:0,width:r,height:o}})),l.top,l.top+l.height,t)},pX={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:ln.grid};function Lg(e){var t=pN(),n=mN(),r=dN(),o=on(on({},sn(e,pX)),{},{x:ye(e.x)?e.x:r.left,y:ye(e.y)?e.y:r.top,width:ye(e.width)?e.width:r.width,height:ye(e.height)?e.height:r.height}),{xAxisId:l,yAxisId:s,x:f,y:d,width:p,height:v,syncWithTicks:m,horizontalValues:b,verticalValues:x}=o,O=cn(),S=we(W=>Y2(W,"xAxis",l,O)),w=we(W=>Y2(W,"yAxis",s,O));if(!Yr(p)||!Yr(v)||!ye(f)||!ye(d))return null;var A=o.verticalCoordinatesGenerator||fX,C=o.horizontalCoordinatesGenerator||dX,{horizontalPoints:j,verticalPoints:N}=o;if((!j||!j.length)&&typeof C=="function"){var M=b&&b.length,D=C({yAxis:w?on(on({},w),{},{ticks:M?b:w.ticks}):void 0,width:t??p,height:n??v,offset:r},M?!0:m);Qf(Array.isArray(D),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof D,"]")),Array.isArray(D)&&(j=D)}if((!N||!N.length)&&typeof A=="function"){var P=x&&x.length,I=A({xAxis:S?on(on({},S),{},{ticks:P?x:S.ticks}):void 0,width:t??p,height:n??v,offset:r},P?!0:m);Qf(Array.isArray(I),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof I,"]")),Array.isArray(I)&&(N=I)}return g.createElement(Vr,{zIndex:o.zIndex},g.createElement("g",{className:"recharts-cartesian-grid"},g.createElement(oX,{fill:o.fill,fillOpacity:o.fillOpacity,x:o.x,y:o.y,width:o.width,height:o.height,ry:o.ry}),g.createElement(sX,Wi({},o,{horizontalPoints:j})),g.createElement(cX,Wi({},o,{verticalPoints:N})),g.createElement(lX,Wi({},o,{offset:r,horizontalPoints:j,xAxis:S,yAxis:w})),g.createElement(uX,Wi({},o,{offset:r,verticalPoints:N,xAxis:S,yAxis:w}))))}Lg.displayName="CartesianGrid";var mX={},yP=kn({name:"errorBars",initialState:mX,reducers:{addErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]||(e[n]=[]),e[n].push(r)},replaceErrorBar:(e,t)=>{var{itemId:n,prev:r,next:o}=t.payload;e[n]&&(e[n]=e[n].map(l=>l.dataKey===r.dataKey&&l.direction===r.direction?o:l))},removeErrorBar:(e,t)=>{var{itemId:n,errorBar:r}=t.payload;e[n]&&(e[n]=e[n].filter(o=>o.dataKey!==r.dataKey||o.direction!==r.direction))}}}),{addErrorBar:RJ,replaceErrorBar:zJ,removeErrorBar:IJ}=yP.actions,vX=yP.reducer,hX=["children"];function yX(e,t){if(e==null)return{};var n,r,o=gX(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r({x:0,y:0,value:0}),errorBarOffset:0},xX=g.createContext(bX);function wX(e){var{children:t}=e,n=yX(e,hX);return g.createElement(xX.Provider,{value:n},t)}function Ib(e,t){var n,r,o=we(p=>Na(p,e)),l=we(p=>Ma(p,t)),s=(n=o?.allowDataOverflow)!==null&&n!==void 0?n:Lt.allowDataOverflow,f=(r=l?.allowDataOverflow)!==null&&r!==void 0?r:Bt.allowDataOverflow,d=s||f;return{needClip:d,needClipX:s,needClipY:f}}function gP(e){var{xAxisId:t,yAxisId:n,clipPathId:r}=e,o=Cp(),{needClipX:l,needClipY:s,needClip:f}=Ib(t,n);if(!f||!o)return null;var{x:d,y:p,width:v,height:m}=o;return g.createElement("clipPath",{id:"clipPath-".concat(r)},g.createElement("rect",{x:l?d:d-v/2,y:s?p:p-m/2,width:l?v:v*2,height:s?m:m*2}))}var bP=(e,t,n,r)=>Tp(e,"xAxis",t,r),xP=(e,t,n,r)=>jp(e,"xAxis",t,r),wP=(e,t,n,r)=>Tp(e,"yAxis",n,r),SP=(e,t,n,r)=>jp(e,"yAxis",n,r),SX=G([nt,bP,wP,xP,SP],(e,t,n,r,o)=>jr(e,"xAxis")?Al(t,r,!1):Al(n,o,!1)),OX=(e,t,n,r,o)=>o;function EX(e){return e.type==="line"}var AX=G([pb,OX],(e,t)=>e.filter(EX).find(n=>n.id===t)),_X=G([nt,bP,wP,xP,SP,AX,SX,tb],(e,t,n,r,o,l,s,f)=>{var{chartData:d,dataStartIndex:p,dataEndIndex:v}=f;if(!(l==null||t==null||n==null||r==null||o==null||r.length===0||o.length===0||s==null||e!=="horizontal"&&e!=="vertical")){var{dataKey:m,data:b}=l,x;if(b!=null&&b.length>0?x=b:x=d?.slice(p,v+1),x!=null)return dW({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:o,dataKey:m,bandSize:s,displayedData:x})}});function OP(e){var t=Ld(e),n=3,r=2;if(t!=null){var{r:o,strokeWidth:l}=t,s=Number(o),f=Number(l);return(Number.isNaN(s)||s<0)&&(s=n),(Number.isNaN(f)||f<0)&&(f=r),{r:s,strokeWidth:f}}return{r:n,strokeWidth:r}}var zy={exports:{}},Iy={};var V_;function jX(){if(V_)return Iy;V_=1;var e=Nl();function t(d,p){return d===p&&(d!==0||1/d===1/p)||d!==d&&p!==p}var n=typeof Object.is=="function"?Object.is:t,r=e.useSyncExternalStore,o=e.useRef,l=e.useEffect,s=e.useMemo,f=e.useDebugValue;return Iy.useSyncExternalStoreWithSelector=function(d,p,v,m,b){var x=o(null);if(x.current===null){var O={hasValue:!1,value:null};x.current=O}else O=x.current;x=s(function(){function w(M){if(!A){if(A=!0,C=M,M=m(M),b!==void 0&&O.hasValue){var D=O.value;if(b(D,M))return j=D}return j=M}if(D=j,n(C,M))return D;var P=m(M);return b!==void 0&&b(D,P)?(C=M,D):(C=M,j=P)}var A=!1,C,j,N=v===void 0?null:v;return[function(){return w(p())},N===null?void 0:function(){return w(N())}]},[p,v,m,b]);var S=r(d,x[0],x[1]);return l(function(){O.hasValue=!0,O.value=S},[S]),f(S),S},Iy}var F_;function TX(){return F_||(F_=1,zy.exports=jX()),zy.exports}TX();function CX(e){e()}function NX(){let e=null,t=null;return{clear(){e=null,t=null},notify(){CX(()=>{let n=e;for(;n;)n.callback(),n=n.next})},get(){const n=[];let r=e;for(;r;)n.push(r),r=r.next;return n},subscribe(n){let r=!0;const o=t={callback:n,next:null,prev:t};return o.prev?o.prev.next=o:e=o,function(){!r||e===null||(r=!1,o.next?o.next.prev=o.prev:t=o.prev,o.prev?o.prev.next=o.next:e=o.next)}}}}var X_={notify(){},get:()=>[]};function MX(e,t){let n,r=X_,o=0,l=!1;function s(S){v();const w=r.subscribe(S);let A=!1;return()=>{A||(A=!0,w(),m())}}function f(){r.notify()}function d(){O.onStateChange&&O.onStateChange()}function p(){return l}function v(){o++,n||(n=e.subscribe(d),r=NX())}function m(){o--,n&&o===0&&(n(),n=void 0,r.clear(),r=X_)}function b(){l||(l=!0,v())}function x(){l&&(l=!1,m())}const O={addNestedSub:s,notifyNestedSubs:f,handleChangeWrapper:d,isSubscribed:p,trySubscribe:b,tryUnsubscribe:x,getListeners:()=>r};return O}var DX=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",PX=DX(),kX=()=>typeof navigator<"u"&&navigator.product==="ReactNative",RX=kX(),zX=()=>PX||RX?g.useLayoutEffect:g.useEffect,IX=zX();function W_(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function LX(e,t){if(W_(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(let o=0;o{const d=MX(o);return{store:o,subscription:d,getServerState:r?()=>r:void 0}},[o,r]),s=g.useMemo(()=>o.getState(),[o]);IX(()=>{const{subscription:d}=l;return d.onStateChange=d.notifyNestedSubs,d.trySubscribe(),s!==o.getState()&&d.notifyNestedSubs(),()=>{d.tryUnsubscribe(),d.onStateChange=void 0}},[l,s]);const f=n||qX;return g.createElement(f.Provider,{value:l},t)}var KX=HX,YX=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function GX(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Np(e,t){var n=new Set([...Object.keys(e),...Object.keys(t)]);for(var r of n)if(YX.has(r)){if(e[r]==null&&t[r]==null)continue;if(!LX(e[r],t[r]))return!1}else if(!GX(e[r],t[r]))return!1;return!0}var VX=["id"],FX=["type","layout","connectNulls","needClip","shape"],XX=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function vs(){return vs=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,legendType:o,hide:l}=e;return[{inactive:l,dataKey:t,type:o,color:r,value:Jd(n,t),payload:e}]},tW=g.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:o,fill:l,name:s,hide:f,unit:d,tooltipType:p,id:v}=e,m={dataDefinedOnItem:n,getPosition:mo,settings:{stroke:r,strokeWidth:o,fill:l,dataKey:t,nameKey:void 0,name:Jd(s,t),hide:f,type:p,color:r,unit:d,graphicalItemId:v}};return g.createElement(iP,{tooltipEntrySettings:m})}),EP=(e,t)=>"".concat(t,"px ").concat(e-t,"px");function nW(e,t){for(var n=e.length%2!==0?[...e,0]:e,r=[],o=0;o{var r=n.reduce((x,O)=>x+O);if(!r)return EP(t,e);for(var o=Math.floor(e/r),l=e%r,s=t-e,f=[],d=0,p=0;dl){f=[...n.slice(0,d),l-p];break}}var b=f.length%2===0?[0,s]:[s];return[...nW(n,o),...f,...b].map(x=>"".concat(x,"px")).join(", ")};function aW(e){var{clipPathId:t,points:n,props:r}=e,{dot:o,dataKey:l,needClip:s}=r,{id:f}=r,d=Lb(r,VX),p=sr(d);return g.createElement(cP,{points:n,dot:o,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:l,baseProps:p,needClip:s,clipPathId:t})}function iW(e){var{showLabels:t,children:n,points:r}=e,o=g.useMemo(()=>r?.map(l=>{var s,f,d={x:(s=l.x)!==null&&s!==void 0?s:0,y:(f=l.y)!==null&&f!==void 0?f:0,width:0,lowerWidth:0,upperWidth:0,height:0};return Lr(Lr({},d),{},{value:l.value,payload:l.payload,viewBox:d,parentViewBox:void 0,fill:void 0})}),[r]);return g.createElement(eP,{value:t?o:void 0},n)}function Q_(e){var{clipPathId:t,pathRef:n,points:r,strokeDasharray:o,props:l}=e,{type:s,layout:f,connectNulls:d,needClip:p,shape:v}=l,m=Lb(l,FX),b=Lr(Lr({},un(m)),{},{fill:"none",className:"recharts-line-curve",clipPath:p?"url(#clipPath-".concat(t,")"):void 0,points:r,type:s,layout:f,connectNulls:d,strokeDasharray:o??l.strokeDasharray});return g.createElement(g.Fragment,null,r?.length>1&&g.createElement(zV,vs({shapeType:"curve",option:v},b,{pathRef:n})),g.createElement(aW,{points:r,clipPathId:t,props:l}))}function oW(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function lW(e){var{clipPathId:t,props:n,pathRef:r,previousPointsRef:o,longestAnimatedLengthRef:l}=e,{points:s,strokeDasharray:f,isAnimationActive:d,animationBegin:p,animationDuration:v,animationEasing:m,animateNewValues:b,width:x,height:O,onAnimationEnd:S,onAnimationStart:w}=n,A=o.current,C=sp(s,"recharts-line-"),j=g.useRef(C),[N,M]=g.useState(!1),D=!N,P=g.useCallback(()=>{typeof S=="function"&&S(),M(!1)},[S]),I=g.useCallback(()=>{typeof w=="function"&&w(),M(!0)},[w]),W=oW(r.current),ie=g.useRef(0);j.current!==C&&(ie.current=l.current,j.current=C);var F=ie.current;return g.createElement(iW,{points:s,showLabels:D},n.children,g.createElement(up,{animationId:C,begin:p,duration:v,isActive:d,easing:m,onAnimationEnd:P,onAnimationStart:I,key:C},U=>{var ue=At(F,W+F,U),ce=Math.min(ue,W),se;if(d)if(f){var z="".concat(f).split(/[,\s]+/gim).map(fe=>parseFloat(fe));se=rW(ce,W,z)}else se=EP(W,ce);else se=f==null?void 0:String(f);if(U>0&&W>0&&(o.current=s,l.current=Math.max(l.current,ce)),A){var K=A.length/s.length,ae=U===1?s:s.map((fe,ee)=>{var R=Math.floor(ee*K);if(A[R]){var X=A[R];return Lr(Lr({},fe),{},{x:At(X.x,fe.x,U),y:At(X.y,fe.y,U)})}return b?Lr(Lr({},fe),{},{x:At(x*2,fe.x,U),y:At(O/2,fe.y,U)}):Lr(Lr({},fe),{},{x:fe.x,y:fe.y})});return o.current=ae,g.createElement(Q_,{props:n,points:ae,clipPathId:t,pathRef:r,strokeDasharray:se})}return g.createElement(Q_,{props:n,points:s,clipPathId:t,pathRef:r,strokeDasharray:se})}),g.createElement(nP,{label:n.label}))}function uW(e){var{clipPathId:t,props:n}=e,r=g.useRef(null),o=g.useRef(0),l=g.useRef(null);return g.createElement(lW,{props:n,clipPathId:t,previousPointsRef:r,longestAnimatedLengthRef:o,pathRef:l})}var sW=(e,t)=>{var n,r;return{x:(n=e.x)!==null&&n!==void 0?n:void 0,y:(r=e.y)!==null&&r!==void 0?r:void 0,value:e.value,errorVal:Mt(e.payload,t)}};class cW extends g.Component{render(){var{hide:t,dot:n,points:r,className:o,xAxisId:l,yAxisId:s,top:f,left:d,width:p,height:v,id:m,needClip:b,zIndex:x}=this.props;if(t)return null;var O=qe("recharts-line",o),S=m,{r:w,strokeWidth:A}=OP(n),C=kb(n),j=w*2+A,N=b?"url(#clipPath-".concat(C?"":"dots-").concat(S,")"):void 0;return g.createElement(Vr,{zIndex:x},g.createElement(cr,{className:O},b&&g.createElement("defs",null,g.createElement(gP,{clipPathId:S,xAxisId:l,yAxisId:s}),!C&&g.createElement("clipPath",{id:"clipPath-dots-".concat(S)},g.createElement("rect",{x:d-j/2,y:f-j/2,width:p+j,height:v+j}))),g.createElement(wX,{xAxisId:l,yAxisId:s,data:r,dataPointFormatter:sW,errorBarOffset:0},g.createElement(uW,{props:this.props,clipPathId:S}))),g.createElement(Ig,{activeDot:this.props.activeDot,points:r,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:N}))}}var AP={activeDot:!0,animateNewValues:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!0,fill:"#fff",hide:!1,isAnimationActive:"auto",label:!1,legendType:"line",stroke:"#3182bd",strokeWidth:1,xAxisId:0,yAxisId:0,zIndex:ln.line,type:"linear"};function fW(e){var t=sn(e,AP),{activeDot:n,animateNewValues:r,animationBegin:o,animationDuration:l,animationEasing:s,connectNulls:f,dot:d,hide:p,isAnimationActive:v,label:m,legendType:b,xAxisId:x,yAxisId:O,id:S}=t,w=Lb(t,XX),{needClip:A}=Ib(x,O),C=Cp(),j=vo(),N=cn(),M=we(ie=>_X(ie,x,O,N,S));if(j!=="horizontal"&&j!=="vertical"||M==null||C==null)return null;var{height:D,width:P,x:I,y:W}=C;return g.createElement(cW,vs({},w,{id:S,connectNulls:f,dot:d,activeDot:n,animateNewValues:r,animationBegin:o,animationDuration:l,animationEasing:s,isAnimationActive:v,hide:p,label:m,legendType:b,xAxisId:x,yAxisId:O,points:M,layout:j,height:D,width:P,left:I,top:W,needClip:A}))}function dW(e){var{layout:t,xAxis:n,yAxis:r,xAxisTicks:o,yAxisTicks:l,dataKey:s,bandSize:f,displayedData:d}=e;return d.map((p,v)=>{var m=Mt(p,s);if(t==="horizontal"){var b=Zf({axis:n,ticks:o,bandSize:f,entry:p,index:v}),x=$t(m)?null:r.scale.map(m);return{x:b,y:x??null,value:m,payload:p}}var O=$t(m)?null:n.scale.map(m),S=Zf({axis:r,ticks:l,bandSize:f,entry:p,index:v});return O==null||S==null?null:{x:O,y:S,value:m,payload:p}}).filter(Boolean)}function pW(e){var t=sn(e,AP),n=cn();return g.createElement(lP,{id:t.id,type:"line"},r=>g.createElement(g.Fragment,null,g.createElement(oP,{legendPayload:eW(t)}),g.createElement(tW,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),g.createElement(sP,{type:"line",id:r,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:n}),g.createElement(fW,vs({},t,{id:r}))))}var Bg=g.memo(pW,Np);Bg.displayName="Line";function Bb(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(o=>o.id===t))===null||r===void 0?void 0:r.xAxisId)!==null&&n!==void 0?n:fP}function Ub(e,t){var n,r;return(n=(r=e.graphicalItems.cartesianItems.find(o=>o.id===t))===null||r===void 0?void 0:r.yAxisId)!==null&&n!==void 0?n:fP}var _P=(e,t,n)=>Tp(e,"xAxis",Bb(e,t),n),jP=(e,t,n)=>jp(e,"xAxis",Bb(e,t),n),TP=(e,t,n)=>Tp(e,"yAxis",Ub(e,t),n),CP=(e,t,n)=>jp(e,"yAxis",Ub(e,t),n),mW=G([nt,_P,TP,jP,CP],(e,t,n,r,o)=>jr(e,"xAxis")?Al(t,r,!1):Al(n,o,!1)),vW=(e,t)=>t,NP=G([pb,vW],(e,t)=>e.filter(n=>n.type==="area").find(n=>n.id===t)),MP=e=>{var t=nt(e),n=jr(t,"xAxis");return n?"yAxis":"xAxis"},hW=(e,t)=>{var n=MP(e);return n==="yAxis"?Ub(e,t):Bb(e,t)},yW=(e,t,n)=>KM(e,MP(e),hW(e,t),n),gW=G([NP,yW],(e,t)=>{var n;if(!(e==null||t==null)){var{stackId:r}=e,o=cb(e);if(!(r==null||o==null)){var l=(n=t[r])===null||n===void 0?void 0:n.stackedData,s=l?.find(f=>f.key===o);if(s!=null)return s.map(f=>[f[0],f[1]])}}}),bW=G([nt,_P,TP,jP,CP,gW,Nq,mW,NP,Bq],(e,t,n,r,o,l,s,f,d,p)=>{var{chartData:v,dataStartIndex:m,dataEndIndex:b}=s;if(!(d==null||e!=="horizontal"&&e!=="vertical"||t==null||n==null||r==null||o==null||r.length===0||o.length===0||f==null)){var{data:x}=d,O;if(x&&x.length>0?O=x:O=v?.slice(m,b+1),O!=null)return LW({layout:e,xAxis:t,yAxis:n,xAxisTicks:r,yAxisTicks:o,dataStartIndex:m,areaSettings:d,stackedData:l,displayedData:O,chartBaseValue:p,bandSize:f})}}),xW=["id"],wW=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function to(){return to=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:n,stroke:r,fill:o,legendType:l,hide:s}=e;return[{inactive:s,dataKey:t,type:l,color:jd(r,o),value:Jd(n,t),payload:e}]},jW=g.memo(e=>{var{dataKey:t,data:n,stroke:r,strokeWidth:o,fill:l,name:s,hide:f,unit:d,tooltipType:p,id:v}=e,m={dataDefinedOnItem:n,getPosition:mo,settings:{stroke:r,strokeWidth:o,fill:l,dataKey:t,nameKey:void 0,name:Jd(s,t),hide:f,type:p,color:jd(r,l),unit:d,graphicalItemId:v}};return g.createElement(iP,{tooltipEntrySettings:m})});function TW(e){var{clipPathId:t,points:n,props:r}=e,{needClip:o,dot:l,dataKey:s}=r,f=sr(r);return g.createElement(cP,{points:n,dot:l,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:s,baseProps:f,needClip:o,clipPathId:t})}function CW(e){var{showLabels:t,children:n,points:r}=e,o=r.map(l=>{var s,f,d={x:(s=l.x)!==null&&s!==void 0?s:0,y:(f=l.y)!==null&&f!==void 0?f:0,width:0,lowerWidth:0,upperWidth:0,height:0};return hl(hl({},d),{},{value:l.value,payload:l.payload,parentViewBox:void 0,viewBox:d,fill:void 0})});return g.createElement(eP,{value:t?o:void 0},n)}function ej(e){var{points:t,baseLine:n,needClip:r,clipPathId:o,props:l}=e,{layout:s,type:f,stroke:d,connectNulls:p,isRange:v}=l,{id:m}=l,b=DP(l,xW),x=sr(b),O=un(b);return g.createElement(g.Fragment,null,t?.length>1&&g.createElement(cr,{clipPath:r?"url(#clipPath-".concat(o,")"):void 0},g.createElement(Zu,to({},O,{id:m,points:t,connectNulls:p,type:f,baseLine:n,layout:s,stroke:"none",className:"recharts-area-area"})),d!=="none"&&g.createElement(Zu,to({},x,{className:"recharts-area-curve",layout:s,type:f,connectNulls:p,fill:"none",points:t})),d!=="none"&&v&&g.createElement(Zu,to({},x,{className:"recharts-area-curve",layout:s,type:f,connectNulls:p,fill:"none",points:n}))),g.createElement(TW,{points:t,props:b,clipPathId:o}))}function NW(e){var t,n,{alpha:r,baseLine:o,points:l,strokeWidth:s}=e,f=(t=l[0])===null||t===void 0?void 0:t.y,d=(n=l[l.length-1])===null||n===void 0?void 0:n.y;if(!ze(f)||!ze(d))return null;var p=r*Math.abs(f-d),v=Math.max(...l.map(m=>m.x||0));return ye(o)?v=Math.max(o,v):o&&Array.isArray(o)&&o.length&&(v=Math.max(...o.map(m=>m.x||0),v)),ye(v)?g.createElement("rect",{x:0,y:fm.y||0));return ye(o)?v=Math.max(o,v):o&&Array.isArray(o)&&o.length&&(v=Math.max(...o.map(m=>m.y||0),v)),ye(v)?g.createElement("rect",{x:f({points:s,baseLine:f}),[s,f]),S=sp(O,"recharts-area-"),w=C0(),[A,C]=g.useState(!1),j=!A,N=g.useCallback(()=>{typeof x=="function"&&x(),C(!1)},[x]),M=g.useCallback(()=>{typeof b=="function"&&b(),C(!0)},[b]);if(w==null)return null;var D=o.current,P=l.current;return g.createElement(CW,{showLabels:j,points:s},r.children,g.createElement(up,{animationId:S,begin:p,duration:v,isActive:d,easing:m,onAnimationEnd:N,onAnimationStart:M,key:S},I=>{if(D){var W=D.length/s.length,ie=I===1?s:s.map((U,ue)=>{var ce=Math.floor(ue*W);if(D[ce]){var se=D[ce];return hl(hl({},U),{},{x:At(se.x,U.x,I),y:At(se.y,U.y,I)})}return U}),F;return ye(f)?F=At(P,f,I):$t(f)||Hr(f)?F=At(P,0,I):F=f.map((U,ue)=>{var ce=Math.floor(ue*W);if(Array.isArray(P)&&P[ce]){var se=P[ce];return hl(hl({},U),{},{x:At(se.x,U.x,I),y:At(se.y,U.y,I)})}return U}),I>0&&(o.current=ie,l.current=F),g.createElement(ej,{points:ie,baseLine:F,needClip:t,clipPathId:n,props:r})}return I>0&&(o.current=s,l.current=f),g.createElement(cr,null,d&&g.createElement("defs",null,g.createElement("clipPath",{id:"animationClipPath-".concat(n)},g.createElement(DW,{alpha:I,points:s,baseLine:f,layout:w,strokeWidth:r.strokeWidth}))),g.createElement(cr,{clipPath:"url(#animationClipPath-".concat(n,")")},g.createElement(ej,{points:s,baseLine:f,needClip:t,clipPathId:n,props:r})))}),g.createElement(nP,{label:r.label}))}function kW(e){var{needClip:t,clipPathId:n,props:r}=e,o=g.useRef(null),l=g.useRef();return g.createElement(PW,{needClip:t,clipPathId:n,props:r,previousPointsRef:o,previousBaselineRef:l})}class RW extends g.PureComponent{render(){var{hide:t,dot:n,points:r,className:o,top:l,left:s,needClip:f,xAxisId:d,yAxisId:p,width:v,height:m,id:b,baseLine:x,zIndex:O}=this.props;if(t)return null;var S=qe("recharts-area",o),w=b,{r:A,strokeWidth:C}=OP(n),j=kb(n),N=A*2+C,M=f?"url(#clipPath-".concat(j?"":"dots-").concat(w,")"):void 0;return g.createElement(Vr,{zIndex:O},g.createElement(cr,{className:S},f&&g.createElement("defs",null,g.createElement(gP,{clipPathId:w,xAxisId:d,yAxisId:p}),!j&&g.createElement("clipPath",{id:"clipPath-dots-".concat(w)},g.createElement("rect",{x:s-N/2,y:l-N/2,width:v+N,height:m+N}))),g.createElement(kW,{needClip:f,clipPathId:w,props:this.props})),g.createElement(Ig,{points:r,mainColor:jd(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:M}),this.props.isRange&&Array.isArray(x)&&g.createElement(Ig,{points:x,mainColor:jd(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:M}))}}var PP={activeDot:!0,animationBegin:0,animationDuration:1500,animationEasing:"ease",connectNulls:!1,dot:!1,fill:"#3182bd",fillOpacity:.6,hide:!1,isAnimationActive:"auto",legendType:"line",stroke:"#3182bd",strokeWidth:1,type:"linear",label:!1,xAxisId:0,yAxisId:0,zIndex:ln.area};function zW(e){var t,n=sn(e,PP),{activeDot:r,animationBegin:o,animationDuration:l,animationEasing:s,connectNulls:f,dot:d,fill:p,fillOpacity:v,hide:m,isAnimationActive:b,legendType:x,stroke:O,xAxisId:S,yAxisId:w}=n,A=DP(n,wW),C=vo(),j=kD(),{needClip:N}=Ib(S,w),M=cn(),{points:D,isRange:P,baseLine:I}=(t=we(ce=>bW(ce,e.id,M)))!==null&&t!==void 0?t:{},W=Cp();if(C!=="horizontal"&&C!=="vertical"||W==null||j!=="AreaChart"&&j!=="ComposedChart")return null;var{height:ie,width:F,x:U,y:ue}=W;return!D||!D.length?null:g.createElement(RW,to({},A,{activeDot:r,animationBegin:o,animationDuration:l,animationEasing:s,baseLine:I,connectNulls:f,dot:d,fill:p,fillOpacity:v,height:ie,hide:m,layout:C,isAnimationActive:b==="auto"?!Os.isSsr:b,isRange:P,legendType:x,needClip:N,points:D,stroke:O,width:F,left:U,top:ue,xAxisId:S,yAxisId:w}))}var IW=(e,t,n,r,o)=>{var l=n??t;if(ye(l))return l;var s=e==="horizontal"?o:r,f=s.scale.domain();if(s.type==="number"){var d=Math.max(f[0],f[1]),p=Math.min(f[0],f[1]);return l==="dataMin"?p:l==="dataMax"||d<0?d:Math.max(Math.min(f[0],f[1]),0)}return l==="dataMin"?f[0]:l==="dataMax"?f[1]:f[0]};function LW(e){var{areaSettings:{connectNulls:t,baseValue:n,dataKey:r},stackedData:o,layout:l,chartBaseValue:s,xAxis:f,yAxis:d,displayedData:p,dataStartIndex:v,xAxisTicks:m,yAxisTicks:b,bandSize:x}=e,O=o&&o.length,S=IW(l,s,n,f,d),w=l==="horizontal",A=!1,C=p.map((N,M)=>{var D,P,I,W;if(O)W=o[v+M];else{var ie=Mt(N,r);Array.isArray(ie)?(W=ie,A=!0):W=[S,ie]}var F=(D=(P=W)===null||P===void 0?void 0:P[1])!==null&&D!==void 0?D:null,U=F==null||O&&!t&&Mt(N,r)==null;if(w){var ue;return{x:Zf({axis:f,ticks:m,bandSize:x,entry:N,index:M}),y:U?null:(ue=d.scale.map(F))!==null&&ue!==void 0?ue:null,value:W,payload:N}}return{x:U?null:(I=f.scale.map(F))!==null&&I!==void 0?I:null,y:Zf({axis:d,ticks:b,bandSize:x,entry:N,index:M}),value:W,payload:N}}),j;return O||A?j=C.map(N=>{var M,D=Array.isArray(N.value)?N.value[0]:null;if(w){var P;return{x:N.x,y:D!=null&&N.y!=null&&(P=d.scale.map(D))!==null&&P!==void 0?P:null,payload:N.payload}}return{x:D!=null&&(M=f.scale.map(D))!==null&&M!==void 0?M:null,y:N.y,payload:N.payload}}):j=w?d.scale.map(S):f.scale.map(S),{points:C,baseLine:j??0,isRange:A}}function BW(e){var t=sn(e,PP),n=cn();return g.createElement(lP,{id:t.id,type:"area"},r=>g.createElement(g.Fragment,null,g.createElement(oP,{legendPayload:_W(t)}),g.createElement(jW,{dataKey:t.dataKey,data:t.data,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:r}),g.createElement(sP,{type:"area",id:r,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:kB(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:n,connectNulls:t.connectNulls}),g.createElement(zW,to({},t,{id:r}))))}var Ug=g.memo(BW,Np);Ug.displayName="Area";var UW=["domain","range"],$W=["domain","range"];function tj(e,t){if(e==null)return{};var n,r,o=qW(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{if(s!=null)return aj(aj({},l),{},{type:s})},[l,s]);return g.useLayoutEffect(()=>{f!=null&&(n.current===null?t(iF(f)):n.current!==f&&t(oF({prev:n.current,next:f})),n.current=f)},[f,t]),g.useLayoutEffect(()=>()=>{n.current&&(t(lF(n.current)),n.current=null)},[t]),null}var ZW=e=>{var{xAxisId:t,className:n}=e,r=we(uN),o=cn(),l="xAxis",s=we(A=>dD(A,l,t,o)),f=we(A=>RH(A,t)),d=we(A=>$H(A,t)),p=we(A=>DM(A,t));if(f==null||d==null||p==null)return null;var{dangerouslySetInnerHTML:v,ticks:m,scale:b}=e,x=qg(e,KW),{id:O,scale:S}=p,w=qg(p,YW);return g.createElement(zb,$g({},x,w,{x:d.x,y:d.y,width:f.width,height:f.height,className:qe("recharts-".concat(l," ").concat(l),n),viewBox:r,ticks:s,axisType:l}))},QW={allowDataOverflow:Lt.allowDataOverflow,allowDecimals:Lt.allowDecimals,allowDuplicatedCategory:Lt.allowDuplicatedCategory,angle:Lt.angle,axisLine:ba.axisLine,height:Lt.height,hide:!1,includeHidden:Lt.includeHidden,interval:Lt.interval,label:!1,minTickGap:Lt.minTickGap,mirror:Lt.mirror,orientation:Lt.orientation,padding:Lt.padding,reversed:Lt.reversed,scale:Lt.scale,tick:Lt.tick,tickCount:Lt.tickCount,tickLine:ba.tickLine,tickSize:ba.tickSize,type:Lt.type,xAxisId:0},JW=e=>{var t=sn(e,QW);return g.createElement(g.Fragment,null,g.createElement(WW,{allowDataOverflow:t.allowDataOverflow,allowDecimals:t.allowDecimals,allowDuplicatedCategory:t.allowDuplicatedCategory,angle:t.angle,dataKey:t.dataKey,domain:t.domain,height:t.height,hide:t.hide,id:t.xAxisId,includeHidden:t.includeHidden,interval:t.interval,minTickGap:t.minTickGap,mirror:t.mirror,name:t.name,orientation:t.orientation,padding:t.padding,reversed:t.reversed,scale:t.scale,tick:t.tick,tickCount:t.tickCount,tickFormatter:t.tickFormatter,ticks:t.ticks,type:t.type,unit:t.unit}),g.createElement(ZW,t))},Hg=g.memo(JW,kP);Hg.displayName="XAxis";var eZ=["type"],tZ=["dangerouslySetInnerHTML","ticks","scale"],nZ=["id","scale"];function Kg(){return Kg=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(s!=null)return oj(oj({},l),{},{type:s})},[s,l]);return g.useLayoutEffect(()=>{f!=null&&(n.current===null?t(uF(f)):n.current!==f&&t(sF({prev:n.current,next:f})),n.current=f)},[f,t]),g.useLayoutEffect(()=>()=>{n.current&&(t(cF(n.current)),n.current=null)},[t]),null}function uZ(e){var{yAxisId:t,className:n,width:r,label:o}=e,l=g.useRef(null),s=g.useRef(null),f=we(uN),d=cn(),p=qt(),v="yAxis",m=we(D=>KH(D,t)),b=we(D=>HH(D,t)),x=we(D=>dD(D,v,t,d)),O=we(D=>PM(D,t));if(g.useLayoutEffect(()=>{if(!(r!=="auto"||!m||Pb(o)||g.isValidElement(o)||O==null)){var D=l.current;if(D){var P=D.getCalculatedWidth();Math.round(m.width)!==Math.round(P)&&p(fF({id:t,width:P}))}}},[x,m,p,o,t,r,O]),m==null||b==null||O==null)return null;var{dangerouslySetInnerHTML:S,ticks:w,scale:A}=e,C=Yg(e,tZ),{id:j,scale:N}=O,M=Yg(O,nZ);return g.createElement(zb,Kg({},C,M,{ref:l,labelRef:s,x:b.x,y:b.y,tickTextProps:r==="auto"?{width:void 0}:{width:r},width:m.width,height:m.height,className:qe("recharts-".concat(v," ").concat(v),n),viewBox:f,ticks:x,axisType:v}))}var sZ={allowDataOverflow:Bt.allowDataOverflow,allowDecimals:Bt.allowDecimals,allowDuplicatedCategory:Bt.allowDuplicatedCategory,angle:Bt.angle,axisLine:ba.axisLine,hide:!1,includeHidden:Bt.includeHidden,interval:Bt.interval,label:!1,minTickGap:Bt.minTickGap,mirror:Bt.mirror,orientation:Bt.orientation,padding:Bt.padding,reversed:Bt.reversed,scale:Bt.scale,tick:Bt.tick,tickCount:Bt.tickCount,tickLine:ba.tickLine,tickSize:ba.tickSize,type:Bt.type,width:Bt.width,yAxisId:0},cZ=e=>{var t=sn(e,sZ);return g.createElement(g.Fragment,null,g.createElement(lZ,{interval:t.interval,id:t.yAxisId,scale:t.scale,type:t.type,domain:t.domain,allowDataOverflow:t.allowDataOverflow,dataKey:t.dataKey,allowDuplicatedCategory:t.allowDuplicatedCategory,allowDecimals:t.allowDecimals,tickCount:t.tickCount,padding:t.padding,includeHidden:t.includeHidden,reversed:t.reversed,ticks:t.ticks,width:t.width,orientation:t.orientation,mirror:t.mirror,hide:t.hide,unit:t.unit,name:t.name,angle:t.angle,minTickGap:t.minTickGap,tick:t.tick,tickFormatter:t.tickFormatter}),g.createElement(uZ,t))},Gg=g.memo(cZ,kP);Gg.displayName="YAxis";var fZ=(e,t)=>t,$b=G([fZ,nt,NM,Yt,TD,Da,aY,en],fY),qb=e=>{var t=e.currentTarget.getBoundingClientRect(),n=t.width/e.currentTarget.offsetWidth,r=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/n),chartY:Math.round((e.clientY-t.top)/r)}},RP=fr("mouseClick"),zP=bs();zP.startListening({actionCreator:RP,effect:(e,t)=>{var n=e.payload,r=$b(t.getState(),qb(n));r?.activeIndex!=null&&t.dispatch(rK({activeIndex:r.activeIndex,activeDataKey:void 0,activeCoordinate:r.activeCoordinate}))}});var Vg=fr("mouseMove"),IP=bs(),gf=null;IP.startListening({actionCreator:Vg,effect:(e,t)=>{var n=e.payload;gf!==null&&cancelAnimationFrame(gf);var r=qb(n);gf=requestAnimationFrame(()=>{var o=t.getState(),l=Sb(o,o.tooltip.settings.shared);if(l==="axis"){var s=$b(o,r);s?.activeIndex!=null?t.dispatch(bD({activeIndex:s.activeIndex,activeDataKey:void 0,activeCoordinate:s.activeCoordinate})):t.dispatch(gD())}gf=null})}});function dZ(e,t){return t instanceof HTMLElement?"HTMLElement <".concat(t.tagName,' class="').concat(t.className,'">'):t===window?"global.window":e==="children"&&typeof t=="object"&&t!==null?"<>":t}var lj={accessibilityLayer:!0,barCategoryGap:"10%",barGap:4,barSize:void 0,className:void 0,maxBarSize:void 0,stackOffset:"none",syncId:void 0,syncMethod:"index",baseValue:void 0,reverseStackOrder:!1},LP=kn({name:"rootProps",initialState:lj,reducers:{updateOptions:(e,t)=>{var n;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(n=t.payload.barGap)!==null&&n!==void 0?n:lj.barGap,e.barSize=t.payload.barSize,e.maxBarSize=t.payload.maxBarSize,e.stackOffset=t.payload.stackOffset,e.syncId=t.payload.syncId,e.syncMethod=t.payload.syncMethod,e.className=t.payload.className,e.baseValue=t.payload.baseValue,e.reverseStackOrder=t.payload.reverseStackOrder}}}),pZ=LP.reducer,{updateOptions:mZ}=LP.actions,vZ=null,hZ={updatePolarOptions:(e,t)=>t.payload},BP=kn({name:"polarOptions",initialState:vZ,reducers:hZ}),{updatePolarOptions:LJ}=BP.actions,yZ=BP.reducer,UP=fr("keyDown"),$P=fr("focus"),Hb=bs();Hb.startListening({actionCreator:UP,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:o}=n.tooltip,l=e.payload;if(!(l!=="ArrowRight"&&l!=="ArrowLeft"&&l!=="Enter")){var s=Ob(o,ql(n),Ns(n),Ds(n)),f=s==null?-1:Number(s);if(!(!Number.isFinite(f)||f<0)){var d=Da(n);if(l==="Enter"){var p=wd(n,"axis","hover",String(o.index));t.dispatch(Dg({active:!o.active,activeIndex:o.index,activeCoordinate:p}));return}var v=FH(n),m=v==="left-to-right"?1:-1,b=l==="ArrowRight"?1:-1,x=f+b*m;if(!(d==null||x>=d.length||x<0)){var O=wd(n,"axis","hover",String(x));t.dispatch(Dg({active:!0,activeIndex:x.toString(),activeCoordinate:O}))}}}}}});Hb.startListening({actionCreator:$P,effect:(e,t)=>{var n=t.getState(),r=n.rootProps.accessibilityLayer!==!1;if(r){var{keyboardInteraction:o}=n.tooltip;if(!o.active&&o.index==null){var l="0",s=wd(n,"axis","hover",String(l));t.dispatch(Dg({active:!0,activeIndex:l,activeCoordinate:s}))}}}});var ir=fr("externalEvent"),qP=bs(),Ly=new Map;qP.startListening({actionCreator:ir,effect:(e,t)=>{var{handler:n,reactEvent:r}=e.payload;if(n!=null){r.persist();var o=r.type,l=Ly.get(o);l!==void 0&&cancelAnimationFrame(l);var s=requestAnimationFrame(()=>{try{var f=t.getState(),d={activeCoordinate:HK(f),activeDataKey:$K(f),activeIndex:ds(f),activeLabel:MD(f),activeTooltipIndex:ds(f),isTooltipActive:KK(f)};n(d,r)}finally{Ly.delete(o)}});Ly.set(o,s)}}});var gZ=G([Ul],e=>e.tooltipItemPayloads),bZ=G([gZ,(e,t)=>t,(e,t,n)=>n],(e,t,n)=>{if(t!=null){var r=e.find(l=>l.settings.graphicalItemId===n);if(r!=null){var{getPosition:o}=r;if(o!=null)return o(t)}}}),HP=fr("touchMove"),KP=bs();KP.startListening({actionCreator:HP,effect:(e,t)=>{var n=e.payload;if(!(n.touches==null||n.touches.length===0)){var r=t.getState(),o=Sb(r,r.tooltip.settings.shared);if(o==="axis"){var l=n.touches[0];if(l==null)return;var s=$b(r,qb({clientX:l.clientX,clientY:l.clientY,currentTarget:n.currentTarget}));s?.activeIndex!=null&&t.dispatch(bD({activeIndex:s.activeIndex,activeDataKey:void 0,activeCoordinate:s.activeCoordinate}))}else if(o==="item"){var f,d=n.touches[0];if(document.elementFromPoint==null||d==null)return;var p=document.elementFromPoint(d.clientX,d.clientY);if(!p||!p.getAttribute)return;var v=p.getAttribute($B),m=(f=p.getAttribute(qB))!==null&&f!==void 0?f:void 0,b=$l(r).find(S=>S.id===m);if(v==null||b==null||m==null)return;var{dataKey:x}=b,O=bZ(r,v,m);t.dispatch(nK({activeDataKey:x,activeIndex:v,activeCoordinate:O,activeGraphicalItemId:m}))}}}});var xZ=NC({brush:wF,cartesianAxis:dF,chartData:qY,errorBars:vX,graphicalItems:YV,layout:AB,legend:PU,options:IY,polarAxis:hV,polarOptions:yZ,referenceElements:AF,rootProps:pZ,tooltip:aK,zIndex:AY}),wZ=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return W8({reducer:xZ,preloadedState:t,middleware:r=>{var o;return r({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((o="es6")!==null&&o!==void 0?o:"")}).concat([zP.middleware,IP.middleware,Hb.middleware,qP.middleware,KP.middleware])},enhancers:r=>{var o=r;return typeof r=="function"&&(o=r()),o.concat(YC({type:"raf"}))},devTools:{serialize:{replacer:dZ},name:"recharts-".concat(n)}})};function SZ(e){var{preloadedState:t,children:n,reduxStoreName:r}=e,o=cn(),l=g.useRef(null);if(o)return n;l.current==null&&(l.current=wZ(t,r));var s=x0;return g.createElement(KX,{context:s,store:l.current},n)}function OZ(e){var{layout:t,margin:n}=e,r=qt(),o=cn();return g.useEffect(()=>{o||(r(SB(t)),r(wB(n)))},[r,o,t,n]),null}var EZ=g.memo(OZ,Np);function AZ(e){var t=qt();return g.useEffect(()=>{t(mZ(e))},[t,e]),null}function uj(e){var{zIndex:t,isPanorama:n}=e,r=g.useRef(null),o=qt();return g.useLayoutEffect(()=>(r.current&&o(OY({zIndex:t,element:r.current,isPanorama:n})),()=>{o(EY({zIndex:t,isPanorama:n}))}),[o,t,n]),g.createElement("g",{tabIndex:-1,ref:r})}function sj(e){var{children:t,isPanorama:n}=e,r=we(pY);if(!r||r.length===0)return t;var o=r.filter(s=>s<0),l=r.filter(s=>s>0);return g.createElement(g.Fragment,null,o.map(s=>g.createElement(uj,{key:s,zIndex:s,isPanorama:n})),t,l.map(s=>g.createElement(uj,{key:s,zIndex:s,isPanorama:n})))}var _Z=["children"];function jZ(e,t){if(e==null)return{};var n,r,o=TZ(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{var n=pN(),r=mN(),o=ON();if(!Yr(n)||!Yr(r))return null;var{children:l,otherAttributes:s,title:f,desc:d}=e,p,v;return s!=null&&(typeof s.tabIndex=="number"?p=s.tabIndex:p=o?0:void 0,typeof s.role=="string"?v=s.role:v=o?"application":void 0),g.createElement(FT,Td({},s,{title:f,desc:d,role:v,tabIndex:p,width:n,height:r,style:CZ,ref:t}),l)}),MZ=e=>{var{children:t}=e,n=we(rp);if(!n)return null;var{width:r,height:o,y:l,x:s}=n;return g.createElement(FT,{width:r,height:o,x:s,y:l},t)},cj=g.forwardRef((e,t)=>{var{children:n}=e,r=jZ(e,_Z),o=cn();return o?g.createElement(MZ,null,g.createElement(sj,{isPanorama:!0},n)):g.createElement(NZ,Td({ref:t},r),g.createElement(sj,{isPanorama:!1},n))});function DZ(){var e=qt(),[t,n]=g.useState(null),r=we(UB);return g.useEffect(()=>{if(t!=null){var o=t.getBoundingClientRect(),l=o.width/t.offsetWidth;ze(l)&&l!==r&&e(EB(l))}},[t,e,r]),n}function fj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(o){return Object.getOwnPropertyDescriptor(e,o).enumerable})),n.push.apply(n,r)}return n}function PZ(e){for(var t=1;t(ZY(),null);function Cd(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var LZ=g.forwardRef((e,t)=>{var n,r,o=g.useRef(null),[l,s]=g.useState({containerWidth:Cd((n=e.style)===null||n===void 0?void 0:n.width),containerHeight:Cd((r=e.style)===null||r===void 0?void 0:r.height)}),f=g.useCallback((p,v)=>{s(m=>{var b=Math.round(p),x=Math.round(v);return m.containerWidth===b&&m.containerHeight===x?m:{containerWidth:b,containerHeight:x}})},[]),d=g.useCallback(p=>{if(typeof t=="function"&&t(p),p!=null&&typeof ResizeObserver<"u"){var{width:v,height:m}=p.getBoundingClientRect();f(v,m);var b=O=>{var S=O[0];if(S!=null){var{width:w,height:A}=S.contentRect;f(w,A)}},x=new ResizeObserver(b);x.observe(p),o.current=x}},[t,f]);return g.useEffect(()=>()=>{var p=o.current;p?.disconnect()},[f]),g.createElement(g.Fragment,null,g.createElement(ws,{width:l.containerWidth,height:l.containerHeight}),g.createElement("div",vi({ref:d},e)))}),BZ=g.forwardRef((e,t)=>{var{width:n,height:r}=e,[o,l]=g.useState({containerWidth:Cd(n),containerHeight:Cd(r)}),s=g.useCallback((d,p)=>{l(v=>{var m=Math.round(d),b=Math.round(p);return v.containerWidth===m&&v.containerHeight===b?v:{containerWidth:m,containerHeight:b}})},[]),f=g.useCallback(d=>{if(typeof t=="function"&&t(d),d!=null){var{width:p,height:v}=d.getBoundingClientRect();s(p,v)}},[t,s]);return g.createElement(g.Fragment,null,g.createElement(ws,{width:o.containerWidth,height:o.containerHeight}),g.createElement("div",vi({ref:f},e)))}),UZ=g.forwardRef((e,t)=>{var{width:n,height:r}=e;return g.createElement(g.Fragment,null,g.createElement(ws,{width:n,height:r}),g.createElement("div",vi({ref:t},e)))}),$Z=g.forwardRef((e,t)=>{var{width:n,height:r}=e;return typeof n=="string"||typeof r=="string"?g.createElement(BZ,vi({},e,{ref:t})):typeof n=="number"&&typeof r=="number"?g.createElement(UZ,vi({},e,{width:n,height:r,ref:t})):g.createElement(g.Fragment,null,g.createElement(ws,{width:n,height:r}),g.createElement("div",vi({ref:t},e)))});function qZ(e){return e?LZ:$Z}var HZ=g.forwardRef((e,t)=>{var{children:n,className:r,height:o,onClick:l,onContextMenu:s,onDoubleClick:f,onMouseDown:d,onMouseEnter:p,onMouseLeave:v,onMouseMove:m,onMouseUp:b,onTouchEnd:x,onTouchMove:O,onTouchStart:S,style:w,width:A,responsive:C,dispatchTouchEvents:j=!0}=e,N=g.useRef(null),M=qt(),[D,P]=g.useState(null),[I,W]=g.useState(null),ie=DZ(),F=j0(),U=F?.width>0?F.width:A,ue=F?.height>0?F.height:o,ce=g.useCallback(Y=>{ie(Y),typeof t=="function"&&t(Y),P(Y),W(Y),Y!=null&&(N.current=Y)},[ie,t,P,W]),se=g.useCallback(Y=>{M(RP(Y)),M(ir({handler:l,reactEvent:Y}))},[M,l]),z=g.useCallback(Y=>{M(Vg(Y)),M(ir({handler:p,reactEvent:Y}))},[M,p]),K=g.useCallback(Y=>{M(gD()),M(ir({handler:v,reactEvent:Y}))},[M,v]),ae=g.useCallback(Y=>{M(Vg(Y)),M(ir({handler:m,reactEvent:Y}))},[M,m]),fe=g.useCallback(()=>{M($P())},[M]),ee=g.useCallback(Y=>{M(UP(Y.key))},[M]),R=g.useCallback(Y=>{M(ir({handler:s,reactEvent:Y}))},[M,s]),X=g.useCallback(Y=>{M(ir({handler:f,reactEvent:Y}))},[M,f]),Q=g.useCallback(Y=>{M(ir({handler:d,reactEvent:Y}))},[M,d]),re=g.useCallback(Y=>{M(ir({handler:b,reactEvent:Y}))},[M,b]),le=g.useCallback(Y=>{M(ir({handler:S,reactEvent:Y}))},[M,S]),de=g.useCallback(Y=>{j&&M(HP(Y)),M(ir({handler:O,reactEvent:Y}))},[M,j,O]),be=g.useCallback(Y=>{M(ir({handler:x,reactEvent:Y}))},[M,x]),Ee=qZ(C);return g.createElement(BD.Provider,{value:D},g.createElement(C6.Provider,{value:I},g.createElement(Ee,{width:U??w?.width,height:ue??w?.height,className:qe("recharts-wrapper",r),style:PZ({position:"relative",cursor:"default",width:U,height:ue},w),onClick:se,onContextMenu:R,onDoubleClick:X,onFocus:fe,onKeyDown:ee,onMouseDown:Q,onMouseEnter:z,onMouseLeave:K,onMouseMove:ae,onMouseUp:re,onTouchEnd:be,onTouchMove:de,onTouchStart:le,ref:ce},g.createElement(IZ,null),n)))}),KZ=["width","height","responsive","children","className","style","compact","title","desc"];function YZ(e,t){if(e==null)return{};var n,r,o=GZ(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r{var{width:n,height:r,responsive:o,children:l,className:s,style:f,compact:d,title:p,desc:v}=e,m=YZ(e,KZ),b=sr(m);return d?g.createElement(g.Fragment,null,g.createElement(ws,{width:n,height:r}),g.createElement(cj,{otherAttributes:b,title:p,desc:v},l)):g.createElement(HZ,{className:s,style:f,width:n,height:r,responsive:o??!1,onClick:e.onClick,onMouseLeave:e.onMouseLeave,onMouseEnter:e.onMouseEnter,onMouseMove:e.onMouseMove,onMouseDown:e.onMouseDown,onMouseUp:e.onMouseUp,onContextMenu:e.onContextMenu,onDoubleClick:e.onDoubleClick,onTouchStart:e.onTouchStart,onTouchMove:e.onTouchMove,onTouchEnd:e.onTouchEnd},g.createElement(cj,{otherAttributes:b,title:p,desc:v,ref:t},g.createElement(jF,null,l)))});function Fg(){return Fg=Object.assign?Object.assign.bind():function(e){for(var t=1;tg.createElement(YP,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:WZ,tooltipPayloadSearcher:UD,categoricalChartProps:e,ref:t})),QZ=["axis"],JZ=g.forwardRef((e,t)=>g.createElement(YP,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:QZ,tooltipPayloadSearcher:UD,categoricalChartProps:e,ref:t}));function eQ({trafficHistory:e}){const t=({active:n,payload:r,label:o})=>n&&r&&r.length?_.jsxs("div",{className:"bg-card border border-border rounded-md p-3 shadow-lg",children:[_.jsx("p",{className:"text-xs text-muted-foreground mb-2",children:o}),r.map((l,s)=>_.jsxs("p",{className:"text-sm font-mono",style:{color:l.color},children:[l.name,": ",l.name.includes("Bytes")?or(l.value):l.value]},s))]}):null;return _.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-4",children:[_.jsxs(Ol,{className:"p-5 border-border","data-testid":"traffic-volume-chart",children:[_.jsx("h3",{className:"text-sm font-semibold text-foreground mb-4 uppercase tracking-wide",children:"Traffic Volume"}),_.jsx("div",{className:"h-48",children:_.jsx(nA,{width:"100%",height:"100%",children:_.jsxs(JZ,{data:e,margin:{top:5,right:5,left:0,bottom:5},children:[_.jsxs("defs",{children:[_.jsxs("linearGradient",{id:"colorBytesIn",x1:"0",y1:"0",x2:"0",y2:"1",children:[_.jsx("stop",{offset:"5%",stopColor:"hsl(var(--chart-2))",stopOpacity:.3}),_.jsx("stop",{offset:"95%",stopColor:"hsl(var(--chart-2))",stopOpacity:0})]}),_.jsxs("linearGradient",{id:"colorBytesOut",x1:"0",y1:"0",x2:"0",y2:"1",children:[_.jsx("stop",{offset:"5%",stopColor:"hsl(var(--chart-1))",stopOpacity:.3}),_.jsx("stop",{offset:"95%",stopColor:"hsl(var(--chart-1))",stopOpacity:0})]})]}),_.jsx(Lg,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),_.jsx(Hg,{dataKey:"time",tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1}),_.jsx(Gg,{tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1,tickFormatter:n=>or(n,0),width:60}),_.jsx(u_,{content:_.jsx(t,{})}),_.jsx(Ug,{type:"monotone",dataKey:"bytesIn",name:"Bytes In",stroke:"hsl(var(--chart-2))",strokeWidth:2,fillOpacity:1,fill:"url(#colorBytesIn)"}),_.jsx(Ug,{type:"monotone",dataKey:"bytesOut",name:"Bytes Out",stroke:"hsl(var(--chart-1))",strokeWidth:2,fillOpacity:1,fill:"url(#colorBytesOut)"})]})})}),_.jsxs("div",{className:"flex justify-center gap-6 mt-3",children:[_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-2))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Bytes In"})]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-1))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Bytes Out"})]})]})]}),_.jsxs(Ol,{className:"p-5 border-border","data-testid":"request-rate-chart",children:[_.jsx("h3",{className:"text-sm font-semibold text-foreground mb-4 uppercase tracking-wide",children:"Request Rate & Sessions"}),_.jsx("div",{className:"h-48",children:_.jsx(nA,{width:"100%",height:"100%",children:_.jsxs(ZZ,{data:e,margin:{top:5,right:5,left:0,bottom:5},children:[_.jsx(Lg,{strokeDasharray:"3 3",stroke:"hsl(var(--border))"}),_.jsx(Hg,{dataKey:"time",tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1}),_.jsx(Gg,{tick:{fill:"hsl(var(--muted-foreground))",fontSize:10},axisLine:{stroke:"hsl(var(--border))"},tickLine:!1,width:40}),_.jsx(u_,{content:_.jsx(t,{})}),_.jsx(Bg,{type:"monotone",dataKey:"rate",name:"Req/s",stroke:"hsl(var(--chart-3))",strokeWidth:2,dot:!1,activeDot:{r:4,fill:"hsl(var(--chart-3))"}}),_.jsx(Bg,{type:"monotone",dataKey:"sessions",name:"Sessions",stroke:"hsl(var(--chart-5))",strokeWidth:2,dot:!1,activeDot:{r:4,fill:"hsl(var(--chart-5))"}})]})})}),_.jsxs("div",{className:"flex justify-center gap-6 mt-3",children:[_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-3))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Req/s"})]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:"hsl(var(--chart-5))"}}),_.jsx("span",{className:"text-xs text-muted-foreground",children:"Sessions"})]})]})]})]})}const tQ=l0("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",outline:"text-foreground"}},defaultVariants:{variant:"default"}});function Xg({className:e,variant:t,...n}){return _.jsx("div",{className:He(tQ({variant:t}),e),...n})}const Nd=g.forwardRef(({className:e,...t},n)=>_.jsx("div",{className:"relative w-full overflow-auto",children:_.jsx("table",{ref:n,className:He("w-full caption-bottom text-sm",e),...t})}));Nd.displayName="Table";const Md=g.forwardRef(({className:e,...t},n)=>_.jsx("thead",{ref:n,className:He("[&_tr]:border-b",e),...t}));Md.displayName="TableHeader";const Dd=g.forwardRef(({className:e,...t},n)=>_.jsx("tbody",{ref:n,className:He("[&_tr:last-child]:border-0",e),...t}));Dd.displayName="TableBody";const nQ=g.forwardRef(({className:e,...t},n)=>_.jsx("tfoot",{ref:n,className:He("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",e),...t}));nQ.displayName="TableFooter";const Zi=g.forwardRef(({className:e,...t},n)=>_.jsx("tr",{ref:n,className:He("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...t}));Zi.displayName="TableRow";const Qe=g.forwardRef(({className:e,...t},n)=>_.jsx("th",{ref:n,className:He("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...t}));Qe.displayName="TableHead";const Je=g.forwardRef(({className:e,...t},n)=>_.jsx("td",{ref:n,className:He("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",e),...t}));Je.displayName="TableCell";const rQ=g.forwardRef(({className:e,...t},n)=>_.jsx("caption",{ref:n,className:He("mt-4 text-sm text-muted-foreground",e),...t}));rQ.displayName="TableCaption";var Mp="Collapsible",[aQ]=fo(Mp),[iQ,Kb]=aQ(Mp),GP=g.forwardRef((e,t)=>{const{__scopeCollapsible:n,open:r,defaultOpen:o,disabled:l,onOpenChange:s,...f}=e,[d,p]=Ml({prop:r,defaultProp:o??!1,onChange:s,caller:Mp});return _.jsx(iQ,{scope:n,disabled:l,contentId:yl(),open:d,onOpenToggle:g.useCallback(()=>p(v=>!v),[p]),children:_.jsx(lt.div,{"data-state":Gb(d),"data-disabled":l?"":void 0,...f,ref:t})})});GP.displayName=Mp;var VP="CollapsibleTrigger",FP=g.forwardRef((e,t)=>{const{__scopeCollapsible:n,...r}=e,o=Kb(VP,n);return _.jsx(lt.button,{type:"button","aria-controls":o.contentId,"aria-expanded":o.open||!1,"data-state":Gb(o.open),"data-disabled":o.disabled?"":void 0,disabled:o.disabled,...r,ref:t,onClick:ot(e.onClick,o.onOpenToggle)})});FP.displayName=VP;var Yb="CollapsibleContent",XP=g.forwardRef((e,t)=>{const{forceMount:n,...r}=e,o=Kb(Yb,e.__scopeCollapsible);return _.jsx(Dl,{present:n||o.open,children:({present:l})=>_.jsx(oQ,{...r,ref:t,present:l})})});XP.displayName=Yb;var oQ=g.forwardRef((e,t)=>{const{__scopeCollapsible:n,present:r,children:o,...l}=e,s=Kb(Yb,n),[f,d]=g.useState(r),p=g.useRef(null),v=Dt(t,p),m=g.useRef(0),b=m.current,x=g.useRef(0),O=x.current,S=s.open||f,w=g.useRef(S),A=g.useRef(void 0);return g.useEffect(()=>{const C=requestAnimationFrame(()=>w.current=!1);return()=>cancelAnimationFrame(C)},[]),no(()=>{const C=p.current;if(C){A.current=A.current||{transitionDuration:C.style.transitionDuration,animationName:C.style.animationName},C.style.transitionDuration="0s",C.style.animationName="none";const j=C.getBoundingClientRect();m.current=j.height,x.current=j.width,w.current||(C.style.transitionDuration=A.current.transitionDuration,C.style.animationName=A.current.animationName),d(r)}},[s.open,r]),_.jsx(lt.div,{"data-state":Gb(s.open),"data-disabled":s.disabled?"":void 0,id:s.contentId,hidden:!S,...l,ref:v,style:{"--radix-collapsible-content-height":b?`${b}px`:void 0,"--radix-collapsible-content-width":O?`${O}px`:void 0,...e.style},children:S&&o})});function Gb(e){return e?"open":"closed"}var lQ=GP;const uQ=lQ,sQ=FP,cQ=XP;function Tf({status:e}){const t=VR(e);return _.jsx(Xg,{"data-testid":`status-badge-${e}`,className:`rounded-full px-2 py-0.5 text-[10px] font-bold tracking-wider uppercase ${t==="success"?"bg-primary text-primary-foreground":t==="destructive"?"bg-destructive text-destructive-foreground":t==="warning"?"bg-[hsl(var(--warning))] text-[hsl(var(--warning-foreground))]":"bg-muted text-muted-foreground"}`,children:e})}function dj({frontends:e,showDetails:t}){const[n,r]=g.useState(""),o=e.filter(l=>(l.pxname||"").toLowerCase().includes(n.toLowerCase()));return _.jsxs(Ol,{className:"border-border","data-testid":"frontend-table",children:[_.jsxs("div",{className:"p-4 border-b border-border",children:[_.jsxs("div",{className:"flex items-center justify-between mb-3",children:[_.jsxs("h3",{className:"text-sm font-semibold text-foreground uppercase tracking-wide flex items-center gap-2",children:[_.jsx(tT,{className:"h-4 w-4 text-primary"}),"Frontends"]}),_.jsxs("span",{className:"text-xs text-muted-foreground font-mono",children:[o.length," entries"]})]}),_.jsxs("div",{className:"relative",children:[_.jsx(nT,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),_.jsx(bl,{"data-testid":"frontend-filter-input",placeholder:"Filter frontends...",value:n,onChange:l=>r(l.target.value),className:"pl-9 h-8 text-sm"})]})]}),_.jsx("div",{className:"overflow-x-auto",children:_.jsxs(Nd,{children:[_.jsx(Md,{children:_.jsxs(Zi,{className:"hover:bg-transparent border-border",children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Name"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Status"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Sessions"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes In"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes Out"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Rate"}),t&&_.jsxs(_.Fragment,{children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Req Tot"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"2xx"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"4xx"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"5xx"})]})]})}),_.jsx(Dd,{children:o.map((l,s)=>_.jsxs(Zi,{className:"hover:bg-muted/50 border-border h-10",children:[_.jsx(Je,{className:"font-mono text-sm py-2",children:l.pxname}),_.jsx(Je,{className:"py-2",children:_.jsx(Tf,{status:l.status})}),_.jsxs(Je,{className:"font-mono text-sm text-right py-2",children:[Mn(l.scur)," / ",Mn(l.smax)]}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(l.bin)}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(l.bout)}),_.jsxs(Je,{className:"font-mono text-sm text-right py-2",children:[Mn(l.rate),"/s"]}),t&&_.jsxs(_.Fragment,{children:[_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:Mn(l.req_tot)}),_.jsx(Je,{className:"font-mono text-sm text-right text-primary py-2",children:Mn(l.hrsp_2xx)}),_.jsx(Je,{className:"font-mono text-sm text-right text-[hsl(var(--warning))] py-2",children:Mn(l.hrsp_4xx)}),_.jsx(Je,{className:"font-mono text-sm text-right text-destructive py-2",children:Mn(l.hrsp_5xx)})]})]},`${l.pxname}-${s}`))})]})})]})}function pj({backends:e,servers:t,showDetails:n}){const[r,o]=g.useState(""),[l,s]=g.useState(new Set),[f,d]=g.useState("tree"),p=e.filter(A=>(A.pxname||"").toLowerCase().includes(r.toLowerCase())),v=g.useMemo(()=>r?t.filter(A=>(A.pxname||"").toLowerCase().includes(r.toLowerCase())||(A.svname||"").toLowerCase().includes(r.toLowerCase())):t,[t,r]),m=A=>{const C=new Set(l);C.has(A)?C.delete(A):C.add(A),s(C)},b=()=>{const A=new Set(p.map(C=>C.pxname));s(A)},x=()=>{s(new Set)},O=p.length>0&&p.every(A=>l.has(A.pxname)),S=A=>t.filter(C=>C.pxname===A),w=A=>e.find(C=>C.pxname===A);return _.jsxs(Ol,{className:"border-border","data-testid":"backend-table",children:[_.jsxs("div",{className:"p-4 border-b border-border",children:[_.jsxs("div",{className:"flex items-center justify-between mb-3",children:[_.jsxs("h3",{className:"text-sm font-semibold text-foreground uppercase tracking-wide flex items-center gap-2",children:[_.jsx(eT,{className:"h-4 w-4 text-[hsl(var(--accent))]"}),"Backends & Servers"]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsxs("span",{className:"text-xs text-muted-foreground font-mono mr-2",children:[p.length," backends, ",t.length," servers"]}),f==="tree"&&_.jsx(hn,{variant:"outline",size:"sm","data-testid":"expand-collapse-toggle",onClick:O?x:b,className:"h-7 px-2 text-xs",children:O?_.jsxs(_.Fragment,{children:[_.jsx(i5,{className:"h-3.5 w-3.5 mr-1"}),"Collapse"]}):_.jsxs(_.Fragment,{children:[_.jsx(_5,{className:"h-3.5 w-3.5 mr-1"}),"Expand"]})}),_.jsx(hn,{variant:"outline",size:"sm","data-testid":"tree-flat-toggle",onClick:()=>d(f==="tree"?"flat":"tree"),className:`h-7 px-2 text-xs ${f==="flat"?"bg-primary/10 border-primary/30":""}`,children:f==="tree"?_.jsxs(_.Fragment,{children:[_.jsx(m5,{className:"h-3.5 w-3.5 mr-1"}),"Flat"]}):_.jsxs(_.Fragment,{children:[_.jsx(l5,{className:"h-3.5 w-3.5 mr-1"}),"Tree"]})})]})]}),_.jsxs("div",{className:"relative",children:[_.jsx(nT,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),_.jsx(bl,{"data-testid":"backend-filter-input",placeholder:f==="tree"?"Filter backends...":"Filter servers...",value:r,onChange:A=>o(A.target.value),className:"pl-9 h-8 text-sm"})]})]}),_.jsxs("div",{className:"overflow-x-auto",children:[f==="tree"&&_.jsx("div",{className:"divide-y divide-border",children:p.map((A,C)=>{const j=S(A.pxname),N=l.has(A.pxname);return _.jsxs(uQ,{open:N,onOpenChange:()=>m(A.pxname),children:[_.jsx(sQ,{className:"w-full","data-testid":`backend-row-${A.pxname}`,children:_.jsxs("div",{className:"flex items-center px-4 py-3 hover:bg-muted/50 transition-colors",children:[_.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[j.length>0?N?_.jsx(Wz,{className:"h-4 w-4 text-muted-foreground"}):_.jsx(Qz,{className:"h-4 w-4 text-muted-foreground"}):_.jsx("div",{className:"w-4"}),_.jsx("span",{className:"font-mono text-sm",children:A.pxname}),_.jsx(Tf,{status:FR(A.status,j)}),j.length>0&&_.jsxs("span",{className:"text-xs text-muted-foreground",children:["(",j.filter(M=>M.status==="UP").length,"/",j.length," servers)"]})]}),_.jsxs("div",{className:"flex items-center gap-6 text-sm font-mono text-muted-foreground",children:[_.jsxs("span",{title:"Sessions",children:[Mn(A.scur)," sess"]}),_.jsx("span",{title:"Bytes In",children:or(A.bin)}),_.jsx("span",{title:"Bytes Out",children:or(A.bout)}),_.jsxs("span",{title:"Rate",children:[Mn(A.rate),"/s"]}),n&&_.jsx(_.Fragment,{children:_.jsxs("span",{title:"Response Time",className:"text-[hsl(var(--accent))]",children:[A.rtime||0,"ms"]})})]})]})}),_.jsx(cQ,{children:j.length>0&&_.jsx("div",{className:"bg-muted/30",children:_.jsxs(Nd,{children:[_.jsx(Md,{children:_.jsxs(Zi,{className:"hover:bg-transparent border-border",children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium pl-12",children:"Server"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Status"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Address"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Sessions"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes In"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes Out"}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Check"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Uptime"})]})]})}),_.jsx(Dd,{children:j.map((M,D)=>_.jsxs(Zi,{className:"hover:bg-muted/50 border-border h-9","data-testid":`server-row-${M.svname}`,children:[_.jsx(Je,{className:"font-mono text-sm py-1.5 pl-12",children:M.svname}),_.jsx(Je,{className:"py-1.5",children:_.jsx(Tf,{status:M.status})}),_.jsx(Je,{className:"font-mono text-xs text-muted-foreground py-1.5",children:M.addr||"-"}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5",children:Mn(M.scur)}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5",children:or(M.bin)}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5",children:or(M.bout)}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Je,{className:"text-xs py-1.5",children:_.jsx("span",{className:`${M.check_status==="L7OK"||M.check_status==="L4OK"?"text-primary":"text-destructive"}`,children:WS(M.check_status)})}),_.jsx(Je,{className:"font-mono text-sm text-right py-1.5 text-muted-foreground",children:XS(M.lastchg)})]})]},`${M.pxname}-${M.svname}-${D}`))})]})})})]},`${A.pxname}-${C}`)})}),f==="flat"&&_.jsxs(Nd,{children:[_.jsx(Md,{children:_.jsxs(Zi,{className:"hover:bg-transparent border-border",children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Server"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Status"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Address"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Sessions"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes In"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Bytes Out"}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium",children:"Check"}),_.jsx(Qe,{className:"text-xs uppercase text-muted-foreground font-medium text-right",children:"Uptime"})]})]})}),_.jsx(Dd,{children:v.map((A,C)=>(w(A.pxname),_.jsxs(Zi,{className:"hover:bg-muted/50 border-border h-10","data-testid":`flat-server-row-${A.pxname}-${A.svname}`,children:[_.jsxs(Je,{className:"font-mono text-sm py-2",children:[_.jsx("span",{className:"text-muted-foreground",children:A.pxname}),_.jsx("span",{className:"text-muted-foreground/50 mx-1",children:"/"}),_.jsx("span",{children:A.svname})]}),_.jsx(Je,{className:"py-2",children:_.jsx(Tf,{status:A.status})}),_.jsx(Je,{className:"font-mono text-xs text-muted-foreground py-2",children:A.addr||"-"}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:Mn(A.scur)}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(A.bin)}),_.jsx(Je,{className:"font-mono text-sm text-right py-2",children:or(A.bout)}),n&&_.jsxs(_.Fragment,{children:[_.jsx(Je,{className:"text-xs py-2",children:_.jsx("span",{className:`${A.check_status==="L7OK"||A.check_status==="L4OK"?"text-primary":"text-destructive"}`,children:WS(A.check_status)})}),_.jsx(Je,{className:"font-mono text-sm text-right py-2 text-muted-foreground",children:XS(A.lastchg)})]})]},`flat-${A.pxname}-${A.svname}-${C}`)))})]})]})]})}var Dp="Switch",[fQ]=fo(Dp),[dQ,pQ]=fQ(Dp),WP=g.forwardRef((e,t)=>{const{__scopeSwitch:n,name:r,checked:o,defaultChecked:l,required:s,disabled:f,value:d="on",onCheckedChange:p,form:v,...m}=e,[b,x]=g.useState(null),O=Dt(t,j=>x(j)),S=g.useRef(!1),w=b?v||!!b.closest("form"):!0,[A,C]=Ml({prop:o,defaultProp:l??!1,onChange:p,caller:Dp});return _.jsxs(dQ,{scope:n,checked:A,disabled:f,children:[_.jsx(lt.button,{type:"button",role:"switch","aria-checked":A,"aria-required":s,"data-state":ek(A),"data-disabled":f?"":void 0,disabled:f,value:d,...m,ref:O,onClick:ot(e.onClick,j=>{C(N=>!N),w&&(S.current=j.isPropagationStopped(),S.current||j.stopPropagation())})}),w&&_.jsx(JP,{control:b,bubbles:!S.current,name:r,value:d,checked:A,required:s,disabled:f,form:v,style:{transform:"translateX(-100%)"}})]})});WP.displayName=Dp;var ZP="SwitchThumb",QP=g.forwardRef((e,t)=>{const{__scopeSwitch:n,...r}=e,o=pQ(ZP,n);return _.jsx(lt.span,{"data-state":ek(o.checked),"data-disabled":o.disabled?"":void 0,...r,ref:t})});QP.displayName=ZP;var mQ="SwitchBubbleInput",JP=g.forwardRef(({__scopeSwitch:e,control:t,checked:n,bubbles:r=!0,...o},l)=>{const s=g.useRef(null),f=Dt(s,l),d=jT(n),p=TT(t);return g.useEffect(()=>{const v=s.current;if(!v)return;const m=window.HTMLInputElement.prototype,x=Object.getOwnPropertyDescriptor(m,"checked").set;if(d!==n&&x){const O=new Event("click",{bubbles:r});x.call(v,n),v.dispatchEvent(O)}},[d,n,r]),_.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:n,...o,tabIndex:-1,ref:f,style:{...o.style,...p,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});JP.displayName=mQ;function ek(e){return e?"checked":"unchecked"}var tk=WP,vQ=QP;const nk=g.forwardRef(({className:e,...t},n)=>_.jsx(tk,{className:He("peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border-2 border-transparent shadow-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=unchecked]:bg-input",e),...t,ref:n,children:_.jsx(vQ,{className:He("pointer-events-none block h-4 w-4 rounded-full bg-background shadow-lg ring-0 transition-transform data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0")})}));nk.displayName=tk.displayName;var By="rovingFocusGroup.onEntryFocus",hQ={bubbles:!1,cancelable:!0},ks="RovingFocusGroup",[Wg,rk,yQ]=CT(ks),[gQ,ak]=fo(ks,[yQ]),[bQ,xQ]=gQ(ks),ik=g.forwardRef((e,t)=>_.jsx(Wg.Provider,{scope:e.__scopeRovingFocusGroup,children:_.jsx(Wg.Slot,{scope:e.__scopeRovingFocusGroup,children:_.jsx(wQ,{...e,ref:t})})}));ik.displayName=ks;var wQ=g.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:o=!1,dir:l,currentTabStopId:s,defaultCurrentTabStopId:f,onCurrentTabStopIdChange:d,onEntryFocus:p,preventScrollOnEntryFocus:v=!1,...m}=e,b=g.useRef(null),x=Dt(t,b),O=u0(l),[S,w]=Ml({prop:s,defaultProp:f??null,onChange:d,caller:ks}),[A,C]=g.useState(!1),j=Sl(p),N=rk(n),M=g.useRef(!1),[D,P]=g.useState(0);return g.useEffect(()=>{const I=b.current;if(I)return I.addEventListener(By,j),()=>I.removeEventListener(By,j)},[j]),_.jsx(bQ,{scope:n,orientation:r,dir:O,loop:o,currentTabStopId:S,onItemFocus:g.useCallback(I=>w(I),[w]),onItemShiftTab:g.useCallback(()=>C(!0),[]),onFocusableItemAdd:g.useCallback(()=>P(I=>I+1),[]),onFocusableItemRemove:g.useCallback(()=>P(I=>I-1),[]),children:_.jsx(lt.div,{tabIndex:A||D===0?-1:0,"data-orientation":r,...m,ref:x,style:{outline:"none",...e.style},onMouseDown:ot(e.onMouseDown,()=>{M.current=!0}),onFocus:ot(e.onFocus,I=>{const W=!M.current;if(I.target===I.currentTarget&&W&&!A){const ie=new CustomEvent(By,hQ);if(I.currentTarget.dispatchEvent(ie),!ie.defaultPrevented){const F=N().filter(z=>z.focusable),U=F.find(z=>z.active),ue=F.find(z=>z.id===S),se=[U,ue,...F].filter(Boolean).map(z=>z.ref.current);uk(se,v)}}M.current=!1}),onBlur:ot(e.onBlur,()=>C(!1))})})}),ok="RovingFocusGroupItem",lk=g.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:o=!1,tabStopId:l,children:s,...f}=e,d=yl(),p=l||d,v=xQ(ok,n),m=v.currentTabStopId===p,b=rk(n),{onFocusableItemAdd:x,onFocusableItemRemove:O,currentTabStopId:S}=v;return g.useEffect(()=>{if(r)return x(),()=>O()},[r,x,O]),_.jsx(Wg.ItemSlot,{scope:n,id:p,focusable:r,active:o,children:_.jsx(lt.span,{tabIndex:m?0:-1,"data-orientation":v.orientation,...f,ref:t,onMouseDown:ot(e.onMouseDown,w=>{r?v.onItemFocus(p):w.preventDefault()}),onFocus:ot(e.onFocus,()=>v.onItemFocus(p)),onKeyDown:ot(e.onKeyDown,w=>{if(w.key==="Tab"&&w.shiftKey){v.onItemShiftTab();return}if(w.target!==w.currentTarget)return;const A=EQ(w,v.orientation,v.dir);if(A!==void 0){if(w.metaKey||w.ctrlKey||w.altKey||w.shiftKey)return;w.preventDefault();let j=b().filter(N=>N.focusable).map(N=>N.ref.current);if(A==="last")j.reverse();else if(A==="prev"||A==="next"){A==="prev"&&j.reverse();const N=j.indexOf(w.currentTarget);j=v.loop?AQ(j,N+1):j.slice(N+1)}setTimeout(()=>uk(j))}}),children:typeof s=="function"?s({isCurrentTabStop:m,hasTabStop:S!=null}):s})})});lk.displayName=ok;var SQ={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function OQ(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function EQ(e,t,n){const r=OQ(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return SQ[r]}function uk(e,t=!1){const n=document.activeElement;for(const r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function AQ(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var _Q=ik,jQ=lk,Pp="Tabs",[TQ]=fo(Pp,[ak]),sk=ak(),[CQ,Vb]=TQ(Pp),ck=g.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,onValueChange:o,defaultValue:l,orientation:s="horizontal",dir:f,activationMode:d="automatic",...p}=e,v=u0(f),[m,b]=Ml({prop:r,onChange:o,defaultProp:l??"",caller:Pp});return _.jsx(CQ,{scope:n,baseId:yl(),value:m,onValueChange:b,orientation:s,dir:v,activationMode:d,children:_.jsx(lt.div,{dir:v,"data-orientation":s,...p,ref:t})})});ck.displayName=Pp;var fk="TabsList",dk=g.forwardRef((e,t)=>{const{__scopeTabs:n,loop:r=!0,...o}=e,l=Vb(fk,n),s=sk(n);return _.jsx(_Q,{asChild:!0,...s,orientation:l.orientation,dir:l.dir,loop:r,children:_.jsx(lt.div,{role:"tablist","aria-orientation":l.orientation,...o,ref:t})})});dk.displayName=fk;var pk="TabsTrigger",mk=g.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,disabled:o=!1,...l}=e,s=Vb(pk,n),f=sk(n),d=yk(s.baseId,r),p=gk(s.baseId,r),v=r===s.value;return _.jsx(jQ,{asChild:!0,...f,focusable:!o,active:v,children:_.jsx(lt.button,{type:"button",role:"tab","aria-selected":v,"aria-controls":p,"data-state":v?"active":"inactive","data-disabled":o?"":void 0,disabled:o,id:d,...l,ref:t,onMouseDown:ot(e.onMouseDown,m=>{!o&&m.button===0&&m.ctrlKey===!1?s.onValueChange(r):m.preventDefault()}),onKeyDown:ot(e.onKeyDown,m=>{[" ","Enter"].includes(m.key)&&s.onValueChange(r)}),onFocus:ot(e.onFocus,()=>{const m=s.activationMode!=="manual";!v&&!o&&m&&s.onValueChange(r)})})})});mk.displayName=pk;var vk="TabsContent",hk=g.forwardRef((e,t)=>{const{__scopeTabs:n,value:r,forceMount:o,children:l,...s}=e,f=Vb(vk,n),d=yk(f.baseId,r),p=gk(f.baseId,r),v=r===f.value,m=g.useRef(v);return g.useEffect(()=>{const b=requestAnimationFrame(()=>m.current=!1);return()=>cancelAnimationFrame(b)},[]),_.jsx(Dl,{present:o||v,children:({present:b})=>_.jsx(lt.div,{"data-state":v?"active":"inactive","data-orientation":f.orientation,role:"tabpanel","aria-labelledby":d,hidden:!b,id:p,tabIndex:0,...s,ref:t,style:{...e.style,animationDuration:m.current?"0s":void 0},children:b&&l})})});hk.displayName=vk;function yk(e,t){return`${e}-trigger-${t}`}function gk(e,t){return`${e}-content-${t}`}var NQ=ck,bk=dk,xk=mk,wk=hk;const MQ=NQ,Sk=g.forwardRef(({className:e,...t},n)=>_.jsx(bk,{ref:n,className:He("inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1 text-muted-foreground",e),...t}));Sk.displayName=bk.displayName;const Cf=g.forwardRef(({className:e,...t},n)=>_.jsx(xk,{ref:n,className:He("inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",e),...t}));Cf.displayName=xk.displayName;const Nf=g.forwardRef(({className:e,...t},n)=>_.jsx(wk,{ref:n,className:He("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",e),...t}));Nf.displayName=wk.displayName;var DQ=(e,t,n,r,o,l,s,f)=>{let d=document.documentElement,p=["light","dark"];function v(x){(Array.isArray(e)?e:[e]).forEach(O=>{let S=O==="class",w=S&&l?o.map(A=>l[A]||A):o;S?(d.classList.remove(...w),d.classList.add(l&&l[x]?l[x]:x)):d.setAttribute(O,x)}),m(x)}function m(x){f&&p.includes(x)&&(d.style.colorScheme=x)}function b(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}if(r)v(r);else try{let x=localStorage.getItem(t)||n,O=s&&x==="system"?b():x;v(O)}catch{}},PQ=g.createContext(void 0),kQ={setTheme:e=>{},themes:[]},RQ=()=>{var e;return(e=g.useContext(PQ))!=null?e:kQ};g.memo(({forcedTheme:e,storageKey:t,attribute:n,enableSystem:r,enableColorScheme:o,defaultTheme:l,value:s,themes:f,nonce:d,scriptProps:p})=>{let v=JSON.stringify([n,t,l,e,f,s,r,o]).slice(1,-1);return g.createElement("script",{...p,suppressHydrationWarning:!0,nonce:typeof window>"u"?d:"",dangerouslySetInnerHTML:{__html:`(${DQ.toString()})(${v})`}})});function zQ(e){if(typeof document>"u")return;let t=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css",t.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}const IQ=e=>{switch(e){case"success":return UQ;case"info":return qQ;case"warning":return $Q;case"error":return HQ;default:return null}},LQ=Array(12).fill(0),BQ=({visible:e,className:t})=>oe.createElement("div",{className:["sonner-loading-wrapper",t].filter(Boolean).join(" "),"data-visible":e},oe.createElement("div",{className:"sonner-spinner"},LQ.map((n,r)=>oe.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${r}`})))),UQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),$Q=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),qQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),HQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},oe.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),KQ=oe.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},oe.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),oe.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),YQ=()=>{const[e,t]=oe.useState(document.hidden);return oe.useEffect(()=>{const n=()=>{t(document.hidden)};return document.addEventListener("visibilitychange",n),()=>window.removeEventListener("visibilitychange",n)},[]),e};let Zg=1;class GQ{constructor(){this.subscribe=t=>(this.subscribers.push(t),()=>{const n=this.subscribers.indexOf(t);this.subscribers.splice(n,1)}),this.publish=t=>{this.subscribers.forEach(n=>n(t))},this.addToast=t=>{this.publish(t),this.toasts=[...this.toasts,t]},this.create=t=>{var n;const{message:r,...o}=t,l=typeof t?.id=="number"||((n=t.id)==null?void 0:n.length)>0?t.id:Zg++,s=this.toasts.find(d=>d.id===l),f=t.dismissible===void 0?!0:t.dismissible;return this.dismissedToasts.has(l)&&this.dismissedToasts.delete(l),s?this.toasts=this.toasts.map(d=>d.id===l?(this.publish({...d,...t,id:l,title:r}),{...d,...t,id:l,dismissible:f,title:r}):d):this.addToast({title:r,...o,dismissible:f,id:l}),l},this.dismiss=t=>(t?(this.dismissedToasts.add(t),requestAnimationFrame(()=>this.subscribers.forEach(n=>n({id:t,dismiss:!0})))):this.toasts.forEach(n=>{this.subscribers.forEach(r=>r({id:n.id,dismiss:!0}))}),t),this.message=(t,n)=>this.create({...n,message:t}),this.error=(t,n)=>this.create({...n,message:t,type:"error"}),this.success=(t,n)=>this.create({...n,type:"success",message:t}),this.info=(t,n)=>this.create({...n,type:"info",message:t}),this.warning=(t,n)=>this.create({...n,type:"warning",message:t}),this.loading=(t,n)=>this.create({...n,type:"loading",message:t}),this.promise=(t,n)=>{if(!n)return;let r;n.loading!==void 0&&(r=this.create({...n,promise:t,type:"loading",message:n.loading,description:typeof n.description!="function"?n.description:void 0}));const o=Promise.resolve(t instanceof Function?t():t);let l=r!==void 0,s;const f=o.then(async p=>{if(s=["resolve",p],oe.isValidElement(p))l=!1,this.create({id:r,type:"default",message:p});else if(FQ(p)&&!p.ok){l=!1;const m=typeof n.error=="function"?await n.error(`HTTP error! status: ${p.status}`):n.error,b=typeof n.description=="function"?await n.description(`HTTP error! status: ${p.status}`):n.description,O=typeof m=="object"&&!oe.isValidElement(m)?m:{message:m};this.create({id:r,type:"error",description:b,...O})}else if(p instanceof Error){l=!1;const m=typeof n.error=="function"?await n.error(p):n.error,b=typeof n.description=="function"?await n.description(p):n.description,O=typeof m=="object"&&!oe.isValidElement(m)?m:{message:m};this.create({id:r,type:"error",description:b,...O})}else if(n.success!==void 0){l=!1;const m=typeof n.success=="function"?await n.success(p):n.success,b=typeof n.description=="function"?await n.description(p):n.description,O=typeof m=="object"&&!oe.isValidElement(m)?m:{message:m};this.create({id:r,type:"success",description:b,...O})}}).catch(async p=>{if(s=["reject",p],n.error!==void 0){l=!1;const v=typeof n.error=="function"?await n.error(p):n.error,m=typeof n.description=="function"?await n.description(p):n.description,x=typeof v=="object"&&!oe.isValidElement(v)?v:{message:v};this.create({id:r,type:"error",description:m,...x})}}).finally(()=>{l&&(this.dismiss(r),r=void 0),n.finally==null||n.finally.call(n)}),d=()=>new Promise((p,v)=>f.then(()=>s[0]==="reject"?v(s[1]):p(s[1])).catch(v));return typeof r!="string"&&typeof r!="number"?{unwrap:d}:Object.assign(r,{unwrap:d})},this.custom=(t,n)=>{const r=n?.id||Zg++;return this.create({jsx:t(r),id:r,...n}),r},this.getActiveToasts=()=>this.toasts.filter(t=>!this.dismissedToasts.has(t.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const Nn=new GQ,VQ=(e,t)=>{const n=t?.id||Zg++;return Nn.addToast({title:e,...t,id:n}),n},FQ=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",XQ=VQ,WQ=()=>Nn.toasts,ZQ=()=>Nn.getActiveToasts(),Uy=Object.assign(XQ,{success:Nn.success,info:Nn.info,warning:Nn.warning,error:Nn.error,custom:Nn.custom,message:Nn.message,promise:Nn.promise,dismiss:Nn.dismiss,loading:Nn.loading},{getHistory:WQ,getToasts:ZQ});zQ("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function bf(e){return e.label!==void 0}const QQ=3,JQ="24px",eJ="16px",mj=4e3,tJ=356,nJ=14,rJ=45,aJ=200;function Ir(...e){return e.filter(Boolean).join(" ")}function iJ(e){const[t,n]=e.split("-"),r=[];return t&&r.push(t),n&&r.push(n),r}const oJ=e=>{var t,n,r,o,l,s,f,d,p;const{invert:v,toast:m,unstyled:b,interacting:x,setHeights:O,visibleToasts:S,heights:w,index:A,toasts:C,expanded:j,removeToast:N,defaultRichColors:M,closeButton:D,style:P,cancelButtonStyle:I,actionButtonStyle:W,className:ie="",descriptionClassName:F="",duration:U,position:ue,gap:ce,expandByDefault:se,classNames:z,icons:K,closeButtonAriaLabel:ae="Close toast"}=e,[fe,ee]=oe.useState(null),[R,X]=oe.useState(null),[Q,re]=oe.useState(!1),[le,de]=oe.useState(!1),[be,Ee]=oe.useState(!1),[Y,Oe]=oe.useState(!1),[Ae,ne]=oe.useState(!1),[dt,Te]=oe.useState(0),[jt,xt]=oe.useState(0),fn=oe.useRef(m.duration||U||mj),Pa=oe.useRef(null),Rn=oe.useRef(null),Hl=A===0,Kl=A+1<=S,dn=m.type,ka=m.dismissible!==!1,pn=m.className||"",kp=m.descriptionClassName||"",xi=oe.useMemo(()=>w.findIndex(_e=>_e.toastId===m.id)||0,[w,m.id]),Rs=oe.useMemo(()=>{var _e;return(_e=m.closeButton)!=null?_e:D},[m.closeButton,D]),wi=oe.useMemo(()=>m.duration||U||mj,[m.duration,U]),Yl=oe.useRef(0),Fr=oe.useRef(0),zs=oe.useRef(0),Ra=oe.useRef(null),[Si,mn]=ue.split("-"),mr=oe.useMemo(()=>w.reduce((_e,ut,Rt)=>Rt>=xi?_e:_e+ut.height,0),[w,xi]),tn=YQ(),Rp=m.invert||v,Gl=dn==="loading";Fr.current=oe.useMemo(()=>xi*ce+mr,[xi,mr]),oe.useEffect(()=>{fn.current=wi},[wi]),oe.useEffect(()=>{re(!0)},[]),oe.useEffect(()=>{const _e=Rn.current;if(_e){const ut=_e.getBoundingClientRect().height;return xt(ut),O(Rt=>[{toastId:m.id,height:ut,position:m.position},...Rt]),()=>O(Rt=>Rt.filter(nn=>nn.toastId!==m.id))}},[O,m.id]),oe.useLayoutEffect(()=>{if(!Q)return;const _e=Rn.current,ut=_e.style.height;_e.style.height="auto";const Rt=_e.getBoundingClientRect().height;_e.style.height=ut,xt(Rt),O(nn=>nn.find(pt=>pt.toastId===m.id)?nn.map(pt=>pt.toastId===m.id?{...pt,height:Rt}:pt):[{toastId:m.id,height:Rt,position:m.position},...nn])},[Q,m.title,m.description,O,m.id,m.jsx,m.action,m.cancel]);const Tr=oe.useCallback(()=>{de(!0),Te(Fr.current),O(_e=>_e.filter(ut=>ut.toastId!==m.id)),setTimeout(()=>{N(m)},aJ)},[m,N,O,Fr]);oe.useEffect(()=>{if(m.promise&&dn==="loading"||m.duration===1/0||m.type==="loading")return;let _e;return j||x||tn?(()=>{if(zs.current{m.onAutoClose==null||m.onAutoClose.call(m,m),Tr()},fn.current)),()=>clearTimeout(_e)},[j,x,m,dn,tn,Tr]),oe.useEffect(()=>{m.delete&&(Tr(),m.onDismiss==null||m.onDismiss.call(m,m))},[Tr,m.delete]);function go(){var _e;if(K?.loading){var ut;return oe.createElement("div",{className:Ir(z?.loader,m==null||(ut=m.classNames)==null?void 0:ut.loader,"sonner-loader"),"data-visible":dn==="loading"},K.loading)}return oe.createElement(BQ,{className:Ir(z?.loader,m==null||(_e=m.classNames)==null?void 0:_e.loader),visible:dn==="loading"})}const bo=m.icon||K?.[dn]||IQ(dn);var Oi,Cr;return oe.createElement("li",{tabIndex:0,ref:Rn,className:Ir(ie,pn,z?.toast,m==null||(t=m.classNames)==null?void 0:t.toast,z?.default,z?.[dn],m==null||(n=m.classNames)==null?void 0:n[dn]),"data-sonner-toast":"","data-rich-colors":(Oi=m.richColors)!=null?Oi:M,"data-styled":!(m.jsx||m.unstyled||b),"data-mounted":Q,"data-promise":!!m.promise,"data-swiped":Ae,"data-removed":le,"data-visible":Kl,"data-y-position":Si,"data-x-position":mn,"data-index":A,"data-front":Hl,"data-swiping":be,"data-dismissible":ka,"data-type":dn,"data-invert":Rp,"data-swipe-out":Y,"data-swipe-direction":R,"data-expanded":!!(j||se&&Q),"data-testid":m.testId,style:{"--index":A,"--toasts-before":A,"--z-index":C.length-A,"--offset":`${le?dt:Fr.current}px`,"--initial-height":se?"auto":`${jt}px`,...P,...m.style},onDragEnd:()=>{Ee(!1),ee(null),Ra.current=null},onPointerDown:_e=>{_e.button!==2&&(Gl||!ka||(Pa.current=new Date,Te(Fr.current),_e.target.setPointerCapture(_e.pointerId),_e.target.tagName!=="BUTTON"&&(Ee(!0),Ra.current={x:_e.clientX,y:_e.clientY})))},onPointerUp:()=>{var _e,ut,Rt;if(Y||!ka)return;Ra.current=null;const nn=Number(((_e=Rn.current)==null?void 0:_e.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),za=Number(((ut=Rn.current)==null?void 0:ut.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),pt=new Date().getTime()-((Rt=Pa.current)==null?void 0:Rt.getTime()),xn=fe==="x"?nn:za,Ei=Math.abs(xn)/pt;if(Math.abs(xn)>=rJ||Ei>.11){Te(Fr.current),m.onDismiss==null||m.onDismiss.call(m,m),X(fe==="x"?nn>0?"right":"left":za>0?"down":"up"),Tr(),Oe(!0);return}else{var wn,Sn;(wn=Rn.current)==null||wn.style.setProperty("--swipe-amount-x","0px"),(Sn=Rn.current)==null||Sn.style.setProperty("--swipe-amount-y","0px")}ne(!1),Ee(!1),ee(null)},onPointerMove:_e=>{var ut,Rt,nn;if(!Ra.current||!ka||((ut=window.getSelection())==null?void 0:ut.toString().length)>0)return;const pt=_e.clientY-Ra.current.y,xn=_e.clientX-Ra.current.x;var Ei;const wn=(Ei=e.swipeDirections)!=null?Ei:iJ(ue);!fe&&(Math.abs(xn)>1||Math.abs(pt)>1)&&ee(Math.abs(xn)>Math.abs(pt)?"x":"y");let Sn={x:0,y:0};const xo=vr=>1/(1.5+Math.abs(vr)/20);if(fe==="y"){if(wn.includes("top")||wn.includes("bottom"))if(wn.includes("top")&&pt<0||wn.includes("bottom")&&pt>0)Sn.y=pt;else{const vr=pt*xo(pt);Sn.y=Math.abs(vr)0)Sn.x=xn;else{const vr=xn*xo(xn);Sn.x=Math.abs(vr)0||Math.abs(Sn.y)>0)&&ne(!0),(Rt=Rn.current)==null||Rt.style.setProperty("--swipe-amount-x",`${Sn.x}px`),(nn=Rn.current)==null||nn.style.setProperty("--swipe-amount-y",`${Sn.y}px`)}},Rs&&!m.jsx&&dn!=="loading"?oe.createElement("button",{"aria-label":ae,"data-disabled":Gl,"data-close-button":!0,onClick:Gl||!ka?()=>{}:()=>{Tr(),m.onDismiss==null||m.onDismiss.call(m,m)},className:Ir(z?.closeButton,m==null||(r=m.classNames)==null?void 0:r.closeButton)},(Cr=K?.close)!=null?Cr:KQ):null,(dn||m.icon||m.promise)&&m.icon!==null&&(K?.[dn]!==null||m.icon)?oe.createElement("div",{"data-icon":"",className:Ir(z?.icon,m==null||(o=m.classNames)==null?void 0:o.icon)},m.promise||m.type==="loading"&&!m.icon?m.icon||go():null,m.type!=="loading"?bo:null):null,oe.createElement("div",{"data-content":"",className:Ir(z?.content,m==null||(l=m.classNames)==null?void 0:l.content)},oe.createElement("div",{"data-title":"",className:Ir(z?.title,m==null||(s=m.classNames)==null?void 0:s.title)},m.jsx?m.jsx:typeof m.title=="function"?m.title():m.title),m.description?oe.createElement("div",{"data-description":"",className:Ir(F,kp,z?.description,m==null||(f=m.classNames)==null?void 0:f.description)},typeof m.description=="function"?m.description():m.description):null),oe.isValidElement(m.cancel)?m.cancel:m.cancel&&bf(m.cancel)?oe.createElement("button",{"data-button":!0,"data-cancel":!0,style:m.cancelButtonStyle||I,onClick:_e=>{bf(m.cancel)&&ka&&(m.cancel.onClick==null||m.cancel.onClick.call(m.cancel,_e),Tr())},className:Ir(z?.cancelButton,m==null||(d=m.classNames)==null?void 0:d.cancelButton)},m.cancel.label):null,oe.isValidElement(m.action)?m.action:m.action&&bf(m.action)?oe.createElement("button",{"data-button":!0,"data-action":!0,style:m.actionButtonStyle||W,onClick:_e=>{bf(m.action)&&(m.action.onClick==null||m.action.onClick.call(m.action,_e),!_e.defaultPrevented&&Tr())},className:Ir(z?.actionButton,m==null||(p=m.classNames)==null?void 0:p.actionButton)},m.action.label):null)};function vj(){if(typeof window>"u"||typeof document>"u")return"ltr";const e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function lJ(e,t){const n={};return[e,t].forEach((r,o)=>{const l=o===1,s=l?"--mobile-offset":"--offset",f=l?eJ:JQ;function d(p){["top","right","bottom","left"].forEach(v=>{n[`${s}-${v}`]=typeof p=="number"?`${p}px`:p})}typeof r=="number"||typeof r=="string"?d(r):typeof r=="object"?["top","right","bottom","left"].forEach(p=>{r[p]===void 0?n[`${s}-${p}`]=f:n[`${s}-${p}`]=typeof r[p]=="number"?`${r[p]}px`:r[p]}):d(f)}),n}const uJ=oe.forwardRef(function(t,n){const{id:r,invert:o,position:l="bottom-right",hotkey:s=["altKey","KeyT"],expand:f,closeButton:d,className:p,offset:v,mobileOffset:m,theme:b="light",richColors:x,duration:O,style:S,visibleToasts:w=QQ,toastOptions:A,dir:C=vj(),gap:j=nJ,icons:N,containerAriaLabel:M="Notifications"}=t,[D,P]=oe.useState([]),I=oe.useMemo(()=>r?D.filter(Q=>Q.toasterId===r):D.filter(Q=>!Q.toasterId),[D,r]),W=oe.useMemo(()=>Array.from(new Set([l].concat(I.filter(Q=>Q.position).map(Q=>Q.position)))),[I,l]),[ie,F]=oe.useState([]),[U,ue]=oe.useState(!1),[ce,se]=oe.useState(!1),[z,K]=oe.useState(b!=="system"?b:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),ae=oe.useRef(null),fe=s.join("+").replace(/Key/g,"").replace(/Digit/g,""),ee=oe.useRef(null),R=oe.useRef(!1),X=oe.useCallback(Q=>{P(re=>{var le;return(le=re.find(de=>de.id===Q.id))!=null&&le.delete||Nn.dismiss(Q.id),re.filter(({id:de})=>de!==Q.id)})},[]);return oe.useEffect(()=>Nn.subscribe(Q=>{if(Q.dismiss){requestAnimationFrame(()=>{P(re=>re.map(le=>le.id===Q.id?{...le,delete:!0}:le))});return}setTimeout(()=>{yj.flushSync(()=>{P(re=>{const le=re.findIndex(de=>de.id===Q.id);return le!==-1?[...re.slice(0,le),{...re[le],...Q},...re.slice(le+1)]:[Q,...re]})})})}),[D]),oe.useEffect(()=>{if(b!=="system"){K(b);return}if(b==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?K("dark"):K("light")),typeof window>"u")return;const Q=window.matchMedia("(prefers-color-scheme: dark)");try{Q.addEventListener("change",({matches:re})=>{K(re?"dark":"light")})}catch{Q.addListener(({matches:le})=>{try{K(le?"dark":"light")}catch(de){console.error(de)}})}},[b]),oe.useEffect(()=>{D.length<=1&&ue(!1)},[D]),oe.useEffect(()=>{const Q=re=>{var le;if(s.every(Ee=>re[Ee]||re.code===Ee)){var be;ue(!0),(be=ae.current)==null||be.focus()}re.code==="Escape"&&(document.activeElement===ae.current||(le=ae.current)!=null&&le.contains(document.activeElement))&&ue(!1)};return document.addEventListener("keydown",Q),()=>document.removeEventListener("keydown",Q)},[s]),oe.useEffect(()=>{if(ae.current)return()=>{ee.current&&(ee.current.focus({preventScroll:!0}),ee.current=null,R.current=!1)}},[ae.current]),oe.createElement("section",{ref:n,"aria-label":`${M} ${fe}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},W.map((Q,re)=>{var le;const[de,be]=Q.split("-");return I.length?oe.createElement("ol",{key:Q,dir:C==="auto"?vj():C,tabIndex:-1,ref:ae,className:p,"data-sonner-toaster":!0,"data-sonner-theme":z,"data-y-position":de,"data-x-position":be,style:{"--front-toast-height":`${((le=ie[0])==null?void 0:le.height)||0}px`,"--width":`${tJ}px`,"--gap":`${j}px`,...S,...lJ(v,m)},onBlur:Ee=>{R.current&&!Ee.currentTarget.contains(Ee.relatedTarget)&&(R.current=!1,ee.current&&(ee.current.focus({preventScroll:!0}),ee.current=null))},onFocus:Ee=>{Ee.target instanceof HTMLElement&&Ee.target.dataset.dismissible==="false"||R.current||(R.current=!0,ee.current=Ee.relatedTarget)},onMouseEnter:()=>ue(!0),onMouseMove:()=>ue(!0),onMouseLeave:()=>{ce||ue(!1)},onDragEnd:()=>ue(!1),onPointerDown:Ee=>{Ee.target instanceof HTMLElement&&Ee.target.dataset.dismissible==="false"||se(!0)},onPointerUp:()=>se(!1)},I.filter(Ee=>!Ee.position&&re===0||Ee.position===Q).map((Ee,Y)=>{var Oe,Ae;return oe.createElement(oJ,{key:Ee.id,icons:N,index:Y,toast:Ee,defaultRichColors:x,duration:(Oe=A?.duration)!=null?Oe:O,className:A?.className,descriptionClassName:A?.descriptionClassName,invert:o,visibleToasts:w,closeButton:(Ae=A?.closeButton)!=null?Ae:d,interacting:ce,position:Q,style:A?.style,unstyled:A?.unstyled,classNames:A?.classNames,cancelButtonStyle:A?.cancelButtonStyle,actionButtonStyle:A?.actionButtonStyle,closeButtonAriaLabel:A?.closeButtonAriaLabel,removeToast:X,toasts:I.filter(ne=>ne.position==Ee.position),heights:ie.filter(ne=>ne.position==Ee.position),setHeights:F,expandByDefault:f,gap:j,expanded:U,swipeDirections:t.swipeDirections})})):null}))}),sJ=({...e})=>{const{theme:t="system"}=RQ();return _.jsx(uJ,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e})};function cJ(){const[e,t]=g.useState(!0),[n,r]=g.useState(!1),[o,l]=g.useState(!1),{isConnected:s,isDemoMode:f,connectionConfig:d,stats:p,error:v,lastUpdate:m,trafficHistory:b,connectionLost:x,retryCount:O,maxRetries:S,connect:w,disconnect:A,retryConnection:C,toggleDemoMode:j}=QR();g.useEffect(()=>{e?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")},[e]),g.useEffect(()=>{v&&Uy.error("Connection Error",{description:v,duration:5e3})},[v]),g.useEffect(()=>{s&&Uy.success("Connected",{description:`Connected to HAProxy at ${d.url}`,duration:3e3})},[s,d.url]);const N=P=>{w(P)},M=()=>{A(),Uy.info("Disconnected",{description:"HAProxy connection closed",duration:3e3})},D={frontends:{up:0,total:0},backends:{up:0,total:0},servers:{up:0,down:0,noCheck:0,total:0},bytesIn:0,bytesOut:0,sessions:0,requests:0,rate:0};return _.jsxs("div",{className:"min-h-screen bg-background grid-bg",children:[_.jsx(sJ,{richColors:!0,position:"top-right"}),_.jsxs("header",{className:"sticky top-0 z-50 bg-background/95 backdrop-blur border-b border-border",children:[_.jsx("div",{className:"container mx-auto px-4 sm:px-6 py-3",children:_.jsxs("div",{className:"flex items-center justify-between",children:[_.jsxs("div",{className:"flex items-center gap-3",children:[_.jsx("div",{className:"p-2 rounded-md bg-primary/10",children:_.jsx(Pf,{className:"h-5 w-5 text-primary"})}),_.jsxs("div",{children:[_.jsx("h1",{className:"text-lg font-bold text-foreground tracking-tight",children:"HAProxy Monitor"}),_.jsxs("p",{className:"text-xs text-muted-foreground",children:["Real-time Statistics",_.jsx("span",{className:"ml-2 opacity-50",children:"v1.0.0"})]})]})]}),_.jsxs("div",{className:"flex items-center gap-2 sm:gap-4",children:[(s||f)&&_.jsxs("div",{className:"hidden sm:flex items-center gap-2",children:[_.jsx(Jj,{className:"h-4 w-4 text-primary animate-pulse"}),_.jsxs("span",{className:"text-xs text-muted-foreground font-mono",children:[f?"DEMO":"LIVE",m&&` • ${m.toLocaleTimeString()}`]})]}),_.jsxs("div",{className:"flex items-center gap-2",children:[_.jsx(nk,{id:"demo-mode","data-testid":"demo-mode-toggle",checked:f,onCheckedChange:j,disabled:s}),_.jsx(pl,{htmlFor:"demo-mode",className:"hidden sm:inline text-xs text-muted-foreground cursor-pointer",children:"Demo"})]}),_.jsx(hn,{variant:"outline",size:"sm","data-testid":"view-toggle-btn",onClick:()=>l(!o),className:"hidden sm:flex items-center gap-2",children:o?_.jsxs(_.Fragment,{children:[_.jsx(pO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Summary"})]}):_.jsxs(_.Fragment,{children:[_.jsx(mO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Details"})]})}),_.jsx(hn,{variant:"outline",size:"icon","data-testid":"theme-toggle-btn",onClick:()=>t(!e),className:"h-9 w-9",children:e?_.jsx(E5,{className:"h-4 w-4"}):_.jsx(h5,{className:"h-4 w-4"})}),s?_.jsxs(hn,{variant:"outline","data-testid":"disconnect-btn",onClick:M,className:"border-destructive/50 text-destructive hover:bg-destructive/10",children:[_.jsx(rT,{className:"h-4 w-4 sm:mr-2"}),_.jsx("span",{className:"hidden sm:inline",children:"Disconnect"})]}):_.jsxs(hn,{"data-testid":"connect-btn",onClick:()=>r(!0),disabled:f,className:"bg-primary text-primary-foreground hover:bg-primary/90 shadow-[0_0_15px_-3px_hsl(var(--primary)/0.4)]",children:[_.jsx(vO,{className:"h-4 w-4 sm:mr-2"}),_.jsx("span",{className:"hidden sm:inline",children:"Connect"})]})]})]})}),f&&_.jsx("div",{className:"border-t border-[hsl(var(--warning))]/30 bg-background","data-testid":"demo-mode-banner",children:_.jsxs("div",{className:"container mx-auto px-4 sm:px-6 py-2 flex items-center justify-between gap-3",children:[_.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[_.jsx(Df,{className:"h-4 w-4 shrink-0 text-[hsl(var(--warning))]"}),_.jsxs("span",{className:"text-sm text-[hsl(var(--warning))] truncate",children:["Demo Mode — showing sample data. Click ",_.jsx("strong",{children:"Connect"})," to link to your HAProxy instance."]})]}),_.jsx(hn,{variant:"outline",size:"sm",onClick:()=>r(!0),className:"shrink-0 border-[hsl(var(--warning))]/50 text-[hsl(var(--warning))] hover:bg-[hsl(var(--warning))]/10",children:"Connect"})]})})]}),_.jsxs("main",{className:"container mx-auto px-4 sm:px-6 py-6",children:[!s&&!f&&_.jsxs("div",{className:"flex flex-col items-center justify-center min-h-[60vh] text-center",children:[_.jsx("div",{className:"p-6 rounded-full bg-muted/50 mb-6",children:_.jsx(Pf,{className:"h-16 w-16 text-muted-foreground"})}),_.jsx("h2",{className:"text-2xl font-bold text-foreground mb-2",children:"No Connection"}),_.jsx("p",{className:"text-muted-foreground mb-6 max-w-md",children:"Connect to your HAProxy instance to start monitoring server statistics, traffic, and health status in real-time."}),_.jsxs("div",{className:"flex flex-col sm:flex-row items-stretch sm:items-center gap-3 w-full sm:w-auto px-4 sm:px-0",children:[_.jsxs(hn,{"data-testid":"hero-connect-btn",onClick:()=>r(!0),size:"lg",className:"bg-primary text-primary-foreground hover:bg-primary/90 shadow-[0_0_20px_-3px_hsl(var(--primary)/0.4)]",children:[_.jsx(vO,{className:"h-5 w-5 mr-2"}),"Connect to HAProxy"]}),_.jsxs(hn,{variant:"outline",size:"lg","data-testid":"hero-demo-btn",onClick:j,children:[_.jsx(g5,{className:"h-5 w-5 mr-2"}),"Try Demo Mode"]})]})]}),(s||f)&&p&&_.jsxs("div",{className:"space-y-6",children:[_.jsx(g6,{summary:p.summary||D}),_.jsx("div",{className:"sm:hidden flex justify-end",children:_.jsx(hn,{variant:"outline",size:"sm","data-testid":"mobile-view-toggle-btn",onClick:()=>l(!o),className:"flex items-center gap-2",children:o?_.jsxs(_.Fragment,{children:[_.jsx(pO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Summary View"})]}):_.jsxs(_.Fragment,{children:[_.jsx(mO,{className:"h-4 w-4"}),_.jsx("span",{className:"text-xs",children:"Full Details"})]})})}),_.jsx(eQ,{trafficHistory:b}),_.jsxs(MQ,{defaultValue:"all",className:"w-full",children:[_.jsxs(Sk,{className:"mb-4",children:[_.jsx(Cf,{value:"all","data-testid":"tab-all",children:"All"}),_.jsxs(Cf,{value:"frontends","data-testid":"tab-frontends",children:["Frontends",_.jsx(Xg,{variant:"secondary",className:"ml-2 text-xs",children:p.frontends?.length||0})]}),_.jsxs(Cf,{value:"backends","data-testid":"tab-backends",children:["Backends",_.jsx(Xg,{variant:"secondary",className:"ml-2 text-xs",children:p.backends?.length||0})]})]}),_.jsxs(Nf,{value:"all",className:"space-y-6",children:[_.jsx(dj,{frontends:p.frontends||[],showDetails:o}),_.jsx(pj,{backends:p.backends||[],servers:p.servers||[],showDetails:o})]}),_.jsx(Nf,{value:"frontends",children:_.jsx(dj,{frontends:p.frontends||[],showDetails:o})}),_.jsx(Nf,{value:"backends",children:_.jsx(pj,{backends:p.backends||[],servers:p.servers||[],showDetails:o})})]})]}),(s||f)&&!p&&!v&&_.jsxs("div",{className:"flex flex-col items-center justify-center min-h-[60vh]",children:[_.jsx(Df,{className:"h-12 w-12 text-primary animate-spin mb-4"}),_.jsx("p",{className:"text-muted-foreground",children:"Loading statistics..."})]})]}),_.jsx(c6,{retryCount:O,maxRetries:S,connectionLost:x,error:v,onRetry:C,onDisconnect:M}),_.jsx(s6,{open:n,onOpenChange:r,onConnect:N,defaultConfig:d})]})}const fJ=KR.createRoot(document.getElementById("root"));fJ.render(_.jsx(oe.StrictMode,{children:_.jsx(cJ,{})})); \ No newline at end of file diff --git a/docs/dashboard.png b/docs/dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..8f0f68e4067c338d5a192851a8e9c59200e20f17 GIT binary patch literal 126959 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 D(`AUR literal 0 HcmV?d00001 diff --git a/src/templates/haproxy.cfg.j2 b/src/templates/haproxy.cfg.j2 index 123fb7a..fe351c5 100644 --- a/src/templates/haproxy.cfg.j2 +++ b/src/templates/haproxy.cfg.j2 @@ -90,7 +90,7 @@ frontend stats backend srv_stats mode http - server Local 127.0.0.1:{{ data_stats["port"] | default(1936) }} + server Local 127.0.0.1:{{ data_stats["port"] | default(1936) }} check frontend dashboard bind *:{{ (data_stats["port"] | default(1936) | int) + 10000 }} @@ -104,7 +104,7 @@ frontend dashboard backend srv_dashboard mode http - server Local 127.0.0.1:{{ dashboard_server_port }} + server Local 127.0.0.1:{{ dashboard_server_port }} check {% endif %} {% for o in data["easymapping"] -%} {% set mode = o["mode"] or "http" %} diff --git a/tests/expected/docker.txt b/tests/expected/docker.txt index f2d96e5..571d9c1 100644 --- a/tests/expected/docker.txt +++ b/tests/expected/docker.txt @@ -35,7 +35,7 @@ frontend stats backend srv_stats mode http - server Local 127.0.0.1:1936 + server Local 127.0.0.1:1936 check frontend dashboard bind *:11936 @@ -49,7 +49,7 @@ frontend dashboard backend srv_dashboard mode http - server Local 127.0.0.1:9190 + server Local 127.0.0.1:9190 check frontend http_in_443 bind *:443 ssl crt /etc/easyhaproxy/certs/certbot/ alpn h2,http/1.1 crt /etc/easyhaproxy/certs/haproxy/ alpn h2,http/1.1 diff --git a/tests/expected/services-letsencrypt.txt b/tests/expected/services-letsencrypt.txt index 0493630..ca82d0a 100644 --- a/tests/expected/services-letsencrypt.txt +++ b/tests/expected/services-letsencrypt.txt @@ -43,7 +43,7 @@ frontend stats backend srv_stats mode http - server Local 127.0.0.1:1936 + server Local 127.0.0.1:1936 check frontend dashboard bind *:11936 @@ -57,7 +57,7 @@ frontend dashboard backend srv_dashboard mode http - server Local 127.0.0.1:9190 + server Local 127.0.0.1:9190 check frontend http_in_80 bind *:80 diff --git a/tests/expected/services-multiple-hosts.txt b/tests/expected/services-multiple-hosts.txt index 7a35fb7..d7f2959 100644 --- a/tests/expected/services-multiple-hosts.txt +++ b/tests/expected/services-multiple-hosts.txt @@ -43,7 +43,7 @@ frontend stats backend srv_stats mode http - server Local 127.0.0.1:1937 + server Local 127.0.0.1:1937 check frontend dashboard bind *:11937 @@ -57,7 +57,7 @@ frontend dashboard backend srv_dashboard mode http - server Local 127.0.0.1:9190 + server Local 127.0.0.1:9190 check frontend http_in_19901 bind *:19901 diff --git a/tests/expected/ssl-loose.txt b/tests/expected/ssl-loose.txt index c12e7d2..b064ae9 100644 --- a/tests/expected/ssl-loose.txt +++ b/tests/expected/ssl-loose.txt @@ -33,7 +33,7 @@ frontend stats backend srv_stats mode http - server Local 127.0.0.1:1936 + server Local 127.0.0.1:1936 check frontend dashboard bind *:11936 @@ -47,7 +47,7 @@ frontend dashboard backend srv_dashboard mode http - server Local 127.0.0.1:9190 + server Local 127.0.0.1:9190 check backend certbot_backend mode http diff --git a/tests/expected/static-cors.txt b/tests/expected/static-cors.txt index bc750a7..d8314fe 100644 --- a/tests/expected/static-cors.txt +++ b/tests/expected/static-cors.txt @@ -50,7 +50,7 @@ frontend stats backend srv_stats mode http - server Local 127.0.0.1:1936 + server Local 127.0.0.1:1936 check frontend dashboard bind *:11936 @@ -64,7 +64,7 @@ frontend dashboard backend srv_dashboard mode http - server Local 127.0.0.1:9190 + server Local 127.0.0.1:9190 check frontend http_in_80 bind *:80 diff --git a/tests/expected/static.txt b/tests/expected/static.txt index 67d9baa..87c029e 100644 --- a/tests/expected/static.txt +++ b/tests/expected/static.txt @@ -43,7 +43,7 @@ frontend stats backend srv_stats mode http - server Local 127.0.0.1:1936 + server Local 127.0.0.1:1936 check frontend dashboard bind *:11936 @@ -57,7 +57,7 @@ frontend dashboard backend srv_dashboard mode http - server Local 127.0.0.1:9190 + server Local 127.0.0.1:9190 check frontend http_in_443 bind *:443 ssl crt /etc/easyhaproxy/certs/certbot/ alpn h2,http/1.1 crt /etc/easyhaproxy/certs/haproxy/ alpn h2,http/1.1