commit e5cd3a154c05c4ee91f0b4c88203d0438f48b0f3 Author: Ammon Victor Date: Wed May 20 11:49:13 2026 +0300 Add new assets and HTML structure for Lupmis 2.0 Design Guidelines - Created new JavaScript files for map pin, search, and user icons. - Added index.html with basic structure and linked assets. - Included vite.svg for the favicon. diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/README.md b/README.md new file mode 100644 index 0000000..ca0b472 --- /dev/null +++ b/README.md @@ -0,0 +1,35 @@ +# Lupmis 2.0 Design Guidelines + +This repository contains the design guideline for Lupmis 2.0. It is intended to give product, design, and engineering teams a shared reference for the visual language, interface patterns, and usability principles used across the platform. + +The guide is intentionally practical: it shows how the system should feel in real product contexts, including dashboards, consumer-facing screens, GIS/map experiences, shared components, and usability examples informed by Nielsen heuristics. + +## Purpose + +Use this guide as a common source of direction when designing, reviewing, or implementing Lupmis 2.0 interfaces. It helps align decisions around layout, component behavior, accessibility, consistency, information hierarchy, and overall product quality. + +The goal is not to document every implementation detail. Instead, the guide provides a general design foundation that teams can apply across new and existing product surfaces. + +## What Is Included + +- Design system overview and component examples +- Common interface patterns for operational workflows +- Dashboard and analytics layout references +- Consumer portal examples +- GIS and map-based interface examples +- Usability guidance based on Nielsen heuristics +- Visual assets used by the guideline experience + +## Using The Guide + +Open `index.html` in a browser to view the compiled guideline experience. + +## Recommended Use + +Refer to this guide when: + +- Starting a new Lupmis 2.0 feature or screen +- Reviewing interface consistency across modules +- Aligning designers and developers on expected behavior +- Checking whether a UI follows established product patterns +- Evaluating usability, clarity, and accessibility concerns diff --git a/assets/0d3838c1-328c-4584-849c-fe4636470e1b-CzWPp2F7.png b/assets/0d3838c1-328c-4584-849c-fe4636470e1b-CzWPp2F7.png new file mode 100644 index 0000000..f0bd11c Binary files /dev/null and b/assets/0d3838c1-328c-4584-849c-fe4636470e1b-CzWPp2F7.png differ diff --git a/assets/1957d89d-66c1-44ae-9846-275775a01370-BriPJkGk.png b/assets/1957d89d-66c1-44ae-9846-275775a01370-BriPJkGk.png new file mode 100644 index 0000000..a3feaa1 Binary files /dev/null and b/assets/1957d89d-66c1-44ae-9846-275775a01370-BriPJkGk.png differ diff --git a/assets/37fe2c33-dfa4-444f-ad03-9a34352949b1-y7FspjyH.png b/assets/37fe2c33-dfa4-444f-ad03-9a34352949b1-y7FspjyH.png new file mode 100644 index 0000000..f5f7327 Binary files /dev/null and b/assets/37fe2c33-dfa4-444f-ad03-9a34352949b1-y7FspjyH.png differ diff --git a/assets/6ce4573d-ef2d-4e32-87cf-d487acd1da19-DlLBxN1D.png b/assets/6ce4573d-ef2d-4e32-87cf-d487acd1da19-DlLBxN1D.png new file mode 100644 index 0000000..48b2052 Binary files /dev/null and b/assets/6ce4573d-ef2d-4e32-87cf-d487acd1da19-DlLBxN1D.png differ diff --git a/assets/AnalyticsDashboard-DSxaDMue.js b/assets/AnalyticsDashboard-DSxaDMue.js new file mode 100644 index 0000000..ba6d126 --- /dev/null +++ b/assets/AnalyticsDashboard-DSxaDMue.js @@ -0,0 +1,36 @@ +import{c as rc,r as v,e as bP,g as gr,f as nc,h as ic,j as E,R as jr,P as xP,C as pd}from"./index-mUEXKEer.js";import{F as hd,C as md,a as wP}from"./file-text-BG0u0kR1.js";import{M as PP}from"./map-pin-BhJz-uKs.js";const OP=[["path",{d:"M16 17h6v-6",key:"t6n2it"}],["path",{d:"m22 17-8.5-8.5-5 5L2 7",key:"x473p"}]],AP=rc("trending-down",OP);const SP=[["path",{d:"M16 7h6v6",key:"box55l"}],["path",{d:"m22 7-8.5 8.5-5-5L2 17",key:"1t1m79"}]],_y=rc("trending-up",SP);const EP=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]],jP=rc("users",EP);function Cy(e){var t,r,n="";if(typeof e=="string"||typeof e=="number")n+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t{var{children:r,width:n,height:i,viewBox:a,className:o,style:l,title:s,desc:u}=e,c=MP(e,TP),f=a||{width:n,height:i,x:0,y:0},d=Z("recharts-surface",o);return v.createElement("svg",Zs({},Ge(c),{className:d,width:n,height:i,style:l,viewBox:"".concat(f.x," ").concat(f.y," ").concat(f.width," ").concat(f.height),ref:t}),v.createElement("title",null,s),v.createElement("desc",null,u),r)}),NP=["children","className"];function Js(){return Js=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:r,className:n}=e,i=RP(e,NP),a=Z("recharts-layer",n);return v.createElement("g",Js({className:a},Ge(i),{ref:t}),r)}),lc=bP(),My=v.createContext(null),LP=()=>v.useContext(My);function oe(e){return function(){return e}}const Dy=Math.cos,ma=Math.sin,Ot=Math.sqrt,ya=Math.PI,go=2*ya,Qs=Math.PI,eu=2*Qs,Ir=1e-6,zP=eu-Ir;function Ny(e){this._+=e[0];for(let t=1,r=e.length;t=0))throw new Error(`invalid digits: ${e}`);if(t>15)return Ny;const r=10**t;return function(n){this._+=n[0];for(let i=1,a=n.length;iIr)if(!(Math.abs(f*s-u*c)>Ir)||!a)this._append`L${this._x1=t},${this._y1=r}`;else{let p=n-o,h=i-l,y=s*s+u*u,m=p*p+h*h,g=Math.sqrt(y),w=Math.sqrt(d),b=a*Math.tan((Qs-Math.acos((y+d-m)/(2*g*w)))/2),P=b/w,x=b/g;Math.abs(P-1)>Ir&&this._append`L${t+P*c},${r+P*f}`,this._append`A${a},${a},0,0,${+(f*p>c*h)},${this._x1=t+x*s},${this._y1=r+x*u}`}}arc(t,r,n,i,a,o){if(t=+t,r=+r,n=+n,o=!!o,n<0)throw new Error(`negative radius: ${n}`);let l=n*Math.cos(i),s=n*Math.sin(i),u=t+l,c=r+s,f=1^o,d=o?i-a:a-i;this._x1===null?this._append`M${u},${c}`:(Math.abs(this._x1-u)>Ir||Math.abs(this._y1-c)>Ir)&&this._append`L${u},${c}`,n&&(d<0&&(d=d%eu+eu),d>zP?this._append`A${n},${n},0,1,${f},${t-l},${r-s}A${n},${n},0,1,${f},${this._x1=u},${this._y1=c}`:d>Ir&&this._append`A${n},${n},0,${+(d>=Qs)},${f},${this._x1=t+n*Math.cos(a)},${this._y1=r+n*Math.sin(a)}`)}rect(t,r,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+r}h${n=+n}v${+i}h${-n}Z`}toString(){return this._}}function sc(e){let t=3;return e.digits=function(r){if(!arguments.length)return t;if(r==null)t=null;else{const n=Math.floor(r);if(!(n>=0))throw new RangeError(`invalid digits: ${r}`);t=n}return e},()=>new FP(t)}function uc(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Ry(e){this._context=e}Ry.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function bo(e){return new Ry(e)}function $y(e){return e[0]}function Ly(e){return e[1]}function zy(e,t){var r=oe(!0),n=null,i=bo,a=null,o=sc(l);e=typeof e=="function"?e:e===void 0?$y:oe(e),t=typeof t=="function"?t:t===void 0?Ly:oe(t);function l(s){var u,c=(s=uc(s)).length,f,d=!1,p;for(n==null&&(a=i(p=o())),u=0;u<=c;++u)!(u=p;--h)l.point(b[h],P[h]);l.lineEnd(),l.areaEnd()}g&&(b[d]=+e(m,d,f),P[d]=+t(m,d,f),l.point(n?+n(m,d,f):b[d],r?+r(m,d,f):P[d]))}if(w)return l=null,w+""||null}function c(){return zy().defined(i).curve(o).context(a)}return u.x=function(f){return arguments.length?(e=typeof f=="function"?f:oe(+f),n=null,u):e},u.x0=function(f){return arguments.length?(e=typeof f=="function"?f:oe(+f),u):e},u.x1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:oe(+f),u):n},u.y=function(f){return arguments.length?(t=typeof f=="function"?f:oe(+f),r=null,u):t},u.y0=function(f){return arguments.length?(t=typeof f=="function"?f:oe(+f),u):t},u.y1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:oe(+f),u):r},u.lineX0=u.lineY0=function(){return c().x(e).y(t)},u.lineY1=function(){return c().x(e).y(r)},u.lineX1=function(){return c().x(n).y(t)},u.defined=function(f){return arguments.length?(i=typeof f=="function"?f:oe(!!f),u):i},u.curve=function(f){return arguments.length?(o=f,a!=null&&(l=o(a)),u):o},u.context=function(f){return arguments.length?(f==null?a=l=null:l=o(a=f),u):a},u}class By{constructor(t,r){this._context=t,this._x=r}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,r){switch(t=+t,r=+r,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,r):this._context.moveTo(t,r);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,r,t,r):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+r)/2,t,this._y0,t,r);break}}this._x0=t,this._y0=r}}function WP(e){return new By(e,!0)}function KP(e){return new By(e,!1)}const cc={draw(e,t){const r=Ot(t/ya);e.moveTo(r,0),e.arc(0,0,r,0,go)}},qP={draw(e,t){const r=Ot(t/5)/2;e.moveTo(-3*r,-r),e.lineTo(-r,-r),e.lineTo(-r,-3*r),e.lineTo(r,-3*r),e.lineTo(r,-r),e.lineTo(3*r,-r),e.lineTo(3*r,r),e.lineTo(r,r),e.lineTo(r,3*r),e.lineTo(-r,3*r),e.lineTo(-r,r),e.lineTo(-3*r,r),e.closePath()}},Fy=Ot(1/3),UP=Fy*2,GP={draw(e,t){const r=Ot(t/UP),n=r*Fy;e.moveTo(0,-r),e.lineTo(n,0),e.lineTo(0,r),e.lineTo(-n,0),e.closePath()}},VP={draw(e,t){const r=Ot(t),n=-r/2;e.rect(n,n,r,r)}},HP=.8908130915292852,Wy=ma(ya/10)/ma(7*ya/10),YP=ma(go/10)*Wy,XP=-Dy(go/10)*Wy,ZP={draw(e,t){const r=Ot(t*HP),n=YP*r,i=XP*r;e.moveTo(0,-r),e.lineTo(n,i);for(let a=1;a<5;++a){const o=go*a/5,l=Dy(o),s=ma(o);e.lineTo(s*r,-l*r),e.lineTo(l*n-s*i,s*n+l*i)}e.closePath()}},hl=Ot(3),JP={draw(e,t){const r=-Ot(t/(hl*3));e.moveTo(0,r*2),e.lineTo(-hl*r,-r),e.lineTo(hl*r,-r),e.closePath()}},ut=-.5,ct=Ot(3)/2,tu=1/Ot(12),QP=(tu/2+1)*3,eO={draw(e,t){const r=Ot(t/QP),n=r/2,i=r*tu,a=n,o=r*tu+r,l=-a,s=o;e.moveTo(n,i),e.lineTo(a,o),e.lineTo(l,s),e.lineTo(ut*n-ct*i,ct*n+ut*i),e.lineTo(ut*a-ct*o,ct*a+ut*o),e.lineTo(ut*l-ct*s,ct*l+ut*s),e.lineTo(ut*n+ct*i,ut*i-ct*n),e.lineTo(ut*a+ct*o,ut*o-ct*a),e.lineTo(ut*l+ct*s,ut*s-ct*l),e.closePath()}};function tO(e,t){let r=null,n=sc(i);e=typeof e=="function"?e:oe(e||cc),t=typeof t=="function"?t:oe(t===void 0?64:+t);function i(){let a;if(r||(r=a=n()),e.apply(this,arguments).draw(r,+t.apply(this,arguments)),a)return r=null,a+""||null}return i.type=function(a){return arguments.length?(e=typeof a=="function"?a:oe(a),i):e},i.size=function(a){return arguments.length?(t=typeof a=="function"?a:oe(+a),i):t},i.context=function(a){return arguments.length?(r=a??null,i):r},i}function ga(){}function ba(e,t,r){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+r)/6)}function Ky(e){this._context=e}Ky.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ba(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ba(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function rO(e){return new Ky(e)}function qy(e){this._context=e}qy.prototype={areaStart:ga,areaEnd:ga,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:ba(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function nO(e){return new qy(e)}function Uy(e){this._context=e}Uy.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var r=(this._x0+4*this._x1+e)/6,n=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(r,n):this._context.moveTo(r,n);break;case 3:this._point=4;default:ba(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function iO(e){return new Uy(e)}function Gy(e){this._context=e}Gy.prototype={areaStart:ga,areaEnd:ga,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function aO(e){return new Gy(e)}function yd(e){return e<0?-1:1}function gd(e,t,r){var n=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(n||i<0&&-0),o=(r-e._y1)/(i||n<0&&-0),l=(a*i+o*n)/(n+i);return(yd(a)+yd(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(l))||0}function bd(e,t){var r=e._x1-e._x0;return r?(3*(e._y1-e._y0)/r-t)/2:t}function ml(e,t,r){var n=e._x0,i=e._y0,a=e._x1,o=e._y1,l=(a-n)/3;e._context.bezierCurveTo(n+l,i+l*t,a-l,o-l*r,a,o)}function xa(e){this._context=e}xa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:ml(this,this._t0,bd(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var r=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,ml(this,bd(this,r=gd(this,e,t)),r);break;default:ml(this,this._t0,r=gd(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=r}}};function Vy(e){this._context=new Hy(e)}(Vy.prototype=Object.create(xa.prototype)).point=function(e,t){xa.prototype.point.call(this,t,e)};function Hy(e){this._context=e}Hy.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,r,n,i,a){this._context.bezierCurveTo(t,e,n,r,a,i)}};function oO(e){return new xa(e)}function lO(e){return new Vy(e)}function Yy(e){this._context=e}Yy.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,r=e.length;if(r)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),r===2)this._context.lineTo(e[1],t[1]);else for(var n=xd(e),i=xd(t),a=0,o=1;o=0;--t)i[t]=(o[t]-i[t+1])/a[t];for(a[r-1]=(e[r]+i[r-1])/2,t=0;t=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var r=this._x*(1-this._t)+e*this._t;this._context.lineTo(r,this._y),this._context.lineTo(r,t)}break}}this._x=e,this._y=t}};function uO(e){return new xo(e,.5)}function cO(e){return new xo(e,0)}function fO(e){return new xo(e,1)}function qr(e,t){if((o=e.length)>1)for(var r=1,n,i,a=e[t[0]],o,l=a.length;r=0;)r[t]=t;return r}function dO(e,t){return e[t]}function vO(e){const t=[];return t.key=e,t}function pO(){var e=oe([]),t=ru,r=qr,n=dO;function i(a){var o=Array.from(e.apply(this,arguments),vO),l,s=o.length,u=-1,c;for(const f of a)for(l=0,++u;l0){for(var r,n,i=0,a=e[0].length,o;i0){for(var r=0,n=e[t[0]],i,a=n.length;r0)||!((a=(i=e[t[0]]).length)>0))){for(var r=0,n=1,i,a,o;n1&&arguments[1]!==void 0?arguments[1]:PO,r=10**t,n=Math.round(e*r)/r;return Object.is(n,-0)?0:n}function me(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n{var l=r[o-1];return typeof l=="string"?i+l+a:l!==void 0?i+dr(l)+a:i+a},"")}var $e=e=>e===0?0:e>0?1:-1,wt=e=>typeof e=="number"&&e!=+e,Gr=e=>typeof e=="string"&&e.indexOf("%")===e.length-1,N=e=>(typeof e=="number"||e instanceof Number)&&!wt(e),Tt=e=>N(e)||typeof e=="string",OO=0,Zn=e=>{var t=++OO;return"".concat(e||"").concat(t)},Ue=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!N(t)&&typeof t!="string")return n;var a;if(Gr(t)){if(r==null)return n;var o=t.indexOf("%");a=r*parseFloat(t.slice(0,o))/100}else a=+t;return wt(a)&&(a=n),i&&r!=null&&a>r&&(a=r),a},Zy=e=>{if(!Array.isArray(e))return!1;for(var t=e.length,r={},n=0;nn&&(typeof t=="function"?t(n):Ur(n,t))===r)}var de=e=>e===null||typeof e>"u",vi=e=>de(e)?e:"".concat(e.charAt(0).toUpperCase()).concat(e.slice(1));function Qe(e){return e!=null}function br(){}var AO=["type","size","sizeType"];function nu(){return nu=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t="symbol".concat(vi(e));return Qy[t]||cc},TO=(e,t,r)=>{if(t==="area")return e;switch(r){case"cross":return 5*e*e/9;case"diamond":return .5*e*e/Math.sqrt(3);case"square":return e*e;case"star":{var n=18*CO;return 1.25*e*e*(Math.tan(n)-Math.tan(n*2)*Math.tan(n)**2)}case"triangle":return Math.sqrt(3)*e*e/4;case"wye":return(21-10*Math.sqrt(3))*e*e/8;default:return Math.PI*e*e/4}},MO=(e,t)=>{Qy["symbol".concat(vi(e))]=t},pc=e=>{var{type:t="circle",size:r=64,sizeType:n="area"}=e,i=kO(e,AO),a=_d(_d({},i),{},{type:t,size:r,sizeType:n}),o="circle";typeof t=="string"&&(o=t);var l=()=>{var d=IO(o),p=tO().type(d).size(TO(r,n,o)),h=p();if(h!==null)return h},{className:s,cx:u,cy:c}=a,f=Ge(a);return N(u)&&N(c)&&N(r)?v.createElement("path",nu({},f,{className:Z("recharts-symbols",s),transform:"translate(".concat(u,", ").concat(c,")"),d:l()})):null};pc.registerSymbol=MO;var eg=e=>"radius"in e&&"startAngle"in e&&"endAngle"in e,hc=(e,t)=>{if(!e||typeof e=="function"||typeof e=="boolean")return null;var r=e;if(v.isValidElement(e)&&(r=e.props),typeof r!="object"&&typeof r!="function")return null;var n={};return Object.keys(r).forEach(i=>{ac(i)&&(n[i]=(a=>r[i](r,a)))}),n},DO=(e,t,r)=>n=>(e(t,r,n),null),pi=(e,t,r)=>{if(e===null||typeof e!="object"&&typeof e!="function")return null;var n=null;return Object.keys(e).forEach(i=>{var a=e[i];ac(i)&&typeof a=="function"&&(n||(n={}),n[i]=DO(a,t,r))}),n};function Cd(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function NO(e){for(var t=1;t(o[l]===void 0&&n[l]!==void 0&&(o[l]=n[l]),o),r);return a}function wa(){return wa=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var d=c.formatter||i,p=Z({"recharts-legend-item":!0,["legend-item-".concat(f)]:!0,inactive:c.inactive});if(c.type==="none")return null;var h=c.inactive?a:c.color,y=d?d(c.value,c,f):c.value;return v.createElement("li",wa({className:p,style:s,key:"legend-item-".concat(f)},pi(e,c,f)),v.createElement(oc,{width:r,height:r,viewBox:l,style:u,"aria-label":"".concat(y," legend icon")},v.createElement(qO,{data:c,iconType:o,inactiveColor:a})),v.createElement("span",{className:"recharts-legend-item-text",style:{color:h}},y))})}var GO=e=>{var t=be(e,KO),{payload:r,layout:n,align:i}=t;if(!r||!r.length)return null;var a={padding:0,margin:0,textAlign:n==="horizontal"?i:"left"};return v.createElement("ul",{className:"recharts-default-legend",style:a},v.createElement(UO,wa({},t,{payload:r})))},Al={},Sl={},Td;function VO(){return Td||(Td=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){const i=new Map;for(let a=0;a=0}e.isLength=t})(Cl)),Cl}var Rd;function mc(){return Rd||(Rd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=YO();function r(n){return n!=null&&typeof n!="function"&&t.isLength(n.length)}e.isArrayLike=r})(_l)),_l}var Il={},$d;function XO(){return $d||($d=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="object"&&r!==null}e.isObjectLike=t})(Il)),Il}var Ld;function ZO(){return Ld||(Ld=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=mc(),r=XO();function n(i){return r.isObjectLike(i)&&t.isArrayLike(i)}e.isArrayLikeObject=n})(kl)),kl}var Tl={},Ml={},zd;function JO(){return zd||(zd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=vc();function r(n){return function(i){return t.get(i,n)}}e.property=r})(Ml)),Ml}var Dl={},Nl={},Rl={},$l={},Bd;function rg(){return Bd||(Bd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r!==null&&(typeof r=="object"||typeof r=="function")}e.isObject=t})($l)),$l}var Ll={},Fd;function ng(){return Fd||(Fd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==null||typeof r!="object"&&typeof r!="function"}e.isPrimitive=t})(Ll)),Ll}var zl={},Wd;function ig(){return Wd||(Wd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n){return r===n||Number.isNaN(r)&&Number.isNaN(n)}e.isEqualsSameValueZero=t})(zl)),zl}var Kd;function QO(){return Kd||(Kd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=rg(),r=ng(),n=ig();function i(c,f,d){return typeof d!="function"?i(c,f,()=>{}):a(c,f,function p(h,y,m,g,w,b){const P=d(h,y,m,g,w,b);return P!==void 0?!!P:a(h,y,p,b)},new Map)}function a(c,f,d,p){if(f===c)return!0;switch(typeof f){case"object":return o(c,f,d,p);case"function":return Object.keys(f).length>0?a(c,{...f},d,p):n.isEqualsSameValueZero(c,f);default:return t.isObject(c)?typeof f=="string"?f==="":!0:n.isEqualsSameValueZero(c,f)}}function o(c,f,d,p){if(f==null)return!0;if(Array.isArray(f))return s(c,f,d,p);if(f instanceof Map)return l(c,f,d,p);if(f instanceof Set)return u(c,f,d,p);const h=Object.keys(f);if(c==null||r.isPrimitive(c))return h.length===0;if(h.length===0)return!0;if(p?.has(f))return p.get(f)===c;p?.set(f,c);try{for(let y=0;y{})}e.isMatch=r})(Nl)),Nl}var Bl={},Fl={},Wl={},Ud;function e1(){return Ud||(Ud=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Object.getOwnPropertySymbols(r).filter(n=>Object.prototype.propertyIsEnumerable.call(r,n))}e.getSymbols=t})(Wl)),Wl}var Kl={},Gd;function yc(){return Gd||(Gd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r==null?r===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(r)}e.getTag=t})(Kl)),Kl}var ql={},Vd;function og(){return Vd||(Vd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t="[object RegExp]",r="[object String]",n="[object Number]",i="[object Boolean]",a="[object Arguments]",o="[object Symbol]",l="[object Date]",s="[object Map]",u="[object Set]",c="[object Array]",f="[object Function]",d="[object ArrayBuffer]",p="[object Object]",h="[object Error]",y="[object DataView]",m="[object Uint8Array]",g="[object Uint8ClampedArray]",w="[object Uint16Array]",b="[object Uint32Array]",P="[object BigUint64Array]",x="[object Int8Array]",O="[object Int16Array]",S="[object Int32Array]",A="[object BigInt64Array]",_="[object Float32Array]",M="[object Float64Array]";e.argumentsTag=a,e.arrayBufferTag=d,e.arrayTag=c,e.bigInt64ArrayTag=A,e.bigUint64ArrayTag=P,e.booleanTag=i,e.dataViewTag=y,e.dateTag=l,e.errorTag=h,e.float32ArrayTag=_,e.float64ArrayTag=M,e.functionTag=f,e.int16ArrayTag=O,e.int32ArrayTag=S,e.int8ArrayTag=x,e.mapTag=s,e.numberTag=n,e.objectTag=p,e.regexpTag=t,e.setTag=u,e.stringTag=r,e.symbolTag=o,e.uint16ArrayTag=w,e.uint32ArrayTag=b,e.uint8ArrayTag=m,e.uint8ClampedArrayTag=g})(ql)),ql}var Ul={},Hd;function t1(){return Hd||(Hd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return ArrayBuffer.isView(r)&&!(r instanceof DataView)}e.isTypedArray=t})(Ul)),Ul}var Yd;function lg(){return Yd||(Yd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=e1(),r=yc(),n=og(),i=ng(),a=t1();function o(c,f){return l(c,void 0,c,new Map,f)}function l(c,f,d,p=new Map,h=void 0){const y=h?.(c,f,d,p);if(y!==void 0)return y;if(i.isPrimitive(c))return c;if(p.has(c))return p.get(c);if(Array.isArray(c)){const m=new Array(c.length);p.set(c,m);for(let g=0;gt.isMatch(a,i)}e.matches=n})(Dl)),Dl}var Gl={},Vl={},Hl={},Jd;function i1(){return Jd||(Jd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=lg(),r=yc(),n=og();function i(a,o){return t.cloneDeepWith(a,(l,s,u,c)=>{const f=o?.(l,s,u,c);if(f!==void 0)return f;if(typeof a=="object"){if(r.getTag(a)===n.objectTag&&typeof a.constructor!="function"){const d={};return c.set(a,d),t.copyProperties(d,a,u,c),d}switch(Object.prototype.toString.call(a)){case n.numberTag:case n.stringTag:case n.booleanTag:{const d=new a.constructor(a?.valueOf());return t.copyProperties(d,a),d}case n.argumentsTag:{const d={};return t.copyProperties(d,a),d.length=a.length,d[Symbol.iterator]=a[Symbol.iterator],d}default:return}}})}e.cloneDeepWith=i})(Hl)),Hl}var Qd;function a1(){return Qd||(Qd=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=i1();function r(n){return t.cloneDeepWith(n)}e.cloneDeep=r})(Vl)),Vl}var Yl={},Xl={},ev;function sg(){return ev||(ev=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=/^(?:0|[1-9]\d*)$/;function r(n,i=Number.MAX_SAFE_INTEGER){switch(typeof n){case"number":return Number.isInteger(n)&&n>=0&&n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?u:l;return rs.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:c,rs}var uv;function p1(){return uv||(uv=1,ts.exports=v1()),ts.exports}var cv;function h1(){if(cv)return es;cv=1;var e=nc(),t=p1();function r(u,c){return u===c&&(u!==0||1/u===1/c)||u!==u&&c!==c}var n=typeof Object.is=="function"?Object.is:r,i=t.useSyncExternalStore,a=e.useRef,o=e.useEffect,l=e.useMemo,s=e.useDebugValue;return es.useSyncExternalStoreWithSelector=function(u,c,f,d,p){var h=a(null);if(h.current===null){var y={hasValue:!1,value:null};h.current=y}else y=h.current;h=l(function(){function g(O){if(!w){if(w=!0,b=O,O=d(O),p!==void 0&&y.hasValue){var S=y.value;if(p(S,O))return P=S}return P=O}if(S=P,n(b,O))return S;var A=d(O);return p!==void 0&&p(S,A)?(b=O,S):(b=O,P=A)}var w=!1,b,P,x=f===void 0?null:f;return[function(){return g(c())},x===null?void 0:function(){return g(x())}]},[c,f,d,p]);var m=i(u,h[0],h[1]);return o(function(){y.hasValue=!0,y.value=m},[m]),s(m),m},es}var fv;function m1(){return fv||(fv=1,Ql.exports=h1()),Ql.exports}var y1=m1(),gc=v.createContext(null),g1=e=>e,le=()=>{var e=v.useContext(gc);return e?e.store.dispatch:g1},sa=()=>{},b1=()=>sa,x1=(e,t)=>e===t;function z(e){var t=v.useContext(gc),r=v.useMemo(()=>t?n=>{if(n!=null)return e(n)}:sa,[t,e]);return y1.useSyncExternalStoreWithSelector(t?t.subscription.addNestedSub:b1,t?t.store.getState:sa,t?t.store.getState:sa,r,x1)}function w1(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!="function")throw new TypeError(t)}function P1(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!="object")throw new TypeError(t)}function O1(e,t="expected all items to be functions, instead received the following types: "){if(!e.every(r=>typeof r=="function")){const r=e.map(n=>typeof n=="function"?`function ${n.name||"unnamed"}()`:typeof n).join(", ");throw new TypeError(`${t}[${r}]`)}}var dv=e=>Array.isArray(e)?e:[e];function A1(e){const t=Array.isArray(e[0])?e[0]:e;return O1(t,"createSelector expects all input-selectors to be functions, but received the following types: "),t}function S1(e,t){const r=[],{length:n}=e;for(let i=0;i{r=zi(),o.resetResultsCount()},o.resultsCount=()=>a,o.resetResultsCount=()=>{a=0},o}function _1(e,...t){const r=typeof e=="function"?{memoize:e,memoizeOptions:t}:e,n=(...i)=>{let a=0,o=0,l,s={},u=i.pop();typeof u=="object"&&(s=u,u=i.pop()),w1(u,`createSelector expects an output function after the inputs, but received: [${typeof u}]`);const c={...r,...s},{memoize:f,memoizeOptions:d=[],argsMemoize:p=cg,argsMemoizeOptions:h=[]}=c,y=dv(d),m=dv(h),g=A1(i),w=f(function(){return a++,u.apply(null,arguments)},...y),b=p(function(){o++;const x=S1(g,arguments);return l=w.apply(null,x),l},...m);return Object.assign(b,{resultFunc:u,memoizedResultFunc:w,dependencies:g,dependencyRecomputations:()=>o,resetDependencyRecomputations:()=>{o=0},lastResult:()=>l,recomputations:()=>a,resetRecomputations:()=>{a=0},memoize:f,argsMemoize:p})};return Object.assign(n,{withTypes:()=>n}),n}var j=_1(cg),C1=Object.assign((e,t=j)=>{P1(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);const r=Object.keys(e),n=r.map(a=>e[a]);return t(n,(...a)=>a.reduce((o,l,s)=>(o[r[s]]=l,o),{}))},{withTypes:()=>C1}),ns={},is={},as={},pv;function I1(){return pv||(pv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(n){return typeof n=="symbol"?1:n===null?2:n===void 0?3:n!==n?4:0}const r=(n,i,a)=>{if(n!==i){const o=t(n),l=t(i);if(o===l&&o===0){if(ni)return a==="desc"?-1:1}return a==="desc"?l-o:o-l}return 0};e.compareValues=r})(as)),as}var os={},ls={},hv;function fg(){return hv||(hv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return typeof r=="symbol"||r instanceof Symbol}e.isSymbol=t})(ls)),ls}var mv;function T1(){return mv||(mv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=fg(),r=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;function i(a,o){return Array.isArray(a)?!1:typeof a=="number"||typeof a=="boolean"||a==null||t.isSymbol(a)?!0:typeof a=="string"&&(n.test(a)||!r.test(a))||o!=null&&Object.hasOwn(o,a)}e.isKey=i})(os)),os}var yv;function M1(){return yv||(yv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=I1(),r=T1(),n=dc();function i(a,o,l,s){if(a==null)return[];l=s?void 0:l,Array.isArray(a)||(a=Object.values(a)),Array.isArray(o)||(o=o==null?[null]:[o]),o.length===0&&(o=[null]),Array.isArray(l)||(l=l==null?[]:[l]),l=l.map(p=>String(p));const u=(p,h)=>{let y=p;for(let m=0;mh==null||p==null?h:typeof p=="object"&&"key"in p?Object.hasOwn(h,p.key)?h[p.key]:u(h,p.path):typeof p=="function"?p(h):Array.isArray(p)?u(h,p):typeof h=="object"?h[p]:h,f=o.map(p=>(Array.isArray(p)&&p.length===1&&(p=p[0]),p==null||typeof p=="function"||Array.isArray(p)||r.isKey(p)?p:{key:p,path:n.toPath(p)}));return a.map(p=>({original:p,criteria:f.map(h=>c(h,p))})).slice().sort((p,h)=>{for(let y=0;yp.original)}e.orderBy=i})(is)),is}var ss={},gv;function D1(){return gv||(gv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n=1){const i=[],a=Math.floor(n),o=(l,s)=>{for(let u=0;u1&&n.isIterateeCall(a,o[0],o[1])?o=[]:l>2&&n.isIterateeCall(o[0],o[1],o[2])&&(o=[o[0]]),t.orderBy(a,r.flatten(o),["asc"])}e.sortBy=i})(ns)),ns}var cs,wv;function R1(){return wv||(wv=1,cs=N1().sortBy),cs}var $1=R1();const wo=gr($1);var vg=e=>e.legend.settings,L1=e=>e.legend.size,z1=e=>e.legend.payload,B1=j([z1,vg],(e,t)=>{var{itemSorter:r}=t,n=e.flat(1);return r?wo(n,r):n});function F1(){return z(B1)}var Bi=1;function pg(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],[t,r]=v.useState({height:0,left:0,top:0,width:0}),n=v.useCallback(i=>{if(i!=null){var a=i.getBoundingClientRect(),o={height:a.height,left:a.left,top:a.top,width:a.width};(Math.abs(o.height-t.height)>Bi||Math.abs(o.left-t.left)>Bi||Math.abs(o.top-t.top)>Bi||Math.abs(o.width-t.width)>Bi)&&r({height:o.height,left:o.left,top:o.top,width:o.width})}},[t.width,t.height,t.top,t.left,...e]);return[t,n]}function Fe(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var W1=typeof Symbol=="function"&&Symbol.observable||"@@observable",Pv=W1,fs=()=>Math.random().toString(36).substring(7).split("").join("."),K1={INIT:`@@redux/INIT${fs()}`,REPLACE:`@@redux/REPLACE${fs()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${fs()}`},Pa=K1;function bc(e){if(typeof e!="object"||e===null)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function hg(e,t,r){if(typeof e!="function")throw new Error(Fe(2));if(typeof t=="function"&&typeof r=="function"||typeof r=="function"&&typeof arguments[3]=="function")throw new Error(Fe(0));if(typeof t=="function"&&typeof r>"u"&&(r=t,t=void 0),typeof r<"u"){if(typeof r!="function")throw new Error(Fe(1));return r(hg)(e,t)}let n=e,i=t,a=new Map,o=a,l=0,s=!1;function u(){o===a&&(o=new Map,a.forEach((m,g)=>{o.set(g,m)}))}function c(){if(s)throw new Error(Fe(3));return i}function f(m){if(typeof m!="function")throw new Error(Fe(4));if(s)throw new Error(Fe(5));let g=!0;u();const w=l++;return o.set(w,m),function(){if(g){if(s)throw new Error(Fe(6));g=!1,u(),o.delete(w),a=null}}}function d(m){if(!bc(m))throw new Error(Fe(7));if(typeof m.type>"u")throw new Error(Fe(8));if(typeof m.type!="string")throw new Error(Fe(17));if(s)throw new Error(Fe(9));try{s=!0,i=n(i,m)}finally{s=!1}return(a=o).forEach(w=>{w()}),m}function p(m){if(typeof m!="function")throw new Error(Fe(10));n=m,d({type:Pa.REPLACE})}function h(){const m=f;return{subscribe(g){if(typeof g!="object"||g===null)throw new Error(Fe(11));function w(){const P=g;P.next&&P.next(c())}return w(),{unsubscribe:m(w)}},[Pv](){return this}}}return d({type:Pa.INIT}),{dispatch:d,subscribe:f,getState:c,replaceReducer:p,[Pv]:h}}function q1(e){Object.keys(e).forEach(t=>{const r=e[t];if(typeof r(void 0,{type:Pa.INIT})>"u")throw new Error(Fe(12));if(typeof r(void 0,{type:Pa.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(Fe(13))})}function mg(e){const t=Object.keys(e),r={};for(let a=0;a"u")throw l&&l.type,new Error(Fe(14));u[f]=h,s=s||h!==p}return s=s||n.length!==Object.keys(o).length,s?u:o}}function Oa(...e){return e.length===0?t=>t:e.length===1?e[0]:e.reduce((t,r)=>(...n)=>t(r(...n)))}function U1(...e){return t=>(r,n)=>{const i=t(r,n);let a=()=>{throw new Error(Fe(15))};const o={getState:i.getState,dispatch:(s,...u)=>a(s,...u)},l=e.map(s=>s(o));return a=Oa(...l)(i.dispatch),{...i,dispatch:a}}}function yg(e){return bc(e)&&"type"in e&&typeof e.type=="string"}var gg=Symbol.for("immer-nothing"),Ov=Symbol.for("immer-draftable"),Xe=Symbol.for("immer-state");function yt(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ot=Object,pn=ot.getPrototypeOf,Aa="constructor",Po="prototype",iu="configurable",Sa="enumerable",ua="writable",Jn="value",Vt=e=>!!e&&!!e[Xe];function Pt(e){return e?bg(e)||Ao(e)||!!e[Ov]||!!e[Aa]?.[Ov]||So(e)||Eo(e):!1}var G1=ot[Po][Aa].toString(),Av=new WeakMap;function bg(e){if(!e||!xc(e))return!1;const t=pn(e);if(t===null||t===ot[Po])return!0;const r=ot.hasOwnProperty.call(t,Aa)&&t[Aa];if(r===Object)return!0;if(!ln(r))return!1;let n=Av.get(r);return n===void 0&&(n=Function.toString.call(r),Av.set(r,n)),n===G1}function Oo(e,t,r=!0){hi(e)===0?(r?Reflect.ownKeys(e):ot.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((n,i)=>t(i,n,e))}function hi(e){const t=e[Xe];return t?t.type_:Ao(e)?1:So(e)?2:Eo(e)?3:0}var Sv=(e,t,r=hi(e))=>r===2?e.has(t):ot[Po].hasOwnProperty.call(e,t),au=(e,t,r=hi(e))=>r===2?e.get(t):e[t],Ea=(e,t,r,n=hi(e))=>{n===2?e.set(t,r):n===3?e.add(r):e[t]=r};function V1(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}var Ao=Array.isArray,So=e=>e instanceof Map,Eo=e=>e instanceof Set,xc=e=>typeof e=="object",ln=e=>typeof e=="function",ds=e=>typeof e=="boolean";function H1(e){const t=+e;return Number.isInteger(t)&&String(t)===e}var Bt=e=>e.copy_||e.base_,wc=e=>e.modified_?e.copy_:e.base_;function ou(e,t){if(So(e))return new Map(e);if(Eo(e))return new Set(e);if(Ao(e))return Array[Po].slice.call(e);const r=bg(e);if(t===!0||t==="class_only"&&!r){const n=ot.getOwnPropertyDescriptors(e);delete n[Xe];let i=Reflect.ownKeys(n);for(let a=0;a1&&ot.defineProperties(e,{set:Fi,add:Fi,clear:Fi,delete:Fi}),ot.freeze(e),t&&Oo(e,(r,n)=>{Pc(n,!0)},!1)),e}function Y1(){yt(2)}var Fi={[Jn]:Y1};function jo(e){return e===null||!xc(e)?!0:ot.isFrozen(e)}var ja="MapSet",lu="Patches",Ev="ArrayMethods",xg={};function Vr(e){const t=xg[e];return t||yt(0,e),t}var jv=e=>!!xg[e],Qn,wg=()=>Qn,X1=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:jv(ja)?Vr(ja):void 0,arrayMethodsPlugin_:jv(Ev)?Vr(Ev):void 0});function kv(e,t){t&&(e.patchPlugin_=Vr(lu),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function su(e){uu(e),e.drafts_.forEach(Z1),e.drafts_=null}function uu(e){e===Qn&&(Qn=e.parent_)}var _v=e=>Qn=X1(Qn,e);function Z1(e){const t=e[Xe];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Cv(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];if(e!==void 0&&e!==r){r[Xe].modified_&&(su(t),yt(4)),Pt(e)&&(e=Iv(t,e));const{patchPlugin_:i}=t;i&&i.generateReplacementPatches_(r[Xe].base_,e,t)}else e=Iv(t,r);return J1(t,e,!0),su(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==gg?e:void 0}function Iv(e,t){if(jo(t))return t;const r=t[Xe];if(!r)return ka(t,e.handledSet_,e);if(!ko(r,e))return t;if(!r.modified_)return r.base_;if(!r.finalized_){const{callbacks_:n}=r;if(n)for(;n.length>0;)n.pop()(e);Ag(r,e)}return r.copy_}function J1(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Pc(t,r)}function Pg(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var ko=(e,t)=>e.scope_===t,Q1=[];function Og(e,t,r,n){const i=Bt(e),a=e.type_;if(n!==void 0&&au(i,n,a)===t){Ea(i,n,r,a);return}if(!e.draftLocations_){const l=e.draftLocations_=new Map;Oo(i,(s,u)=>{if(Vt(u)){const c=l.get(u)||[];c.push(s),l.set(u,c)}})}const o=e.draftLocations_.get(t)??Q1;for(const l of o)Ea(i,l,r,a)}function eA(e,t,r){e.callbacks_.push(function(i){const a=t;if(!a||!ko(a,i))return;i.mapSetPlugin_?.fixSetContents(a);const o=wc(a);Og(e,a.draft_??a,o,r),Ag(a,i)})}function Ag(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){const{patchPlugin_:n}=t;if(n){const i=n.getPath(e);i&&n.generatePatches_(e,i,t)}Pg(e)}}function tA(e,t,r){const{scope_:n}=e;if(Vt(r)){const i=r[Xe];ko(i,n)&&i.callbacks_.push(function(){ca(e);const o=wc(i);Og(e,r,o,t)})}else Pt(r)&&e.callbacks_.push(function(){const a=Bt(e);e.type_===3?a.has(r)&&ka(r,n.handledSet_,n):au(a,t,e.type_)===r&&n.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&ka(au(e.copy_,t,e.type_),n.handledSet_,n)})}function ka(e,t,r){return!r.immer_.autoFreeze_&&r.unfinalizedDrafts_<1||Vt(e)||t.has(e)||!Pt(e)||jo(e)||(t.add(e),Oo(e,(n,i)=>{if(Vt(i)){const a=i[Xe];if(ko(a,r)){const o=wc(a);Ea(e,n,o,e.type_),Pg(a)}}else Pt(i)&&ka(i,t,r)})),e}function rA(e,t){const r=Ao(e),n={type_:r?1:0,scope_:t?t.scope_:wg(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0};let i=n,a=_a;r&&(i=[n],a=ei);const{revoke:o,proxy:l}=Proxy.revocable(i,a);return n.draft_=l,n.revoke_=o,[l,n]}var _a={get(e,t){if(t===Xe)return e;let r=e.scope_.arrayMethodsPlugin_;const n=e.type_===1&&typeof t=="string";if(n&&r?.isArrayOperationMethod(t))return r.createMethodInterceptor(e,t);const i=Bt(e);if(!Sv(i,t,e.type_))return nA(e,i,t);const a=i[t];if(e.finalized_||!Pt(a)||n&&e.operationMethod&&r?.isMutatingArrayMethod(e.operationMethod)&&H1(t))return a;if(a===vs(e.base_,t)){ca(e);const o=e.type_===1?+t:t,l=fu(e.scope_,a,e,o);return e.copy_[o]=l}return a},has(e,t){return t in Bt(e)},ownKeys(e){return Reflect.ownKeys(Bt(e))},set(e,t,r){const n=Sg(Bt(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const i=vs(Bt(e),t),a=i?.[Xe];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_.set(t,!1),!0;if(V1(r,i)&&(r!==void 0||Sv(e.base_,t,e.type_)))return!0;ca(e),cu(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_.set(t,!0),tA(e,t,r)),!0},deleteProperty(e,t){return ca(e),vs(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),cu(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=Bt(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{[ua]:!0,[iu]:e.type_!==1||t!=="length",[Sa]:n[Sa],[Jn]:r[t]}},defineProperty(){yt(11)},getPrototypeOf(e){return pn(e.base_)},setPrototypeOf(){yt(12)}},ei={};for(let e in _a){let t=_a[e];ei[e]=function(){const r=arguments;return r[0]=r[0][0],t.apply(this,r)}}ei.deleteProperty=function(e,t){return ei.set.call(this,e,t,void 0)};ei.set=function(e,t,r){return _a.set.call(this,e[0],t,r,e[0])};function vs(e,t){const r=e[Xe];return(r?Bt(r):e)[t]}function nA(e,t,r){const n=Sg(t,r);return n?Jn in n?n[Jn]:n.get?.call(e.draft_):void 0}function Sg(e,t){if(!(t in e))return;let r=pn(e);for(;r;){const n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=pn(r)}}function cu(e){e.modified_||(e.modified_=!0,e.parent_&&cu(e.parent_))}function ca(e){e.copy_||(e.assigned_=new Map,e.copy_=ou(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var iA=class{constructor(t){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(r,n,i)=>{if(ln(r)&&!ln(n)){const o=n;n=r;const l=this;return function(u=o,...c){return l.produce(u,f=>n.call(this,f,...c))}}ln(n)||yt(6),i!==void 0&&!ln(i)&&yt(7);let a;if(Pt(r)){const o=_v(this),l=fu(o,r,void 0);let s=!0;try{a=n(l),s=!1}finally{s?su(o):uu(o)}return kv(o,i),Cv(a,o)}else if(!r||!xc(r)){if(a=n(r),a===void 0&&(a=r),a===gg&&(a=void 0),this.autoFreeze_&&Pc(a,!0),i){const o=[],l=[];Vr(lu).generateReplacementPatches_(r,a,{patches_:o,inversePatches_:l}),i(o,l)}return a}else yt(1,r)},this.produceWithPatches=(r,n)=>{if(ln(r))return(l,...s)=>this.produceWithPatches(l,u=>r(u,...s));let i,a;return[this.produce(r,n,(l,s)=>{i=l,a=s}),i,a]},ds(t?.autoFreeze)&&this.setAutoFreeze(t.autoFreeze),ds(t?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(t.useStrictShallowCopy),ds(t?.useStrictIteration)&&this.setUseStrictIteration(t.useStrictIteration)}createDraft(t){Pt(t)||yt(8),Vt(t)&&(t=xt(t));const r=_v(this),n=fu(r,t,void 0);return n[Xe].isManual_=!0,uu(r),n}finishDraft(t,r){const n=t&&t[Xe];(!n||!n.isManual_)&&yt(9);const{scope_:i}=n;return kv(i,r),Cv(void 0,i)}setAutoFreeze(t){this.autoFreeze_=t}setUseStrictShallowCopy(t){this.useStrictShallowCopy_=t}setUseStrictIteration(t){this.useStrictIteration_=t}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(t,r){let n;for(n=r.length-1;n>=0;n--){const a=r[n];if(a.path.length===0&&a.op==="replace"){t=a.value;break}}n>-1&&(r=r.slice(n+1));const i=Vr(lu).applyPatches_;return Vt(t)?i(t,r):this.produce(t,a=>i(a,r))}};function fu(e,t,r,n){const[i,a]=So(t)?Vr(ja).proxyMap_(t,r):Eo(t)?Vr(ja).proxySet_(t,r):rA(t,r);return(r?.scope_??wg()).drafts_.push(i),a.callbacks_=r?.callbacks_??[],a.key_=n,r&&n!==void 0?eA(r,a,n):a.callbacks_.push(function(s){s.mapSetPlugin_?.fixSetContents(a);const{patchPlugin_:u}=s;a.modified_&&u&&u.generatePatches_(a,[],s)}),i}function xt(e){return Vt(e)||yt(10,e),Eg(e)}function Eg(e){if(!Pt(e)||jo(e))return e;const t=e[Xe];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=ou(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=ou(e,!0);return Oo(r,(i,a)=>{Ea(r,i,Eg(a))},n),t&&(t.finalized_=!1),r}var aA=new iA,jg=aA.produce;function kg(e){return({dispatch:r,getState:n})=>i=>a=>typeof a=="function"?a(r,n,e):i(a)}var oA=kg(),lA=kg,sA=typeof window<"u"&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]=="object"?Oa:Oa.apply(null,arguments)};function pt(e,t){function r(...n){if(t){let i=t(...n);if(!i)throw new Error(lt(0));return{type:e,payload:i.payload,..."meta"in i&&{meta:i.meta},..."error"in i&&{error:i.error}}}return{type:e,payload:n[0]}}return r.toString=()=>`${e}`,r.type=e,r.match=n=>yg(n)&&n.type===e,r}var _g=class qn extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,qn.prototype)}static get[Symbol.species](){return qn}concat(...t){return super.concat.apply(this,t)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new qn(...t[0].concat(this)):new qn(...t.concat(this))}};function Tv(e){return Pt(e)?jg(e,()=>{}):e}function Wi(e,t,r){return e.has(t)?e.get(t):e.set(t,r(t)).get(t)}function uA(e){return typeof e=="boolean"}var cA=()=>function(t){const{thunk:r=!0,immutableCheck:n=!0,serializableCheck:i=!0,actionCreatorCheck:a=!0}=t??{};let o=new _g;return r&&(uA(r)?o.push(oA):o.push(lA(r.extraArgument))),o},Cg="RTK_autoBatch",ce=()=>e=>({payload:e,meta:{[Cg]:!0}}),Mv=e=>t=>{setTimeout(t,e)},Ig=(e={type:"raf"})=>t=>(...r)=>{const n=t(...r);let i=!0,a=!1,o=!1;const l=new Set,s=e.type==="tick"?queueMicrotask:e.type==="raf"?typeof window<"u"&&window.requestAnimationFrame?window.requestAnimationFrame:Mv(10):e.type==="callback"?e.queueNotification:Mv(e.timeout),u=()=>{o=!1,a&&(a=!1,l.forEach(c=>c()))};return Object.assign({},n,{subscribe(c){const f=()=>i&&c(),d=n.subscribe(f);return l.add(c),()=>{d(),l.delete(c)}},dispatch(c){try{return i=!c?.meta?.[Cg],a=!i,a&&(o||(o=!0,s(u))),n.dispatch(c)}finally{i=!0}}})},fA=e=>function(r){const{autoBatch:n=!0}=r??{};let i=new _g(e);return n&&i.push(Ig(typeof n=="object"?n:void 0)),i};function dA(e){const t=cA(),{reducer:r=void 0,middleware:n,devTools:i=!0,preloadedState:a=void 0,enhancers:o=void 0}=e||{};let l;if(typeof r=="function")l=r;else if(bc(r))l=mg(r);else throw new Error(lt(1));let s;typeof n=="function"?s=n(t):s=t();let u=Oa;i&&(u=sA({trace:!1,...typeof i=="object"&&i}));const c=U1(...s),f=fA(c);let d=typeof o=="function"?o(f):f();const p=u(...d);return hg(l,a,p)}function Tg(e){const t={},r=[];let n;const i={addCase(a,o){const l=typeof a=="string"?a:a.type;if(!l)throw new Error(lt(28));if(l in t)throw new Error(lt(29));return t[l]=o,i},addAsyncThunk(a,o){return o.pending&&(t[a.pending.type]=o.pending),o.rejected&&(t[a.rejected.type]=o.rejected),o.fulfilled&&(t[a.fulfilled.type]=o.fulfilled),o.settled&&r.push({matcher:a.settled,reducer:o.settled}),i},addMatcher(a,o){return r.push({matcher:a,reducer:o}),i},addDefaultCase(a){return n=a,i}};return e(i),[t,r,n]}function vA(e){return typeof e=="function"}function pA(e,t){let[r,n,i]=Tg(t),a;if(vA(e))a=()=>Tv(e());else{const l=Tv(e);a=()=>l}function o(l=a(),s){let u=[r[s.type],...n.filter(({matcher:c})=>c(s)).map(({reducer:c})=>c)];return u.filter(c=>!!c).length===0&&(u=[i]),u.reduce((c,f)=>{if(f)if(Vt(c)){const p=f(c,s);return p===void 0?c:p}else{if(Pt(c))return jg(c,d=>f(d,s));{const d=f(c,s);if(d===void 0){if(c===null)return c;throw Error("A case reducer on a non-draftable value must not return undefined")}return d}}return c},l)}return o.getInitialState=a,o}var hA="ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW",mA=(e=21)=>{let t="",r=e;for(;r--;)t+=hA[Math.random()*64|0];return t},yA=Symbol.for("rtk-slice-createasyncthunk");function gA(e,t){return`${e}/${t}`}function bA({creators:e}={}){const t=e?.asyncThunk?.[yA];return function(n){const{name:i,reducerPath:a=i}=n;if(!i)throw new Error(lt(11));const o=(typeof n.reducers=="function"?n.reducers(wA()):n.reducers)||{},l=Object.keys(o),s={sliceCaseReducersByName:{},sliceCaseReducersByType:{},actionCreators:{},sliceMatchers:[]},u={addCase(b,P){const x=typeof b=="string"?b:b.type;if(!x)throw new Error(lt(12));if(x in s.sliceCaseReducersByType)throw new Error(lt(13));return s.sliceCaseReducersByType[x]=P,u},addMatcher(b,P){return s.sliceMatchers.push({matcher:b,reducer:P}),u},exposeAction(b,P){return s.actionCreators[b]=P,u},exposeCaseReducer(b,P){return s.sliceCaseReducersByName[b]=P,u}};l.forEach(b=>{const P=o[b],x={reducerName:b,type:gA(i,b),createNotation:typeof n.reducers=="function"};OA(P)?SA(x,P,u,t):PA(x,P,u)});function c(){const[b={},P=[],x=void 0]=typeof n.extraReducers=="function"?Tg(n.extraReducers):[n.extraReducers],O={...b,...s.sliceCaseReducersByType};return pA(n.initialState,S=>{for(let A in O)S.addCase(A,O[A]);for(let A of s.sliceMatchers)S.addMatcher(A.matcher,A.reducer);for(let A of P)S.addMatcher(A.matcher,A.reducer);x&&S.addDefaultCase(x)})}const f=b=>b,d=new Map,p=new WeakMap;let h;function y(b,P){return h||(h=c()),h(b,P)}function m(){return h||(h=c()),h.getInitialState()}function g(b,P=!1){function x(S){let A=S[b];return typeof A>"u"&&P&&(A=Wi(p,x,m)),A}function O(S=f){const A=Wi(d,P,()=>new WeakMap);return Wi(A,S,()=>{const _={};for(const[M,I]of Object.entries(n.selectors??{}))_[M]=xA(I,S,()=>Wi(p,S,m),P);return _})}return{reducerPath:b,getSelectors:O,get selectors(){return O(x)},selectSlice:x}}const w={name:i,reducer:y,actions:s.actionCreators,caseReducers:s.sliceCaseReducersByName,getInitialState:m,...g(a),injectInto(b,{reducerPath:P,...x}={}){const O=P??a;return b.inject({reducerPath:O,reducer:y},x),{...w,...g(O,!0)}}};return w}}function xA(e,t,r,n){function i(a,...o){let l=t(a);return typeof l>"u"&&n&&(l=r()),e(l,...o)}return i.unwrapped=e,i}var tt=bA();function wA(){function e(t,r){return{_reducerDefinitionType:"asyncThunk",payloadCreator:t,...r}}return e.withTypes=()=>e,{reducer(t){return Object.assign({[t.name](...r){return t(...r)}}[t.name],{_reducerDefinitionType:"reducer"})},preparedReducer(t,r){return{_reducerDefinitionType:"reducerWithPrepare",prepare:t,reducer:r}},asyncThunk:e}}function PA({type:e,reducerName:t,createNotation:r},n,i){let a,o;if("reducer"in n){if(r&&!AA(n))throw new Error(lt(17));a=n.reducer,o=n.prepare}else a=n;i.addCase(e,a).exposeCaseReducer(t,a).exposeAction(t,o?pt(e,o):pt(e))}function OA(e){return e._reducerDefinitionType==="asyncThunk"}function AA(e){return e._reducerDefinitionType==="reducerWithPrepare"}function SA({type:e,reducerName:t},r,n,i){if(!i)throw new Error(lt(18));const{payloadCreator:a,fulfilled:o,pending:l,rejected:s,settled:u,options:c}=r,f=i(e,a,c);n.exposeAction(t,f),o&&n.addCase(f.fulfilled,o),l&&n.addCase(f.pending,l),s&&n.addCase(f.rejected,s),u&&n.addMatcher(f.settled,u),n.exposeCaseReducer(t,{fulfilled:o||Ki,pending:l||Ki,rejected:s||Ki,settled:u||Ki})}function Ki(){}var EA="task",Mg="listener",Dg="completed",Oc="cancelled",jA=`task-${Oc}`,kA=`task-${Dg}`,du=`${Mg}-${Oc}`,_A=`${Mg}-${Dg}`,_o=class{constructor(e){this.code=e,this.message=`${EA} ${Oc} (reason: ${e})`}name="TaskAbortError";message},Ac=(e,t)=>{if(typeof e!="function")throw new TypeError(lt(32))},Ca=()=>{},Ng=(e,t=Ca)=>(e.catch(t),e),Rg=(e,t)=>(e.addEventListener("abort",t,{once:!0}),()=>e.removeEventListener("abort",t)),zr=e=>{if(e.aborted)throw new _o(e.reason)};function $g(e,t){let r=Ca;return new Promise((n,i)=>{const a=()=>i(new _o(e.reason));if(e.aborted){a();return}r=Rg(e,a),t.finally(()=>r()).then(n,i)}).finally(()=>{r=Ca})}var CA=async(e,t)=>{try{return await Promise.resolve(),{status:"ok",value:await e()}}catch(r){return{status:r instanceof _o?"cancelled":"rejected",error:r}}finally{t?.()}},Ia=e=>t=>Ng($g(e,t).then(r=>(zr(e),r))),Lg=e=>{const t=Ia(e);return r=>t(new Promise(n=>setTimeout(n,r)))},{assign:fn}=Object,Dv={},Co="listenerMiddleware",IA=(e,t)=>{const r=n=>Rg(e,()=>n.abort(e.reason));return(n,i)=>{Ac(n);const a=new AbortController;r(a);const o=CA(async()=>{zr(e),zr(a.signal);const l=await n({pause:Ia(a.signal),delay:Lg(a.signal),signal:a.signal});return zr(a.signal),l},()=>a.abort(kA));return i?.autoJoin&&t.push(o.catch(Ca)),{result:Ia(e)(o),cancel(){a.abort(jA)}}}},TA=(e,t)=>{const r=async(n,i)=>{zr(t);let a=()=>{};const l=[new Promise((s,u)=>{let c=e({predicate:n,effect:(f,d)=>{d.unsubscribe(),s([f,d.getState(),d.getOriginalState()])}});a=()=>{c(),u()}})];i!=null&&l.push(new Promise(s=>setTimeout(s,i,null)));try{const s=await $g(t,Promise.race(l));return zr(t),s}finally{a()}};return(n,i)=>Ng(r(n,i))},zg=e=>{let{type:t,actionCreator:r,matcher:n,predicate:i,effect:a}=e;if(t)i=pt(t).match;else if(r)t=r.type,i=r.match;else if(n)i=n;else if(!i)throw new Error(lt(21));return Ac(a),{predicate:i,type:t,effect:a}},Bg=fn(e=>{const{type:t,predicate:r,effect:n}=zg(e);return{id:mA(),effect:n,type:t,predicate:r,pending:new Set,unsubscribe:()=>{throw new Error(lt(22))}}},{withTypes:()=>Bg}),Nv=(e,t)=>{const{type:r,effect:n,predicate:i}=zg(t);return Array.from(e.values()).find(a=>(typeof r=="string"?a.type===r:a.predicate===i)&&a.effect===n)},vu=e=>{e.pending.forEach(t=>{t.abort(du)})},MA=(e,t)=>()=>{for(const r of t.keys())vu(r);e.clear()},Rv=(e,t,r)=>{try{e(t,r)}catch(n){setTimeout(()=>{throw n},0)}},Fg=fn(pt(`${Co}/add`),{withTypes:()=>Fg}),DA=pt(`${Co}/removeAll`),Wg=fn(pt(`${Co}/remove`),{withTypes:()=>Wg}),NA=(...e)=>{console.error(`${Co}/error`,...e)},mi=(e={})=>{const t=new Map,r=new Map,n=p=>{const h=r.get(p)??0;r.set(p,h+1)},i=p=>{const h=r.get(p)??1;h===1?r.delete(p):r.set(p,h-1)},{extra:a,onError:o=NA}=e;Ac(o);const l=p=>(p.unsubscribe=()=>t.delete(p.id),t.set(p.id,p),h=>{p.unsubscribe(),h?.cancelActive&&vu(p)}),s=p=>{const h=Nv(t,p)??Bg(p);return l(h)};fn(s,{withTypes:()=>s});const u=p=>{const h=Nv(t,p);return h&&(h.unsubscribe(),p.cancelActive&&vu(h)),!!h};fn(u,{withTypes:()=>u});const c=async(p,h,y,m)=>{const g=new AbortController,w=TA(s,g.signal),b=[];try{p.pending.add(g),n(p),await Promise.resolve(p.effect(h,fn({},y,{getOriginalState:m,condition:(P,x)=>w(P,x).then(Boolean),take:w,delay:Lg(g.signal),pause:Ia(g.signal),extra:a,signal:g.signal,fork:IA(g.signal,b),unsubscribe:p.unsubscribe,subscribe:()=>{t.set(p.id,p)},cancelActiveListeners:()=>{p.pending.forEach((P,x,O)=>{P!==g&&(P.abort(du),O.delete(P))})},cancel:()=>{g.abort(du),p.pending.delete(g)},throwIfCancelled:()=>{zr(g.signal)}})))}catch(P){P instanceof _o||Rv(o,P,{raisedBy:"effect"})}finally{await Promise.all(b),g.abort(_A),i(p),p.pending.delete(g)}},f=MA(t,r);return{middleware:p=>h=>y=>{if(!yg(y))return h(y);if(Fg.match(y))return s(y.payload);if(DA.match(y)){f();return}if(Wg.match(y))return u(y.payload);let m=p.getState();const g=()=>{if(m===Dv)throw new Error(lt(23));return m};let w;try{if(w=h(y),t.size>0){const b=p.getState(),P=Array.from(t.values());for(const x of P){let O=!1;try{O=x.predicate(y,b,m)}catch(S){O=!1,Rv(o,S,{raisedBy:"predicate"})}O&&c(x,y,p,g)}}}finally{m=Dv}return w},startListening:s,stopListening:u,clearListeners:f}};function lt(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var RA={layoutType:"horizontal",width:0,height:0,margin:{top:5,right:5,bottom:5,left:5},scale:1},Kg=tt({name:"chartLayout",initialState:RA,reducers:{setLayout(e,t){e.layoutType=t.payload},setChartSize(e,t){e.width=t.payload.width,e.height=t.payload.height},setMargin(e,t){var r,n,i,a;e.margin.top=(r=t.payload.top)!==null&&r!==void 0?r:0,e.margin.right=(n=t.payload.right)!==null&&n!==void 0?n:0,e.margin.bottom=(i=t.payload.bottom)!==null&&i!==void 0?i:0,e.margin.left=(a=t.payload.left)!==null&&a!==void 0?a:0},setScale(e,t){e.scale=t.payload}}}),{setMargin:$A,setLayout:LA,setChartSize:zA,setScale:BA}=Kg.actions,FA=Kg.reducer;function qg(e,t,r){return Array.isArray(e)&&e&&t+r!==0?e.slice(t,r+1):e}function H(e){return Number.isFinite(e)}function Mt(e){return typeof e=="number"&&e>0&&Number.isFinite(e)}function $v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function sn(e){for(var t=1;t{if(t&&r){var{width:n,height:i}=r,{align:a,verticalAlign:o,layout:l}=t;if((l==="vertical"||l==="horizontal"&&o==="middle")&&a!=="center"&&N(e[a]))return sn(sn({},e),{},{[a]:e[a]+(n||0)});if((l==="horizontal"||l==="vertical"&&a==="center")&&o!=="middle"&&N(e[o]))return sn(sn({},e),{},{[o]:e[o]+(i||0)})}return e},At=(e,t)=>e==="horizontal"&&t==="xAxis"||e==="vertical"&&t==="yAxis"||e==="centric"&&t==="angleAxis"||e==="radial"&&t==="radiusAxis",Ug=(e,t,r,n)=>{if(n)return e.map(l=>l.coordinate);var i,a,o=e.map(l=>(l.coordinate===t&&(i=!0),l.coordinate===r&&(a=!0),l.coordinate));return i||o.push(t),a||o.push(r),o},Gg=(e,t,r)=>{if(!e)return null;var{duplicateDomain:n,type:i,range:a,scale:o,realScaleType:l,isCategorical:s,categoricalDomain:u,tickCount:c,ticks:f,niceTicks:d,axisType:p}=e;if(!o)return null;var h=l==="scaleBand"&&o.bandwidth?o.bandwidth()/2:2,y=i==="category"&&o.bandwidth?o.bandwidth()/h:0;if(y=p==="angleAxis"&&a&&a.length>=2?$e(a[0]-a[1])*2*y:y,f||d){var m=(f||d||[]).map((g,w)=>{var b=n?n.indexOf(g):g,P=o.map(b);return H(P)?{coordinate:P+y,value:g,offset:y,index:w}:null}).filter(Qe);return m}return s&&u?u.map((g,w)=>{var b=o.map(g);return H(b)?{coordinate:b+y,value:g,index:w,offset:y}:null}).filter(Qe):o.ticks&&c!=null?o.ticks(c).map((g,w)=>{var b=o.map(g);return H(b)?{coordinate:b+y,value:g,index:w,offset:y}:null}).filter(Qe):o.domain().map((g,w)=>{var b=o.map(g);return H(b)?{coordinate:b+y,value:n?n[g]:g,index:w,offset:y}:null}).filter(Qe)},GA=(e,t)=>{if(!t||t.length!==2||!N(t[0])||!N(t[1]))return e;var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]),i=[e[0],e[1]];return(!N(e[0])||e[0]n)&&(i[1]=n),i[0]>n&&(i[0]=n),i[1]{var t,r=e.length;if(!(r<=0)){var n=(t=e[0])===null||t===void 0?void 0:t.length;if(!(n==null||n<=0))for(var i=0;i=0?(u[0]=a,a+=d,u[1]=a):(u[0]=o,o+=d,u[1]=o)}}}},HA=e=>{var t,r=e.length;if(!(r<=0)){var n=(t=e[0])===null||t===void 0?void 0:t.length;if(!(n==null||n<=0))for(var i=0;i=0?(s[0]=a,a+=u,s[1]=a):(s[0]=0,s[1]=0)}}}},YA={sign:VA,expand:hO,none:qr,silhouette:mO,wiggle:yO,positive:HA},XA=(e,t,r)=>{var n,i=(n=YA[r])!==null&&n!==void 0?n:qr,a=pO().keys(t).value((l,s)=>Number(ne(l,s,0))).order(ru).offset(i),o=a(e);return o.forEach((l,s)=>{l.forEach((u,c)=>{var f=ne(e[c],t[s],0);Array.isArray(f)&&f.length===2&&N(f[0])&&N(f[1])&&(u[0]=f[0],u[1]=f[1])})}),o};function Vg(e){return e==null?void 0:String(e)}function Ta(e){var{axis:t,ticks:r,bandSize:n,entry:i,index:a,dataKey:o}=e;if(t.type==="category"){if(!t.allowDuplicatedCategory&&t.dataKey&&!de(i[t.dataKey])){var l=Jy(r,"value",i[t.dataKey]);if(l)return l.coordinate+n/2}return r!=null&&r[a]?r[a].coordinate+n/2:null}var s=ne(i,de(o)?t.dataKey:o),u=t.scale.map(s);return N(u)?u:null}var Lv=e=>{var{axis:t,ticks:r,offset:n,bandSize:i,entry:a,index:o}=e;if(t.type==="category")return r[o]?r[o].coordinate+n:null;var l=ne(a,t.dataKey,t.scale.domain()[o]);if(de(l))return null;var s=t.scale.map(l);return N(s)?s-i/2+n:null},ZA=e=>{var{numericAxis:t}=e,r=t.scale.domain();if(t.type==="number"){var n=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]);return n<=0&&i>=0?0:i<0?i:n}return r[0]},JA=e=>{var t=e.flat(2).filter(N);return[Math.min(...t),Math.max(...t)]},QA=e=>[e[0]===1/0?0:e[0],e[1]===-1/0?0:e[1]],eS=(e,t,r)=>{if(e!=null)return QA(Object.keys(e).reduce((n,i)=>{var a=e[i];if(!a)return n;var{stackedData:o}=a,l=o.reduce((s,u)=>{var c=qg(u,t,r),f=JA(c);return!H(f[0])||!H(f[1])?s:[Math.min(s[0],f[0]),Math.max(s[1],f[1])]},[1/0,-1/0]);return[Math.min(l[0],n[0]),Math.max(l[1],n[1])]},[1/0,-1/0]))},zv=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,Bv=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,hr=(e,t,r)=>{if(e&&e.scale&&e.scale.bandwidth){var n=e.scale.bandwidth();if(!r||n>0)return n}if(e&&t&&t.length>=2){for(var i=wo(t,c=>c.coordinate),a=1/0,o=1,l=i.length;o{if(t==="horizontal")return e.chartX;if(t==="vertical")return e.chartY},rS=(e,t)=>t==="centric"?e.angle:e.radius,er=e=>e.layout.width,tr=e=>e.layout.height,nS=e=>e.layout.scale,Hg=e=>e.layout.margin,Io=j(e=>e.cartesianAxis.xAxis,e=>Object.values(e)),To=j(e=>e.cartesianAxis.yAxis,e=>Object.values(e)),Yg="data-recharts-item-index",Xg="data-recharts-item-id",yi=60;function Wv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function qi(e){for(var t=1;te.brush.height;function sS(e){var t=To(e);return t.reduce((r,n)=>{if(n.orientation==="left"&&!n.mirror&&!n.hide){var i=typeof n.width=="number"?n.width:yi;return r+i}return r},0)}function uS(e){var t=To(e);return t.reduce((r,n)=>{if(n.orientation==="right"&&!n.mirror&&!n.hide){var i=typeof n.width=="number"?n.width:yi;return r+i}return r},0)}function cS(e){var t=Io(e);return t.reduce((r,n)=>n.orientation==="top"&&!n.mirror&&!n.hide?r+n.height:r,0)}function fS(e){var t=Io(e);return t.reduce((r,n)=>n.orientation==="bottom"&&!n.mirror&&!n.hide?r+n.height:r,0)}var _e=j([er,tr,Hg,lS,sS,uS,cS,fS,vg,L1],(e,t,r,n,i,a,o,l,s,u)=>{var c={left:(r.left||0)+i,right:(r.right||0)+a},f={top:(r.top||0)+o,bottom:(r.bottom||0)+l},d=qi(qi({},f),c),p=d.bottom;d.bottom+=n,d=UA(d,s,u);var h=e-d.left-d.right,y=t-d.top-d.bottom;return qi(qi({brushBottom:p},d),{},{width:Math.max(h,0),height:Math.max(y,0)})}),dS=j(_e,e=>({x:e.left,y:e.top,width:e.width,height:e.height})),Sc=j(er,tr,(e,t)=>({x:0,y:0,width:e,height:t})),vS=v.createContext(null),Le=()=>v.useContext(vS)!=null,Mo=e=>e.brush,Do=j([Mo,_e,Hg],(e,t,r)=>({height:e.height,x:N(e.x)?e.x:t.left,y:N(e.y)?e.y:t.top+t.height+t.brushBottom-(r?.bottom||0),width:N(e.width)?e.width:t.width})),ps={},hs={},ms={},Kv;function pS(){return Kv||(Kv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r,n,{signal:i,edges:a}={}){let o,l=null;const s=a!=null&&a.includes("leading"),u=a==null||a.includes("trailing"),c=()=>{l!==null&&(r.apply(o,l),o=void 0,l=null)},f=()=>{u&&c(),y()};let d=null;const p=()=>{d!=null&&clearTimeout(d),d=setTimeout(()=>{d=null,f()},n)},h=()=>{d!==null&&(clearTimeout(d),d=null)},y=()=>{h(),o=void 0,l=null},m=()=>{c()},g=function(...w){if(i?.aborted)return;o=this,l=w;const b=d==null;p(),s&&b&&c()};return g.schedule=p,g.cancel=y,g.flush=m,i?.addEventListener("abort",y,{once:!0}),g}e.debounce=t})(ms)),ms}var qv;function hS(){return qv||(qv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=pS();function r(n,i=0,a={}){typeof a!="object"&&(a={});const{leading:o=!1,trailing:l=!0,maxWait:s}=a,u=Array(2);o&&(u[0]="leading"),l&&(u[1]="trailing");let c,f=null;const d=t.debounce(function(...y){c=n.apply(this,y),f=null},i,{edges:u}),p=function(...y){return s!=null&&(f===null&&(f=Date.now()),Date.now()-f>=s)?(c=n.apply(this,y),f=Date.now(),d.cancel(),d.schedule(),c):(d.apply(this,y),c)},h=()=>(d.flush(),c);return p.cancel=d.cancel,p.flush=h,p}e.debounce=r})(hs)),hs}var Uv;function mS(){return Uv||(Uv=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=hS();function r(n,i=0,a={}){const{leading:o=!0,trailing:l=!0}=a;return t.debounce(n,i,{leading:o,maxWait:i,trailing:l})}e.throttle=r})(ps)),ps}var ys,Gv;function yS(){return Gv||(Gv=1,ys=mS().throttle),ys}var gS=yS();const bS=gr(gS);var Ma=function(t,r){for(var n=arguments.length,i=new Array(n>2?n-2:0),a=2;ai[o++]))}},_t={width:"100%",height:"100%",debounce:0,minWidth:0,initialDimension:{width:-1,height:-1}},Zg=(e,t,r)=>{var{width:n=_t.width,height:i=_t.height,aspect:a,maxHeight:o}=r,l=Gr(n)?e:Number(n),s=Gr(i)?t:Number(i);return a&&a>0&&(l?s=l/a:s&&(l=s*a),o&&s!=null&&s>o&&(s=o)),{calculatedWidth:l,calculatedHeight:s}},xS={width:0,height:0,overflow:"visible"},wS={width:0,overflowX:"visible"},PS={height:0,overflowY:"visible"},OS={},AS=e=>{var{width:t,height:r}=e,n=Gr(t),i=Gr(r);return n&&i?xS:n?wS:i?PS:OS};function SS(e){var{width:t,height:r,aspect:n}=e,i=t,a=r;return i===void 0&&a===void 0?(i=_t.width,a=_t.height):i===void 0?i=n&&n>0?void 0:_t.width:a===void 0&&(a=n&&n>0?void 0:_t.height),{width:i,height:a}}function pu(){return pu=Object.assign?Object.assign.bind():function(e){for(var t=1;t({width:r,height:n}),[r,n]);return _S(i)?v.createElement(Jg.Provider,{value:i},t):null}var Ec=()=>v.useContext(Jg),CS=v.forwardRef((e,t)=>{var{aspect:r,initialDimension:n=_t.initialDimension,width:i,height:a,minWidth:o=_t.minWidth,minHeight:l,maxHeight:s,children:u,debounce:c=_t.debounce,id:f,className:d,onResize:p,style:h={}}=e,y=v.useRef(null),m=v.useRef();m.current=p,v.useImperativeHandle(t,()=>y.current);var[g,w]=v.useState({containerWidth:n.width,containerHeight:n.height}),b=v.useCallback((A,_)=>{w(M=>{var I=Math.round(A),k=Math.round(_);return M.containerWidth===I&&M.containerHeight===k?M:{containerWidth:I,containerHeight:k}})},[]);v.useEffect(()=>{if(y.current==null||typeof ResizeObserver>"u")return br;var A=k=>{var $,R=k[0];if(R!=null){var{width:W,height:K}=R.contentRect;b(W,K),($=m.current)===null||$===void 0||$.call(m,W,K)}};c>0&&(A=bS(A,c,{trailing:!0,leading:!1}));var _=new ResizeObserver(A),{width:M,height:I}=y.current.getBoundingClientRect();return b(M,I),_.observe(y.current),()=>{_.disconnect()}},[b,c]);var{containerWidth:P,containerHeight:x}=g;Ma(!r||r>0,"The aspect(%s) must be greater than zero.",r);var{calculatedWidth:O,calculatedHeight:S}=Zg(P,x,{width:i,height:a,aspect:r,maxHeight:s});return Ma(O!=null&&O>0||S!=null&&S>0,`The width(%s) and height(%s) of chart should be greater than 0, + please check the style of container, or the props width(%s) and height(%s), + or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the + height and width.`,O,S,i,a,o,l,r),v.createElement("div",{id:f?"".concat(f):void 0,className:Z("recharts-responsive-container",d),style:Hv(Hv({},h),{},{width:i,height:a,minWidth:o,minHeight:l,maxHeight:s}),ref:y},v.createElement("div",{style:AS({width:i,height:a})},v.createElement(Qg,{width:O,height:S},u)))}),Tn=v.forwardRef((e,t)=>{var r=Ec();if(Mt(r.width)&&Mt(r.height))return e.children;var{width:n,height:i}=SS({width:e.width,height:e.height,aspect:e.aspect}),{calculatedWidth:a,calculatedHeight:o}=Zg(void 0,void 0,{width:n,height:i,aspect:e.aspect,maxHeight:e.maxHeight});return N(a)&&N(o)?v.createElement(Qg,{width:a,height:o},e.children):v.createElement(CS,pu({},e,{width:n,height:i,ref:t}))});function jc(e){if(e)return{x:e.x,y:e.y,upperWidth:"upperWidth"in e?e.upperWidth:e.width,lowerWidth:"lowerWidth"in e?e.lowerWidth:e.width,width:e.width,height:e.height}}var No=()=>{var e,t=Le(),r=z(dS),n=z(Do),i=(e=z(Mo))===null||e===void 0?void 0:e.padding;return!t||!n||!i?r:{width:n.width-i.left-i.right,height:n.height-i.top-i.bottom,x:i.left,y:i.top}},IS={top:0,bottom:0,left:0,right:0,width:0,height:0,brushBottom:0},eb=()=>{var e;return(e=z(_e))!==null&&e!==void 0?e:IS},kc=()=>z(er),_c=()=>z(tr),TS=()=>z(e=>e.layout.margin),J=e=>e.layout.layoutType,wr=()=>z(J),Cc=()=>{var e=wr();if(e==="horizontal"||e==="vertical")return e},tb=e=>{var t=e.layout.layoutType;if(t==="centric"||t==="radial")return t},MS=()=>{var e=wr();return e!==void 0},gi=e=>{var t=le(),r=Le(),{width:n,height:i}=e,a=Ec(),o=n,l=i;return a&&(o=a.width>0?a.width:n,l=a.height>0?a.height:i),v.useEffect(()=>{!r&&Mt(o)&&Mt(l)&&t(zA({width:o,height:l}))},[t,r,o,l]),null},rb=Symbol.for("immer-nothing"),Yv=Symbol.for("immer-draftable"),st=Symbol.for("immer-state");function gt(e,...t){throw new Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var ti=Object.getPrototypeOf;function hn(e){return!!e&&!!e[st]}function Hr(e){return e?nb(e)||Array.isArray(e)||!!e[Yv]||!!e.constructor?.[Yv]||bi(e)||$o(e):!1}var DS=Object.prototype.constructor.toString(),Xv=new WeakMap;function nb(e){if(!e||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);if(t===null||t===Object.prototype)return!0;const r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if(typeof r!="function")return!1;let n=Xv.get(r);return n===void 0&&(n=Function.toString.call(r),Xv.set(r,n)),n===DS}function Da(e,t,r=!0){Ro(e)===0?(r?Reflect.ownKeys(e):Object.keys(e)).forEach(i=>{t(i,e[i],e)}):e.forEach((n,i)=>t(i,n,e))}function Ro(e){const t=e[st];return t?t.type_:Array.isArray(e)?1:bi(e)?2:$o(e)?3:0}function hu(e,t){return Ro(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function ib(e,t,r){const n=Ro(e);n===2?e.set(t,r):n===3?e.add(r):e[t]=r}function NS(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}function bi(e){return e instanceof Map}function $o(e){return e instanceof Set}function Tr(e){return e.copy_||e.base_}function mu(e,t){if(bi(e))return new Map(e);if($o(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);const r=nb(e);if(t===!0||t==="class_only"&&!r){const n=Object.getOwnPropertyDescriptors(e);delete n[st];let i=Reflect.ownKeys(n);for(let a=0;a1&&Object.defineProperties(e,{set:Ui,add:Ui,clear:Ui,delete:Ui}),Object.freeze(e),t&&Object.values(e).forEach(r=>Ic(r,!0))),e}function RS(){gt(2)}var Ui={value:RS};function Lo(e){return e===null||typeof e!="object"?!0:Object.isFrozen(e)}var $S={};function Yr(e){const t=$S[e];return t||gt(0,e),t}var ri;function ab(){return ri}function LS(e,t){return{drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function Zv(e,t){t&&(Yr("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function yu(e){gu(e),e.drafts_.forEach(zS),e.drafts_=null}function gu(e){e===ri&&(ri=e.parent_)}function Jv(e){return ri=LS(ri,e)}function zS(e){const t=e[st];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function Qv(e,t){t.unfinalizedDrafts_=t.drafts_.length;const r=t.drafts_[0];return e!==void 0&&e!==r?(r[st].modified_&&(yu(t),gt(4)),Hr(e)&&(e=Na(t,e),t.parent_||Ra(t,e)),t.patches_&&Yr("Patches").generateReplacementPatches_(r[st].base_,e,t.patches_,t.inversePatches_)):e=Na(t,r,[]),yu(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==rb?e:void 0}function Na(e,t,r){if(Lo(t))return t;const n=e.immer_.shouldUseStrictIteration(),i=t[st];if(!i)return Da(t,(a,o)=>ep(e,i,t,a,o,r),n),t;if(i.scope_!==e)return t;if(!i.modified_)return Ra(e,i.base_,!0),i.base_;if(!i.finalized_){i.finalized_=!0,i.scope_.unfinalizedDrafts_--;const a=i.copy_;let o=a,l=!1;i.type_===3&&(o=new Set(a),a.clear(),l=!0),Da(o,(s,u)=>ep(e,i,a,s,u,r,l),n),Ra(e,a,!1),r&&e.patches_&&Yr("Patches").generatePatches_(i,r,e.patches_,e.inversePatches_)}return i.copy_}function ep(e,t,r,n,i,a,o){if(i==null||typeof i!="object"&&!o)return;const l=Lo(i);if(!(l&&!o)){if(hn(i)){const s=a&&t&&t.type_!==3&&!hu(t.assigned_,n)?a.concat(n):void 0,u=Na(e,i,s);if(ib(r,n,u),hn(u))e.canAutoFreeze_=!1;else return}else o&&r.add(i);if(Hr(i)&&!l){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[n]===i&&l)return;Na(e,i),(!t||!t.scope_.parent_)&&typeof n!="symbol"&&(bi(r)?r.has(n):Object.prototype.propertyIsEnumerable.call(r,n))&&Ra(e,i)}}}function Ra(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Ic(t,r)}function BS(e,t){const r=Array.isArray(e),n={type_:r?1:0,scope_:t?t.scope_:ab(),modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1};let i=n,a=Tc;r&&(i=[n],a=ni);const{revoke:o,proxy:l}=Proxy.revocable(i,a);return n.draft_=l,n.revoke_=o,l}var Tc={get(e,t){if(t===st)return e;const r=Tr(e);if(!hu(r,t))return FS(e,r,t);const n=r[t];return e.finalized_||!Hr(n)?n:n===gs(e.base_,t)?(bs(e),e.copy_[t]=xu(n,e)):n},has(e,t){return t in Tr(e)},ownKeys(e){return Reflect.ownKeys(Tr(e))},set(e,t,r){const n=ob(Tr(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){const i=gs(Tr(e),t),a=i?.[st];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if(NS(r,i)&&(r!==void 0||hu(e.base_,t)))return!0;bs(e),bu(e)}return e.copy_[t]===r&&(r!==void 0||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t])||(e.copy_[t]=r,e.assigned_[t]=!0),!0},deleteProperty(e,t){return gs(e.base_,t)!==void 0||t in e.base_?(e.assigned_[t]=!1,bs(e),bu(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){const r=Tr(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n&&{writable:!0,configurable:e.type_!==1||t!=="length",enumerable:n.enumerable,value:r[t]}},defineProperty(){gt(11)},getPrototypeOf(e){return ti(e.base_)},setPrototypeOf(){gt(12)}},ni={};Da(Tc,(e,t)=>{ni[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}});ni.deleteProperty=function(e,t){return ni.set.call(this,e,t,void 0)};ni.set=function(e,t,r){return Tc.set.call(this,e[0],t,r,e[0])};function gs(e,t){const r=e[st];return(r?Tr(r):e)[t]}function FS(e,t,r){const n=ob(t,r);return n?"value"in n?n.value:n.get?.call(e.draft_):void 0}function ob(e,t){if(!(t in e))return;let r=ti(e);for(;r;){const n=Object.getOwnPropertyDescriptor(r,t);if(n)return n;r=ti(r)}}function bu(e){e.modified_||(e.modified_=!0,e.parent_&&bu(e.parent_))}function bs(e){e.copy_||(e.copy_=mu(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var WS=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(t,r,n)=>{if(typeof t=="function"&&typeof r!="function"){const a=r;r=t;const o=this;return function(s=a,...u){return o.produce(s,c=>r.call(this,c,...u))}}typeof r!="function"&>(6),n!==void 0&&typeof n!="function"&>(7);let i;if(Hr(t)){const a=Jv(this),o=xu(t,void 0);let l=!0;try{i=r(o),l=!1}finally{l?yu(a):gu(a)}return Zv(a,n),Qv(i,a)}else if(!t||typeof t!="object"){if(i=r(t),i===void 0&&(i=t),i===rb&&(i=void 0),this.autoFreeze_&&Ic(i,!0),n){const a=[],o=[];Yr("Patches").generateReplacementPatches_(t,i,a,o),n(a,o)}return i}else gt(1,t)},this.produceWithPatches=(t,r)=>{if(typeof t=="function")return(o,...l)=>this.produceWithPatches(o,s=>t(s,...l));let n,i;return[this.produce(t,r,(o,l)=>{n=o,i=l}),n,i]},typeof e?.autoFreeze=="boolean"&&this.setAutoFreeze(e.autoFreeze),typeof e?.useStrictShallowCopy=="boolean"&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),typeof e?.useStrictIteration=="boolean"&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Hr(e)||gt(8),hn(e)&&(e=KS(e));const t=Jv(this),r=xu(e,void 0);return r[st].isManual_=!0,gu(t),r}finishDraft(e,t){const r=e&&e[st];(!r||!r.isManual_)&>(9);const{scope_:n}=r;return Zv(n,t),Qv(void 0,n)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){const i=t[r];if(i.path.length===0&&i.op==="replace"){e=i.value;break}}r>-1&&(t=t.slice(r+1));const n=Yr("Patches").applyPatches_;return hn(e)?n(e,t):this.produce(e,i=>n(i,t))}};function xu(e,t){const r=bi(e)?Yr("MapSet").proxyMap_(e,t):$o(e)?Yr("MapSet").proxySet_(e,t):BS(e,t);return(t?t.scope_:ab()).drafts_.push(r),r}function KS(e){return hn(e)||gt(10,e),lb(e)}function lb(e){if(!Hr(e)||Lo(e))return e;const t=e[st];let r,n=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,r=mu(e,t.scope_.immer_.useStrictShallowCopy_),n=t.scope_.immer_.shouldUseStrictIteration()}else r=mu(e,!0);return Da(r,(i,a)=>{ib(r,i,lb(a))},n),t&&(t.finalized_=!1),r}var qS=new WS;qS.produce;var US={settings:{layout:"horizontal",align:"center",verticalAlign:"middle",itemSorter:"value"},size:{width:0,height:0},payload:[]},sb=tt({name:"legend",initialState:US,reducers:{setLegendSize(e,t){e.size.width=t.payload.width,e.size.height=t.payload.height},setLegendSettings(e,t){e.settings.align=t.payload.align,e.settings.layout=t.payload.layout,e.settings.verticalAlign=t.payload.verticalAlign,e.settings.itemSorter=t.payload.itemSorter},addLegendPayload:{reducer(e,t){e.payload.push(t.payload)},prepare:ce()},replaceLegendPayload:{reducer(e,t){var{prev:r,next:n}=t.payload,i=xt(e).payload.indexOf(r);i>-1&&(e.payload[i]=n)},prepare:ce()},removeLegendPayload:{reducer(e,t){var r=xt(e).payload.indexOf(t.payload);r>-1&&e.payload.splice(r,1)},prepare:ce()}}}),{setLegendSize:tp,setLegendSettings:GS,addLegendPayload:ub,replaceLegendPayload:cb,removeLegendPayload:fb}=sb.actions,VS=sb.reducer,HS=["contextPayload"];function wu(){return wu=Object.assign?Object.assign.bind():function(e){for(var t=1;t{t(GS(e))},[t,e]),null}function iE(e){var t=le();return v.useEffect(()=>(t(tp(e)),()=>{t(tp({width:0,height:0}))}),[t,e]),null}function aE(e,t,r,n){return e==="vertical"&&t!=null?{height:t}:e==="horizontal"?{width:r||n}:null}var oE={align:"center",iconSize:14,inactiveColor:"#ccc",itemSorter:"value",layout:"horizontal",verticalAlign:"bottom"};function Pu(e){var t=be(e,oE),r=F1(),n=LP(),i=TS(),{width:a,height:o,wrapperStyle:l,portal:s}=t,[u,c]=pg([r]),f=kc(),d=_c();if(f==null||d==null)return null;var p=f-(i?.left||0)-(i?.right||0),h=aE(t.layout,o,a,p),y=s?l:mn(mn({position:"absolute",width:h?.width||a||"auto",height:h?.height||o||"auto"},rE(l,t,i,f,d,u)),l),m=s??n;if(m==null||r==null)return null;var g=v.createElement("div",{className:"recharts-legend-wrapper",style:y,ref:c},v.createElement(nE,{layout:t.layout,align:t.align,verticalAlign:t.verticalAlign,itemSorter:t.itemSorter}),!s&&v.createElement(iE,{width:u.width,height:u.height}),v.createElement(tE,wu({},t,h,{margin:i,chartWidth:f,chartHeight:d,contextPayload:r})));return lc.createPortal(g,m)}Pu.displayName="Legend";function Ou(){return Ou=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{separator:t=rn.separator,contentStyle:r,itemStyle:n,labelStyle:i=rn.labelStyle,payload:a,formatter:o,itemSorter:l,wrapperClassName:s,labelClassName:u,label:c,labelFormatter:f,accessibilityLayer:d=rn.accessibilityLayer}=e,p=()=>{if(a&&a.length){var x={padding:0,margin:0},O=(l?wo(a,l):a).map((S,A)=>{if(S.type==="none")return null;var _=S.formatter||o||cE,{value:M,name:I}=S,k=M,$=I;if(_){var R=_(M,I,S,A,a);if(Array.isArray(R))[k,$]=R;else if(R!=null)k=R;else return null}var W=Mn(Mn({},rn.itemStyle),{},{color:S.color||rn.itemStyle.color},n);return v.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(A),style:W},Tt($)?v.createElement("span",{className:"recharts-tooltip-item-name"},$):null,Tt($)?v.createElement("span",{className:"recharts-tooltip-item-separator"},t):null,v.createElement("span",{className:"recharts-tooltip-item-value"},k),v.createElement("span",{className:"recharts-tooltip-item-unit"},S.unit||""))});return v.createElement("ul",{className:"recharts-tooltip-item-list",style:x},O)}return null},h=Mn(Mn({},rn.contentStyle),r),y=Mn({margin:0},i),m=!de(c),g=m?c:"",w=Z("recharts-default-tooltip",s),b=Z("recharts-tooltip-label",u);m&&f&&a!==void 0&&a!==null&&(g=f(c,a));var P=d?{role:"status","aria-live":"assertive"}:{};return v.createElement("div",Ou({className:w,style:h},P),v.createElement("p",{className:b,style:y},v.isValidElement(g)?g:"".concat(g)),p())},Dn="recharts-tooltip-wrapper",dE={visibility:"hidden"};function vE(e){var{coordinate:t,translateX:r,translateY:n}=e;return Z(Dn,{["".concat(Dn,"-right")]:N(r)&&t&&N(t.x)&&r>=t.x,["".concat(Dn,"-left")]:N(r)&&t&&N(t.x)&&r=t.y,["".concat(Dn,"-top")]:N(n)&&t&&N(t.y)&&n0?i:0),f=r[n]+i;if(t[n])return o[n]?c:f;var d=s[n];if(d==null)return 0;if(o[n]){var p=c,h=d;return pm?Math.max(c,d):Math.max(f,d)}function pE(e){var{translateX:t,translateY:r,useTranslate3d:n}=e;return{transform:n?"translate3d(".concat(t,"px, ").concat(r,"px, 0)"):"translate(".concat(t,"px, ").concat(r,"px)")}}function hE(e){var{allowEscapeViewBox:t,coordinate:r,offsetTop:n,offsetLeft:i,position:a,reverseDirection:o,tooltipBox:l,useTranslate3d:s,viewBox:u}=e,c,f,d;return l.height>0&&l.width>0&&r?(f=ip({allowEscapeViewBox:t,coordinate:r,key:"x",offset:i,position:a,reverseDirection:o,tooltipDimension:l.width,viewBox:u,viewBoxDimension:u.width}),d=ip({allowEscapeViewBox:t,coordinate:r,key:"y",offset:n,position:a,reverseDirection:o,tooltipDimension:l.height,viewBox:u,viewBoxDimension:u.height}),c=pE({translateX:f,translateY:d,useTranslate3d:s})):c=dE,{cssProperties:c,cssClasses:vE({translateX:f,translateY:d,coordinate:r})}}function ap(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Gi(e){for(var t=1;t{if(t.key==="Escape"){var r,n,i,a;this.setState({dismissed:!0,dismissedAtCoordinate:{x:(r=(n=this.props.coordinate)===null||n===void 0?void 0:n.x)!==null&&r!==void 0?r:0,y:(i=(a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==null&&i!==void 0?i:0}})}})}componentDidMount(){document.addEventListener("keydown",this.handleKeyDown)}componentWillUnmount(){document.removeEventListener("keydown",this.handleKeyDown)}componentDidUpdate(){var t,r;this.state.dismissed&&(((t=this.props.coordinate)===null||t===void 0?void 0:t.x)!==this.state.dismissedAtCoordinate.x||((r=this.props.coordinate)===null||r===void 0?void 0:r.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}render(){var{active:t,allowEscapeViewBox:r,animationDuration:n,animationEasing:i,children:a,coordinate:o,hasPayload:l,isAnimationActive:s,offset:u,position:c,reverseDirection:f,useTranslate3d:d,viewBox:p,wrapperStyle:h,lastBoundingBox:y,innerRef:m,hasPortalFromProps:g}=this.props,w=typeof u=="number"?u:u.x,b=typeof u=="number"?u:u.y,{cssClasses:P,cssProperties:x}=hE({allowEscapeViewBox:r,coordinate:o,offsetLeft:w,offsetTop:b,position:c,reverseDirection:f,tooltipBox:{height:y.height,width:y.width},useTranslate3d:d,viewBox:p}),O=g?{}:Gi(Gi({transition:s&&t?"transform ".concat(n,"ms ").concat(i):void 0},x),{},{pointerEvents:"none",visibility:!this.state.dismissed&&t&&l?"visible":"hidden",position:"absolute",top:0,left:0}),S=Gi(Gi({},O),{},{visibility:!this.state.dismissed&&t&&l?"visible":"hidden"},h);return v.createElement("div",{xmlns:"http://www.w3.org/1999/xhtml",tabIndex:-1,className:P,style:S,ref:m},a)}}var db=()=>{var e;return(e=z(t=>t.rootProps.accessibilityLayer))!==null&&e!==void 0?e:!0};function Su(){return Su=Object.assign?Object.assign.bind():function(e){for(var t=1;tH(e.x)&&H(e.y),up=e=>e.base!=null&&$a(e.base)&&$a(e),Nn=e=>e.x,Rn=e=>e.y,PE=(e,t)=>{if(typeof e=="function")return e;var r="curve".concat(vi(e));if((r==="curveMonotone"||r==="curveBump")&&t){var n=sp["".concat(r).concat(t==="vertical"?"Y":"X")];if(n)return n}return sp[r]||bo},cp={connectNulls:!1,type:"linear"},OE=e=>{var{type:t=cp.type,points:r=[],baseLine:n,layout:i,connectNulls:a=cp.connectNulls}=e,o=PE(t,i),l=a?r.filter($a):r;if(Array.isArray(n)){var s,u=r.map((h,y)=>lp(lp({},h),{},{base:n[y]}));i==="vertical"?s=Li().y(Rn).x1(Nn).x0(h=>h.base.x):s=Li().x(Nn).y1(Rn).y0(h=>h.base.y);var c=s.defined(up).curve(o),f=a?u.filter(up):u;return c(f)}var d;i==="vertical"&&N(n)?d=Li().y(Rn).x1(Nn).x0(n):N(n)?d=Li().x(Nn).y1(Rn).y0(n):d=zy().x(Nn).y(Rn);var p=d.defined($a).curve(o);return p(l)},dn=e=>{var{className:t,points:r,path:n,pathRef:i}=e,a=wr();if((!r||!r.length)&&!n)return null;var o={type:e.type,points:e.points,baseLine:e.baseLine,layout:e.layout||a,connectNulls:e.connectNulls},l=r&&r.length?OE(o):n;return v.createElement("path",Su({},Ye(e),hc(e),{className:Z("recharts-curve",t),d:l===null?void 0:l,ref:i}))},AE=["x","y","top","left","width","height","className"];function Eu(){return Eu=Object.assign?Object.assign.bind():function(e){for(var t=1;t"M".concat(e,",").concat(i,"v").concat(n,"M").concat(a,",").concat(t,"h").concat(r),TE=e=>{var{x:t=0,y:r=0,top:n=0,left:i=0,width:a=0,height:o=0,className:l}=e,s=_E(e,AE),u=SE({x:t,y:r,top:n,left:i,width:a,height:o},s);return!N(t)||!N(r)||!N(a)||!N(o)||!N(n)||!N(i)?null:v.createElement("path",Eu({},Ge(u),{className:Z("recharts-cross",l),d:IE(t,r,a,o,n,i)}))};function ME(e,t,r,n){var i=n/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-i:r.left+.5,y:e==="horizontal"?r.top+.5:t.y-i,width:e==="horizontal"?n:r.width-1,height:e==="horizontal"?r.height-1:n}}function dp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function vp(e){for(var t=1;te.replace(/([A-Z])/g,t=>"-".concat(t.toLowerCase())),vb=(e,t,r)=>e.map(n=>"".concat($E(n)," ").concat(t,"ms ").concat(r)).join(","),LE=(e,t)=>[Object.keys(e),Object.keys(t)].reduce((r,n)=>r.filter(i=>n.includes(i))),ii=(e,t)=>Object.keys(t).reduce((r,n)=>vp(vp({},r),{},{[n]:e(n,t[n])}),{});function pp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function ke(e){for(var t=1;te+(t-e)*r,ju=e=>{var{from:t,to:r}=e;return t!==r},pb=(e,t,r)=>{var n=ii((i,a)=>{if(ju(a)){var[o,l]=e(a.from,a.to,a.velocity);return ke(ke({},a),{},{from:o,velocity:l})}return a},t);return r<1?ii((i,a)=>ju(a)&&n[i]!=null?ke(ke({},a),{},{velocity:La(a.velocity,n[i].velocity,r),from:La(a.from,n[i].from,r)}):a,t):pb(e,n,r-1)};function WE(e,t,r,n,i,a){var o,l=n.reduce((d,p)=>ke(ke({},d),{},{[p]:{from:e[p],velocity:0,to:t[p]}}),{}),s=()=>ii((d,p)=>p.from,l),u=()=>!Object.values(l).filter(ju).length,c=null,f=d=>{o||(o=d);var p=d-o,h=p/r.dt;l=pb(r,l,h),i(ke(ke(ke({},e),t),s())),o=d,u()||(c=a.setTimeout(f))};return()=>(c=a.setTimeout(f),()=>{var d;(d=c)===null||d===void 0||d()})}function KE(e,t,r,n,i,a,o){var l=null,s=i.reduce((f,d)=>{var p=e[d],h=t[d];return p==null||h==null?f:ke(ke({},f),{},{[d]:[p,h]})},{}),u,c=f=>{u||(u=f);var d=(f-u)/n,p=ii((y,m)=>La(...m,r(d)),s);if(a(ke(ke(ke({},e),t),p)),d<1)l=o.setTimeout(c);else{var h=ii((y,m)=>La(...m,r(1)),s);a(ke(ke(ke({},e),t),h))}};return()=>(l=o.setTimeout(c),()=>{var f;(f=l)===null||f===void 0||f()})}const qE=(e,t,r,n,i,a)=>{var o=LE(e,t);return r==null?()=>(i(ke(ke({},e),t)),()=>{}):r.isStepper===!0?WE(e,t,r,o,i,a):KE(e,t,r,n,o,i,a)};var za=1e-4,hb=(e,t)=>[0,3*e,3*t-6*e,3*e-3*t+1],mb=(e,t)=>e.map((r,n)=>r*t**n).reduce((r,n)=>r+n),hp=(e,t)=>r=>{var n=hb(e,t);return mb(n,r)},UE=(e,t)=>r=>{var n=hb(e,t),i=[...n.map((a,o)=>a*o).slice(1),0];return mb(i,r)},GE=e=>{var t,r=e.split("(");if(r.length!==2||r[0]!=="cubic-bezier")return null;var n=(t=r[1])===null||t===void 0||(t=t.split(")")[0])===null||t===void 0?void 0:t.split(",");if(n==null||n.length!==4)return null;var i=n.map(a=>parseFloat(a));return[i[0],i[1],i[2],i[3]]},VE=function(){for(var t=arguments.length,r=new Array(t),n=0;n{var i=hp(e,r),a=hp(t,n),o=UE(e,r),l=u=>u>1?1:u<0?0:u,s=u=>{for(var c=u>1?1:u,f=c,d=0;d<8;++d){var p=i(f)-c,h=o(f);if(Math.abs(p-c)0&&arguments[0]!==void 0?arguments[0]:{},{stiff:r=100,damping:n=8,dt:i=17}=t,a=(o,l,s)=>{var u=-(o-l)*r,c=s*n,f=s+(u-c)*i/1e3,d=s*i/1e3+o;return Math.abs(d-l){if(typeof e=="string")switch(e){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return mp(e);case"spring":return YE();default:if(e.split("(")[0]==="cubic-bezier")return mp(e)}return typeof e=="function"?e:null};function ZE(e){var t,r=()=>null,n=!1,i=null,a=o=>{if(!n){if(Array.isArray(o)){if(!o.length)return;var l=o,[s,...u]=l;if(typeof s=="number"){i=e.setTimeout(a.bind(null,u),s);return}a(s),i=e.setTimeout(a.bind(null,u));return}typeof o=="string"&&(t=o,r(t)),typeof o=="object"&&(t=o,r(t)),typeof o=="function"&&o()}};return{stop:()=>{n=!0},start:o=>{n=!1,i&&(i(),i=null),a(o)},subscribe:o=>(r=o,()=>{r=()=>null}),getTimeoutController:()=>e}}class JE{setTimeout(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=performance.now(),i=null,a=o=>{o-n>=r?t(o):typeof requestAnimationFrame=="function"&&(i=requestAnimationFrame(a))};return i=requestAnimationFrame(a),()=>{i!=null&&cancelAnimationFrame(i)}}}function QE(){return ZE(new JE)}var ej=v.createContext(QE);function tj(e,t){var r=v.useContext(ej);return v.useMemo(()=>t??r(e),[e,t,r])}var rj=()=>!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout),xi={isSsr:rj()},nj={begin:0,duration:1e3,easing:"ease",isActive:!0,canBegin:!0,onAnimationEnd:()=>{},onAnimationStart:()=>{}},yp={t:0},xs={t:1};function xn(e){var t=be(e,nj),{isActive:r,canBegin:n,duration:i,easing:a,begin:o,onAnimationEnd:l,onAnimationStart:s,children:u}=t,c=r==="auto"?!xi.isSsr:r,f=tj(t.animationId,t.animationManager),[d,p]=v.useState(c?yp:xs),h=v.useRef(null);return v.useEffect(()=>{c||p(xs)},[c]),v.useEffect(()=>{if(!c||!n)return br;var y=qE(yp,xs,XE(a),i,p,f.getTimeoutController()),m=()=>{h.current=y()};return f.start([s,o,m,i,l]),()=>{f.stop(),h.current&&h.current(),l()}},[c,n,i,a,o,s,l,f]),u(d.t)}function wn(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"animation-",r=v.useRef(Zn(t)),n=v.useRef(e);return n.current!==e&&(r.current=Zn(t),n.current=e),r.current}var ij=["radius"],aj=["radius"],gp,bp,xp,wp,Pp,Op,Ap,Sp,Ep,jp;function kp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function _p(e){for(var t=1;t{var a=dr(r),o=dr(n),l=Math.min(Math.abs(a)/2,Math.abs(o)/2),s=o>=0?1:-1,u=a>=0?1:-1,c=o>=0&&a>=0||o<0&&a<0?1:0,f;if(l>0&&Array.isArray(i)){for(var d=[0,0,0,0],p=0,h=4;pl?l:m}f=me(gp||(gp=St(["M",",",""])),e,t+s*d[0]),d[0]>0&&(f+=me(bp||(bp=St(["A ",",",",0,0,",",",",",""])),d[0],d[0],c,e+u*d[0],t)),f+=me(xp||(xp=St(["L ",",",""])),e+r-u*d[1],t),d[1]>0&&(f+=me(wp||(wp=St(["A ",",",",0,0,",`, + `,",",""])),d[1],d[1],c,e+r,t+s*d[1])),f+=me(Pp||(Pp=St(["L ",",",""])),e+r,t+n-s*d[2]),d[2]>0&&(f+=me(Op||(Op=St(["A ",",",",0,0,",`, + `,",",""])),d[2],d[2],c,e+r-u*d[2],t+n)),f+=me(Ap||(Ap=St(["L ",",",""])),e+u*d[3],t+n),d[3]>0&&(f+=me(Sp||(Sp=St(["A ",",",",0,0,",`, + `,",",""])),d[3],d[3],c,e,t+n-s*d[3])),f+="Z"}else if(l>0&&i===+i&&i>0){var g=Math.min(l,i);f=me(Ep||(Ep=St(["M ",",",` + A `,",",",0,0,",",",",",` + L `,",",` + A `,",",",0,0,",",",",",` + L `,",",` + A `,",",",0,0,",",",",",` + L `,",",` + A `,",",",0,0,",",",","," Z"])),e,t+s*g,g,g,c,e+u*g,t,e+r-u*g,t,g,g,c,e+r,t+s*g,e+r,t+n-s*g,g,g,c,e+r-u*g,t+n,e+u*g,t+n,g,g,c,e,t+n-s*g)}else f=me(jp||(jp=St(["M ",","," h "," v "," h "," Z"])),e,t,r,n,-r);return f},Tp={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},yb=e=>{var t=be(e,Tp),r=v.useRef(null),[n,i]=v.useState(-1);v.useEffect(()=>{if(r.current&&r.current.getTotalLength)try{var q=r.current.getTotalLength();q&&i(q)}catch{}},[]);var{x:a,y:o,width:l,height:s,radius:u,className:c}=t,{animationEasing:f,animationDuration:d,animationBegin:p,isAnimationActive:h,isUpdateAnimationActive:y}=t,m=v.useRef(l),g=v.useRef(s),w=v.useRef(a),b=v.useRef(o),P=v.useMemo(()=>({x:a,y:o,width:l,height:s,radius:u}),[a,o,l,s,u]),x=wn(P,"rectangle-");if(a!==+a||o!==+o||l!==+l||s!==+s||l===0||s===0)return null;var O=Z("recharts-rectangle",c);if(!y){var S=Ge(t),{radius:A}=S,_=Cp(S,ij);return v.createElement("path",Ba({},_,{x:dr(a),y:dr(o),width:dr(l),height:dr(s),radius:typeof u=="number"?u:void 0,className:O,d:Ip(a,o,l,s,u)}))}var M=m.current,I=g.current,k=w.current,$=b.current,R="0px ".concat(n===-1?1:n,"px"),W="".concat(n,"px 0px"),K=vb(["strokeDasharray"],d,typeof f=="string"?f:Tp.animationEasing);return v.createElement(xn,{animationId:x,key:x,canBegin:n>0,duration:d,easing:f,isActive:y,begin:p},q=>{var Y=re(M,l,q),U=re(I,s,q),D=re(k,a,q),ue=re($,o,q);r.current&&(m.current=Y,g.current=U,w.current=D,b.current=ue);var we;h?q>0?we={transition:K,strokeDasharray:W}:we={strokeDasharray:R}:we={strokeDasharray:W};var Je=Ge(t),{radius:Te}=Je,ve=Cp(Je,aj);return v.createElement("path",Ba({},ve,{radius:typeof u=="number"?u:void 0,className:O,d:Ip(D,ue,Y,U,u),ref:r,style:_p(_p({},we),t.style)}))})};function Mp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Dp(e){for(var t=1;te*180/Math.PI,Ae=(e,t,r,n)=>({x:e+Math.cos(-Fa*n)*r,y:t+Math.sin(-Fa*n)*r}),gb=function(t,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{top:0,right:0,bottom:0,left:0};return Math.min(Math.abs(t-(n.left||0)-(n.right||0)),Math.abs(r-(n.top||0)-(n.bottom||0)))/2},pj=(e,t)=>{var{x:r,y:n}=e,{x:i,y:a}=t;return Math.sqrt((r-i)**2+(n-a)**2)},hj=(e,t)=>{var{x:r,y:n}=e,{cx:i,cy:a}=t,o=pj({x:r,y:n},{x:i,y:a});if(o<=0)return{radius:o,angle:0};var l=(r-i)/o,s=Math.acos(l);return n>a&&(s=2*Math.PI-s),{radius:o,angle:vj(s),angleInRadian:s}},mj=e=>{var{startAngle:t,endAngle:r}=e,n=Math.floor(t/360),i=Math.floor(r/360),a=Math.min(n,i);return{startAngle:t-a*360,endAngle:r-a*360}},yj=(e,t)=>{var{startAngle:r,endAngle:n}=t,i=Math.floor(r/360),a=Math.floor(n/360),o=Math.min(i,a);return e+o*360},gj=(e,t)=>{var{chartX:r,chartY:n}=e,{radius:i,angle:a}=hj({x:r,y:n},t),{innerRadius:o,outerRadius:l}=t;if(il||i===0)return null;var{startAngle:s,endAngle:u}=mj(t),c=a,f;if(s<=u){for(;c>u;)c-=360;for(;c=s&&c<=u}else{for(;c>s;)c-=360;for(;c=u&&c<=s}return f?Dp(Dp({},t),{},{radius:i,angle:yj(c,t)}):null};function bb(e){var{cx:t,cy:r,radius:n,startAngle:i,endAngle:a}=e,o=Ae(t,r,n,i),l=Ae(t,r,n,a);return{points:[o,l],cx:t,cy:r,radius:n,startAngle:i,endAngle:a}}var Np,Rp,$p,Lp,zp,Bp,Fp;function ku(){return ku=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var r=$e(t-e),n=Math.min(Math.abs(t-e),359.999);return r*n},Vi=e=>{var{cx:t,cy:r,radius:n,angle:i,sign:a,isExternal:o,cornerRadius:l,cornerIsExternal:s}=e,u=l*(o?1:-1)+n,c=Math.asin(l/u)/Fa,f=s?i:i+a*c,d=Ae(t,r,u,f),p=Ae(t,r,n,f),h=s?i-a*c:i,y=Ae(t,r,u*Math.cos(c*Fa),h);return{center:d,circleTangency:p,lineTangency:y,theta:c}},xb=e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:i,startAngle:a,endAngle:o}=e,l=bj(a,o),s=a+l,u=Ae(t,r,i,a),c=Ae(t,r,i,s),f=me(Np||(Np=Nr(["M ",",",` + A `,",",`,0, + `,",",`, + `,",",` + `])),u.x,u.y,i,i,+(Math.abs(l)>180),+(a>s),c.x,c.y);if(n>0){var d=Ae(t,r,n,a),p=Ae(t,r,n,s);f+=me(Rp||(Rp=Nr(["L ",",",` + A `,",",`,0, + `,",",`, + `,","," Z"])),p.x,p.y,n,n,+(Math.abs(l)>180),+(a<=s),d.x,d.y)}else f+=me($p||($p=Nr(["L ",","," Z"])),t,r);return f},xj=e=>{var{cx:t,cy:r,innerRadius:n,outerRadius:i,cornerRadius:a,forceCornerRadius:o,cornerIsExternal:l,startAngle:s,endAngle:u}=e,c=$e(u-s),{circleTangency:f,lineTangency:d,theta:p}=Vi({cx:t,cy:r,radius:i,angle:s,sign:c,cornerRadius:a,cornerIsExternal:l}),{circleTangency:h,lineTangency:y,theta:m}=Vi({cx:t,cy:r,radius:i,angle:u,sign:-c,cornerRadius:a,cornerIsExternal:l}),g=l?Math.abs(s-u):Math.abs(s-u)-p-m;if(g<0)return o?me(Lp||(Lp=Nr(["M ",",",` + a`,",",",0,0,1,",`,0 + a`,",",",0,0,1,",`,0 + `])),d.x,d.y,a,a,a*2,a,a,-a*2):xb({cx:t,cy:r,innerRadius:n,outerRadius:i,startAngle:s,endAngle:u});var w=me(zp||(zp=Nr(["M ",",",` + A`,",",",0,0,",",",",",` + A`,",",",0,",",",",",",",` + A`,",",",0,0,",",",",",` + `])),d.x,d.y,a,a,+(c<0),f.x,f.y,i,i,+(g>180),+(c<0),h.x,h.y,a,a,+(c<0),y.x,y.y);if(n>0){var{circleTangency:b,lineTangency:P,theta:x}=Vi({cx:t,cy:r,radius:n,angle:s,sign:c,isExternal:!0,cornerRadius:a,cornerIsExternal:l}),{circleTangency:O,lineTangency:S,theta:A}=Vi({cx:t,cy:r,radius:n,angle:u,sign:-c,isExternal:!0,cornerRadius:a,cornerIsExternal:l}),_=l?Math.abs(s-u):Math.abs(s-u)-x-A;if(_<0&&a===0)return"".concat(w,"L").concat(t,",").concat(r,"Z");w+=me(Bp||(Bp=Nr(["L",",",` + A`,",",",0,0,",",",",",` + A`,",",",0,",",",",",",",` + A`,",",",0,0,",",",",","Z"])),S.x,S.y,a,a,+(c<0),O.x,O.y,n,n,+(_>180),+(c>0),b.x,b.y,a,a,+(c<0),P.x,P.y)}else w+=me(Fp||(Fp=Nr(["L",",","Z"])),t,r);return w},wj={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},wb=e=>{var t=be(e,wj),{cx:r,cy:n,innerRadius:i,outerRadius:a,cornerRadius:o,forceCornerRadius:l,cornerIsExternal:s,startAngle:u,endAngle:c,className:f}=t;if(a0&&Math.abs(u-c)<360?y=xj({cx:r,cy:n,innerRadius:i,outerRadius:a,cornerRadius:Math.min(h,p/2),forceCornerRadius:l,cornerIsExternal:s,startAngle:u,endAngle:c}):y=xb({cx:r,cy:n,innerRadius:i,outerRadius:a,startAngle:u,endAngle:c}),v.createElement("path",ku({},Ge(t),{className:d,d:y}))};function Pj(e,t,r){if(e==="horizontal")return[{x:t.x,y:r.top},{x:t.x,y:r.top+r.height}];if(e==="vertical")return[{x:r.left,y:t.y},{x:r.left+r.width,y:t.y}];if(eg(t)){if(e==="centric"){var{cx:n,cy:i,innerRadius:a,outerRadius:o,angle:l}=t,s=Ae(n,i,a,l),u=Ae(n,i,o,l);return[{x:s.x,y:s.y},{x:u.x,y:u.y}]}return bb(t)}}var ws={},Ps={},Os={},Wp;function Oj(){return Wp||(Wp=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=fg();function r(n){return t.isSymbol(n)?NaN:Number(n)}e.toNumber=r})(Os)),Os}var Kp;function Aj(){return Kp||(Kp=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=Oj();function r(n){return n?(n=t.toNumber(n),n===1/0||n===-1/0?(n<0?-1:1)*Number.MAX_VALUE:n===n?n:0):n===0?n:0}e.toFinite=r})(Ps)),Ps}var qp;function Sj(){return qp||(qp=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=dg(),r=Aj();function n(i,a,o){o&&typeof o!="number"&&t.isIterateeCall(i,a,o)&&(a=o=void 0),i=r.toFinite(i),a===void 0?(a=i,i=0):a=r.toFinite(a),o=o===void 0?it?1:e>=t?0:NaN}function kj(e,t){return e==null||t==null?NaN:te?1:t>=e?0:NaN}function Mc(e){let t,r,n;e.length!==2?(t=vr,r=(l,s)=>vr(e(l),s),n=(l,s)=>e(l)-s):(t=e===vr||e===kj?e:_j,r=e,n=e);function i(l,s,u=0,c=l.length){if(u>>1;r(l[f],s)<0?u=f+1:c=f}while(u>>1;r(l[f],s)<=0?u=f+1:c=f}while(uu&&n(l[f-1],s)>-n(l[f],s)?f-1:f}return{left:i,center:o,right:a}}function _j(){return 0}function Ob(e){return e===null?NaN:+e}function*Cj(e,t){for(let r of e)r!=null&&(r=+r)>=r&&(yield r)}const Ij=Mc(vr),wi=Ij.right;Mc(Ob).center;class Gp extends Map{constructor(t,r=Dj){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:r}}),t!=null)for(const[n,i]of t)this.set(n,i)}get(t){return super.get(Vp(this,t))}has(t){return super.has(Vp(this,t))}set(t,r){return super.set(Tj(this,t),r)}delete(t){return super.delete(Mj(this,t))}}function Vp({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):r}function Tj({_intern:e,_key:t},r){const n=t(r);return e.has(n)?e.get(n):(e.set(n,r),r)}function Mj({_intern:e,_key:t},r){const n=t(r);return e.has(n)&&(r=e.get(n),e.delete(n)),r}function Dj(e){return e!==null&&typeof e=="object"?e.valueOf():e}function Nj(e=vr){if(e===vr)return Ab;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,r)=>{const n=e(t,r);return n||n===0?n:(e(r,r)===0)-(e(t,t)===0)}}function Ab(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(et?1:0)}const Rj=Math.sqrt(50),$j=Math.sqrt(10),Lj=Math.sqrt(2);function Wa(e,t,r){const n=(t-e)/Math.max(0,r),i=Math.floor(Math.log10(n)),a=n/Math.pow(10,i),o=a>=Rj?10:a>=$j?5:a>=Lj?2:1;let l,s,u;return i<0?(u=Math.pow(10,-i)/o,l=Math.round(e*u),s=Math.round(t*u),l/ut&&--s,u=-u):(u=Math.pow(10,i)*o,l=Math.round(e/u),s=Math.round(t/u),l*ut&&--s),s0))return[];if(e===t)return[e];const n=t=i))return[];const l=a-i+1,s=new Array(l);if(n)if(o<0)for(let u=0;u=n)&&(r=n);return r}function Yp(e,t){let r;for(const n of e)n!=null&&(r>n||r===void 0&&n>=n)&&(r=n);return r}function Sb(e,t,r=0,n=1/0,i){if(t=Math.floor(t),r=Math.floor(Math.max(0,r)),n=Math.floor(Math.min(e.length-1,n)),!(r<=t&&t<=n))return e;for(i=i===void 0?Ab:Nj(i);n>r;){if(n-r>600){const s=n-r+1,u=t-r+1,c=Math.log(s),f=.5*Math.exp(2*c/3),d=.5*Math.sqrt(c*f*(s-f)/s)*(u-s/2<0?-1:1),p=Math.max(r,Math.floor(t-u*f/s+d)),h=Math.min(n,Math.floor(t+(s-u)*f/s+d));Sb(e,t,p,h,i)}const a=e[t];let o=r,l=n;for($n(e,r,t),i(e[n],a)>0&&$n(e,r,n);o0;)--l}i(e[r],a)===0?$n(e,r,l):(++l,$n(e,l,n)),l<=t&&(r=l+1),t<=l&&(n=l-1)}return e}function $n(e,t,r){const n=e[t];e[t]=e[r],e[r]=n}function zj(e,t,r){if(e=Float64Array.from(Cj(e)),!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return Yp(e);if(t>=1)return Hp(e);var n,i=(n-1)*t,a=Math.floor(i),o=Hp(Sb(e,a).subarray(0,a+1)),l=Yp(e.subarray(a+1));return o+(l-o)*(i-a)}}function Bj(e,t,r=Ob){if(!(!(n=e.length)||isNaN(t=+t))){if(t<=0||n<2)return+r(e[0],0,e);if(t>=1)return+r(e[n-1],n-1,e);var n,i=(n-1)*t,a=Math.floor(i),o=+r(e[a],a,e),l=+r(e[a+1],a+1,e);return o+(l-o)*(i-a)}}function Fj(e,t,r){e=+e,t=+t,r=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+r;for(var n=-1,i=Math.max(0,Math.ceil((t-e)/r))|0,a=new Array(i);++n>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?Hi(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?Hi(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=qj.exec(e))?new et(t[1],t[2],t[3],1):(t=Uj.exec(e))?new et(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Gj.exec(e))?Hi(t[1],t[2],t[3],t[4]):(t=Vj.exec(e))?Hi(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Hj.exec(e))?rh(t[1],t[2]/100,t[3]/100,1):(t=Yj.exec(e))?rh(t[1],t[2]/100,t[3]/100,t[4]):Xp.hasOwnProperty(e)?Qp(Xp[e]):e==="transparent"?new et(NaN,NaN,NaN,0):null}function Qp(e){return new et(e>>16&255,e>>8&255,e&255,1)}function Hi(e,t,r,n){return n<=0&&(e=t=r=NaN),new et(e,t,r,n)}function Jj(e){return e instanceof Pi||(e=li(e)),e?(e=e.rgb(),new et(e.r,e.g,e.b,e.opacity)):new et}function Mu(e,t,r,n){return arguments.length===1?Jj(e):new et(e,t,r,n??1)}function et(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}Rc(et,Mu,jb(Pi,{brighter(e){return e=e==null?Ka:Math.pow(Ka,e),new et(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ai:Math.pow(ai,e),new et(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new et(Br(this.r),Br(this.g),Br(this.b),qa(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:eh,formatHex:eh,formatHex8:Qj,formatRgb:th,toString:th}));function eh(){return`#${Rr(this.r)}${Rr(this.g)}${Rr(this.b)}`}function Qj(){return`#${Rr(this.r)}${Rr(this.g)}${Rr(this.b)}${Rr((isNaN(this.opacity)?1:this.opacity)*255)}`}function th(){const e=qa(this.opacity);return`${e===1?"rgb(":"rgba("}${Br(this.r)}, ${Br(this.g)}, ${Br(this.b)}${e===1?")":`, ${e})`}`}function qa(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Br(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Rr(e){return e=Br(e),(e<16?"0":"")+e.toString(16)}function rh(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new bt(e,t,r,n)}function kb(e){if(e instanceof bt)return new bt(e.h,e.s,e.l,e.opacity);if(e instanceof Pi||(e=li(e)),!e)return new bt;if(e instanceof bt)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,l=a-i,s=(a+i)/2;return l?(t===a?o=(r-n)/l+(r0&&s<1?0:o,new bt(o,l,s,e.opacity)}function ek(e,t,r,n){return arguments.length===1?kb(e):new bt(e,t,r,n??1)}function bt(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}Rc(bt,ek,jb(Pi,{brighter(e){return e=e==null?Ka:Math.pow(Ka,e),new bt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ai:Math.pow(ai,e),new bt(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,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new et(Ss(e>=240?e-240:e+120,i,n),Ss(e,i,n),Ss(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new bt(nh(this.h),Yi(this.s),Yi(this.l),qa(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=qa(this.opacity);return`${e===1?"hsl(":"hsla("}${nh(this.h)}, ${Yi(this.s)*100}%, ${Yi(this.l)*100}%${e===1?")":`, ${e})`}`}}));function nh(e){return e=(e||0)%360,e<0?e+360:e}function Yi(e){return Math.max(0,Math.min(1,e||0))}function Ss(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}const $c=e=>()=>e;function tk(e,t){return function(r){return e+r*t}}function rk(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function nk(e){return(e=+e)==1?_b:function(t,r){return r-t?rk(t,r,e):$c(isNaN(t)?r:t)}}function _b(e,t){var r=t-e;return r?tk(e,r):$c(isNaN(e)?t:e)}const ih=(function e(t){var r=nk(t);function n(i,a){var o=r((i=Mu(i)).r,(a=Mu(a)).r),l=r(i.g,a.g),s=r(i.b,a.b),u=_b(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=l(c),i.b=s(c),i.opacity=u(c),i+""}}return n.gamma=e,n})(1);function ik(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;ir&&(a=t.slice(r,a),l[o]?l[o]+=a:l[++o]=a),(n=n[0])===(i=i[0])?l[o]?l[o]+=i:l[++o]=i:(l[++o]=null,s.push({i:o,x:Ua(n,i)})),r=Es.lastIndex;return rt&&(r=e,e=t,t=r),function(n){return Math.max(e,Math.min(t,n))}}function hk(e,t,r){var n=e[0],i=e[1],a=t[0],o=t[1];return i2?mk:hk,s=u=null,f}function f(d){return d==null||isNaN(d=+d)?a:(s||(s=l(e.map(n),t,r)))(n(o(d)))}return f.invert=function(d){return o(i((u||(u=l(t,e.map(n),Ua)))(d)))},f.domain=function(d){return arguments.length?(e=Array.from(d,Ga),c()):e.slice()},f.range=function(d){return arguments.length?(t=Array.from(d),c()):t.slice()},f.rangeRound=function(d){return t=Array.from(d),r=Lc,c()},f.clamp=function(d){return arguments.length?(o=d?!0:He,c()):o!==He},f.interpolate=function(d){return arguments.length?(r=d,c()):r},f.unknown=function(d){return arguments.length?(a=d,f):a},function(d,p){return n=d,i=p,c()}}function zc(){return zo()(He,He)}function yk(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function Va(e,t){if(!isFinite(e)||e===0)return null;var r=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),n=e.slice(0,r);return[n.length>1?n[0]+n.slice(2):n,+e.slice(r+1)]}function yn(e){return e=Va(Math.abs(e)),e?e[1]:NaN}function gk(e,t){return function(r,n){for(var i=r.length,a=[],o=0,l=e[0],s=0;i>0&&l>0&&(s+l+1>n&&(l=Math.max(1,n-s)),a.push(r.substring(i-=l,i+l)),!((s+=l+1)>n));)l=e[o=(o+1)%e.length];return a.reverse().join(t)}}function bk(e){return function(t){return t.replace(/[0-9]/g,function(r){return e[+r]})}}var xk=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function si(e){if(!(t=xk.exec(e)))throw new Error("invalid format: "+e);var t;return new Bc({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]})}si.prototype=Bc.prototype;function Bc(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+""}Bc.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 wk(e){e:for(var t=e.length,r=1,n=-1,i;r0&&(n=0);break}return n>0?e.slice(0,n)+e.slice(i+1):e}var Ha;function Pk(e,t){var r=Va(e,t);if(!r)return Ha=void 0,e.toPrecision(t);var n=r[0],i=r[1],a=i-(Ha=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=n.length;return a===o?n:a>o?n+new Array(a-o+1).join("0"):a>0?n.slice(0,a)+"."+n.slice(a):"0."+new Array(1-a).join("0")+Va(e,Math.max(0,t+a-1))[0]}function oh(e,t){var r=Va(e,t);if(!r)return e+"";var n=r[0],i=r[1];return i<0?"0."+new Array(-i).join("0")+n:n.length>i+1?n.slice(0,i+1)+"."+n.slice(i+1):n+new Array(i-n.length+2).join("0")}const lh={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:yk,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)=>oh(e*100,t),r:oh,s:Pk,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function sh(e){return e}var uh=Array.prototype.map,ch=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Ok(e){var t=e.grouping===void 0||e.thousands===void 0?sh:gk(uh.call(e.grouping,Number),e.thousands+""),r=e.currency===void 0?"":e.currency[0]+"",n=e.currency===void 0?"":e.currency[1]+"",i=e.decimal===void 0?".":e.decimal+"",a=e.numerals===void 0?sh:bk(uh.call(e.numerals,String)),o=e.percent===void 0?"%":e.percent+"",l=e.minus===void 0?"−":e.minus+"",s=e.nan===void 0?"NaN":e.nan+"";function u(f,d){f=si(f);var p=f.fill,h=f.align,y=f.sign,m=f.symbol,g=f.zero,w=f.width,b=f.comma,P=f.precision,x=f.trim,O=f.type;O==="n"?(b=!0,O="g"):lh[O]||(P===void 0&&(P=12),x=!0,O="g"),(g||p==="0"&&h==="=")&&(g=!0,p="0",h="=");var S=(d&&d.prefix!==void 0?d.prefix:"")+(m==="$"?r:m==="#"&&/[boxX]/.test(O)?"0"+O.toLowerCase():""),A=(m==="$"?n:/[%p]/.test(O)?o:"")+(d&&d.suffix!==void 0?d.suffix:""),_=lh[O],M=/[defgprs%]/.test(O);P=P===void 0?6:/[gprs]/.test(O)?Math.max(1,Math.min(21,P)):Math.max(0,Math.min(20,P));function I(k){var $=S,R=A,W,K,q;if(O==="c")R=_(k)+R,k="";else{k=+k;var Y=k<0||1/k<0;if(k=isNaN(k)?s:_(Math.abs(k),P),x&&(k=wk(k)),Y&&+k==0&&y!=="+"&&(Y=!1),$=(Y?y==="("?y:l:y==="-"||y==="("?"":y)+$,R=(O==="s"&&!isNaN(k)&&Ha!==void 0?ch[8+Ha/3]:"")+R+(Y&&y==="("?")":""),M){for(W=-1,K=k.length;++Wq||q>57){R=(q===46?i+k.slice(W+1):k.slice(W))+R,k=k.slice(0,W);break}}}b&&!g&&(k=t(k,1/0));var U=$.length+k.length+R.length,D=U>1)+$+k+R+D.slice(U);break;default:k=D+$+k+R;break}return a(k)}return I.toString=function(){return f+""},I}function c(f,d){var p=Math.max(-8,Math.min(8,Math.floor(yn(d)/3)))*3,h=Math.pow(10,-p),y=u((f=si(f),f.type="f",f),{suffix:ch[8+p/3]});return function(m){return y(h*m)}}return{format:u,formatPrefix:c}}var Xi,Fc,Cb;Ak({thousands:",",grouping:[3],currency:["$",""]});function Ak(e){return Xi=Ok(e),Fc=Xi.format,Cb=Xi.formatPrefix,Xi}function Sk(e){return Math.max(0,-yn(Math.abs(e)))}function Ek(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(yn(t)/3)))*3-yn(Math.abs(e)))}function jk(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,yn(t)-yn(e))+1}function Ib(e,t,r,n){var i=Iu(e,t,r),a;switch(n=si(n??",f"),n.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return n.precision==null&&!isNaN(a=Ek(i,o))&&(n.precision=a),Cb(n,o)}case"":case"e":case"g":case"p":case"r":{n.precision==null&&!isNaN(a=jk(i,Math.max(Math.abs(e),Math.abs(t))))&&(n.precision=a-(n.type==="e"));break}case"f":case"%":{n.precision==null&&!isNaN(a=Sk(i))&&(n.precision=a-(n.type==="%")*2);break}}return Fc(n)}function Pr(e){var t=e.domain;return e.ticks=function(r){var n=t();return _u(n[0],n[n.length-1],r??10)},e.tickFormat=function(r,n){var i=t();return Ib(i[0],i[i.length-1],r??10,n)},e.nice=function(r){r==null&&(r=10);var n=t(),i=0,a=n.length-1,o=n[i],l=n[a],s,u,c=10;for(l0;){if(u=Cu(o,l,r),u===s)return n[i]=o,n[a]=l,t(n);if(u>0)o=Math.floor(o/u)*u,l=Math.ceil(l/u)*u;else if(u<0)o=Math.ceil(o*u)/u,l=Math.floor(l*u)/u;else break;s=u}return e},e}function Tb(){var e=zc();return e.copy=function(){return Oi(e,Tb())},mt.apply(e,arguments),Pr(e)}function Mb(e){var t;function r(n){return n==null||isNaN(n=+n)?t:n}return r.invert=r,r.domain=r.range=function(n){return arguments.length?(e=Array.from(n,Ga),r):e.slice()},r.unknown=function(n){return arguments.length?(t=n,r):t},r.copy=function(){return Mb(e).unknown(t)},e=arguments.length?Array.from(e,Ga):[0,1],Pr(r)}function Db(e,t){e=e.slice();var r=0,n=e.length-1,i=e[r],a=e[n],o;return aMath.pow(e,t)}function Tk(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 vh(e){return(t,r)=>-e(-t,r)}function Wc(e){const t=e(fh,dh),r=t.domain;let n=10,i,a;function o(){return i=Tk(n),a=Ik(n),r()[0]<0?(i=vh(i),a=vh(a),e(kk,_k)):e(fh,dh),t}return t.base=function(l){return arguments.length?(n=+l,o()):n},t.domain=function(l){return arguments.length?(r(l),o()):r()},t.ticks=l=>{const s=r();let u=s[0],c=s[s.length-1];const f=c0){for(;d<=p;++d)for(h=1;hc)break;g.push(y)}}else for(;d<=p;++d)for(h=n-1;h>=1;--h)if(y=d>0?h/a(-d):h*a(d),!(yc)break;g.push(y)}g.length*2{if(l==null&&(l=10),s==null&&(s=n===10?"s":","),typeof s!="function"&&(!(n%1)&&(s=si(s)).precision==null&&(s.trim=!0),s=Fc(s)),l===1/0)return s;const u=Math.max(1,n*l/t.ticks().length);return c=>{let f=c/a(Math.round(i(c)));return f*nr(Db(r(),{floor:l=>a(Math.floor(i(l))),ceil:l=>a(Math.ceil(i(l)))})),t}function Nb(){const e=Wc(zo()).domain([1,10]);return e.copy=()=>Oi(e,Nb()).base(e.base()),mt.apply(e,arguments),e}function ph(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function hh(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Kc(e){var t=1,r=e(ph(t),hh(t));return r.constant=function(n){return arguments.length?e(ph(t=+n),hh(t)):t},Pr(r)}function Rb(){var e=Kc(zo());return e.copy=function(){return Oi(e,Rb()).constant(e.constant())},mt.apply(e,arguments)}function mh(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function Mk(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function Dk(e){return e<0?-e*e:e*e}function qc(e){var t=e(He,He),r=1;function n(){return r===1?e(He,He):r===.5?e(Mk,Dk):e(mh(r),mh(1/r))}return t.exponent=function(i){return arguments.length?(r=+i,n()):r},Pr(t)}function Uc(){var e=qc(zo());return e.copy=function(){return Oi(e,Uc()).exponent(e.exponent())},mt.apply(e,arguments),e}function Nk(){return Uc.apply(null,arguments).exponent(.5)}function yh(e){return Math.sign(e)*e*e}function Rk(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function $b(){var e=zc(),t=[0,1],r=!1,n;function i(a){var o=Rk(e(a));return isNaN(o)?n:r?Math.round(o):o}return i.invert=function(a){return e.invert(yh(a))},i.domain=function(a){return arguments.length?(e.domain(a),i):e.domain()},i.range=function(a){return arguments.length?(e.range((t=Array.from(a,Ga)).map(yh)),i):t.slice()},i.rangeRound=function(a){return i.range(a).round(!0)},i.round=function(a){return arguments.length?(r=!!a,i):r},i.clamp=function(a){return arguments.length?(e.clamp(a),i):e.clamp()},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return $b(e.domain(),t).round(r).clamp(e.clamp()).unknown(n)},mt.apply(i,arguments),Pr(i)}function Lb(){var e=[],t=[],r=[],n;function i(){var o=0,l=Math.max(1,t.length);for(r=new Array(l-1);++o0?r[l-1]:e[0],l=r?[n[r-1],t]:[n[u-1],n[u]]},o.unknown=function(s){return arguments.length&&(a=s),o},o.thresholds=function(){return n.slice()},o.copy=function(){return zb().domain([e,t]).range(i).unknown(a)},mt.apply(Pr(o),arguments)}function Bb(){var e=[.5],t=[0,1],r,n=1;function i(a){return a!=null&&a<=a?t[wi(e,a,0,n)]:r}return i.domain=function(a){return arguments.length?(e=Array.from(a),n=Math.min(e.length,t.length-1),i):e.slice()},i.range=function(a){return arguments.length?(t=Array.from(a),n=Math.min(e.length,t.length-1),i):t.slice()},i.invertExtent=function(a){var o=t.indexOf(a);return[e[o-1],e[o]]},i.unknown=function(a){return arguments.length?(r=a,i):r},i.copy=function(){return Bb().domain(e).range(t).unknown(r)},mt.apply(i,arguments)}const js=new Date,ks=new Date;function Ce(e,t,r,n){function i(a){return e(a=arguments.length===0?new Date:new Date(+a)),a}return i.floor=a=>(e(a=new Date(+a)),a),i.ceil=a=>(e(a=new Date(a-1)),t(a,1),e(a),a),i.round=a=>{const o=i(a),l=i.ceil(a);return a-o(t(a=new Date(+a),o==null?1:Math.floor(o)),a),i.range=(a,o,l)=>{const s=[];if(a=i.ceil(a),l=l==null?1:Math.floor(l),!(a0))return s;let u;do s.push(u=new Date(+a)),t(a,l),e(a);while(uCe(o=>{if(o>=o)for(;e(o),!a(o);)o.setTime(o-1)},(o,l)=>{if(o>=o)if(l<0)for(;++l<=0;)for(;t(o,-1),!a(o););else for(;--l>=0;)for(;t(o,1),!a(o););}),r&&(i.count=(a,o)=>(js.setTime(+a),ks.setTime(+o),e(js),e(ks),Math.floor(r(js,ks))),i.every=a=>(a=Math.floor(a),!isFinite(a)||!(a>0)?null:a>1?i.filter(n?o=>n(o)%a===0:o=>i.count(0,o)%a===0):i)),i}const Ya=Ce(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);Ya.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Ce(t=>{t.setTime(Math.floor(t/e)*e)},(t,r)=>{t.setTime(+t+r*e)},(t,r)=>(r-t)/e):Ya);Ya.range;const Wt=1e3,vt=Wt*60,Kt=vt*60,Ht=Kt*24,Gc=Ht*7,gh=Ht*30,_s=Ht*365,$r=Ce(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*Wt)},(e,t)=>(t-e)/Wt,e=>e.getUTCSeconds());$r.range;const Vc=Ce(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Wt)},(e,t)=>{e.setTime(+e+t*vt)},(e,t)=>(t-e)/vt,e=>e.getMinutes());Vc.range;const Hc=Ce(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*vt)},(e,t)=>(t-e)/vt,e=>e.getUTCMinutes());Hc.range;const Yc=Ce(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Wt-e.getMinutes()*vt)},(e,t)=>{e.setTime(+e+t*Kt)},(e,t)=>(t-e)/Kt,e=>e.getHours());Yc.range;const Xc=Ce(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*Kt)},(e,t)=>(t-e)/Kt,e=>e.getUTCHours());Xc.range;const Ai=Ce(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*vt)/Ht,e=>e.getDate()-1);Ai.range;const Bo=Ce(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ht,e=>e.getUTCDate()-1);Bo.range;const Fb=Ce(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ht,e=>Math.floor(e/Ht));Fb.range;function Jr(e){return Ce(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,r)=>{t.setDate(t.getDate()+r*7)},(t,r)=>(r-t-(r.getTimezoneOffset()-t.getTimezoneOffset())*vt)/Gc)}const Fo=Jr(0),Xa=Jr(1),$k=Jr(2),Lk=Jr(3),gn=Jr(4),zk=Jr(5),Bk=Jr(6);Fo.range;Xa.range;$k.range;Lk.range;gn.range;zk.range;Bk.range;function Qr(e){return Ce(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCDate(t.getUTCDate()+r*7)},(t,r)=>(r-t)/Gc)}const Wo=Qr(0),Za=Qr(1),Fk=Qr(2),Wk=Qr(3),bn=Qr(4),Kk=Qr(5),qk=Qr(6);Wo.range;Za.range;Fk.range;Wk.range;bn.range;Kk.range;qk.range;const Zc=Ce(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());Zc.range;const Jc=Ce(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());Jc.range;const Yt=Ce(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());Yt.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Ce(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,r)=>{t.setFullYear(t.getFullYear()+r*e)});Yt.range;const Xt=Ce(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());Xt.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Ce(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,r)=>{t.setUTCFullYear(t.getUTCFullYear()+r*e)});Xt.range;function Wb(e,t,r,n,i,a){const o=[[$r,1,Wt],[$r,5,5*Wt],[$r,15,15*Wt],[$r,30,30*Wt],[a,1,vt],[a,5,5*vt],[a,15,15*vt],[a,30,30*vt],[i,1,Kt],[i,3,3*Kt],[i,6,6*Kt],[i,12,12*Kt],[n,1,Ht],[n,2,2*Ht],[r,1,Gc],[t,1,gh],[t,3,3*gh],[e,1,_s]];function l(u,c,f){const d=cm).right(o,d);if(p===o.length)return e.every(Iu(u/_s,c/_s,f));if(p===0)return Ya.every(Math.max(Iu(u,c,f),1));const[h,y]=o[d/o[p-1][2]53)return null;"w"in T||(T.w=1),"Z"in T?(ee=Is(Ln(T.y,0,1)),rt=ee.getUTCDay(),ee=rt>4||rt===0?Za.ceil(ee):Za(ee),ee=Bo.offset(ee,(T.V-1)*7),T.y=ee.getUTCFullYear(),T.m=ee.getUTCMonth(),T.d=ee.getUTCDate()+(T.w+6)%7):(ee=Cs(Ln(T.y,0,1)),rt=ee.getDay(),ee=rt>4||rt===0?Xa.ceil(ee):Xa(ee),ee=Ai.offset(ee,(T.V-1)*7),T.y=ee.getFullYear(),T.m=ee.getMonth(),T.d=ee.getDate()+(T.w+6)%7)}else("W"in T||"U"in T)&&("w"in T||(T.w="u"in T?T.u%7:"W"in T?1:0),rt="Z"in T?Is(Ln(T.y,0,1)).getUTCDay():Cs(Ln(T.y,0,1)).getDay(),T.m=0,T.d="W"in T?(T.w+6)%7+T.W*7-(rt+5)%7:T.w+T.U*7-(rt+6)%7);return"Z"in T?(T.H+=T.Z/100|0,T.M+=T.Z%100,Is(T)):Cs(T)}}function A(C,G,X,T){for(var Me=0,ee=G.length,rt=X.length,nt,Er;Me=rt)return-1;if(nt=G.charCodeAt(Me++),nt===37){if(nt=G.charAt(Me++),Er=x[nt in bh?G.charAt(Me++):nt],!Er||(T=Er(C,X,T))<0)return-1}else if(nt!=X.charCodeAt(T++))return-1}return T}function _(C,G,X){var T=u.exec(G.slice(X));return T?(C.p=c.get(T[0].toLowerCase()),X+T[0].length):-1}function M(C,G,X){var T=p.exec(G.slice(X));return T?(C.w=h.get(T[0].toLowerCase()),X+T[0].length):-1}function I(C,G,X){var T=f.exec(G.slice(X));return T?(C.w=d.get(T[0].toLowerCase()),X+T[0].length):-1}function k(C,G,X){var T=g.exec(G.slice(X));return T?(C.m=w.get(T[0].toLowerCase()),X+T[0].length):-1}function $(C,G,X){var T=y.exec(G.slice(X));return T?(C.m=m.get(T[0].toLowerCase()),X+T[0].length):-1}function R(C,G,X){return A(C,t,G,X)}function W(C,G,X){return A(C,r,G,X)}function K(C,G,X){return A(C,n,G,X)}function q(C){return o[C.getDay()]}function Y(C){return a[C.getDay()]}function U(C){return s[C.getMonth()]}function D(C){return l[C.getMonth()]}function ue(C){return i[+(C.getHours()>=12)]}function we(C){return 1+~~(C.getMonth()/3)}function Je(C){return o[C.getUTCDay()]}function Te(C){return a[C.getUTCDay()]}function ve(C){return s[C.getUTCMonth()]}function Pe(C){return l[C.getUTCMonth()]}function Ee(C){return i[+(C.getUTCHours()>=12)]}function tn(C){return 1+~~(C.getUTCMonth()/3)}return{format:function(C){var G=O(C+="",b);return G.toString=function(){return C},G},parse:function(C){var G=S(C+="",!1);return G.toString=function(){return C},G},utcFormat:function(C){var G=O(C+="",P);return G.toString=function(){return C},G},utcParse:function(C){var G=S(C+="",!0);return G.toString=function(){return C},G}}}var bh={"-":"",_:" ",0:"0"},ze=/^\s*\d+/,Xk=/^%/,Zk=/[\\^$*+?|[\]().{}]/g;function Q(e,t,r){var n=e<0?"-":"",i=(n?-e:e)+"",a=i.length;return n+(a[t.toLowerCase(),r]))}function Qk(e,t,r){var n=ze.exec(t.slice(r,r+1));return n?(e.w=+n[0],r+n[0].length):-1}function e_(e,t,r){var n=ze.exec(t.slice(r,r+1));return n?(e.u=+n[0],r+n[0].length):-1}function t_(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.U=+n[0],r+n[0].length):-1}function r_(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.V=+n[0],r+n[0].length):-1}function n_(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.W=+n[0],r+n[0].length):-1}function xh(e,t,r){var n=ze.exec(t.slice(r,r+4));return n?(e.y=+n[0],r+n[0].length):-1}function wh(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.y=+n[0]+(+n[0]>68?1900:2e3),r+n[0].length):-1}function i_(e,t,r){var n=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(r,r+6));return n?(e.Z=n[1]?0:-(n[2]+(n[3]||"00")),r+n[0].length):-1}function a_(e,t,r){var n=ze.exec(t.slice(r,r+1));return n?(e.q=n[0]*3-3,r+n[0].length):-1}function o_(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.m=n[0]-1,r+n[0].length):-1}function Ph(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.d=+n[0],r+n[0].length):-1}function l_(e,t,r){var n=ze.exec(t.slice(r,r+3));return n?(e.m=0,e.d=+n[0],r+n[0].length):-1}function Oh(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.H=+n[0],r+n[0].length):-1}function s_(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.M=+n[0],r+n[0].length):-1}function u_(e,t,r){var n=ze.exec(t.slice(r,r+2));return n?(e.S=+n[0],r+n[0].length):-1}function c_(e,t,r){var n=ze.exec(t.slice(r,r+3));return n?(e.L=+n[0],r+n[0].length):-1}function f_(e,t,r){var n=ze.exec(t.slice(r,r+6));return n?(e.L=Math.floor(n[0]/1e3),r+n[0].length):-1}function d_(e,t,r){var n=Xk.exec(t.slice(r,r+1));return n?r+n[0].length:-1}function v_(e,t,r){var n=ze.exec(t.slice(r));return n?(e.Q=+n[0],r+n[0].length):-1}function p_(e,t,r){var n=ze.exec(t.slice(r));return n?(e.s=+n[0],r+n[0].length):-1}function Ah(e,t){return Q(e.getDate(),t,2)}function h_(e,t){return Q(e.getHours(),t,2)}function m_(e,t){return Q(e.getHours()%12||12,t,2)}function y_(e,t){return Q(1+Ai.count(Yt(e),e),t,3)}function Kb(e,t){return Q(e.getMilliseconds(),t,3)}function g_(e,t){return Kb(e,t)+"000"}function b_(e,t){return Q(e.getMonth()+1,t,2)}function x_(e,t){return Q(e.getMinutes(),t,2)}function w_(e,t){return Q(e.getSeconds(),t,2)}function P_(e){var t=e.getDay();return t===0?7:t}function O_(e,t){return Q(Fo.count(Yt(e)-1,e),t,2)}function qb(e){var t=e.getDay();return t>=4||t===0?gn(e):gn.ceil(e)}function A_(e,t){return e=qb(e),Q(gn.count(Yt(e),e)+(Yt(e).getDay()===4),t,2)}function S_(e){return e.getDay()}function E_(e,t){return Q(Xa.count(Yt(e)-1,e),t,2)}function j_(e,t){return Q(e.getFullYear()%100,t,2)}function k_(e,t){return e=qb(e),Q(e.getFullYear()%100,t,2)}function __(e,t){return Q(e.getFullYear()%1e4,t,4)}function C_(e,t){var r=e.getDay();return e=r>=4||r===0?gn(e):gn.ceil(e),Q(e.getFullYear()%1e4,t,4)}function I_(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Q(t/60|0,"0",2)+Q(t%60,"0",2)}function Sh(e,t){return Q(e.getUTCDate(),t,2)}function T_(e,t){return Q(e.getUTCHours(),t,2)}function M_(e,t){return Q(e.getUTCHours()%12||12,t,2)}function D_(e,t){return Q(1+Bo.count(Xt(e),e),t,3)}function Ub(e,t){return Q(e.getUTCMilliseconds(),t,3)}function N_(e,t){return Ub(e,t)+"000"}function R_(e,t){return Q(e.getUTCMonth()+1,t,2)}function $_(e,t){return Q(e.getUTCMinutes(),t,2)}function L_(e,t){return Q(e.getUTCSeconds(),t,2)}function z_(e){var t=e.getUTCDay();return t===0?7:t}function B_(e,t){return Q(Wo.count(Xt(e)-1,e),t,2)}function Gb(e){var t=e.getUTCDay();return t>=4||t===0?bn(e):bn.ceil(e)}function F_(e,t){return e=Gb(e),Q(bn.count(Xt(e),e)+(Xt(e).getUTCDay()===4),t,2)}function W_(e){return e.getUTCDay()}function K_(e,t){return Q(Za.count(Xt(e)-1,e),t,2)}function q_(e,t){return Q(e.getUTCFullYear()%100,t,2)}function U_(e,t){return e=Gb(e),Q(e.getUTCFullYear()%100,t,2)}function G_(e,t){return Q(e.getUTCFullYear()%1e4,t,4)}function V_(e,t){var r=e.getUTCDay();return e=r>=4||r===0?bn(e):bn.ceil(e),Q(e.getUTCFullYear()%1e4,t,4)}function H_(){return"+0000"}function Eh(){return"%"}function jh(e){return+e}function kh(e){return Math.floor(+e/1e3)}var nn,Vb,Hb;Y_({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 Y_(e){return nn=Yk(e),Vb=nn.format,nn.parse,Hb=nn.utcFormat,nn.utcParse,nn}function X_(e){return new Date(e)}function Z_(e){return e instanceof Date?+e:+new Date(+e)}function Qc(e,t,r,n,i,a,o,l,s,u){var c=zc(),f=c.invert,d=c.domain,p=u(".%L"),h=u(":%S"),y=u("%I:%M"),m=u("%I %p"),g=u("%a %d"),w=u("%b %d"),b=u("%B"),P=u("%Y");function x(O){return(s(O)t(i/(e.length-1)))},r.quantiles=function(n){return Array.from({length:n+1},(i,a)=>zj(e,a/n))},r.copy=function(){return Jb(t).domain(e)},rr.apply(r,arguments)}function qo(){var e=0,t=.5,r=1,n=1,i,a,o,l,s,u=He,c,f=!1,d;function p(y){return isNaN(y=+y)?d:(y=.5+((y=+c(y))-a)*(n*ye.chartData,Uo=j([nr],e=>{var t=e.chartData!=null?e.chartData.length-1:0;return{chartData:e.chartData,computedData:e.computedData,dataEndIndex:t,dataStartIndex:0}}),rf=(e,t,r,n)=>n?Uo(e):nr(e),r0=(e,t,r)=>r?Uo(e):nr(e);function Zt(e){if(Array.isArray(e)&&e.length===2){var[t,r]=e;if(H(t)&&H(r))return!0}return!1}function _h(e,t,r){return r?e:[Math.min(e[0],t[0]),Math.max(e[1],t[1])]}function n0(e,t){if(t&&typeof e!="function"&&Array.isArray(e)&&e.length===2){var[r,n]=e,i,a;if(H(r))i=r;else if(typeof r=="function")return;if(H(n))a=n;else if(typeof n=="function")return;var o=[i,a];if(Zt(o))return o}}function rC(e,t,r){if(!(!r&&t==null)){if(typeof e=="function"&&t!=null)try{var n=e(t,r);if(Zt(n))return _h(n,t,r)}catch{}if(Array.isArray(e)&&e.length===2){var[i,a]=e,o,l;if(i==="auto")t!=null&&(o=Math.min(...t));else if(N(i))o=i;else if(typeof i=="function")try{t!=null&&(o=i(t?.[0]))}catch{}else if(typeof i=="string"&&zv.test(i)){var s=zv.exec(i);if(s==null||s[1]==null||t==null)o=void 0;else{var u=+s[1];o=t[0]-u}}else o=t?.[0];if(a==="auto")t!=null&&(l=Math.max(...t));else if(N(a))l=a;else if(typeof a=="function")try{t!=null&&(l=a(t?.[1]))}catch{}else if(typeof a=="string"&&Bv.test(a)){var c=Bv.exec(a);if(c==null||c[1]==null||t==null)l=void 0;else{var f=+c[1];l=t[1]+f}}else l=t?.[1];var d=[o,l];if(Zt(d))return t==null?d:_h(d,t,r)}}}var On=1e9,nC={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},af,fe=!0,ht="[DecimalError] ",Fr=ht+"Invalid argument: ",nf=ht+"Exponent out of range: ",An=Math.floor,Mr=Math.pow,iC=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,at,Re=1e7,se=7,i0=9007199254740991,Ja=An(i0/se),L={};L.absoluteValue=L.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};L.comparedTo=L.cmp=function(e){var t,r,n,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(n=a.d.length,i=e.d.length,t=0,r=ne.d[t]^a.s<0?1:-1;return n===i?0:n>i^a.s<0?1:-1};L.decimalPlaces=L.dp=function(){var e=this,t=e.d.length-1,r=(t-e.e)*se;if(t=e.d[t],t)for(;t%10==0;t/=10)r--;return r<0?0:r};L.dividedBy=L.div=function(e){return qt(this,new this.constructor(e))};L.dividedToIntegerBy=L.idiv=function(e){var t=this,r=t.constructor;return ae(qt(t,new r(e),0,1),r.precision)};L.equals=L.eq=function(e){return!this.cmp(e)};L.exponent=function(){return Se(this)};L.greaterThan=L.gt=function(e){return this.cmp(e)>0};L.greaterThanOrEqualTo=L.gte=function(e){return this.cmp(e)>=0};L.isInteger=L.isint=function(){return this.e>this.d.length-2};L.isNegative=L.isneg=function(){return this.s<0};L.isPositive=L.ispos=function(){return this.s>0};L.isZero=function(){return this.s===0};L.lessThan=L.lt=function(e){return this.cmp(e)<0};L.lessThanOrEqualTo=L.lte=function(e){return this.cmp(e)<1};L.logarithm=L.log=function(e){var t,r=this,n=r.constructor,i=n.precision,a=i+5;if(e===void 0)e=new n(10);else if(e=new n(e),e.s<1||e.eq(at))throw Error(ht+"NaN");if(r.s<1)throw Error(ht+(r.s?"NaN":"-Infinity"));return r.eq(at)?new n(0):(fe=!1,t=qt(ui(r,a),ui(e,a),a),fe=!0,ae(t,i))};L.minus=L.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?l0(t,e):a0(t,(e.s=-e.s,e))};L.modulo=L.mod=function(e){var t,r=this,n=r.constructor,i=n.precision;if(e=new n(e),!e.s)throw Error(ht+"NaN");return r.s?(fe=!1,t=qt(r,e,0,1).times(e),fe=!0,r.minus(t)):ae(new n(r),i)};L.naturalExponential=L.exp=function(){return o0(this)};L.naturalLogarithm=L.ln=function(){return ui(this)};L.negated=L.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};L.plus=L.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?a0(t,e):l0(t,(e.s=-e.s,e))};L.precision=L.sd=function(e){var t,r,n,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Fr+e);if(t=Se(i)+1,n=i.d.length-1,r=n*se+1,n=i.d[n],n){for(;n%10==0;n/=10)r--;for(n=i.d[0];n>=10;n/=10)r++}return e&&t>r?t:r};L.squareRoot=L.sqrt=function(){var e,t,r,n,i,a,o,l=this,s=l.constructor;if(l.s<1){if(!l.s)return new s(0);throw Error(ht+"NaN")}for(e=Se(l),fe=!1,i=Math.sqrt(+l),i==0||i==1/0?(t=Ct(l.d),(t.length+e)%2==0&&(t+="0"),i=Math.sqrt(t),e=An((e+1)/2)-(e<0||e%2),i==1/0?t="5e"+e:(t=i.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),n=new s(t)):n=new s(i.toString()),r=s.precision,i=o=r+3;;)if(a=n,n=a.plus(qt(l,a,o+2)).times(.5),Ct(a.d).slice(0,o)===(t=Ct(n.d)).slice(0,o)){if(t=t.slice(o-3,o+1),i==o&&t=="4999"){if(ae(a,r+1,0),a.times(a).eq(l)){n=a;break}}else if(t!="9999")break;o+=4}return fe=!0,ae(n,r)};L.times=L.mul=function(e){var t,r,n,i,a,o,l,s,u,c=this,f=c.constructor,d=c.d,p=(e=new f(e)).d;if(!c.s||!e.s)return new f(0);for(e.s*=c.s,r=c.e+e.e,s=d.length,u=p.length,s=0;){for(t=0,i=s+n;i>n;)l=a[i]+p[n]*d[i-n-1]+t,a[i--]=l%Re|0,t=l/Re|0;a[i]=(a[i]+t)%Re|0}for(;!a[--o];)a.pop();return t?++r:a.shift(),e.d=a,e.e=r,fe?ae(e,f.precision):e};L.toDecimalPlaces=L.todp=function(e,t){var r=this,n=r.constructor;return r=new n(r),e===void 0?r:(Dt(e,0,On),t===void 0?t=n.rounding:Dt(t,0,8),ae(r,e+Se(r)+1,t))};L.toExponential=function(e,t){var r,n=this,i=n.constructor;return e===void 0?r=Xr(n,!0):(Dt(e,0,On),t===void 0?t=i.rounding:Dt(t,0,8),n=ae(new i(n),e+1,t),r=Xr(n,!0,e+1)),r};L.toFixed=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?Xr(i):(Dt(e,0,On),t===void 0?t=a.rounding:Dt(t,0,8),n=ae(new a(i),e+Se(i)+1,t),r=Xr(n.abs(),!1,e+Se(n)+1),i.isneg()&&!i.isZero()?"-"+r:r)};L.toInteger=L.toint=function(){var e=this,t=e.constructor;return ae(new t(e),Se(e)+1,t.rounding)};L.toNumber=function(){return+this};L.toPower=L.pow=function(e){var t,r,n,i,a,o,l=this,s=l.constructor,u=12,c=+(e=new s(e));if(!e.s)return new s(at);if(l=new s(l),!l.s){if(e.s<1)throw Error(ht+"Infinity");return l}if(l.eq(at))return l;if(n=s.precision,e.eq(at))return ae(l,n);if(t=e.e,r=e.d.length-1,o=t>=r,a=l.s,o){if((r=c<0?-c:c)<=i0){for(i=new s(at),t=Math.ceil(n/se+4),fe=!1;r%2&&(i=i.times(l),Ih(i.d,t)),r=An(r/2),r!==0;)l=l.times(l),Ih(l.d,t);return fe=!0,e.s<0?new s(at).div(i):ae(i,n)}}else if(a<0)throw Error(ht+"NaN");return a=a<0&&e.d[Math.max(t,r)]&1?-1:1,l.s=1,fe=!1,i=e.times(ui(l,n+u)),fe=!0,i=o0(i),i.s=a,i};L.toPrecision=function(e,t){var r,n,i=this,a=i.constructor;return e===void 0?(r=Se(i),n=Xr(i,r<=a.toExpNeg||r>=a.toExpPos)):(Dt(e,1,On),t===void 0?t=a.rounding:Dt(t,0,8),i=ae(new a(i),e,t),r=Se(i),n=Xr(i,e<=r||r<=a.toExpNeg,e)),n};L.toSignificantDigits=L.tosd=function(e,t){var r=this,n=r.constructor;return e===void 0?(e=n.precision,t=n.rounding):(Dt(e,1,On),t===void 0?t=n.rounding:Dt(t,0,8)),ae(new n(r),e,t)};L.toString=L.valueOf=L.val=L.toJSON=L[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Se(e),r=e.constructor;return Xr(e,t<=r.toExpNeg||t>=r.toExpPos)};function a0(e,t){var r,n,i,a,o,l,s,u,c=e.constructor,f=c.precision;if(!e.s||!t.s)return t.s||(t=new c(e)),fe?ae(t,f):t;if(s=e.d,u=t.d,o=e.e,i=t.e,s=s.slice(),a=o-i,a){for(a<0?(n=s,a=-a,l=u.length):(n=u,i=o,l=s.length),o=Math.ceil(f/se),l=o>l?o+1:l+1,a>l&&(a=l,n.length=1),n.reverse();a--;)n.push(0);n.reverse()}for(l=s.length,a=u.length,l-a<0&&(a=l,n=u,u=s,s=n),r=0;a;)r=(s[--a]=s[a]+u[a]+r)/Re|0,s[a]%=Re;for(r&&(s.unshift(r),++i),l=s.length;s[--l]==0;)s.pop();return t.d=s,t.e=i,fe?ae(t,f):t}function Dt(e,t,r){if(e!==~~e||er)throw Error(Fr+e)}function Ct(e){var t,r,n,i=e.length-1,a="",o=e[0];if(i>0){for(a+=o,t=1;to?1:-1;else for(l=s=0;li[l]?1:-1;break}return s}function r(n,i,a){for(var o=0;a--;)n[a]-=o,o=n[a]1;)n.shift()}return function(n,i,a,o){var l,s,u,c,f,d,p,h,y,m,g,w,b,P,x,O,S,A,_=n.constructor,M=n.s==i.s?1:-1,I=n.d,k=i.d;if(!n.s)return new _(n);if(!i.s)throw Error(ht+"Division by zero");for(s=n.e-i.e,S=k.length,x=I.length,p=new _(M),h=p.d=[],u=0;k[u]==(I[u]||0);)++u;if(k[u]>(I[u]||0)&&--s,a==null?w=a=_.precision:o?w=a+(Se(n)-Se(i))+1:w=a,w<0)return new _(0);if(w=w/se+2|0,u=0,S==1)for(c=0,k=k[0],w++;(u1&&(k=e(k,c),I=e(I,c),S=k.length,x=I.length),P=S,y=I.slice(0,S),m=y.length;m=Re/2&&++O;do c=0,l=t(k,y,S,m),l<0?(g=y[0],S!=m&&(g=g*Re+(y[1]||0)),c=g/O|0,c>1?(c>=Re&&(c=Re-1),f=e(k,c),d=f.length,m=y.length,l=t(f,y,d,m),l==1&&(c--,r(f,S16)throw Error(nf+Se(e));if(!e.s)return new c(at);for(fe=!1,l=f,o=new c(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(n=Math.log(Mr(2,u))/Math.LN10*2+5|0,l+=n,r=i=a=new c(at),c.precision=l;;){if(i=ae(i.times(e),l),r=r.times(++s),o=a.plus(qt(i,r,l)),Ct(o.d).slice(0,l)===Ct(a.d).slice(0,l)){for(;u--;)a=ae(a.times(a),l);return c.precision=f,t==null?(fe=!0,ae(a,f)):a}a=o}}function Se(e){for(var t=e.e*se,r=e.d[0];r>=10;r/=10)t++;return t}function Ts(e,t,r){if(t>e.LN10.sd())throw fe=!0,r&&(e.precision=r),Error(ht+"LN10 precision limit exceeded");return ae(new e(e.LN10),t)}function ur(e){for(var t="";e--;)t+="0";return t}function ui(e,t){var r,n,i,a,o,l,s,u,c,f=1,d=10,p=e,h=p.d,y=p.constructor,m=y.precision;if(p.s<1)throw Error(ht+(p.s?"NaN":"-Infinity"));if(p.eq(at))return new y(0);if(t==null?(fe=!1,u=m):u=t,p.eq(10))return t==null&&(fe=!0),Ts(y,u);if(u+=d,y.precision=u,r=Ct(h),n=r.charAt(0),a=Se(p),Math.abs(a)<15e14){for(;n<7&&n!=1||n==1&&r.charAt(1)>3;)p=p.times(e),r=Ct(p.d),n=r.charAt(0),f++;a=Se(p),n>1?(p=new y("0."+r),a++):p=new y(n+"."+r.slice(1))}else return s=Ts(y,u+2,m).times(a+""),p=ui(new y(n+"."+r.slice(1)),u-d).plus(s),y.precision=m,t==null?(fe=!0,ae(p,m)):p;for(l=o=p=qt(p.minus(at),p.plus(at),u),c=ae(p.times(p),u),i=3;;){if(o=ae(o.times(c),u),s=l.plus(qt(o,new y(i),u)),Ct(s.d).slice(0,u)===Ct(l.d).slice(0,u))return l=l.times(2),a!==0&&(l=l.plus(Ts(y,u+2,m).times(a+""))),l=qt(l,new y(f),u),y.precision=m,t==null?(fe=!0,ae(l,m)):l;l=s,i+=2}}function Ch(e,t){var r,n,i;for((r=t.indexOf("."))>-1&&(t=t.replace(".","")),(n=t.search(/e/i))>0?(r<0&&(r=n),r+=+t.slice(n+1),t=t.substring(0,n)):r<0&&(r=t.length),n=0;t.charCodeAt(n)===48;)++n;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(n,i),t){if(i-=n,r=r-n-1,e.e=An(r/se),e.d=[],n=(r+1)%se,r<0&&(n+=se),nJa||e.e<-Ja))throw Error(nf+r)}else e.s=0,e.e=0,e.d=[0];return e}function ae(e,t,r){var n,i,a,o,l,s,u,c,f=e.d;for(o=1,a=f[0];a>=10;a/=10)o++;if(n=t-o,n<0)n+=se,i=t,u=f[c=0];else{if(c=Math.ceil((n+1)/se),a=f.length,c>=a)return e;for(u=a=f[c],o=1;a>=10;a/=10)o++;n%=se,i=n-se+o}if(r!==void 0&&(a=Mr(10,o-i-1),l=u/a%10|0,s=t<0||f[c+1]!==void 0||u%a,s=r<4?(l||s)&&(r==0||r==(e.s<0?3:2)):l>5||l==5&&(r==4||s||r==6&&(n>0?i>0?u/Mr(10,o-i):0:f[c-1])%10&1||r==(e.s<0?8:7))),t<1||!f[0])return s?(a=Se(e),f.length=1,t=t-a-1,f[0]=Mr(10,(se-t%se)%se),e.e=An(-t/se)||0):(f.length=1,f[0]=e.e=e.s=0),e;if(n==0?(f.length=c,a=1,c--):(f.length=c+1,a=Mr(10,se-n),f[c]=i>0?(u/Mr(10,o-i)%Mr(10,i)|0)*a:0),s)for(;;)if(c==0){(f[0]+=a)==Re&&(f[0]=1,++e.e);break}else{if(f[c]+=a,f[c]!=Re)break;f[c--]=0,a=1}for(n=f.length;f[--n]===0;)f.pop();if(fe&&(e.e>Ja||e.e<-Ja))throw Error(nf+Se(e));return e}function l0(e,t){var r,n,i,a,o,l,s,u,c,f,d=e.constructor,p=d.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new d(e),fe?ae(t,p):t;if(s=e.d,f=t.d,n=t.e,u=e.e,s=s.slice(),o=u-n,o){for(c=o<0,c?(r=s,o=-o,l=f.length):(r=f,n=u,l=s.length),i=Math.max(Math.ceil(p/se),l)+2,o>i&&(o=i,r.length=1),r.reverse(),i=o;i--;)r.push(0);r.reverse()}else{for(i=s.length,l=f.length,c=i0;--i)s[l++]=0;for(i=f.length;i>o;){if(s[--i]0?a=a.charAt(0)+"."+a.slice(1)+ur(n):o>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(i<0?"e":"e+")+i):i<0?(a="0."+ur(-i-1)+a,r&&(n=r-o)>0&&(a+=ur(n))):i>=o?(a+=ur(i+1-o),r&&(n=r-i-1)>0&&(a=a+"."+ur(n))):((n=i+1)0&&(i+1===o&&(a+="."),a+=ur(n))),e.s<0?"-"+a:a}function Ih(e,t){if(e.length>t)return e.length=t,!0}function s0(e){var t,r,n;function i(a){var o=this;if(!(o instanceof i))return new i(a);if(o.constructor=i,a instanceof i){o.s=a.s,o.e=a.e,o.d=(a=a.d)?a.slice():a;return}if(typeof a=="number"){if(a*0!==0)throw Error(Fr+a);if(a>0)o.s=1;else if(a<0)a=-a,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(a===~~a&&a<1e7){o.e=0,o.d=[a];return}return Ch(o,a.toString())}else if(typeof a!="string")throw Error(Fr+a);if(a.charCodeAt(0)===45?(a=a.slice(1),o.s=-1):o.s=1,iC.test(a))Ch(o,a);else throw Error(Fr+a)}if(i.prototype=L,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=s0,i.config=i.set=aC,e===void 0&&(e={}),e)for(n=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t=i[t+1]&&n<=i[t+2])this[r]=n;else throw Error(Fr+r+": "+n);if((n=e[r="LN10"])!==void 0)if(n==Math.LN10)this[r]=new this(n);else throw Error(Fr+r+": "+n);return this}var af=s0(nC);at=new af(1);const ie=af;function u0(e){var t;return e===0?t=1:t=Math.floor(new ie(e).abs().log(10).toNumber())+1,t}function c0(e,t,r){for(var n=new ie(e),i=0,a=[];n.lt(t)&&i<1e5;)a.push(n.toNumber()),n=n.add(r),i++;return a}var f0=e=>{var[t,r]=e,[n,i]=[t,r];return t>r&&([n,i]=[r,t]),[n,i]},d0=(e,t,r)=>{if(e.lte(0))return new ie(0);var n=u0(e.toNumber()),i=new ie(10).pow(n),a=e.div(i),o=n!==1?.05:.1,l=new ie(Math.ceil(a.div(o).toNumber())).add(r).mul(o),s=l.mul(i);return t?new ie(s.toNumber()):new ie(Math.ceil(s.toNumber()))},oC=(e,t,r)=>{var n=new ie(1),i=new ie(e);if(!i.isint()&&r){var a=Math.abs(e);a<1?(n=new ie(10).pow(u0(e)-1),i=new ie(Math.floor(i.div(n).toNumber())).mul(n)):a>1&&(i=new ie(Math.floor(e)))}else e===0?i=new ie(Math.floor((t-1)/2)):r||(i=new ie(Math.floor(e)));for(var o=Math.floor((t-1)/2),l=[],s=0;s4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((r-t)/(n-1)))return{step:new ie(0),tickMin:new ie(0),tickMax:new ie(0)};var o=d0(new ie(r).sub(t).div(n-1),i,a),l;t<=0&&r>=0?l=new ie(0):(l=new ie(t).add(r).div(2),l=l.sub(new ie(l).mod(o)));var s=Math.ceil(l.sub(t).div(o).toNumber()),u=Math.ceil(new ie(r).sub(l).div(o).toNumber()),c=s+u+1;return c>n?v0(t,r,n,i,a+1):(c0?u+(n-c):u,s=r>0?s:s+(n-c)),{step:o,tickMin:l.sub(new ie(s).mul(o)),tickMax:l.add(new ie(u).mul(o))})},lC=function(t){var[r,n]=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=Math.max(i,2),[l,s]=f0([r,n]);if(l===-1/0||s===1/0){var u=s===1/0?[l,...Array(i-1).fill(1/0)]:[...Array(i-1).fill(-1/0),s];return r>n?u.reverse():u}if(l===s)return oC(l,i,a);var{step:c,tickMin:f,tickMax:d}=v0(l,s,o,a,0),p=c0(f,d.add(new ie(.1).mul(c)),c);return r>n?p.reverse():p},sC=function(t,r){var[n,i]=t,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,[o,l]=f0([n,i]);if(o===-1/0||l===1/0)return[n,i];if(o===l)return[o];var s=Math.max(r,2),u=d0(new ie(l).sub(o).div(s-1),a,0),c=[...c0(new ie(o),new ie(l),u),l];return a===!1&&(c=c.map(f=>Math.round(f))),n>i?c.reverse():c},p0=e=>e.rootProps.maxBarSize,uC=e=>e.rootProps.barGap,h0=e=>e.rootProps.barCategoryGap,cC=e=>e.rootProps.barSize,Si=e=>e.rootProps.stackOffset,m0=e=>e.rootProps.reverseStackOrder,of=e=>e.options.chartName,lf=e=>e.rootProps.syncId,y0=e=>e.rootProps.syncMethod,sf=e=>e.options.eventEmitter,fC=e=>e.rootProps.baseValue,Oe={grid:-100,barBackground:-50,area:100,cursorRectangle:200,bar:300,line:400,axis:500,scatter:600,activeBar:1e3,cursorLine:1100,activeDot:1200,label:2e3},kr={allowDecimals:!1,allowDataOverflow:!1,angleAxisId:0,reversed:!1,scale:"auto",tick:!0,type:"auto"},Et={allowDataOverflow:!1,allowDecimals:!1,allowDuplicatedCategory:!0,includeHidden:!1,radiusAxisId:0,reversed:!1,scale:"auto",tick:!0,tickCount:5,type:"auto"},Go=(e,t)=>{if(!(!e||!t))return e!=null&&e.reversed?[t[1],t[0]]:t};function Vo(e,t,r){if(r!=="auto")return r;if(e!=null)return At(e,t)?"category":"number"}function Th(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Qa(e){for(var t=1;t{if(t!=null)return e.polarAxis.angleAxis[t]},uf=j([hC,tb],(e,t)=>{var r;if(e!=null)return e;var n=(r=Vo(t,"angleAxis",Mh.type))!==null&&r!==void 0?r:"category";return Qa(Qa({},Mh),{},{type:n})}),mC=(e,t)=>e.polarAxis.radiusAxis[t],cf=j([mC,tb],(e,t)=>{var r;if(e!=null)return e;var n=(r=Vo(t,"radiusAxis",Dh.type))!==null&&r!==void 0?r:"category";return Qa(Qa({},Dh),{},{type:n})}),Ho=e=>e.polarOptions,ff=j([er,tr,_e],gb),g0=j([Ho,ff],(e,t)=>{if(e!=null)return Ue(e.innerRadius,t,0)}),b0=j([Ho,ff],(e,t)=>{if(e!=null)return Ue(e.outerRadius,t,t*.8)}),yC=e=>{if(e==null)return[0,0];var{startAngle:t,endAngle:r}=e;return[t,r]},x0=j([Ho],yC);j([uf,x0],Go);var w0=j([ff,g0,b0],(e,t,r)=>{if(!(e==null||t==null||r==null))return[t,r]});j([cf,w0],Go);var P0=j([J,Ho,g0,b0,er,tr],(e,t,r,n,i,a)=>{if(!(e!=="centric"&&e!=="radial"||t==null||r==null||n==null)){var{cx:o,cy:l,startAngle:s,endAngle:u}=t;return{cx:Ue(o,i,i/2),cy:Ue(l,a,a/2),innerRadius:r,outerRadius:n,startAngle:s,endAngle:u,clockWise:!1}}}),pe=(e,t)=>t,Ei=(e,t,r)=>r;function Yo(e){return e?.id}function O0(e,t,r){var{chartData:n=[]}=t,{allowDuplicatedCategory:i,dataKey:a}=r,o=new Map;return e.forEach(l=>{var s,u=(s=l.data)!==null&&s!==void 0?s:n;if(!(u==null||u.length===0)){var c=Yo(l);u.forEach((f,d)=>{var p=a==null||i?d:String(ne(f,a,null)),h=ne(f,l.dataKey,0),y;o.has(p)?y=o.get(p):y={},Object.assign(y,{[c]:h}),o.set(p,y)})}}),Array.from(o.values())}function Xo(e){return"stackId"in e&&e.stackId!=null&&e.dataKey!=null}var Zo=(e,t)=>e===t?!0:e==null||t==null?!1:e[0]===t[0]&&e[1]===t[1];function Jo(e,t){return Array.isArray(e)&&Array.isArray(t)&&e.length===0&&t.length===0?!0:e===t}function gC(e,t){if(e.length===t.length){for(var r=0;r{var t=J(e);return t==="horizontal"?"xAxis":t==="vertical"?"yAxis":t==="centric"?"angleAxis":"radiusAxis"},Sn=e=>e.tooltip.settings.axisId;function bC(e){if(e in Un)return Un[e]();var t="scale".concat(vi(e));if(t in Un)return Un[t]()}function Nh(e){var t=e.ticks,r=e.bandwidth,n=e.range(),i=[Math.min(...n),Math.max(...n)];return{domain:()=>e.domain(),range:(function(a){function o(){return a.apply(this,arguments)}return o.toString=function(){return a.toString()},o})(()=>i),rangeMin:()=>i[0],rangeMax:()=>i[1],isInRange(a){var o=i[0],l=i[1];return o<=l?a>=o&&a<=l:a>=l&&a<=o},bandwidth:r?()=>r.call(e):void 0,ticks:t?a=>t.call(e,a):void 0,map:(a,o)=>{var l=e(a);if(l!=null){if(e.bandwidth&&o!==null&&o!==void 0&&o.position){var s=e.bandwidth();switch(o.position){case"middle":l+=s/2;break;case"end":l+=s;break}}return l}}}}function Rh(e,t,r){if(typeof e=="function")return Nh(e.copy().domain(t).range(r));if(e!=null){var n=bC(e);if(n!=null)return n.domain(t).range(r),Nh(n)}}var A0=(e,t)=>{if(t!=null)switch(e){case"linear":{if(!Zt(t)){for(var r,n,i=0;in)&&(n=a))}return r!==void 0&&n!==void 0?[r,n]:void 0}return t}default:return t}};function $h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function eo(e){for(var t=1;te.cartesianAxis.xAxis[t],ir=(e,t)=>{var r=S0(e,t);return r??De},Ne={allowDataOverflow:!1,allowDecimals:!0,allowDuplicatedCategory:!0,angle:0,dataKey:void 0,domain:Ru,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:yi},E0=(e,t)=>e.cartesianAxis.yAxis[t],ar=(e,t)=>{var r=E0(e,t);return r??Ne},OC={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:""},df=(e,t)=>{var r=e.cartesianAxis.zAxis[t];return r??OC},xe=(e,t,r)=>{switch(t){case"xAxis":return ir(e,r);case"yAxis":return ar(e,r);case"zAxis":return df(e,r);case"angleAxis":return uf(e,r);case"radiusAxis":return cf(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},AC=(e,t,r)=>{switch(t){case"xAxis":return ir(e,r);case"yAxis":return ar(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},En=(e,t,r)=>{switch(t){case"xAxis":return ir(e,r);case"yAxis":return ar(e,r);case"angleAxis":return uf(e,r);case"radiusAxis":return cf(e,r);default:throw new Error("Unexpected axis type: ".concat(t))}},j0=e=>e.graphicalItems.cartesianItems.some(t=>t.type==="bar")||e.graphicalItems.polarItems.some(t=>t.type==="radialBar");function vf(e,t){return r=>{switch(e){case"xAxis":return"xAxisId"in r&&r.xAxisId===t;case"yAxis":return"yAxisId"in r&&r.yAxisId===t;case"zAxis":return"zAxisId"in r&&r.zAxisId===t;case"angleAxis":return"angleAxisId"in r&&r.angleAxisId===t;case"radiusAxis":return"radiusAxisId"in r&&r.radiusAxisId===t;default:return!1}}}var ji=e=>e.graphicalItems.cartesianItems,SC=j([pe,Ei],vf),pf=(e,t,r)=>e.filter(r).filter(n=>t?.includeHidden===!0?!0:!n.hide),ki=j([ji,xe,SC],pf,{memoizeOptions:{resultEqualityCheck:Jo}}),k0=j([ki],e=>e.filter(t=>t.type==="area"||t.type==="bar").filter(Xo)),_0=e=>e.filter(t=>!("stackId"in t)||t.stackId===void 0),EC=j([ki],_0),hf=e=>e.map(t=>t.data).filter(Boolean).flat(1),jC=j([ki],hf,{memoizeOptions:{resultEqualityCheck:Jo}}),mf=(e,t)=>{var{chartData:r=[],dataStartIndex:n,dataEndIndex:i}=t;return e.length>0?e:r.slice(n,i+1)},yf=j([jC,rf],mf),gf=(e,t,r)=>t?.dataKey!=null?e.map(n=>({value:ne(n,t.dataKey)})):r.length>0?r.map(n=>n.dataKey).flatMap(n=>e.map(i=>({value:ne(i,n)}))):e.map(n=>({value:n})),Qo=j([yf,xe,ki],gf);function C0(e,t){switch(e){case"xAxis":return t.direction==="x";case"yAxis":return t.direction==="y";default:return!1}}function fa(e){if(Tt(e)||e instanceof Date){var t=Number(e);if(H(t))return t}}function Lh(e){if(Array.isArray(e)){var t=[fa(e[0]),fa(e[1])];return Zt(t)?t:void 0}var r=fa(e);if(r!=null)return[r,r]}function Jt(e){return e.map(fa).filter(Qe)}function kC(e,t,r){return!r||typeof t!="number"||wt(t)?[]:r.length?Jt(r.flatMap(n=>{var i=ne(e,n.dataKey),a,o;if(Array.isArray(i)?[a,o]=i:a=o=i,!(!H(a)||!H(o)))return[t-a,t+o]})):[]}var Ie=e=>{var t=Be(e),r=Sn(e);return En(e,t,r)},_i=j([Ie],e=>e?.dataKey),_C=j([k0,rf,Ie],O0),I0=(e,t,r,n)=>{var i={},a=t.reduce((o,l)=>{if(l.stackId==null)return o;var s=o[l.stackId];return s==null&&(s=[]),s.push(l),o[l.stackId]=s,o},i);return Object.fromEntries(Object.entries(a).map(o=>{var[l,s]=o,u=n?[...s].reverse():s,c=u.map(Yo);return[l,{stackedData:XA(e,c,r),graphicalItems:u}]}))},to=j([_C,k0,Si,m0],I0),T0=(e,t,r,n)=>{var{dataStartIndex:i,dataEndIndex:a}=t;if(n==null&&r!=="zAxis"){var o=eS(e,i,a);if(!(o!=null&&o[0]===0&&o[1]===0))return o}},CC=j([xe],e=>e.allowDataOverflow),bf=e=>{var t;if(e==null||!("domain"in e))return Ru;if(e.domain!=null)return e.domain;if("ticks"in e&&e.ticks!=null){if(e.type==="number"){var r=Jt(e.ticks);return[Math.min(...r),Math.max(...r)]}if(e.type==="category")return e.ticks.map(String)}return(t=e?.domain)!==null&&t!==void 0?t:Ru},xf=j([xe],bf),wf=j([xf,CC],n0),IC=j([to,nr,pe,wf],T0,{memoizeOptions:{resultEqualityCheck:Zo}}),el=e=>e.errorBars,TC=(e,t,r)=>e.flatMap(n=>t[n.id]).filter(Boolean).filter(n=>C0(r,n)),ro=function(){for(var t=arguments.length,r=new Array(t),n=0;n{var a,o;if(r.length>0&&e.forEach(l=>{r.forEach(s=>{var u,c,f=(u=n[s.id])===null||u===void 0?void 0:u.filter(g=>C0(i,g)),d=ne(l,(c=t.dataKey)!==null&&c!==void 0?c:s.dataKey),p=kC(l,d,f);if(p.length>=2){var h=Math.min(...p),y=Math.max(...p);(a==null||ho)&&(o=y)}var m=Lh(d);m!=null&&(a=a==null?m[0]:Math.min(a,m[0]),o=o==null?m[1]:Math.max(o,m[1]))})}),t?.dataKey!=null&&e.forEach(l=>{var s=Lh(ne(l,t.dataKey));s!=null&&(a=a==null?s[0]:Math.min(a,s[0]),o=o==null?s[1]:Math.max(o,s[1]))}),H(a)&&H(o))return[a,o]},MC=j([yf,xe,EC,el,pe],Pf,{memoizeOptions:{resultEqualityCheck:Zo}});function DC(e){var{value:t}=e;if(Tt(t)||t instanceof Date)return t}var NC=(e,t,r)=>{var n=e.map(DC).filter(i=>i!=null);return r&&(t.dataKey==null||t.allowDuplicatedCategory&&Zy(n))?Pb(0,e.length):t.allowDuplicatedCategory?n:Array.from(new Set(n))},M0=e=>e.referenceElements.dots,jn=(e,t,r)=>e.filter(n=>n.ifOverflow==="extendDomain").filter(n=>t==="xAxis"?n.xAxisId===r:n.yAxisId===r),RC=j([M0,pe,Ei],jn),D0=e=>e.referenceElements.areas,$C=j([D0,pe,Ei],jn),N0=e=>e.referenceElements.lines,LC=j([N0,pe,Ei],jn),R0=(e,t)=>{if(e!=null){var r=Jt(e.map(n=>t==="xAxis"?n.x:n.y));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},zC=j(RC,pe,R0),$0=(e,t)=>{if(e!=null){var r=Jt(e.flatMap(n=>[t==="xAxis"?n.x1:n.y1,t==="xAxis"?n.x2:n.y2]));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},BC=j([$C,pe],$0);function FC(e){var t;if(e.x!=null)return Jt([e.x]);var r=(t=e.segment)===null||t===void 0?void 0:t.map(n=>n.x);return r==null||r.length===0?[]:Jt(r)}function WC(e){var t;if(e.y!=null)return Jt([e.y]);var r=(t=e.segment)===null||t===void 0?void 0:t.map(n=>n.y);return r==null||r.length===0?[]:Jt(r)}var L0=(e,t)=>{if(e!=null){var r=e.flatMap(n=>t==="xAxis"?FC(n):WC(n));if(r.length!==0)return[Math.min(...r),Math.max(...r)]}},KC=j([LC,pe],L0),qC=j(zC,KC,BC,(e,t,r)=>ro(e,r,t)),Of=(e,t,r,n,i,a,o,l)=>{if(r!=null)return r;var s=o==="vertical"&&l==="xAxis"||o==="horizontal"&&l==="yAxis",u=s?ro(n,a,i):ro(a,i);return rC(t,u,e.allowDataOverflow)},UC=j([xe,xf,wf,IC,MC,qC,J,pe],Of,{memoizeOptions:{resultEqualityCheck:Zo}}),GC=[0,1],Af=(e,t,r,n,i,a,o)=>{if(!((e==null||r==null||r.length===0)&&o===void 0)){var{dataKey:l,type:s}=e,u=At(t,a);if(u&&l==null){var c;return Pb(0,(c=r?.length)!==null&&c!==void 0?c:0)}return s==="category"?NC(n,e,u):i==="expand"?GC:o}},Sf=j([xe,J,yf,Qo,Si,pe,UC],Af);function VC(e){return e in Un}var z0=(e,t,r)=>{if(e!=null){var{scale:n,type:i}=e;if(n==="auto")return i==="category"&&r&&(r.indexOf("LineChart")>=0||r.indexOf("AreaChart")>=0||r.indexOf("ComposedChart")>=0&&!t)?"point":i==="category"?"band":"linear";if(typeof n=="string"){var a="scale".concat(vi(n));return VC(a)?a:"point"}}},Ar=j([xe,j0,of],z0);function Ef(e,t,r,n){if(!(r==null||n==null))return typeof e.scale=="function"?Rh(e.scale,r,n):Rh(t,r,n)}var jf=(e,t,r)=>{var n=bf(t);if(!(r!=="auto"&&r!=="linear")){if(t!=null&&t.tickCount&&Array.isArray(n)&&(n[0]==="auto"||n[1]==="auto")&&Zt(e))return lC(e,t.tickCount,t.allowDecimals);if(t!=null&&t.tickCount&&t.type==="number"&&Zt(e))return sC(e,t.tickCount,t.allowDecimals)}},kf=j([Sf,En,Ar],jf),_f=(e,t,r,n)=>{if(n!=="angleAxis"&&e?.type==="number"&&Zt(t)&&Array.isArray(r)&&r.length>0){var i,a,o=t[0],l=(i=r[0])!==null&&i!==void 0?i:0,s=t[1],u=(a=r[r.length-1])!==null&&a!==void 0?a:0;return[Math.min(o,l),Math.max(s,u)]}return t},HC=j([xe,Sf,kf,pe],_f),YC=j(Qo,xe,(e,t)=>{if(!(!t||t.type!=="number")){var r=1/0,n=Array.from(Jt(e.map(f=>f.value))).sort((f,d)=>f-d),i=n[0],a=n[n.length-1];if(i==null||a==null)return 1/0;var o=a-i;if(o===0)return 1/0;for(var l=0;li,(e,t,r,n,i)=>{if(!H(e))return 0;var a=t==="vertical"?n.height:n.width;if(i==="gap")return e*a/2;if(i==="no-gap"){var o=Ue(r,e*a),l=e*a/2;return l-o-(l-o)/a*o}return 0}),XC=(e,t,r)=>{var n=ir(e,t);return n==null||typeof n.padding!="string"?0:B0(e,"xAxis",t,r,n.padding)},ZC=(e,t,r)=>{var n=ar(e,t);return n==null||typeof n.padding!="string"?0:B0(e,"yAxis",t,r,n.padding)},JC=j(ir,XC,(e,t)=>{var r,n;if(e==null)return{left:0,right:0};var{padding:i}=e;return typeof i=="string"?{left:t,right:t}:{left:((r=i.left)!==null&&r!==void 0?r:0)+t,right:((n=i.right)!==null&&n!==void 0?n:0)+t}}),QC=j(ar,ZC,(e,t)=>{var r,n;if(e==null)return{top:0,bottom:0};var{padding:i}=e;return typeof i=="string"?{top:t,bottom:t}:{top:((r=i.top)!==null&&r!==void 0?r:0)+t,bottom:((n=i.bottom)!==null&&n!==void 0?n:0)+t}}),eI=j([_e,JC,Do,Mo,(e,t,r)=>r],(e,t,r,n,i)=>{var{padding:a}=n;return i?[a.left,r.width-a.right]:[e.left+t.left,e.left+e.width-t.right]}),tI=j([_e,J,QC,Do,Mo,(e,t,r)=>r],(e,t,r,n,i,a)=>{var{padding:o}=i;return a?[n.height-o.bottom,o.top]:t==="horizontal"?[e.top+e.height-r.bottom,e.top+r.top]:[e.top+r.top,e.top+e.height-r.bottom]}),Ci=(e,t,r,n)=>{var i;switch(t){case"xAxis":return eI(e,r,n);case"yAxis":return tI(e,r,n);case"zAxis":return(i=df(e,r))===null||i===void 0?void 0:i.range;case"angleAxis":return x0(e);case"radiusAxis":return w0(e,r);default:return}},F0=j([xe,Ci],Go),rI=j([Ar,HC],A0),tl=j([xe,Ar,rI,F0],Ef);j([ki,el,pe],TC);function W0(e,t){return e.idt.id?1:0}var rl=(e,t)=>t,nl=(e,t,r)=>r,nI=j(Io,rl,nl,(e,t,r)=>e.filter(n=>n.orientation===t).filter(n=>n.mirror===r).sort(W0)),iI=j(To,rl,nl,(e,t,r)=>e.filter(n=>n.orientation===t).filter(n=>n.mirror===r).sort(W0)),K0=(e,t)=>({width:e.width,height:t.height}),aI=(e,t)=>{var r=typeof t.width=="number"?t.width:yi;return{width:r,height:e.height}},q0=j(_e,ir,K0),oI=(e,t,r)=>{switch(t){case"top":return e.top;case"bottom":return r-e.bottom;default:return 0}},lI=(e,t,r)=>{switch(t){case"left":return e.left;case"right":return r-e.right;default:return 0}},sI=j(tr,_e,nI,rl,nl,(e,t,r,n,i)=>{var a={},o;return r.forEach(l=>{var s=K0(t,l);o==null&&(o=oI(t,n,e));var u=n==="top"&&!i||n==="bottom"&&i;a[l.id]=o-Number(u)*s.height,o+=(u?-1:1)*s.height}),a}),uI=j(er,_e,iI,rl,nl,(e,t,r,n,i)=>{var a={},o;return r.forEach(l=>{var s=aI(t,l);o==null&&(o=lI(t,n,e));var u=n==="left"&&!i||n==="right"&&i;a[l.id]=o-Number(u)*s.width,o+=(u?-1:1)*s.width}),a}),cI=(e,t)=>{var r=ir(e,t);if(r!=null)return sI(e,r.orientation,r.mirror)},fI=j([_e,ir,cI,(e,t)=>t],(e,t,r,n)=>{if(t!=null){var i=r?.[n];return i==null?{x:e.left,y:0}:{x:e.left,y:i}}}),dI=(e,t)=>{var r=ar(e,t);if(r!=null)return uI(e,r.orientation,r.mirror)},vI=j([_e,ar,dI,(e,t)=>t],(e,t,r,n)=>{if(t!=null){var i=r?.[n];return i==null?{x:0,y:e.top}:{x:i,y:e.top}}}),U0=j(_e,ar,(e,t)=>{var r=typeof t.width=="number"?t.width:yi;return{width:r,height:e.height}}),zh=(e,t,r)=>{switch(t){case"xAxis":return q0(e,r).width;case"yAxis":return U0(e,r).height;default:return}},G0=(e,t,r,n)=>{if(r!=null){var{allowDuplicatedCategory:i,type:a,dataKey:o}=r,l=At(e,n),s=t.map(u=>u.value);if(o&&l&&a==="category"&&i&&Zy(s))return s}},Cf=j([J,Qo,xe,pe],G0),V0=(e,t,r,n)=>{if(!(r==null||r.dataKey==null)){var{type:i,scale:a}=r,o=At(e,n);if(o&&(i==="number"||a!=="auto"))return t.map(l=>l.value)}},If=j([J,Qo,En,pe],V0),Bh=j([J,AC,Ar,tl,Cf,If,Ci,kf,pe],(e,t,r,n,i,a,o,l,s)=>{if(t!=null){var u=At(e,s);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:s,categoricalDomain:a,duplicateDomain:i,isCategorical:u,niceTicks:l,range:o,realScaleType:r,scale:n}}}),pI=(e,t,r,n,i,a,o,l,s)=>{if(!(t==null||n==null)){var u=At(e,s),{type:c,ticks:f,tickCount:d}=t,p=r==="scaleBand"&&typeof n.bandwidth=="function"?n.bandwidth()/2:2,h=c==="category"&&n.bandwidth?n.bandwidth()/p:0;h=s==="angleAxis"&&a!=null&&a.length>=2?$e(a[0]-a[1])*2*h:h;var y=f||i;return y?y.map((m,g)=>{var w=o?o.indexOf(m):m,b=n.map(w);return H(b)?{index:g,coordinate:b+h,value:m,offset:h}:null}).filter(Qe):u&&l?l.map((m,g)=>{var w=n.map(m);return H(w)?{coordinate:w+h,value:m,index:g,offset:h}:null}).filter(Qe):n.ticks?n.ticks(d).map((m,g)=>{var w=n.map(m);return H(w)?{coordinate:w+h,value:m,index:g,offset:h}:null}).filter(Qe):n.domain().map((m,g)=>{var w=n.map(m);return H(w)?{coordinate:w+h,value:o?o[m]:m,index:g,offset:h}:null}).filter(Qe)}},H0=j([J,En,Ar,tl,kf,Ci,Cf,If,pe],pI),hI=(e,t,r,n,i,a,o)=>{if(!(t==null||r==null||n==null||n[0]===n[1])){var l=At(e,o),{tickCount:s}=t,u=0;return u=o==="angleAxis"&&n?.length>=2?$e(n[0]-n[1])*2*u:u,l&&a?a.map((c,f)=>{var d=r.map(c);return H(d)?{coordinate:d+u,value:c,index:f,offset:u}:null}).filter(Qe):r.ticks?r.ticks(s).map((c,f)=>{var d=r.map(c);return H(d)?{coordinate:d+u,value:c,index:f,offset:u}:null}).filter(Qe):r.domain().map((c,f)=>{var d=r.map(c);return H(d)?{coordinate:d+u,value:i?i[c]:c,index:f,offset:u}:null}).filter(Qe)}},Nt=j([J,En,tl,Ci,Cf,If,pe],hI),Rt=j(xe,tl,(e,t)=>{if(!(e==null||t==null))return eo(eo({},e),{},{scale:t})}),mI=j([xe,Ar,Sf,F0],Ef);j((e,t,r)=>df(e,r),mI,(e,t)=>{if(!(e==null||t==null))return eo(eo({},e),{},{scale:t})});var yI=j([J,Io,To],(e,t,r)=>{switch(e){case"horizontal":return t.some(n=>n.reversed)?"right-to-left":"left-to-right";case"vertical":return r.some(n=>n.reversed)?"bottom-to-top":"top-to-bottom";case"centric":case"radial":return"left-to-right";default:return}}),Y0=e=>e.options.defaultTooltipEventType,X0=e=>e.options.validateTooltipEventTypes;function Z0(e,t,r){if(e==null)return t;var n=e?"axis":"item";return r==null?t:r.includes(n)?n:t}function Tf(e,t){var r=Y0(e),n=X0(e);return Z0(t,r,n)}function gI(e){return z(t=>Tf(t,e))}var J0=(e,t)=>{var r,n=Number(t);if(!(wt(n)||t==null))return n>=0?e==null||(r=e[n])===null||r===void 0?void 0:r.value:void 0},bI=e=>e.tooltip.settings,fr={active:!1,index:null,dataKey:void 0,graphicalItemId:void 0,coordinate:void 0},xI={itemInteraction:{click:fr,hover:fr},axisInteraction:{click:fr,hover:fr},keyboardInteraction:fr,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}},Q0=tt({name:"tooltip",initialState:xI,reducers:{addTooltipEntrySettings:{reducer(e,t){e.tooltipItemPayloads.push(t.payload)},prepare:ce()},replaceTooltipEntrySettings:{reducer(e,t){var{prev:r,next:n}=t.payload,i=xt(e).tooltipItemPayloads.indexOf(r);i>-1&&(e.tooltipItemPayloads[i]=n)},prepare:ce()},removeTooltipEntrySettings:{reducer(e,t){var r=xt(e).tooltipItemPayloads.indexOf(t.payload);r>-1&&e.tooltipItemPayloads.splice(r,1)},prepare:ce()},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:wI,replaceTooltipEntrySettings:PI,removeTooltipEntrySettings:OI,setTooltipSettingsState:AI,setActiveMouseOverItemIndex:ex,mouseLeaveItem:SI,mouseLeaveChart:tx,setActiveClickItemIndex:EI,setMouseOverAxisIndex:rx,setMouseClickAxisIndex:jI,setSyncInteraction:$u,setKeyboardInteraction:Lu}=Q0.actions,kI=Q0.reducer;function Fh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Zi(e){for(var t=1;t{if(t==null)return fr;var i=TI(e,t,r);if(i==null)return fr;if(i.active)return i;if(e.keyboardInteraction.active)return e.keyboardInteraction;if(e.syncInteraction.active&&e.syncInteraction.index!=null)return e.syncInteraction;var a=e.settings.active===!0;if(MI(i)){if(a)return Zi(Zi({},i),{},{active:!0})}else if(n!=null)return{active:!0,coordinate:void 0,dataKey:void 0,index:n,graphicalItemId:void 0};return Zi(Zi({},fr),{},{coordinate:i.coordinate})};function DI(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 r=Number(e);return Number.isFinite(r)?r:void 0}function NI(e,t){var r=DI(e),n=t[0],i=t[1];if(r===void 0)return!1;var a=Math.min(n,i),o=Math.max(n,i);return r>=a&&r<=o}function RI(e,t,r){if(r==null||t==null)return!0;var n=ne(e,t);return n==null||!Zt(r)?!0:NI(n,r)}var Mf=(e,t,r,n)=>{var i=e?.index;if(i==null)return null;var a=Number(i);if(!H(a))return i;var o=0,l=1/0;t.length>0&&(l=t.length-1);var s=Math.max(o,Math.min(a,l)),u=t[s];return u==null||RI(u,r,n)?String(s):null},ix=(e,t,r,n,i,a,o)=>{if(a!=null){var l=o[0],s=l?.getPosition(a);if(s!=null)return s;var u=i?.[Number(a)];if(u)return r==="horizontal"?{x:u.coordinate,y:(n.top+t)/2}:{x:(n.left+e)/2,y:u.coordinate}}},ax=(e,t,r,n)=>{if(t==="axis")return e.tooltipItemPayloads;if(e.tooltipItemPayloads.length===0)return[];var i;if(r==="hover"?i=e.itemInteraction.hover.graphicalItemId:i=e.itemInteraction.click.graphicalItemId,i==null&&n!=null){var a=e.tooltipItemPayloads[0];return a!=null?[a]:[]}return e.tooltipItemPayloads.filter(o=>{var l;return((l=o.settings)===null||l===void 0?void 0:l.graphicalItemId)===i})},ox=e=>e.options.tooltipPayloadSearcher,kn=e=>e.tooltip;function Wh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Kh(e){for(var t=1;t{if(!(t==null||a==null)){var{chartData:l,computedData:s,dataStartIndex:u,dataEndIndex:c}=r,f=[];return e.reduce((d,p)=>{var h,{dataDefinedOnItem:y,settings:m}=p,g=BI(y,l),w=Array.isArray(g)?qg(g,u,c):g,b=(h=m?.dataKey)!==null&&h!==void 0?h:n,P=m?.nameKey,x;if(n&&Array.isArray(w)&&!Array.isArray(w[0])&&o==="axis"?x=Jy(w,n,i):x=a(w,t,s,P),Array.isArray(x))x.forEach(S=>{var A=Kh(Kh({},m),{},{name:S.name,unit:S.unit,color:void 0,fill:void 0});d.push(Fv({tooltipEntrySettings:A,dataKey:S.dataKey,payload:S.payload,value:ne(S.payload,S.dataKey),name:S.name}))});else{var O;d.push(Fv({tooltipEntrySettings:m,dataKey:b,payload:x,value:ne(x,b),name:(O=ne(x,P))!==null&&O!==void 0?O:m?.name}))}return d},f)}},Df=j([Ie,j0,of],z0),FI=j([e=>e.graphicalItems.cartesianItems,e=>e.graphicalItems.polarItems],(e,t)=>[...e,...t]),WI=j([Be,Sn],vf),_n=j([FI,Ie,WI],pf,{memoizeOptions:{resultEqualityCheck:Jo}}),KI=j([_n],e=>e.filter(Xo)),qI=j([_n],hf,{memoizeOptions:{resultEqualityCheck:Jo}}),Cn=j([qI,nr],mf),UI=j([KI,nr,Ie],O0),Nf=j([Cn,Ie,_n],gf),sx=j([Ie],bf),GI=j([Ie],e=>e.allowDataOverflow),ux=j([sx,GI],n0),VI=j([_n],e=>e.filter(Xo)),HI=j([UI,VI,Si,m0],I0),YI=j([HI,nr,Be,ux],T0),XI=j([_n],_0),ZI=j([Cn,Ie,XI,el,Be],Pf,{memoizeOptions:{resultEqualityCheck:Zo}}),JI=j([M0,Be,Sn],jn),QI=j([JI,Be],R0),eT=j([D0,Be,Sn],jn),tT=j([eT,Be],$0),rT=j([N0,Be,Sn],jn),nT=j([rT,Be],L0),iT=j([QI,nT,tT],ro),aT=j([Ie,sx,ux,YI,ZI,iT,J,Be],Of),Ii=j([Ie,J,Cn,Nf,Si,Be,aT],Af),oT=j([Ii,Ie,Df],jf),lT=j([Ie,Ii,oT,Be],_f),cx=e=>{var t=Be(e),r=Sn(e),n=!1;return Ci(e,t,r,n)},fx=j([Ie,cx],Go),dx=j([Ie,Df,lT,fx],Ef),sT=j([J,Nf,Ie,Be],G0),uT=j([J,Nf,Ie,Be],V0),cT=(e,t,r,n,i,a,o,l)=>{if(t){var{type:s}=t,u=At(e,l);if(n){var c=r==="scaleBand"&&n.bandwidth?n.bandwidth()/2:2,f=s==="category"&&n.bandwidth?n.bandwidth()/c:0;return f=l==="angleAxis"&&i!=null&&i?.length>=2?$e(i[0]-i[1])*2*f:f,u&&o?o.map((d,p)=>{var h=n.map(d);return H(h)?{coordinate:h+f,value:d,index:p,offset:f}:null}).filter(Qe):n.domain().map((d,p)=>{var h=n.map(d);return H(h)?{coordinate:h+f,value:a?a[d]:d,index:p,offset:f}:null}).filter(Qe)}}},or=j([J,Ie,Df,dx,cx,sT,uT,Be],cT),Rf=j([Y0,X0,bI],(e,t,r)=>Z0(r.shared,e,t)),vx=e=>e.tooltip.settings.trigger,$f=e=>e.tooltip.settings.defaultIndex,Ti=j([kn,Rf,vx,$f],nx),mr=j([Ti,Cn,_i,Ii],Mf),px=j([or,mr],J0),Lf=j([Ti],e=>{if(e)return e.dataKey}),fT=j([Ti],e=>{if(e)return e.graphicalItemId}),hx=j([kn,Rf,vx,$f],ax),dT=j([er,tr,J,_e,or,$f,hx],ix),vT=j([Ti,dT],(e,t)=>e!=null&&e.coordinate?e.coordinate:t),pT=j([Ti],e=>{var t;return(t=e?.active)!==null&&t!==void 0?t:!1}),hT=j([hx,mr,nr,_i,px,ox,Rf],lx),mT=j([hT],e=>{if(e!=null){var t=e.map(r=>r.payload).filter(r=>r!=null);return Array.from(new Set(t))}});function qh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Uh(e){for(var t=1;tz(Ie),wT=()=>{var e=xT(),t=z(or),r=z(dx);return hr(!e||!r?void 0:Uh(Uh({},e),{},{scale:r}),t)};function Gh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function an(e){for(var t=1;t{var i=t.find(a=>a&&a.index===r);if(i){if(e==="horizontal")return{x:i.coordinate,y:n.chartY};if(e==="vertical")return{x:n.chartX,y:i.coordinate}}return{x:0,y:0}},ET=(e,t,r,n)=>{var i=t.find(u=>u&&u.index===r);if(i){if(e==="centric"){var a=i.coordinate,{radius:o}=n;return an(an(an({},n),Ae(n.cx,n.cy,o,a)),{},{angle:a,radius:o})}var l=i.coordinate,{angle:s}=n;return an(an(an({},n),Ae(n.cx,n.cy,l,s)),{},{angle:s,radius:l})}return{angle:0,clockWise:!1,cx:0,cy:0,endAngle:0,innerRadius:0,outerRadius:0,radius:0,startAngle:0,x:0,y:0}};function jT(e,t){var{chartX:r,chartY:n}=e;return r>=t.left&&r<=t.left+t.width&&n>=t.top&&n<=t.top+t.height}var mx=(e,t,r,n,i)=>{var a,o=(a=t?.length)!==null&&a!==void 0?a:0;if(o<=1||e==null)return 0;if(n==="angleAxis"&&i!=null&&Math.abs(Math.abs(i[1]-i[0])-360)<=1e-6)for(var l=0;l0?(s=r[l-1])===null||s===void 0?void 0:s.coordinate:(u=r[o-1])===null||u===void 0?void 0:u.coordinate,h=(c=r[l])===null||c===void 0?void 0:c.coordinate,y=l>=o-1?(f=r[0])===null||f===void 0?void 0:f.coordinate:(d=r[l+1])===null||d===void 0?void 0:d.coordinate,m=void 0;if(!(p==null||h==null||y==null))if($e(h-p)!==$e(y-h)){var g=[];if($e(y-h)===$e(i[1]-i[0])){m=y;var w=h+i[1]-i[0];g[0]=Math.min(w,(w+p)/2),g[1]=Math.max(w,(w+p)/2)}else{m=p;var b=y+i[1]-i[0];g[0]=Math.min(h,(b+h)/2),g[1]=Math.max(h,(b+h)/2)}var P=[Math.min(h,(m+h)/2),Math.max(h,(m+h)/2)];if(e>P[0]&&e<=P[1]||e>=g[0]&&e<=g[1]){var x;return(x=r[l])===null||x===void 0?void 0:x.index}}else{var O=Math.min(p,y),S=Math.max(p,y);if(e>(O+h)/2&&e<=(S+h)/2){var A;return(A=r[l])===null||A===void 0?void 0:A.index}}}else if(t)for(var _=0;_(M.coordinate+k.coordinate)/2||_>0&&_(M.coordinate+k.coordinate)/2&&e<=(M.coordinate+I.coordinate)/2)return M.index}}return-1},yx=()=>z(of),zf=(e,t)=>t,gx=(e,t,r)=>r,Bf=(e,t,r,n)=>n,kT=j(or,e=>wo(e,t=>t.coordinate)),Ff=j([kn,zf,gx,Bf],nx),Wf=j([Ff,Cn,_i,Ii],Mf),_T=(e,t,r)=>{if(t!=null){var n=kn(e);return t==="axis"?r==="hover"?n.axisInteraction.hover.dataKey:n.axisInteraction.click.dataKey:r==="hover"?n.itemInteraction.hover.dataKey:n.itemInteraction.click.dataKey}},bx=j([kn,zf,gx,Bf],ax),no=j([er,tr,J,_e,or,Bf,bx],ix),CT=j([Ff,no],(e,t)=>{var r;return(r=e.coordinate)!==null&&r!==void 0?r:t}),xx=j([or,Wf],J0),IT=j([bx,Wf,nr,_i,xx,ox,zf],lx),TT=j([Ff,Wf],(e,t)=>({isActive:e.active&&t!=null,activeIndex:t})),MT=(e,t,r,n,i,a,o)=>{if(!(!e||!r||!n||!i)&&jT(e,o)){var l=tS(e,t),s=mx(l,a,i,r,n),u=ST(t,i,s,e);return{activeIndex:String(s),activeCoordinate:u}}},DT=(e,t,r,n,i,a,o)=>{if(!(!e||!n||!i||!a||!r)){var l=gj(e,r);if(l){var s=rS(l,t),u=mx(s,o,a,n,i),c=ET(t,a,u,l);return{activeIndex:String(u),activeCoordinate:c}}}},NT=(e,t,r,n,i,a,o,l)=>{if(!(!e||!t||!n||!i||!a))return t==="horizontal"||t==="vertical"?MT(e,t,n,i,a,o,l):DT(e,t,r,n,i,a,o)},RT=j(e=>e.zIndex.zIndexMap,(e,t)=>t,(e,t,r)=>r,(e,t,r)=>{if(t!=null){var n=e[t];if(n!=null)return r?n.panoramaElement:n.element}}),$T=j(e=>e.zIndex.zIndexMap,e=>{var t=Object.keys(e).map(n=>parseInt(n,10)).concat(Object.values(Oe)),r=Array.from(new Set(t));return r.sort((n,i)=>n-i)},{memoizeOptions:{resultEqualityCheck:gC}});function Vh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Hh(e){for(var t=1;tHh(Hh({},e),{},{[t]:{element:void 0,panoramaElement:void 0,consumers:0}}),FT)},KT=new Set(Object.values(Oe));function qT(e){return KT.has(e)}var wx=tt({name:"zIndex",initialState:WT,reducers:{registerZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]?e.zIndexMap[r].consumers+=1:e.zIndexMap[r]={consumers:1,element:void 0,panoramaElement:void 0}},prepare:ce()},unregisterZIndexPortal:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(e.zIndexMap[r].consumers-=1,e.zIndexMap[r].consumers<=0&&!qT(r)&&delete e.zIndexMap[r])},prepare:ce()},registerZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r,element:n,isPanorama:i}=t.payload;e.zIndexMap[r]?i?e.zIndexMap[r].panoramaElement=n:e.zIndexMap[r].element=n:e.zIndexMap[r]={consumers:0,element:i?void 0:n,panoramaElement:i?n:void 0}},prepare:ce()},unregisterZIndexPortalElement:{reducer:(e,t)=>{var{zIndex:r}=t.payload;e.zIndexMap[r]&&(t.payload.isPanorama?e.zIndexMap[r].panoramaElement=void 0:e.zIndexMap[r].element=void 0)},prepare:ce()}}}),{registerZIndexPortal:UT,unregisterZIndexPortal:GT,registerZIndexPortalElement:VT,unregisterZIndexPortalElement:HT}=wx.actions,YT=wx.reducer;function Ze(e){var{zIndex:t,children:r}=e,n=MS(),i=n&&t!==void 0&&t!==0,a=Le(),o=le();v.useLayoutEffect(()=>i?(o(UT({zIndex:t})),()=>{o(GT({zIndex:t}))}):br,[o,t,i]);var l=z(s=>RT(s,t,a));return i?l?lc.createPortal(r,l):null:r}function zu(){return zu=Object.assign?Object.assign.bind():function(e){for(var t=1;tv.useContext(Px),Ms={exports:{}},Xh;function nM(){return Xh||(Xh=1,(function(e){var t=Object.prototype.hasOwnProperty,r="~";function n(){}Object.create&&(n.prototype=Object.create(null),new n().__proto__||(r=!1));function i(s,u,c){this.fn=s,this.context=u,this.once=c||!1}function a(s,u,c,f,d){if(typeof c!="function")throw new TypeError("The listener must be a function");var p=new i(c,f||s,d),h=r?r+u:u;return s._events[h]?s._events[h].fn?s._events[h]=[s._events[h],p]:s._events[h].push(p):(s._events[h]=p,s._eventsCount++),s}function o(s,u){--s._eventsCount===0?s._events=new n:delete s._events[u]}function l(){this._events=new n,this._eventsCount=0}l.prototype.eventNames=function(){var u=[],c,f;if(this._eventsCount===0)return u;for(f in c=this._events)t.call(c,f)&&u.push(r?f.slice(1):f);return Object.getOwnPropertySymbols?u.concat(Object.getOwnPropertySymbols(c)):u},l.prototype.listeners=function(u){var c=r?r+u:u,f=this._events[c];if(!f)return[];if(f.fn)return[f.fn];for(var d=0,p=f.length,h=new Array(p);d{if(t&&Array.isArray(e)){var r=Number.parseInt(t,10);if(!wt(r))return e[r]}},oM={chartName:"",tooltipPayloadSearcher:()=>{},eventEmitter:void 0,defaultTooltipEventType:"axis"},Ox=tt({name:"options",initialState:oM,reducers:{createEventEmitter:e=>{e.eventEmitter==null&&(e.eventEmitter=Symbol("rechartsEventEmitter"))}}}),lM=Ox.reducer,{createEventEmitter:sM}=Ox.actions;function uM(e){return e.tooltip.syncInteraction}var cM={chartData:void 0,computedData:void 0,dataStartIndex:0,dataEndIndex:0},Ax=tt({name:"chartData",initialState:cM,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:r,endIndex:n}=t.payload;r!=null&&(e.dataStartIndex=r),n!=null&&(e.dataEndIndex=n)}}}),{setChartData:Jh,setDataStartEndIndexes:fM,setComputedData:uW}=Ax.actions,dM=Ax.reducer,vM=["x","y"];function Qh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function on(e){for(var t=1;ts.rootProps.className);v.useEffect(()=>{if(e==null)return br;var s=(u,c,f)=>{if(t!==f&&e===u){if(n==="index"){var d;if(o&&c!==null&&c!==void 0&&(d=c.payload)!==null&&d!==void 0&&d.coordinate&&c.payload.sourceViewBox){var p=c.payload.coordinate,{x:h,y}=p,m=yM(p,vM),{x:g,y:w,width:b,height:P}=c.payload.sourceViewBox,x=on(on({},m),{},{x:o.x+(b?(h-g)/b:0)*o.width,y:o.y+(P?(y-w)/P:0)*o.height});r(on(on({},c),{},{payload:on(on({},c.payload),{},{coordinate:x})}))}else r(c);return}if(i!=null){var O;if(typeof n=="function"){var S={activeTooltipIndex:c.payload.index==null?void 0:Number(c.payload.index),isTooltipActive:c.payload.active,activeIndex:c.payload.index==null?void 0:Number(c.payload.index),activeLabel:c.payload.label,activeDataKey:c.payload.dataKey,activeCoordinate:c.payload.coordinate},A=n(i,S);O=i[A]}else n==="value"&&(O=i.find(K=>String(K.value)===c.payload.label));var{coordinate:_}=c.payload;if(O==null||c.payload.active===!1||_==null||o==null){r($u({active:!1,coordinate:void 0,dataKey:void 0,index:null,label:void 0,sourceViewBox:void 0,graphicalItemId:void 0}));return}var{x:M,y:I}=_,k=Math.min(M,o.x+o.width),$=Math.min(I,o.y+o.height),R={x:a==="horizontal"?O.coordinate:k,y:a==="horizontal"?$:O.coordinate},W=$u({active:c.payload.active,coordinate:R,dataKey:c.payload.dataKey,index:String(O.index),label:c.payload.label,sourceViewBox:c.payload.sourceViewBox,graphicalItemId:c.payload.graphicalItemId});r(W)}}};return ci.on(Bu,s),()=>{ci.off(Bu,s)}},[l,r,t,e,n,i,a,o])}function xM(){var e=z(lf),t=z(sf),r=le();v.useEffect(()=>{if(e==null)return br;var n=(i,a,o)=>{t!==o&&e===i&&r(fM(a))};return ci.on(Zh,n),()=>{ci.off(Zh,n)}},[r,t,e])}function wM(){var e=le();v.useEffect(()=>{e(sM())},[e]),bM(),xM()}function PM(e,t,r,n,i,a){var o=z(p=>_T(p,e,t)),l=z(sf),s=z(lf),u=z(y0),c=z(uM),f=c?.active,d=No();v.useEffect(()=>{if(!f&&s!=null&&l!=null){var p=$u({active:a,coordinate:r,dataKey:o,index:i,label:typeof n=="number"?String(n):n,sourceViewBox:d,graphicalItemId:void 0});ci.emit(Bu,s,p,l)}},[f,r,o,i,n,l,s,u,a,d])}function em(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function tm(e){for(var t=1;t{S(AI({shared:w,trigger:b,axisId:O,active:i,defaultIndex:A}))},[S,w,b,O,i,A]);var _=No(),M=db(),I=gI(w),{activeIndex:k,isActive:$}=(t=z(Ee=>TT(Ee,I,b,A)))!==null&&t!==void 0?t:{},R=z(Ee=>IT(Ee,I,b,A)),W=z(Ee=>xx(Ee,I,b,A)),K=z(Ee=>CT(Ee,I,b,A)),q=R,Y=rM(),U=(r=i??$)!==null&&r!==void 0?r:!1,[D,ue]=pg([q,U]),we=I==="axis"?W:void 0;PM(I,b,K,we,k,U);var Je=x??Y;if(Je==null||_==null||I==null)return null;var Te=q??rm;U||(Te=rm),u&&Te.length&&(Te=ug(Te.filter(Ee=>Ee.value!=null&&(Ee.hide!==!0||n.includeHidden)),d,EM));var ve=Te.length>0,Pe=v.createElement(gE,{allowEscapeViewBox:a,animationDuration:o,animationEasing:l,isAnimationActive:c,active:U,coordinate:K,hasPayload:ve,offset:f,position:p,reverseDirection:h,useTranslate3d:y,viewBox:_,wrapperStyle:m,lastBoundingBox:D,innerRef:ue,hasPortalFromProps:!!x},jM(s,tm(tm({},n),{},{payload:Te,label:we,active:U,activeIndex:k,coordinate:K,accessibilityLayer:M})));return v.createElement(v.Fragment,null,lc.createPortal(Pe,Je),U&&v.createElement(tM,{cursor:g,tooltipEventType:I,coordinate:K,payload:Te,index:k}))}var Mi=e=>null;Mi.displayName="Cell";function _M(e,t,r){return(t=CM(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function CM(e){var t=IM(e,"string");return typeof t=="symbol"?t:t+""}function IM(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}class TM{constructor(t){_M(this,"cache",new Map),this.maxSize=t}get(t){var r=this.cache.get(t);return r!==void 0&&(this.cache.delete(t),this.cache.set(t,r)),r}set(t,r){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.maxSize){var n=this.cache.keys().next().value;n!=null&&this.cache.delete(n)}this.cache.set(t,r)}clear(){this.cache.clear()}size(){return this.cache.size}}function nm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function MM(e){for(var t=1;t{try{var r=document.getElementById(am);r||(r=document.createElement("span"),r.setAttribute("id",am),r.setAttribute("aria-hidden","true"),document.body.appendChild(r)),Object.assign(r.style,LM,t),r.textContent="".concat(e);var n=r.getBoundingClientRect();return{width:n.width,height:n.height}}catch{return{width:0,height:0}}},Xn=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||xi.isSsr)return{width:0,height:0};if(!Sx.enableCache)return om(t,r);var n=zM(t,r),i=im.get(n);if(i)return i;var a=om(t,r);return im.set(n,a),a},Ex;function BM(e,t,r){return(t=FM(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function FM(e){var t=WM(e,"string");return typeof t=="symbol"?t:t+""}function WM(e,t){if(typeof e!="object"||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t);if(typeof n!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var lm=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,sm=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,KM=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,qM=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,UM={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},GM=["cm","mm","pt","pc","in","Q","px"];function VM(e){return GM.includes(e)}var un="NaN";function HM(e,t){return e*UM[t]}class We{static parse(t){var r,[,n,i]=(r=qM.exec(t))!==null&&r!==void 0?r:[];return n==null?We.NaN:new We(parseFloat(n),i??"")}constructor(t,r){this.num=t,this.unit=r,this.num=t,this.unit=r,wt(t)&&(this.unit=""),r!==""&&!KM.test(r)&&(this.num=NaN,this.unit=""),VM(r)&&(this.num=HM(t,r),this.unit="px")}add(t){return this.unit!==t.unit?new We(NaN,""):new We(this.num+t.num,this.unit)}subtract(t){return this.unit!==t.unit?new We(NaN,""):new We(this.num-t.num,this.unit)}multiply(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new We(NaN,""):new We(this.num*t.num,this.unit||t.unit)}divide(t){return this.unit!==""&&t.unit!==""&&this.unit!==t.unit?new We(NaN,""):new We(this.num/t.num,this.unit||t.unit)}toString(){return"".concat(this.num).concat(this.unit)}isNaN(){return wt(this.num)}}Ex=We;BM(We,"NaN",new Ex(NaN,""));function jx(e){if(e==null||e.includes(un))return un;for(var t=e;t.includes("*")||t.includes("/");){var r,[,n,i,a]=(r=lm.exec(t))!==null&&r!==void 0?r:[],o=We.parse(n??""),l=We.parse(a??""),s=i==="*"?o.multiply(l):o.divide(l);if(s.isNaN())return un;t=t.replace(lm,s.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var u,[,c,f,d]=(u=sm.exec(t))!==null&&u!==void 0?u:[],p=We.parse(c??""),h=We.parse(d??""),y=f==="+"?p.add(h):p.subtract(h);if(y.isNaN())return un;t=t.replace(sm,y.toString())}return t}var um=/\(([^()]*)\)/;function YM(e){for(var t=e,r;(r=um.exec(t))!=null;){var[,n]=r;t=t.replace(um,jx(n))}return t}function XM(e){var t=e.replace(/\s+/g,"");return t=YM(t),t=jx(t),t}function ZM(e){try{return XM(e)}catch{return un}}function Ds(e){var t=ZM(e.slice(5,-1));return t===un?"":t}var JM=["x","y","lineHeight","capHeight","fill","scaleToFit","textAnchor","verticalAnchor"],QM=["dx","dy","angle","className","breakAll"];function Fu(){return Fu=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{children:t,breakAll:r,style:n}=e;try{var i=[];de(t)||(r?i=t.toString().split(""):i=t.toString().split(kx));var a=i.map(l=>({word:l,width:Xn(l,n).width})),o=r?0:Xn(" ",n).width;return{wordsWithComputedWidth:a,spaceWidth:o}}catch{return null}};function tD(e){return e==="start"||e==="middle"||e==="end"||e==="inherit"}var Cx=(e,t,r,n)=>e.reduce((i,a)=>{var{word:o,width:l}=a,s=i[i.length-1];if(s&&l!=null&&(t==null||n||s.width+l+re.reduce((t,r)=>t.width>r.width?t:r),rD="…",fm=(e,t,r,n,i,a,o,l)=>{var s=e.slice(0,t),u=_x({breakAll:r,style:n,children:s+rD});if(!u)return[!1,[]];var c=Cx(u.wordsWithComputedWidth,a,o,l),f=c.length>i||Ix(c).width>Number(a);return[f,c]},nD=(e,t,r,n,i)=>{var{maxLines:a,children:o,style:l,breakAll:s}=e,u=N(a),c=String(o),f=Cx(t,n,r,i);if(!u||i)return f;var d=f.length>a||Ix(f).width>Number(n);if(!d)return f;for(var p=0,h=c.length-1,y=0,m;p<=h&&y<=c.length-1;){var g=Math.floor((p+h)/2),w=g-1,[b,P]=fm(c,w,s,l,a,n,r,i),[x]=fm(c,g,s,l,a,n,r,i);if(!b&&!x&&(p=g+1),b&&x&&(h=g-1),!b&&x){m=P;break}y++}return m||f},dm=e=>{var t=de(e)?[]:e.toString().split(kx);return[{words:t,width:void 0}]},iD=e=>{var{width:t,scaleToFit:r,children:n,style:i,breakAll:a,maxLines:o}=e;if((t||r)&&!xi.isSsr){var l,s,u=_x({breakAll:a,children:n,style:i});if(u){var{wordsWithComputedWidth:c,spaceWidth:f}=u;l=c,s=f}else return dm(n);return nD({breakAll:a,children:n,maxLines:o,style:i},l,s,t,!!r)}return dm(n)},Tx="#808080",aD={angle:0,breakAll:!1,capHeight:"0.71em",fill:Tx,lineHeight:"1em",scaleToFit:!1,textAnchor:"start",verticalAnchor:"end",x:0,y:0},al=v.forwardRef((e,t)=>{var r=be(e,aD),{x:n,y:i,lineHeight:a,capHeight:o,fill:l,scaleToFit:s,textAnchor:u,verticalAnchor:c}=r,f=cm(r,JM),d=v.useMemo(()=>iD({breakAll:f.breakAll,children:f.children,maxLines:f.maxLines,scaleToFit:s,style:f.style,width:f.width}),[f.breakAll,f.children,f.maxLines,s,f.style,f.width]),{dx:p,dy:h,angle:y,className:m,breakAll:g}=f,w=cm(f,QM);if(!Tt(n)||!Tt(i)||d.length===0)return null;var b=Number(n)+(N(p)?p:0),P=Number(i)+(N(h)?h:0);if(!H(b)||!H(P))return null;var x;switch(c){case"start":x=Ds("calc(".concat(o,")"));break;case"middle":x=Ds("calc(".concat((d.length-1)/2," * -").concat(a," + (").concat(o," / 2))"));break;default:x=Ds("calc(".concat(d.length-1," * -").concat(a,")"));break}var O=[],S=d[0];if(s&&S!=null){var A=S.width,{width:_}=f;O.push("scale(".concat(N(_)&&N(A)?_/A:1,")"))}return y&&O.push("rotate(".concat(y,", ").concat(b,", ").concat(P,")")),O.length&&(w.transform=O.join(" ")),v.createElement("text",Fu({},Ge(w),{ref:t,x:b,y:P,className:Z("recharts-text",m),textAnchor:u,fill:l.includes("url")?Tx:l}),d.map((M,I)=>{var k=M.words.join(g?"":" ");return v.createElement("tspan",{x:b,dy:I===0?x:a,key:"".concat(k,"-").concat(I)},k)}))});al.displayName="Text";function vm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function jt(e){for(var t=1;t{var{viewBox:t,position:r,offset:n=0,parentViewBox:i}=e,{x:a,y:o,height:l,upperWidth:s,lowerWidth:u}=jc(t),c=a,f=a+(s-u)/2,d=(c+f)/2,p=(s+u)/2,h=c+s/2,y=l>=0?1:-1,m=y*n,g=y>0?"end":"start",w=y>0?"start":"end",b=s>=0?1:-1,P=b*n,x=b>0?"end":"start",O=b>0?"start":"end",S=i;if(r==="top"){var A={x:c+s/2,y:o-m,horizontalAnchor:"middle",verticalAnchor:g};return S&&(A.height=Math.max(o-S.y,0),A.width=s),A}if(r==="bottom"){var _={x:f+u/2,y:o+l+m,horizontalAnchor:"middle",verticalAnchor:w};return S&&(_.height=Math.max(S.y+S.height-(o+l),0),_.width=u),_}if(r==="left"){var M={x:d-P,y:o+l/2,horizontalAnchor:x,verticalAnchor:"middle"};return S&&(M.width=Math.max(M.x-S.x,0),M.height=l),M}if(r==="right"){var I={x:d+p+P,y:o+l/2,horizontalAnchor:O,verticalAnchor:"middle"};return S&&(I.width=Math.max(S.x+S.width-I.x,0),I.height=l),I}var k=S?{width:p,height:l}:{};return r==="insideLeft"?jt({x:d+P,y:o+l/2,horizontalAnchor:O,verticalAnchor:"middle"},k):r==="insideRight"?jt({x:d+p-P,y:o+l/2,horizontalAnchor:x,verticalAnchor:"middle"},k):r==="insideTop"?jt({x:c+s/2,y:o+m,horizontalAnchor:"middle",verticalAnchor:w},k):r==="insideBottom"?jt({x:f+u/2,y:o+l-m,horizontalAnchor:"middle",verticalAnchor:g},k):r==="insideTopLeft"?jt({x:c+P,y:o+m,horizontalAnchor:O,verticalAnchor:w},k):r==="insideTopRight"?jt({x:c+s-P,y:o+m,horizontalAnchor:x,verticalAnchor:w},k):r==="insideBottomLeft"?jt({x:f+P,y:o+l-m,horizontalAnchor:O,verticalAnchor:g},k):r==="insideBottomRight"?jt({x:f+u-P,y:o+l-m,horizontalAnchor:x,verticalAnchor:g},k):r&&typeof r=="object"&&(N(r.x)||Gr(r.x))&&(N(r.y)||Gr(r.y))?jt({x:a+Ue(r.x,p),y:o+Ue(r.y,l),horizontalAnchor:"end",verticalAnchor:"end"},k):jt({x:h,y:o+l/2,horizontalAnchor:"middle",verticalAnchor:"middle"},k)},cD=["labelRef"],fD=["content"];function pm(e,t){if(e==null)return{};var r,n,i=dD(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n{var{x:t,y:r,upperWidth:n,lowerWidth:i,width:a,height:o,children:l}=e,s=v.useMemo(()=>({x:t,y:r,upperWidth:n,lowerWidth:i,width:a,height:o}),[t,r,n,i,a,o]);return v.createElement(Mx.Provider,{value:s},l)},Dx=()=>{var e=v.useContext(Mx),t=No();return e||(t?jc(t):void 0)},yD=v.createContext(null),gD=()=>{var e=v.useContext(yD),t=z(P0);return e||t},bD=e=>{var{value:t,formatter:r}=e,n=de(e.children)?t:e.children;return typeof r=="function"?r(n):n},Kf=e=>e!=null&&typeof e=="function",xD=(e,t)=>{var r=$e(t-e),n=Math.min(Math.abs(t-e),360);return r*n},wD=(e,t,r,n,i)=>{var{offset:a,className:o}=e,{cx:l,cy:s,innerRadius:u,outerRadius:c,startAngle:f,endAngle:d,clockWise:p}=i,h=(u+c)/2,y=xD(f,d),m=y>=0?1:-1,g,w;switch(t){case"insideStart":g=f+m*a,w=p;break;case"insideEnd":g=d-m*a,w=!p;break;case"end":g=d+m*a,w=p;break;default:throw new Error("Unsupported position ".concat(t))}w=y<=0?w:!w;var b=Ae(l,s,h,g),P=Ae(l,s,h,g+(w?1:-1)*359),x="M".concat(b.x,",").concat(b.y,` + A`).concat(h,",").concat(h,",0,1,").concat(w?0:1,`, + `).concat(P.x,",").concat(P.y),O=de(e.id)?Zn("recharts-radial-line-"):e.id;return v.createElement("text",Ft({},n,{dominantBaseline:"central",className:Z("recharts-radial-bar-label",o)}),v.createElement("defs",null,v.createElement("path",{id:O,d:x})),v.createElement("textPath",{xlinkHref:"#".concat(O)},r))},PD=(e,t,r)=>{var{cx:n,cy:i,innerRadius:a,outerRadius:o,startAngle:l,endAngle:s}=e,u=(l+s)/2;if(r==="outside"){var{x:c,y:f}=Ae(n,i,o+t,u);return{x:c,y:f,textAnchor:c>=n?"start":"end",verticalAnchor:"middle"}}if(r==="center")return{x:n,y:i,textAnchor:"middle",verticalAnchor:"middle"};if(r==="centerTop")return{x:n,y:i,textAnchor:"middle",verticalAnchor:"start"};if(r==="centerBottom")return{x:n,y:i,textAnchor:"middle",verticalAnchor:"end"};var d=(a+o)/2,{x:p,y:h}=Ae(n,i,d,u);return{x:p,y:h,textAnchor:"middle",verticalAnchor:"middle"}},da=e=>e!=null&&"cx"in e&&N(e.cx),OD={angle:0,offset:5,zIndex:Oe.label,position:"middle",textBreakAll:!1};function AD(e){if(!da(e))return e;var{cx:t,cy:r,outerRadius:n}=e,i=n*2;return{x:t-n,y:r-n,width:i,upperWidth:i,lowerWidth:i,height:i}}function cr(e){var t=be(e,OD),{viewBox:r,parentViewBox:n,position:i,value:a,children:o,content:l,className:s="",textBreakAll:u,labelRef:c}=t,f=gD(),d=Dx(),p=i==="center"?d:f??d,h,y,m;r==null?h=p:da(r)?h=r:h=jc(r);var g=AD(h);if(!h||de(a)&&de(o)&&!v.isValidElement(l)&&typeof l!="function")return null;var w=Gn(Gn({},t),{},{viewBox:h});if(v.isValidElement(l)){var{labelRef:b}=w,P=pm(w,cD);return v.cloneElement(l,P)}if(typeof l=="function"){var{content:x}=w,O=pm(w,fD);if(y=v.createElement(l,O),v.isValidElement(y))return y}else y=bD(t);var S=Ge(t);if(da(h)){if(i==="insideStart"||i==="insideEnd"||i==="end")return wD(t,i,y,S,h);m=PD(h,t.offset,t.position)}else{if(!g)return null;var A=uD({viewBox:g,position:i,offset:t.offset,parentViewBox:da(n)?void 0:n});m=Gn(Gn({x:A.x,y:A.y,textAnchor:A.horizontalAnchor,verticalAnchor:A.verticalAnchor},A.width!==void 0?{width:A.width}:{}),A.height!==void 0?{height:A.height}:{})}return v.createElement(Ze,{zIndex:t.zIndex},v.createElement(al,Ft({ref:c,className:Z("recharts-label",s)},S,m,{textAnchor:tD(S.textAnchor)?S.textAnchor:m.textAnchor,breakAll:u}),y))}cr.displayName="Label";var SD=(e,t,r)=>{if(!e)return null;var n={viewBox:t,labelRef:r};return e===!0?v.createElement(cr,Ft({key:"label-implicit"},n)):Tt(e)?v.createElement(cr,Ft({key:"label-implicit",value:e},n)):v.isValidElement(e)?e.type===cr?v.cloneElement(e,Gn({key:"label-implicit"},n)):v.createElement(cr,Ft({key:"label-implicit",content:e},n)):Kf(e)?v.createElement(cr,Ft({key:"label-implicit",content:e},n)):e&&typeof e=="object"?v.createElement(cr,Ft({},e,{key:"label-implicit"},n)):null};function ED(e){var{label:t,labelRef:r}=e,n=Dx();return SD(t,n,r)||null}var Ns={},Rs={},mm;function jD(){return mm||(mm=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return r[r.length-1]}e.last=t})(Rs)),Rs}var $s={},ym;function kD(){return ym||(ym=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){return Array.isArray(r)?r:Array.from(r)}e.toArray=t})($s)),$s}var gm;function _D(){return gm||(gm=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});const t=jD(),r=kD(),n=mc();function i(a){if(n.isArrayLike(a))return t.last(r.toArray(a))}e.last=i})(Ns)),Ns}var Ls,bm;function CD(){return bm||(bm=1,Ls=_D().last),Ls}var ID=CD();const TD=gr(ID);var MD=["valueAccessor"],DD=["dataKey","clockWise","id","textBreakAll","zIndex"];function io(){return io=Object.assign?Object.assign.bind():function(e){for(var t=1;tArray.isArray(e.value)?TD(e.value):e.value,Nx=v.createContext(void 0),qf=Nx.Provider,Rx=v.createContext(void 0),$D=Rx.Provider;function LD(){return v.useContext(Nx)}function zD(){return v.useContext(Rx)}function va(e){var{valueAccessor:t=RD}=e,r=xm(e,MD),{dataKey:n,clockWise:i,id:a,textBreakAll:o,zIndex:l}=r,s=xm(r,DD),u=LD(),c=zD(),f=u||c;return!f||!f.length?null:v.createElement(Ze,{zIndex:l??Oe.label},v.createElement(ge,{className:"recharts-label-list"},f.map((d,p)=>{var h,y=de(n)?t(d,p):ne(d.payload,n),m=de(a)?{}:{id:"".concat(a,"-").concat(p)};return v.createElement(cr,io({key:"label-".concat(p)},Ge(d),s,m,{fill:(h=r.fill)!==null&&h!==void 0?h:d.fill,parentViewBox:d.parentViewBox,value:y,textBreakAll:o,viewBox:d.viewBox,index:p,zIndex:0}))})))}va.displayName="LabelList";function ol(e){var{label:t}=e;return t?t===!0?v.createElement(va,{key:"labelList-implicit"}):v.isValidElement(t)||Kf(t)?v.createElement(va,{key:"labelList-implicit",content:t}):typeof t=="object"?v.createElement(va,io({key:"labelList-implicit"},t,{type:String(t.type)})):null:null}function Wu(){return Wu=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{cx:t,cy:r,r:n,className:i}=e,a=Z("recharts-dot",i);return N(t)&&N(r)&&N(n)?v.createElement("circle",Wu({},Ye(e),hc(e),{className:a,cx:t,cy:r,r:n})):null},Lx=e=>e.graphicalItems.polarItems,BD=j([pe,Ei],vf),ll=j([Lx,xe,BD],pf),FD=j([ll],hf),sl=j([FD,Uo],mf),WD=j([sl,xe,ll],gf);j([sl,xe,ll],(e,t,r)=>r.length>0?e.flatMap(n=>r.flatMap(i=>{var a,o=ne(n,(a=t.dataKey)!==null&&a!==void 0?a:i.dataKey);return{value:o,errorDomain:[]}})).filter(Boolean):t?.dataKey!=null?e.map(n=>({value:ne(n,t.dataKey),errorDomain:[]})):e.map(n=>({value:n,errorDomain:[]})));var wm=()=>{},KD=j([sl,xe,ll,el,pe],Pf),qD=j([xe,xf,wf,wm,KD,wm,J,pe],Of),zx=j([xe,J,sl,WD,Si,pe,qD],Af),UD=j([zx,En,Ar],jf),GD=j([xe,zx,UD,pe],_f);j([Ar,GD],A0);var VD={radiusAxis:{},angleAxis:{}},Bx=tt({name:"polarAxis",initialState:VD,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:cW,removeRadiusAxis:fW,addAngleAxis:dW,removeAngleAxis:vW}=Bx.actions,HD=Bx.reducer;function Fx(e){return e&&typeof e=="object"&&"className"in e&&typeof e.className=="string"?e.className:""}function Pm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Om(e){for(var t=1;tt,Uf=j([Lx,JD],(e,t)=>e.filter(r=>r.type==="pie").find(r=>r.id===t)),QD=[],Gf=(e,t,r)=>r?.length===0?QD:r,Wx=j([Uo,Uf,Gf],(e,t,r)=>{var{chartData:n}=e;if(t!=null){var i;if(t?.data!=null&&t.data.length>0?i=t.data:i=n,(!i||!i.length)&&r!=null&&(i=r.map(a=>Om(Om({},t.presentationProps),a.props))),i!=null)return i}}),eN=j([Wx,Uf,Gf],(e,t,r)=>{if(!(e==null||t==null))return e.map((n,i)=>{var a,o=ne(n,t.nameKey,t.name),l;return r!=null&&(a=r[i])!==null&&a!==void 0&&(a=a.props)!==null&&a!==void 0&&a.fill?l=r[i].props.fill:typeof n=="object"&&n!=null&&"fill"in n?l=n.fill:l=t.fill,{value:xr(o,t.dataKey),color:l,payload:n,type:t.legendType}})}),tN=j([Wx,Uf,Gf,_e],(e,t,r,n)=>{if(!(t==null||e==null))return rR({offset:n,pieSettings:t,displayedData:e,cells:r})}),zs={exports:{}},te={};var Am;function rN(){if(Am)return te;Am=1;var e=typeof Symbol=="function"&&Symbol.for,t=e?Symbol.for("react.element"):60103,r=e?Symbol.for("react.portal"):60106,n=e?Symbol.for("react.fragment"):60107,i=e?Symbol.for("react.strict_mode"):60108,a=e?Symbol.for("react.profiler"):60114,o=e?Symbol.for("react.provider"):60109,l=e?Symbol.for("react.context"):60110,s=e?Symbol.for("react.async_mode"):60111,u=e?Symbol.for("react.concurrent_mode"):60111,c=e?Symbol.for("react.forward_ref"):60112,f=e?Symbol.for("react.suspense"):60113,d=e?Symbol.for("react.suspense_list"):60120,p=e?Symbol.for("react.memo"):60115,h=e?Symbol.for("react.lazy"):60116,y=e?Symbol.for("react.block"):60121,m=e?Symbol.for("react.fundamental"):60117,g=e?Symbol.for("react.responder"):60118,w=e?Symbol.for("react.scope"):60119;function b(x){if(typeof x=="object"&&x!==null){var O=x.$$typeof;switch(O){case t:switch(x=x.type,x){case s:case u:case n:case a:case i:case f:return x;default:switch(x=x&&x.$$typeof,x){case l:case c:case h:case p:case o:return x;default:return O}}case r:return O}}}function P(x){return b(x)===u}return te.AsyncMode=s,te.ConcurrentMode=u,te.ContextConsumer=l,te.ContextProvider=o,te.Element=t,te.ForwardRef=c,te.Fragment=n,te.Lazy=h,te.Memo=p,te.Portal=r,te.Profiler=a,te.StrictMode=i,te.Suspense=f,te.isAsyncMode=function(x){return P(x)||b(x)===s},te.isConcurrentMode=P,te.isContextConsumer=function(x){return b(x)===l},te.isContextProvider=function(x){return b(x)===o},te.isElement=function(x){return typeof x=="object"&&x!==null&&x.$$typeof===t},te.isForwardRef=function(x){return b(x)===c},te.isFragment=function(x){return b(x)===n},te.isLazy=function(x){return b(x)===h},te.isMemo=function(x){return b(x)===p},te.isPortal=function(x){return b(x)===r},te.isProfiler=function(x){return b(x)===a},te.isStrictMode=function(x){return b(x)===i},te.isSuspense=function(x){return b(x)===f},te.isValidElementType=function(x){return typeof x=="string"||typeof x=="function"||x===n||x===u||x===a||x===i||x===f||x===d||typeof x=="object"&&x!==null&&(x.$$typeof===h||x.$$typeof===p||x.$$typeof===o||x.$$typeof===l||x.$$typeof===c||x.$$typeof===m||x.$$typeof===g||x.$$typeof===w||x.$$typeof===y)},te.typeOf=b,te}var Sm;function nN(){return Sm||(Sm=1,zs.exports=rN()),zs.exports}var iN=nN(),Em=e=>typeof e=="string"?e:e?e.displayName||e.name||"Component":"",jm=null,Bs=null,Kx=e=>{if(e===jm&&Array.isArray(Bs))return Bs;var t=[];return v.Children.forEach(e,r=>{de(r)||(iN.isFragment(r)?t=t.concat(Kx(r.props.children)):t.push(r))}),Bs=t,jm=e,t};function Vf(e,t){var r=[],n=[];return Array.isArray(t)?n=t.map(i=>Em(i)):n=[Em(t)],Kx(e).forEach(i=>{var a=Ur(i,"type.displayName")||Ur(i,"type.name");a&&n.indexOf(a)!==-1&&r.push(i)}),r}var Hf=e=>e&&typeof e=="object"&&"clipDot"in e?!!e.clipDot:!0,Fs={},km;function aN(){return km||(km=1,(function(e){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"});function t(r){if(typeof r!="object"||r==null)return!1;if(Object.getPrototypeOf(r)===null)return!0;if(Object.prototype.toString.call(r)!=="[object Object]"){const i=r[Symbol.toStringTag];return i==null||!Object.getOwnPropertyDescriptor(r,Symbol.toStringTag)?.writable?!1:r.toString()===`[object ${i}]`}let n=r;for(;Object.getPrototypeOf(n)!==null;)n=Object.getPrototypeOf(n);return Object.getPrototypeOf(r)===n}e.isPlainObject=t})(Fs)),Fs}var Ws,_m;function oN(){return _m||(_m=1,Ws=aN().isPlainObject),Ws}var lN=oN();const sN=gr(lN);var Cm,Im,Tm,Mm,Dm;function Nm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Rm(e){for(var t=1;t{var a=r-n,o;return o=me(Cm||(Cm=Wn(["M ",",",""])),e,t),o+=me(Im||(Im=Wn(["L ",",",""])),e+r,t),o+=me(Tm||(Tm=Wn(["L ",",",""])),e+r-a/2,t+i),o+=me(Mm||(Mm=Wn(["L ",",",""])),e+r-a/2-n,t+i),o+=me(Dm||(Dm=Wn(["L ",","," Z"])),e,t),o},dN={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},vN=e=>{var t=be(e,dN),{x:r,y:n,upperWidth:i,lowerWidth:a,height:o,className:l}=t,{animationEasing:s,animationDuration:u,animationBegin:c,isUpdateAnimationActive:f}=t,d=v.useRef(null),[p,h]=v.useState(-1),y=v.useRef(i),m=v.useRef(a),g=v.useRef(o),w=v.useRef(r),b=v.useRef(n),P=wn(e,"trapezoid-");if(v.useEffect(()=>{if(d.current&&d.current.getTotalLength)try{var R=d.current.getTotalLength();R&&h(R)}catch{}},[]),r!==+r||n!==+n||i!==+i||a!==+a||o!==+o||i===0&&a===0||o===0)return null;var x=Z("recharts-trapezoid",l);if(!f)return v.createElement("g",null,v.createElement("path",ao({},Ge(t),{className:x,d:$m(r,n,i,a,o)})));var O=y.current,S=m.current,A=g.current,_=w.current,M=b.current,I="0px ".concat(p===-1?1:p,"px"),k="".concat(p,"px 0px"),$=vb(["strokeDasharray"],u,s);return v.createElement(xn,{animationId:P,key:P,canBegin:p>0,duration:u,easing:s,isActive:f,begin:c},R=>{var W=re(O,i,R),K=re(S,a,R),q=re(A,o,R),Y=re(_,r,R),U=re(M,n,R);d.current&&(y.current=W,m.current=K,g.current=q,w.current=Y,b.current=U);var D=R>0?{transition:$,strokeDasharray:k}:{strokeDasharray:I};return v.createElement("path",ao({},Ge(t),{className:x,d:$m(Y,U,W,K,q),ref:d,style:Rm(Rm({},D),t.style)}))})},pN=["option","shapeType","activeClassName"];function hN(e,t){if(e==null)return{};var r,n,i=mN(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n{var n=le();return(i,a)=>o=>{e?.(i,a,o),n(ex({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:r}))}},Zf=e=>{var t=le();return(r,n)=>i=>{e?.(r,n,i),t(SI())}},Jf=(e,t,r)=>{var n=le();return(i,a)=>o=>{e?.(i,a,o),n(EI({activeIndex:String(a),activeDataKey:t,activeCoordinate:i.tooltipPosition,activeGraphicalItemId:r}))}};function ul(e){var{tooltipEntrySettings:t}=e,r=le(),n=Le(),i=v.useRef(null);return v.useLayoutEffect(()=>{n||(i.current===null?r(wI(t)):i.current!==t&&r(PI({prev:i.current,next:t})),i.current=t)},[t,r,n]),v.useLayoutEffect(()=>()=>{i.current&&(r(OI(i.current)),i.current=null)},[r]),null}function Qf(e){var{legendPayload:t}=e,r=le(),n=Le(),i=v.useRef(null);return v.useLayoutEffect(()=>{n||(i.current===null?r(ub(t)):i.current!==t&&r(cb({prev:i.current,next:t})),i.current=t)},[r,n,t]),v.useLayoutEffect(()=>()=>{i.current&&(r(fb(i.current)),i.current=null)},[r]),null}function ON(e){var{legendPayload:t}=e,r=le(),n=z(J),i=v.useRef(null);return v.useLayoutEffect(()=>{n!=="centric"&&n!=="radial"||(i.current===null?r(ub(t)):i.current!==t&&r(cb({prev:i.current,next:t})),i.current=t)},[r,n,t]),v.useLayoutEffect(()=>()=>{i.current&&(r(fb(i.current)),i.current=null)},[r]),null}var Ks,AN=()=>{var[e]=v.useState(()=>Zn("uid-"));return e},SN=(Ks=ic.useId)!==null&&Ks!==void 0?Ks:AN;function EN(e,t){var r=SN();return t||(e?"".concat(e,"-").concat(r):r)}var jN=v.createContext(void 0),cl=e=>{var{id:t,type:r,children:n}=e,i=EN("recharts-".concat(r),t);return v.createElement(jN.Provider,{value:i},n(i))},kN={cartesianItems:[],polarItems:[]},qx=tt({name:"graphicalItems",initialState:kN,reducers:{addCartesianGraphicalItem:{reducer(e,t){e.cartesianItems.push(t.payload)},prepare:ce()},replaceCartesianGraphicalItem:{reducer(e,t){var{prev:r,next:n}=t.payload,i=xt(e).cartesianItems.indexOf(r);i>-1&&(e.cartesianItems[i]=n)},prepare:ce()},removeCartesianGraphicalItem:{reducer(e,t){var r=xt(e).cartesianItems.indexOf(t.payload);r>-1&&e.cartesianItems.splice(r,1)},prepare:ce()},addPolarGraphicalItem:{reducer(e,t){e.polarItems.push(t.payload)},prepare:ce()},removePolarGraphicalItem:{reducer(e,t){var r=xt(e).polarItems.indexOf(t.payload);r>-1&&e.polarItems.splice(r,1)},prepare:ce()}}}),{addCartesianGraphicalItem:_N,replaceCartesianGraphicalItem:CN,removeCartesianGraphicalItem:IN,addPolarGraphicalItem:TN,removePolarGraphicalItem:MN}=qx.actions,DN=qx.reducer,NN=e=>{var t=le(),r=v.useRef(null);return v.useLayoutEffect(()=>{r.current===null?t(_N(e)):r.current!==e&&t(CN({prev:r.current,next:e})),r.current=e},[t,e]),v.useLayoutEffect(()=>()=>{r.current&&(t(IN(r.current)),r.current=null)},[t]),null},ed=v.memo(NN);function RN(e){var t=le();return v.useLayoutEffect(()=>(t(TN(e)),()=>{t(MN(e))}),[t,e]),null}var $N=["key"],LN=["onMouseEnter","onClick","onMouseLeave"],zN=["id"],BN=["id"];function Bm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function ye(e){for(var t=1;tVf(e.children,Mi),[e.children]),r=z(n=>eN(n,e.id,t));return r==null?null:v.createElement(ON,{legendPayload:r})}var GN=v.memo(e=>{var{dataKey:t,nameKey:r,sectors:n,stroke:i,strokeWidth:a,fill:o,name:l,hide:s,tooltipType:u,id:c}=e,f={dataDefinedOnItem:n.map(d=>d.tooltipPayload),getPosition:d=>{var p;return(p=n[Number(d)])===null||p===void 0?void 0:p.tooltipPosition},settings:{stroke:i,strokeWidth:a,fill:o,dataKey:t,nameKey:r,name:xr(l,t),hide:s,type:u,color:o,unit:"",graphicalItemId:c}};return v.createElement(ul,{tooltipEntrySettings:f})}),VN=(e,t)=>e>t?"start":eUe(typeof t=="function"?t(e):t,r,r*.8),YN=(e,t,r)=>{var{top:n,left:i,width:a,height:o}=t,l=gb(a,o),s=i+Ue(e.cx,a,a/2),u=n+Ue(e.cy,o,o/2),c=Ue(e.innerRadius,l,0),f=HN(r,e.outerRadius,l),d=e.maxRadius||Math.sqrt(a*a+o*o)/2;return{cx:s,cy:u,innerRadius:c,outerRadius:f,maxRadius:d}},XN=(e,t)=>{var r=$e(t-e),n=Math.min(Math.abs(t-e),360);return r*n},ZN=(e,t)=>{if(v.isValidElement(e))return v.cloneElement(e,t);if(typeof e=="function")return e(t);var r=Z("recharts-pie-label-line",typeof e!="boolean"?e.className:""),{key:n}=t,i=fl(t,$N);return v.createElement(dn,yr({},i,{type:"linear",className:r}))},JN=(e,t,r)=>{if(v.isValidElement(e))return v.cloneElement(e,t);var n=r;if(typeof e=="function"&&(n=e(t),v.isValidElement(n)))return n;var i=Z("recharts-pie-label-text",Fx(e));return v.createElement(al,yr({},t,{alignmentBaseline:"middle",className:i}),n)};function QN(e){var{sectors:t,props:r,showLabels:n}=e,{label:i,labelLine:a,dataKey:o}=r;if(!n||!i||!t)return null;var l=Ye(r),s=Kr(i),u=Kr(a),c=typeof i=="object"&&"offsetRadius"in i&&typeof i.offsetRadius=="number"&&i.offsetRadius||20,f=t.map((d,p)=>{var h=(d.startAngle+d.endAngle)/2,y=Ae(d.cx,d.cy,d.outerRadius+c,h),m=ye(ye(ye(ye({},l),d),{},{stroke:"none"},s),{},{index:p,textAnchor:VN(y.x,d.cx)},y),g=ye(ye(ye(ye({},l),d),{},{fill:"none",stroke:d.fill},u),{},{index:p,points:[Ae(d.cx,d.cy,d.outerRadius,h),y],key:"line"});return v.createElement(Ze,{zIndex:Oe.label,key:"label-".concat(d.startAngle,"-").concat(d.endAngle,"-").concat(d.midAngle,"-").concat(p)},v.createElement(ge,null,a&&ZN(a,g),JN(i,m,ne(d,o))))});return v.createElement(ge,{className:"recharts-pie-labels"},f)}function eR(e){var{sectors:t,props:r,showLabels:n}=e,{label:i}=r;return typeof i=="object"&&i!=null&&"position"in i?v.createElement(ol,{label:i}):v.createElement(QN,{sectors:t,props:r,showLabels:n})}function tR(e){var{sectors:t,activeShape:r,inactiveShape:n,allOtherPieProps:i,shape:a,id:o}=e,l=z(mr),s=z(Lf),u=z(fT),{onMouseEnter:c,onClick:f,onMouseLeave:d}=i,p=fl(i,LN),h=Xf(c,i.dataKey,o),y=Zf(d),m=Jf(f,i.dataKey,o);return t==null||t.length===0?null:v.createElement(v.Fragment,null,t.map((g,w)=>{if(g?.startAngle===0&&g?.endAngle===0&&t.length!==1)return null;var b=u==null||u===o,P=String(w)===l&&(s==null||i.dataKey===s)&&b,x=l?n:null,O=r&&P?r:x,S=ye(ye({},g),{},{stroke:g.stroke,tabIndex:-1,[Yg]:w,[Xg]:o});return v.createElement(ge,yr({key:"sector-".concat(g?.startAngle,"-").concat(g?.endAngle,"-").concat(g.midAngle,"-").concat(w),tabIndex:-1,className:"recharts-pie-sector"},pi(p,g,w),{onMouseEnter:h(g,w),onMouseLeave:y(g,w),onClick:m(g,w)}),v.createElement(Yf,yr({option:a??O,index:w,shapeType:"sector",isActive:P},S)))}))}function rR(e){var t,{pieSettings:r,displayedData:n,cells:i,offset:a}=e,{cornerRadius:o,startAngle:l,endAngle:s,dataKey:u,nameKey:c,tooltipType:f}=r,d=Math.abs(r.minAngle),p=XN(l,s),h=Math.abs(p),y=n.length<=1?0:(t=r.paddingAngle)!==null&&t!==void 0?t:0,m=n.filter(O=>ne(O,u,0)!==0).length,g=(h>=360?m:m-1)*y,w=h-m*d-g,b=n.reduce((O,S)=>{var A=ne(S,u,0);return O+(N(A)?A:0)},0),P;if(b>0){var x;P=n.map((O,S)=>{var A=ne(O,u,0),_=ne(O,c,S),M=YN(r,a,O),I=(N(A)?A:0)/b,k,$=ye(ye({},O),i&&i[S]&&i[S].props);S?k=x.endAngle+$e(p)*y*(A!==0?1:0):k=l;var R=k+$e(p)*((A!==0?d:0)+I*w),W=(k+R)/2,K=(M.innerRadius+M.outerRadius)/2,q=[{name:_,value:A,payload:$,dataKey:u,type:f,graphicalItemId:r.id}],Y=Ae(M.cx,M.cy,K,W);return x=ye(ye(ye(ye({},r.presentationProps),{},{percent:I,cornerRadius:typeof o=="string"?parseFloat(o):o,name:_,tooltipPayload:q,midAngle:W,middleRadius:K,tooltipPosition:Y},$),M),{},{value:A,dataKey:u,startAngle:k,endAngle:R,payload:$,paddingAngle:$e(p)*y}),x})}return P}function nR(e){var{showLabels:t,sectors:r,children:n}=e,i=v.useMemo(()=>!t||!r?[]:r.map(a=>({value:a.value,payload:a.payload,clockWise:!1,parentViewBox:void 0,viewBox:{cx:a.cx,cy:a.cy,innerRadius:a.innerRadius,outerRadius:a.outerRadius,startAngle:a.startAngle,endAngle:a.endAngle,clockWise:!1},fill:a.fill})),[r,t]);return v.createElement($D,{value:t?i:void 0},n)}function iR(e){var{props:t,previousSectorsRef:r,id:n}=e,{sectors:i,isAnimationActive:a,animationBegin:o,animationDuration:l,animationEasing:s,activeShape:u,inactiveShape:c,onAnimationStart:f,onAnimationEnd:d}=t,p=wn(t,"recharts-pie-"),h=r.current,[y,m]=v.useState(!1),g=v.useCallback(()=>{typeof d=="function"&&d(),m(!1)},[d]),w=v.useCallback(()=>{typeof f=="function"&&f(),m(!0)},[f]);return v.createElement(nR,{showLabels:!y,sectors:i},v.createElement(xn,{animationId:p,begin:o,duration:l,isActive:a,easing:s,onAnimationStart:w,onAnimationEnd:g,key:p},b=>{var P,x=[],O=i&&i[0],S=(P=O?.startAngle)!==null&&P!==void 0?P:0;return i?.forEach((A,_)=>{var M=h&&h[_],I=_>0?Ur(A,"paddingAngle",0):0;if(M){var k=re(M.endAngle-M.startAngle,A.endAngle-A.startAngle,b),$=ye(ye({},A),{},{startAngle:S+I,endAngle:S+k+I});x.push($),S=$.endAngle}else{var{endAngle:R,startAngle:W}=A,K=re(0,R-W,b),q=ye(ye({},A),{},{startAngle:S+I,endAngle:S+K+I});x.push(q),S=q.endAngle}}),r.current=x,v.createElement(ge,null,v.createElement(tR,{sectors:x,activeShape:u,inactiveShape:c,allOtherPieProps:t,shape:t.shape,id:n}))}),v.createElement(eR,{showLabels:!y,sectors:i,props:t}),t.children)}var aR={animationBegin:400,animationDuration:1500,animationEasing:"ease",cx:"50%",cy:"50%",dataKey:"value",endAngle:360,fill:"#808080",hide:!1,innerRadius:0,isAnimationActive:"auto",label:!1,labelLine:!0,legendType:"rect",minAngle:0,nameKey:"name",outerRadius:"80%",paddingAngle:0,rootTabIndex:0,startAngle:0,stroke:"#fff",zIndex:Oe.area};function oR(e){var{id:t}=e,r=fl(e,zN),{hide:n,className:i,rootTabIndex:a}=e,o=v.useMemo(()=>Vf(e.children,Mi),[e.children]),l=z(c=>tN(c,t,o)),s=v.useRef(null),u=Z("recharts-pie",i);return n||l==null?(s.current=null,v.createElement(ge,{tabIndex:a,className:u})):v.createElement(Ze,{zIndex:e.zIndex},v.createElement(GN,{dataKey:e.dataKey,nameKey:e.nameKey,sectors:l,stroke:e.stroke,strokeWidth:e.strokeWidth,fill:e.fill,name:e.name,hide:e.hide,tooltipType:e.tooltipType,id:t}),v.createElement(ge,{tabIndex:a,className:u},v.createElement(iR,{props:ye(ye({},r),{},{sectors:l}),previousSectorsRef:s,id:t})))}function Ux(e){var t=be(e,aR),{id:r}=t,n=fl(t,BN),i=Ye(n);return v.createElement(cl,{id:r,type:"pie"},a=>v.createElement(v.Fragment,null,v.createElement(RN,{type:"pie",id:a,data:n.data,dataKey:n.dataKey,hide:n.hide,angleAxisId:0,radiusAxisId:0,name:n.name,nameKey:n.nameKey,tooltipType:n.tooltipType,legendType:n.legendType,fill:n.fill,cx:n.cx,cy:n.cy,startAngle:n.startAngle,endAngle:n.endAngle,paddingAngle:n.paddingAngle,minAngle:n.minAngle,innerRadius:n.innerRadius,outerRadius:n.outerRadius,cornerRadius:n.cornerRadius,presentationProps:i,maxRadius:t.maxRadius}),v.createElement(UN,yr({},n,{id:a})),v.createElement(oR,yr({},n,{id:a}))))}Ux.displayName="Pie";var lR=["points"];function Fm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function qs(e){for(var t=1;t{var m,g,w=qs(qs(qs({r:3},o),f),{},{index:y,cx:(m=h.x)!==null&&m!==void 0?m:void 0,cy:(g=h.y)!==null&&g!==void 0?g:void 0,dataKey:a,value:h.value,payload:h.payload,points:t});return v.createElement(vR,{key:"dot-".concat(y),option:r,dotProps:w,className:i})}),p={};return l&&s!=null&&(p.clipPath="url(#clipPath-".concat(c?"":"dots-").concat(s,")")),v.createElement(Ze,{zIndex:u},v.createElement(ge,lo({className:n},p),d))}function Wm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Km(e){for(var t=1;t({top:e.top,bottom:e.bottom,left:e.left,right:e.right})),kR=j([jR,er,tr],(e,t,r)=>{if(!(!e||t==null||r==null))return{x:e.left,y:e.top,width:Math.max(0,t-e.left-e.right),height:Math.max(0,r-e.top-e.bottom)}}),dl=()=>z(kR),_R=()=>z(mT);function qm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Us(e){for(var t=1;t{var{point:t,childIndex:r,mainColor:n,activeDot:i,dataKey:a,clipPath:o}=e;if(i===!1||t.x==null||t.y==null)return null;var l={index:r,dataKey:a,cx:t.x,cy:t.y,r:4,fill:n??"none",strokeWidth:2,stroke:"#fff",payload:t.payload,value:t.value},s=Us(Us(Us({},l),Kr(i)),hc(i)),u;return v.isValidElement(i)?u=v.cloneElement(i,s):typeof i=="function"?u=i(s):u=v.createElement($x,s),v.createElement(ge,{className:"recharts-active-dot",clipPath:o},u)};function Ku(e){var{points:t,mainColor:r,activeDot:n,itemDataKey:i,clipPath:a,zIndex:o=Oe.activeDot}=e,l=z(mr),s=_R();if(t==null||s==null)return null;var u=t.find(c=>s.includes(c.payload));return de(u)?null:v.createElement(Ze,{zIndex:o},v.createElement(MR,{point:u,childIndex:Number(l),mainColor:r,dataKey:i,activeDot:n,clipPath:a}))}var Um=(e,t,r)=>{var n=r??e;if(!de(n))return Ue(n,t,0)},DR=(e,t,r)=>{var n={},i=e.filter(Xo),a=e.filter(u=>u.stackId==null),o=i.reduce((u,c)=>{var f=u[c.stackId];return f==null&&(f=[]),f.push(c),u[c.stackId]=f,u},n),l=Object.entries(o).map(u=>{var c,[f,d]=u,p=d.map(y=>y.dataKey),h=Um(t,r,(c=d[0])===null||c===void 0?void 0:c.barSize);return{stackId:f,dataKeys:p,barSize:h}}),s=a.map(u=>{var c=[u.dataKey].filter(d=>d!=null),f=Um(t,r,u.barSize);return{stackId:void 0,dataKeys:c,barSize:f}});return[...l,...s]};function Gm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Qi(e){for(var t=1;tw+(b.barSize||0),0);d+=(o-1)*l,d>=r&&(d-=(o-1)*l,l=0),d>=r&&f>0&&(c=!0,f*=.9,d=o*f);var p=(r-d)/2>>0,h={offset:p-l,size:0};s=n.reduce((w,b)=>{var P,x={stackId:b.stackId,dataKeys:b.dataKeys,position:{offset:h.offset+h.size+l,size:c?f:(P=b.barSize)!==null&&P!==void 0?P:0}},O=[...w,x];return h=x.position,O},u)}else{var y=Ue(t,r,0,!0);r-2*y-(o-1)*l<=0&&(l=0);var m=(r-2*y-(o-1)*l)/o;m>1&&(m>>=0);var g=H(i)?Math.min(m,i):m;s=n.reduce((w,b,P)=>[...w,{stackId:b.stackId,dataKeys:b.dataKeys,position:{offset:y+(m+l)*P+(m-g)/2,size:g}}],u)}return s}}var zR=(e,t,r,n,i,a,o)=>{var l=de(o)?t:o,s=LR(r,n,i!==a?i:a,e,l);return i!==a&&s!=null&&(s=s.map(u=>Qi(Qi({},u),{},{position:Qi(Qi({},u.position),{},{offset:u.position.offset-i/2})}))),s},BR=(e,t)=>{var r=Yo(t);if(!(!e||r==null||t==null)){var{stackId:n}=t;if(n!=null){var i=e[n];if(i){var{stackedData:a}=i;if(a)return a.find(o=>o.key===r)}}}},FR=(e,t)=>{if(!(e==null||t==null)){var r=e.find(n=>n.stackId===t.stackId&&t.dataKey!=null&&n.dataKeys.includes(t.dataKey));if(r!=null)return r.position}};function WR(e,t){return e&&typeof e=="object"&&"zIndex"in e&&typeof e.zIndex=="number"&&H(e.zIndex)?e.zIndex:t}var Yx=e=>{var{chartData:t}=e,r=le(),n=Le();return v.useEffect(()=>n?()=>{}:(r(Jh(t)),()=>{r(Jh(void 0))}),[t,r,n]),null},Vm={x:0,y:0,width:0,height:0,padding:{top:0,right:0,bottom:0,left:0}},Xx=tt({name:"brush",initialState:Vm,reducers:{setBrushSettings(e,t){return t.payload==null?Vm:t.payload}}}),{setBrushSettings:yW}=Xx.actions,KR=Xx.reducer;function qR(e){return(e%180+180)%180}var UR=function(t){var{width:r,height:n}=t,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=qR(i),o=a*Math.PI/180,l=Math.atan(n/r),s=o>l&&o{e.dots.push(t.payload)},removeDot:(e,t)=>{var r=xt(e).dots.findIndex(n=>n===t.payload);r!==-1&&e.dots.splice(r,1)},addArea:(e,t)=>{e.areas.push(t.payload)},removeArea:(e,t)=>{var r=xt(e).areas.findIndex(n=>n===t.payload);r!==-1&&e.areas.splice(r,1)},addLine:(e,t)=>{e.lines.push(t.payload)},removeLine:(e,t)=>{var r=xt(e).lines.findIndex(n=>n===t.payload);r!==-1&&e.lines.splice(r,1)}}}),{addDot:gW,removeDot:bW,addArea:xW,removeArea:wW,addLine:PW,removeLine:OW}=Zx.actions,VR=Zx.reducer,HR=v.createContext(void 0),YR=e=>{var{children:t}=e,[r]=v.useState("".concat(Zn("recharts"),"-clip")),n=dl();if(n==null)return null;var{x:i,y:a,width:o,height:l}=n;return v.createElement(HR.Provider,{value:r},v.createElement("defs",null,v.createElement("clipPath",{id:r},v.createElement("rect",{x:i,y:a,height:l,width:o}))),t)};function Jx(e,t){if(t<1)return[];if(t===1)return e;for(var r=[],n=0;ne*i)return!1;var a=r();return e*(t-e*a/2-n)>=0&&e*(t+e*a/2-i)<=0}function JR(e,t){return Jx(e,t+1)}function QR(e,t,r,n,i){for(var a=(n||[]).slice(),{start:o,end:l}=t,s=0,u=1,c=o,f=function(){var h=n?.[s];if(h===void 0)return{v:Jx(n,u)};var y=s,m,g=()=>(m===void 0&&(m=r(h,y)),m),w=h.coordinate,b=s===0||fi(e,w,g,c,l);b||(s=0,c=o,u+=1),b&&(c=w+e*(g()/2+i),s+=u)},d;u<=a.length;)if(d=f(),d)return d.v;return[]}function e2(e,t,r,n,i){var a=(n||[]).slice(),o=a.length;if(o===0)return[];for(var{start:l,end:s}=t,u=1;u<=o;u++){for(var c=(o-1)%u,f=l,d=!0,p=function(){var P=n[y];if(P==null)return 0;var x=y,O,S=()=>(O===void 0&&(O=r(P,x)),O),A=P.coordinate,_=y===c||fi(e,A,S,f,s);if(!_)return d=!1,1;_&&(f=A+e*(S()/2+i))},h,y=c;y(y===void 0&&(y=r(p,d)),y);if(d===o-1){var g=e*(h.coordinate+e*m()/2-s);a[d]=h=Ke(Ke({},h),{},{tickCoord:g>0?h.coordinate-g*e:h.coordinate})}else a[d]=h=Ke(Ke({},h),{},{tickCoord:h.coordinate});if(h.tickCoord!=null){var w=fi(e,h.tickCoord,m,l,s);w&&(s=h.tickCoord-e*(m()/2+i),a[d]=Ke(Ke({},h),{},{isShow:!0}))}},c=o-1;c>=0;c--)u(c);return a}function a2(e,t,r,n,i,a){var o=(n||[]).slice(),l=o.length,{start:s,end:u}=t;if(a){var c=n[l-1];if(c!=null){var f=r(c,l-1),d=e*(c.coordinate+e*f/2-u);if(o[l-1]=c=Ke(Ke({},c),{},{tickCoord:d>0?c.coordinate-d*e:c.coordinate}),c.tickCoord!=null){var p=fi(e,c.tickCoord,()=>f,s,u);p&&(u=c.tickCoord-e*(f/2+i),o[l-1]=Ke(Ke({},c),{},{isShow:!0}))}}}for(var h=a?l-1:l,y=function(w){var b=o[w];if(b==null)return 1;var P=b,x,O=()=>(x===void 0&&(x=r(b,w)),x);if(w===0){var S=e*(P.coordinate-e*O()/2-s);o[w]=P=Ke(Ke({},P),{},{tickCoord:S<0?P.coordinate-S*e:P.coordinate})}else o[w]=P=Ke(Ke({},P),{},{tickCoord:P.coordinate});if(P.tickCoord!=null){var A=fi(e,P.tickCoord,O,s,u);A&&(s=P.tickCoord+e*(O()/2+i),o[w]=Ke(Ke({},P),{},{isShow:!0}))}},m=0;m{var S=typeof u=="function"?u(x.value,O):x.value;return h==="width"?XR(Xn(S,{fontSize:t,letterSpacing:r}),y,f):Xn(S,{fontSize:t,letterSpacing:r})[h]},g=i[0],w=i[1],b=i.length>=2&&g!=null&&w!=null?$e(w.coordinate-g.coordinate):1,P=ZR(a,b,h);return s==="equidistantPreserveStart"?QR(b,P,m,i,o):s==="equidistantPreserveEnd"?e2(b,P,m,i,o):(s==="preserveStart"||s==="preserveStartEnd"?p=a2(b,P,m,i,o,s==="preserveStartEnd"):p=i2(b,P,m,i,o),p.filter(x=>x.isShow))}var o2=e=>{var{ticks:t,label:r,labelGapWithTick:n=5,tickSize:i=0,tickMargin:a=0}=e,o=0;if(t){Array.from(t).forEach(c=>{if(c){var f=c.getBoundingClientRect();f.width>o&&(o=f.width)}});var l=r?r.getBoundingClientRect().width:0,s=i+a,u=o+s+l+(r?n:0);return Math.round(u)}return 0},l2=["axisLine","width","height","className","hide","ticks","axisType"];function s2(e,t){if(e==null)return{};var r,n,i=u2(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n{var{ticks:r=[],tick:n,tickLine:i,stroke:a,tickFormatter:o,unit:l,padding:s,tickTextProps:u,orientation:c,mirror:f,x:d,y:p,width:h,height:y,tickSize:m,tickMargin:g,fontSize:w,letterSpacing:b,getTicksConfig:P,events:x,axisType:O}=e,S=td(he(he({},P),{},{ticks:r}),w,b),A=h2(c,f),_=m2(c,f),M=Ye(P),I=Kr(n),k={};typeof i=="object"&&(k=i);var $=he(he({},M),{},{fill:"none"},k),R=S.map(q=>he({entry:q},p2(q,d,p,h,y,c,m,f,g))),W=R.map(q=>{var{entry:Y,line:U}=q;return v.createElement(ge,{className:"recharts-cartesian-axis-tick",key:"tick-".concat(Y.value,"-").concat(Y.coordinate,"-").concat(Y.tickCoord)},i&&v.createElement("line",Zr({},$,U,{className:Z("recharts-cartesian-axis-tick-line",Ur(i,"className"))})))}),K=R.map((q,Y)=>{var U,D,{entry:ue,tick:we}=q,Je=he(he(he(he({verticalAnchor:_},M),{},{textAnchor:A,stroke:"none",fill:a},we),{},{index:Y,payload:ue,visibleTicksCount:S.length,tickFormatter:o,padding:s},u),{},{angle:(U=(D=u?.angle)!==null&&D!==void 0?D:M.angle)!==null&&U!==void 0?U:0}),Te=he(he({},Je),I);return v.createElement(ge,Zr({className:"recharts-cartesian-axis-tick-label",key:"tick-label-".concat(ue.value,"-").concat(ue.coordinate,"-").concat(ue.tickCoord)},pi(x,ue,Y)),n&&v.createElement(y2,{option:n,tickProps:Te,value:"".concat(typeof o=="function"?o(ue.value,Y):ue.value).concat(l||"")}))});return v.createElement("g",{className:"recharts-cartesian-axis-ticks recharts-".concat(O,"-ticks")},K.length>0&&v.createElement(Ze,{zIndex:Oe.label},v.createElement("g",{className:"recharts-cartesian-axis-tick-labels recharts-".concat(O,"-tick-labels"),ref:t},K)),W.length>0&&v.createElement("g",{className:"recharts-cartesian-axis-tick-lines recharts-".concat(O,"-tick-lines")},W))}),b2=v.forwardRef((e,t)=>{var{axisLine:r,width:n,height:i,className:a,hide:o,ticks:l,axisType:s}=e,u=s2(e,l2),[c,f]=v.useState(""),[d,p]=v.useState(""),h=v.useRef(null);v.useImperativeHandle(t,()=>({getCalculatedWidth:()=>{var m;return o2({ticks:h.current,label:(m=e.labelRef)===null||m===void 0?void 0:m.current,labelGapWithTick:5,tickSize:e.tickSize,tickMargin:e.tickMargin})}}));var y=v.useCallback(m=>{if(m){var g=m.getElementsByClassName("recharts-cartesian-axis-tick-value");h.current=g;var w=g[0];if(w){var b=window.getComputedStyle(w),P=b.fontSize,x=b.letterSpacing;(P!==c||x!==d)&&(f(P),p(x))}}},[c,d]);return o||n!=null&&n<=0||i!=null&&i<=0?null:v.createElement(Ze,{zIndex:e.zIndex},v.createElement(ge,{className:Z("recharts-cartesian-axis",a)},v.createElement(v2,{x:e.x,y:e.y,width:n,height:i,orientation:e.orientation,mirror:e.mirror,axisLine:r,otherSvgProps:Ye(e)}),v.createElement(g2,{ref:y,axisType:s,events:u,fontSize:c,getTicksConfig:e,height:e.height,letterSpacing:d,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:l,unit:e.unit,width:e.width,x:e.x,y:e.y}),v.createElement(mD,{x:e.x,y:e.y,width:e.width,height:e.height,lowerWidth:e.width,upperWidth:e.width},v.createElement(ED,{label:e.label,labelRef:e.labelRef}),e.children)))}),rd=v.forwardRef((e,t)=>{var r=be(e,Ut);return v.createElement(b2,Zr({},r,{ref:t}))});rd.displayName="CartesianAxis";var x2=["x1","y1","x2","y2","key"],w2=["offset"],P2=["xAxisId","yAxisId"],O2=["xAxisId","yAxisId"];function Xm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function qe(e){for(var t=1;t{var{fill:t}=e;if(!t||t==="none")return null;var{fillOpacity:r,x:n,y:i,width:a,height:o,ry:l}=e;return v.createElement("rect",{x:n,y:i,ry:l,width:a,height:o,stroke:"none",fill:t,fillOpacity:r,className:"recharts-cartesian-grid-bg"})};function Qx(e){var{option:t,lineItemProps:r}=e,n;if(v.isValidElement(t))n=v.cloneElement(t,r);else if(typeof t=="function")n=t(r);else{var i,{x1:a,y1:o,x2:l,y2:s,key:u}=r,c=so(r,x2),f=(i=Ye(c))!==null&&i!==void 0?i:{},{offset:d}=f,p=so(f,w2);n=v.createElement("line",Lr({},p,{x1:a,y1:o,x2:l,y2:s,fill:"none",key:u}))}return n}function _2(e){var{x:t,width:r,horizontal:n=!0,horizontalPoints:i}=e;if(!n||!i||!i.length)return null;var{xAxisId:a,yAxisId:o}=e,l=so(e,P2),s=i.map((u,c)=>{var f=qe(qe({},l),{},{x1:t,y1:u,x2:t+r,y2:u,key:"line-".concat(c),index:c});return v.createElement(Qx,{key:"line-".concat(c),option:n,lineItemProps:f})});return v.createElement("g",{className:"recharts-cartesian-grid-horizontal"},s)}function C2(e){var{y:t,height:r,vertical:n=!0,verticalPoints:i}=e;if(!n||!i||!i.length)return null;var{xAxisId:a,yAxisId:o}=e,l=so(e,O2),s=i.map((u,c)=>{var f=qe(qe({},l),{},{x1:u,y1:t,x2:u,y2:t+r,key:"line-".concat(c),index:c});return v.createElement(Qx,{option:n,lineItemProps:f,key:"line-".concat(c)})});return v.createElement("g",{className:"recharts-cartesian-grid-vertical"},s)}function I2(e){var{horizontalFill:t,fillOpacity:r,x:n,y:i,width:a,height:o,horizontalPoints:l,horizontal:s=!0}=e;if(!s||!t||!t.length||l==null)return null;var u=l.map(f=>Math.round(f+i-i)).sort((f,d)=>f-d);i!==u[0]&&u.unshift(0);var c=u.map((f,d)=>{var p=u[d+1],h=p==null,y=h?i+o-f:p-f;if(y<=0)return null;var m=d%t.length;return v.createElement("rect",{key:"react-".concat(d),y:f,x:n,height:y,width:a,stroke:"none",fill:t[m],fillOpacity:r,className:"recharts-cartesian-grid-bg"})});return v.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},c)}function T2(e){var{vertical:t=!0,verticalFill:r,fillOpacity:n,x:i,y:a,width:o,height:l,verticalPoints:s}=e;if(!t||!r||!r.length)return null;var u=s.map(f=>Math.round(f+i-i)).sort((f,d)=>f-d);i!==u[0]&&u.unshift(0);var c=u.map((f,d)=>{var p=u[d+1],h=p==null,y=h?i+o-f:p-f;if(y<=0)return null;var m=d%r.length;return v.createElement("rect",{key:"react-".concat(d),x:f,y:a,width:y,height:l,stroke:"none",fill:r[m],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return v.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},c)}var M2=(e,t)=>{var{xAxis:r,width:n,height:i,offset:a}=e;return Ug(td(qe(qe(qe({},Ut),r),{},{ticks:Gg(r),viewBox:{x:0,y:0,width:n,height:i}})),a.left,a.left+a.width,t)},D2=(e,t)=>{var{yAxis:r,width:n,height:i,offset:a}=e;return Ug(td(qe(qe(qe({},Ut),r),{},{ticks:Gg(r),viewBox:{x:0,y:0,width:n,height:i}})),a.top,a.top+a.height,t)},N2={horizontal:!0,vertical:!0,horizontalPoints:[],verticalPoints:[],stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[],xAxisId:0,yAxisId:0,syncWithTicks:!1,zIndex:Oe.grid};function Vn(e){var t=kc(),r=_c(),n=eb(),i=qe(qe({},be(e,N2)),{},{x:N(e.x)?e.x:n.left,y:N(e.y)?e.y:n.top,width:N(e.width)?e.width:n.width,height:N(e.height)?e.height:n.height}),{xAxisId:a,yAxisId:o,x:l,y:s,width:u,height:c,syncWithTicks:f,horizontalValues:d,verticalValues:p}=i,h=Le(),y=z(_=>Bh(_,"xAxis",a,h)),m=z(_=>Bh(_,"yAxis",o,h));if(!Mt(u)||!Mt(c)||!N(l)||!N(s))return null;var g=i.verticalCoordinatesGenerator||M2,w=i.horizontalCoordinatesGenerator||D2,{horizontalPoints:b,verticalPoints:P}=i;if((!b||!b.length)&&typeof w=="function"){var x=d&&d.length,O=w({yAxis:m?qe(qe({},m),{},{ticks:x?d:m.ticks}):void 0,width:t??u,height:r??c,offset:n},x?!0:f);Ma(Array.isArray(O),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(typeof O,"]")),Array.isArray(O)&&(b=O)}if((!P||!P.length)&&typeof g=="function"){var S=p&&p.length,A=g({xAxis:y?qe(qe({},y),{},{ticks:S?p:y.ticks}):void 0,width:t??u,height:r??c,offset:n},S?!0:f);Ma(Array.isArray(A),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(typeof A,"]")),Array.isArray(A)&&(P=A)}return v.createElement(Ze,{zIndex:i.zIndex},v.createElement("g",{className:"recharts-cartesian-grid"},v.createElement(k2,{fill:i.fill,fillOpacity:i.fillOpacity,x:i.x,y:i.y,width:i.width,height:i.height,ry:i.ry}),v.createElement(I2,Lr({},i,{horizontalPoints:b})),v.createElement(T2,Lr({},i,{verticalPoints:P})),v.createElement(_2,Lr({},i,{offset:n,horizontalPoints:b,xAxis:y,yAxis:m})),v.createElement(C2,Lr({},i,{offset:n,verticalPoints:P,xAxis:y,yAxis:m}))))}Vn.displayName="CartesianGrid";var R2={},ew=tt({name:"errorBars",initialState:R2,reducers:{addErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]||(e[r]=[]),e[r].push(n)},replaceErrorBar:(e,t)=>{var{itemId:r,prev:n,next:i}=t.payload;e[r]&&(e[r]=e[r].map(a=>a.dataKey===n.dataKey&&a.direction===n.direction?i:a))},removeErrorBar:(e,t)=>{var{itemId:r,errorBar:n}=t.payload;e[r]&&(e[r]=e[r].filter(i=>i.dataKey!==n.dataKey||i.direction!==n.direction))}}}),{addErrorBar:AW,replaceErrorBar:SW,removeErrorBar:EW}=ew.actions,$2=ew.reducer,L2=["children"];function z2(e,t){if(e==null)return{};var r,n,i=B2(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n({x:0,y:0,value:0}),errorBarOffset:0},W2=v.createContext(F2);function tw(e){var{children:t}=e,r=z2(e,L2);return v.createElement(W2.Provider,{value:r},t)}function vl(e,t){var r,n,i=z(u=>ir(u,e)),a=z(u=>ar(u,t)),o=(r=i?.allowDataOverflow)!==null&&r!==void 0?r:De.allowDataOverflow,l=(n=a?.allowDataOverflow)!==null&&n!==void 0?n:Ne.allowDataOverflow,s=o||l;return{needClip:s,needClipX:o,needClipY:l}}function nd(e){var{xAxisId:t,yAxisId:r,clipPathId:n}=e,i=dl(),{needClipX:a,needClipY:o,needClip:l}=vl(t,r);if(!l||!i)return null;var{x:s,y:u,width:c,height:f}=i;return v.createElement("clipPath",{id:"clipPath-".concat(n)},v.createElement("rect",{x:a?s:s-c/2,y:o?u:u-f/2,width:a?c:c*2,height:o?f:f*2}))}var rw=(e,t,r,n)=>Rt(e,"xAxis",t,n),nw=(e,t,r,n)=>Nt(e,"xAxis",t,n),iw=(e,t,r,n)=>Rt(e,"yAxis",r,n),aw=(e,t,r,n)=>Nt(e,"yAxis",r,n),K2=j([J,rw,iw,nw,aw],(e,t,r,n,i)=>At(e,"xAxis")?hr(t,n,!1):hr(r,i,!1)),q2=(e,t,r,n,i)=>i;function U2(e){return e.type==="line"}var G2=j([ji,q2],(e,t)=>e.filter(U2).find(r=>r.id===t)),V2=j([J,rw,iw,nw,aw,G2,K2,rf],(e,t,r,n,i,a,o,l)=>{var{chartData:s,dataStartIndex:u,dataEndIndex:c}=l;if(!(a==null||t==null||r==null||n==null||i==null||n.length===0||i.length===0||o==null||e!=="horizontal"&&e!=="vertical")){var{dataKey:f,data:d}=a,p;if(d!=null&&d.length>0?p=d:p=s?.slice(u,c+1),p!=null)return M$({layout:e,xAxis:t,yAxis:r,xAxisTicks:n,yAxisTicks:i,dataKey:f,bandSize:o,displayedData:p})}});function ow(e){var t=Kr(e),r=3,n=2;if(t!=null){var{r:i,strokeWidth:a}=t,o=Number(i),l=Number(a);return(Number.isNaN(o)||o<0)&&(o=r),(Number.isNaN(l)||l<0)&&(l=n),{r:o,strokeWidth:l}}return{r,strokeWidth:n}}var Gs={exports:{}},Vs={};var Zm;function H2(){if(Zm)return Vs;Zm=1;var e=nc();function t(s,u){return s===u&&(s!==0||1/s===1/u)||s!==s&&u!==u}var r=typeof Object.is=="function"?Object.is:t,n=e.useSyncExternalStore,i=e.useRef,a=e.useEffect,o=e.useMemo,l=e.useDebugValue;return Vs.useSyncExternalStoreWithSelector=function(s,u,c,f,d){var p=i(null);if(p.current===null){var h={hasValue:!1,value:null};p.current=h}else h=p.current;p=o(function(){function m(x){if(!g){if(g=!0,w=x,x=f(x),d!==void 0&&h.hasValue){var O=h.value;if(d(O,x))return b=O}return b=x}if(O=b,r(w,x))return O;var S=f(x);return d!==void 0&&d(O,S)?(w=x,O):(w=x,b=S)}var g=!1,w,b,P=c===void 0?null:c;return[function(){return m(u())},P===null?void 0:function(){return m(P())}]},[u,c,f,d]);var y=n(s,p[0],p[1]);return a(function(){h.hasValue=!0,h.value=y},[y]),l(y),y},Vs}var Jm;function Y2(){return Jm||(Jm=1,Gs.exports=H2()),Gs.exports}Y2();function X2(e){e()}function Z2(){let e=null,t=null;return{clear(){e=null,t=null},notify(){X2(()=>{let r=e;for(;r;)r.callback(),r=r.next})},get(){const r=[];let n=e;for(;n;)r.push(n),n=n.next;return r},subscribe(r){let n=!0;const i=t={callback:r,next:null,prev:t};return i.prev?i.prev.next=i:e=i,function(){!n||e===null||(n=!1,i.next?i.next.prev=i.prev:t=i.prev,i.prev?i.prev.next=i.next:e=i.next)}}}}var Qm={notify(){},get:()=>[]};function J2(e,t){let r,n=Qm,i=0,a=!1;function o(y){c();const m=n.subscribe(y);let g=!1;return()=>{g||(g=!0,m(),f())}}function l(){n.notify()}function s(){h.onStateChange&&h.onStateChange()}function u(){return a}function c(){i++,r||(r=e.subscribe(s),n=Z2())}function f(){i--,r&&i===0&&(r(),r=void 0,n.clear(),n=Qm)}function d(){a||(a=!0,c())}function p(){a&&(a=!1,f())}const h={addNestedSub:o,notifyNestedSubs:l,handleChangeWrapper:s,isSubscribed:u,trySubscribe:d,tryUnsubscribe:p,getListeners:()=>n};return h}var Q2=()=>typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",e$=Q2(),t$=()=>typeof navigator<"u"&&navigator.product==="ReactNative",r$=t$(),n$=()=>e$||r$?v.useLayoutEffect:v.useEffect,i$=n$();function ey(e,t){return e===t?e!==0||t!==0||1/e===1/t:e!==e&&t!==t}function a$(e,t){if(ey(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;for(let i=0;i{const s=J2(i);return{store:i,subscription:s,getServerState:n?()=>n:void 0}},[i,n]),o=v.useMemo(()=>i.getState(),[i]);i$(()=>{const{subscription:s}=a;return s.onStateChange=s.notifyNestedSubs,s.trySubscribe(),o!==i.getState()&&s.notifyNestedSubs(),()=>{s.tryUnsubscribe(),s.onStateChange=void 0}},[a,o]);const l=r||u$;return v.createElement(l.Provider,{value:a},t)}var f$=c$,d$=new Set(["axisLine","tickLine","activeBar","activeDot","activeLabel","activeShape","allowEscapeViewBox","background","cursor","dot","label","line","margin","padding","position","shape","style","tick","wrapperStyle","radius"]);function v$(e,t){return e==null&&t==null?!0:typeof e=="number"&&typeof t=="number"?e===t||e!==e&&t!==t:e===t}function Di(e,t){var r=new Set([...Object.keys(e),...Object.keys(t)]);for(var n of r)if(d$.has(n)){if(e[n]==null&&t[n]==null)continue;if(!a$(e[n],t[n]))return!1}else if(!v$(e[n],t[n]))return!1;return!0}var p$=["id"],h$=["type","layout","connectNulls","needClip","shape"],m$=["activeDot","animateNewValues","animationBegin","animationDuration","animationEasing","connectNulls","dot","hide","isAnimationActive","label","legendType","xAxisId","yAxisId","id"];function di(){return di=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:r,stroke:n,legendType:i,hide:a}=e;return[{inactive:a,dataKey:t,type:i,color:n,value:xr(r,t),payload:e}]},P$=v.memo(e=>{var{dataKey:t,data:r,stroke:n,strokeWidth:i,fill:a,name:o,hide:l,unit:s,tooltipType:u,id:c}=e,f={dataDefinedOnItem:r,getPosition:br,settings:{stroke:n,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:xr(o,t),hide:l,type:u,color:n,unit:s,graphicalItemId:c}};return v.createElement(ul,{tooltipEntrySettings:f})}),lw=(e,t)=>"".concat(t,"px ").concat(e-t,"px");function O$(e,t){for(var r=e.length%2!==0?[...e,0]:e,n=[],i=0;i{var n=r.reduce((p,h)=>p+h);if(!n)return lw(t,e);for(var i=Math.floor(e/n),a=e%n,o=t-e,l=[],s=0,u=0;sa){l=[...r.slice(0,s),a-u];break}}var d=l.length%2===0?[0,o]:[o];return[...O$(r,i),...l,...d].map(p=>"".concat(p,"px")).join(", ")};function S$(e){var{clipPathId:t,points:r,props:n}=e,{dot:i,dataKey:a,needClip:o}=n,{id:l}=n,s=id(n,p$),u=Ye(s);return v.createElement(Gx,{points:r,dot:i,className:"recharts-line-dots",dotClassName:"recharts-line-dot",dataKey:a,baseProps:u,needClip:o,clipPathId:t})}function E$(e){var{showLabels:t,children:r,points:n}=e,i=v.useMemo(()=>n?.map(a=>{var o,l,s={x:(o=a.x)!==null&&o!==void 0?o:0,y:(l=a.y)!==null&&l!==void 0?l:0,width:0,lowerWidth:0,upperWidth:0,height:0};return kt(kt({},s),{},{value:a.value,payload:a.payload,viewBox:s,parentViewBox:void 0,fill:void 0})}),[n]);return v.createElement(qf,{value:t?i:void 0},r)}function ry(e){var{clipPathId:t,pathRef:r,points:n,strokeDasharray:i,props:a}=e,{type:o,layout:l,connectNulls:s,needClip:u,shape:c}=a,f=id(a,h$),d=kt(kt({},Ge(f)),{},{fill:"none",className:"recharts-line-curve",clipPath:u?"url(#clipPath-".concat(t,")"):void 0,points:n,type:o,layout:l,connectNulls:s,strokeDasharray:i??a.strokeDasharray});return v.createElement(v.Fragment,null,n?.length>1&&v.createElement(Yf,di({shapeType:"curve",option:c},d,{pathRef:r})),v.createElement(S$,{points:n,clipPathId:t,props:a}))}function j$(e){try{return e&&e.getTotalLength&&e.getTotalLength()||0}catch{return 0}}function k$(e){var{clipPathId:t,props:r,pathRef:n,previousPointsRef:i,longestAnimatedLengthRef:a}=e,{points:o,strokeDasharray:l,isAnimationActive:s,animationBegin:u,animationDuration:c,animationEasing:f,animateNewValues:d,width:p,height:h,onAnimationEnd:y,onAnimationStart:m}=r,g=i.current,w=wn(o,"recharts-line-"),b=v.useRef(w),[P,x]=v.useState(!1),O=!P,S=v.useCallback(()=>{typeof y=="function"&&y(),x(!1)},[y]),A=v.useCallback(()=>{typeof m=="function"&&m(),x(!0)},[m]),_=j$(n.current),M=v.useRef(0);b.current!==w&&(M.current=a.current,b.current=w);var I=M.current;return v.createElement(E$,{points:o,showLabels:O},r.children,v.createElement(xn,{animationId:w,begin:u,duration:c,isActive:s,easing:f,onAnimationEnd:S,onAnimationStart:A,key:w},k=>{var $=re(I,_+I,k),R=Math.min($,_),W;if(s)if(l){var K="".concat(l).split(/[,\s]+/gim).map(U=>parseFloat(U));W=A$(R,_,K)}else W=lw(_,R);else W=l==null?void 0:String(l);if(k>0&&_>0&&(i.current=o,a.current=Math.max(a.current,R)),g){var q=g.length/o.length,Y=k===1?o:o.map((U,D)=>{var ue=Math.floor(D*q);if(g[ue]){var we=g[ue];return kt(kt({},U),{},{x:re(we.x,U.x,k),y:re(we.y,U.y,k)})}return d?kt(kt({},U),{},{x:re(p*2,U.x,k),y:re(h/2,U.y,k)}):kt(kt({},U),{},{x:U.x,y:U.y})});return i.current=Y,v.createElement(ry,{props:r,points:Y,clipPathId:t,pathRef:n,strokeDasharray:W})}return v.createElement(ry,{props:r,points:o,clipPathId:t,pathRef:n,strokeDasharray:W})}),v.createElement(ol,{label:r.label}))}function _$(e){var{clipPathId:t,props:r}=e,n=v.useRef(null),i=v.useRef(0),a=v.useRef(null);return v.createElement(k$,{props:r,clipPathId:t,previousPointsRef:n,longestAnimatedLengthRef:i,pathRef:a})}var C$=(e,t)=>{var r,n;return{x:(r=e.x)!==null&&r!==void 0?r:void 0,y:(n=e.y)!==null&&n!==void 0?n:void 0,value:e.value,errorVal:ne(e.payload,t)}};class I$ extends v.Component{render(){var{hide:t,dot:r,points:n,className:i,xAxisId:a,yAxisId:o,top:l,left:s,width:u,height:c,id:f,needClip:d,zIndex:p}=this.props;if(t)return null;var h=Z("recharts-line",i),y=f,{r:m,strokeWidth:g}=ow(r),w=Hf(r),b=m*2+g,P=d?"url(#clipPath-".concat(w?"":"dots-").concat(y,")"):void 0;return v.createElement(Ze,{zIndex:p},v.createElement(ge,{className:h},d&&v.createElement("defs",null,v.createElement(nd,{clipPathId:y,xAxisId:a,yAxisId:o}),!w&&v.createElement("clipPath",{id:"clipPath-dots-".concat(y)},v.createElement("rect",{x:s-b/2,y:l-b/2,width:u+b,height:c+b}))),v.createElement(tw,{xAxisId:a,yAxisId:o,data:n,dataPointFormatter:C$,errorBarOffset:0},v.createElement(_$,{props:this.props,clipPathId:y}))),v.createElement(Ku,{activeDot:this.props.activeDot,points:n,mainColor:this.props.stroke,itemDataKey:this.props.dataKey,clipPath:P}))}}var sw={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:Oe.line,type:"linear"};function T$(e){var t=be(e,sw),{activeDot:r,animateNewValues:n,animationBegin:i,animationDuration:a,animationEasing:o,connectNulls:l,dot:s,hide:u,isAnimationActive:c,label:f,legendType:d,xAxisId:p,yAxisId:h,id:y}=t,m=id(t,m$),{needClip:g}=vl(p,h),w=dl(),b=wr(),P=Le(),x=z(M=>V2(M,p,h,P,y));if(b!=="horizontal"&&b!=="vertical"||x==null||w==null)return null;var{height:O,width:S,x:A,y:_}=w;return v.createElement(I$,di({},m,{id:y,connectNulls:l,dot:s,activeDot:r,animateNewValues:n,animationBegin:i,animationDuration:a,animationEasing:o,isAnimationActive:c,hide:u,label:f,legendType:d,xAxisId:p,yAxisId:h,points:x,layout:b,height:O,width:S,left:A,top:_,needClip:g}))}function M$(e){var{layout:t,xAxis:r,yAxis:n,xAxisTicks:i,yAxisTicks:a,dataKey:o,bandSize:l,displayedData:s}=e;return s.map((u,c)=>{var f=ne(u,o);if(t==="horizontal"){var d=Ta({axis:r,ticks:i,bandSize:l,entry:u,index:c}),p=de(f)?null:n.scale.map(f);return{x:d,y:p??null,value:f,payload:u}}var h=de(f)?null:r.scale.map(f),y=Ta({axis:n,ticks:a,bandSize:l,entry:u,index:c});return h==null||y==null?null:{x:h,y,value:f,payload:u}}).filter(Boolean)}function D$(e){var t=be(e,sw),r=Le();return v.createElement(cl,{id:t.id,type:"line"},n=>v.createElement(v.Fragment,null,v.createElement(Qf,{legendPayload:w$(t)}),v.createElement(P$,{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:n}),v.createElement(ed,{type:"line",id:n,data:t.data,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,hide:t.hide,isPanorama:r}),v.createElement(T$,di({},t,{id:n}))))}var pa=v.memo(D$,Di);pa.displayName="Line";function $t(e,t){var r,n;return(r=(n=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||n===void 0?void 0:n.xAxisId)!==null&&r!==void 0?r:Vx}function Lt(e,t){var r,n;return(r=(n=e.graphicalItems.cartesianItems.find(i=>i.id===t))===null||n===void 0?void 0:n.yAxisId)!==null&&r!==void 0?r:Vx}var uw=(e,t,r)=>Rt(e,"xAxis",$t(e,t),r),cw=(e,t,r)=>Nt(e,"xAxis",$t(e,t),r),fw=(e,t,r)=>Rt(e,"yAxis",Lt(e,t),r),dw=(e,t,r)=>Nt(e,"yAxis",Lt(e,t),r),N$=j([J,uw,fw,cw,dw],(e,t,r,n,i)=>At(e,"xAxis")?hr(t,n,!1):hr(r,i,!1)),R$=(e,t)=>t,vw=j([ji,R$],(e,t)=>e.filter(r=>r.type==="area").find(r=>r.id===t)),pw=e=>{var t=J(e),r=At(t,"xAxis");return r?"yAxis":"xAxis"},$$=(e,t)=>{var r=pw(e);return r==="yAxis"?Lt(e,t):$t(e,t)},L$=(e,t,r)=>to(e,pw(e),$$(e,t),r),z$=j([vw,L$],(e,t)=>{var r;if(!(e==null||t==null)){var{stackId:n}=e,i=Yo(e);if(!(n==null||i==null)){var a=(r=t[n])===null||r===void 0?void 0:r.stackedData,o=a?.find(l=>l.key===i);if(o!=null)return o.map(l=>[l[0],l[1]])}}}),B$=j([J,uw,fw,cw,dw,z$,r0,N$,vw,fC],(e,t,r,n,i,a,o,l,s,u)=>{var{chartData:c,dataStartIndex:f,dataEndIndex:d}=o;if(!(s==null||e!=="horizontal"&&e!=="vertical"||t==null||r==null||n==null||i==null||n.length===0||i.length===0||l==null)){var{data:p}=s,h;if(p&&p.length>0?h=p:h=c?.slice(f,d+1),h!=null)return aL({layout:e,xAxis:t,yAxis:r,xAxisTicks:n,yAxisTicks:i,dataStartIndex:f,areaSettings:s,stackedData:a,displayedData:h,chartBaseValue:u,bandSize:l})}}),F$=["id"],W$=["activeDot","animationBegin","animationDuration","animationEasing","connectNulls","dot","fill","fillOpacity","hide","isAnimationActive","legendType","stroke","xAxisId","yAxisId"];function Wr(){return Wr=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:r,stroke:n,fill:i,legendType:a,hide:o}=e;return[{inactive:o,dataKey:t,type:a,color:uo(n,i),value:xr(r,t),payload:e}]},H$=v.memo(e=>{var{dataKey:t,data:r,stroke:n,strokeWidth:i,fill:a,name:o,hide:l,unit:s,tooltipType:u,id:c}=e,f={dataDefinedOnItem:r,getPosition:br,settings:{stroke:n,strokeWidth:i,fill:a,dataKey:t,nameKey:void 0,name:xr(o,t),hide:l,type:u,color:uo(n,a),unit:s,graphicalItemId:c}};return v.createElement(ul,{tooltipEntrySettings:f})});function Y$(e){var{clipPathId:t,points:r,props:n}=e,{needClip:i,dot:a,dataKey:o}=n,l=Ye(n);return v.createElement(Gx,{points:r,dot:a,className:"recharts-area-dots",dotClassName:"recharts-area-dot",dataKey:o,baseProps:l,needClip:i,clipPathId:t})}function X$(e){var{showLabels:t,children:r,points:n}=e,i=n.map(a=>{var o,l,s={x:(o=a.x)!==null&&o!==void 0?o:0,y:(l=a.y)!==null&&l!==void 0?l:0,width:0,lowerWidth:0,upperWidth:0,height:0};return cn(cn({},s),{},{value:a.value,payload:a.payload,parentViewBox:void 0,viewBox:s,fill:void 0})});return v.createElement(qf,{value:t?i:void 0},r)}function iy(e){var{points:t,baseLine:r,needClip:n,clipPathId:i,props:a}=e,{layout:o,type:l,stroke:s,connectNulls:u,isRange:c}=a,{id:f}=a,d=hw(a,F$),p=Ye(d),h=Ge(d);return v.createElement(v.Fragment,null,t?.length>1&&v.createElement(ge,{clipPath:n?"url(#clipPath-".concat(i,")"):void 0},v.createElement(dn,Wr({},h,{id:f,points:t,connectNulls:u,type:l,baseLine:r,layout:o,stroke:"none",className:"recharts-area-area"})),s!=="none"&&v.createElement(dn,Wr({},p,{className:"recharts-area-curve",layout:o,type:l,connectNulls:u,fill:"none",points:t})),s!=="none"&&c&&v.createElement(dn,Wr({},p,{className:"recharts-area-curve",layout:o,type:l,connectNulls:u,fill:"none",points:r}))),v.createElement(Y$,{points:t,props:d,clipPathId:i}))}function Z$(e){var t,r,{alpha:n,baseLine:i,points:a,strokeWidth:o}=e,l=(t=a[0])===null||t===void 0?void 0:t.y,s=(r=a[a.length-1])===null||r===void 0?void 0:r.y;if(!H(l)||!H(s))return null;var u=n*Math.abs(l-s),c=Math.max(...a.map(f=>f.x||0));return N(i)?c=Math.max(i,c):i&&Array.isArray(i)&&i.length&&(c=Math.max(...i.map(f=>f.x||0),c)),N(c)?v.createElement("rect",{x:0,y:lf.y||0));return N(i)?c=Math.max(i,c):i&&Array.isArray(i)&&i.length&&(c=Math.max(...i.map(f=>f.y||0),c)),N(c)?v.createElement("rect",{x:l({points:o,baseLine:l}),[o,l]),y=wn(h,"recharts-area-"),m=Cc(),[g,w]=v.useState(!1),b=!g,P=v.useCallback(()=>{typeof p=="function"&&p(),w(!1)},[p]),x=v.useCallback(()=>{typeof d=="function"&&d(),w(!0)},[d]);if(m==null)return null;var O=i.current,S=a.current;return v.createElement(X$,{showLabels:b,points:o},n.children,v.createElement(xn,{animationId:y,begin:u,duration:c,isActive:s,easing:f,onAnimationEnd:P,onAnimationStart:x,key:y},A=>{if(O){var _=O.length/o.length,M=A===1?o:o.map((k,$)=>{var R=Math.floor($*_);if(O[R]){var W=O[R];return cn(cn({},k),{},{x:re(W.x,k.x,A),y:re(W.y,k.y,A)})}return k}),I;return N(l)?I=re(S,l,A):de(l)||wt(l)?I=re(S,0,A):I=l.map((k,$)=>{var R=Math.floor($*_);if(Array.isArray(S)&&S[R]){var W=S[R];return cn(cn({},k),{},{x:re(W.x,k.x,A),y:re(W.y,k.y,A)})}return k}),A>0&&(i.current=M,a.current=I),v.createElement(iy,{points:M,baseLine:I,needClip:t,clipPathId:r,props:n})}return A>0&&(i.current=o,a.current=l),v.createElement(ge,null,s&&v.createElement("defs",null,v.createElement("clipPath",{id:"animationClipPath-".concat(r)},v.createElement(Q$,{alpha:A,points:o,baseLine:l,layout:m,strokeWidth:n.strokeWidth}))),v.createElement(ge,{clipPath:"url(#animationClipPath-".concat(r,")")},v.createElement(iy,{points:o,baseLine:l,needClip:t,clipPathId:r,props:n})))}),v.createElement(ol,{label:n.label}))}function tL(e){var{needClip:t,clipPathId:r,props:n}=e,i=v.useRef(null),a=v.useRef();return v.createElement(eL,{needClip:t,clipPathId:r,props:n,previousPointsRef:i,previousBaselineRef:a})}class rL extends v.PureComponent{render(){var{hide:t,dot:r,points:n,className:i,top:a,left:o,needClip:l,xAxisId:s,yAxisId:u,width:c,height:f,id:d,baseLine:p,zIndex:h}=this.props;if(t)return null;var y=Z("recharts-area",i),m=d,{r:g,strokeWidth:w}=ow(r),b=Hf(r),P=g*2+w,x=l?"url(#clipPath-".concat(b?"":"dots-").concat(m,")"):void 0;return v.createElement(Ze,{zIndex:h},v.createElement(ge,{className:y},l&&v.createElement("defs",null,v.createElement(nd,{clipPathId:m,xAxisId:s,yAxisId:u}),!b&&v.createElement("clipPath",{id:"clipPath-dots-".concat(m)},v.createElement("rect",{x:o-P/2,y:a-P/2,width:c+P,height:f+P}))),v.createElement(tL,{needClip:l,clipPathId:m,props:this.props})),v.createElement(Ku,{points:n,mainColor:uo(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:x}),this.props.isRange&&Array.isArray(p)&&v.createElement(Ku,{points:p,mainColor:uo(this.props.stroke,this.props.fill),itemDataKey:this.props.dataKey,activeDot:this.props.activeDot,clipPath:x}))}}var mw={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:Oe.area};function nL(e){var t,r=be(e,mw),{activeDot:n,animationBegin:i,animationDuration:a,animationEasing:o,connectNulls:l,dot:s,fill:u,fillOpacity:c,hide:f,isAnimationActive:d,legendType:p,stroke:h,xAxisId:y,yAxisId:m}=r,g=hw(r,W$),w=wr(),b=yx(),{needClip:P}=vl(y,m),x=Le(),{points:O,isRange:S,baseLine:A}=(t=z(R=>B$(R,e.id,x)))!==null&&t!==void 0?t:{},_=dl();if(w!=="horizontal"&&w!=="vertical"||_==null||b!=="AreaChart"&&b!=="ComposedChart")return null;var{height:M,width:I,x:k,y:$}=_;return!O||!O.length?null:v.createElement(rL,Wr({},g,{activeDot:n,animationBegin:i,animationDuration:a,animationEasing:o,baseLine:A,connectNulls:l,dot:s,fill:u,fillOpacity:c,height:M,hide:f,layout:w,isAnimationActive:d==="auto"?!xi.isSsr:d,isRange:S,legendType:p,needClip:P,points:O,stroke:h,width:I,left:k,top:$,xAxisId:y,yAxisId:m}))}var iL=(e,t,r,n,i)=>{var a=r??t;if(N(a))return a;var o=e==="horizontal"?i:n,l=o.scale.domain();if(o.type==="number"){var s=Math.max(l[0],l[1]),u=Math.min(l[0],l[1]);return a==="dataMin"?u:a==="dataMax"||s<0?s:Math.max(Math.min(l[0],l[1]),0)}return a==="dataMin"?l[0]:a==="dataMax"?l[1]:l[0]};function aL(e){var{areaSettings:{connectNulls:t,baseValue:r,dataKey:n},stackedData:i,layout:a,chartBaseValue:o,xAxis:l,yAxis:s,displayedData:u,dataStartIndex:c,xAxisTicks:f,yAxisTicks:d,bandSize:p}=e,h=i&&i.length,y=iL(a,o,r,l,s),m=a==="horizontal",g=!1,w=u.map((P,x)=>{var O,S,A,_;if(h)_=i[c+x];else{var M=ne(P,n);Array.isArray(M)?(_=M,g=!0):_=[y,M]}var I=(O=(S=_)===null||S===void 0?void 0:S[1])!==null&&O!==void 0?O:null,k=I==null||h&&!t&&ne(P,n)==null;if(m){var $;return{x:Ta({axis:l,ticks:f,bandSize:p,entry:P,index:x}),y:k?null:($=s.scale.map(I))!==null&&$!==void 0?$:null,value:_,payload:P}}return{x:k?null:(A=l.scale.map(I))!==null&&A!==void 0?A:null,y:Ta({axis:s,ticks:d,bandSize:p,entry:P,index:x}),value:_,payload:P}}),b;return h||g?b=w.map(P=>{var x,O=Array.isArray(P.value)?P.value[0]:null;if(m){var S;return{x:P.x,y:O!=null&&P.y!=null&&(S=s.scale.map(O))!==null&&S!==void 0?S:null,payload:P.payload}}return{x:O!=null&&(x=l.scale.map(O))!==null&&x!==void 0?x:null,y:P.y,payload:P.payload}}):b=m?s.scale.map(y):l.scale.map(y),{points:w,baseLine:b??0,isRange:g}}function oL(e){var t=be(e,mw),r=Le();return v.createElement(cl,{id:t.id,type:"area"},n=>v.createElement(v.Fragment,null,v.createElement(Qf,{legendPayload:V$(t)}),v.createElement(H$,{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:n}),v.createElement(ed,{type:"area",id:n,data:t.data,dataKey:t.dataKey,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,stackId:Vg(t.stackId),hide:t.hide,barSize:void 0,baseValue:t.baseValue,isPanorama:r,connectNulls:t.connectNulls}),v.createElement(nL,Wr({},t,{id:n}))))}var yw=v.memo(oL,Di);yw.displayName="Area";var lL="Invariant failed";function sL(e,t){throw new Error(lL)}function qu(){return qu=Object.assign?Object.assign.bind():function(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:0;return(n,i)=>{if(N(t))return t;var a=N(n)||de(n);return a?t(n,i):(a||sL(),r)}},cL=(e,t,r)=>r,fL=(e,t)=>t,Ni=j([ji,fL],(e,t)=>e.filter(r=>r.type==="bar").find(r=>r.id===t)),dL=j([Ni],e=>e?.maxBarSize),vL=(e,t,r,n)=>n,pL=j([J,ji,$t,Lt,cL],(e,t,r,n,i)=>t.filter(a=>e==="horizontal"?a.xAxisId===r:a.yAxisId===n).filter(a=>a.isPanorama===i).filter(a=>a.hide===!1).filter(a=>a.type==="bar")),hL=(e,t,r)=>{var n=J(e),i=$t(e,t),a=Lt(e,t);if(!(i==null||a==null))return n==="horizontal"?to(e,"yAxis",a,r):to(e,"xAxis",i,r)},mL=(e,t)=>{var r=J(e),n=$t(e,t),i=Lt(e,t);if(!(n==null||i==null))return r==="horizontal"?zh(e,"xAxis",n):zh(e,"yAxis",i)},yL=j([pL,cC,mL],DR),gL=(e,t,r)=>{var n,i,a=Ni(e,t);if(a==null)return 0;var o=$t(e,t),l=Lt(e,t);if(o==null||l==null)return 0;var s=J(e),u=p0(e),{maxBarSize:c}=a,f=de(c)?u:c,d,p;return s==="horizontal"?(d=Rt(e,"xAxis",o,r),p=Nt(e,"xAxis",o,r)):(d=Rt(e,"yAxis",l,r),p=Nt(e,"yAxis",l,r)),(n=(i=hr(d,p,!0))!==null&&i!==void 0?i:f)!==null&&n!==void 0?n:0},gw=(e,t,r)=>{var n=J(e),i=$t(e,t),a=Lt(e,t);if(!(i==null||a==null)){var o,l;return n==="horizontal"?(o=Rt(e,"xAxis",i,r),l=Nt(e,"xAxis",i,r)):(o=Rt(e,"yAxis",a,r),l=Nt(e,"yAxis",a,r)),hr(o,l)}},bL=j([yL,p0,uC,h0,gL,gw,dL],zR),xL=(e,t,r)=>{var n=$t(e,t);if(n!=null)return Rt(e,"xAxis",n,r)},wL=(e,t,r)=>{var n=Lt(e,t);if(n!=null)return Rt(e,"yAxis",n,r)},PL=(e,t,r)=>{var n=$t(e,t);if(n!=null)return Nt(e,"xAxis",n,r)},OL=(e,t,r)=>{var n=Lt(e,t);if(n!=null)return Nt(e,"yAxis",n,r)},AL=j([bL,Ni],FR),SL=j([hL,Ni],BR),EL=j([_e,Sc,xL,wL,PL,OL,AL,J,r0,gw,SL,Ni,vL],(e,t,r,n,i,a,o,l,s,u,c,f,d)=>{var{chartData:p,dataStartIndex:h,dataEndIndex:y}=s;if(!(f==null||o==null||t==null||l!=="horizontal"&&l!=="vertical"||r==null||n==null||i==null||a==null||u==null)){var{data:m}=f,g;if(m!=null&&m.length>0?g=m:g=p?.slice(h,y+1),g!=null)return ez({layout:l,barSettings:f,pos:o,parentViewBox:t,bandSize:u,xAxis:r,yAxis:n,xAxisTicks:i,yAxisTicks:a,stackedData:c,displayedData:g,offset:e,cells:d,dataStartIndex:h})}}),jL=["index"];function Uu(){return Uu=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var t=v.useContext(bw);if(t!=null)return t.stackId;if(e!=null)return Vg(e)},IL=(e,t)=>"recharts-bar-stack-clip-path-".concat(e,"-").concat(t),TL=e=>{var t=v.useContext(bw);if(t!=null){var{stackId:r}=t;return"url(#".concat(IL(r,e),")")}},xw=e=>{var{index:t}=e,r=kL(e,jL),n=TL(t);return v.createElement(ge,Uu({className:"recharts-bar-stack-layer",clipPath:n},r))},ML=["onMouseEnter","onMouseLeave","onClick"],DL=["value","background","tooltipPosition"],NL=["id"],RL=["onMouseEnter","onClick","onMouseLeave"];function Qt(){return Qt=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var{dataKey:t,name:r,fill:n,legendType:i,hide:a}=e;return[{inactive:a,dataKey:t,type:i,color:n,value:xr(r,t),payload:e}]},WL=v.memo(e=>{var{dataKey:t,stroke:r,strokeWidth:n,fill:i,name:a,hide:o,unit:l,tooltipType:s,id:u}=e,c={dataDefinedOnItem:void 0,getPosition:br,settings:{stroke:r,strokeWidth:n,fill:i,dataKey:t,nameKey:void 0,name:xr(a,t),hide:o,type:s,color:i,unit:l,graphicalItemId:u}};return v.createElement(ul,{tooltipEntrySettings:c})});function KL(e){var t=z(mr),{data:r,dataKey:n,background:i,allOtherBarProps:a}=e,{onMouseEnter:o,onMouseLeave:l,onClick:s}=a,u=fo(a,ML),c=Xf(o,n,a.id),f=Zf(l),d=Jf(s,n,a.id);if(!i||r==null)return null;var p=Kr(i);return v.createElement(Ze,{zIndex:WR(i,Oe.barBackground)},r.map((h,y)=>{var{value:m,background:g,tooltipPosition:w}=h,b=fo(h,DL);if(!g)return null;var P=c(h,y),x=f(h,y),O=d(h,y),S=Ve(Ve(Ve(Ve(Ve({option:i,isActive:String(y)===t},b),{},{fill:"#eee"},g),p),pi(u,h,y)),{},{onMouseEnter:P,onMouseLeave:x,onClick:O,dataKey:n,index:y,className:"recharts-bar-background-rectangle"});return v.createElement(co,Qt({key:"background-bar-".concat(y)},S))}))}function qL(e){var{showLabels:t,children:r,rects:n}=e,i=n?.map(a=>{var o={x:a.x,y:a.y,width:a.width,lowerWidth:a.width,upperWidth:a.width,height:a.height};return Ve(Ve({},o),{},{value:a.value,payload:a.payload,parentViewBox:a.parentViewBox,viewBox:o,fill:a.fill})});return v.createElement(qf,{value:t?i:void 0},r)}function UL(e){var{shape:t,activeBar:r,baseProps:n,entry:i,index:a,dataKey:o}=e,l=z(mr),s=z(Lf),u=r&&String(a)===l&&(s==null||o===s),c=u?r:t;return u?v.createElement(Ze,{zIndex:Oe.activeBar},v.createElement(xw,{index:a},v.createElement(co,Qt({},n,{name:String(n.name)},i,{isActive:u,option:c,index:a,dataKey:o})))):v.createElement(co,Qt({},n,{name:String(n.name)},i,{isActive:u,option:c,index:a,dataKey:o}))}function GL(e){var{shape:t,baseProps:r,entry:n,index:i,dataKey:a}=e;return v.createElement(co,Qt({},r,{name:String(r.name)},n,{isActive:!1,option:t,index:i,dataKey:a}))}function VL(e){var t,{data:r,props:n}=e,i=(t=Ye(n))!==null&&t!==void 0?t:{},{id:a}=i,o=fo(i,NL),{shape:l,dataKey:s,activeBar:u}=n,{onMouseEnter:c,onClick:f,onMouseLeave:d}=n,p=fo(n,RL),h=Xf(c,s,a),y=Zf(d),m=Jf(f,s,a);return r?v.createElement(v.Fragment,null,r.map((g,w)=>v.createElement(xw,Qt({index:w,key:"rectangle-".concat(g?.x,"-").concat(g?.y,"-").concat(g?.value,"-").concat(w),className:"recharts-bar-rectangle"},pi(p,g,w),{onMouseEnter:h(g,w),onMouseLeave:y(g,w),onClick:m(g,w)}),u?v.createElement(UL,{shape:l,activeBar:u,baseProps:o,entry:g,index:w,dataKey:s}):v.createElement(GL,{shape:l,baseProps:o,entry:g,index:w,dataKey:s})))):null}function HL(e){var{props:t,previousRectanglesRef:r}=e,{data:n,layout:i,isAnimationActive:a,animationBegin:o,animationDuration:l,animationEasing:s,onAnimationEnd:u,onAnimationStart:c}=t,f=r.current,d=wn(t,"recharts-bar-"),[p,h]=v.useState(!1),y=!p,m=v.useCallback(()=>{typeof u=="function"&&u(),h(!1)},[u]),g=v.useCallback(()=>{typeof c=="function"&&c(),h(!0)},[c]);return v.createElement(qL,{showLabels:y,rects:n},v.createElement(xn,{animationId:d,begin:o,duration:l,isActive:a,easing:s,onAnimationEnd:m,onAnimationStart:g,key:d},w=>{var b=w===1?n:n?.map((P,x)=>{var O=f&&f[x];if(O)return Ve(Ve({},P),{},{x:re(O.x,P.x,w),y:re(O.y,P.y,w),width:re(O.width,P.width,w),height:re(O.height,P.height,w)});if(i==="horizontal"){var S=re(0,P.height,w),A=re(P.stackedBarStart,P.y,w);return Ve(Ve({},P),{},{y:A,height:S})}var _=re(0,P.width,w),M=re(P.stackedBarStart,P.x,w);return Ve(Ve({},P),{},{width:_,x:M})});return w>0&&(r.current=b??null),b==null?null:v.createElement(ge,null,v.createElement(VL,{props:t,data:b}))}),v.createElement(ol,{label:t.label}),t.children)}function YL(e){var t=v.useRef(null);return v.createElement(HL,{previousRectanglesRef:t,props:e})}var ww=0,XL=(e,t)=>{var r=Array.isArray(e.value)?e.value[1]:e.value;return{x:e.x,y:e.y,value:r,errorVal:ne(e,t)}};class ZL extends v.PureComponent{render(){var{hide:t,data:r,dataKey:n,className:i,xAxisId:a,yAxisId:o,needClip:l,background:s,id:u}=this.props;if(t||r==null)return null;var c=Z("recharts-bar",i),f=u;return v.createElement(ge,{className:c,id:u},l&&v.createElement("defs",null,v.createElement(nd,{clipPathId:f,xAxisId:a,yAxisId:o})),v.createElement(ge,{className:"recharts-bar-rectangles",clipPath:l?"url(#clipPath-".concat(f,")"):void 0},v.createElement(KL,{data:r,dataKey:n,background:s,allOtherBarProps:this.props}),v.createElement(YL,this.props)))}}var JL={activeBar:!1,animationBegin:0,animationDuration:400,animationEasing:"ease",background:!1,hide:!1,isAnimationActive:"auto",label:!1,legendType:"rect",minPointSize:ww,xAxisId:0,yAxisId:0,zIndex:Oe.bar};function QL(e){var{xAxisId:t,yAxisId:r,hide:n,legendType:i,minPointSize:a,activeBar:o,animationBegin:l,animationDuration:s,animationEasing:u,isAnimationActive:c}=e,{needClip:f}=vl(t,r),d=wr(),p=Le(),h=Vf(e.children,Mi),y=z(w=>EL(w,e.id,p,h));if(d!=="vertical"&&d!=="horizontal")return null;var m,g=y?.[0];return g==null||g.height==null||g.width==null?m=0:m=d==="vertical"?g.height/2:g.width/2,v.createElement(tw,{xAxisId:t,yAxisId:r,data:y,dataPointFormatter:XL,errorBarOffset:m},v.createElement(ZL,Qt({},e,{layout:d,needClip:f,data:y,xAxisId:t,yAxisId:r,hide:n,legendType:i,minPointSize:a,activeBar:o,animationBegin:l,animationDuration:s,animationEasing:u,isAnimationActive:c})))}function ez(e){var{layout:t,barSettings:{dataKey:r,minPointSize:n},pos:i,bandSize:a,xAxis:o,yAxis:l,xAxisTicks:s,yAxisTicks:u,stackedData:c,displayedData:f,offset:d,cells:p,parentViewBox:h,dataStartIndex:y}=e,m=t==="horizontal"?l:o,g=c?m.scale.domain():null,w=ZA({numericAxis:m}),b=m.scale.map(w);return f.map((P,x)=>{var O,S,A,_,M,I;if(c){var k=c[x+y];if(k==null)return null;O=GA(k,g)}else O=ne(P,r),Array.isArray(O)||(O=[w,O]);var $=uL(n,ww)(O[1],x);if(t==="horizontal"){var R,W=l.scale.map(O[0]),K=l.scale.map(O[1]);if(W==null||K==null)return null;S=Lv({axis:o,ticks:s,bandSize:a,offset:i.offset,entry:P,index:x}),A=(R=K??W)!==null&&R!==void 0?R:void 0,_=i.size;var q=W-K;if(M=wt(q)?0:q,I={x:S,y:d.top,width:_,height:d.height},Math.abs($)>0&&Math.abs(M)0&&Math.abs(_)v.createElement(v.Fragment,null,v.createElement(Qf,{legendPayload:FL(t)}),v.createElement(WL,{dataKey:t.dataKey,stroke:t.stroke,strokeWidth:t.strokeWidth,fill:t.fill,name:t.name,hide:t.hide,unit:t.unit,tooltipType:t.tooltipType,id:i}),v.createElement(ed,{type:"bar",id:i,data:void 0,xAxisId:t.xAxisId,yAxisId:t.yAxisId,zAxisId:0,dataKey:t.dataKey,stackId:r,hide:t.hide,barSize:t.barSize,minPointSize:t.minPointSize,maxBarSize:t.maxBarSize,isPanorama:n}),v.createElement(Ze,{zIndex:t.zIndex},v.createElement(QL,Qt({},t,{id:i})))))}var ha=v.memo(tz,Di);ha.displayName="Bar";var rz=["domain","range"],nz=["domain","range"];function oy(e,t){if(e==null)return{};var r,n,i=iz(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n{if(o!=null)return uy(uy({},a),{},{type:o})},[a,o]);return v.useLayoutEffect(()=>{l!=null&&(r.current===null?t(bR(l)):r.current!==l&&t(xR({prev:r.current,next:l})),r.current=l)},[l,t]),v.useLayoutEffect(()=>()=>{r.current&&(t(wR(r.current)),r.current=null)},[t]),null}var vz=e=>{var{xAxisId:t,className:r}=e,n=z(Sc),i=Le(),a="xAxis",o=z(g=>H0(g,a,t,i)),l=z(g=>q0(g,t)),s=z(g=>fI(g,t)),u=z(g=>S0(g,t));if(l==null||s==null||u==null)return null;var{dangerouslySetInnerHTML:c,ticks:f,scale:d}=e,p=Vu(e,oz),{id:h,scale:y}=u,m=Vu(u,lz);return v.createElement(rd,Gu({},p,m,{x:s.x,y:s.y,width:l.width,height:l.height,className:Z("recharts-".concat(a," ").concat(a),r),viewBox:n,ticks:o,axisType:a}))},pz={allowDataOverflow:De.allowDataOverflow,allowDecimals:De.allowDecimals,allowDuplicatedCategory:De.allowDuplicatedCategory,angle:De.angle,axisLine:Ut.axisLine,height:De.height,hide:!1,includeHidden:De.includeHidden,interval:De.interval,label:!1,minTickGap:De.minTickGap,mirror:De.mirror,orientation:De.orientation,padding:De.padding,reversed:De.reversed,scale:De.scale,tick:De.tick,tickCount:De.tickCount,tickLine:Ut.tickLine,tickSize:Ut.tickSize,type:De.type,xAxisId:0},hz=e=>{var t=be(e,pz);return v.createElement(v.Fragment,null,v.createElement(dz,{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}),v.createElement(vz,t))},Hn=v.memo(hz,Pw);Hn.displayName="XAxis";var mz=["type"],yz=["dangerouslySetInnerHTML","ticks","scale"],gz=["id","scale"];function Hu(){return Hu=Object.assign?Object.assign.bind():function(e){for(var t=1;t{if(o!=null)return fy(fy({},a),{},{type:o})},[o,a]);return v.useLayoutEffect(()=>{l!=null&&(r.current===null?t(PR(l)):r.current!==l&&t(OR({prev:r.current,next:l})),r.current=l)},[l,t]),v.useLayoutEffect(()=>()=>{r.current&&(t(AR(r.current)),r.current=null)},[t]),null}function Az(e){var{yAxisId:t,className:r,width:n,label:i}=e,a=v.useRef(null),o=v.useRef(null),l=z(Sc),s=Le(),u=le(),c="yAxis",f=z(O=>U0(O,t)),d=z(O=>vI(O,t)),p=z(O=>H0(O,c,t,s)),h=z(O=>E0(O,t));if(v.useLayoutEffect(()=>{if(!(n!=="auto"||!f||Kf(i)||v.isValidElement(i)||h==null)){var O=a.current;if(O){var S=O.getCalculatedWidth();Math.round(f.width)!==Math.round(S)&&u(SR({id:t,width:S}))}}},[p,f,u,i,t,n,h]),f==null||d==null||h==null)return null;var{dangerouslySetInnerHTML:y,ticks:m,scale:g}=e,w=Yu(e,yz),{id:b,scale:P}=h,x=Yu(h,gz);return v.createElement(rd,Hu({},w,x,{ref:a,labelRef:o,x:d.x,y:d.y,tickTextProps:n==="auto"?{width:void 0}:{width:n},width:f.width,height:f.height,className:Z("recharts-".concat(c," ").concat(c),r),viewBox:l,ticks:p,axisType:c}))}var Sz={allowDataOverflow:Ne.allowDataOverflow,allowDecimals:Ne.allowDecimals,allowDuplicatedCategory:Ne.allowDuplicatedCategory,angle:Ne.angle,axisLine:Ut.axisLine,hide:!1,includeHidden:Ne.includeHidden,interval:Ne.interval,label:!1,minTickGap:Ne.minTickGap,mirror:Ne.mirror,orientation:Ne.orientation,padding:Ne.padding,reversed:Ne.reversed,scale:Ne.scale,tick:Ne.tick,tickCount:Ne.tickCount,tickLine:Ut.tickLine,tickSize:Ut.tickSize,type:Ne.type,width:Ne.width,yAxisId:0},Ez=e=>{var t=be(e,Sz);return v.createElement(v.Fragment,null,v.createElement(Oz,{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}),v.createElement(Az,t))},Yn=v.memo(Ez,Pw);Yn.displayName="YAxis";var jz=(e,t)=>t,ad=j([jz,J,P0,Be,fx,or,kT,_e],NT),od=e=>{var t=e.currentTarget.getBoundingClientRect(),r=t.width/e.currentTarget.offsetWidth,n=t.height/e.currentTarget.offsetHeight;return{chartX:Math.round((e.clientX-t.left)/r),chartY:Math.round((e.clientY-t.top)/n)}},Ow=pt("mouseClick"),Aw=mi();Aw.startListening({actionCreator:Ow,effect:(e,t)=>{var r=e.payload,n=ad(t.getState(),od(r));n?.activeIndex!=null&&t.dispatch(jI({activeIndex:n.activeIndex,activeDataKey:void 0,activeCoordinate:n.activeCoordinate}))}});var Xu=pt("mouseMove"),Sw=mi(),ea=null;Sw.startListening({actionCreator:Xu,effect:(e,t)=>{var r=e.payload;ea!==null&&cancelAnimationFrame(ea);var n=od(r);ea=requestAnimationFrame(()=>{var i=t.getState(),a=Tf(i,i.tooltip.settings.shared);if(a==="axis"){var o=ad(i,n);o?.activeIndex!=null?t.dispatch(rx({activeIndex:o.activeIndex,activeDataKey:void 0,activeCoordinate:o.activeCoordinate})):t.dispatch(tx())}ea=null})}});function kz(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 dy={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},Ew=tt({name:"rootProps",initialState:dy,reducers:{updateOptions:(e,t)=>{var r;e.accessibilityLayer=t.payload.accessibilityLayer,e.barCategoryGap=t.payload.barCategoryGap,e.barGap=(r=t.payload.barGap)!==null&&r!==void 0?r:dy.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}}}),_z=Ew.reducer,{updateOptions:Cz}=Ew.actions,Iz=null,Tz={updatePolarOptions:(e,t)=>t.payload},jw=tt({name:"polarOptions",initialState:Iz,reducers:Tz}),{updatePolarOptions:Mz}=jw.actions,Dz=jw.reducer,kw=pt("keyDown"),_w=pt("focus"),ld=mi();ld.startListening({actionCreator:kw,effect:(e,t)=>{var r=t.getState(),n=r.rootProps.accessibilityLayer!==!1;if(n){var{keyboardInteraction:i}=r.tooltip,a=e.payload;if(!(a!=="ArrowRight"&&a!=="ArrowLeft"&&a!=="Enter")){var o=Mf(i,Cn(r),_i(r),Ii(r)),l=o==null?-1:Number(o);if(!(!Number.isFinite(l)||l<0)){var s=or(r);if(a==="Enter"){var u=no(r,"axis","hover",String(i.index));t.dispatch(Lu({active:!i.active,activeIndex:i.index,activeCoordinate:u}));return}var c=yI(r),f=c==="left-to-right"?1:-1,d=a==="ArrowRight"?1:-1,p=l+d*f;if(!(s==null||p>=s.length||p<0)){var h=no(r,"axis","hover",String(p));t.dispatch(Lu({active:!0,activeIndex:p.toString(),activeCoordinate:h}))}}}}}});ld.startListening({actionCreator:_w,effect:(e,t)=>{var r=t.getState(),n=r.rootProps.accessibilityLayer!==!1;if(n){var{keyboardInteraction:i}=r.tooltip;if(!i.active&&i.index==null){var a="0",o=no(r,"axis","hover",String(a));t.dispatch(Lu({active:!0,activeIndex:a,activeCoordinate:o}))}}}});var ft=pt("externalEvent"),Cw=mi(),Hs=new Map;Cw.startListening({actionCreator:ft,effect:(e,t)=>{var{handler:r,reactEvent:n}=e.payload;if(r!=null){n.persist();var i=n.type,a=Hs.get(i);a!==void 0&&cancelAnimationFrame(a);var o=requestAnimationFrame(()=>{try{var l=t.getState(),s={activeCoordinate:vT(l),activeDataKey:Lf(l),activeIndex:mr(l),activeLabel:px(l),activeTooltipIndex:mr(l),isTooltipActive:pT(l)};r(s,n)}finally{Hs.delete(i)}});Hs.set(i,o)}}});var Nz=j([kn],e=>e.tooltipItemPayloads),Rz=j([Nz,(e,t)=>t,(e,t,r)=>r],(e,t,r)=>{if(t!=null){var n=e.find(a=>a.settings.graphicalItemId===r);if(n!=null){var{getPosition:i}=n;if(i!=null)return i(t)}}}),Iw=pt("touchMove"),Tw=mi();Tw.startListening({actionCreator:Iw,effect:(e,t)=>{var r=e.payload;if(!(r.touches==null||r.touches.length===0)){var n=t.getState(),i=Tf(n,n.tooltip.settings.shared);if(i==="axis"){var a=r.touches[0];if(a==null)return;var o=ad(n,od({clientX:a.clientX,clientY:a.clientY,currentTarget:r.currentTarget}));o?.activeIndex!=null&&t.dispatch(rx({activeIndex:o.activeIndex,activeDataKey:void 0,activeCoordinate:o.activeCoordinate}))}else if(i==="item"){var l,s=r.touches[0];if(document.elementFromPoint==null||s==null)return;var u=document.elementFromPoint(s.clientX,s.clientY);if(!u||!u.getAttribute)return;var c=u.getAttribute(Yg),f=(l=u.getAttribute(Xg))!==null&&l!==void 0?l:void 0,d=_n(n).find(y=>y.id===f);if(c==null||d==null||f==null)return;var{dataKey:p}=d,h=Rz(n,c,f);t.dispatch(ex({activeDataKey:p,activeIndex:c,activeCoordinate:h,activeGraphicalItemId:f}))}}}});var $z=mg({brush:KR,cartesianAxis:ER,chartData:dM,errorBars:$2,graphicalItems:DN,layout:FA,legend:VS,options:lM,polarAxis:HD,polarOptions:Dz,referenceElements:VR,rootProps:_z,tooltip:kI,zIndex:YT}),Lz=function(t){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"Chart";return dA({reducer:$z,preloadedState:t,middleware:n=>{var i;return n({serializableCheck:!1,immutableCheck:!["commonjs","es6","production"].includes((i="es6")!==null&&i!==void 0?i:"")}).concat([Aw.middleware,Sw.middleware,ld.middleware,Cw.middleware,Tw.middleware])},enhancers:n=>{var i=n;return typeof n=="function"&&(i=n()),i.concat(Ig({type:"raf"}))},devTools:{serialize:{replacer:kz},name:"recharts-".concat(r)}})};function Mw(e){var{preloadedState:t,children:r,reduxStoreName:n}=e,i=Le(),a=v.useRef(null);if(i)return r;a.current==null&&(a.current=Lz(t,n));var o=gc;return v.createElement(f$,{context:o,store:a.current},r)}function zz(e){var{layout:t,margin:r}=e,n=le(),i=Le();return v.useEffect(()=>{i||(n(LA(t)),n($A(r)))},[n,i,t,r]),null}var Dw=v.memo(zz,Di);function Nw(e){var t=le();return v.useEffect(()=>{t(Cz(e))},[t,e]),null}function vy(e){var{zIndex:t,isPanorama:r}=e,n=v.useRef(null),i=le();return v.useLayoutEffect(()=>(n.current&&i(VT({zIndex:t,element:n.current,isPanorama:r})),()=>{i(HT({zIndex:t,isPanorama:r}))}),[i,t,r]),v.createElement("g",{tabIndex:-1,ref:n})}function py(e){var{children:t,isPanorama:r}=e,n=z($T);if(!n||n.length===0)return t;var i=n.filter(o=>o<0),a=n.filter(o=>o>0);return v.createElement(v.Fragment,null,i.map(o=>v.createElement(vy,{key:o,zIndex:o,isPanorama:r})),t,a.map(o=>v.createElement(vy,{key:o,zIndex:o,isPanorama:r})))}var Bz=["children"];function Fz(e,t){if(e==null)return{};var r,n,i=Wz(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n{var r=kc(),n=_c(),i=db();if(!Mt(r)||!Mt(n))return null;var{children:a,otherAttributes:o,title:l,desc:s}=e,u,c;return o!=null&&(typeof o.tabIndex=="number"?u=o.tabIndex:u=i?0:void 0,typeof o.role=="string"?c=o.role:c=i?"application":void 0),v.createElement(oc,vo({},o,{title:l,desc:s,role:c,tabIndex:u,width:r,height:n,style:Kz,ref:t}),a)}),Uz=e=>{var{children:t}=e,r=z(Do);if(!r)return null;var{width:n,height:i,y:a,x:o}=r;return v.createElement(oc,{width:n,height:i,x:o,y:a},t)},hy=v.forwardRef((e,t)=>{var{children:r}=e,n=Fz(e,Bz),i=Le();return i?v.createElement(Uz,null,v.createElement(py,{isPanorama:!0},r)):v.createElement(qz,vo({ref:t},n),v.createElement(py,{isPanorama:!1},r))});function Gz(){var e=le(),[t,r]=v.useState(null),n=z(nS);return v.useEffect(()=>{if(t!=null){var i=t.getBoundingClientRect(),a=i.width/t.offsetWidth;H(a)&&a!==n&&e(BA(a))}},[t,e,n]),r}function my(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function Vz(e){for(var t=1;t(wM(),null);function po(e){if(typeof e=="number")return e;if(typeof e=="string"){var t=parseFloat(e);if(!Number.isNaN(t))return t}return 0}var Jz=v.forwardRef((e,t)=>{var r,n,i=v.useRef(null),[a,o]=v.useState({containerWidth:po((r=e.style)===null||r===void 0?void 0:r.width),containerHeight:po((n=e.style)===null||n===void 0?void 0:n.height)}),l=v.useCallback((u,c)=>{o(f=>{var d=Math.round(u),p=Math.round(c);return f.containerWidth===d&&f.containerHeight===p?f:{containerWidth:d,containerHeight:p}})},[]),s=v.useCallback(u=>{if(typeof t=="function"&&t(u),u!=null&&typeof ResizeObserver<"u"){var{width:c,height:f}=u.getBoundingClientRect();l(c,f);var d=h=>{var y=h[0];if(y!=null){var{width:m,height:g}=y.contentRect;l(m,g)}},p=new ResizeObserver(d);p.observe(u),i.current=p}},[t,l]);return v.useEffect(()=>()=>{var u=i.current;u?.disconnect()},[l]),v.createElement(v.Fragment,null,v.createElement(gi,{width:a.containerWidth,height:a.containerHeight}),v.createElement("div",pr({ref:s},e)))}),Qz=v.forwardRef((e,t)=>{var{width:r,height:n}=e,[i,a]=v.useState({containerWidth:po(r),containerHeight:po(n)}),o=v.useCallback((s,u)=>{a(c=>{var f=Math.round(s),d=Math.round(u);return c.containerWidth===f&&c.containerHeight===d?c:{containerWidth:f,containerHeight:d}})},[]),l=v.useCallback(s=>{if(typeof t=="function"&&t(s),s!=null){var{width:u,height:c}=s.getBoundingClientRect();o(u,c)}},[t,o]);return v.createElement(v.Fragment,null,v.createElement(gi,{width:i.containerWidth,height:i.containerHeight}),v.createElement("div",pr({ref:l},e)))}),eB=v.forwardRef((e,t)=>{var{width:r,height:n}=e;return v.createElement(v.Fragment,null,v.createElement(gi,{width:r,height:n}),v.createElement("div",pr({ref:t},e)))}),tB=v.forwardRef((e,t)=>{var{width:r,height:n}=e;return typeof r=="string"||typeof n=="string"?v.createElement(Qz,pr({},e,{ref:t})):typeof r=="number"&&typeof n=="number"?v.createElement(eB,pr({},e,{width:r,height:n,ref:t})):v.createElement(v.Fragment,null,v.createElement(gi,{width:r,height:n}),v.createElement("div",pr({ref:t},e)))});function rB(e){return e?Jz:tB}var nB=v.forwardRef((e,t)=>{var{children:r,className:n,height:i,onClick:a,onContextMenu:o,onDoubleClick:l,onMouseDown:s,onMouseEnter:u,onMouseLeave:c,onMouseMove:f,onMouseUp:d,onTouchEnd:p,onTouchMove:h,onTouchStart:y,style:m,width:g,responsive:w,dispatchTouchEvents:b=!0}=e,P=v.useRef(null),x=le(),[O,S]=v.useState(null),[A,_]=v.useState(null),M=Gz(),I=Ec(),k=I?.width>0?I.width:g,$=I?.height>0?I.height:i,R=v.useCallback(C=>{M(C),typeof t=="function"&&t(C),S(C),_(C),C!=null&&(P.current=C)},[M,t,S,_]),W=v.useCallback(C=>{x(Ow(C)),x(ft({handler:a,reactEvent:C}))},[x,a]),K=v.useCallback(C=>{x(Xu(C)),x(ft({handler:u,reactEvent:C}))},[x,u]),q=v.useCallback(C=>{x(tx()),x(ft({handler:c,reactEvent:C}))},[x,c]),Y=v.useCallback(C=>{x(Xu(C)),x(ft({handler:f,reactEvent:C}))},[x,f]),U=v.useCallback(()=>{x(_w())},[x]),D=v.useCallback(C=>{x(kw(C.key))},[x]),ue=v.useCallback(C=>{x(ft({handler:o,reactEvent:C}))},[x,o]),we=v.useCallback(C=>{x(ft({handler:l,reactEvent:C}))},[x,l]),Je=v.useCallback(C=>{x(ft({handler:s,reactEvent:C}))},[x,s]),Te=v.useCallback(C=>{x(ft({handler:d,reactEvent:C}))},[x,d]),ve=v.useCallback(C=>{x(ft({handler:y,reactEvent:C}))},[x,y]),Pe=v.useCallback(C=>{b&&x(Iw(C)),x(ft({handler:h,reactEvent:C}))},[x,b,h]),Ee=v.useCallback(C=>{x(ft({handler:p,reactEvent:C}))},[x,p]),tn=rB(w);return v.createElement(Px.Provider,{value:O},v.createElement(My.Provider,{value:A},v.createElement(tn,{width:k??m?.width,height:$??m?.height,className:Z("recharts-wrapper",n),style:Vz({position:"relative",cursor:"default",width:k,height:$},m),onClick:W,onContextMenu:ue,onDoubleClick:we,onFocus:U,onKeyDown:D,onMouseDown:Je,onMouseEnter:K,onMouseLeave:q,onMouseMove:Y,onMouseUp:Te,onTouchEnd:Ee,onTouchMove:Pe,onTouchStart:ve,ref:R},v.createElement(Zz,null),r)))}),iB=["width","height","responsive","children","className","style","compact","title","desc"];function aB(e,t){if(e==null)return{};var r,n,i=oB(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n{var{width:r,height:n,responsive:i,children:a,className:o,style:l,compact:s,title:u,desc:c}=e,f=aB(e,iB),d=Ye(f);return s?v.createElement(v.Fragment,null,v.createElement(gi,{width:r,height:n}),v.createElement(hy,{otherAttributes:d,title:u,desc:c},a)):v.createElement(nB,{className:o,style:l,width:r,height:n,responsive:i??!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},v.createElement(hy,{otherAttributes:d,title:u,desc:c,ref:t},v.createElement(YR,null,a)))});function Zu(){return Zu=Object.assign?Object.assign.bind():function(e){for(var t=1;tv.createElement(sd,{chartName:"LineChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:uB,tooltipPayloadSearcher:il,categoricalChartProps:e,ref:t})),fB=["axis","item"],yy=v.forwardRef((e,t)=>v.createElement(sd,{chartName:"BarChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:fB,tooltipPayloadSearcher:il,categoricalChartProps:e,ref:t}));function dB(e){var t=le();return v.useEffect(()=>{t(Mz(e))},[t,e]),null}var vB=["layout"];function Ju(){return Ju=Object.assign?Object.assign.bind():function(e){for(var t=1;t{var r=be(e,PB);return v.createElement(yB,{chartName:"PieChart",defaultTooltipEventType:"item",validateTooltipEventTypes:wB,tooltipPayloadSearcher:il,categoricalChartProps:r,ref:t})}),AB=["axis"],SB=v.forwardRef((e,t)=>v.createElement(sd,{chartName:"AreaChart",defaultTooltipEventType:"axis",validateTooltipEventTypes:AB,tooltipPayloadSearcher:il,categoricalChartProps:e,ref:t}));const EB=(e,t)=>{const r=new Array(e.length+t.length);for(let n=0;n({classGroupId:e,validator:t}),Lw=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),ho="-",xy=[],kB="arbitrary..",_B=e=>{const t=IB(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:n}=e;return{getClassGroupId:o=>{if(o.startsWith("[")&&o.endsWith("]"))return CB(o);const l=o.split(ho),s=l[0]===""&&l.length>1?1:0;return zw(l,s,t)},getConflictingClassGroupIds:(o,l)=>{if(l){const s=n[o],u=r[o];return s?u?EB(u,s):s:u||xy}return r[o]||xy}}},zw=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const i=e[t],a=r.nextPart.get(i);if(a){const u=zw(e,t+1,a);if(u)return u}const o=r.validators;if(o===null)return;const l=t===0?e.join(ho):e.slice(t).join(ho),s=o.length;for(let u=0;ue.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),n=t.slice(0,r);return n?kB+n:void 0})(),IB=e=>{const{theme:t,classGroups:r}=e;return TB(r,t)},TB=(e,t)=>{const r=Lw();for(const n in e){const i=e[n];ud(i,r,n,t)}return r},ud=(e,t,r,n)=>{const i=e.length;for(let a=0;a{if(typeof e=="string"){DB(e,t,r);return}if(typeof e=="function"){NB(e,t,r,n);return}RB(e,t,r,n)},DB=(e,t,r)=>{const n=e===""?t:Bw(t,e);n.classGroupId=r},NB=(e,t,r,n)=>{if($B(e)){ud(e(n),t,r,n);return}t.validators===null&&(t.validators=[]),t.validators.push(jB(r,e))},RB=(e,t,r,n)=>{const i=Object.entries(e),a=i.length;for(let o=0;o{let r=e;const n=t.split(ho),i=n.length;for(let a=0;a"isThemeGetter"in e&&e.isThemeGetter===!0,LB=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),n=Object.create(null);const i=(a,o)=>{r[a]=o,t++,t>e&&(t=0,n=r,r=Object.create(null))};return{get(a){let o=r[a];if(o!==void 0)return o;if((o=n[a])!==void 0)return i(a,o),o},set(a,o){a in r?r[a]=o:i(a,o)}}},Qu="!",wy=":",zB=[],Py=(e,t,r,n,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:n,isExternal:i}),BB=e=>{const{prefix:t,experimentalParseClassName:r}=e;let n=i=>{const a=[];let o=0,l=0,s=0,u;const c=i.length;for(let y=0;ys?u-s:void 0;return Py(a,p,d,h)};if(t){const i=t+wy,a=n;n=o=>o.startsWith(i)?a(o.slice(i.length)):Py(zB,!1,o,void 0,!0)}if(r){const i=n;n=a=>r({className:a,parseClassName:i})}return n},FB=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,n)=>{t.set(r,1e6+n)}),r=>{const n=[];let i=[];for(let a=0;a0&&(i.sort(),n.push(...i),i=[]),n.push(o)):i.push(o)}return i.length>0&&(i.sort(),n.push(...i)),n}},WB=e=>({cache:LB(e.cacheSize),parseClassName:BB(e),sortModifiers:FB(e),..._B(e)}),KB=/\s+/,qB=(e,t)=>{const{parseClassName:r,getClassGroupId:n,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],l=e.trim().split(KB);let s="";for(let u=l.length-1;u>=0;u-=1){const c=l[u],{isExternal:f,modifiers:d,hasImportantModifier:p,baseClassName:h,maybePostfixModifierPosition:y}=r(c);if(f){s=c+(s.length>0?" "+s:s);continue}let m=!!y,g=n(m?h.substring(0,y):h);if(!g){if(!m){s=c+(s.length>0?" "+s:s);continue}if(g=n(h),!g){s=c+(s.length>0?" "+s:s);continue}m=!1}const w=d.length===0?"":d.length===1?d[0]:a(d).join(":"),b=p?w+Qu:w,P=b+g;if(o.indexOf(P)>-1)continue;o.push(P);const x=i(g,m);for(let O=0;O0?" "+s:s)}return s},UB=(...e)=>{let t=0,r,n,i="";for(;t{if(typeof e=="string")return e;let t,r="";for(let n=0;n{let r,n,i,a;const o=s=>{const u=t.reduce((c,f)=>f(c),e());return r=WB(u),n=r.cache.get,i=r.cache.set,a=l,l(s)},l=s=>{const u=n(s);if(u)return u;const c=qB(s,r);return i(s,c),c};return a=o,(...s)=>a(UB(...s))},VB=[],je=e=>{const t=r=>r[e]||VB;return t.isThemeGetter=!0,t},Ww=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Kw=/^\((?:(\w[\w-]*):)?(.+)\)$/i,HB=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,YB=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,XB=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,ZB=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,JB=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,QB=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,lr=e=>HB.test(e),V=e=>!!e&&!Number.isNaN(Number(e)),sr=e=>!!e&&Number.isInteger(Number(e)),Ys=e=>e.endsWith("%")&&V(e.slice(0,-1)),zt=e=>YB.test(e),qw=()=>!0,eF=e=>XB.test(e)&&!ZB.test(e),cd=()=>!1,tF=e=>JB.test(e),rF=e=>QB.test(e),nF=e=>!B(e)&&!F(e),iF=e=>Sr(e,Vw,cd),B=e=>Ww.test(e),_r=e=>Sr(e,Hw,eF),Oy=e=>Sr(e,dF,V),aF=e=>Sr(e,Xw,qw),oF=e=>Sr(e,Yw,cd),Ay=e=>Sr(e,Uw,cd),lF=e=>Sr(e,Gw,rF),ta=e=>Sr(e,Zw,tF),F=e=>Kw.test(e),Kn=e=>en(e,Hw),sF=e=>en(e,Yw),Sy=e=>en(e,Uw),uF=e=>en(e,Vw),cF=e=>en(e,Gw),ra=e=>en(e,Zw,!0),fF=e=>en(e,Xw,!0),Sr=(e,t,r)=>{const n=Ww.exec(e);return n?n[1]?t(n[1]):r(n[2]):!1},en=(e,t,r=!1)=>{const n=Kw.exec(e);return n?n[1]?t(n[1]):r:!1},Uw=e=>e==="position"||e==="percentage",Gw=e=>e==="image"||e==="url",Vw=e=>e==="length"||e==="size"||e==="bg-size",Hw=e=>e==="length",dF=e=>e==="number",Yw=e=>e==="family-name",Xw=e=>e==="number"||e==="weight",Zw=e=>e==="shadow",vF=()=>{const e=je("color"),t=je("font"),r=je("text"),n=je("font-weight"),i=je("tracking"),a=je("leading"),o=je("breakpoint"),l=je("container"),s=je("spacing"),u=je("radius"),c=je("shadow"),f=je("inset-shadow"),d=je("text-shadow"),p=je("drop-shadow"),h=je("blur"),y=je("perspective"),m=je("aspect"),g=je("ease"),w=je("animate"),b=()=>["auto","avoid","all","avoid-page","page","left","right","column"],P=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],x=()=>[...P(),F,B],O=()=>["auto","hidden","clip","visible","scroll"],S=()=>["auto","contain","none"],A=()=>[F,B,s],_=()=>[lr,"full","auto",...A()],M=()=>[sr,"none","subgrid",F,B],I=()=>["auto",{span:["full",sr,F,B]},sr,F,B],k=()=>[sr,"auto",F,B],$=()=>["auto","min","max","fr",F,B],R=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],W=()=>["start","end","center","stretch","center-safe","end-safe"],K=()=>["auto",...A()],q=()=>[lr,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...A()],Y=()=>[lr,"screen","full","dvw","lvw","svw","min","max","fit",...A()],U=()=>[lr,"screen","full","lh","dvh","lvh","svh","min","max","fit",...A()],D=()=>[e,F,B],ue=()=>[...P(),Sy,Ay,{position:[F,B]}],we=()=>["no-repeat",{repeat:["","x","y","space","round"]}],Je=()=>["auto","cover","contain",uF,iF,{size:[F,B]}],Te=()=>[Ys,Kn,_r],ve=()=>["","none","full",u,F,B],Pe=()=>["",V,Kn,_r],Ee=()=>["solid","dashed","dotted","double"],tn=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],C=()=>[V,Ys,Sy,Ay],G=()=>["","none",h,F,B],X=()=>["none",V,F,B],T=()=>["none",V,F,B],Me=()=>[V,F,B],ee=()=>[lr,"full",...A()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[zt],breakpoint:[zt],color:[qw],container:[zt],"drop-shadow":[zt],ease:["in","out","in-out"],font:[nF],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[zt],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[zt],shadow:[zt],spacing:["px",V],text:[zt],"text-shadow":[zt],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",lr,B,F,m]}],container:["container"],columns:[{columns:[V,B,F,l]}],"break-after":[{"break-after":b()}],"break-before":[{"break-before":b()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:x()}],overflow:[{overflow:O()}],"overflow-x":[{"overflow-x":O()}],"overflow-y":[{"overflow-y":O()}],overscroll:[{overscroll:S()}],"overscroll-x":[{"overscroll-x":S()}],"overscroll-y":[{"overscroll-y":S()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:_()}],"inset-x":[{"inset-x":_()}],"inset-y":[{"inset-y":_()}],start:[{"inset-s":_(),start:_()}],end:[{"inset-e":_(),end:_()}],"inset-bs":[{"inset-bs":_()}],"inset-be":[{"inset-be":_()}],top:[{top:_()}],right:[{right:_()}],bottom:[{bottom:_()}],left:[{left:_()}],visibility:["visible","invisible","collapse"],z:[{z:[sr,"auto",F,B]}],basis:[{basis:[lr,"full","auto",l,...A()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[V,lr,"auto","initial","none",B]}],grow:[{grow:["",V,F,B]}],shrink:[{shrink:["",V,F,B]}],order:[{order:[sr,"first","last","none",F,B]}],"grid-cols":[{"grid-cols":M()}],"col-start-end":[{col:I()}],"col-start":[{"col-start":k()}],"col-end":[{"col-end":k()}],"grid-rows":[{"grid-rows":M()}],"row-start-end":[{row:I()}],"row-start":[{"row-start":k()}],"row-end":[{"row-end":k()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":$()}],"auto-rows":[{"auto-rows":$()}],gap:[{gap:A()}],"gap-x":[{"gap-x":A()}],"gap-y":[{"gap-y":A()}],"justify-content":[{justify:[...R(),"normal"]}],"justify-items":[{"justify-items":[...W(),"normal"]}],"justify-self":[{"justify-self":["auto",...W()]}],"align-content":[{content:["normal",...R()]}],"align-items":[{items:[...W(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...W(),{baseline:["","last"]}]}],"place-content":[{"place-content":R()}],"place-items":[{"place-items":[...W(),"baseline"]}],"place-self":[{"place-self":["auto",...W()]}],p:[{p:A()}],px:[{px:A()}],py:[{py:A()}],ps:[{ps:A()}],pe:[{pe:A()}],pbs:[{pbs:A()}],pbe:[{pbe:A()}],pt:[{pt:A()}],pr:[{pr:A()}],pb:[{pb:A()}],pl:[{pl:A()}],m:[{m:K()}],mx:[{mx:K()}],my:[{my:K()}],ms:[{ms:K()}],me:[{me:K()}],mbs:[{mbs:K()}],mbe:[{mbe:K()}],mt:[{mt:K()}],mr:[{mr:K()}],mb:[{mb:K()}],ml:[{ml:K()}],"space-x":[{"space-x":A()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":A()}],"space-y-reverse":["space-y-reverse"],size:[{size:q()}],"inline-size":[{inline:["auto",...Y()]}],"min-inline-size":[{"min-inline":["auto",...Y()]}],"max-inline-size":[{"max-inline":["none",...Y()]}],"block-size":[{block:["auto",...U()]}],"min-block-size":[{"min-block":["auto",...U()]}],"max-block-size":[{"max-block":["none",...U()]}],w:[{w:[l,"screen",...q()]}],"min-w":[{"min-w":[l,"screen","none",...q()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[o]},...q()]}],h:[{h:["screen","lh",...q()]}],"min-h":[{"min-h":["screen","lh","none",...q()]}],"max-h":[{"max-h":["screen","lh",...q()]}],"font-size":[{text:["base",r,Kn,_r]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[n,fF,aF]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Ys,B]}],"font-family":[{font:[sF,oF,t]}],"font-features":[{"font-features":[B]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[i,F,B]}],"line-clamp":[{"line-clamp":[V,"none",F,Oy]}],leading:[{leading:[a,...A()]}],"list-image":[{"list-image":["none",F,B]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",F,B]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:D()}],"text-color":[{text:D()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Ee(),"wavy"]}],"text-decoration-thickness":[{decoration:[V,"from-font","auto",F,_r]}],"text-decoration-color":[{decoration:D()}],"underline-offset":[{"underline-offset":[V,"auto",F,B]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:A()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",F,B]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",F,B]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ue()}],"bg-repeat":[{bg:we()}],"bg-size":[{bg:Je()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},sr,F,B],radial:["",F,B],conic:[sr,F,B]},cF,lF]}],"bg-color":[{bg:D()}],"gradient-from-pos":[{from:Te()}],"gradient-via-pos":[{via:Te()}],"gradient-to-pos":[{to:Te()}],"gradient-from":[{from:D()}],"gradient-via":[{via:D()}],"gradient-to":[{to:D()}],rounded:[{rounded:ve()}],"rounded-s":[{"rounded-s":ve()}],"rounded-e":[{"rounded-e":ve()}],"rounded-t":[{"rounded-t":ve()}],"rounded-r":[{"rounded-r":ve()}],"rounded-b":[{"rounded-b":ve()}],"rounded-l":[{"rounded-l":ve()}],"rounded-ss":[{"rounded-ss":ve()}],"rounded-se":[{"rounded-se":ve()}],"rounded-ee":[{"rounded-ee":ve()}],"rounded-es":[{"rounded-es":ve()}],"rounded-tl":[{"rounded-tl":ve()}],"rounded-tr":[{"rounded-tr":ve()}],"rounded-br":[{"rounded-br":ve()}],"rounded-bl":[{"rounded-bl":ve()}],"border-w":[{border:Pe()}],"border-w-x":[{"border-x":Pe()}],"border-w-y":[{"border-y":Pe()}],"border-w-s":[{"border-s":Pe()}],"border-w-e":[{"border-e":Pe()}],"border-w-bs":[{"border-bs":Pe()}],"border-w-be":[{"border-be":Pe()}],"border-w-t":[{"border-t":Pe()}],"border-w-r":[{"border-r":Pe()}],"border-w-b":[{"border-b":Pe()}],"border-w-l":[{"border-l":Pe()}],"divide-x":[{"divide-x":Pe()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":Pe()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Ee(),"hidden","none"]}],"divide-style":[{divide:[...Ee(),"hidden","none"]}],"border-color":[{border:D()}],"border-color-x":[{"border-x":D()}],"border-color-y":[{"border-y":D()}],"border-color-s":[{"border-s":D()}],"border-color-e":[{"border-e":D()}],"border-color-bs":[{"border-bs":D()}],"border-color-be":[{"border-be":D()}],"border-color-t":[{"border-t":D()}],"border-color-r":[{"border-r":D()}],"border-color-b":[{"border-b":D()}],"border-color-l":[{"border-l":D()}],"divide-color":[{divide:D()}],"outline-style":[{outline:[...Ee(),"none","hidden"]}],"outline-offset":[{"outline-offset":[V,F,B]}],"outline-w":[{outline:["",V,Kn,_r]}],"outline-color":[{outline:D()}],shadow:[{shadow:["","none",c,ra,ta]}],"shadow-color":[{shadow:D()}],"inset-shadow":[{"inset-shadow":["none",f,ra,ta]}],"inset-shadow-color":[{"inset-shadow":D()}],"ring-w":[{ring:Pe()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:D()}],"ring-offset-w":[{"ring-offset":[V,_r]}],"ring-offset-color":[{"ring-offset":D()}],"inset-ring-w":[{"inset-ring":Pe()}],"inset-ring-color":[{"inset-ring":D()}],"text-shadow":[{"text-shadow":["none",d,ra,ta]}],"text-shadow-color":[{"text-shadow":D()}],opacity:[{opacity:[V,F,B]}],"mix-blend":[{"mix-blend":[...tn(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":tn()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[V]}],"mask-image-linear-from-pos":[{"mask-linear-from":C()}],"mask-image-linear-to-pos":[{"mask-linear-to":C()}],"mask-image-linear-from-color":[{"mask-linear-from":D()}],"mask-image-linear-to-color":[{"mask-linear-to":D()}],"mask-image-t-from-pos":[{"mask-t-from":C()}],"mask-image-t-to-pos":[{"mask-t-to":C()}],"mask-image-t-from-color":[{"mask-t-from":D()}],"mask-image-t-to-color":[{"mask-t-to":D()}],"mask-image-r-from-pos":[{"mask-r-from":C()}],"mask-image-r-to-pos":[{"mask-r-to":C()}],"mask-image-r-from-color":[{"mask-r-from":D()}],"mask-image-r-to-color":[{"mask-r-to":D()}],"mask-image-b-from-pos":[{"mask-b-from":C()}],"mask-image-b-to-pos":[{"mask-b-to":C()}],"mask-image-b-from-color":[{"mask-b-from":D()}],"mask-image-b-to-color":[{"mask-b-to":D()}],"mask-image-l-from-pos":[{"mask-l-from":C()}],"mask-image-l-to-pos":[{"mask-l-to":C()}],"mask-image-l-from-color":[{"mask-l-from":D()}],"mask-image-l-to-color":[{"mask-l-to":D()}],"mask-image-x-from-pos":[{"mask-x-from":C()}],"mask-image-x-to-pos":[{"mask-x-to":C()}],"mask-image-x-from-color":[{"mask-x-from":D()}],"mask-image-x-to-color":[{"mask-x-to":D()}],"mask-image-y-from-pos":[{"mask-y-from":C()}],"mask-image-y-to-pos":[{"mask-y-to":C()}],"mask-image-y-from-color":[{"mask-y-from":D()}],"mask-image-y-to-color":[{"mask-y-to":D()}],"mask-image-radial":[{"mask-radial":[F,B]}],"mask-image-radial-from-pos":[{"mask-radial-from":C()}],"mask-image-radial-to-pos":[{"mask-radial-to":C()}],"mask-image-radial-from-color":[{"mask-radial-from":D()}],"mask-image-radial-to-color":[{"mask-radial-to":D()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":P()}],"mask-image-conic-pos":[{"mask-conic":[V]}],"mask-image-conic-from-pos":[{"mask-conic-from":C()}],"mask-image-conic-to-pos":[{"mask-conic-to":C()}],"mask-image-conic-from-color":[{"mask-conic-from":D()}],"mask-image-conic-to-color":[{"mask-conic-to":D()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ue()}],"mask-repeat":[{mask:we()}],"mask-size":[{mask:Je()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",F,B]}],filter:[{filter:["","none",F,B]}],blur:[{blur:G()}],brightness:[{brightness:[V,F,B]}],contrast:[{contrast:[V,F,B]}],"drop-shadow":[{"drop-shadow":["","none",p,ra,ta]}],"drop-shadow-color":[{"drop-shadow":D()}],grayscale:[{grayscale:["",V,F,B]}],"hue-rotate":[{"hue-rotate":[V,F,B]}],invert:[{invert:["",V,F,B]}],saturate:[{saturate:[V,F,B]}],sepia:[{sepia:["",V,F,B]}],"backdrop-filter":[{"backdrop-filter":["","none",F,B]}],"backdrop-blur":[{"backdrop-blur":G()}],"backdrop-brightness":[{"backdrop-brightness":[V,F,B]}],"backdrop-contrast":[{"backdrop-contrast":[V,F,B]}],"backdrop-grayscale":[{"backdrop-grayscale":["",V,F,B]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[V,F,B]}],"backdrop-invert":[{"backdrop-invert":["",V,F,B]}],"backdrop-opacity":[{"backdrop-opacity":[V,F,B]}],"backdrop-saturate":[{"backdrop-saturate":[V,F,B]}],"backdrop-sepia":[{"backdrop-sepia":["",V,F,B]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":A()}],"border-spacing-x":[{"border-spacing-x":A()}],"border-spacing-y":[{"border-spacing-y":A()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",F,B]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[V,"initial",F,B]}],ease:[{ease:["linear","initial",g,F,B]}],delay:[{delay:[V,F,B]}],animate:[{animate:["none",w,F,B]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[y,F,B]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:X()}],"rotate-x":[{"rotate-x":X()}],"rotate-y":[{"rotate-y":X()}],"rotate-z":[{"rotate-z":X()}],scale:[{scale:T()}],"scale-x":[{"scale-x":T()}],"scale-y":[{"scale-y":T()}],"scale-z":[{"scale-z":T()}],"scale-3d":["scale-3d"],skew:[{skew:Me()}],"skew-x":[{"skew-x":Me()}],"skew-y":[{"skew-y":Me()}],transform:[{transform:[F,B,"","none","gpu","cpu"]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ee()}],"translate-x":[{"translate-x":ee()}],"translate-y":[{"translate-y":ee()}],"translate-z":[{"translate-z":ee()}],"translate-none":["translate-none"],accent:[{accent:D()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:D()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",F,B]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":A()}],"scroll-mx":[{"scroll-mx":A()}],"scroll-my":[{"scroll-my":A()}],"scroll-ms":[{"scroll-ms":A()}],"scroll-me":[{"scroll-me":A()}],"scroll-mbs":[{"scroll-mbs":A()}],"scroll-mbe":[{"scroll-mbe":A()}],"scroll-mt":[{"scroll-mt":A()}],"scroll-mr":[{"scroll-mr":A()}],"scroll-mb":[{"scroll-mb":A()}],"scroll-ml":[{"scroll-ml":A()}],"scroll-p":[{"scroll-p":A()}],"scroll-px":[{"scroll-px":A()}],"scroll-py":[{"scroll-py":A()}],"scroll-ps":[{"scroll-ps":A()}],"scroll-pe":[{"scroll-pe":A()}],"scroll-pbs":[{"scroll-pbs":A()}],"scroll-pbe":[{"scroll-pbe":A()}],"scroll-pt":[{"scroll-pt":A()}],"scroll-pr":[{"scroll-pr":A()}],"scroll-pb":[{"scroll-pb":A()}],"scroll-pl":[{"scroll-pl":A()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",F,B]}],fill:[{fill:["none",...D()]}],"stroke-w":[{stroke:[V,Kn,_r,Oy]}],stroke:[{stroke:["none",...D()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},pF=GB(vF);function Ri(...e){return pF(Z(e))}function Dr({className:e,...t}){return E.jsx("div",{"data-slot":"card",className:Ri("flex flex-col gap-6 rounded-xl border bg-card py-6 text-card-foreground shadow-sm",e),...t})}const Ey=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,jy=Z,hF=(e,t)=>r=>{var n;if(t?.variants==null)return jy(e,r?.class,r?.className);const{variants:i,defaultVariants:a}=t,o=Object.keys(i).map(u=>{const c=r?.[u],f=a?.[u];if(c===null)return null;const d=Ey(c)||Ey(f);return i[u][d]}),l=r&&Object.entries(r).reduce((u,c)=>{let[f,d]=c;return d===void 0||(u[f]=d),u},{}),s=t==null||(n=t.compoundVariants)===null||n===void 0?void 0:n.reduce((u,c)=>{let{class:f,className:d,...p}=c;return Object.entries(p).every(h=>{let[y,m]=h;return Array.isArray(m)?m.includes({...a,...l}[y]):{...a,...l}[y]===m})?[...u,f,d]:u},[]);return jy(e,o,s,r?.class,r?.className)};function ky(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Jw(...e){return t=>{let r=!1;const n=e.map(i=>{const a=ky(i,t);return!r&&typeof a=="function"&&(r=!0),a});if(r)return()=>{for(let i=0;i{const{children:a,...o}=n,l=v.Children.toArray(a),s=l.find(gF);if(s){const u=s.props.children,c=l.map(f=>f===s?v.Children.count(u)>1?v.Children.only(null):v.isValidElement(u)?u.props.children:null:f);return E.jsx(t,{...o,ref:i,children:v.isValidElement(u)?v.cloneElement(u,void 0,c):null})}return E.jsx(t,{...o,ref:i,children:a})});return r.displayName=`${e}.Slot`,r}function mF(e){const t=v.forwardRef((r,n)=>{const{children:i,...a}=r;if(v.isValidElement(i)){const o=xF(i),l=bF(a,i.props);return i.type!==v.Fragment&&(l.ref=n?Jw(n,o):o),v.cloneElement(i,l)}return v.Children.count(i)>1?v.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var yF=Symbol("radix.slottable");function gF(e){return v.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===yF}function bF(e,t){const r={...t};for(const n in t){const i=e[n],a=t[n];/^on[A-Z]/.test(n)?i&&a?r[n]=(...l)=>{const s=a(...l);return i(...l),s}:i&&(r[n]=i):n==="style"?r[n]={...i,...a}:n==="className"&&(r[n]=[i,a].filter(Boolean).join(" "))}return{...e,...r}}function xF(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var wF=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],In=wF.reduce((e,t)=>{const r=ec(`Primitive.${t}`),n=v.forwardRef((i,a)=>{const{asChild:o,...l}=i,s=o?r:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),E.jsx(s,{...l,ref:a})});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function fd(e,t=[]){let r=[];function n(a,o){const l=v.createContext(o),s=r.length;r=[...r,o];const u=f=>{const{scope:d,children:p,...h}=f,y=d?.[e]?.[s]||l,m=v.useMemo(()=>h,Object.values(h));return E.jsx(y.Provider,{value:m,children:p})};u.displayName=a+"Provider";function c(f,d){const p=d?.[e]?.[s]||l,h=v.useContext(p);if(h)return h;if(o!==void 0)return o;throw new Error(`\`${f}\` must be used within \`${a}\``)}return[u,c]}const i=()=>{const a=r.map(o=>v.createContext(o));return function(l){const s=l?.[e]||a;return v.useMemo(()=>({[`__scope${e}`]:{...l,[e]:s}}),[l,s])}};return i.scopeName=e,[n,PF(i,...t)]}function PF(...e){const t=e[0];if(e.length===1)return t;const r=()=>{const n=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(a){const o=n.reduce((l,{useScope:s,scopeName:u})=>{const f=s(a)[`__scope${u}`];return{...l,...f}},{});return v.useMemo(()=>({[`__scope${t.scopeName}`]:o}),[o])}};return r.scopeName=t.scopeName,r}function OF(e){const t=e+"CollectionProvider",[r,n]=fd(t),[i,a]=r(t,{collectionRef:{current:null},itemMap:new Map}),o=y=>{const{scope:m,children:g}=y,w=jr.useRef(null),b=jr.useRef(new Map).current;return E.jsx(i,{scope:m,itemMap:b,collectionRef:w,children:g})};o.displayName=t;const l=e+"CollectionSlot",s=ec(l),u=jr.forwardRef((y,m)=>{const{scope:g,children:w}=y,b=a(l,g),P=mo(m,b.collectionRef);return E.jsx(s,{ref:P,children:w})});u.displayName=l;const c=e+"CollectionItemSlot",f="data-radix-collection-item",d=ec(c),p=jr.forwardRef((y,m)=>{const{scope:g,children:w,...b}=y,P=jr.useRef(null),x=mo(m,P),O=a(c,g);return jr.useEffect(()=>(O.itemMap.set(P,{ref:P,...b}),()=>{O.itemMap.delete(P)})),E.jsx(d,{[f]:"",ref:x,children:w})});p.displayName=c;function h(y){const m=a(e+"CollectionConsumer",y);return jr.useCallback(()=>{const w=m.collectionRef.current;if(!w)return[];const b=Array.from(w.querySelectorAll(`[${f}]`));return Array.from(m.itemMap.values()).sort((O,S)=>b.indexOf(O.ref.current)-b.indexOf(S.ref.current))},[m.collectionRef,m.itemMap])}return[{Provider:o,Slot:u,ItemSlot:p},h,n]}function Gt(e,t,{checkForDefaultPrevented:r=!0}={}){return function(i){if(e?.(i),r===!1||!i.defaultPrevented)return t?.(i)}}var yo=globalThis?.document?v.useLayoutEffect:()=>{},AF=ic[" useInsertionEffect ".trim().toString()]||yo;function Qw({prop:e,defaultProp:t,onChange:r=()=>{},caller:n}){const[i,a,o]=SF({defaultProp:t,onChange:r}),l=e!==void 0,s=l?e:i;{const c=v.useRef(e!==void 0);v.useEffect(()=>{const f=c.current;f!==l&&console.warn(`${n} is changing from ${f?"controlled":"uncontrolled"} to ${l?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),c.current=l},[l,n])}const u=v.useCallback(c=>{if(l){const f=EF(c)?c(e):c;f!==e&&o.current?.(f)}else a(c)},[l,e,a,o]);return[s,u]}function SF({defaultProp:e,onChange:t}){const[r,n]=v.useState(e),i=v.useRef(r),a=v.useRef(t);return AF(()=>{a.current=t},[t]),v.useEffect(()=>{i.current!==r&&(a.current?.(r),i.current=r)},[r,i]),[r,n,a]}function EF(e){return typeof e=="function"}function jF(e,t){return v.useReducer((r,n)=>t[r][n]??r,e)}var eP=e=>{const{present:t,children:r}=e,n=kF(t),i=typeof r=="function"?r({present:n.isPresent}):v.Children.only(r),a=mo(n.ref,_F(i));return typeof r=="function"||n.isPresent?v.cloneElement(i,{ref:a}):null};eP.displayName="Presence";function kF(e){const[t,r]=v.useState(),n=v.useRef(null),i=v.useRef(e),a=v.useRef("none"),o=e?"mounted":"unmounted",[l,s]=jF(o,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return v.useEffect(()=>{const u=na(n.current);a.current=l==="mounted"?u:"none"},[l]),yo(()=>{const u=n.current,c=i.current;if(c!==e){const d=a.current,p=na(u);e?s("MOUNT"):p==="none"||u?.display==="none"?s("UNMOUNT"):s(c&&d!==p?"ANIMATION_OUT":"UNMOUNT"),i.current=e}},[e,s]),yo(()=>{if(t){let u;const c=t.ownerDocument.defaultView??window,f=p=>{const y=na(n.current).includes(CSS.escape(p.animationName));if(p.target===t&&y&&(s("ANIMATION_END"),!i.current)){const m=t.style.animationFillMode;t.style.animationFillMode="forwards",u=c.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=m)})}},d=p=>{p.target===t&&(a.current=na(n.current))};return t.addEventListener("animationstart",d),t.addEventListener("animationcancel",f),t.addEventListener("animationend",f),()=>{c.clearTimeout(u),t.removeEventListener("animationstart",d),t.removeEventListener("animationcancel",f),t.removeEventListener("animationend",f)}}else s("ANIMATION_END")},[t,s]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:v.useCallback(u=>{n.current=u?getComputedStyle(u):null,r(u)},[])}}function na(e){return e?.animationName||"none"}function _F(e){let t=Object.getOwnPropertyDescriptor(e.props,"ref")?.get,r=t&&"isReactWarning"in t&&t.isReactWarning;return r?e.ref:(t=Object.getOwnPropertyDescriptor(e,"ref")?.get,r=t&&"isReactWarning"in t&&t.isReactWarning,r?e.props.ref:e.props.ref||e.ref)}var CF=ic[" useId ".trim().toString()]||(()=>{}),IF=0;function tP(e){const[t,r]=v.useState(CF());return yo(()=>{r(n=>n??String(IF++))},[e]),e||(t?`radix-${t}`:"")}var TF=v.createContext(void 0);function rP(e){const t=v.useContext(TF);return e||t||"ltr"}function MF(e){const t=v.useRef(e);return v.useEffect(()=>{t.current=e}),v.useMemo(()=>(...r)=>t.current?.(...r),[])}var Xs="rovingFocusGroup.onEntryFocus",DF={bubbles:!1,cancelable:!0},$i="RovingFocusGroup",[tc,nP,NF]=OF($i),[RF,iP]=fd($i,[NF]),[$F,LF]=RF($i),aP=v.forwardRef((e,t)=>E.jsx(tc.Provider,{scope:e.__scopeRovingFocusGroup,children:E.jsx(tc.Slot,{scope:e.__scopeRovingFocusGroup,children:E.jsx(zF,{...e,ref:t})})}));aP.displayName=$i;var zF=v.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:r,orientation:n,loop:i=!1,dir:a,currentTabStopId:o,defaultCurrentTabStopId:l,onCurrentTabStopIdChange:s,onEntryFocus:u,preventScrollOnEntryFocus:c=!1,...f}=e,d=v.useRef(null),p=mo(t,d),h=rP(a),[y,m]=Qw({prop:o,defaultProp:l??null,onChange:s,caller:$i}),[g,w]=v.useState(!1),b=MF(u),P=nP(r),x=v.useRef(!1),[O,S]=v.useState(0);return v.useEffect(()=>{const A=d.current;if(A)return A.addEventListener(Xs,b),()=>A.removeEventListener(Xs,b)},[b]),E.jsx($F,{scope:r,orientation:n,dir:h,loop:i,currentTabStopId:y,onItemFocus:v.useCallback(A=>m(A),[m]),onItemShiftTab:v.useCallback(()=>w(!0),[]),onFocusableItemAdd:v.useCallback(()=>S(A=>A+1),[]),onFocusableItemRemove:v.useCallback(()=>S(A=>A-1),[]),children:E.jsx(In.div,{tabIndex:g||O===0?-1:0,"data-orientation":n,...f,ref:p,style:{outline:"none",...e.style},onMouseDown:Gt(e.onMouseDown,()=>{x.current=!0}),onFocus:Gt(e.onFocus,A=>{const _=!x.current;if(A.target===A.currentTarget&&_&&!g){const M=new CustomEvent(Xs,DF);if(A.currentTarget.dispatchEvent(M),!M.defaultPrevented){const I=P().filter(K=>K.focusable),k=I.find(K=>K.active),$=I.find(K=>K.id===y),W=[k,$,...I].filter(Boolean).map(K=>K.ref.current);sP(W,c)}}x.current=!1}),onBlur:Gt(e.onBlur,()=>w(!1))})})}),oP="RovingFocusGroupItem",lP=v.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:r,focusable:n=!0,active:i=!1,tabStopId:a,children:o,...l}=e,s=tP(),u=a||s,c=LF(oP,r),f=c.currentTabStopId===u,d=nP(r),{onFocusableItemAdd:p,onFocusableItemRemove:h,currentTabStopId:y}=c;return v.useEffect(()=>{if(n)return p(),()=>h()},[n,p,h]),E.jsx(tc.ItemSlot,{scope:r,id:u,focusable:n,active:i,children:E.jsx(In.span,{tabIndex:f?0:-1,"data-orientation":c.orientation,...l,ref:t,onMouseDown:Gt(e.onMouseDown,m=>{n?c.onItemFocus(u):m.preventDefault()}),onFocus:Gt(e.onFocus,()=>c.onItemFocus(u)),onKeyDown:Gt(e.onKeyDown,m=>{if(m.key==="Tab"&&m.shiftKey){c.onItemShiftTab();return}if(m.target!==m.currentTarget)return;const g=WF(m,c.orientation,c.dir);if(g!==void 0){if(m.metaKey||m.ctrlKey||m.altKey||m.shiftKey)return;m.preventDefault();let b=d().filter(P=>P.focusable).map(P=>P.ref.current);if(g==="last")b.reverse();else if(g==="prev"||g==="next"){g==="prev"&&b.reverse();const P=b.indexOf(m.currentTarget);b=c.loop?KF(b,P+1):b.slice(P+1)}setTimeout(()=>sP(b))}}),children:typeof o=="function"?o({isCurrentTabStop:f,hasTabStop:y!=null}):o})})});lP.displayName=oP;var BF={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function FF(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function WF(e,t,r){const n=FF(e.key,r);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(n))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(n)))return BF[n]}function sP(e,t=!1){const r=document.activeElement;for(const n of e)if(n===r||(n.focus({preventScroll:t}),document.activeElement!==r))return}function KF(e,t){return e.map((r,n)=>e[(t+n)%e.length])}var qF=aP,UF=lP,pl="Tabs",[GF]=fd(pl,[iP]),uP=iP(),[VF,dd]=GF(pl),cP=v.forwardRef((e,t)=>{const{__scopeTabs:r,value:n,onValueChange:i,defaultValue:a,orientation:o="horizontal",dir:l,activationMode:s="automatic",...u}=e,c=rP(l),[f,d]=Qw({prop:n,onChange:i,defaultProp:a??"",caller:pl});return E.jsx(VF,{scope:r,baseId:tP(),value:f,onValueChange:d,orientation:o,dir:c,activationMode:s,children:E.jsx(In.div,{dir:c,"data-orientation":o,...u,ref:t})})});cP.displayName=pl;var fP="TabsList",dP=v.forwardRef((e,t)=>{const{__scopeTabs:r,loop:n=!0,...i}=e,a=dd(fP,r),o=uP(r);return E.jsx(qF,{asChild:!0,...o,orientation:a.orientation,dir:a.dir,loop:n,children:E.jsx(In.div,{role:"tablist","aria-orientation":a.orientation,...i,ref:t})})});dP.displayName=fP;var vP="TabsTrigger",pP=v.forwardRef((e,t)=>{const{__scopeTabs:r,value:n,disabled:i=!1,...a}=e,o=dd(vP,r),l=uP(r),s=yP(o.baseId,n),u=gP(o.baseId,n),c=n===o.value;return E.jsx(UF,{asChild:!0,...l,focusable:!i,active:c,children:E.jsx(In.button,{type:"button",role:"tab","aria-selected":c,"aria-controls":u,"data-state":c?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:s,...a,ref:t,onMouseDown:Gt(e.onMouseDown,f=>{!i&&f.button===0&&f.ctrlKey===!1?o.onValueChange(n):f.preventDefault()}),onKeyDown:Gt(e.onKeyDown,f=>{[" ","Enter"].includes(f.key)&&o.onValueChange(n)}),onFocus:Gt(e.onFocus,()=>{const f=o.activationMode!=="manual";!c&&!i&&f&&o.onValueChange(n)})})})});pP.displayName=vP;var hP="TabsContent",mP=v.forwardRef((e,t)=>{const{__scopeTabs:r,value:n,forceMount:i,children:a,...o}=e,l=dd(hP,r),s=yP(l.baseId,n),u=gP(l.baseId,n),c=n===l.value,f=v.useRef(c);return v.useEffect(()=>{const d=requestAnimationFrame(()=>f.current=!1);return()=>cancelAnimationFrame(d)},[]),E.jsx(eP,{present:i||c,children:({present:d})=>E.jsx(In.div,{"data-state":c?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":s,hidden:!d,id:u,tabIndex:0,...o,ref:t,style:{...e.style,animationDuration:f.current?"0s":void 0},children:d&&a})})});mP.displayName=hP;function yP(e,t){return`${e}-trigger-${t}`}function gP(e,t){return`${e}-content-${t}`}var HF=cP,YF=dP,XF=pP,ZF=mP;function JF({className:e,orientation:t="horizontal",...r}){return E.jsx(HF,{"data-slot":"tabs","data-orientation":t,orientation:t,className:Ri("group/tabs flex gap-2 data-[orientation=horizontal]:flex-col",e),...r})}const QF=hF("group/tabs-list inline-flex w-fit items-center justify-center rounded-lg p-[3px] text-muted-foreground group-data-[orientation=horizontal]/tabs:h-9 group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col data-[variant=line]:rounded-none",{variants:{variant:{default:"bg-muted",line:"gap-1 bg-transparent"}},defaultVariants:{variant:"default"}});function eW({className:e,variant:t="default",...r}){return E.jsx(YF,{"data-slot":"tabs-list","data-variant":t,className:Ri(QF({variant:t}),e),...r})}function ia({className:e,...t}){return E.jsx(XF,{"data-slot":"tabs-trigger",className:Ri("relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-foreground/60 transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 group-data-[variant=default]/tabs-list:data-[state=active]:shadow-sm group-data-[variant=line]/tabs-list:data-[state=active]:shadow-none dark:text-muted-foreground dark:hover:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4","group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:border-transparent dark:group-data-[variant=line]/tabs-list:data-[state=active]:bg-transparent","data-[state=active]:bg-background data-[state=active]:text-foreground dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 dark:data-[state=active]:text-foreground","after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-[state=active]:after:opacity-100",e),...t})}function aa({className:e,...t}){return E.jsx(ZF,{"data-slot":"tabs-content",className:Ri("flex-1 outline-none",e),...t})}const tW=[{month:"Jan",residential:45,commercial:23,industrial:12,total:80},{month:"Feb",residential:52,commercial:28,industrial:15,total:95},{month:"Mar",residential:48,commercial:31,industrial:18,total:97},{month:"Apr",residential:61,commercial:35,industrial:20,total:116},{month:"May",residential:58,commercial:38,industrial:22,total:118},{month:"Jun",residential:72,commercial:42,industrial:25,total:139},{month:"Jul",residential:68,commercial:45,industrial:28,total:141},{month:"Aug",residential:75,commercial:48,industrial:30,total:153}],rW=[{type:"Residential",avgDays:45,target:30},{type:"Commercial",avgDays:62,target:45},{type:"Industrial",avgDays:78,target:60},{type:"Mixed Use",avgDays:55,target:45},{type:"Agricultural",avgDays:38,target:30}],oa=[{name:"Approved",value:342,percentage:45},{name:"In Review",value:198,percentage:26},{name:"Pending",value:152,percentage:20},{name:"Rejected",value:68,percentage:9}],nW=[{month:"Jan",cumulative:1250},{month:"Feb",cumulative:1318},{month:"Mar",cumulative:1389},{month:"Apr",cumulative:1465},{month:"May",cumulative:1548},{month:"Jun",cumulative:1642},{month:"Jul",cumulative:1728},{month:"Aug",cumulative:1815}],iW=[{region:"Central",projects:285},{region:"Northern",projects:198},{region:"Southern",projects:245},{region:"Eastern",projects:167},{region:"Western",projects:213}],it={chart1:"var(--chart-1)",chart2:"var(--chart-2)",chart3:"var(--chart-3)",chart5:"var(--chart-5)"},la=[it.chart2,it.chart3,it.chart1,it.chart5],Cr=({title:e,value:t,change:r,icon:n,trend:i="neutral",subtitle:a})=>{const o=()=>i==="up"?"text-success":i==="down"?"text-destructive":"text-muted-foreground",l=()=>i==="up"?E.jsx(_y,{className:"h-4 w-4"}):i==="down"?E.jsx(AP,{className:"h-4 w-4"}):null;return E.jsx(Dr,{className:"p-6 bg-card border-border",children:E.jsxs("div",{className:"flex items-start justify-between",children:[E.jsxs("div",{className:"flex-1",children:[E.jsx("p",{className:"text-sm text-muted-foreground mb-1",children:e}),E.jsx("h3",{className:"mb-2",style:{fontFamily:"var(--font-display)",fontSize:"var(--text-xl)",letterSpacing:"var(--tracking-wide)"},children:t}),r!==void 0&&E.jsxs("div",{className:`flex items-center gap-1 text-sm ${o()}`,children:[l(),E.jsxs("span",{children:[r>0?"+":"",r,"%"]}),a&&E.jsx("span",{className:"text-muted-foreground ml-1",children:a})]})]}),E.jsx("div",{className:"p-3 bg-primary/10 rounded-lg text-primary",children:n})]})})},jW=()=>E.jsxs("div",{className:"min-h-screen bg-background",children:[E.jsx(xP,{title:"Analytics Dashboard | LUPMIS 2.0",description:"Comprehensive analytics and metrics for land use planning and spatial data"}),E.jsxs("div",{className:"container mx-auto p-6 max-w-7xl",children:[E.jsxs("div",{className:"mb-8",children:[E.jsx("h1",{className:"mb-2",children:"Analytics Dashboard"}),E.jsx("p",{className:"text-muted-foreground",children:"Comprehensive analysis of land use applications, permits, and spatial planning metrics"})]}),E.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8",children:[E.jsx(Cr,{title:"Total Applications",value:"1,815",change:8.2,trend:"up",subtitle:"vs last month",icon:E.jsx(hd,{className:"h-6 w-6"})}),E.jsx(Cr,{title:"Approved Projects",value:"342",change:12.5,trend:"up",subtitle:"this quarter",icon:E.jsx(md,{className:"h-6 w-6"})}),E.jsx(Cr,{title:"Active Reviewers",value:"48",change:-3.2,trend:"down",subtitle:"vs last week",icon:E.jsx(jP,{className:"h-6 w-6"})}),E.jsx(Cr,{title:"Avg. Processing Time",value:"52 days",change:-8.5,trend:"up",subtitle:"improvement",icon:E.jsx(wP,{className:"h-6 w-6"})})]}),E.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-6 mb-8",children:[E.jsx(Cr,{title:"In Review",value:"198",icon:E.jsx(pd,{className:"h-6 w-6"})}),E.jsx(Cr,{title:"Pending Documents",value:"152",icon:E.jsx(hd,{className:"h-6 w-6"})}),E.jsx(Cr,{title:"Active Zones",value:"23",icon:E.jsx(PP,{className:"h-6 w-6"})})]}),E.jsxs(JF,{defaultValue:"trends",className:"space-y-6",children:[E.jsxs(eW,{children:[E.jsx(ia,{value:"trends",children:"Application Trends"}),E.jsx(ia,{value:"processing",children:"Processing Time"}),E.jsx(ia,{value:"distribution",children:"Status Distribution"}),E.jsx(ia,{value:"regional",children:"Regional Analysis"})]}),E.jsxs(aa,{value:"trends",className:"space-y-6",children:[E.jsxs(Dr,{className:"p-6",children:[E.jsxs("div",{className:"mb-4",children:[E.jsx("h3",{className:"mb-1",children:"Application Trends by Type"}),E.jsx("p",{className:"text-sm text-muted-foreground",children:"Monthly breakdown of land use applications by category"})]}),E.jsx(Tn,{width:"100%",height:400,children:E.jsxs(cB,{data:tW,children:[E.jsx(Vn,{strokeDasharray:"3 3",stroke:"var(--border)"}),E.jsx(Hn,{dataKey:"month",stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"}}),E.jsx(Yn,{stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"}}),E.jsx(Fn,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"var(--radius-lg)",fontFamily:"var(--font-body)"}}),E.jsx(Pu,{wrapperStyle:{fontFamily:"var(--font-body)",fontSize:"var(--text-sm)"}}),E.jsx(pa,{type:"monotone",dataKey:"residential",stroke:it.chart1,strokeWidth:2,name:"Residential"}),E.jsx(pa,{type:"monotone",dataKey:"commercial",stroke:it.chart2,strokeWidth:2,name:"Commercial"}),E.jsx(pa,{type:"monotone",dataKey:"industrial",stroke:it.chart3,strokeWidth:2,name:"Industrial"})]})})]}),E.jsxs(Dr,{className:"p-6",children:[E.jsxs("div",{className:"mb-4",children:[E.jsx("h3",{className:"mb-1",children:"Cumulative Approved Projects"}),E.jsx("p",{className:"text-sm text-muted-foreground",children:"Total approved projects over time (year-to-date)"})]}),E.jsx(Tn,{width:"100%",height:300,children:E.jsxs(SB,{data:nW,children:[E.jsx("defs",{children:E.jsxs("linearGradient",{id:"colorCumulative",x1:"0",y1:"0",x2:"0",y2:"1",children:[E.jsx("stop",{offset:"5%",stopColor:it.chart2,stopOpacity:.3}),E.jsx("stop",{offset:"95%",stopColor:it.chart2,stopOpacity:0})]})}),E.jsx(Vn,{strokeDasharray:"3 3",stroke:"var(--border)"}),E.jsx(Hn,{dataKey:"month",stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"}}),E.jsx(Yn,{stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"}}),E.jsx(Fn,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"var(--radius-lg)",fontFamily:"var(--font-body)"}}),E.jsx(yw,{type:"monotone",dataKey:"cumulative",stroke:it.chart2,strokeWidth:2,fillOpacity:1,fill:"url(#colorCumulative)",name:"Total Approved"})]})})]})]}),E.jsx(aa,{value:"processing",children:E.jsxs(Dr,{className:"p-6",children:[E.jsxs("div",{className:"mb-4",children:[E.jsx("h3",{className:"mb-1",children:"Average Processing Time by Type"}),E.jsx("p",{className:"text-sm text-muted-foreground",children:"Comparison of actual processing time vs. target (in days)"})]}),E.jsx(Tn,{width:"100%",height:400,children:E.jsxs(yy,{data:rW,children:[E.jsx(Vn,{strokeDasharray:"3 3",stroke:"var(--border)"}),E.jsx(Hn,{dataKey:"type",stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"}}),E.jsx(Yn,{stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"},label:{value:"Days",angle:-90,position:"insideLeft",style:{fontSize:"var(--text-sm)"}}}),E.jsx(Fn,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"var(--radius-lg)",fontFamily:"var(--font-body)"}}),E.jsx(Pu,{wrapperStyle:{fontFamily:"var(--font-body)",fontSize:"var(--text-sm)"}}),E.jsx(ha,{dataKey:"avgDays",fill:it.chart1,name:"Actual Time",radius:[4,4,0,0]}),E.jsx(ha,{dataKey:"target",fill:it.chart2,name:"Target Time",radius:[4,4,0,0]})]})}),E.jsxs("div",{className:"mt-6 p-4 bg-muted/50 rounded-lg",children:[E.jsx("h4",{className:"mb-2",children:"Performance Insights"}),E.jsxs("ul",{className:"space-y-2 text-sm text-muted-foreground",children:[E.jsxs("li",{className:"flex items-center gap-2",children:[E.jsx(md,{className:"h-4 w-4 text-success"}),"Residential and Agricultural permits are meeting targets"]}),E.jsxs("li",{className:"flex items-center gap-2",children:[E.jsx(pd,{className:"h-4 w-4 text-warning"}),"Commercial and Industrial permits exceed target times by 30%"]}),E.jsxs("li",{className:"flex items-center gap-2",children:[E.jsx(_y,{className:"h-4 w-4 text-primary"}),"Overall processing time improved by 8.5% this quarter"]})]})]})]})}),E.jsx(aa,{value:"distribution",children:E.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[E.jsxs(Dr,{className:"p-6",children:[E.jsxs("div",{className:"mb-4",children:[E.jsx("h3",{className:"mb-1",children:"Application Status Distribution"}),E.jsx("p",{className:"text-sm text-muted-foreground",children:"Current status breakdown of all applications"})]}),E.jsx(Tn,{width:"100%",height:400,children:E.jsxs(OB,{children:[E.jsx(Ux,{data:oa,cx:"50%",cy:"50%",labelLine:!1,label:({name:e,percent:t})=>`${e} ${Math.round(t*100)}%`,outerRadius:120,fill:"#8884d8",dataKey:"value",children:oa.map((e,t)=>E.jsx(Mi,{fill:la[t%la.length]},`cell-${t}`))}),E.jsx(Fn,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"var(--radius-lg)",fontFamily:"var(--font-body)"}})]})})]}),E.jsxs(Dr,{className:"p-6",children:[E.jsxs("div",{className:"mb-4",children:[E.jsx("h3",{className:"mb-1",children:"Status Summary"}),E.jsx("p",{className:"text-sm text-muted-foreground",children:"Detailed breakdown with counts"})]}),E.jsx("div",{className:"space-y-4",children:oa.map((e,t)=>E.jsxs("div",{className:"space-y-2",children:[E.jsxs("div",{className:"flex items-center justify-between text-sm",children:[E.jsxs("div",{className:"flex items-center gap-2",children:[E.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:la[t]}}),E.jsx("span",{children:e.name})]}),E.jsx("span",{className:"font-medium",children:e.value})]}),E.jsx("div",{className:"relative h-2 bg-muted rounded-full overflow-hidden",children:E.jsx("div",{className:"absolute h-full rounded-full transition-all duration-500",style:{width:`${e.percentage}%`,backgroundColor:la[t]}})})]},e.name))}),E.jsx("div",{className:"mt-6 pt-6 border-t border-border",children:E.jsxs("div",{className:"flex items-center justify-between",children:[E.jsx("span",{className:"text-sm text-muted-foreground",children:"Total Applications"}),E.jsx("span",{className:"font-medium",children:oa.reduce((e,t)=>e+t.value,0)})]})})]})]})}),E.jsx(aa,{value:"regional",children:E.jsxs(Dr,{className:"p-6",children:[E.jsxs("div",{className:"mb-4",children:[E.jsx("h3",{className:"mb-1",children:"Projects by Region"}),E.jsx("p",{className:"text-sm text-muted-foreground",children:"Distribution of approved projects across regions"})]}),E.jsx(Tn,{width:"100%",height:400,children:E.jsxs(yy,{data:iW,layout:"vertical",children:[E.jsx(Vn,{strokeDasharray:"3 3",stroke:"var(--border)"}),E.jsx(Hn,{type:"number",stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"}}),E.jsx(Yn,{type:"category",dataKey:"region",stroke:"var(--muted-foreground)",style:{fontSize:"var(--text-sm)"}}),E.jsx(Fn,{contentStyle:{backgroundColor:"var(--card)",border:"1px solid var(--border)",borderRadius:"var(--radius-lg)",fontFamily:"var(--font-body)"}}),E.jsx(ha,{dataKey:"projects",fill:it.chart1,radius:[0,4,4,0]})]})}),E.jsxs("div",{className:"mt-6 grid grid-cols-1 md:grid-cols-3 gap-4",children:[E.jsxs("div",{className:"p-4 bg-muted/50 rounded-lg",children:[E.jsx("p",{className:"text-sm text-muted-foreground mb-1",children:"Most Active Region"}),E.jsx("p",{className:"font-medium",children:"Central (285 projects)"})]}),E.jsxs("div",{className:"p-4 bg-muted/50 rounded-lg",children:[E.jsx("p",{className:"text-sm text-muted-foreground mb-1",children:"Growth Leader"}),E.jsx("p",{className:"font-medium",children:"Eastern (+18% YoY)"})]}),E.jsxs("div",{className:"p-4 bg-muted/50 rounded-lg",children:[E.jsx("p",{className:"text-sm text-muted-foreground mb-1",children:"Total Regions"}),E.jsx("p",{className:"font-medium",children:"5 Active Zones"})]})]})]})})]})]})]});export{jW as AnalyticsDashboard}; diff --git a/assets/CommonComponents-9wqIxBg4.js b/assets/CommonComponents-9wqIxBg4.js new file mode 100644 index 0000000..83bc625 --- /dev/null +++ b/assets/CommonComponents-9wqIxBg4.js @@ -0,0 +1 @@ +import{c as y,j as e,r as g,P as M,O as h,N as I,S,a as k,D as C,C as w,G as T,X as A,b as L}from"./index-mUEXKEer.js";import{S as P}from"./search-wZFAvndP.js";const O=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],$=y("check",O);const W=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]],D=y("info",W);const B=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],U=y("plus",B),c=({children:n,variant:s="primary",size:t="md",icon:i,loading:l,fullWidth:r,className:d="",disabled:x,...o})=>{const m="inline-flex items-center justify-center gap-2 rounded-lg font-[weight:var(--font-weight-medium)] transition-all focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary disabled:opacity-50 disabled:cursor-not-allowed",f={primary:"bg-primary text-primary-foreground hover:bg-primary/90 shadow-sm",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",outline:"border-2 border-border bg-transparent hover:bg-accent",ghost:"bg-transparent hover:bg-accent",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90"},j={sm:"px-3 py-1.5 text-[length:var(--text-sm)]",md:"px-4 py-2 text-[length:var(--text-md)]",lg:"px-6 py-3 text-[length:var(--text-lg)]"};return e.jsxs("button",{className:`${m} ${f[s]} ${j[t]} ${r?"w-full":""} ${d}`,disabled:x||l,...o,children:[l&&e.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-2 border-current border-t-transparent"}),!l&&i&&e.jsx("span",{children:i}),n]})},b=({label:n,error:s,helperText:t,icon:i,fullWidth:l,className:r="",...d})=>e.jsxs("div",{className:`${l?"w-full":""}`,children:[n&&e.jsx("label",{className:"block text-[length:var(--text-sm)] font-[weight:var(--font-weight-medium)] text-foreground mb-2",children:n}),e.jsxs("div",{className:"relative",children:[i&&e.jsx("div",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground",children:i}),e.jsx("input",{className:`w-full px-4 py-2 ${i?"pl-10":""} bg-background border border-border rounded-lg text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent transition-all ${s?"border-destructive focus:ring-destructive":""} ${r}`,...d})]}),s&&e.jsxs("p",{className:"mt-1.5 text-[length:var(--text-sm)] text-destructive flex items-center gap-1",children:[e.jsx(w,{size:14}),s]}),!s&&t&&e.jsx("p",{className:"mt-1.5 text-[length:var(--text-sm)] text-muted-foreground",children:t})]}),v=({title:n,description:s,children:t,footer:i,symbol:l,hover:r=!1,className:d=""})=>e.jsxs("div",{className:`bg-card border border-border rounded-xl shadow-sm ${r?"transition-all hover:shadow-md hover:border-primary/50":""} ${d}`,children:[(n||s||l)&&e.jsx("div",{className:"p-6 border-b border-border",children:e.jsxs("div",{className:"flex items-start gap-4",children:[l&&e.jsx("div",{className:"shrink-0",children:l}),e.jsxs("div",{className:"flex-1 min-w-0",children:[n&&e.jsx("h3",{className:"mb-1",children:n}),s&&e.jsx("p",{className:"text-muted-foreground text-[length:var(--text-sm)]",children:s})]})]})}),t&&e.jsx("div",{className:"p-6",children:t}),i&&e.jsx("div",{className:"px-6 py-4 bg-muted/30 border-t border-border rounded-b-xl",children:i})]}),V=({isOpen:n,onClose:s,title:t,children:i,footer:l,size:r="md"})=>{if(!n)return null;const d={sm:"max-w-md",md:"max-w-lg",lg:"max-w-2xl"};return e.jsxs("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4",children:[e.jsx("div",{className:"absolute inset-0 bg-black/50 backdrop-blur-sm",onClick:s}),e.jsxs("div",{className:`relative w-full ${d[r]} bg-card border border-border rounded-xl shadow-xl`,children:[e.jsxs("div",{className:"flex items-center justify-between p-6 border-b border-border",children:[e.jsx("h3",{children:t}),e.jsx("button",{onClick:s,className:"p-1 rounded-lg hover:bg-accent text-muted-foreground hover:text-foreground transition-colors",children:e.jsx(A,{size:20})})]}),e.jsx("div",{className:"p-6",children:i}),l&&e.jsx("div",{className:"flex items-center justify-end gap-3 px-6 py-4 bg-muted/30 border-t border-border rounded-b-xl",children:l})]})]})},G=({tabs:n,defaultTab:s})=>{const[t,i]=g.useState(s||n[0]?.id),l=n.find(r=>r.id===t)?.content;return e.jsxs("div",{children:[e.jsx("div",{className:"border-b border-border",children:e.jsx("div",{className:"flex gap-1",children:n.map(r=>e.jsxs("button",{onClick:()=>i(r.id),className:`flex items-center gap-2 px-4 py-3 text-[length:var(--text-sm)] font-[weight:var(--font-weight-medium)] transition-all relative ${t===r.id?"text-primary":"text-muted-foreground hover:text-foreground"}`,children:[r.icon&&e.jsx("span",{children:r.icon}),r.label,t===r.id&&e.jsx("div",{className:"absolute bottom-0 left-0 right-0 h-0.5 bg-primary rounded-full"})]},r.id))})}),e.jsx("div",{className:"py-6",children:l})]})},N=({label:n,options:s,value:t,onChange:i,placeholder:l="Select an option",error:r})=>{const[d,x]=g.useState(!1),o=s.find(m=>m.value===t);return e.jsxs("div",{className:"relative",children:[n&&e.jsx("label",{className:"block text-[length:var(--text-sm)] font-[weight:var(--font-weight-medium)] text-foreground mb-2",children:n}),e.jsxs("button",{type:"button",onClick:()=>x(!d),className:`w-full px-4 py-2 bg-background border rounded-lg text-left flex items-center justify-between transition-all focus:outline-none focus:ring-2 focus:ring-primary ${r?"border-destructive":"border-border"}`,children:[e.jsx("span",{className:o?"text-foreground":"text-muted-foreground",children:o?o.label:l}),e.jsx(L,{size:16,className:`transition-transform ${d?"rotate-180":""}`})]}),d&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"fixed inset-0 z-10",onClick:()=>x(!1)}),e.jsx("div",{className:"absolute z-20 w-full mt-2 bg-card border border-border rounded-lg shadow-lg max-h-60 overflow-auto",children:s.map(m=>e.jsx("button",{type:"button",onClick:()=>{i(m.value),x(!1)},className:`w-full px-4 py-2.5 text-left text-[length:var(--text-sm)] transition-colors ${m.value===t?"bg-primary text-primary-foreground":"hover:bg-accent"}`,children:m.label},m.value))})]}),r&&e.jsxs("p",{className:"mt-1.5 text-[length:var(--text-sm)] text-destructive flex items-center gap-1",children:[e.jsx(w,{size:14}),r]})]})},a=({children:n,variant:s="default",size:t="md",icon:i,className:l=""})=>{const r={default:"bg-muted text-foreground",primary:"bg-primary text-primary-foreground",success:"bg-success text-success-foreground",warning:"bg-warning text-warning-foreground",destructive:"bg-destructive text-destructive-foreground",outline:"border border-border bg-transparent text-foreground"},d={sm:"px-2 py-0.5 text-[length:var(--text-xs)]",md:"px-2.5 py-1 text-[length:var(--text-sm)]",lg:"px-3 py-1.5 text-[length:var(--text-md)]"};return e.jsxs("span",{className:`inline-flex items-center gap-1 rounded-full font-[weight:var(--font-weight-medium)] ${r[s]} ${d[t]} ${l}`,children:[i&&e.jsx("span",{children:i}),n]})},u=({value:n,max:s=100,label:t,showPercentage:i=!0,variant:l="default",size:r="md"})=>{const d=Math.min(Math.max(n/s*100,0),100),x={default:"bg-primary",success:"bg-success",warning:"bg-warning",destructive:"bg-destructive"},o={sm:"h-1",md:"h-2",lg:"h-3"};return e.jsxs("div",{children:[(t||i)&&e.jsxs("div",{className:"flex items-center justify-between mb-2",children:[t&&e.jsx("span",{className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-medium)]",children:t}),i&&e.jsxs("span",{className:"text-[length:var(--text-sm)] text-muted-foreground",children:[Math.round(d),"%"]})]}),e.jsx("div",{className:`w-full bg-muted rounded-full overflow-hidden ${o[r]}`,children:e.jsx("div",{className:`${x[l]} ${o[r]} rounded-full transition-all duration-300`,style:{width:`${d}%`}})})]})},p=({size:n="md",variant:s="default"})=>{const t={sm:"h-4 w-4 border-2",md:"h-8 w-8 border-3",lg:"h-12 w-12 border-4"},i={default:"border-border border-t-foreground",primary:"border-primary/20 border-t-primary"};return e.jsx("div",{className:`animate-spin rounded-full ${t[n]} ${i[s]}`})},_=()=>{const[n,s]=g.useState(!1),[t,i]=g.useState(""),[l,r]=g.useState(""),[d,x]=g.useState(!1),[o,m]=g.useState(35),f=()=>{x(!0),m(0);const j=setInterval(()=>{m(z=>z>=100?(clearInterval(j),x(!1),100):z+10)},300)};return e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsx(M,{title:"Common Components",description:"Essential UI components including buttons, inputs, cards, modals, tabs, and more built with the LUPMIS 2.0 design system."}),e.jsxs("section",{className:"relative bg-gradient-to-br from-brand-navy to-brand-blue-strong text-white py-16 px-8",children:[e.jsx("div",{className:"absolute top-10 right-10 opacity-10",children:e.jsx(h,{size:150,color:"white"})}),e.jsxs("div",{className:"max-w-7xl mx-auto relative z-10",children:[e.jsxs("div",{className:"flex items-center gap-4 mb-4",children:[e.jsx(h,{size:64,color:"var(--brand-orange-warm)"}),e.jsx("h1",{children:"Components"})]}),e.jsx("p",{className:"text-[length:var(--text-md)] opacity-90 max-w-3xl",children:"Essential UI components built with our design guidelines featuring Adinkra symbolism, proportional typography scaling, and Nielsen's usability principles."})]})]}),e.jsxs("div",{className:"max-w-7xl mx-auto p-8 space-y-16",children:[e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"1. Buttons"}),e.jsx("p",{className:"text-muted-foreground",children:"Interactive elements for user actions with multiple variants and states"})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Variants"}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsx(c,{variant:"primary",children:"Primary"}),e.jsx(c,{variant:"secondary",children:"Secondary"}),e.jsx(c,{variant:"outline",children:"Outline"}),e.jsx(c,{variant:"ghost",children:"Ghost"}),e.jsx(c,{variant:"destructive",children:"Destructive"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Sizes"}),e.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[e.jsx(c,{size:"sm",children:"Small"}),e.jsx(c,{size:"md",children:"Medium"}),e.jsx(c,{size:"lg",children:"Large"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"With Icons & States"}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsx(c,{icon:e.jsx(U,{size:16}),children:"New Item"}),e.jsx(c,{icon:e.jsx(P,{size:16}),variant:"outline",children:"Search"}),e.jsx(c,{loading:!0,children:"Processing..."}),e.jsx(c,{disabled:!0,children:"Disabled"})]})]})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"2. Input Fields"}),e.jsx("p",{className:"text-muted-foreground",children:"Text input components with validation, icons, and helper text"})]}),e.jsxs("div",{className:"max-w-2xl space-y-6",children:[e.jsx(b,{label:"Username",placeholder:"Enter your username",helperText:"Choose a unique username",fullWidth:!0}),e.jsx(b,{label:"Search",placeholder:"Search items...",icon:e.jsx(P,{size:18}),fullWidth:!0}),e.jsx(b,{label:"Email",type:"email",placeholder:"you@example.com",value:t,onChange:j=>i(j.target.value),error:t&&!t.includes("@")?"Please enter a valid email":"",fullWidth:!0})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"3. Cards"}),e.jsx("p",{className:"text-muted-foreground",children:"Flexible containers for grouping related content"})]}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[e.jsx(v,{title:"Basic Card",description:"A simple card with title and description",children:e.jsx("p",{className:"text-muted-foreground",children:"Cards can contain any content you need. They're perfect for organizing information into digestible sections."})}),e.jsx(v,{title:"Development Progress",description:"Building sustainable systems",symbol:e.jsx(h,{size:40,color:"var(--brand-blue-strong)"}),hover:!0,footer:e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("span",{className:"text-sm text-muted-foreground",children:"Last updated: Today"}),e.jsx(c,{size:"sm",variant:"ghost",children:"View Details"})]}),children:e.jsxs("div",{className:"space-y-4",children:[e.jsx(u,{label:"Phase 1",value:100,variant:"success"}),e.jsx(u,{label:"Phase 2",value:75,variant:"default"}),e.jsx(u,{label:"Phase 3",value:30,variant:"warning"})]})}),e.jsx(v,{title:"Team Collaboration",symbol:e.jsx(I,{size:40,color:"var(--brand-green-bright)"}),hover:!0,children:e.jsxs("div",{className:"flex items-center gap-2 flex-wrap",children:[e.jsx(a,{variant:"primary",children:"Active"}),e.jsx(a,{variant:"success",icon:e.jsx($,{size:14}),children:"Verified"}),e.jsx(a,{variant:"outline",children:"12 Members"})]})}),e.jsxs(v,{title:"Wisdom Resources",symbol:e.jsx(k,{size:40,color:"var(--brand-orange-warm)"}),hover:!0,children:[e.jsx("p",{className:"text-muted-foreground mb-4",children:"Access knowledge base and educational materials."}),e.jsx(c,{variant:"outline",fullWidth:!0,icon:e.jsx(S,{size:16,color:"currentColor"}),children:"Browse Library"})]})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"4. Modals"}),e.jsx("p",{className:"text-muted-foreground",children:"Dialog boxes for focused interactions and important information"})]}),e.jsxs("div",{children:[e.jsx(c,{onClick:()=>s(!0),children:"Open Modal"}),e.jsx(V,{isOpen:n,onClose:()=>s(!1),title:"Welcome to LUSPA",footer:e.jsxs(e.Fragment,{children:[e.jsx(c,{variant:"ghost",onClick:()=>s(!1),children:"Cancel"}),e.jsx(c,{onClick:()=>s(!1),children:"Get Started"})]}),children:e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx(h,{size:48,color:"var(--brand-blue-strong)"}),e.jsx("p",{className:"text-muted-foreground",children:"This modal demonstrates how dialogs can be used to focus user attention on specific tasks or information without leaving the current page."})]}),e.jsx("div",{className:"bg-muted/50 p-4 rounded-lg",children:e.jsx("p",{className:"text-sm",children:"Modals should be used sparingly and only for important interactions that require immediate user attention or input."})})]})})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"5. Tabs"}),e.jsx("p",{className:"text-muted-foreground",children:"Organize content into separate views within the same context"})]}),e.jsx(v,{children:e.jsx(G,{tabs:[{id:"overview",label:"Overview",icon:e.jsx(D,{size:16}),content:e.jsxs("div",{className:"space-y-4",children:[e.jsx("p",{className:"text-muted-foreground",children:"The design guidelines integrates Adinkra symbolism with modern UI patterns to create culturally meaningful interfaces."}),e.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[e.jsxs("div",{className:"text-center",children:[e.jsx(h,{size:48,color:"var(--brand-blue-strong)",className:"mx-auto mb-2"}),e.jsx("p",{className:"text-sm font-medium",children:"Osiadan"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"The Builder"})]}),e.jsxs("div",{className:"text-center",children:[e.jsx(S,{size:48,color:"var(--brand-green-bright)",className:"mx-auto mb-2"}),e.jsx("p",{className:"text-sm font-medium",children:"Sankofa"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Learn from Past"})]}),e.jsxs("div",{className:"text-center",children:[e.jsx(C,{size:48,color:"var(--brand-orange-warm)",className:"mx-auto mb-2"}),e.jsx("p",{className:"text-sm font-medium",children:"Dwennimmen"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"Strength & Humility"})]})]})]})},{id:"statistics",label:"Statistics",content:e.jsx("div",{className:"space-y-6",children:e.jsxs("div",{className:"grid grid-cols-3 gap-4",children:[e.jsxs("div",{className:"text-center p-4 bg-muted/30 rounded-lg",children:[e.jsx("div",{className:"text-2xl font-bold text-primary mb-1",children:"48"}),e.jsx("div",{className:"text-sm text-muted-foreground",children:"Components"})]}),e.jsxs("div",{className:"text-center p-4 bg-muted/30 rounded-lg",children:[e.jsx("div",{className:"text-2xl font-bold text-success mb-1",children:"11"}),e.jsx("div",{className:"text-sm text-muted-foreground",children:"Adinkra Symbols"})]}),e.jsxs("div",{className:"text-center p-4 bg-muted/30 rounded-lg",children:[e.jsx("div",{className:"text-2xl font-bold text-warning mb-1",children:"5"}),e.jsx("div",{className:"text-sm text-muted-foreground",children:"Applications"})]})]})})},{id:"settings",label:"Settings",content:e.jsxs("div",{className:"space-y-4 max-w-md",children:[e.jsx(b,{label:"Display Name",placeholder:"Your name",fullWidth:!0}),e.jsx(N,{label:"Theme Preference",options:[{value:"light",label:"Light Mode"},{value:"dark",label:"Dark Mode"},{value:"auto",label:"Auto (System)"}],value:l,onChange:r}),e.jsx(c,{fullWidth:!0,children:"Save Changes"})]})}]})})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"6. Select Dropdowns"}),e.jsx("p",{className:"text-muted-foreground",children:"Choose from predefined options with searchable dropdowns"})]}),e.jsxs("div",{className:"max-w-2xl space-y-6",children:[e.jsx(N,{label:"Choose a Symbol",options:[{value:"osiadan",label:"Osiadan - The Builder"},{value:"sankofa",label:"Sankofa - Learn from the Past"},{value:"dwennimmen",label:"Dwennimmen - Strength and Humility"},{value:"nkonsonkonson",label:"Nkonsonkonson - Unity"},{value:"gyenyame",label:"Gye Nyame - Supremacy of God"}],value:l,onChange:r}),e.jsx(N,{label:"Project Phase",options:[{value:"planning",label:"Planning"},{value:"development",label:"Development"},{value:"testing",label:"Testing"},{value:"deployment",label:"Deployment"}],value:"",onChange:()=>{},placeholder:"Select project phase"})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"7. Badges"}),e.jsx("p",{className:"text-muted-foreground",children:"Small labels for statuses, categories, and metadata"})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Variants"}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsx(a,{variant:"default",children:"Default"}),e.jsx(a,{variant:"primary",children:"Primary"}),e.jsx(a,{variant:"success",children:"Success"}),e.jsx(a,{variant:"warning",children:"Warning"}),e.jsx(a,{variant:"destructive",children:"Destructive"}),e.jsx(a,{variant:"outline",children:"Outline"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Sizes"}),e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx(a,{size:"sm",children:"Small"}),e.jsx(a,{size:"md",children:"Medium"}),e.jsx(a,{size:"lg",children:"Large"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"With Icons"}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsx(a,{variant:"success",icon:e.jsx($,{size:14}),children:"Approved"}),e.jsx(a,{variant:"warning",icon:e.jsx(w,{size:14}),children:"Pending"}),e.jsx(a,{variant:"primary",icon:e.jsx(D,{size:14}),children:"New"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Practical Usage"}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm",children:"Application Status:"}),e.jsx(a,{variant:"success",children:"Approved"})]}),e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm",children:"User Role:"}),e.jsx(a,{variant:"primary",children:"Administrator"})]}),e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx("span",{className:"text-sm",children:"Tags:"}),e.jsx(a,{variant:"outline",children:"Planning"}),e.jsx(a,{variant:"outline",children:"Development"}),e.jsx(a,{variant:"outline",children:"GIS"})]})]})]})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"8. Progress Indicators"}),e.jsx("p",{className:"text-muted-foreground",children:"Visual feedback for loading states and task completion"})]}),e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Progress Bars"}),e.jsxs("div",{className:"max-w-2xl space-y-4",children:[e.jsx(u,{label:"Development",value:85,variant:"success"}),e.jsx(u,{label:"Testing",value:60,variant:"default"}),e.jsx(u,{label:"Documentation",value:40,variant:"warning"}),e.jsx(u,{label:"Deployment",value:15,variant:"destructive"}),e.jsx(u,{value:o,size:"lg"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Loading Spinners"}),e.jsxs("div",{className:"flex items-center gap-8",children:[e.jsxs("div",{className:"text-center",children:[e.jsx(p,{size:"sm"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-2",children:"Small"})]}),e.jsxs("div",{className:"text-center",children:[e.jsx(p,{size:"md"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-2",children:"Medium"})]}),e.jsxs("div",{className:"text-center",children:[e.jsx(p,{size:"lg"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-2",children:"Large"})]}),e.jsxs("div",{className:"text-center",children:[e.jsx(p,{size:"md",variant:"primary"}),e.jsx("p",{className:"text-sm text-muted-foreground mt-2",children:"Primary"})]})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Interactive Demo"}),e.jsxs("div",{className:"max-w-md space-y-4",children:[e.jsx(c,{onClick:f,disabled:d,fullWidth:!0,loading:d,children:d?"Processing...":"Start Process"}),d&&e.jsx(u,{value:o,label:"Processing application",variant:"default",size:"lg"})]})]})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsx("section",{className:"bg-gradient-to-br from-muted/50 to-accent/30 p-12 rounded-2xl border-2 border-dashed border-border",children:e.jsxs("div",{className:"max-w-3xl mx-auto text-center space-y-6",children:[e.jsxs("div",{className:"flex justify-center gap-4 mb-6",children:[e.jsx(T,{size:56,color:"var(--brand-blue-strong)",className:"opacity-50"}),e.jsx(C,{size:56,color:"var(--brand-green-bright)",className:"opacity-50"}),e.jsx(k,{size:56,color:"var(--brand-orange-warm)",className:"opacity-50"})]}),e.jsx("h2",{className:"text-foreground",children:"More Components Coming Soon"}),e.jsx("p",{className:"text-muted-foreground text-[length:var(--text-md)] max-w-2xl mx-auto",children:"We're continuously expanding our component library with new patterns and implementations. Future additions will include data tables, date pickers, file uploads, notifications, breadcrumbs, pagination, and more."}),e.jsxs("div",{className:"flex flex-wrap justify-center gap-3 pt-4",children:[e.jsx(a,{variant:"outline",size:"lg",children:"Data Tables"}),e.jsx(a,{variant:"outline",size:"lg",children:"Date Pickers"}),e.jsx(a,{variant:"outline",size:"lg",children:"File Uploads"}),e.jsx(a,{variant:"outline",size:"lg",children:"Notifications"}),e.jsx(a,{variant:"outline",size:"lg",children:"Breadcrumbs"}),e.jsx(a,{variant:"outline",size:"lg",children:"Pagination"}),e.jsx(a,{variant:"outline",size:"lg",children:"Accordions"}),e.jsx(a,{variant:"outline",size:"lg",children:"Tooltips"})]}),e.jsxs("div",{className:"pt-6",children:[e.jsx("p",{className:"text-sm text-muted-foreground italic",children:'"The builder continues to develop and sustain"'}),e.jsx("div",{className:"flex justify-center mt-3",children:e.jsx(h,{size:40,color:"var(--brand-orange-warm)"})})]})]})}),e.jsxs("footer",{className:"text-center pt-8 border-t border-border",children:[e.jsx(h,{size:48,color:"var(--brand-blue-strong)",className:"mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground text-sm",children:"LUPMIS 2.0 Design Guidelines"})]})]})]})};export{a as Badge,c as Button,v as Card,_ as CommonComponentsShowcase,b as InputField,V as Modal,u as ProgressBar,N as Select,p as Spinner,G as Tabs}; diff --git a/assets/ConsumerPortal-Q9gDSGOS.js b/assets/ConsumerPortal-Q9gDSGOS.js new file mode 100644 index 0000000..ebb4894 --- /dev/null +++ b/assets/ConsumerPortal-Q9gDSGOS.js @@ -0,0 +1,15 @@ +import{c as i,r as a,j as e,O as u,F as r,i as p}from"./index-mUEXKEer.js";import{C as f}from"./NielsenHeuristics-d7HCIgJi.js";import{E as v}from"./eye-off-Dznbbs9G.js";import{E as b}from"./eye-QHwXAkqY.js";const j=[["rect",{width:"18",height:"11",x:"3",y:"11",rx:"2",ry:"2",key:"1w4ew1"}],["path",{d:"M7 11V7a5 5 0 0 1 10 0v4",key:"fwvmzm"}]],N=i("lock",j);const w=[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]],y=i("mail",w),S="/assets/37fe2c33-dfa4-444f-ad03-9a34352949b1-y7FspjyH.png",k="/assets/1957d89d-66c1-44ae-9846-275775a01370-BriPJkGk.png",z="/assets/6ce4573d-ef2d-4e32-87cf-d487acd1da19-DlLBxN1D.png",L="/assets/c12cadb8-101e-4bdc-9b80-78449fafda2f-C5fJKt8t.png",I=()=>{const[n,c]=a.useState(""),[d,m]=a.useState(""),[s,x]=a.useState(!1),[o,l]=a.useState(!1),h=async t=>{t.preventDefault(),l(!0),setTimeout(()=>{alert(`Login attempted with username: ${n}`),l(!1)},1e3)},g=()=>{alert("Account request form will open")};return e.jsx("div",{className:"min-h-screen bg-muted/30 flex items-center justify-center p-8",children:e.jsxs("div",{className:"w-full max-w-7xl",children:[e.jsxs("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8 mb-12",children:[e.jsxs("div",{className:"bg-gradient-to-br from-brand-blue-light/20 to-brand-blue-strong/10 rounded-xl p-10 relative overflow-hidden border border-border",children:[e.jsx("div",{className:"absolute top-4 right-4 opacity-5",children:e.jsx(u,{size:200,color:"var(--brand-blue-strong)"})}),e.jsx("div",{className:"relative rounded-lg overflow-hidden mb-6 shadow-lg",children:e.jsx("img",{src:S,alt:"Ghana map showing land use planning zones",className:"w-full h-auto object-cover"})}),e.jsxs("div",{className:"relative z-10",children:[e.jsx("h1",{className:"mb-4 text-brand-blue-strong",children:"Welcome to LUPMIS"}),e.jsx("p",{className:"text-[length:var(--text-md)] text-foreground/80 leading-relaxed",children:"The Land Use Planning Management Information System provides citizens with access to spatial planning information, application tracking, and land use services. Empowering communities through transparent and accessible planning data."}),e.jsxs("div",{className:"mt-6 space-y-3",children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(r,{size:20,color:"var(--brand-green-bright)",className:"mt-1 shrink-0"}),e.jsxs("p",{className:"text-[length:var(--text-sm)] text-foreground/70",children:[e.jsx("strong",{className:"text-foreground",children:"Track Applications:"})," Monitor your planning application status in real-time"]})]}),e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(r,{size:20,color:"var(--brand-orange-warm)",className:"mt-1 shrink-0"}),e.jsxs("p",{className:"text-[length:var(--text-sm)] text-foreground/70",children:[e.jsx("strong",{className:"text-foreground",children:"Access Information:"})," View zoning regulations and land use plans"]})]}),e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(r,{size:20,color:"var(--brand-blue-strong)",className:"mt-1 shrink-0"}),e.jsxs("p",{className:"text-[length:var(--text-sm)] text-foreground/70",children:[e.jsx("strong",{className:"text-foreground",children:"Submit Requests:"})," Apply for planning permits and services online"]})]})]})]})]}),e.jsx("div",{className:"flex items-center justify-center",children:e.jsxs("div",{className:"w-full max-w-md space-y-8",children:[e.jsxs("div",{className:"flex items-center justify-center gap-8",children:[e.jsx("img",{src:p,alt:"LUSPA - Land Use and Spatial Planning Authority",className:"h-32 w-auto object-contain"}),e.jsx("img",{src:k,alt:"Ministry of Local Government and Rural Development",className:"h-32 w-auto object-contain"})]}),e.jsxs("div",{className:"bg-card rounded-xl border border-border shadow-lg p-8",children:[e.jsx("h2",{className:"mb-6 text-center",children:"Login"}),e.jsxs("form",{onSubmit:h,className:"space-y-6",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx("label",{htmlFor:"username",className:"block text-[length:var(--text-sm)] font-[weight:var(--font-weight-medium)] text-foreground",children:"Username"}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-12 bg-muted border-r border-border rounded-l-lg flex items-center justify-center",children:e.jsx(y,{size:18,className:"text-muted-foreground"})}),e.jsx("input",{id:"username",type:"text",value:n,onChange:t=>c(t.target.value),placeholder:"johndoe@email.com",className:` + w-full pl-14 pr-4 py-3 + bg-background border border-border rounded-lg + text-[length:var(--text-sm)] text-foreground + placeholder:text-muted-foreground + focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent + transition-all + `,required:!0})]}),e.jsx("p",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:"Enter your registered email address"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("label",{htmlFor:"password",className:"block text-[length:var(--text-sm)] font-[weight:var(--font-weight-medium)] text-foreground",children:"Password"}),e.jsxs("div",{className:"relative",children:[e.jsx("div",{className:"absolute left-4 top-1/2 -translate-y-1/2",children:e.jsx(N,{size:18,className:"text-muted-foreground"})}),e.jsx("input",{id:"password",type:s?"text":"password",value:d,onChange:t=>m(t.target.value),placeholder:"Enter your password",className:` + w-full pl-12 pr-12 py-3 + bg-background border border-border rounded-lg + text-[length:var(--text-sm)] text-foreground + placeholder:text-muted-foreground + focus:outline-none focus:ring-2 focus:ring-primary focus:border-transparent + transition-all + `,required:!0}),e.jsx("button",{type:"button",onClick:()=>x(!s),className:"absolute right-4 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors","aria-label":s?"Hide password":"Show password",children:s?e.jsx(v,{size:18}):e.jsx(b,{size:18})})]}),e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx("p",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:"Minimum 8 characters"}),e.jsx("button",{type:"button",className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-semibold)] text-primary hover:text-primary/80 transition-colors",children:"Forgot Password?"})]})]}),e.jsx(f,{variant:"primary",size:"lg",className:"w-full",disabled:o,children:o?"Signing In...":"Sign In"})]}),e.jsxs("div",{className:"mt-6 text-center space-y-2",children:[e.jsx("p",{className:"text-[length:var(--text-sm)] text-muted-foreground",children:"Don't have an account?"}),e.jsx("button",{onClick:g,className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-semibold)] text-primary hover:text-primary/80 transition-colors",children:"Request an Account"})]})]})]})})]}),e.jsxs("footer",{className:"space-y-6",children:[e.jsxs("div",{className:"flex flex-col items-center gap-4",children:[e.jsx("p",{className:"text-[length:var(--text-sm)] text-muted-foreground text-center",children:"Developed with Support from"}),e.jsxs("div",{className:"flex items-center gap-8",children:[e.jsx("img",{src:z,alt:"GIZ Ghana - Deutsche Gesellschaft für Internationale Zusammenarbeit",className:"h-16 w-auto object-contain"}),e.jsx("img",{src:L,alt:"SECO - Swiss State Secretariat for Economic Affairs",className:"h-16 w-auto object-contain"})]})]}),e.jsxs("div",{className:"flex flex-col items-center gap-3 pt-6 border-t border-border",children:[e.jsxs("div",{className:"flex items-center gap-6",children:[e.jsx("a",{href:"#",className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-semibold)] text-primary hover:text-primary/80 transition-colors",children:"About"}),e.jsx("a",{href:"#",className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-semibold)] text-primary hover:text-primary/80 transition-colors",children:"Privacy"}),e.jsx("a",{href:"#",className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-semibold)] text-primary hover:text-primary/80 transition-colors",children:"Terms"})]}),e.jsx("p",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:"© 2025 LUSPA. All Rights Reserved"})]})]})]})})};export{I as ConsumerPortal}; diff --git a/assets/DesignSystemShowcase-A9o3Uv7_.js b/assets/DesignSystemShowcase-A9o3Uv7_.js new file mode 100644 index 0000000..93c4be9 --- /dev/null +++ b/assets/DesignSystemShowcase-A9o3Uv7_.js @@ -0,0 +1 @@ +import{A as c,j as e,P as N,O as y}from"./index-mUEXKEer.js";const b=({title:r,subtitle:s,symbolName:n="osiadan",symbolSize:o=48,symbolColor:a="var(--brand-blue-strong)",className:i=""})=>{const l=c[n].component;return e.jsxs("div",{className:`flex items-center gap-4 ${i}`,children:[e.jsx(l,{size:o,color:a}),e.jsxs("div",{children:[e.jsx("h2",{children:r}),s&&e.jsx("p",{className:"text-muted-foreground text-[length:var(--text-sm)]",children:s})]})]})},j=({title:r,subtitle:s,symbolName:n="osiadan",symbolColor:o="var(--brand-blue-strong)",backgroundColor:a="var(--card)",textColor:i="var(--card-foreground)",onClick:l,className:d=""})=>{const t=c[n].component,x=c[n];return e.jsxs("div",{onClick:l,className:`p-6 rounded-xl border border-border transition-all ${l?"cursor-pointer hover:shadow-lg hover:scale-105":""} ${d}`,style:{backgroundColor:a,color:i},children:[e.jsxs("div",{className:"flex items-start gap-4 mb-4",children:[e.jsx(t,{size:48,color:o}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h3",{className:"text-[length:var(--text-lg)] mb-1",children:r}),e.jsx("p",{className:"text-xs text-muted-foreground italic",children:x.meaning})]})]}),e.jsx("p",{className:"text-muted-foreground",children:s})]})},f=({title:r,subtitle:s,description:n,symbolName:o="osiadan",backgroundColor:a="var(--brand-navy)",textColor:i="white",accentColor:l="var(--brand-blue-light)",children:d,className:t=""})=>{const x=c[o].component;return e.jsxs("section",{className:`relative py-20 px-8 overflow-hidden ${t}`,style:{backgroundColor:a,color:i},children:[e.jsx("div",{className:"absolute top-10 right-10 opacity-10",children:e.jsx(x,{size:200,color:i})}),e.jsx("div",{className:"absolute bottom-10 left-10 opacity-10",children:e.jsx(x,{size:150,color:i})}),e.jsx("div",{className:"max-w-7xl mx-auto relative z-10",children:e.jsxs("div",{className:"flex flex-col md:flex-row items-center justify-between gap-8",children:[e.jsxs("div",{className:"flex-1 space-y-6",children:[e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx(x,{size:80,color:l}),e.jsxs("div",{children:[e.jsx("h1",{children:r}),e.jsx("p",{className:"text-[length:var(--text-md)] font-[family:var(--font-body)] uppercase tracking-wider mt-2",style:{color:l},children:s}),e.jsx("p",{className:"text-muted-foreground",children:n})]})]}),d]}),e.jsx("div",{className:"flex-shrink-0",children:e.jsx(x,{size:120,color:l})})]})})]})},p=({children:r,symbolName:s,symbolPosition:n="left",variant:o="primary",onClick:a,className:i="",disabled:l=!1})=>{const d=c[s].component,t={primary:"bg-primary text-primary-foreground hover:bg-primary-hover",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary-hover",success:"bg-success text-success-foreground hover:opacity-90",warning:"bg-warning text-warning-foreground hover:opacity-90",destructive:"bg-destructive text-destructive-foreground hover:opacity-90"};return e.jsxs("button",{onClick:a,disabled:l,className:`px-6 py-3 rounded-lg transition-all flex items-center gap-2 ${t[o]} ${l?"opacity-50 cursor-not-allowed":""} ${i}`,children:[n==="left"&&e.jsx(d,{size:24,color:"currentColor"}),e.jsx("span",{children:r}),n==="right"&&e.jsx(d,{size:24,color:"currentColor"})]})},w=({symbolName:r="osiadan",size:s=64,color:n="var(--brand-blue-strong)",message:o,className:a=""})=>{const i=c[r].component;return e.jsxs("div",{className:`flex flex-col items-center justify-center gap-4 ${a}`,children:[e.jsx(i,{size:s,color:n,className:"animate-pulse"}),o&&e.jsx("p",{className:"text-muted-foreground text-sm",children:o})]})},g=({label:r,symbolName:s,variant:n="default",size:o="md",className:a=""})=>{const i=c[s].component,l={default:"bg-muted text-foreground",success:"bg-success text-success-foreground",warning:"bg-warning text-warning-foreground",info:"bg-primary text-primary-foreground"},t={sm:{padding:"px-2 py-1",symbol:16,text:"text-xs"},md:{padding:"px-3 py-1.5",symbol:20,text:"text-sm"},lg:{padding:"px-4 py-2",symbol:24,text:"text-base"}}[o];return e.jsxs("div",{className:`inline-flex items-center gap-2 rounded-full ${t.padding} ${l[n]} ${a}`,children:[e.jsx(i,{size:t.symbol,color:"currentColor"}),e.jsx("span",{className:`font-[weight:var(--font-weight-medium)] ${t.text}`,children:r})]})},k=({items:r,columns:s=3,className:n=""})=>{const o={2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5"};return e.jsx("div",{className:`grid ${o[s]} gap-4 ${n}`,children:r.map((a,i)=>{const l=c[a.symbolName].component,d=c[a.symbolName],t=()=>{a.onClick&&a.onClick(),a.href&&(window.location.href=a.href)};return e.jsxs("button",{onClick:t,className:"p-6 bg-card hover:bg-accent rounded-xl transition-all hover:scale-105 border border-border group",children:[e.jsx(l,{size:48,color:a.color||"var(--brand-blue-strong)",className:"mx-auto mb-3 group-hover:scale-110 transition-transform"}),e.jsx("p",{className:"font-[weight:var(--font-weight-semibold)] text-sm mb-1",children:a.label}),e.jsx("p",{className:"text-sm text-muted-foreground",children:d.meaning})]},i)})})},v=({title:r,description:s,symbolName:n,gradientFrom:o,gradientTo:a,textColor:i="white",accentColor:l="var(--brand-orange-warm)",onClick:d,className:t=""})=>{const x=c[n].component;return e.jsxs("div",{onClick:d,className:`relative p-8 rounded-2xl overflow-hidden ${d?"cursor-pointer hover:scale-105":""} transition-transform ${t}`,style:{background:`linear-gradient(135deg, ${o}, ${a})`,color:i},children:[e.jsx("div",{className:"absolute top-4 right-4 opacity-20",children:e.jsx(x,{size:120,color:i})}),e.jsxs("div",{className:"relative z-10 space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(x,{size:40,color:l}),e.jsx("h3",{className:"text-[length:var(--text-lg)]",children:r})]}),e.jsx("p",{className:"opacity-90",children:s})]})]})},u=({symbolName:r="osiadan",symbolSize:s=48,symbolColor:n="var(--brand-blue-strong)",showLine:o=!0,className:a=""})=>{const i=c[r].component;return e.jsxs("div",{className:`flex items-center gap-4 my-8 ${a}`,children:[o&&e.jsx("div",{className:"flex-1 h-px bg-border"}),e.jsx(i,{size:s,color:n}),o&&e.jsx("div",{className:"flex-1 h-px bg-border"})]})},C=()=>e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsx(N,{title:"Foundations",description:"Explore the design foundations of LUPMIS 2.0 including colors, typography, spacing, and Adinkra symbolism."}),e.jsx(f,{title:"Design Foundations",subtitle:"LUPMIS 2.0 Design Guidelines",symbolName:"osiadan",description:"Built for the Land Use and Spatial Planning Authority",children:e.jsx("p",{className:"text-[length:var(--text-base)] opacity-90 max-w-2xl leading-relaxed",children:"A comprehensive design guidelines built on proportional scaling principles, featuring Bebas Neue and Exo typography, enriched with Adinkra symbols representing West African wisdom and values."})}),e.jsxs("div",{className:"max-w-7xl mx-auto p-8 space-y-16",children:[e.jsxs("section",{children:[e.jsx(b,{title:"Adinkra Symbolism",subtitle:"West African symbols representing wisdom and values",symbolName:"osiadan"}),e.jsxs("div",{className:"bg-card p-8 rounded-2xl border border-border space-y-8 mt-8",children:[e.jsxs("div",{children:[e.jsx("h3",{className:"mb-4",children:"Primary Symbol: Osiadan"}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-8 items-center",children:[e.jsx("div",{className:"flex justify-center",children:e.jsx(y,{size:180,color:"var(--brand-blue-strong)"})}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("h5",{className:"text-brand-blue-strong mb-2",children:"Osiadan (Nyame)"}),e.jsx("p",{className:"text-[length:var(--text-sm)] text-muted-foreground italic mb-3",children:'"The Builder"'}),e.jsxs("p",{className:"text-[length:var(--text-md)] leading-relaxed",children:["Symbolizes ",e.jsx("strong",{children:"the one who develops"})," — representing God the Creator who builds and sustains all things. This powerful symbol embodies foundational strength, divine construction, creative power, and the ongoing work of development and growth. Used to represent the builder's mindset and transformative creation."]})]}),e.jsx("div",{className:"bg-muted/50 p-4 rounded-lg",children:e.jsxs("p",{className:"text-[length:var(--text-sm)]",children:[e.jsx("strong",{className:"text-primary",children:"Meaning:"})," ","Power • Foundational Strength • Creation • Development • Divine Construction"]})}),e.jsxs("div",{className:"flex flex-wrap gap-2",children:[e.jsx(g,{label:"Primary Brand",symbolName:"osiadan",variant:"info"}),e.jsx(g,{label:"Hero Sections",symbolName:"osiadan",variant:"default"}),e.jsx(g,{label:"Development",symbolName:"osiadan",variant:"default"})]})]})]})]}),e.jsx(u,{symbolName:"osiadan"}),e.jsxs("div",{children:[e.jsx("h4",{className:"mb-4",children:"Complementary Symbols"}),e.jsx("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-6",children:Object.entries(c).filter(([r])=>r!=="osiadan").map(([r,s])=>{const n=s.component;return e.jsxs("div",{className:"bg-muted p-4 rounded-xl hover:bg-accent transition-colors group cursor-pointer",children:[e.jsx("div",{className:"flex justify-center mb-3",children:e.jsx(n,{size:64,color:"var(--brand-blue-strong)",className:"group-hover:scale-110 transition-transform"})}),e.jsxs("div",{className:"text-center space-y-1",children:[e.jsx("h6",{className:"text-sm",children:s.name}),e.jsx("p",{className:"text-sm text-muted-foreground",children:s.meaning})]})]},r)})})]})]})]}),e.jsxs("section",{children:[e.jsx(b,{title:"Pattern Components",subtitle:"Pre-built components with Adinkra integration",symbolName:"nkyinkyim"}),e.jsxs("div",{className:"space-y-8 mt-8",children:[e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Feature Cards"}),e.jsxs("div",{className:"grid md:grid-cols-3 gap-6",children:[e.jsx(j,{title:"Learning Center",subtitle:"Access our comprehensive knowledge base and educational resources to grow your skills.",symbolName:"sankofa",symbolColor:"var(--brand-blue-strong)"}),e.jsx(j,{title:"Team Collaboration",subtitle:"Work together seamlessly with unified tools and integrated workflows.",symbolName:"nkonsonkonson",symbolColor:"var(--brand-green-bright)"}),e.jsx(j,{title:"Secure Platform",subtitle:"Your data is protected with enterprise-grade security and privacy controls.",symbolName:"fihankra",symbolColor:"var(--brand-blue-gray)"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Gradient Symbol Cards"}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[e.jsx(v,{title:"Leadership",description:"Using Gye Nyame to represent supreme authority and guidance in your organization.",symbolName:"gyeNyame",gradientFrom:"var(--brand-blue-strong)",gradientTo:"var(--brand-navy)"}),e.jsx(v,{title:"Wisdom & Insights",description:"Using Nyansapo to represent intelligence, insight, and knowledge sharing across your platform.",symbolName:"nyansapo",gradientFrom:"var(--brand-brown-muted)",gradientTo:"var(--brand-orange-warm)"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Icon Navigation Grid"}),e.jsx(k,{columns:2,className:"lg:grid-cols-4",items:[{label:"Learn",symbolName:"sankofa",color:"var(--brand-blue-strong)"},{label:"Collaborate",symbolName:"nkonsonkonson",color:"var(--brand-green-bright)"},{label:"Achieve",symbolName:"dwennimmen",color:"var(--brand-green-deep)"},{label:"Secure",symbolName:"fihankra",color:"var(--brand-blue-gray)"}]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Symbol Buttons"}),e.jsxs("div",{className:"flex flex-wrap gap-4",children:[e.jsx(p,{symbolName:"osiadan",variant:"primary",children:"Primary Action"}),e.jsx(p,{symbolName:"dwennimmen",variant:"success",children:"Confirm"}),e.jsx(p,{symbolName:"nkyinkyim",variant:"warning",children:"Process"}),e.jsx(p,{symbolName:"sankofa",variant:"secondary",symbolPosition:"right",children:"Learn More"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Symbol Badges"}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsx(g,{label:"Verified Leader",symbolName:"adinkrahene",variant:"info",size:"lg"}),e.jsx(g,{label:"Team Member",symbolName:"nkonsonkonson",variant:"default",size:"md"}),e.jsx(g,{label:"Certified",symbolName:"dwennimmen",variant:"success",size:"md"}),e.jsx(g,{label:"In Progress",symbolName:"nkyinkyim",variant:"warning",size:"sm"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Loading States"}),e.jsx("div",{className:"bg-card p-8 rounded-xl border border-border",children:e.jsx(w,{symbolName:"osiadan",message:"Loading your experience...",size:80})})]})]})]}),e.jsx(u,{}),e.jsxs("section",{children:[e.jsx(b,{title:"Brand Colors",subtitle:"Pantone-based color palette",symbolName:"osiadan"}),e.jsxs("div",{className:"space-y-8 mt-8",children:[e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Core Brand Colors"}),e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-4",children:[e.jsx(m,{color:"brand-navy",hex:"#1E1A4B",name:"Navy"}),e.jsx(m,{color:"brand-blue-gray",hex:"#333F48",name:"Blue Gray"}),e.jsx(m,{color:"brand-blue-strong",hex:"#005EB8",name:"Blue Strong"}),e.jsx(m,{color:"brand-blue-light",hex:"#B9D9EB",name:"Blue Light",textDark:!0}),e.jsx(m,{color:"brand-gray-cool",hex:"#F2F4F7",name:"Gray Cool",textDark:!0})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-4 text-muted-foreground",children:"Secondary & Accent Colors"}),e.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-3 lg:grid-cols-5 gap-4",children:[e.jsx(m,{color:"brand-green-deep",hex:"#006B3F",name:"Green Deep"}),e.jsx(m,{color:"brand-green-bright",hex:"#41B6A6",name:"Green Bright"}),e.jsx(m,{color:"brand-brown-muted",hex:"#8B6F47",name:"Brown Muted"}),e.jsx(m,{color:"brand-orange-warm",hex:"#FF9E1B",name:"Orange Warm",textDark:!0}),e.jsx(m,{color:"brand-gray-medium",hex:"#7A7A7A",name:"Gray Medium"})]})]})]})]}),e.jsx(u,{}),e.jsxs("section",{children:[e.jsx(b,{title:"Typography Scale",subtitle:"Harmonious proportional type system",symbolName:"nyansapo"}),e.jsxs("div",{className:"space-y-6 bg-card p-8 rounded-xl border border-border mt-8",children:[e.jsxs("div",{children:[e.jsx("small",{className:"text-muted-foreground",children:"Bebas Neue - Display Headings"}),e.jsx("h1",{className:"text-[length:var(--text-3xl)]",children:"Display Extra Large"})]}),e.jsx("div",{children:e.jsx("h1",{children:"Heading 1 (Responsive)"})}),e.jsx("div",{children:e.jsx("h2",{children:"Heading 2 (Responsive)"})}),e.jsxs("div",{children:[e.jsx("small",{className:"text-muted-foreground",children:"Exo - Body Headings"}),e.jsx("h3",{children:"Heading 3"})]}),e.jsx("div",{children:e.jsx("h4",{children:"Heading 4"})}),e.jsx("div",{children:e.jsx("h5",{children:"Heading 5"})}),e.jsx("div",{children:e.jsx("h6",{children:"Heading 6"})}),e.jsx("div",{children:e.jsx("p",{className:"max-w-3xl",children:"Body text using Exo font. Our typographic scale uses proportional sizing to create harmonious relationships between text elements. This ensures optimal readability and clear visual hierarchy across all content. Lorem ipsum dolor sit amet, consectetur adipiscing elit."})}),e.jsx("div",{children:e.jsx("small",{children:"Small text for captions and helper information"})})]})]}),e.jsx(u,{}),e.jsxs("section",{children:[e.jsx(b,{title:"Spacing Scale",subtitle:"Proportional spacing system",symbolName:"adinkrahene"}),e.jsxs("div",{className:"space-y-4 bg-card p-8 rounded-xl border border-border mt-8",children:[e.jsx(h,{space:"1",label:"Space 1 (4px)"}),e.jsx(h,{space:"2",label:"Space 2 (8px)"}),e.jsx(h,{space:"3",label:"Space 3 (13px)"}),e.jsx(h,{space:"4",label:"Space 4 (16px)"}),e.jsx(h,{space:"5",label:"Space 5 (26px)"}),e.jsx(h,{space:"6",label:"Space 6 (42px)"}),e.jsx(h,{space:"8",label:"Space 8 (68px)"})]})]}),e.jsx(u,{}),e.jsxs("section",{children:[e.jsx(b,{title:"Dark Mode",subtitle:"Automatic theme adaptation",symbolName:"nkyinkyim"}),e.jsxs("div",{className:"bg-card p-8 rounded-xl border border-border mt-8",children:[e.jsx("p",{className:"mb-4 text-muted-foreground",children:"Toggle dark mode to see automatic color scheme adaptation. Adinkra symbols maintain visibility across themes."}),e.jsx(p,{symbolName:"nkyinkyim",variant:"primary",onClick:()=>document.documentElement.classList.toggle("dark"),children:"Toggle Dark Mode"})]})]}),e.jsxs("footer",{className:"text-center pt-8 border-t border-border space-y-4",children:[e.jsx(y,{size:48,color:"var(--brand-blue-strong)",className:"mx-auto"}),e.jsx("small",{className:"text-muted-foreground block",children:"LUPMIS 2.0 Design Guidelines"})]})]})]}),m=({color:r,hex:s,name:n,textDark:o=!1})=>e.jsxs("div",{className:"space-y-2",children:[e.jsx("div",{style:{backgroundColor:s},className:`h-24 rounded-lg border border-border ${o?"text-foreground":"text-white"} flex items-end p-3 bg-${r}`,children:e.jsx("span",{className:"font-[family:var(--font-body)] font-[weight:var(--font-weight-semibold)] text-sm",children:s})}),e.jsxs("div",{children:[e.jsx("p",{className:"font-[weight:var(--font-weight-medium)] text-sm",children:n}),e.jsxs("small",{className:"text-muted-foreground",children:["bg-",r]})]})]}),h=({space:r,label:s})=>e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx("div",{className:"bg-primary h-8 rounded",style:{width:`var(--space-${r})`}}),e.jsx("span",{className:"text-sm text-muted-foreground",children:s})]});export{C as DesignSystemShowcase}; diff --git a/assets/GISMapMockup-CfyYGwjR.js b/assets/GISMapMockup-CfyYGwjR.js new file mode 100644 index 0000000..7a53c81 --- /dev/null +++ b/assets/GISMapMockup-CfyYGwjR.js @@ -0,0 +1,72 @@ +import{c as bt,r as G,j as C,S as ac,a as yl,D as lc,d as hc,R as cc,X as xl,N as uc,b as dc,F as El,O as Cl}from"./index-mUEXKEer.js";import{T as ua,C as da,S as fc}from"./NielsenHeuristics-d7HCIgJi.js";import{S as gc}from"./search-wZFAvndP.js";import{M as wl}from"./map-pin-BhJz-uKs.js";import{E as vl}from"./eye-QHwXAkqY.js";import{E as Rl}from"./eye-off-Dznbbs9G.js";import{U as _c}from"./user-H-bTlvBe.js";const mc=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],pc=bt("activity",mc);const yc=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],xc=bt("chevron-up",yc);const Ec=[["path",{d:"M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2",key:"1fvzgz"}],["path",{d:"M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2",key:"1kc0my"}],["path",{d:"M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8",key:"10h0bg"}],["path",{d:"M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15",key:"1s1gnw"}]],Cc=bt("hand",Ec);const wc=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]],vc=bt("layers",wc);const Rc=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],fa=bt("loader-circle",Rc);const Sc=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"m21 3-7 7",key:"1l2asr"}],["path",{d:"m3 21 7-7",key:"tjx5ai"}],["path",{d:"M9 21H3v-6",key:"wtvkvv"}]],Tc=bt("maximize-2",Sc);const Ic=[["polygon",{points:"3 11 22 2 13 21 11 13 3 11",key:"1ltx0t"}]],bc=bt("navigation",Ic);const Mc=[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]],Pc=bt("package",Mc);const Lc=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],Ac=bt("pencil",Lc);const Oc=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],kc=bt("rotate-ccw",Oc);const Fc=[["path",{d:"M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Z",key:"icamh8"}],["path",{d:"m14.5 12.5 2-2",key:"inckbg"}],["path",{d:"m11.5 9.5 2-2",key:"fmmyf7"}],["path",{d:"m8.5 6.5 2-2",key:"vc6u1g"}],["path",{d:"m17.5 15.5 2-2",key:"wo5hmg"}]],Dc=bt("ruler",Fc);const Nc=[["path",{d:"M12.034 12.681a.498.498 0 0 1 .647-.647l9 3.5a.5.5 0 0 1-.033.943l-3.444 1.068a1 1 0 0 0-.66.66l-1.067 3.443a.5.5 0 0 1-.943.033z",key:"xwnzip"}],["path",{d:"M5 3a2 2 0 0 0-2 2",key:"y57alp"}],["path",{d:"M19 3a2 2 0 0 1 2 2",key:"18rm91"}],["path",{d:"M5 21a2 2 0 0 1-2-2",key:"sbafld"}],["path",{d:"M9 3h1",key:"1yesri"}],["path",{d:"M9 21h2",key:"1qve2z"}],["path",{d:"M14 3h1",key:"1ec4yj"}],["path",{d:"M3 9v1",key:"1r0deq"}],["path",{d:"M21 9v2",key:"p14lih"}],["path",{d:"M3 14v1",key:"vnatye"}]],Gc=bt("square-dashed-mouse-pointer",Nc);const jc=[["path",{d:"M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]],zc=bt("tag",jc);const Xc=[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"11",x2:"11",y1:"8",y2:"14",key:"1vmskp"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]],Wc=bt("zoom-in",Xc);const Yc=[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["line",{x1:"21",x2:"16.65",y1:"21",y2:"16.65",key:"13gj7c"}],["line",{x1:"8",x2:"14",y1:"11",y2:"11",key:"durymu"}]],Uc=bt("zoom-out",Yc);function Sl(...s){console.warn(...s)}const gt={UNKNOWN:0,INTERSECTING:1,ABOVE:2,RIGHT:4,BELOW:8,LEFT:16};function Wr(s){const t=Vt();for(let e=0,i=s.length;en&&(l=l|gt.RIGHT),ar&&(l=l|gt.ABOVE),l===gt.UNKNOWN&&(l=gt.INTERSECTING),l}function Vt(){return[1/0,1/0,-1/0,-1/0]}function be(s,t,e,i,n){return n?(n[0]=s,n[1]=t,n[2]=e,n[3]=i,n):[s,t,e,i]}function Ln(s){return be(1/0,1/0,-1/0,-1/0,s)}function Il(s,t){const e=s[0],i=s[1];return be(e,i,e,i,t)}function _o(s,t,e,i,n){const r=Ln(n);return Ml(r,s,t,e,i)}function pn(s,t){return s[0]==t[0]&&s[2]==t[2]&&s[1]==t[1]&&s[3]==t[3]}function bl(s,t){return t[0]s[2]&&(s[2]=t[2]),t[1]s[3]&&(s[3]=t[3]),s}function fn(s,t){t[0]s[2]&&(s[2]=t[0]),t[1]s[3]&&(s[3]=t[1])}function Ml(s,t,e,i,n){for(;et[0]?i[0]=s[0]:i[0]=t[0],s[1]>t[1]?i[1]=s[1]:i[1]=t[1],s[2]=t[0]&&s[1]<=t[3]&&s[3]>=t[1]}function An(s){return s[2]=o&&_<=l),!i&&r>.RIGHT&&!(n>.RIGHT)&&(m=f-(d-l)*g,i=m>=a&&m<=h),!i&&r>.BELOW&&!(n>.BELOW)&&(_=d-(f-a)/g,i=_>=o&&_<=l),!i&&r>.LEFT&&!(n>.LEFT)&&(m=f-(d-o)*g,i=m>=a&&m<=h)}return i}function Ll(s,t){const e=t.getExtent(),i=Ue(s);if(t.canWrapX()&&(i[0]=e[2])){const n=st(e),o=Math.floor((i[0]-e[0])/n)*n;s[0]-=o,s[2]-=o}return s}function Al(s,t,e){if(t.canWrapX()){const i=t.getExtent();if(!isFinite(s[0])||!isFinite(s[2]))return[[i[0],s[1],i[2],s[3]]];Ll(s,t);const n=st(i);if(st(s)>n&&!e)return[[i[0],s[1],i[2],s[3]]];if(s[0]i[2])return[[s[0],s[1],i[2],s[3]],[i[0],s[1],s[2]-n,s[3]]]}return[s]}function at(s,t,e){return Math.min(Math.max(s,t),e)}function Hc(s,t,e,i,n,r){const o=n-e,a=r-i;if(o!==0||a!==0){const l=((s-e)*o+(t-i)*a)/(o*o+a*a);l>1?(e=n,i=r):l>0&&(e+=o*l,i+=a*l)}return ve(s,t,e,i)}function ve(s,t,e,i){const n=e-s,r=i-t;return n*n+r*r}function $c(s){const t=s.length;for(let i=0;ir&&(r=l,n=a)}if(r===0)return null;const o=s[n];s[n]=s[i],s[i]=o;for(let a=i+1;a=0;i--){e[i]=s[i][t]/s[i][i];for(let n=i-1;n>=0;n--)s[n][t]-=s[n][i]*e[i]}return e}function ga(s){return s*180/Math.PI}function Qt(s){return s*Math.PI/180}function ni(s,t){const e=s%t;return e*t<0?e+t:e}function Nt(s,t,e){return s+e*(t-s)}function On(s,t){const e=Math.pow(10,t);return Math.round(s*e)/e}function qn(s,t){return Math.floor(On(s,t))}function Jn(s,t){return Math.ceil(On(s,t))}function Zr(s,t,e){if(s>=t&&s=0;--i)if(s[i]!=t[i]){e=!1;break}return e}function po(s,t){const e=Math.cos(t),i=Math.sin(t),n=s[0]*e-s[1]*i,r=s[1]*e+s[0]*i;return s[0]=n,s[1]=r,s}function tu(s,t){return s[0]*=t,s[1]*=t,s}function Ol(s,t){const e=s[0]-t[0],i=s[1]-t[1];return e*e+i*i}function kl(s,t){return Math.sqrt(Ol(s,t))}function eu(s,t){return Qc(s,"{x}, {y}",t)}function yo(s,t){if(t.canWrapX()){const e=st(t.getExtent()),i=iu(s,t,e);i&&(s[0]-=i*e)}return s}function iu(s,t,e){const i=t.getExtent();let n=0;return t.canWrapX()&&(s[0]i[2])&&(e=e||st(i),n=Math.floor((s[0]-i[0])/e)),n}function nu(s,t,e){const i=Math.sqrt((t[0]-s[0])*(t[0]-s[0])+(t[1]-s[1])*(t[1]-s[1])),n=[(t[0]-s[0])/i,(t[1]-s[1])/i],r=[-n[1],n[0]],o=Math.sqrt((e[0]-s[0])*(e[0]-s[0])+(e[1]-s[1])*(e[1]-s[1])),a=[(e[0]-s[0])/o,(e[1]-s[1])/o];let l=i===0||o===0?0:Math.acos(at(a[0]*n[0]+a[1]*n[1],-1,1));return l=Math.max(l,1e-5),a[0]*r[0]+a[1]*r[1]>0?l:Math.PI*2-l}const Oi={radians:6370997/(2*Math.PI),degrees:2*Math.PI*6370997/360,ft:.3048,m:1,"us-ft":1200/3937};class xo{constructor(t){this.code_=t.code,this.units_=t.units,this.extent_=t.extent!==void 0?t.extent:null,this.worldExtent_=t.worldExtent!==void 0?t.worldExtent:null,this.axisOrientation_=t.axisOrientation!==void 0?t.axisOrientation:"enu",this.global_=t.global!==void 0?t.global:!1,this.canWrapX_=!!(this.global_&&this.extent_),this.getPointResolutionFunc_=t.getPointResolution,this.defaultTileGrid_=null,this.metersPerUnit_=t.metersPerUnit}canWrapX(){return this.canWrapX_}getCode(){return this.code_}getExtent(){return this.extent_}getUnits(){return this.units_}getMetersPerUnit(){return this.metersPerUnit_||Oi[this.units_]}getWorldExtent(){return this.worldExtent_}getAxisOrientation(){return this.axisOrientation_}isGlobal(){return this.global_}setGlobal(t){this.global_=t,this.canWrapX_=!!(t&&this.extent_)}getDefaultTileGrid(){return this.defaultTileGrid_}setDefaultTileGrid(t){this.defaultTileGrid_=t}setExtent(t){this.extent_=t,this.canWrapX_=!!(this.global_&&t)}setWorldExtent(t){this.worldExtent_=t}setGetPointResolution(t){this.getPointResolutionFunc_=t}getPointResolutionFunc(){return this.getPointResolutionFunc_}}const kn=6378137,Ti=Math.PI*kn,su=[-Ti,-Ti,Ti,Ti],ru=[-180,-85,180,85],Qn=kn*Math.log(Math.tan(Math.PI/2));class gi extends xo{constructor(t){super({code:t,units:"m",extent:su,global:!0,worldExtent:ru,getPointResolution:function(e,i){return e/Math.cosh(i[1]/kn)}})}}const _a=[new gi("EPSG:3857"),new gi("EPSG:102100"),new gi("EPSG:102113"),new gi("EPSG:900913"),new gi("http://www.opengis.net/def/crs/EPSG/0/3857"),new gi("http://www.opengis.net/gml/srs/epsg.xml#3857")];function ou(s,t,e,i){const n=s.length;e=e>1?e:2,i=i??e,t===void 0&&(e>2?t=s.slice():t=new Array(n));for(let r=0;rQn?o=Qn:o<-Qn&&(o=-Qn),t[r+1]=o}return t}function au(s,t,e,i){const n=s.length;e=e>1?e:2,i=i??e,t===void 0&&(e>2?t=s.slice():t=new Array(n));for(let r=0;rEa&&(t=Ea);const i=Qt(t),n=Math.sin(i),r=Math.cos(i),o=n/r,a=o*o,l=a*a,h=Qt(s),c=Gl(e.number),u=Qt(c),d=vs/Math.sqrt(1-Kt*n**2),f=Je*r**2,g=r*Zr(h-u,-Math.PI,Math.PI),_=g*g,m=_*g,p=m*g,x=p*g,w=x*g,y=vs*(Nl*i-du*Math.sin(2*i)+fu*Math.sin(4*i)-gu*Math.sin(6*i)),E=ws*d*(g+m/6*(1-a+f)+x/120*(5-18*a+l+72*f-58*Je))+5e5;let T=ws*(y+d*o*(_/2+p/24*(5-a+9*f+4*f**2)+w/720*(61-58*a+l+600*f-330*Je)));return e.north||(T+=1e7),[E,T]}function Gl(s){return(s-1)*6-180+3}const vu=[/^EPSG:(\d+)$/,/^urn:ogc:def:crs:EPSG::(\d+)$/,/^http:\/\/www\.opengis\.net\/def\/crs\/EPSG\/0\/(\d+)$/];function jl(s){let t=0;for(const n of vu){const r=s.match(n);if(r){t=parseInt(r[1]);break}}if(!t)return null;let e=0,i=!1;return t>32700&&t<32761?e=t-32700:t>32600&&t<32661&&(i=!0,e=t-32600),e?{number:e,north:i}:null}function Ca(s,t){return function(e,i,n,r){const o=e.length;n=n>1?n:2,r=r??n,i||(n>2?i=e.slice():i=new Array(o));for(let a=0;a=l?t[o+h]:a[h]}return e})}function Xs(s,t){return Wl(),Ys(s,"EPSG:4326","EPSG:3857")}function va(s,t){const e=Ys(s,"EPSG:3857","EPSG:4326"),i=e[0];return(i<-180||i>180)&&(e[0]=ni(i+180,360)-180),e}function gn(s,t){if(s===t)return!0;const e=s.getUnits()===t.getUnits();return(s.getCode()===t.getCode()||Ws(s,t)===vo)&&e}function Ws(s,t){const e=s.getCode(),i=t.getCode();let n=ur(e,i);if(n)return n;let r=null,o=null;for(const l of Tu)r||(r=l(s)),o||(o=l(t));if(!r&&!o)return null;const a="EPSG:4326";if(o)if(r)n=fr(r.inverse,o.forward);else{const l=ur(e,a);l&&(n=fr(l,o.forward))}else{const l=ur(a,i);l&&(n=fr(r.inverse,l))}return n&&($r(s),$r(t),yn(s,t,n)),n}function fr(s,t){return function(e,i,n,r){return i=s(e,i,n,r),t(i,i,n,r)}}function xn(s,t){const e=ht(s),i=ht(t);return Ws(e,i)}function Ys(s,t,e){const i=xn(t,e);if(!i){const n=ht(t).getCode(),r=ht(e).getCode();throw new Error(`No transform available between ${n} and ${r}`)}return i(s,void 0,s.length)}function qr(s,t){return s}function qt(s,t){return Hr&&!Cs(s,[0,0])&&s[0]>=-180&&s[0]<=180&&s[1]>=-90&&s[1]<=90&&(Hr=!1,Sl("Call useGeographic() from ol/proj once to work with [longitude, latitude] coordinates.")),s}function Yl(s,t){return s}function je(s,t){return s}function Au(){wa(_a),wa(pa),Pu(pa,_a,ou,au)}Au();const Fi={PROPERTYCHANGE:"propertychange"},U={CHANGE:"change",ERROR:"error",CONTEXTMENU:"contextmenu",CLICK:"click",DBLCLICK:"dblclick",KEYDOWN:"keydown",KEYPRESS:"keypress",LOAD:"load",TOUCHMOVE:"touchmove",WHEEL:"wheel"};class Us{constructor(){this.disposed=!1}dispose(){this.disposed||(this.disposed=!0,this.disposeInternal())}disposeInternal(){}}function Ou(s,t,e){let i,n;e=e||Re;let r=0,o=s.length,a=!1;for(;r>1),n=+e(s[i],t),n<0?r=i+1:(o=i,a=!n);return a?r:~r}function Re(s,t){return s>t?1:st?-1:0}function So(s,t,e){if(s[0]<=t)return 0;const i=s.length;if(t<=s[i-1])return i-1;if(typeof e=="function"){for(let n=1;n0?n-1:n}return i-1}if(e>0){for(let n=1;n0||o===0)})}function Di(){return!0}function Xi(){return!1}function En(){}function Ul(s){let t,e,i;return function(){const n=Array.prototype.slice.call(arguments);return(!e||this!==i||!Be(n,e))&&(i=this,e=n,t=s.apply(this,arguments)),t}}function Nu(s){function t(){let e;try{e=s()}catch(i){return Promise.reject(i)}return e instanceof Promise?e:Promise.resolve(e)}return t()}class fe{constructor(t){this.propagationStopped,this.defaultPrevented,this.type=t,this.target=null}preventDefault(){this.defaultPrevented=!0}stopPropagation(){this.propagationStopped=!0}}class Bs extends Us{constructor(t){super(),this.eventTarget_=t,this.pendingRemovals_=null,this.dispatching_=null,this.listeners_=null}addEventListener(t,e){if(!t||!e)return;const i=this.listeners_||(this.listeners_={}),n=i[t]||(i[t]=[]);n.includes(e)||n.push(e)}dispatchEvent(t){const e=typeof t=="string",i=e?t:t.type,n=this.listeners_&&this.listeners_[i];if(!n)return;const r=e?new fe(t):t;r.target||(r.target=this.eventTarget_||this);const o=this.dispatching_||(this.dispatching_={}),a=this.pendingRemovals_||(this.pendingRemovals_={});i in o||(o[i]=0,a[i]=0),++o[i];let l;for(let h=0,c=n.length;h0:!1}removeEventListener(t,e){if(!this.listeners_)return;const i=this.listeners_[t];if(!i)return;const n=i.indexOf(e);n!==-1&&(this.pendingRemovals_&&t in this.pendingRemovals_?(i[n]=En,++this.pendingRemovals_[t]):(i.splice(n,1),i.length===0&&delete this.listeners_[t]))}}function $(s,t,e,i,n){if(n){const o=e;e=function(a){return s.removeEventListener(t,e),o.call(i??this,a)}}else i&&i!==s&&(e=e.bind(i));const r={target:s,type:t,listener:e};return s.addEventListener(t,e),r}function Ss(s,t,e,i){return $(s,t,e,i,!0)}function ot(s){s&&s.target&&(s.target.removeEventListener(s.type,s.listener),Fn(s))}class Dn extends Bs{constructor(){super(),this.on=this.onInternal,this.once=this.onceInternal,this.un=this.unInternal,this.revision_=0}changed(){++this.revision_,this.dispatchEvent(U.CHANGE)}getRevision(){return this.revision_}onInternal(t,e){if(Array.isArray(t)){const i=t.length,n=new Array(i);for(let r=0;r{if(!i)return this.getSimplifiedGeometry(e);const n=this.clone();return n.applyTransform(i),n.getSimplifiedGeometry(e)})}simplifyTransformed(t,e){return this.simplifyTransformedInternal(this.getRevision(),t,e)}clone(){return X()}closestPointXY(t,e,i,n){return X()}containsXY(t,e){return this.closestPointXY(t,e,id,Number.MIN_VALUE)===0}getClosestPoint(t,e){return e=e||[NaN,NaN],this.closestPointXY(t[0],t[1],e,1/0),e}intersectsCoordinate(t){return this.containsXY(t[0],t[1])}computeExtent(t){return X()}getExtent(t){if(this.extentRevision_!=this.getRevision()){const e=this.computeExtent(this.extent_);(isNaN(e[0])||isNaN(e[1]))&&Ln(e),this.extentRevision_=this.getRevision()}return Kc(this.extent_,t)}rotate(t,e){X()}scale(t,e,i){X()}simplify(t){return this.getSimplifiedGeometry(t*t)}getSimplifiedGeometry(t){return X()}getType(){return X()}applyTransform(t){X()}intersectsExtent(t){return X()}translate(t,e){X()}transform(t,e){const i=ht(t),n=i.getUnits()=="tile-pixels"?function(r,o,a){const l=i.getExtent(),h=i.getWorldExtent(),c=Tt(h)/Tt(l);Me(Sa,h[0],h[3],c,-c,0,0,0);const u=Ye(r,0,r.length,a,Sa,o),d=xn(i,e);return d?d(u,u,a):u}:xn(i,e);return this.applyTransform(n),this}}class Ze extends Jl{constructor(){super(),this.layout="XY",this.stride=2,this.flatCoordinates}computeExtent(t){return _o(this.flatCoordinates,0,this.flatCoordinates.length,this.stride,t)}getCoordinates(){return X()}getFirstCoordinate(){return this.flatCoordinates.slice(0,this.stride)}getFlatCoordinates(){return this.flatCoordinates}getLastCoordinate(){return this.flatCoordinates.slice(this.flatCoordinates.length-this.stride)}getLayout(){return this.layout}getSimplifiedGeometry(t){if(this.simplifiedGeometryRevision!==this.getRevision()&&(this.simplifiedGeometryMaxMinSquaredTolerance=0,this.simplifiedGeometryRevision=this.getRevision()),t<0||this.simplifiedGeometryMaxMinSquaredTolerance!==0&&t<=this.simplifiedGeometryMaxMinSquaredTolerance)return this;const e=this.getSimplifiedGeometryInternal(t);return e.getFlatCoordinates().length=i[0]||t[1]<=i[1]&&t[3]>=i[1]?!0:mo(t,this.intersectsCoordinate.bind(this))}return!1}setCenter(t){const e=this.stride,i=this.flatCoordinates[e]-this.flatCoordinates[0],n=t.slice();n[e]=n[0]+i;for(let r=1;r1)u=e;else if(d>0){for(let f=0;fn&&(n=h),r=a,o=l}return n}function Mo(s,t,e,i,n){for(let r=0,o=e.length;r1?o:2,r=r||new Array(o);for(let c=0;c>1;nr&&(h-a)*(r-l)-(n-a)*(c-l)>0&&o++:c<=r&&(h-a)*(r-l)-(n-a)*(c-l)<0&&o--,a=h,l=c}return o!==0}function Ao(s,t,e,i,n,r){if(e.length===0||!Qe(s,t,e[0],i,n,r))return!1;for(let o=1,a=e.length;o=n[0]&&r[2]<=n[2]||r[1]>=n[1]&&r[3]<=n[3]?!0:eh(s,t,e,i,function(o,a){return Vc(n,o,a)}):!1}function hd(s,t,e,i,n){for(let r=0,o=e.length;r0;){const u=h.pop(),d=h.pop();let f=0;const g=s[d],_=s[d+1],m=s[u],p=s[u+1];for(let x=d+i;xf&&(c=x,f=E)}f>n&&(l[(c-t)/i]=1,d+i0&&_>f)&&(g<0&&m0&&m>g)){h=u,c=d;continue}r[o++]=h,r[o++]=c,a=h,l=c,h=u,c=d}return r[o++]=h,r[o++]=c,o}function ko(s,t,e,i,n,r,o,a){for(let l=0,h=e.length;lp&&(h=(c+u)/2,Ao(s,t,e,i,h,g)&&(m=h,p=x)),c=u}return isNaN(m)&&(m=n[r]),o?(o.push(m,g,p),o):[m,g,p]}function ah(s,t,e,i,n){let r=[];for(let o=0,a=e.length;o0}function No(s,t,e,i,n){n=n!==void 0?n:!1;for(let r=0,o=e.length;r0?t.childNodes[0]:null:Reflect.get(t,e,i)}})}function Xe(s){return typeof HTMLCanvasElement<"u"&&s instanceof HTMLCanvasElement||typeof OffscreenCanvas<"u"&&s instanceof OffscreenCanvas}const Ut={PRERENDER:"prerender",POSTRENDER:"postrender",PRECOMPOSE:"precompose",POSTCOMPOSE:"postcompose",RENDERCOMPLETE:"rendercomplete"},B={IDLE:0,LOADING:1,LOADED:2,ERROR:3},Go=[NaN,NaN,NaN,0];let mr;function xd(){return mr||(mr=dt(1,1,void 0,{willReadFrequently:!0,desynchronized:!0})),mr}const Ed=/^rgba?\(\s*(\d+%?)\s+(\d+%?)\s+(\d+%?)(?:\s*\/\s*(\d+%|\d*\.\d+|[01]))?\s*\)$/i,Cd=/^rgba?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)(?:\s*,\s*(\d+%|\d*\.\d+|[01]))?\s*\)$/i,wd=/^rgba?\(\s*(\d+%)\s*,\s*(\d+%)\s*,\s*(\d+%)(?:\s*,\s*(\d+%|\d*\.\d+|[01]))?\s*\)$/i,vd=/^#([\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$/i;function es(s,t){return s.endsWith("%")?Number(s.substring(0,s.length-1))/t:Number(s)}function _n(s){throw new Error('failed to parse "'+s+'" as color')}function dh(s){if(s.toLowerCase().startsWith("rgb")){const r=s.match(Cd)||s.match(Ed)||s.match(wd);if(r){const o=r[4],a=100/255;return[at(es(r[1],a)+.5|0,0,255),at(es(r[2],a)+.5|0,0,255),at(es(r[3],a)+.5|0,0,255),o!==void 0?at(es(o,100),0,1):1]}_n(s)}if(s.startsWith("#")){if(vd.test(s)){const r=s.substring(1),o=r.length<=4?1:2,a=[0,0,0,255];for(let l=0,h=r.length;l.0031308?Math.pow(s,1/2.4)*269.025-14.025:s*3294.6}function xr(s){return s>.2068965?Math.pow(s,3):(s-4/29)*(108/841)}function Er(s){return s>10.314724?Math.pow((s+14.025)/269.025,2.4):s/3294.6}function Cr(s){return s>.0088564?Math.pow(s,1/3):s/(108/841)+4/29}function Ma(s){const t=Er(s[0]),e=Er(s[1]),i=Er(s[2]),n=Cr(t*.222488403+e*.716873169+i*.06060791),r=500*(Cr(t*.452247074+e*.399439023+i*.148375274)-n),o=200*(n-Cr(t*.016863605+e*.117638439+i*.865350722)),a=Math.atan2(o,r)*(180/Math.PI);return[116*n-16,Math.sqrt(r*r+o*o),a<0?a+360:a,s[3]]}function Id(s){const t=(s[0]+16)/116,e=s[1],i=s[2]*Math.PI/180,n=xr(t),r=xr(t+e/500*Math.cos(i)),o=xr(t-e/200*Math.sin(i)),a=yr(r*3.021973625-n*1.617392459-o*.404875592),l=yr(r*-.943766287+n*1.916279586+o*.027607165),h=yr(r*.069407491-n*.22898585+o*1.159737864);return[at(a+.5|0,0,255),at(l+.5|0,0,255),at(h+.5|0,0,255),s[3]]}function jo(s){if(s==="none")return Go;if(Ji.hasOwnProperty(s))return Ji[s];if(pr>=Sd){let e=0;for(const i in Ji)(e++&3)===0&&(delete Ji[i],--pr)}const t=dh(s);t.length!==4&&_n(s);for(const e of t)isNaN(e)&&_n(s);return Ji[s]=t,++pr,t}function oi(s){return Array.isArray(s)?s:jo(s)}function zo(s){let t=s[0];t!=(t|0)&&(t=t+.5|0);let e=s[1];e!=(e|0)&&(e=e+.5|0);let i=s[2];i!=(i|0)&&(i=i+.5|0);const n=s[3]===void 0?1:Math.round(s[3]*1e3)/1e3;return"rgba("+t+","+e+","+i+","+n+")"}function bd(s,t,e){const i=s;let n=!0,r=!1,o=!1;const a=[Ss(i,U.LOAD,function(){o=!0,r||t()})];return i.src&&Zl?(r=!0,i.decode().then(function(){n&&t()}).catch(function(l){n&&(o?t():e())})):a.push(Ss(i,U.ERROR,e)),function(){n=!1,a.forEach(ot)}}function Md(s,t){return new Promise((e,i)=>{function n(){o(),e(s)}function r(){o(),i(new Error("Image load error"))}function o(){s.removeEventListener("load",n),s.removeEventListener("error",r)}s.addEventListener("load",n),s.addEventListener("error",r)})}function Pd(s,t){return t&&(s.src=t),s.src&&Zl?new Promise((e,i)=>s.decode().then(()=>e(s)).catch(n=>s.complete&&s.width?e(s):i(n))):Md(s)}class Ld{constructor(){this.cache_={},this.patternCache_={},this.cacheSize_=0,this.maxCacheSize_=1024}clear(){this.cache_={},this.patternCache_={},this.cacheSize_=0}canExpireCache(){return this.cacheSize_>this.maxCacheSize_}expire(){if(this.canExpireCache()){let t=0;for(const e in this.cache_){const i=this.cache_[e];(t++&3)===0&&!i.hasListener()&&(delete this.cache_[e],delete this.patternCache_[e],--this.cacheSize_)}}}get(t,e){const i=wr(t,e);return i in this.cache_?this.cache_[i]:null}getPattern(t,e){const i=wr(t,e);return i in this.patternCache_?this.patternCache_[i]:null}set(t,e,i,n){const r=wr(t,e),o=r in this.cache_;this.cache_[r]=i,n&&(i.getImageState()===B.IDLE&&i.load(),i.getImageState()===B.LOADING?i.ready().then(()=>{this.patternCache_[r]=Ms().createPattern(i.getImage(1),"repeat")}):this.patternCache_[r]=Ms().createPattern(i.getImage(1),"repeat")),o||++this.cacheSize_}setSize(t){this.maxCacheSize_=t,this.expire()}}function wr(s,t){const e=t?oi(t):"null";return s+":"+e}const Bt=new Ld;let Qi=null;class fh extends Bs{constructor(t,e,i,n,r){super(),this.hitDetectionImage_=null,this.image_=t,this.crossOrigin_=i?.crossOrigin,this.referrerPolicy_=i?.referrerPolicy,this.canvas_={},this.color_=r,this.imageState_=n===void 0?B.IDLE:n,this.size_=t&&t.width&&t.height?[t.width,t.height]:null,this.src_=e,this.tainted_,this.ready_=null}initializeImage_(){this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_),this.referrerPolicy_!==void 0&&(this.image_.referrerPolicy=this.referrerPolicy_)}isTainted_(){if(this.tainted_===void 0&&this.imageState_===B.LOADED){Qi||(Qi=dt(1,1,void 0,{willReadFrequently:!0})),Qi.drawImage(this.image_,0,0);try{Qi.getImageData(0,0,1,1),this.tainted_=!1}catch{Qi=null,this.tainted_=!0}}return this.tainted_===!0}dispatchChangeEvent_(){this.dispatchEvent(U.CHANGE)}handleImageError_(){this.imageState_=B.ERROR,this.dispatchChangeEvent_()}handleImageLoad_(){this.imageState_=B.LOADED,this.size_=[this.image_.width,this.image_.height],this.dispatchChangeEvent_()}getImage(t){return this.image_||this.initializeImage_(),this.replaceColor_(t),this.canvas_[t]?this.canvas_[t]:this.image_}setImage(t){this.image_=t}getPixelRatio(t){return this.replaceColor_(t),this.canvas_[t]?t:1}getImageState(){return this.imageState_}getHitDetectionImage(){if(this.image_||this.initializeImage_(),!this.hitDetectionImage_)if(this.isTainted_()){const t=this.size_[0],e=this.size_[1],i=dt(t,e);i.fillRect(0,0,t,e),this.hitDetectionImage_=i.canvas}else this.hitDetectionImage_=this.image_;return this.hitDetectionImage_}getSize(){return this.size_}getSrc(){return this.src_}load(){if(this.imageState_===B.IDLE){this.image_||this.initializeImage_(),this.imageState_=B.LOADING;try{this.src_!==void 0&&(this.image_.src=this.src_)}catch{this.handleImageError_()}this.image_ instanceof HTMLImageElement&&Pd(this.image_,this.src_).then(t=>{this.image_=t,this.handleImageLoad_()}).catch(this.handleImageError_.bind(this))}}replaceColor_(t){if(!this.color_||this.canvas_[t]||this.imageState_!==B.LOADED)return;const e=this.image_,i=dt(Math.ceil(e.width*t),Math.ceil(e.height*t)),n=i.canvas;i.scale(t,t),i.drawImage(e,0,0),i.globalCompositeOperation="multiply",i.fillStyle=Rd(this.color_),i.fillRect(0,0,n.width/t,n.height/t),i.globalCompositeOperation="destination-in",i.drawImage(e,0,0),this.canvas_[t]=n}ready(){return this.ready_||(this.ready_=new Promise(t=>{if(this.imageState_===B.LOADED||this.imageState_===B.ERROR)t();else{const e=()=>{(this.imageState_===B.LOADED||this.imageState_===B.ERROR)&&(this.removeEventListener(U.CHANGE,e),t())};this.addEventListener(U.CHANGE,e)}})),this.ready_}}function mn(s,t,e,i,n,r){let o=t===void 0?void 0:Bt.get(t,n);return o||(o=new fh(s,s&&"src"in s?s.src||void 0:t,e,i,n),Bt.set(t,n,o,r)),r&&o&&!Bt.getPattern(t,n)&&Bt.set(t,n,o,r),o}function le(s){return s?Array.isArray(s)?zo(s):typeof s=="object"&&"src"in s?Ad(s):s:null}function Ad(s){if(!s.offset||!s.size)return Bt.getPattern(s.src,s.color);const t=s.src+":"+s.offset,e=Bt.getPattern(t,s.color);if(e)return e;const i=Bt.get(s.src,null);if(i.getImageState()!==B.LOADED)return null;const n=dt(s.size[0],s.size[1]);return n.drawImage(i.getImage(1),s.offset[0],s.offset[1],s.size[0],s.size[1],0,0,s.size[0],s.size[1]),mn(n.canvas,t,void 0,B.LOADED,s.color,!0),Bt.getPattern(t,s.color)}class gh{drawCustom(t,e,i,n,r){}drawGeometry(t){}setStyle(t){}drawCircle(t,e,i){}drawFeature(t,e,i){}drawGeometryCollection(t,e,i){}drawLineString(t,e,i){}drawMultiLineString(t,e,i){}drawMultiPoint(t,e,i){}drawMultiPolygon(t,e,i){}drawPoint(t,e,i){}drawPolygon(t,e,i){}drawText(t,e,i){}setFillStrokeStyle(t,e){}setImageStyle(t,e){}setTextStyle(t,e){}}const is="ol-hidden",Od="ol-selectable",jn="ol-unselectable",Xo="ol-control",Pa="ol-collapsed",kd=new RegExp(["^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)","(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00 ))?)","(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?","(?:small|large)|medium|smaller|larger|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))","(?:\\s*\\/\\s*(normal|[\\.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])?))",`?\\s*([-,\\"\\'\\sa-z0-9]+?)\\s*$`].join(""),"i"),La=["style","variant","weight","size","lineHeight","family"],so={normal:400,bold:700},ro=function(s){const t=s.match(kd);if(!t)return null;const e={lineHeight:"normal",size:"1.2em",style:"normal",weight:"400",variant:"normal"};for(let i=0,n=La.length;ii.trim().replace(/^['"]|['"]$/g,"")),e},_h="10px sans-serif",Lt="#000",ji="round",Te=[],Ie=0,zi="round",vn=10,Fd=0,Rn="#000",Sn="center",Ps="middle",ti=[0,0,0,0],Tn=1,wi=new ie;let tn=null,Aa;const oo={},Dd=new Set(["serif","sans-serif","monospace","cursive","fantasy","system-ui","ui-serif","ui-sans-serif","ui-monospace","ui-rounded","emoji","math","fangsong"]);function Nd(s,t,e){return`${s} ${t} 16px "${e}"`}const Gd=(function(){let t,e;async function i(r){await e.ready;const o=await e.load(r);if(o.length===0)return!1;const a=ro(r),l=a.families[0].toLowerCase(),h=a.weight;return o.some(c=>{const u=c.family.replace(/^['"]|['"]$/g,"").toLowerCase(),d=so[c.weight]||c.weight;return u===l&&c.style===a.style&&d==h})}async function n(){await e.ready;let r=!0;const o=wi.getProperties(),a=Object.keys(o).filter(l=>o[l]<100);for(let l=a.length-1;l>=0;--l){const h=a[l];let c=o[h];c<100&&(await i(h)?(Fn(oo),wi.set(h,100)):(c+=10,wi.set(h,c,!0),c<100&&(r=!1)))}t=void 0,r||(t=setTimeout(n,100))}return async function(r){e||(e=Yt?self.fonts:document.fonts);const o=ro(r);if(!o)return;const a=o.families;let l=!1;for(const h of a){if(Dd.has(h))continue;const c=Nd(o.style,o.weight,h);wi.get(c)===void 0&&(wi.set(c,0,!0),l=!0)}l&&(clearTimeout(t),t=setTimeout(n,100))}})(),jd=(function(){let s;return function(t){let e=oo[t];if(e==null){if(Yt){const i=ro(t),n=mh(t,"Žg");e=(isNaN(Number(i.lineHeight))?1.2:Number(i.lineHeight))*(n.actualBoundingBoxAscent+n.actualBoundingBoxDescent)}else s||(s=document.createElement("div"),s.innerHTML="M",s.style.minHeight="0",s.style.maxHeight="none",s.style.height="auto",s.style.padding="0",s.style.border="none",s.style.position="absolute",s.style.display="block",s.style.left="-99999px"),s.style.font=t,document.body.appendChild(s),e=s.offsetHeight,document.body.removeChild(s);oo[t]=e}return e}})();function mh(s,t){return tn||(tn=dt(1,1)),s!=Aa&&(tn.font=s,Aa=tn.font),tn.measureText(t)}function ph(s,t){return mh(s,t).width}function Oa(s,t,e){if(t in e)return e[t];const i=t.split(` +`).reduce((n,r)=>Math.max(n,ph(s,r)),0);return e[t]=i,i}function zd(s,t){const e=[],i=[],n=[];let r=0,o=0,a=0,l=0;for(let h=0,c=t.length;h<=c;h+=2){const u=t[h];if(u===` +`||h===c){r=Math.max(r,o),n.push(o),o=0,a+=l,l=0;continue}const d=t[h+1]||s.font,f=ph(d,u);e.push(f),o+=f;const g=jd(d);i.push(g),l=Math.max(l,g)}return{width:r,height:a,widths:e,heights:i,lineWidths:n}}function Xd(s,t,e,i,n,r,o,a,l,h,c){s.save(),e!==1&&(s.globalAlpha===void 0?s.globalAlpha=u=>u.globalAlpha*=e:s.globalAlpha*=e),t&&s.transform.apply(s,t),i.contextInstructions?(s.translate(l,h),s.scale(c[0],c[1]),Wd(i,s)):c[0]<0||c[1]<0?(s.translate(l,h),s.scale(c[0],c[1]),s.drawImage(i,n,r,o,a,0,0,o,a)):s.drawImage(i,n,r,o,a,l,h,o*c[0],a*c[1]),s.restore()}function Wd(s,t){const e=s.contextInstructions;for(let i=0,n=e.length;il&&(this.instructions.push([k.CUSTOM,l,c,t,i,ze,r]),this.hitDetectionInstructions.push([k.CUSTOM,l,c,t,n||i,ze,r]));break;case"Point":h=t.getFlatCoordinates(),this.coordinates.push(h[0],h[1]),c=this.coordinates.length,this.instructions.push([k.CUSTOM,l,c,t,i,void 0,r]),this.hitDetectionInstructions.push([k.CUSTOM,l,c,t,n||i,void 0,r]);break}this.endGeometry(e)}beginGeometry(t,e,i){this.beginGeometryInstruction1_=[k.BEGIN_GEOMETRY,e,0,t,i],this.instructions.push(this.beginGeometryInstruction1_),this.beginGeometryInstruction2_=[k.BEGIN_GEOMETRY,e,0,t,i],this.hitDetectionInstructions.push(this.beginGeometryInstruction2_)}finish(){return{instructions:this.instructions,hitDetectionInstructions:this.hitDetectionInstructions,coordinates:this.coordinates}}reverseHitDetectionInstructions(){const t=this.hitDetectionInstructions;t.reverse();let e;const i=t.length;let n,r,o=-1;for(e=0;ethis.maxLineWidth&&(this.maxLineWidth=e.lineWidth,this.bufferedMaxExtent_=null)}else e.strokeStyle=void 0,e.lineCap=void 0,e.lineDash=null,e.lineDashOffset=void 0,e.lineJoin=void 0,e.lineWidth=void 0,e.miterLimit=void 0,e.strokeOffset=void 0;return e}setFillStrokeStyle(t,e){const i=this.state;this.fillStyleToState(t,i),this.strokeStyleToState(e,i)}createFill(t){const e=t.fillStyle,i=[k.SET_FILL_STYLE,e];return typeof e!="string"&&i.push(t.fillPatternScale),i}applyStroke(t){this.instructions.push(this.createStroke(t))}createStroke(t){return[k.SET_STROKE_STYLE,t.strokeStyle,t.lineWidth*this.pixelRatio,t.lineCap,t.lineJoin,t.miterLimit,t.lineDash?this.applyPixelRatio(t.lineDash):null,t.lineDashOffset*this.pixelRatio]}updateFillStyle(t,e){const i=t.fillStyle;(typeof i!="string"||t.currentFillStyle!=i)&&(this.instructions.push(e.call(this,t)),t.currentFillStyle=i)}updateStrokeStyle(t,e){const i=t.strokeStyle,n=t.lineCap,r=t.lineDash,o=t.lineDashOffset,a=t.lineJoin,l=t.lineWidth,h=t.miterLimit,c=t.strokeOffset;(t.currentStrokeStyle!=i||t.currentLineCap!=n||r!=t.currentLineDash&&!Be(t.currentLineDash,r)||t.currentLineDashOffset!=o||t.currentLineJoin!=a||t.currentLineWidth!=l||t.currentMiterLimit!=h||t.currentStrokeOffset!=c)&&(e.call(this,t),t.currentStrokeStyle=i,t.currentLineCap=n,t.currentLineDash=r,t.currentLineDashOffset=o,t.currentLineJoin=a,t.currentLineWidth=l,t.currentMiterLimit=h,t.currentStrokeOffset=c)}endGeometry(t){this.beginGeometryInstruction1_[2]=this.instructions.length,this.beginGeometryInstruction1_=null,this.beginGeometryInstruction2_[2]=this.hitDetectionInstructions.length,this.beginGeometryInstruction2_=null;const e=[k.END_GEOMETRY,t];this.instructions.push(e),this.hitDetectionInstructions.push(e)}getBufferedMaxExtent(){if(!this.bufferedMaxExtent_&&(this.bufferedMaxExtent_=Tl(this.maxExtent),this.maxLineWidth>0)){const t=this.resolution*(this.maxLineWidth+1)/2;fo(this.bufferedMaxExtent_,t,this.bufferedMaxExtent_)}return this.bufferedMaxExtent_}}class Yd extends zn{constructor(t,e,i,n){super(t,e,i,n),this.hitDetectionImage_=null,this.image_=null,this.imagePixelRatio_=void 0,this.anchorX_=void 0,this.anchorY_=void 0,this.height_=void 0,this.opacity_=void 0,this.originX_=void 0,this.originY_=void 0,this.rotateWithView_=void 0,this.rotation_=void 0,this.scale_=void 0,this.width_=void 0,this.declutterMode_=void 0,this.declutterImageWithText_=void 0}drawPoint(t,e,i){if(!this.image_||this.maxExtent&&!Ai(this.maxExtent,t.getFlatCoordinates()))return;this.beginGeometry(t,e,i);const n=t.getFlatCoordinates(),r=t.getStride(),o=this.coordinates.length,a=this.appendFlatPointCoordinates(n,r);this.instructions.push([k.DRAW_IMAGE,o,a,this.image_,this.anchorX_*this.imagePixelRatio_,this.anchorY_*this.imagePixelRatio_,Math.ceil(this.height_*this.imagePixelRatio_),this.opacity_,this.originX_*this.imagePixelRatio_,this.originY_*this.imagePixelRatio_,this.rotateWithView_,this.rotation_,[this.scale_[0]*this.pixelRatio/this.imagePixelRatio_,this.scale_[1]*this.pixelRatio/this.imagePixelRatio_],Math.ceil(this.width_*this.imagePixelRatio_),this.declutterMode_,this.declutterImageWithText_]),this.hitDetectionInstructions.push([k.DRAW_IMAGE,o,a,this.hitDetectionImage_,this.anchorX_,this.anchorY_,this.height_,1,this.originX_,this.originY_,this.rotateWithView_,this.rotation_,this.scale_,this.width_,this.declutterMode_,this.declutterImageWithText_]),this.endGeometry(e)}drawMultiPoint(t,e,i){if(!this.image_)return;this.beginGeometry(t,e,i);const n=t.getFlatCoordinates(),r=[];for(let l=0,h=n.length;lthis.drawCircle(t,e,i)))return;this.setFillStrokeStyles_(),this.beginGeometry(t,e,i),n.fillStyle!==void 0&&this.hitDetectionInstructions.push([k.SET_FILL_STYLE,Lt]),n.strokeStyle!==void 0&&this.hitDetectionInstructions.push([k.SET_STROKE_STYLE,n.strokeStyle,n.lineWidth,n.lineCap,n.lineJoin,n.miterLimit,Te,Ie]);const l=t.getFlatCoordinates(),h=t.getStride(),c=this.coordinates.length;this.appendFlatLineCoordinates(l,0,l.length,h,!1,!1);const u=[k.CIRCLE,c,a];this.instructions.push(ei,u),this.hitDetectionInstructions.push(ei,u),n.fillStyle!==void 0&&(this.instructions.push(ns),this.hitDetectionInstructions.push(ns)),n.strokeStyle!==void 0&&(this.instructions.push(We),this.hitDetectionInstructions.push(We)),this.endGeometry(e)}drawPolygon(t,e,i){const n=this.state,r=n.fillStyle,o=n.strokeStyle,a=n.strokeOffset;if(r===void 0&&o===void 0||this.handleStrokeOffset_(()=>this.drawPolygon(t,e,i)))return;this.setFillStrokeStyles_(),this.beginGeometry(t,e,i),n.fillStyle!==void 0&&this.hitDetectionInstructions.push([k.SET_FILL_STYLE,Lt]),n.strokeStyle!==void 0&&this.hitDetectionInstructions.push([k.SET_STROKE_STYLE,n.strokeStyle,n.lineWidth,n.lineCap,n.lineJoin,n.miterLimit,Te,Ie]);const l=t.getEnds(),h=t.getOrientedFlatCoordinates(),c=t.getStride();this.drawFlatCoordinatess_(h,0,l,c,a),this.endGeometry(e)}drawMultiPolygon(t,e,i){const n=this.state,r=n.fillStyle,o=n.strokeStyle,a=n.strokeOffset;if(r===void 0&&o===void 0||this.handleStrokeOffset_(()=>this.drawMultiPolygon(t,e,i)))return;this.setFillStrokeStyles_(),this.beginGeometry(t,e,i),n.fillStyle!==void 0&&this.hitDetectionInstructions.push([k.SET_FILL_STYLE,Lt]),n.strokeStyle!==void 0&&this.hitDetectionInstructions.push([k.SET_STROKE_STYLE,n.strokeStyle,n.lineWidth,n.lineCap,n.lineJoin,n.miterLimit,Te,Ie]);const l=t.getEndss(),h=t.getOrientedFlatCoordinates(),c=t.getStride();let u=0;for(let d=0,f=l.length;d0&&i!==void 0&&n!==void 0?(e.strokeStyle=void 0,e.strokeOffset=0,t(),e.fillStyle=void 0,e.strokeStyle=n,e.strokeOffset=r,t(),e.fillStyle=i,!0):!1}}function Bd(s,t,e,i,n){const r=[];let o=e,a=0,l=t.slice(e,2);for(;a=s){const g=(s-a+f)/f,_=Nt(h,u,g),m=Nt(c,d,g);l.push(_,m),r.push(l),l=[_,m],a==s&&(o+=n),a=0}else if(a0&&r.push(l),r}function Zd(s,t,e,i,n){let r=e,o=e,a=0,l=0,h=e,c,u,d,f,g,_,m,p,x,w;for(u=e;us&&(l>a&&(a=l,r=h,o=u),l=0,h=u-n)),d=f,m=x,p=w),g=y,_=E}return l+=f,l>a?[h,u]:[r,o]}const Ls={left:0,center:.5,right:1,top:0,middle:.5,hanging:.2,alphabetic:.8,ideographic:.8,bottom:1};class Kd extends zn{constructor(t,e,i,n){super(t,e,i,n),this.labels_=null,this.text_="",this.textOffsetX_=0,this.textOffsetY_=0,this.textRotateWithView_=void 0,this.textKeepUpright_=void 0,this.textRotation_=0,this.textFillState_=null,this.fillStates={},this.fillStates[Lt]={fillStyle:Lt},this.textStrokeState_=null,this.strokeStates={},this.textState_={},this.textStates={},this.textKey_="",this.fillKey_="",this.strokeKey_="",this.declutterMode_=void 0,this.declutterImageWithText_=void 0}finish(){const t=super.finish();return t.textStates=this.textStates,t.fillStates=this.fillStates,t.strokeStates=this.strokeStates,t}drawText(t,e,i){const n=this.textFillState_,r=this.textStrokeState_,o=this.textState_;if(this.text_===""||!o||!n&&!r)return;const a=this.coordinates;let l=a.length;const h=t.getType();let c=null,u=t.getStride();if(o.placement==="line"&&(h=="LineString"||h=="MultiLineString"||h=="Polygon"||h=="MultiPolygon")){if(!St(this.maxExtent,t.getExtent()))return;let d;if(c=t.getFlatCoordinates(),h=="LineString")d=[c.length];else if(h=="MultiLineString")d=t.getEnds();else if(h=="Polygon")d=t.getEnds().slice(0,1);else if(h=="MultiPolygon"){const m=t.getEndss();d=[];for(let p=0,x=m.length;p{const M=a[(y+T)*2]===c[T*u]&&a[(y+T)*2+1]===c[T*u+1];return M||--y,M})}this.saveTextStates_();const g=o.backgroundFill?this.createFill(this.fillStyleToState(o.backgroundFill)):null,_=o.backgroundStroke?this.createStroke(this.strokeStyleToState(o.backgroundStroke)):null;this.beginGeometry(t,e,i);let m=o.padding;if(m!=ti&&(o.scale[0]<0||o.scale[1]<0)){let y=o.padding[0],E=o.padding[1],T=o.padding[2],M=o.padding[3];o.scale[0]<0&&(E=-E,M=-M),o.scale[1]<0&&(y=-y,T=-T),m=[y,E,T,M]}const p=this.pixelRatio;this.instructions.push([k.DRAW_IMAGE,l,f,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[1,1],NaN,this.declutterMode_,this.declutterImageWithText_,m==ti?ti:m.map(function(y){return y*p}),g,_,this.text_,this.textKey_,this.strokeKey_,this.fillKey_,this.textOffsetX_,this.textOffsetY_,d]);const x=1/p,w=g?g.slice(0):null;w&&(w[1]=Lt),this.hitDetectionInstructions.push([k.DRAW_IMAGE,l,f,null,NaN,NaN,NaN,1,0,0,this.textRotateWithView_,this.textRotation_,[x,x],NaN,this.declutterMode_,this.declutterImageWithText_,m,w,_,this.text_,this.textKey_,this.strokeKey_,this.fillKey_?Lt:this.fillKey_,this.textOffsetX_,this.textOffsetY_,d]),this.endGeometry(e)}}saveTextStates_(){const t=this.textStrokeState_,e=this.textState_,i=this.textFillState_,n=this.strokeKey_;t&&(n in this.strokeStates||(this.strokeStates[n]={strokeStyle:t.strokeStyle,lineCap:t.lineCap,lineDashOffset:t.lineDashOffset,lineWidth:t.lineWidth,lineJoin:t.lineJoin,miterLimit:t.miterLimit,lineDash:t.lineDash}));const r=this.textKey_;r in this.textStates||(this.textStates[r]={font:e.font,textAlign:e.textAlign||Sn,justify:e.justify,textBaseline:e.textBaseline||Ps,scale:e.scale});const o=this.fillKey_;i&&(o in this.fillStates||(this.fillStates[o]={fillStyle:i.fillStyle}))}drawChars_(t,e){const i=this.textStrokeState_,n=this.textState_,r=this.strokeKey_,o=this.textKey_,a=this.fillKey_;this.saveTextStates_();const l=this.pixelRatio,h=Ls[n.textBaseline],c=this.textOffsetY_*l,u=this.text_,d=i?i.lineWidth*Math.abs(n.scale[0])/2:0;this.instructions.push([k.DRAW_CHARS,t,e,h,n.overflow,a,n.maxAngle,l,c,r,d*l,u,o,1,this.declutterMode_,this.textKeepUpright_]),this.hitDetectionInstructions.push([k.DRAW_CHARS,t,e,h,n.overflow,a&&Lt,n.maxAngle,l,c,r,d*l,u,o,1/l,this.declutterMode_,this.textKeepUpright_])}setTextStyle(t,e){let i,n,r;if(!t)this.text_="";else{const o=t.getFill();o?(n=this.textFillState_,n||(n={},this.textFillState_=n),n.fillStyle=le(o.getColor()||Lt)):(n=null,this.textFillState_=n);const a=t.getStroke();if(!a)r=null,this.textStrokeState_=r;else{r=this.textStrokeState_,r||(r={},this.textStrokeState_=r);const _=a.getLineDash(),m=a.getLineDashOffset(),p=a.getWidth(),x=a.getMiterLimit();r.lineCap=a.getLineCap()||ji,r.lineDash=_?_.slice():Te,r.lineDashOffset=m===void 0?Ie:m,r.lineJoin=a.getLineJoin()||zi,r.lineWidth=p===void 0?Tn:p,r.miterLimit=x===void 0?vn:x,r.strokeStyle=le(a.getColor()||Rn)}i=this.textState_;const l=t.getFont()||_h;Gd(l);const h=t.getScaleArray();i.overflow=t.getOverflow(),i.font=l,i.maxAngle=t.getMaxAngle(),i.placement=t.getPlacement(),i.textAlign=t.getTextAlign(),i.repeat=t.getRepeat(),i.justify=t.getJustify(),i.textBaseline=t.getTextBaseline()||Ps,i.backgroundFill=t.getBackgroundFill(),i.backgroundStroke=t.getBackgroundStroke(),i.padding=t.getPadding()||ti,i.scale=h===void 0?[1,1]:h;const c=t.getOffsetX(),u=t.getOffsetY(),d=t.getRotateWithView(),f=t.getKeepUpright(),g=t.getRotation();this.text_=t.getText()||"",this.textOffsetX_=c===void 0?0:c,this.textOffsetY_=u===void 0?0:u,this.textRotateWithView_=d===void 0?!1:d,this.textKeepUpright_=f===void 0?!0:f,this.textRotation_=g===void 0?0:g,this.strokeKey_=r?(typeof r.strokeStyle=="string"?r.strokeStyle:Q(r.strokeStyle))+r.lineCap+r.lineDashOffset+"|"+r.lineWidth+r.lineJoin+r.miterLimit+"["+r.lineDash.join()+"]":"",this.textKey_=i.font+i.scale+(i.textAlign||"?")+(i.repeat||"?")+(i.justify||"?")+(i.textBaseline||"?"),this.fillKey_=n&&n.fillStyle?typeof n.fillStyle=="string"?n.fillStyle:"|"+Q(n.fillStyle):""}this.declutterMode_=t.getDeclutterMode(),this.declutterImageWithText_=e}}const Vd={Circle:Fa,Default:zn,Image:Yd,LineString:Ud,Polygon:Fa,Text:Kd};class Hd{constructor(t,e,i,n){this.tolerance_=t,this.maxExtent_=e,this.pixelRatio_=n,this.resolution_=i,this.buildersByZIndex_={}}finish(){const t={};for(const e in this.buildersByZIndex_){t[e]=t[e]||{};const i=this.buildersByZIndex_[e];for(const n in i){const r=i[n].finish();t[e][n]=r}}return t}getBuilder(t,e){const i=t!==void 0?t.toString():"0";let n=this.buildersByZIndex_[i];n===void 0&&(n={},this.buildersByZIndex_[i]=n);let r=n[e];if(r===void 0){const o=Vd[e];r=new o(this.tolerance_,this.maxExtent_,this.resolution_,this.pixelRatio_),n[e]=r}return r}}function $d(s,t,e,i,n,r){n=n??[],r=r??t;const o=s[0],a=s[1],l=s[s.length-4],h=s[s.length-3];let c,u,d,f,g,_,m,p,x=0;for(let w=0;w.998)return[s+c*o,t+u*o];const f=Math.cos(d/2),g=Math.sin(d/2),_=g*a+f*l,m=-f*a+g*l,p=_*(1/g),x=m*(1/g);return[s+p*o,t+x*o]}function qd(s,t,e,i,n,r,o,a,l,h,c,u,d=!0){let f=s[t],g=s[t+1],_=0,m=0,p=0,x=0;function w(){_=f,m=g,t+=i,f=s[t],g=s[t+1],x+=p,p=Math.sqrt((f-_)*(f-_)+(g-m)*(g-m))}do w();while(tj[2]}else O=E>S;const L=Math.PI,W=[],P=M+i===t;t=M,p=0,x=b,f=s[t],g=s[t+1];let Y;if(P){w(),Y=Math.atan2(g-m,f-_),O&&(Y+=Y>0?-L:L);const j=(S+E)/2,F=(A+T)/2;return W[0]=[j,F,(R-r)/2,Y,n],W}n=n.replace(/\n/g," ");for(let j=0,F=n.length;j0?-L:L),Y!==void 0){let I=D-Y;if(I+=I>L?-2*L:I<-L?2*L:0,Math.abs(I)>o)return null}Y=D;const V=j;let q=0;for(;j{if(typeof Ms()[e]=="function")return this.push_(e),this.pushMethodArgs_},set:(t,e,i)=>(this.push_(e,i),!0)})}push_(...t){const e=this.instructions_,i=this.zIndex+this.offset_;e[i]||(e[i]=[]),e[i].push(...t)}pushMethodArgs_=(...t)=>(this.push_(t),this);pushFunction(t){this.push_(t)}getContext(){return this.context_}draw(t){this.instructions_.forEach(e=>{for(let i=0,n=e.length;i0&&s.push(` +`,""),s.push(t,""),s}function Qd(s,t,e){return e%2===0&&(s+=t),s}class tf{constructor(t,e,i,n,r){this.overlaps=i,this.pixelRatio=e,this.resolution=t,this.alignAndScaleFill_,this.instructions=n.instructions,this.coordinates=n.coordinates,this.coordinateCache_={},this.renderedTransform_=te(),this.hitDetectionInstructions=n.hitDetectionInstructions,this.pixelCoordinates_=null,this.viewRotation_=0,this.fillStates=n.fillStates||{},this.strokeStates=n.strokeStates||{},this.textStates=n.textStates||{},this.widths_={},this.labels_={},this.zIndexContext_=r?new yh:null}getZIndexContext(){return this.zIndexContext_}createLabel(t,e,i,n){const r=t+e+i+n;if(this.labels_[r])return this.labels_[r];const o=n?this.strokeStates[n]:null,a=i?this.fillStates[i]:null,l=this.textStates[e],h=this.pixelRatio,c=[l.scale[0]*h,l.scale[1]*h],u=l.justify?Ls[l.justify]:vr(Array.isArray(t)?t[0]:t,l.textAlign||Sn),d=n&&o.lineWidth?o.lineWidth:0,f=Array.isArray(t)?t:String(t).split(` +`).reduce(Jd,[]),{width:g,height:_,widths:m,heights:p,lineWidths:x}=zd(l,f),w=g+d,y=[],E=(w+2)*c[0],T=(_+d)*c[1],M={width:E<0?Math.floor(E):Math.ceil(E),height:T<0?Math.floor(T):Math.ceil(T),contextInstructions:y};(c[0]!=1||c[1]!=1)&&y.push("scale",c),n&&(y.push("strokeStyle",o.strokeStyle),y.push("lineWidth",d),y.push("lineCap",o.lineCap),y.push("lineJoin",o.lineJoin),y.push("miterLimit",o.miterLimit),y.push("setLineDash",[o.lineDash]),y.push("lineDashOffset",o.lineDashOffset)),i&&y.push("fillStyle",a.fillStyle),y.push("textBaseline","middle"),y.push("textAlign","center");const b=.5-u;let R=u*w+b*d;const S=[],A=[];let O=0,L=0,W=0,P=0,Y;for(let j=0,F=f.length;jt?t-h:r,y=o+c>e?e-c:o,E=g[3]+w*d[0]+g[1],T=g[0]+y*d[1]+g[2],M=p-g[3],b=x-g[0];(_||u!==0)&&(Ae[0]=M,Oe[0]=M,Ae[1]=b,pe[1]=b,pe[0]=M+E,ye[0]=pe[0],ye[1]=b+T,Oe[1]=ye[1]);let R;return u!==0?(R=Me(te(),i,n,1,1,u,-i,-n),_t(R,Ae),_t(R,pe),_t(R,ye),_t(R,Oe),be(Math.min(Ae[0],pe[0],ye[0],Oe[0]),Math.min(Ae[1],pe[1],ye[1],Oe[1]),Math.max(Ae[0],pe[0],ye[0],Oe[0]),Math.max(Ae[1],pe[1],ye[1],Oe[1]),_i)):be(Math.min(M,M+E),Math.min(b,b+T),Math.max(M,M+E),Math.max(b,b+T),_i),f&&(p=Math.round(p),x=Math.round(x)),{drawImageX:p,drawImageY:x,drawImageW:w,drawImageH:y,originX:h,originY:c,declutterBox:{minX:_i[0],minY:_i[1],maxX:_i[2],maxY:_i[3],value:m},canvasTransform:R,scale:d}}replayImageOrLabel_(t,e,i,n,r,o,a){const l=!!(o||a),h=n.declutterBox,c=a?a[2]*n.scale[0]/2:0;return h.minX-c<=e[0]&&h.maxX+c>=0&&h.minY-c<=e[1]&&h.maxY+c>=0&&(l&&this.replayTextBackground_(t,Ae,pe,ye,Oe,o,a),Xd(t,n.canvasTransform,r,i,n.originX,n.originY,n.drawImageW,n.drawImageH,n.drawImageX,n.drawImageY,n.scale)),!0}fill_(t){const e=this.alignAndScaleFill_;if(e){const i=_t(this.renderedTransform_,[0,0]),n=512*this.pixelRatio;t.save(),t.translate(i[0]%n,i[1]%n),e!==1&&t.scale(e,e)}t.fill(),e&&t.restore()}setStrokeStyle_(t,e){t.strokeStyle=e[1],e[1]&&(t.lineWidth=e[2],t.lineCap=e[3],t.lineJoin=e[4],t.miterLimit=e[5],t.lineDashOffset=e[7],t.setLineDash(e[6]))}drawLabelWithPointPlacement_(t,e,i,n){const r=this.textStates[e],o=this.createLabel(t,e,n,i),a=this.strokeStates[i],l=this.pixelRatio,h=vr(Array.isArray(t)?t[0]:t,r.textAlign||Sn),c=Ls[r.textBaseline||Ps],u=a&&a.lineWidth?a.lineWidth:0,d=o.width/l-2*r.scale[0],f=h*d+2*(.5-h)*u,g=c*o.height/l+2*(.5-c)*u;return{label:o,anchorX:f,anchorY:g}}execute_(t,e,i,n,r,o,a,l){const h=this.zIndexContext_;let c;this.pixelCoordinates_&&Be(i,this.renderedTransform_)?c=this.pixelCoordinates_:(this.pixelCoordinates_||(this.pixelCoordinates_=[]),c=Ye(this.coordinates,0,this.coordinates.length,2,i,this.pixelCoordinates_),Hu(this.renderedTransform_,i));let u=0;const d=n.length;let f=0,g,_,m,p,x,w,y,E,T,M,b,R,S,A,O,L,W=0,P=0;const Y=this.coordinateCache_,j=this.viewRotation_,F=Math.round(Math.atan2(-i[1],i[0])*1e12)/1e12,D={context:t,pixelRatio:this.pixelRatio,resolution:this.resolution,rotation:j},V=this.instructions!=n||this.overlaps?0:200;let q,J,K,lt;for(;uV&&(this.fill_(t),W=0),P>V&&(t.stroke(),P=0),!W&&!P&&(t.beginPath(),E=NaN,T=NaN),++u;break;case k.CIRCLE:f=I[1],p=I[2]??0;const rt=c[f],Mt=c[f+1],Pt=c[f+2]-p,Dt=c[f+3]-p,Bi=Pt-rt,Bn=Dt-Mt,Zi=Math.sqrt(Bi*Bi+Bn*Bn);t.moveTo(rt+Zi,Mt),t.arc(rt,Mt,Zi,0,2*Math.PI,!0),++u;break;case k.CLOSE_PATH:t.closePath(),++u;break;case k.CUSTOM:f=I[1],g=I[2];const rr=I[3],ne=I[4],Ht=I[5];D.geometry=rr,D.feature=q,u in Y||(Y[u]=[]);const se=Y[u];Ht?Ht(c,f,g,2,se):(se[0]=c[f],se[1]=c[f+1],se.length=2),h&&(h.zIndex=I[6]),ne(se,D),++u;break;case k.DRAW_IMAGE:f=I[1],g=I[2],R=I[3],_=I[4],m=I[5];let Le=I[6];const Zn=I[7],Ki=I[8],fi=I[9],Kn=I[10];let yt=I[11];const ec=I[12];let Vn=I[13];y=I[14]||"declutter";const Vi=I[15];if(!R&&I.length>=20){S=I[19],A=I[20],O=I[21],L=I[22];const jt=this.drawLabelWithPointPlacement_(S,A,O,L);R=jt.label,I[3]=R;const Ke=I[23];_=(jt.anchorX-Ke)*this.pixelRatio,I[4]=_;const zt=I[24];m=(jt.anchorY-zt)*this.pixelRatio,I[5]=m,Le=R.height,I[6]=Le,Vn=R.width,I[13]=Vn}let or;I.length>25&&(or=I[25]);let ar,Hn,$n;I.length>17?(ar=I[16],Hn=I[17],$n=I[18]):(ar=ti,Hn=null,$n=null),Kn&&F?yt+=j:!Kn&&!F&&(yt-=j);let ic=0;for(;f!xh.includes(s));let Eh=!1,Ch=!1;function nf(){let s=0;const t=i=>{const n=dt(1,1,null,{willReadFrequently:i});let r=0;const o=performance.now();for(;performance.now()-o<50;++r)n.fillStyle=`rgba(255,0,${r%256},1)`,n.fillRect(0,0,1,1),n.getImageData(0,0,1,1);return s=r>s?r:s,r};Eh={[t(!0)]:!0,[t(!1)]:!1,[t(void 0)]:void 0}[s],Ch=!0}class sf{constructor(t,e,i,n,r,o,a){this.maxExtent_=t,this.overlaps_=n,this.pixelRatio_=i,this.resolution_=e,this.renderBuffer_=o,this.executorsByZIndex_={},this.hitDetectionContext_=null,this.hitDetectionTransform_=te(),this.renderedContext_=null,this.deferredZIndexContexts_={},this.createExecutors_(r,a)}clip(t,e){const i=this.getClipCoords(e);t.beginPath(),t.moveTo(i[0],i[1]),t.lineTo(i[2],i[3]),t.lineTo(i[4],i[5]),t.lineTo(i[6],i[7]),t.clip()}createExecutors_(t,e){for(const i in t){let n=this.executorsByZIndex_[i];n===void 0&&(n={},this.executorsByZIndex_[i]=n);const r=t[i];for(const o in r){const a=r[o];n[o]=new tf(this.resolution_,this.pixelRatio_,this.overlaps_,a,e)}}}hasExecutors(t){for(const e in this.executorsByZIndex_){const i=this.executorsByZIndex_[e];for(let n=0,r=t.length;n0){if(!o||M==="none"||f!=="Image"&&f!=="Text"||o.includes(E)){const A=(d[R]-3)/4,O=n-A%a,L=n-(A/a|0),W=r(E,T,O*O+L*L);if(W)return W}c.clearRect(0,0,a,a);break}}const _=Object.keys(this.executorsByZIndex_).map(Number);_.sort(Re);let m,p,x,w,y;for(m=_.length-1;m>=0;--m){const E=_[m].toString();for(x=this.executorsByZIndex_[E],p=qe.length-1;p>=0;--p)if(f=qe[p],w=x[f],w!==void 0&&(y=w.executeHitDetection(c,l,i,g,u),y))return y}}getClipCoords(t){const e=this.maxExtent_;if(!e)return null;const i=e[0],n=e[1],r=e[2],o=e[3],a=[i,n,i,o,r,o,r,n];return Ye(a,0,8,2,t,a),a}isEmpty(){return si(this.executorsByZIndex_)}execute(t,e,i,n,r,o,a){const l=Object.keys(this.executorsByZIndex_).map(Number);l.sort(a?ku:Re),o=o||qe;const h=qe.length;for(let c=0,u=l.length;cp.execute(E,e,i,n,r,a)),y&&w.restore(),x){x.offset();const E=l[c]*h+qe.indexOf(m);this.deferredZIndexContexts_[E]||(this.deferredZIndexContexts_[E]=[]),this.deferredZIndexContexts_[E].push(x)}}}}this.renderedContext_=t}getDeferredZIndexContexts(){return this.deferredZIndexContexts_}getRenderedContext(){return this.renderedContext_}renderDeferred(){const t=this.deferredZIndexContexts_,e=Object.keys(t).map(Number).sort(Re);for(let i=0,n=e.length;i{r.draw(this.renderedContext_),r.clear()}),t[e[i]].length=0}}const Rr={};function rf(s){if(Rr[s]!==void 0)return Rr[s];const t=s*2+1,e=s*s,i=new Array(e+1);for(let r=0;r<=s;++r)for(let o=0;o<=s;++o){const a=r*r+o*o;if(a>e)break;let l=i[a];l||(l=[],i[a]=l),l.push(((s+r)*t+(s+o))*4+3),r>0&&l.push(((s-r)*t+(s+o))*4+3),o>0&&(l.push(((s+r)*t+(s-o))*4+3),r>0&&l.push(((s-r)*t+(s-o))*4+3))}const n=[];for(let r=0,o=i.length;r0&&s[1]>0}function of(s,t,e){return e===void 0&&(e=[0,0]),e[0]=s[0]*t+.5|0,e[1]=s[1]*t+.5|0,e}function kt(s,t){return Array.isArray(s)?s:(t===void 0?t=[s,s]:(t[0]=s,t[1]=s),t)}class qs{constructor(t){this.opacity_=t.opacity,this.rotateWithView_=t.rotateWithView,this.rotation_=t.rotation,this.scale_=t.scale,this.scaleArray_=kt(t.scale),this.displacement_=t.displacement,this.declutterMode_=t.declutterMode}clone(){const t=this.getScale();return new qs({opacity:this.getOpacity(),scale:Array.isArray(t)?t.slice():t,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()})}getOpacity(){return this.opacity_}getRotateWithView(){return this.rotateWithView_}getRotation(){return this.rotation_}getScale(){return this.scale_}getScaleArray(){return this.scaleArray_}getDisplacement(){return this.displacement_}getDeclutterMode(){return this.declutterMode_}getAnchor(){return X()}getImage(t){return X()}getHitDetectionImage(){return X()}getPixelRatio(t){return 1}getImageState(){return X()}getImageSize(){return X()}getOrigin(){return X()}getSize(){return X()}setDisplacement(t){this.displacement_=t}setOpacity(t){this.opacity_=t}setRotateWithView(t){this.rotateWithView_=t}setRotation(t){this.rotation_=t}setScale(t){this.scale_=t,this.scaleArray_=kt(t)}listenImageChange(t){X()}load(){X()}unlistenImageChange(t){X()}ready(){return Promise.resolve()}}class Js extends qs{constructor(t){super({opacity:1,rotateWithView:t.rotateWithView!==void 0?t.rotateWithView:!1,rotation:t.rotation!==void 0?t.rotation:0,scale:t.scale!==void 0?t.scale:1,displacement:t.displacement!==void 0?t.displacement:[0,0],declutterMode:t.declutterMode}),this.hitDetectionCanvas_=null,this.fill_=t.fill!==void 0?t.fill:null,this.origin_=[0,0],this.points_=t.points,this.radius=t.radius,this.radius2_=t.radius2,this.angle_=t.angle!==void 0?t.angle:0,this.stroke_=t.stroke!==void 0?t.stroke:null,this.size_,this.renderOptions_,this.imageState_=this.fill_&&this.fill_.loading()?B.LOADING:B.LOADED,this.imageState_===B.LOADING&&this.ready().then(()=>this.imageState_=B.LOADED),this.render()}clone(){const t=this.getScale(),e=new Js({fill:this.getFill()?this.getFill().clone():void 0,points:this.getPoints(),radius:this.getRadius(),radius2:this.getRadius2(),angle:this.getAngle(),stroke:this.getStroke()?this.getStroke().clone():void 0,rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),scale:Array.isArray(t)?t.slice():t,displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()});return e.setOpacity(this.getOpacity()),e}getAnchor(){const t=this.size_,e=this.getDisplacement(),i=this.getScaleArray();return[t[0]/2-e[0]/i[0],t[1]/2+e[1]/i[1]]}getAngle(){return this.angle_}getFill(){return this.fill_}setFill(t){this.fill_=t,this.render()}getHitDetectionImage(){return this.hitDetectionCanvas_||(this.hitDetectionCanvas_=this.createHitDetectionCanvas_(this.renderOptions_)),this.hitDetectionCanvas_}getImage(t){const e=this.fill_?.getKey(),i=`${t},${this.angle_},${this.radius},${this.radius2_},${this.points_},${e}`+Object.values(this.renderOptions_).join(",");let n=Bt.get(i,null)?.getImage(1);if(!n){const r=this.renderOptions_,o=Math.ceil(r.size*t),a=dt(o,o);this.draw_(r,a,t),n=a.canvas;const l=new fh(n,void 0,null,B.LOADED,null);Bt.set(i,null,l),createImageBitmap(n).then(h=>{l.setImage(h)})}return n}getPixelRatio(t){return t}getImageSize(){return this.size_}getImageState(){return this.imageState_}getOrigin(){return this.origin_}getPoints(){return this.points_}getRadius(){return this.radius}setRadius(t){this.radius!==t&&(this.radius=t,this.render())}getRadius2(){return this.radius2_}setRadius2(t){this.radius2_!==t&&(this.radius2_=t,this.render())}getSize(){return this.size_}getStroke(){return this.stroke_}setStroke(t){this.stroke_=t,this.render()}listenImageChange(t){}load(){}unlistenImageChange(t){}calculateLineJoinSize_(t,e,i){if(e===0||this.points_===1/0||t!=="bevel"&&t!=="miter")return e;let n=this.radius,r=this.radius2_===void 0?n:this.radius2_;if(n{this.patternImage_=null}),e.getImageState()===B.IDLE&&e.load(),e.getImageState()===B.LOADING&&(this.patternImage_=e)}this.color_=t}getKey(){const t=this.getColor();return t?t instanceof CanvasPattern||t instanceof CanvasGradient?Q(t):typeof t=="object"&&"src"in t?t.src+":"+t.offset:oi(t).toString():""}loading(){return!!this.patternImage_}ready(){return this.patternImage_?this.patternImage_.ready():Promise.resolve()}}function ja(s,t,e,i){return e!==void 0&&i!==void 0?[e/s,i/t]:e!==void 0?e/s:i!==void 0?i/t:1}class Qs extends qs{constructor(t){t=t||{};const e=t.opacity!==void 0?t.opacity:1,i=t.rotation!==void 0?t.rotation:0,n=t.scale!==void 0?t.scale:1,r=t.rotateWithView!==void 0?t.rotateWithView:!1;super({opacity:e,rotation:i,scale:n,displacement:t.displacement!==void 0?t.displacement:[0,0],rotateWithView:r,declutterMode:t.declutterMode}),this.anchor_=t.anchor!==void 0?t.anchor:[.5,.5],this.normalizedAnchor_=null,this.anchorOrigin_=t.anchorOrigin!==void 0?t.anchorOrigin:"top-left",this.anchorXUnits_=t.anchorXUnits!==void 0?t.anchorXUnits:"fraction",this.anchorYUnits_=t.anchorYUnits!==void 0?t.anchorYUnits:"fraction",this.crossOrigin_=t.crossOrigin!==void 0?t.crossOrigin:null,this.referrerPolicy_=t.referrerPolicy;const o=t.img!==void 0?t.img:null;let a=t.src;it(!(a!==void 0&&o),"`image` and `src` cannot be provided at the same time"),(a===void 0||a.length===0)&&o&&(a=o.src||Q(o)),it(a!==void 0&&a.length>0,"A defined and non-empty `src` or `image` must be provided"),it(!((t.width!==void 0||t.height!==void 0)&&t.scale!==void 0),"`width` or `height` cannot be provided together with `scale`");let l;if(t.src!==void 0?l=B.IDLE:o!==void 0&&("complete"in o?o.complete?l=o.src?B.LOADED:B.IDLE:l=B.LOADING:l=B.LOADED),this.color_=t.color!==void 0?oi(t.color):null,this.iconImage_=mn(o,a,{crossOrigin:this.crossOrigin_,referrerPolicy:this.referrerPolicy_},l,this.color_),this.offset_=t.offset!==void 0?t.offset:[0,0],this.offsetOrigin_=t.offsetOrigin!==void 0?t.offsetOrigin:"top-left",this.origin_=null,this.size_=t.size!==void 0?t.size:null,this.initialOptions_,t.width!==void 0||t.height!==void 0){let h,c;if(t.size)[h,c]=t.size;else{const u=this.getImage(1);if(u.width&&u.height)h=u.width,c=u.height;else if(u instanceof HTMLImageElement){this.initialOptions_=t;const d=()=>{if(this.unlistenImageChange(d),!this.initialOptions_)return;const f=this.iconImage_.getSize();this.setScale(ja(f[0],f[1],t.width,t.height))};this.listenImageChange(d);return}}h!==void 0&&this.setScale(ja(h,c,t.width,t.height))}}clone(){let t,e,i;return this.initialOptions_?(e=this.initialOptions_.width,i=this.initialOptions_.height):(t=this.getScale(),t=Array.isArray(t)?t.slice():t),new Qs({anchor:this.anchor_.slice(),anchorOrigin:this.anchorOrigin_,anchorXUnits:this.anchorXUnits_,anchorYUnits:this.anchorYUnits_,color:this.color_&&this.color_.slice?this.color_.slice():this.color_||void 0,crossOrigin:this.crossOrigin_,referrerPolicy:this.referrerPolicy_,offset:this.offset_.slice(),offsetOrigin:this.offsetOrigin_,opacity:this.getOpacity(),rotateWithView:this.getRotateWithView(),rotation:this.getRotation(),scale:t,width:e,height:i,size:this.size_!==null?this.size_.slice():void 0,src:this.getSrc(),displacement:this.getDisplacement().slice(),declutterMode:this.getDeclutterMode()})}getAnchor(){let t=this.normalizedAnchor_;if(!t){t=this.anchor_;const n=this.getSize();if(this.anchorXUnits_=="fraction"||this.anchorYUnits_=="fraction"){if(!n)return null;t=this.anchor_.slice(),this.anchorXUnits_=="fraction"&&(t[0]*=n[0]),this.anchorYUnits_=="fraction"&&(t[1]*=n[1])}if(this.anchorOrigin_!="top-left"){if(!n)return null;t===this.anchor_&&(t=this.anchor_.slice()),(this.anchorOrigin_=="top-right"||this.anchorOrigin_=="bottom-right")&&(t[0]=-t[0]+n[0]),(this.anchorOrigin_=="bottom-left"||this.anchorOrigin_=="bottom-right")&&(t[1]=-t[1]+n[1])}this.normalizedAnchor_=t}const e=this.getDisplacement(),i=this.getScaleArray();return[t[0]-e[0]/i[0],t[1]+e[1]/i[1]]}setAnchor(t){this.anchor_=t,this.normalizedAnchor_=null}getColor(){return this.color_}setColor(t){const e=t?oi(t):null;if(this.color_===e||this.color_&&e&&this.color_.length===e.length&&this.color_.every((o,a)=>o===e[a]))return;this.color_=e;const i=this.getSrc(),n=i!==void 0?null:this.getHitDetectionImage(),r=i!==void 0?B.IDLE:this.iconImage_.getImageState();this.iconImage_=mn(n,i,{crossOrigin:this.crossOrigin_,referrerPolicy:this.referrerPolicy_},r,this.color_)}getImage(t){return this.iconImage_.getImage(t)}getPixelRatio(t){return this.iconImage_.getPixelRatio(t)}getImageSize(){return this.iconImage_.getSize()}getImageState(){return this.iconImage_.getImageState()}getHitDetectionImage(){return this.iconImage_.getHitDetectionImage()}getOrigin(){if(this.origin_)return this.origin_;let t=this.offset_;if(this.offsetOrigin_!="top-left"){const e=this.getSize(),i=this.iconImage_.getSize();if(!e||!i)return null;t=t.slice(),(this.offsetOrigin_=="top-right"||this.offsetOrigin_=="bottom-right")&&(t[0]=i[0]-e[0]-t[0]),(this.offsetOrigin_=="bottom-left"||this.offsetOrigin_=="bottom-right")&&(t[1]=i[1]-e[1]-t[1])}return this.origin_=t,this.origin_}getSrc(){return this.iconImage_.getSrc()}setSrc(t){this.iconImage_=mn(null,t,{crossOrigin:this.crossOrigin_,referrerPolicy:this.referrerPolicy_},B.IDLE,this.color_)}getSize(){return this.size_?this.size_:this.iconImage_.getSize()}getWidth(){const t=this.getScaleArray();if(this.size_)return this.size_[0]*t[0];if(this.iconImage_.getImageState()==B.LOADED)return this.iconImage_.getSize()[0]*t[0]}getHeight(){const t=this.getScaleArray();if(this.size_)return this.size_[1]*t[1];if(this.iconImage_.getImageState()==B.LOADED)return this.iconImage_.getSize()[1]*t[1]}setScale(t){delete this.initialOptions_,super.setScale(t)}listenImageChange(t){this.iconImage_.addEventListener(U.CHANGE,t)}load(){this.iconImage_.load()}unlistenImageChange(t){this.iconImage_.removeEventListener(U.CHANGE,t)}ready(){return this.iconImage_.ready()}}class Ft{constructor(t){t=t||{},this.color_=t.color!==void 0?t.color:null,this.lineCap_=t.lineCap,this.lineDash_=t.lineDash!==void 0?t.lineDash:null,this.lineDashOffset_=t.lineDashOffset,this.lineJoin_=t.lineJoin,this.miterLimit_=t.miterLimit,this.offset_=t.offset,this.width_=t.width}clone(){const t=this.getColor();return new Ft({color:Array.isArray(t)?t.slice():t||void 0,lineCap:this.getLineCap(),lineDash:this.getLineDash()?this.getLineDash().slice():void 0,lineDashOffset:this.getLineDashOffset(),lineJoin:this.getLineJoin(),miterLimit:this.getMiterLimit(),offset:this.getOffset(),width:this.getWidth()})}getColor(){return this.color_}getLineCap(){return this.lineCap_}getLineDash(){return this.lineDash_}getLineDashOffset(){return this.lineDashOffset_}getLineJoin(){return this.lineJoin_}getMiterLimit(){return this.miterLimit_}getOffset(){return this.offset_}getWidth(){return this.width_}setColor(t){this.color_=t}setLineCap(t){this.lineCap_=t}setLineDash(t){this.lineDash_=t}setLineDashOffset(t){this.lineDashOffset_=t}setLineJoin(t){this.lineJoin_=t}setMiterLimit(t){this.miterLimit_=t}setOffset(t){this.offset_=t}setWidth(t){this.width_=t}}class wt{constructor(t){t=t||{},this.geometry_=null,this.geometryFunction_=za,t.geometry!==void 0&&this.setGeometry(t.geometry),this.fill_=t.fill!==void 0?t.fill:null,this.image_=t.image!==void 0?t.image:null,this.renderer_=t.renderer!==void 0?t.renderer:null,this.hitDetectionRenderer_=t.hitDetectionRenderer!==void 0?t.hitDetectionRenderer:null,this.stroke_=t.stroke!==void 0?t.stroke:null,this.text_=t.text!==void 0?t.text:null,this.zIndex_=t.zIndex}clone(){let t=this.getGeometry();return t&&typeof t=="object"&&(t=t.clone()),new wt({geometry:t??void 0,fill:this.getFill()?this.getFill().clone():void 0,image:this.getImage()?this.getImage().clone():void 0,renderer:this.getRenderer()??void 0,stroke:this.getStroke()?this.getStroke().clone():void 0,text:this.getText()?this.getText().clone():void 0,zIndex:this.getZIndex()})}getRenderer(){return this.renderer_}setRenderer(t){this.renderer_=t}setHitDetectionRenderer(t){this.hitDetectionRenderer_=t}getHitDetectionRenderer(){return this.hitDetectionRenderer_}getGeometry(){return this.geometry_}getGeometryFunction(){return this.geometryFunction_}getFill(){return this.fill_}setFill(t){this.fill_=t}getImage(){return this.image_}setImage(t){this.image_=t}getStroke(){return this.stroke_}setStroke(t){this.stroke_=t}getText(){return this.text_}setText(t){this.text_=t}getZIndex(){return this.zIndex_}setGeometry(t){typeof t=="function"?this.geometryFunction_=t:typeof t=="string"?this.geometryFunction_=function(e){return e.get(t)}:t?t!==void 0&&(this.geometryFunction_=function(){return t}):this.geometryFunction_=za,this.geometry_=t}setZIndex(t){this.zIndex_=t}}function af(s){let t;if(typeof s=="function")t=s;else{let e;Array.isArray(s)?e=s:(it(typeof s.getZIndex=="function","Expected an `Style` or an array of `Style`"),e=[s]),t=function(){return e}}return t}let Sr=null;function wh(s,t){if(!Sr){const e=new It({color:"rgba(255,255,255,0.4)"}),i=new Ft({color:"#3399CC",width:1.25});Sr=[new wt({image:new ui({fill:e,stroke:i,radius:5}),fill:e,stroke:i})]}return Sr}function lf(){const s={},t=[255,255,255,1],e=[0,153,255,1],i=3;return s.Polygon=[new wt({fill:new It({color:[255,255,255,.5]})})],s.MultiPolygon=s.Polygon,s.LineString=[new wt({stroke:new Ft({color:t,width:i+2})}),new wt({stroke:new Ft({color:e,width:i})})],s.MultiLineString=s.LineString,s.Circle=s.Polygon.concat(s.LineString),s.Point=[new wt({image:new ui({radius:i*2,fill:new It({color:e}),stroke:new Ft({color:t,width:i/2})}),zIndex:1/0})],s.MultiPoint=s.Point,s.GeometryCollection=s.Polygon.concat(s.LineString,s.Point),s}function za(s){return s.getGeometry()}const hf="#333";class tr{constructor(t){t=t||{},this.font_=t.font,this.rotation_=t.rotation,this.rotateWithView_=t.rotateWithView,this.keepUpright_=t.keepUpright,this.scale_=t.scale,this.scaleArray_=kt(t.scale!==void 0?t.scale:1),this.text_=t.text,this.textAlign_=t.textAlign,this.justify_=t.justify,this.repeat_=t.repeat,this.textBaseline_=t.textBaseline,this.fill_=t.fill!==void 0?t.fill:new It({color:hf}),this.maxAngle_=t.maxAngle!==void 0?t.maxAngle:Math.PI/4,this.placement_=t.placement!==void 0?t.placement:"point",this.overflow_=!!t.overflow,this.stroke_=t.stroke!==void 0?t.stroke:null,this.offsetX_=t.offsetX!==void 0?t.offsetX:0,this.offsetY_=t.offsetY!==void 0?t.offsetY:0,this.backgroundFill_=t.backgroundFill?t.backgroundFill:null,this.backgroundStroke_=t.backgroundStroke?t.backgroundStroke:null,this.padding_=t.padding===void 0?null:t.padding,this.declutterMode_=t.declutterMode}clone(){const t=this.getScale();return new tr({font:this.getFont(),placement:this.getPlacement(),repeat:this.getRepeat(),maxAngle:this.getMaxAngle(),overflow:this.getOverflow(),rotation:this.getRotation(),rotateWithView:this.getRotateWithView(),keepUpright:this.getKeepUpright(),scale:Array.isArray(t)?t.slice():t,text:this.getText(),textAlign:this.getTextAlign(),justify:this.getJustify(),textBaseline:this.getTextBaseline(),fill:this.getFill()instanceof It?this.getFill().clone():this.getFill(),stroke:this.getStroke()?this.getStroke().clone():void 0,offsetX:this.getOffsetX(),offsetY:this.getOffsetY(),backgroundFill:this.getBackgroundFill()?this.getBackgroundFill().clone():void 0,backgroundStroke:this.getBackgroundStroke()?this.getBackgroundStroke().clone():void 0,padding:this.getPadding()||void 0,declutterMode:this.getDeclutterMode()})}getOverflow(){return this.overflow_}getFont(){return this.font_}getMaxAngle(){return this.maxAngle_}getPlacement(){return this.placement_}getRepeat(){return this.repeat_}getOffsetX(){return this.offsetX_}getOffsetY(){return this.offsetY_}getFill(){return this.fill_}getRotateWithView(){return this.rotateWithView_}getKeepUpright(){return this.keepUpright_}getRotation(){return this.rotation_}getScale(){return this.scale_}getScaleArray(){return this.scaleArray_}getStroke(){return this.stroke_}getText(){return this.text_}getTextAlign(){return this.textAlign_}getJustify(){return this.justify_}getTextBaseline(){return this.textBaseline_}getBackgroundFill(){return this.backgroundFill_}getBackgroundStroke(){return this.backgroundStroke_}getPadding(){return this.padding_}getDeclutterMode(){return this.declutterMode_}setOverflow(t){this.overflow_=t}setFont(t){this.font_=t}setMaxAngle(t){this.maxAngle_=t}setOffsetX(t){this.offsetX_=t}setOffsetY(t){this.offsetY_=t}setPlacement(t){this.placement_=t}setRepeat(t){this.repeat_=t}setRotateWithView(t){this.rotateWithView_=t}setKeepUpright(t){this.keepUpright_=t}setFill(t){this.fill_=t}setRotation(t){this.rotation_=t}setScale(t){this.scale_=t,this.scaleArray_=kt(t!==void 0?t:1)}setStroke(t){this.stroke_=t}setText(t){this.text_=t}setTextAlign(t){this.textAlign_=t}setJustify(t){this.justify_=t}setTextBaseline(t){this.textBaseline_=t}setBackgroundFill(t){this.backgroundFill_=t}setBackgroundStroke(t){this.backgroundStroke_=t}setPadding(t){this.padding_=t}}class cf extends gh{constructor(t,e,i,n,r,o,a){super(),this.context_=t,this.pixelRatio_=e,this.extent_=i,this.transform_=n,this.transformRotation_=n?On(Math.atan2(n[1],n[0]),10):0,this.viewRotation_=r,this.squaredTolerance_=o,this.userTransform_=a,this.contextFillState_=null,this.contextStrokeState_=null,this.contextTextState_=null,this.fillState_=null,this.strokeState_=null,this.image_=null,this.imageAnchorX_=0,this.imageAnchorY_=0,this.imageHeight_=0,this.imageOpacity_=0,this.imageOriginX_=0,this.imageOriginY_=0,this.imageRotateWithView_=!1,this.imageRotation_=0,this.imageScale_=[0,0],this.imageWidth_=0,this.text_="",this.textOffsetX_=0,this.textOffsetY_=0,this.textRotateWithView_=!1,this.textRotation_=0,this.textScale_=[0,0],this.textFillState_=null,this.textStrokeState_=null,this.textState_=null,this.pixelCoordinates_=[],this.tmpLocalTransform_=te()}drawImages_(t,e,i,n){if(!this.image_)return;const r=Ye(t,e,i,n,this.transform_,this.pixelCoordinates_),o=this.context_,a=this.tmpLocalTransform_,l=o.globalAlpha;this.imageOpacity_!=1&&(o.globalAlpha=l*this.imageOpacity_);let h=this.imageRotation_;this.transformRotation_===0&&(h-=this.viewRotation_),this.imageRotateWithView_&&(h+=this.viewRotation_);for(let c=0,u=r.length;c0&&(l=$d(l,n,o,r,l)),a.moveTo(l[0],l[1]);let h=l.length;r&&(h-=2);for(let c=2;cd*this.pixelRatio_),lineDashOffset:(o||Ie)*this.pixelRatio_,lineJoin:a!==void 0?a:zi,lineWidth:(l!==void 0?l:Tn)*this.pixelRatio_,miterLimit:h!==void 0?h:vn,strokeStyle:le(i||Rn),strokeOffset:(u??0)*this.pixelRatio_}}}setImageStyle(t){let e;if(!t||!(e=t.getSize())){this.image_=null;return}const i=t.getPixelRatio(this.pixelRatio_),n=t.getAnchor(),r=t.getOrigin();this.image_=t.getImage(this.pixelRatio_),this.imageAnchorX_=n[0]*i,this.imageAnchorY_=n[1]*i,this.imageHeight_=e[1]*i,this.imageOpacity_=t.getOpacity(),this.imageOriginX_=r[0],this.imageOriginY_=r[1],this.imageRotateWithView_=t.getRotateWithView(),this.imageRotation_=t.getRotation();const o=t.getScaleArray();this.imageScale_=[o[0]*this.pixelRatio_/i,o[1]*this.pixelRatio_/i],this.imageWidth_=e[0]*i}setTextStyle(t){if(!t)this.text_="";else{const e=t.getFill();if(!e)this.textFillState_=null;else{const f=e.getColor();this.textFillState_={fillStyle:le(f||Lt)}}const i=t.getStroke();if(!i)this.textStrokeState_=null;else{const f=i.getColor(),g=i.getLineCap(),_=i.getLineDash(),m=i.getLineDashOffset(),p=i.getLineJoin(),x=i.getWidth(),w=i.getMiterLimit();this.textStrokeState_={lineCap:g!==void 0?g:ji,lineDash:_||Te,lineDashOffset:m||Ie,lineJoin:p!==void 0?p:zi,lineWidth:x!==void 0?x:Tn,miterLimit:w!==void 0?w:vn,strokeStyle:le(f||Rn)}}const n=t.getFont(),r=t.getOffsetX(),o=t.getOffsetY(),a=t.getRotateWithView(),l=t.getRotation(),h=t.getScaleArray(),c=t.getText(),u=t.getTextAlign(),d=t.getTextBaseline();this.textState_={font:n!==void 0?n:_h,textAlign:u!==void 0?u:Sn,textBaseline:d!==void 0?d:Ps},this.text_=c!==void 0?Array.isArray(c)?c.reduce((f,g,_)=>f+=_%2?" ":g,""):c:"",this.textOffsetX_=r!==void 0?this.pixelRatio_*r:0,this.textOffsetY_=o!==void 0?this.pixelRatio_*o:0,this.textRotateWithView_=a!==void 0?a:!1,this.textRotation_=l!==void 0?l:0,this.textScale_=[this.pixelRatio_*h[0],this.pixelRatio_*h[1]]}}}const oe=.5;function uf(s,t,e,i,n,r,o,a,l){const h=n,c=s[0]*oe,u=s[1]*oe,d=dt(c,u);d.imageSmoothingEnabled=!1;const f=d.canvas,g=new cf(d,oe,n,null,o,a,null),_=e.length,m=Math.floor((256*256*256-1)/_),p={};for(let w=1;w<=_;++w){const y=e[w-1],E=y.getStyleFunction()||i;if(!E)continue;let T=E(y,r);if(!T)continue;Array.isArray(T)||(T=[T]);const b=(w*m).toString(16).padStart(7,"#00000");for(let R=0,S=T.length;R0;return u&&Promise.all(l).then(()=>n(null)),mf(s,t,e,i,r,o,a),u}function mf(s,t,e,i,n,r,o){const a=e.getGeometryFunction()(t);if(!a)return;const l=a.simplifyTransformed(i,n);if(e.getRenderer())Sh(s,l,e,t,o);else{const c=vh[l.getType()];c(s,l,e,t,o,r)}}function Sh(s,t,e,i,n){if(t.getType()=="GeometryCollection"){const o=t.getGeometries();for(let a=0,l=o.length;athis.maxStaleKeys&&(this.staleKeys_.length=this.maxStaleKeys)}getFeatures(t){return X()}getData(t){return null}prepareFrame(t){return X()}renderFrame(t,e){return X()}forEachFeatureAtCoordinate(t,e,i,n,r){}getLayer(){return this.layer_}handleFontsChanged(){}handleImageChange_(t){const e=t.target;(e.getState()===B.LOADED||e.getState()===B.ERROR)&&this.renderIfReadyAndVisible()}loadImage(t){let e=t.getState();return e!=B.LOADED&&e!=B.ERROR&&t.addEventListener(U.CHANGE,this.boundHandleImageChange_),e==B.IDLE&&(t.load(),e=t.getState()),e==B.LOADED}renderIfReadyAndVisible(){const t=this.getLayer();t&&t.getVisible()&&t.getSourceState()==="ready"&&t.changed()}renderDeferred(t){}disposeInternal(){delete this.layer_,super.disposeInternal()}}const Ya=[];let vi=null;function Tf(){vi=dt(1,1,void 0,{willReadFrequently:!0})}class Ih extends Sf{constructor(t){super(t),this.container=null,this.renderedResolution,this.tempTransform=te(),this.pixelTransform=te(),this.inversePixelTransform=te(),this.context=null,this.deferredContext_=null,this.containerReused=!1,this.frameState=null}getImageData(t,e,i){vi||Tf(),vi.clearRect(0,0,1,1);let n;try{vi.drawImage(t,e,i,1,1,0,0,1,1),n=vi.getImageData(0,0,1,1).data}catch{return vi=null,null}return n}getBackground(t){let i=this.getLayer().getBackground();return typeof i=="function"&&(i=i(t.viewState.resolution)),i||void 0}useContainer(t,e,i){const n=this.getLayer().getClassName();let r,o;if(t&&t.className===n&&(!i||t&&t.style.backgroundColor&&Be(oi(t.style.backgroundColor),oi(i)))){const a=t.firstElementChild;Xe(a)&&(o=a.getContext("2d"))}if(o&&Qu(o.canvas.style.transform,e)?(this.container=t,this.context=o,this.containerReused=!0):this.containerReused?(this.container=null,this.context=null,this.containerReused=!1):this.container&&(this.container.style.backgroundColor=null),!this.container){r=Yt?uh():document.createElement("div"),r.className=n;let a=r.style;a.position="absolute",a.width="100%",a.height="100%",o=dt();const l=o.canvas;r.appendChild(l),a=l.style,a.position="absolute",a.left="0",a.transformOrigin="top left",this.container=r,this.context=o}!this.containerReused&&i&&!this.container.style.backgroundColor&&(this.container.style.backgroundColor=i)}clipUnrotated(t,e,i){const n=hi(i),r=Gs(i),o=Ns(i),a=Ds(i);_t(e.coordinateToPixelTransform,n),_t(e.coordinateToPixelTransform,r),_t(e.coordinateToPixelTransform,o),_t(e.coordinateToPixelTransform,a);const l=this.inversePixelTransform;_t(l,n),_t(l,r),_t(l,o),_t(l,a),t.save(),t.beginPath(),t.moveTo(Math.round(n[0]),Math.round(n[1])),t.lineTo(Math.round(r[0]),Math.round(r[1])),t.lineTo(Math.round(o[0]),Math.round(o[1])),t.lineTo(Math.round(a[0]),Math.round(a[1])),t.clip()}prepareContainer(t,e){const i=t.extent,n=t.viewState.resolution,r=t.viewState.rotation,o=t.pixelRatio,a=Math.round(st(i)/n*o),l=Math.round(Tt(i)/n*o);Me(this.pixelTransform,t.size[0]/2,t.size[1]/2,1/o,1/o,r,-a/2,-l/2),ql(this.inversePixelTransform,this.pixelTransform);const h=Ju(this.pixelTransform);if(this.useContainer(e,h,this.getBackground(t)),!this.containerReused){const c=this.context.canvas;c.width!=a||c.height!=l?(c.width=a,c.height=l):this.context.clearRect(0,0,a,l),h!==c.style.transform&&(c.style.transform=h)}}dispatchRenderEvent_(t,e,i){const n=this.getLayer();if(n.hasListener(t)){const r=new Th(t,this.inversePixelTransform,i,e);n.dispatchEvent(r)}}preRender(t,e){this.frameState=e,!e.declutter&&this.dispatchRenderEvent_(Ut.PRERENDER,t,e)}postRender(t,e){e.declutter||this.dispatchRenderEvent_(Ut.POSTRENDER,t,e)}renderDeferredInternal(t){}getRenderContext(t){return t.declutter&&!this.deferredContext_&&(this.deferredContext_=new yh),t.declutter?this.deferredContext_.getContext():this.context}renderDeferred(t){t.declutter&&(this.dispatchRenderEvent_(Ut.PRERENDER,this.context,t),t.declutter&&this.deferredContext_&&(this.deferredContext_.draw(this.context),this.deferredContext_.clear()),this.renderDeferredInternal(t),this.dispatchRenderEvent_(Ut.POSTRENDER,this.context,t))}getRenderTransform(t,e,i,n,r,o,a){const l=r/2,h=o/2,c=n/e,u=-c,d=-t[0]+a,f=-t[1];return Me(this.tempTransform,l,h,c,u,-i,d,f)}disposeInternal(){delete this.frameState,super.disposeInternal()}}class If extends Ih{constructor(t){super(t),this.boundHandleStyleImageChange_=this.handleStyleImageChange_.bind(this),this.animatingOrInteracting_,this.hitDetectionImageData_=null,this.clipExtent_=null,this.extendX_=!1,this.renderedFeatures_=null,this.renderedRevision_=-1,this.renderedResolution_=NaN,this.renderedExtent_=Vt(),this.wrappedRenderedExtent_=Vt(),this.renderedRotation_,this.renderedCenter_=null,this.renderedProjection_=null,this.renderedPixelRatio_=1,this.renderedRenderOrder_=null,this.renderedFrameDeclutter_,this.replayGroup_=null,this.replayGroupChanged=!0,this.clipping=!0,this.targetContext_=null,this.opacity_=1}renderWorlds(t,e,i){const n=e.extent,r=e.viewState,o=r.center,a=r.resolution,l=r.projection,h=r.rotation,c=l.getExtent(),u=this.getLayer().getSource(),d=this.getLayer().getDeclutter(),f=e.pixelRatio,g=e.viewHints,_=!(g[Ct.ANIMATING]||g[Ct.INTERACTING]),m=this.context,p=Math.round(st(n)/a*f),x=Math.round(Tt(n)/a*f),w=u.getWrapX()&&l.canWrapX(),y=w?st(c):null,E=w?Math.ceil((n[2]-c[2])/y)+(this.extendX_?2:1):1;let T=w?Math.floor((n[0]-c[0])/y)-(this.extendX_?1:0):0;do{let M=this.getRenderTransform(o,a,0,f,p,x,T*y);e.declutter&&(M=M.slice(0)),t.execute(m,[m.canvas.width,m.canvas.height],M,h,_,i===void 0?qe:i?xh:ef,i?d&&e.declutter[d]:void 0)}while(++T{if(this.frameState&&!this.hitDetectionImageData_&&!this.animatingOrInteracting_){const i=this.frameState.size.slice(),n=this.renderedCenter_,r=this.renderedResolution_,o=this.renderedRotation_,a=this.renderedProjection_,l=this.wrappedRenderedExtent_,h=this.getLayer(),c=[],u=i[0]*oe,d=i[1]*oe;c.push(this.getRenderTransform(n,r,o,oe,u,d,0).slice());const f=h.getSource(),g=a.getExtent();if(f.getWrapX()&&a.canWrapX()&&!Si(g,l)){let _=l[0];const m=st(g);let p=0,x;for(;_g[2];)++p,x=m*p,c.push(this.getRenderTransform(n,r,o,oe,u,d,x).slice()),_-=m}this.hitDetectionImageData_=uf(i,c,this.renderedFeatures_,h.getStyleFunction(),l,r,o,Xa(r,this.renderedPixelRatio_))}e(df(t,this.renderedFeatures_,this.hitDetectionImageData_))})}forEachFeatureAtCoordinate(t,e,i,n,r){if(!this.replayGroup_)return;const o=e.viewState.resolution,a=e.viewState.rotation,l=this.getLayer(),h={},c=function(d,f,g){const _=Q(d),m=h[_];if(m){if(m!==!0&&gd.value):null)}handleFontsChanged(){const t=this.getLayer();t.getVisible()&&this.replayGroup_&&t.changed()}handleStyleImageChange_(t){this.renderIfReadyAndVisible()}prepareFrame(t){const e=this.getLayer(),i=e.getSource();if(!i)return!1;const n=t.viewHints[Ct.ANIMATING],r=t.viewHints[Ct.INTERACTING],o=e.getUpdateWhileAnimating(),a=e.getUpdateWhileInteracting();if(this.ready&&!o&&n||!a&&r)return this.animatingOrInteracting_=!0,!0;this.animatingOrInteracting_=!1;const l=t.extent,h=t.viewState,c=h.projection,u=h.resolution,d=t.pixelRatio,f=e.getRevision(),g=e.getRenderBuffer();let _=e.getRenderOrder();_===void 0&&(_=gf);const m=h.center.slice(),p=fo(l,g*u),x=p.slice(),w=[p.slice()],y=c.getExtent(),E=i.getWrapX()&&c.canWrapX();if(this.extendX_=!1,E){const P=i.getExtent();P&&!An(P)&&(this.extendX_=P[0]y[2])}if(E&&(!Si(y,t.extent)||this.extendX_)){const P=st(y),Y=Math.max(st(p)/2,P);let j=y[0],F=y[2];this.extendX_&&(j-=P,F+=P),p[0]=j-Y,p[2]=F+Y,yo(m,c);const D=Ll(w[0],c);D[0]y[0]&&D[2]>y[2]&&w.push([D[0]-P,D[1],D[2]-P,D[3]])}if(this.ready&&this.renderedResolution_==u&&this.renderedPixelRatio_===d&&this.renderedRevision_==f&&this.renderedRenderOrder_==_&&this.renderedFrameDeclutter_===!!t.declutter&&Si(this.wrappedRenderedExtent_,p))return Be(this.renderedExtent_,x)||(this.hitDetectionImageData_=null,this.renderedExtent_=x),this.renderedCenter_=m,this.replayGroupChanged=!1,!0;this.replayGroup_=null;const T=new Hd(Rh(u,d),p,u,d);let M;for(let P=0,Y=w.length;P{let j;const F=P.getStyleFunction()||e.getStyleFunction();if(F&&(j=F(P,u)),j){const D=this.renderFeature(P,b,j,T,M,this.getLayer().getDeclutter(),Y);R=R&&!D}},A=Yl(p),O=i.getFeaturesInExtent(A);_&&O.sort(_);for(let P=0,Y=O.length;Pe;){if(i-e>600){const l=i-e+1,h=t-e+1,c=Math.log(l),u=.5*Math.exp(2*c/3),d=.5*Math.sqrt(c*u*(l-u)/l)*(h-l/2<0?-1:1),f=Math.max(e,Math.floor(t-h*u/l+d)),g=Math.min(i,Math.floor(t+(l-h)*u/l+d));bh(s,t,f,g,n)}const r=s[t];let o=e,a=i;for(en(s,e,t),n(s[i],r)>0&&en(s,e,i);o0;)a--}n(s[e],r)===0?en(s,e,a):(a++,en(s,a,i)),a<=t&&(e=a+1),t<=a&&(i=a-1)}}function en(s,t,e){const i=s[t];s[t]=s[e],s[e]=i}function bf(s,t){return st?1:0}let Mh=class{constructor(t=9){this._maxEntries=Math.max(4,t),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(t){let e=this.data;const i=[];if(!rs(t,e))return i;const n=this.toBBox,r=[];for(;e;){for(let o=0;o=0&&r[e].children.length>this._maxEntries;)this._split(r,e),e--;this._adjustParentBBoxes(n,r,e)}_split(t,e){const i=t[e],n=i.children.length,r=this._minEntries;this._chooseSplitAxis(i,r,n);const o=this._chooseSplitIndex(i,r,n),a=Ri(i.children.splice(o,i.children.length-o));a.height=i.height,a.leaf=i.leaf,mi(i,this.toBBox),mi(a,this.toBBox),e?t[e-1].children.push(a):this._splitRoot(i,a)}_splitRoot(t,e){this.data=Ri([t,e]),this.data.height=t.height+1,this.data.leaf=!1,mi(this.data,this.toBBox)}_chooseSplitIndex(t,e,i){let n,r=1/0,o=1/0;for(let a=e;a<=i-e;a++){const l=rn(t,0,a,this.toBBox),h=rn(t,a,i,this.toBBox),c=Of(l,h),u=Tr(l)+Tr(h);c=e;h--){const c=t.children[h];on(a,t.leaf?r(c):c),l+=ss(a)}return l}_adjustParentBBoxes(t,e,i){for(let n=i;n>=0;n--)on(e[n],t)}_condense(t){for(let e=t.length-1,i;e>=0;e--)t[e].children.length===0?e>0?(i=t[e-1].children,i.splice(i.indexOf(t[e]),1)):this.clear():mi(t[e],this.toBBox)}};function Mf(s,t,e){if(!e)return t.indexOf(s);for(let i=0;i=s.minX&&t.maxY>=s.minY}function Ri(s){return{children:s,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function Ua(s,t,e,i,n){const r=[t,e];for(;r.length;){if(e=r.pop(),t=r.pop(),e-t<=i)continue;const o=t+Math.ceil((e-t)/i/2)*i;bh(s,o,t,e,n),r.push(t,o,o,e)}}let di=0;const Rt=1<",GreaterThanOrEqualTo:">=",LessThan:"<",LessThanOrEqualTo:"<=",Multiply:"*",Divide:"/",Add:"+",Subtract:"-",Clamp:"clamp",Mod:"%",Pow:"^",Abs:"abs",Floor:"floor",Ceil:"ceil",Round:"round",Sin:"sin",Cos:"cos",Atan:"atan",Sqrt:"sqrt",Match:"match",Between:"between",Interpolate:"interpolate",Coalesce:"coalesce",Case:"case",In:"in",Number:"number",String:"string",Array:"array",Color:"color",Id:"id",Band:"band",Palette:"palette",ToString:"to-string",Has:"has"},Nf={[v.Get]:z(Z(1,1/0),Ba),[v.Var]:z(Z(1,1),Gf),[v.Has]:z(Z(1,1/0),Ba),[v.Id]:z(jf,pi),[v.Concat]:z(Z(2,1/0),tt(At)),[v.GeometryType]:z(zf,pi),[v.LineMetric]:z(pi),[v.Resolution]:z(br,pi),[v.Zoom]:z(br,pi),[v.Time]:z(br,pi),[v.Any]:z(Z(2,1/0),tt(Rt)),[v.All]:z(Z(2,1/0),tt(Rt)),[v.Not]:z(Z(1,1),tt(Rt)),[v.Equal]:z(Z(2,2),tt(os)),[v.NotEqual]:z(Z(2,2),tt(os)),[v.GreaterThan]:z(Z(2,2),tt(H)),[v.GreaterThanOrEqualTo]:z(Z(2,2),tt(H)),[v.LessThan]:z(Z(2,2),tt(H)),[v.LessThanOrEqualTo]:z(Z(2,2),tt(H)),[v.Multiply]:z(Z(2,1/0),Za),[v.Coalesce]:z(Z(2,1/0),Za),[v.Divide]:z(Z(2,2),tt(H)),[v.Add]:z(Z(2,1/0),tt(H)),[v.Subtract]:z(Z(2,2),tt(H)),[v.Clamp]:z(Z(3,3),tt(H)),[v.Mod]:z(Z(2,2),tt(H)),[v.Pow]:z(Z(2,2),tt(H)),[v.Abs]:z(Z(1,1),tt(H)),[v.Floor]:z(Z(1,1),tt(H)),[v.Ceil]:z(Z(1,1),tt(H)),[v.Round]:z(Z(1,1),tt(H)),[v.Sin]:z(Z(1,1),tt(H)),[v.Cos]:z(Z(1,1),tt(H)),[v.Atan]:z(Z(1,2),tt(H)),[v.Sqrt]:z(Z(1,1),tt(H)),[v.Match]:z(Z(4,1/0),Ka,Wf),[v.Between]:z(Z(3,3),tt(H)),[v.Interpolate]:z(Z(6,1/0),Ka,Yf),[v.Case]:z(Z(3,1/0),Xf,Uf),[v.In]:z(Z(2,2),Bf),[v.Number]:z(Z(1,1/0),tt(os)),[v.String]:z(Z(1,1/0),tt(os)),[v.Array]:z(Z(1,1/0),tt(H)),[v.Color]:z(Z(1,4),tt(H)),[v.Band]:z(Z(1,3),tt(H)),[v.Palette]:z(Z(2,2),Zf),[v.ToString]:z(Z(1,1),tt(Rt|H|At|Jt))};function Ba(s,t,e){const i=s.length-1,n=new Array(i);for(let r=0;rt){const a=t===1/0?`${s} or more`:`${s} to ${t}`;throw new Error(`expected ${a} arguments for ${r}, got ${o}`)}}}function Za(s,t,e){const i=s.length-1,n=new Array(i);for(let r=0;ri.featureId;case v.GeometryType:return i=>i.geometryType;case v.Concat:{const i=s.args.map(n=>ee(n));return n=>"".concat(...i.map(r=>r(n).toString()))}case v.Resolution:return i=>i.resolution;case v.Any:case v.All:case v.Between:case v.In:case v.Not:return qf(s);case v.Equal:case v.NotEqual:case v.LessThan:case v.LessThanOrEqualTo:case v.GreaterThan:case v.GreaterThanOrEqualTo:return $f(s);case v.Multiply:case v.Divide:case v.Add:case v.Subtract:case v.Clamp:case v.Mod:case v.Pow:case v.Abs:case v.Floor:case v.Ceil:case v.Round:case v.Sin:case v.Cos:case v.Atan:case v.Sqrt:return Jf(s);case v.Case:return Qf(s);case v.Match:return tg(s);case v.Interpolate:return eg(s);case v.ToString:return ig(s);default:throw new Error(`Unsupported operator ${e}`)}}function Vf(s,t){const e=s.operator,i=s.args.length,n=new Array(i);for(let r=0;r{for(let o=0;o{for(let o=0;o{const r=s.args;let o=n.properties[i];for(let a=1,l=r.length;an.variables[i];case v.Has:return n=>{const r=s.args;if(!(i in n.properties))return!1;let o=n.properties[i];for(let a=1,l=r.length;ai(r)===n(r);case v.NotEqual:return r=>i(r)!==n(r);case v.LessThan:return r=>i(r)i(r)<=n(r);case v.GreaterThan:return r=>i(r)>n(r);case v.GreaterThanOrEqualTo:return r=>i(r)>=n(r);default:throw new Error(`Unsupported comparison operator ${e}`)}}function qf(s,t){const e=s.operator,i=s.args.length,n=new Array(i);for(let r=0;r{for(let o=0;o{for(let o=0;o{const o=n[0](r),a=n[1](r),l=n[2](r);return o>=a&&o<=l};case v.In:return r=>{const o=n[0](r);for(let a=1;a!n[0](r);default:throw new Error(`Unsupported logical operator ${e}`)}}function Jf(s,t){const e=s.operator,i=s.args.length,n=new Array(i);for(let r=0;r{let o=1;for(let a=0;an[0](r)/n[1](r);case v.Add:return r=>{let o=0;for(let a=0;an[0](r)-n[1](r);case v.Clamp:return r=>{const o=n[0](r),a=n[1](r);if(ol?l:o};case v.Mod:return r=>n[0](r)%n[1](r);case v.Pow:return r=>Math.pow(n[0](r),n[1](r));case v.Abs:return r=>Math.abs(n[0](r));case v.Floor:return r=>Math.floor(n[0](r));case v.Ceil:return r=>Math.ceil(n[0](r));case v.Round:return r=>Math.round(n[0](r));case v.Sin:return r=>Math.sin(n[0](r));case v.Cos:return r=>Math.cos(n[0](r));case v.Atan:return i===2?r=>Math.atan2(n[0](r),n[1](r)):r=>Math.atan(n[0](r));case v.Sqrt:return r=>Math.sqrt(n[0](r));default:throw new Error(`Unsupported numeric operator ${e}`)}}function Qf(s,t){const e=s.args.length,i=new Array(e);for(let n=0;n{for(let r=0;r{const r=i[0](n);for(let o=1;o{const r=i[0](n),o=i[1](n);let a,l;for(let h=2;h=o)return h===2?u:d?ng(r,o,a,l,c,u):cn(r,o,a,l,c,u);a=c,l=u}return l}}function ig(s,t){const e=s.operator,i=s.args.length,n=new Array(i);for(let r=0;r{const o=n[0](r);return s.args[0].type===Jt?zo(o):o.toString()};throw new Error(`Unsupported convert operator ${e}`)}function cn(s,t,e,i,n,r){const o=n-e;if(o===0)return i;const a=t-e,l=s===1?a/o:(Math.pow(s,a)-1)/(Math.pow(s,o)-1);return i+l*(r-i)}function ng(s,t,e,i,n,r){if(n-e===0)return i;const a=Ma(i),l=Ma(r);let h=l[2]-a[2];h>180?h-=360:h<-180&&(h+=360);const c=[cn(s,t,e,a[0],n,l[0]),cn(s,t,e,a[1],n,l[1]),a[2]+cn(s,t,e,0,n,h),cn(s,t,e,i[3],n,r[3])];return Id(c)}function sg(s){return!0}function rg(s){const t=Ph(),e=og(s,t),i=Ah();return function(n,r){if(i.properties=n.getPropertiesInternal(),i.resolution=r,t.featureId){const o=n.getId();o!==void 0?i.featureId=o:i.featureId=null}return t.geometryType&&(i.geometryType=Lh(n.getGeometry())),e(i)}}function Va(s){const t=Ph(),e=s.length,i=new Array(e);for(let o=0;onull;i=er(s,t+"fill-color",e)}if(!i)return null;const n=new It;return function(r){const o=i(r);return o===Go?null:(n.setColor(o),n)}}function bn(s,t,e){const i=mt(s,t+"stroke-width",e),n=er(s,t+"stroke-color",e);if(!i&&!n)return null;const r=Ce(s,t+"stroke-line-cap",e),o=Ce(s,t+"stroke-line-join",e),a=Oh(s,t+"stroke-line-dash",e),l=mt(s,t+"stroke-line-dash-offset",e),h=mt(s,t+"stroke-miter-limit",e),c=mt(s,t+"stroke-offset",e),u=new Ft;return function(d){if(n){const f=n(d);if(f===Go)return null;u.setColor(f)}if(i&&u.setWidth(i(d)),r){const f=r(d);if(f!=="butt"&&f!=="round"&&f!=="square")throw new Error("Expected butt, round, or square line cap");u.setLineCap(f)}if(o){const f=o(d);if(f!=="bevel"&&f!=="round"&&f!=="miter")throw new Error("Expected bevel, round, or miter line join");u.setLineJoin(f)}return a&&u.setLineDash(a(d)),l&&u.setLineDashOffset(l(d)),h&&u.setMiterLimit(h(d)),c&&u.setOffset(c(d)),u}}function ag(s,t){const e="text-",i=Ce(s,e+"value",t);if(!i)return null;const n=In(s,e,t),r=In(s,e+"background-",t),o=bn(s,e,t),a=bn(s,e+"background-",t),l=Ce(s,e+"font",t),h=mt(s,e+"max-angle",t),c=mt(s,e+"offset-x",t),u=mt(s,e+"offset-y",t),d=Pi(s,e+"overflow",t),f=Ce(s,e+"placement",t),g=mt(s,e+"repeat",t),_=ir(s,e+"scale",t),m=Pi(s,e+"rotate-with-view",t),p=mt(s,e+"rotation",t),x=Ce(s,e+"align",t),w=Ce(s,e+"justify",t),y=Ce(s,e+"baseline",t),E=Pi(s,e+"keep-upright",t),T=Oh(s,e+"padding",t),M=nr(s,e+"declutter-mode"),b=new tr({declutterMode:M});return function(R){if(b.setText(i(R)),n&&b.setFill(n(R)),r&&b.setBackgroundFill(r(R)),o&&b.setStroke(o(R)),a&&b.setBackgroundStroke(a(R)),l&&b.setFont(l(R)),h&&b.setMaxAngle(h(R)),c&&b.setOffsetX(c(R)),u&&b.setOffsetY(u(R)),d&&b.setOverflow(d(R)),f){const S=f(R);if(S!=="point"&&S!=="line")throw new Error("Expected point or line for text-placement");b.setPlacement(S)}if(g&&b.setRepeat(g(R)),_&&b.setScale(_(R)),m&&b.setRotateWithView(m(R)),p&&b.setRotation(p(R)),x){const S=x(R);if(S!=="left"&&S!=="center"&&S!=="right"&&S!=="end"&&S!=="start")throw new Error("Expected left, right, center, start, or end for text-align");b.setTextAlign(S)}if(w){const S=w(R);if(S!=="left"&&S!=="right"&&S!=="center")throw new Error("Expected left, right, or center for text-justify");b.setJustify(S)}if(y){const S=y(R);if(S!=="bottom"&&S!=="top"&&S!=="middle"&&S!=="alphabetic"&&S!=="hanging")throw new Error("Expected bottom, top, middle, alphabetic, or hanging for text-baseline");b.setTextBaseline(S)}return T&&b.setPadding(T(R)),E&&b.setKeepUpright(E(R)),b}}function lg(s,t){return"icon-src"in s?hg(s,t):"shape-points"in s?cg(s,t):"circle-radius"in s?ug(s,t):null}function hg(s,t){const e="icon-",i=e+"src",n=kh(s[i],i),r=As(s,e+"anchor",t),o=ir(s,e+"scale",t),a=mt(s,e+"opacity",t),l=As(s,e+"displacement",t),h=mt(s,e+"rotation",t),c=Pi(s,e+"rotate-with-view",t),u=$a(s,e+"anchor-origin"),d=qa(s,e+"anchor-x-units"),f=qa(s,e+"anchor-y-units"),g=Pe(s,e+"color");let _,m=null;g!==void 0&&(Array.isArray(g)&&g.length>0&&typeof g[0]=="string"?m=er(s,e+"color",t):_=Fh(g,e+"color"));const p=gg(s,e+"cross-origin"),x=_g(s,e+"offset"),w=$a(s,e+"offset-origin"),y=lo(s,e+"width"),E=lo(s,e+"height"),T=fg(s,e+"size"),M=nr(s,e+"declutter-mode"),b={src:n,anchorOrigin:u,anchorXUnits:d,anchorYUnits:f,crossOrigin:p,offset:x,offsetOrigin:w,height:E,width:y,size:T,declutterMode:M};let R=null;return function(S){if(R)m&&R.setColor(m(S));else{const A=m?m(S):_;R=new Qs(A!==void 0?Object.assign({},b,{color:A}):Object.assign({},b))}return a&&R.setOpacity(a(S)),l&&R.setDisplacement(l(S)),h&&R.setRotation(h(S)),c&&R.setRotateWithView(c(S)),o&&R.setScale(o(S)),r&&R.setAnchor(r(S)),R}}function cg(s,t){const e="shape-",i=e+"points",n=e+"radius",r=Yo(s[i],i);if(!(n in s))throw new Error(`Expected a number for ${n}`);const o=mt(s,n,t),a=typeof s[n]=="number"?s[n]:5,l=e+"radius2",h=mt(s,l,t),c=typeof s[l]=="number"?s[l]:void 0,u=In(s,e,t),d=bn(s,e,t),f=ir(s,e+"scale",t),g=As(s,e+"displacement",t),_=mt(s,e+"rotation",t),m=Pi(s,e+"rotate-with-view",t),p=lo(s,e+"angle"),x=nr(s,e+"declutter-mode"),w=new Js({points:r,radius:a,radius2:c,angle:p,declutterMode:x});return function(y){return o&&w.setRadius(o(y)),h&&w.setRadius2(h(y)),u&&w.setFill(u(y)),d&&w.setStroke(d(y)),g&&w.setDisplacement(g(y)),_&&w.setRotation(_(y)),m&&w.setRotateWithView(m(y)),f&&w.setScale(f(y)),w}}function ug(s,t){const e="circle-",i=In(s,e,t),n=bn(s,e,t),r=mt(s,e+"radius",t),o=ir(s,e+"scale",t),a=As(s,e+"displacement",t),l=mt(s,e+"rotation",t),h=Pi(s,e+"rotate-with-view",t),c=nr(s,e+"declutter-mode"),u=new ui({radius:5,declutterMode:c});return function(d){return r&&u.setRadius(r(d)),i&&u.setFill(i(d)),n&&u.setStroke(n(d)),a&&u.setDisplacement(a(d)),l&&u.setRotation(l(d)),h&&u.setRotateWithView(h(d)),o&&u.setScale(o(d)),u}}function Pe(s,t){if(!(t in s))return;const e=s[t];return e===void 0?void 0:e}function mt(s,t,e){const i=Pe(s,t);if(i===void 0)return;const n=de(i,H,e);return function(r){return Yo(n(r),t)}}function Ce(s,t,e){const i=Pe(s,t);if(i===void 0)return null;const n=de(i,At,e);return function(r){return kh(n(r),t)}}function dg(s,t,e){const i=Ce(s,t+"pattern-src",e),n=Ha(s,t+"pattern-offset",e),r=Ha(s,t+"pattern-size",e),o=er(s,t+"color",e);return function(a){return{src:i(a),offset:n&&n(a),size:r&&r(a),color:o&&o(a)}}}function Pi(s,t,e){const i=Pe(s,t);if(i===void 0)return null;const n=de(i,Rt,e);return function(r){const o=n(r);if(typeof o!="boolean")throw new Error(`Expected a boolean for ${t}`);return o}}function er(s,t,e){const i=Pe(s,t);if(i===void 0)return null;const n=de(i,Jt,e);return function(r){return Fh(n(r),t)}}function Oh(s,t,e){const i=Pe(s,t);if(i===void 0)return null;if(Array.isArray(i)&&(i.length===0||typeof i[0]!="string")){const r=i.map((o,a)=>{if(typeof o=="number")return()=>o;const l=de(o,H,e);return function(h){return Yo(l(h),`${t}[${a}]`)}});return function(o){const a=new Array(r.length);for(let l=0;l4)throw new Error(`Expected a color with 3 or 4 values for ${t}`);return e}function Dh(s,t){const e=Xn(s,t);if(e.length!==2)throw new Error(`Expected an array of two numbers for ${t}`);return e}function mg(s,t){return typeof s=="number"?s:Dh(s,t)}const $t={CENTER:"center",RESOLUTION:"resolution",ROTATION:"rotation"};function Ja(s,t,e){return(function(i,n,r,o,a){if(!i)return;if(!n&&!t)return i;const l=t?0:r[0]*n,h=t?0:r[1]*n,c=a?a[0]:0,u=a?a[1]:0;let d=s[0]+l/2+c,f=s[2]-l/2+c,g=s[1]+h/2+u,_=s[3]-h/2+u;d>f&&(d=(f+d)/2,f=d),g>_&&(g=(_+g)/2,_=g);let m=at(i[0],d,f),p=at(i[1],g,_);if(o&&e&&n){const x=30*n;m+=-x*Math.log(1+Math.max(0,d-i[0])/x)+x*Math.log(1+Math.max(0,i[0]-f)/x),p+=-x*Math.log(1+Math.max(0,g-i[1])/x)+x*Math.log(1+Math.max(0,i[1]-_)/x)}return[m,p]})}function pg(s){return s}function Nh(s){return Math.pow(s,3)}function Wi(s){return 1-Nh(1-s)}function yg(s){return 3*s*s-2*s*s*s}function xg(s){return s}function Uo(s,t,e,i){const n=st(t)/e[0],r=Tt(t)/e[1];return i?Math.min(s,Math.max(n,r)):Math.min(s,Math.min(n,r))}function Bo(s,t,e){let i=Math.min(s,t);const n=50;return i*=Math.log(1+n*Math.max(0,s/t-1))/n+1,e&&(i=Math.max(i,e),i/=Math.log(1+n*Math.max(0,e/s-1))/n+1),at(i,e/2,t*2)}function Eg(s,t,e,i){return t=t!==void 0?t:!0,(function(n,r,o,a){if(n!==void 0){const l=s[0],h=s[s.length-1],c=e?Uo(l,e,o,i):l;if(a)return t?Bo(n,c,h):at(n,h,c);const u=Math.min(c,n),d=Math.floor(So(s,u,r));return s[d]>c&&d1&&typeof arguments[e-1]=="function"&&(i=arguments[e-1],--e);let n=0;for(;n0}getInteracting(){return this.hints_[Ct.INTERACTING]>0}cancelAnimations(){this.setHint(Ct.ANIMATING,-this.hints_[Ct.ANIMATING]);let t;for(let e=0,i=this.animations_.length;e=0;--i){const n=this.animations_[i];let r=!0;for(let o=0,a=n.length;o0?h/l.duration:1;c>=1?(l.complete=!0,c=1):r=!1;const u=l.easing(c);if(l.sourceCenter){const d=l.sourceCenter[0],f=l.sourceCenter[1],g=l.targetCenter[0],_=l.targetCenter[1];this.nextCenter_=l.targetCenter;const m=d+u*(g-d),p=f+u*(_-f);this.targetCenter_=[m,p]}if(l.sourceResolution&&l.targetResolution){const d=u===1?l.targetResolution:l.sourceResolution+u*(l.targetResolution-l.sourceResolution);if(l.anchor){const f=this.getViewportSize_(this.getRotation()),g=this.constraints_.resolution(d,0,f,!0);this.targetCenter_=this.calculateCenterZoom(g,l.anchor)}this.nextResolution_=l.targetResolution,this.targetResolution_=d,this.applyTargetState_(!0)}if(l.sourceRotation!==void 0&&l.targetRotation!==void 0){const d=u===1?ni(l.targetRotation+Math.PI,2*Math.PI)-Math.PI:l.sourceRotation+u*(l.targetRotation-l.sourceRotation);if(l.anchor){const f=this.constraints_.rotation(d,!0);this.targetCenter_=this.calculateCenterRotate(f,l.anchor)}this.nextRotation_=l.targetRotation,this.targetRotation_=d}if(this.applyTargetState_(!0),e=!0,!l.complete)break}if(r){this.animations_[i]=null,this.setHint(Ct.ANIMATING,-1),this.nextCenter_=null,this.nextResolution_=NaN,this.nextRotation_=NaN;const o=n[0].callback;o&&as(o,!0)}}this.animations_=this.animations_.filter(Boolean),e&&this.updateAnimationKey_===void 0&&(this.updateAnimationKey_=requestAnimationFrame(this.updateAnimations_.bind(this)))}calculateCenterRotate(t,e){let i;const n=this.getCenterInternal();return n!==void 0&&(i=[n[0]-e[0],n[1]-e[1]],po(i,t-this.getRotation()),qc(i,e)),i}calculateCenterZoom(t,e){let i;const n=this.getCenterInternal(),r=this.getResolution();if(n!==void 0&&r!==void 0){const o=e[0]-t*(e[0]-n[0])/r,a=e[1]-t*(e[1]-n[1])/r;i=[o,a]}return i}getViewportSize_(t){const e=this.viewportSize_;if(t){const i=e[0],n=e[1];return[Math.abs(i*Math.cos(t))+Math.abs(n*Math.sin(t)),Math.abs(i*Math.sin(t))+Math.abs(n*Math.cos(t))]}return e}setViewportSize(t){this.viewportSize_=Array.isArray(t)?t.slice():[100,100],this.getAnimating()||this.resolveConstraints(0)}getCenter(){const t=this.getCenterInternal();return t&&qr(t,this.getProjection())}getCenterInternal(){return this.get($t.CENTER)}getConstraints(){return this.constraints_}getConstrainResolution(){return this.get("constrainResolution")}getHints(t){return t!==void 0?(t[0]=this.hints_[0],t[1]=this.hints_[1],t):this.hints_.slice()}calculateExtent(t){const e=this.calculateExtentInternal(t);return Yl(e,this.getProjection())}calculateExtentInternal(t){t=t||this.getViewportSizeMinusPadding_();const e=this.getCenterInternal();it(e,"The view center is not defined");const i=this.getResolution();it(i!==void 0,"The view resolution is not defined");const n=this.getRotation();return it(n!==void 0,"The view rotation is not defined"),Br(e,i,n,t)}getMaxResolution(){return this.maxResolution_}getMinResolution(){return this.minResolution_}getMaxZoom(){return this.getZoomForResolution(this.minResolution_)}setMaxZoom(t){this.applyOptions_(this.getUpdatedOptions_({maxZoom:t}))}getMinZoom(){return this.getZoomForResolution(this.maxResolution_)}setMinZoom(t){this.applyOptions_(this.getUpdatedOptions_({minZoom:t}))}setConstrainResolution(t){this.applyOptions_(this.getUpdatedOptions_({constrainResolution:t}))}getProjection(){return this.projection_}getResolution(){return this.get($t.RESOLUTION)}getResolutions(){return this.resolutions_}getResolutionForExtent(t,e){return this.getResolutionForExtentInternal(je(t,this.getProjection()),e)}getResolutionForExtentInternal(t,e){e=e||this.getViewportSizeMinusPadding_();const i=st(t)/e[0],n=Tt(t)/e[1];return Math.max(i,n)}getResolutionForValueFunction(t){t=t||2;const e=this.getConstrainedResolution(this.maxResolution_),i=this.minResolution_,n=Math.log(e/i)/Math.log(t);return(function(r){return e/Math.pow(t,r*n)})}getRotation(){return this.get($t.ROTATION)}getValueForResolutionFunction(t){const e=Math.log(t||2),i=this.getConstrainedResolution(this.maxResolution_),n=this.minResolution_,r=Math.log(i/n)/e;return(function(o){return Math.log(i/o)/e/r})}getViewportSizeMinusPadding_(t){let e=this.getViewportSize_(t);const i=this.padding_;return i&&(e=[e[0]-i[1]-i[3],e[1]-i[0]-i[2]]),e}getState(){const t=this.getProjection(),e=this.getResolution(),i=this.getRotation();let n=this.getCenterInternal();const r=this.padding_;if(r){const o=this.getViewportSizeMinusPadding_();n=Pr(n,this.getViewportSize_(),[o[0]/2+r[3],o[1]/2+r[0]],e,i)}return{center:n.slice(0),projection:t!==void 0?t:null,resolution:e,nextCenter:this.nextCenter_,nextResolution:this.nextResolution_,nextRotation:this.nextRotation_,rotation:i,zoom:this.getZoom()}}getViewStateAndExtent(){return{viewState:this.getState(),extent:this.calculateExtent()}}getZoom(){let t;const e=this.getResolution();return e!==void 0&&(t=this.getZoomForResolution(e)),t}getZoomForResolution(t){let e=this.minZoom_||0,i,n;if(this.resolutions_){const r=So(this.resolutions_,t,1);e=r,i=this.resolutions_[r],r==this.resolutions_.length-1?n=2:n=i/this.resolutions_[r+1]}else i=this.maxResolution_,n=this.zoomFactor_;return e+Math.log(i/t)/Math.log(n)}getResolutionForZoom(t){if(this.resolutions_?.length){if(this.resolutions_.length===1)return this.resolutions_[0];const e=at(Math.floor(t),0,this.resolutions_.length-2),i=this.resolutions_[e]/this.resolutions_[e+1];return this.resolutions_[e]/Math.pow(i,at(t-e,0,1))}return this.maxResolution_/Math.pow(this.zoomFactor_,t-this.minZoom_)}fit(t,e){let i;if(it(Array.isArray(t)||typeof t.getSimplifiedGeometry=="function","Invalid extent or geometry provided as `geometry`"),Array.isArray(t)){it(!An(t),"Cannot fit empty extent provided as `geometry`");const n=je(t,this.getProjection());i=Ia(n)}else if(t.getType()==="Circle"){const n=je(t.getExtent(),this.getProjection());i=Ia(n),i.rotate(this.getRotation(),Ue(n))}else i=t;this.fitInternal(i,e)}rotatedExtentForGeometry(t){const e=this.getRotation(),i=Math.cos(e),n=Math.sin(-e),r=t.getFlatCoordinates(),o=t.getStride();let a=1/0,l=1/0,h=-1/0,c=-1/0;for(let u=0,d=r.length;u{this.dispatchEvent("sourceready")},0))),this.changed()}getFeatures(t){return this.renderer_?this.renderer_.getFeatures(t):Promise.resolve([])}getData(t){return!this.renderer_||!this.rendered?null:this.renderer_.getData(t)}isVisible(t){let e;const i=this.getMapInternal();!t&&i&&(t=i.getView()),t instanceof ae?e={viewState:t.getState(),extent:t.calculateExtent()}:e=t,!e.layerStatesArray&&i&&(e.layerStatesArray=i.getLayerGroup().getLayerStatesArray());let n;if(e.layerStatesArray){if(n=e.layerStatesArray.find(o=>o.layer===this),!n)return!1}else n=this.getLayerState();const r=this.getExtent();return Vo(n,e.viewState)&&(!r||St(r,e.extent))}getAttributions(t){if(!this.isVisible(t))return[];const e=this.getSource()?.getAttributions();if(!e)return[];const i=t instanceof ae?t.getViewStateAndExtent():t;let n=e(i);return Array.isArray(n)||(n=[n]),n}render(t,e){const i=this.getRenderer();return i.prepareFrame(t)?(this.rendered=!0,i.renderFrame(t,e)):null}unrender(){this.rendered=!1}getDeclutter(){}renderDeclutter(t,e){}renderDeferred(t){const e=this.getRenderer();e&&e.renderDeferred(t)}setMapInternal(t){t||this.unrender(),this.set(nt.MAP,t)}getMapInternal(){return this.get(nt.MAP)}setMap(t){this.mapPrecomposeKey_&&(ot(this.mapPrecomposeKey_),this.mapPrecomposeKey_=null),t||this.changed(),this.mapRenderKey_&&(ot(this.mapRenderKey_),this.mapRenderKey_=null),t&&(this.mapPrecomposeKey_=$(t,Ut.PRECOMPOSE,this.handlePrecompose_,this),this.mapRenderKey_=$(this,U.CHANGE,t.render,t),this.changed())}handlePrecompose_(t){const e=t.frameState.layerStatesArray,i=this.getLayerState(!1);it(!e.some(n=>n.layer===i.layer),"A layer can only be added to the map once. Use either `layer.setMap()` or `map.addLayer()`, not both."),e.push(i)}setSource(t){this.set(nt.SOURCE,t)}getRenderer(){return this.renderer_||(this.renderer_=this.createRenderer()),this.renderer_}hasRenderer(){return!!this.renderer_}createRenderer(){return null}clearRenderer(){this.renderer_&&(this.renderer_.dispose(),delete this.renderer_)}disposeInternal(){this.clearRenderer(),this.setSource(null),super.disposeInternal()}}function Vo(s,t){if(!s.visible)return!1;const e=t.resolution;if(e=s.maxResolution)return!1;const i=t.zoom;return i>s.minZoom&&i<=s.maxZoom}const el={RENDER_ORDER:"renderOrder"};class jh extends sr{constructor(t){t=t||{};const e=Object.assign({},t);delete e.style,delete e.renderBuffer,delete e.updateWhileAnimating,delete e.updateWhileInteracting,super(e),this.declutter_=t.declutter?String(t.declutter):void 0,this.renderBuffer_=t.renderBuffer!==void 0?t.renderBuffer:100,this.style_=null,this.styleFunction_=void 0,this.setStyle(t.style),this.updateWhileAnimating_=t.updateWhileAnimating!==void 0?t.updateWhileAnimating:!1,this.updateWhileInteracting_=t.updateWhileInteracting!==void 0?t.updateWhileInteracting:!1}getDeclutter(){return this.declutter_}getFeatures(t){return super.getFeatures(t)}getRenderBuffer(){return this.renderBuffer_}getRenderOrder(){return this.get(el.RENDER_ORDER)}getStyle(){return this.style_}getStyleFunction(){return this.styleFunction_}getUpdateWhileAnimating(){return this.updateWhileAnimating_}getUpdateWhileInteracting(){return this.updateWhileInteracting_}renderDeclutter(t,e){const i=this.getDeclutter();i in t.declutter||(t.declutter[i]=new Mh(9)),this.getRenderer().renderDeclutter(t,e)}setRenderOrder(t){this.set(el.RENDER_ORDER,t)}setStyle(t){this.style_=t===void 0?wh:t;const e=Mg(t);this.styleFunction_=t===null?void 0:af(e),this.changed()}setDeclutter(t){this.declutter_=t?String(t):void 0,this.changed()}}function Mg(s){if(s===void 0)return wh;if(!s)return null;if(typeof s=="function"||s instanceof wt)return s;if(!Array.isArray(s))return Va([s]);if(s.length===0)return[];const t=s.length,e=s[0];if(e instanceof wt){const n=new Array(t);for(let r=0;r0;)this.pop()}extend(t){for(let e=0,i=t.length;ethis.getLength())throw new Error("Index out of bounds: "+t);this.unique_&&this.assertUnique_(e),this.array_.splice(t,0,e),this.updateLength_(),this.dispatchEvent(new ls(Ot.ADD,e,t))}pop(){return this.removeAt(this.getLength()-1)}push(t){const e=this.getLength();return this.insertAt(e,t),this.getLength()}remove(t){const e=this.array_;for(let i=0,n=e.length;i=this.getLength())return;const e=this.array_[t];return this.array_.splice(t,1),this.updateLength_(),this.dispatchEvent(new ls(Ot.REMOVE,e,t)),e}setAt(t,e){const i=this.getLength();if(t>=i){this.insertAt(t,e);return}if(t<0)throw new Error("Index out of bounds: "+t);this.unique_&&this.assertUnique_(e,t);const n=this.array_[t];this.array_[t]=e,this.dispatchEvent(new ls(Ot.REMOVE,n,t)),this.dispatchEvent(new ls(Ot.ADD,e,t))}updateLength_(){this.set(il.LENGTH,this.array_.length)}assertUnique_(t,e){const i=this.array_;for(let n=0,r=i.length;n=200&&a.status<300){const h=t.getType();try{let c;h=="text"||h=="json"?c=a.responseText:h=="xml"?c=a.responseXML||a.responseText:h=="arraybuffer"&&(c=a.response),c?r(t.readFeatures(c,{extent:e,featureProjection:n}),t.readProjection(c)):o()}catch{o()}}else o()},a.onerror=o,a.send()}function nl(s,t){return function(e,i,n,r,o){Lg(s,t,e,i,n,(a,l)=>{this.addFeatures(a),r!==void 0&&r(a)},()=>{this.changed(),o!==void 0&&o()})}}function Ag(s,t){return[[-1/0,-1/0,1/0,1/0]]}class Mn extends Jl{constructor(t){super(),this.geometries_=t,this.changeEventsKeys_=[],this.listenGeometriesChange_()}unlistenGeometriesChange_(){this.changeEventsKeys_.forEach(ot),this.changeEventsKeys_.length=0}listenGeometriesChange_(){const t=this.geometries_;for(let e=0,i=t.length;et.clone())}const sl=te();class Gt{constructor(t,e,i,n,r,o){this.styleFunction,this.extent_,this.id_=o,this.type_=t,this.flatCoordinates_=e,this.flatInteriorPoints_=null,this.flatMidpoints_=null,this.ends_=i||null,this.properties_=r,this.squaredTolerance_,this.stride_=n,this.simplifiedGeometry_}get(t){return this.properties_[t]}getExtent(){return this.extent_||(this.extent_=this.type_==="Point"?Il(this.flatCoordinates_):_o(this.flatCoordinates_,0,this.flatCoordinates_.length,2)),this.extent_}getFlatInteriorPoint(){if(!this.flatInteriorPoints_){const t=Ue(this.getExtent());this.flatInteriorPoints_=Fo(this.flatCoordinates_,0,this.ends_,2,t,0)}return this.flatInteriorPoints_}getFlatInteriorPoints(){if(!this.flatInteriorPoints_){const t=_d(this.flatCoordinates_,this.ends_),e=hh(this.flatCoordinates_,0,t,2);this.flatInteriorPoints_=ah(this.flatCoordinates_,0,t,2,e)}return this.flatInteriorPoints_}getFlatMidpoint(){return this.flatMidpoints_||(this.flatMidpoints_=Is(this.flatCoordinates_,0,this.flatCoordinates_.length,2,.5)),this.flatMidpoints_}getFlatMidpoints(){if(!this.flatMidpoints_){this.flatMidpoints_=[];const t=this.flatCoordinates_;let e=0;const i=this.ends_;for(let n=0,r=i.length;n{if(t===this.squaredTolerance_)return this.simplifiedGeometry_;this.simplifiedGeometry_=this.clone(),e&&this.simplifiedGeometry_.applyTransform(e);const i=this.simplifiedGeometry_.getFlatCoordinates();let n;switch(this.type_){case"LineString":i.length=Hs(i,0,this.simplifiedGeometry_.flatCoordinates_.length,this.simplifiedGeometry_.stride_,t,i,0),n=[i.length];break;case"MultiLineString":n=[],i.length=sh(i,0,this.simplifiedGeometry_.ends_,this.simplifiedGeometry_.stride_,t,i,0,n);break;case"Polygon":n=[],i.length=ko(i,0,this.simplifiedGeometry_.ends_,this.simplifiedGeometry_.stride_,Math.sqrt(t),i,0,n);break}return n&&(this.simplifiedGeometry_=new Gt(this.type_,i,n,2,this.properties_,this.id_)),this.squaredTolerance_=t,this.simplifiedGeometry_}),this}}Gt.prototype.getFlatCoordinates=Gt.prototype.getOrientedFlatCoordinates;class rl{constructor(t){this.rbush_=new Mh(t),this.items_={}}insert(t,e){const i={minX:t[0],minY:t[1],maxX:t[2],maxY:t[3],value:e};this.rbush_.insert(i),this.items_[Q(e)]=i}load(t,e){const i=new Array(e.length);for(let n=0,r=e.length;ns):null}const Wt={ADDFEATURE:"addfeature",CHANGEFEATURE:"changefeature",CLEAR:"clear",REMOVEFEATURE:"removefeature",FEATURESLOADSTART:"featuresloadstart",FEATURESLOADEND:"featuresloadend",FEATURESLOADERROR:"featuresloaderror"};class Fe extends fe{constructor(t,e,i){super(t),this.feature=e,this.features=i}}class dn extends zh{constructor(t){t=t||{},super({attributions:t.attributions,interpolate:!0,projection:void 0,state:"ready",wrapX:t.wrapX!==void 0?t.wrapX:!0}),this.on,this.once,this.un,this.loader_=En,this.format_=t.format||null,this.overlaps_=t.overlaps===void 0?!0:t.overlaps,this.url_=t.url,t.loader!==void 0?this.loader_=t.loader:this.url_!==void 0&&(it(this.format_,"`format` must be set when `url` is set"),this.loader_=nl(this.url_,this.format_)),this.strategy_=t.strategy!==void 0?t.strategy:Ag;const e=t.useSpatialIndex!==void 0?t.useSpatialIndex:!0;this.featuresRtree_=e?new rl:null,this.loadedExtentsRtree_=new rl,this.loadingExtentsCount_=0,this.nullGeometryFeatures_={},this.idIndex_={},this.uidIndex_={},this.featureChangeKeys_={},this.featuresCollection_=null;let i,n;Array.isArray(t.features)?n=t.features:t.features&&(i=t.features,n=i.getArray()),!e&&i===void 0&&(i=new Zt(n)),n!==void 0&&this.addFeaturesInternal(n),i!==void 0&&this.bindFeaturesCollection_(i)}addFeature(t){this.addFeatureInternal(t),this.changed()}addFeatureInternal(t){const e=Q(t);if(!this.addToIndex_(e,t)){this.featuresCollection_&&this.featuresCollection_.remove(t);return}this.setupChangeEvents_(e,t);const i=t.getGeometry();if(i){const n=i.getExtent();this.featuresRtree_&&this.featuresRtree_.insert(n,t)}else this.nullGeometryFeatures_[e]=t;this.dispatchEvent(new Fe(Wt.ADDFEATURE,t))}setupChangeEvents_(t,e){e instanceof Gt||(this.featureChangeKeys_[t]=[$(e,U.CHANGE,this.handleFeatureChange_,this),$(e,Fi.PROPERTYCHANGE,this.handleFeatureChange_,this)])}addToIndex_(t,e){let i=!0;if(e.getId()!==void 0){const n=String(e.getId());if(!(n in this.idIndex_))this.idIndex_[n]=e;else if(e instanceof Gt){const r=this.idIndex_[n];r instanceof Gt?Array.isArray(r)?r.push(e):this.idIndex_[n]=[r,e]:i=!1}else i=!1}return i&&(it(!(t in this.uidIndex_),"The passed `feature` was already added to the source"),this.uidIndex_[t]=e),i}addFeatures(t){this.addFeaturesInternal(t),this.changed()}addFeaturesInternal(t){const e=[],i=[],n=[];for(let r=0,o=t.length;r{e||(e=!0,this.addFeature(i.element),e=!1)}),t.addEventListener(Ot.REMOVE,i=>{e||(e=!0,this.removeFeature(i.element),e=!1)}),this.featuresCollection_=t}clear(t){if(t){for(const i in this.featureChangeKeys_)this.featureChangeKeys_[i].forEach(ot);this.featuresCollection_||(this.featureChangeKeys_={},this.idIndex_={},this.uidIndex_={})}else if(this.featuresRtree_){this.featuresRtree_.forEach(i=>{this.removeFeatureInternal(i)});for(const i in this.nullGeometryFeatures_)this.removeFeatureInternal(this.nullGeometryFeatures_[i])}this.featuresCollection_&&this.featuresCollection_.clear(),this.featuresRtree_&&this.featuresRtree_.clear(),this.nullGeometryFeatures_={};const e=new Fe(Wt.CLEAR);this.dispatchEvent(e),this.changed()}forEachFeature(t){if(this.featuresRtree_)return this.featuresRtree_.forEach(t);this.featuresCollection_&&this.featuresCollection_.forEach(t)}forEachFeatureAtCoordinateDirect(t,e){const i=[t[0],t[1],t[0],t[1]];return this.forEachFeatureInExtent(i,function(n){const r=n.getGeometry();if(r instanceof Gt||r.intersectsCoordinate(t))return e(n)})}forEachFeatureInExtent(t,e){if(this.featuresRtree_)return this.featuresRtree_.forEachInExtent(t,e);this.featuresCollection_&&this.featuresCollection_.forEach(e)}forEachFeatureIntersectingExtent(t,e){return this.forEachFeatureInExtent(t,function(i){const n=i.getGeometry();if(n instanceof Gt||n.intersectsExtent(t)){const r=e(i);if(r)return r}})}getFeaturesCollection(){return this.featuresCollection_}getFeatures(){let t;return this.featuresCollection_?t=this.featuresCollection_.getArray().slice(0):this.featuresRtree_&&(t=this.featuresRtree_.getAll(),si(this.nullGeometryFeatures_)||he(t,Object.values(this.nullGeometryFeatures_))),t}getFeaturesAtCoordinate(t){const e=[];return this.forEachFeatureAtCoordinateDirect(t,function(i){e.push(i)}),e}getFeaturesInExtent(t,e){if(this.featuresRtree_){if(!(e&&e.canWrapX()&&this.getWrapX()))return this.featuresRtree_.getInExtent(t);const n=Al(t,e);return[].concat(...n.map(r=>this.featuresRtree_.getInExtent(r)))}return this.featuresCollection_?this.featuresCollection_.getArray().slice(0):[]}getClosestFeatureToCoordinate(t,e){const i=t[0],n=t[1];let r=null;const o=[NaN,NaN];let a=1/0;const l=[-1/0,-1/0,1/0,1/0];return e=e||Di,this.featuresRtree_.forEachInExtent(l,function(h){if(e(h)){const c=h.getGeometry(),u=a;if(a=c instanceof Gt?0:c.closestPointXY(i,n,o,a),a{--this.loadingExtentsCount_,this.dispatchEvent(new Fe(Wt.FEATURESLOADEND,void 0,c))},()=>{--this.loadingExtentsCount_,this.dispatchEvent(new Fe(Wt.FEATURESLOADERROR))}),n.insert(l,{extent:l.slice()}))}this.loading=this.loader_.length<4?!1:this.loadingExtentsCount_>0}refresh(){this.clear(!0),this.loadedExtentsRtree_.clear(),super.refresh()}removeLoadedExtent(t){const e=this.loadedExtentsRtree_,i=e.forEachInExtent(t,function(n){if(pn(n.extent,t))return n});i&&e.remove(i)}removeFeatures(t){let e=!1;for(let i=0,n=t.length;i0}}else if(t.type==et.POINTERDOWN){const i=this.handleDownEvent(t);this.handlingDownUpSequence=i,e=this.stopDown(i)}else t.type==et.POINTERMOVE&&this.handleMoveEvent(t);return!e}handleMoveEvent(t){}handleUpEvent(t){return!1}stopDown(t){return t}updateTrackedPointers_(t){t.activePointers&&(this.targetPointers=t.activePointers)}}function $o(s){const t=s.length;let e=0,i=0;for(let n=0;n=e?s[t-e]:s[t]}function bi(s,t){const e=s.length;let i=Math.floor(t);const n=t-i;i>=e?i-=e:i<0&&(i+=e);let r=i+1;r>=e&&(r-=e);const o=s[i],a=o[0],l=o[1],h=s[r],c=h[0]-a,u=h[1]-l;return[a+c*n,l+u*n]}const hs={index:-1,endIndex:NaN,closestTargetDistance:1/0};function kg(s,t,e,i){const n=s[0],r=s[1];let o=1/0,a=-1,l=NaN;for(let u=0;ud.startIndex?_d.startIndex&&(_-=f.length)),l=_,a=u)}const h=t.targets[a];let c=h.ring;if(t.targetIndex===a&&c){const u=bi(h.coordinates,l),d=e.getPixelFromCoordinate(u),f=e.getPixelFromCoordinate(t.startCoord);kl(d,f)>i&&(c=!1)}if(c){const u=h.coordinates,d=u.length,f=h.startIndex,g=l;if(fo){const l=bi(s,i),h=bi(s,n);return us(l,h)}let a=0;if(i{const l=o||new Ks([NaN,NaN]),h=qt(r[0]),c=Ol(h,qt(r[r.length-1]));return l.setCenterAndRadius(h,Math.sqrt(c),this.geometryLayout_),l};else{let r;n==="Point"?r=Se:n==="LineString"?r=ce:n==="Polygon"&&(r=ue),i=(o,a,l)=>(a?n==="Polygon"?o[0].length?a.setCoordinates([o[0].concat([o[0][0]])],this.geometryLayout_):a.setCoordinates([],this.geometryLayout_):a.setCoordinates(o,this.geometryLayout_):a=new r(o,this.geometryLayout_),a)}}this.geometryFunction_=i,this.dragVertexDelay_=t.dragVertexDelay!==void 0?t.dragVertexDelay:500,this.finishCoordinate_=null,this.sketchFeature_=null,this.sketchPoint_=null,this.sketchCoords_=null,this.sketchLine_=null,this.sketchLineCoords_=null,this.squaredClickTolerance_=t.clickTolerance?t.clickTolerance*t.clickTolerance:36,this.overlay_=new un({source:new dn({useSpatialIndex:!1,wrapX:t.wrapX?t.wrapX:!1}),style:t.style?t.style:Dg(),updateWhileInteracting:!0}),this.geometryName_=t.geometryName,this.condition_=t.condition?t.condition:To,this.freehandCondition_,t.freehand?this.freehandCondition_=ys:this.freehandCondition_=t.freehandCondition?t.freehandCondition:Qr,this.traceCondition_,this.setTrace(t.trace||!1),this.traceState_={active:!1},this.traceSource_=t.traceSource||t.source||null,this.addChangeListener(ho.ACTIVE,this.updateState_)}setTrace(t){let e;t?t===!0?e=ys:e=t:e=Zu,this.traceCondition_=e}setMap(t){super.setMap(t),this.updateState_()}setFreehand(t){this.freehand_=t,this.freehand_?this.freehandCondition_=ys:this.freehandCondition_=this.options_&&this.options_.freehandCondition?this.options_.freehandCondition:Qr}getOverlay(){return this.overlay_}getFreehand(){return this.freehand_}handleEvent(t){t.originalEvent.type===U.CONTEXTMENU&&t.originalEvent.preventDefault(),this.freehand_=this.mode_!=="Point"&&this.freehandCondition_(t);let e=t.type===et.POINTERMOVE,i=!0;return!this.freehand_&&this.lastDragTime_&&t.type===et.POINTERDRAG&&(Date.now()-this.lastDragTime_>=this.dragVertexDelay_?(this.downPx_=t.pixel,this.shouldHandle_=!this.freehand_,e=!0):this.lastDragTime_=void 0,this.shouldHandle_&&this.downTimeout_!==void 0&&(clearTimeout(this.downTimeout_),this.downTimeout_=void 0)),this.freehand_&&t.type===et.POINTERDRAG&&this.sketchFeature_!==null?(this.addToDrawing_(t.coordinate),i=!1):this.freehand_&&t.type===et.POINTERDOWN?i=!1:e&&this.getPointerCount()<2?(i=t.type===et.POINTERMOVE,i&&this.freehand_?(this.handlePointerMove_(t),this.shouldHandle_&&t.originalEvent.preventDefault()):(t.originalEvent.pointerType==="mouse"||t.type===et.POINTERDRAG&&this.downTimeout_===void 0)&&this.handlePointerMove_(t)):t.type===et.DBLCLICK&&(i=!1),super.handleEvent(t)&&i}handleDownEvent(t){return this.shouldHandle_=!this.freehand_,this.freehand_?(this.downPx_=t.pixel,this.finishCoordinate_||this.startDrawing_(t.coordinate),!0):this.condition_(t)?(this.lastDragTime_=Date.now(),this.downTimeout_=setTimeout(()=>{this.handlePointerMove_(new xe(et.POINTERMOVE,t.map,t.originalEvent,!1,t.frameState))},this.dragVertexDelay_),this.downPx_=t.pixel,!0):(this.lastDragTime_=void 0,!1)}deactivateTrace_(){this.traceState_={active:!1}}toggleTraceState_(t){if(!this.traceSource_||!this.traceCondition_(t))return;if(this.traceState_.active){this.deactivateTrace_();return}const e=this.getMap(),i=e.getCoordinateFromPixel([t.pixel[0]-this.snapTolerance_,t.pixel[1]+this.snapTolerance_]),n=e.getCoordinateFromPixel([t.pixel[0]+this.snapTolerance_,t.pixel[1]-this.snapTolerance_]),r=Wr([i,n]),o=this.traceSource_.getFeaturesInExtent(r);if(o.length===0)return;const a=Fg(t.coordinate,o);a.length&&(this.traceState_={active:!0,startCoord:t.coordinate.slice(),targets:a,targetIndex:-1})}addOrRemoveTracedCoordinates_(t,e){const i=t.startIndex<=t.endIndex,n=t.startIndex<=e;i===n?i&&e>t.endIndex||!i&&et.endIndex)&&this.removeTracedCoordinates_(e,t.endIndex):(this.removeTracedCoordinates_(t.startIndex,t.endIndex),this.addTracedCoordinates_(t,t.startIndex,e))}removeTracedCoordinates_(t,e){if(t===e)return;let i=0;if(t0&&this.removeLastPoints_(i)}addTracedCoordinates_(t,e,i){if(e===i)return;const n=[];if(e=o;--a)n.push(Ii(t.coordinates,a))}n.length&&this.appendCoordinates(n)}updateTrace_(t){const e=this.traceState_;if(!e.active)return;if(e.targetIndex===-1){const a=t.map.getPixelFromCoordinate(e.startCoord);if(kl(a,t.pixel)this.squaredClickTolerance_:o<=this.squaredClickTolerance_,!this.shouldHandle_)return}if(!this.finishCoordinate_){this.createOrUpdateSketchPoint_(t.coordinate.slice());return}this.updateTrace_(t),this.modifyDrawing_(t.coordinate)}atFinish_(t,e){let i=!1;if(this.sketchFeature_){let n=!1,r=[this.finishCoordinate_];const o=this.mode_;if(o==="Point")i=!0;else if(o==="Circle")i=this.sketchCoords_.length===2;else if(o==="LineString")n=!e&&this.sketchCoords_.length>this.minPoints_;else if(o==="Polygon"){const a=this.sketchCoords_;n=a[0].length>this.minPoints_,r=[a[0][0],a[0][a[0].length-2]],e?r=[a[0][0]]:r=[a[0][0],a[0][a[0].length-2]]}if(n){const a=this.getMap();for(let l=0,h=r.length;l=this.maxPoints_&&(this.freehand_?r.pop():n=!0),r.push(t.slice()),this.geometryFunction_(r,e,i)):o==="Polygon"&&(r=this.sketchCoords_[0],r.length>=this.maxPoints_&&(this.freehand_?r.pop():n=!0),r.push(t.slice()),n&&(this.finishCoordinate_=r[0]),this.geometryFunction_(this.sketchCoords_,e,i)),this.createOrUpdateSketchPoint_(t.slice()),this.updateSketchFeatures_(),n?this.finishDrawing():this.sketchFeature_}removeLastPoints_(t){if(!this.sketchFeature_)return;const e=this.sketchFeature_.getGeometry(),i=this.getMap().getView().getProjection(),n=this.mode_;for(let r=0;r=2){this.finishCoordinate_=o[o.length-2].slice();const a=this.finishCoordinate_.slice();o[o.length-1]=a,this.createOrUpdateSketchPoint_(a)}this.geometryFunction_(o,e,i),e.getType()==="Polygon"&&this.sketchLine_&&this.createOrUpdateCustomSketchLine_(e)}else if(n==="Polygon"){o=this.sketchCoords_[0],o.splice(-2,1);const a=this.sketchLine_.getGeometry();if(o.length>=2){const l=o[o.length-2].slice();o[o.length-1]=l,this.createOrUpdateSketchPoint_(l)}a.setCoordinates(o),this.geometryFunction_(this.sketchCoords_,e,i)}if(o.length===1){this.abortDrawing();break}}this.updateSketchFeatures_()}removeLastPoint(){this.removeLastPoints_(1)}finishDrawing(){const t=this.abortDrawing_();if(!t)return null;let e=this.sketchCoords_;const i=t.getGeometry(),n=this.getMap().getView().getProjection();return this.mode_==="LineString"?(e.pop(),this.geometryFunction_(e,i,n)):this.mode_==="Polygon"&&(e[0].pop(),this.geometryFunction_(e,i,n),e=i.getCoordinates()),this.type_==="MultiPoint"?t.setGeometry(new Gn([e])):this.type_==="MultiLineString"?t.setGeometry(new Ni([e])):this.type_==="MultiPolygon"&&t.setGeometry(new Gi([e])),this.dispatchEvent(new gs(fs.DRAWEND,t)),this.features_&&this.features_.push(t),this.source_&&this.source_.addFeature(t),t}abortDrawing_(){this.finishCoordinate_=null;const t=this.sketchFeature_;return this.sketchFeature_=null,this.sketchPoint_=null,this.sketchLine_=null,this.overlay_.getSource().clear(!0),this.deactivateTrace_(),t}abortDrawing(){const t=this.abortDrawing_();t&&this.dispatchEvent(new gs(fs.DRAWABORT,t))}appendCoordinates(t){const e=this.mode_,i=!this.sketchFeature_;i&&this.startDrawing_(t[0]);let n;if(e==="LineString"||e==="Circle")n=this.sketchCoords_;else if(e==="Polygon")n=this.sketchCoords_&&this.sketchCoords_.length?this.sketchCoords_[0]:[];else return;i&&n.shift(),n.pop();for(let o=0;o{},scale:15e5,setScale:()=>{},coordinates:[-.187,5.6037],setCoordinates:()=>{},activeInteraction:"pan",setActiveInteraction:()=>{}});function Yn(){return G.useContext(Uh)}const Gg=Xs([-.187,5.6037]),jg=12;function zg({theme:s}){const t=s==="dark",{map:e,drawLayer:i,activeInteraction:n,setActiveInteraction:r}=Yn(),o=G.useRef(null),a=G.useRef(null),l=G.useRef(null),h=G.useRef(null),c=[{id:"pan",icon:Cc,label:"Pan",description:"Pan / navigate the map",shortcut:"P",group:"navigate"},{id:"zoom-in",icon:Wc,label:"Zoom In",description:"Zoom into map view (+)",shortcut:"+",group:"navigate"},{id:"zoom-out",icon:Uc,label:"Zoom Out",description:"Zoom out of map view (-)",shortcut:"-",group:"navigate"},{id:"draw",icon:Ac,label:"Draw Polygon",description:"Sketch planning polygons on the map",shortcut:"D",Symbol:ac,group:"draw"},{id:"measure-line",icon:Dc,label:"Measure Distance",description:"Measure distances on the map (ol-ext)",shortcut:"M",Symbol:yl,group:"draw"},{id:"measure-area",icon:Gc,label:"Measure Area",description:"Measure area of a polygon (ol-ext)",shortcut:"A",Symbol:lc,group:"draw"},{id:"reset",icon:kc,label:"Reset View",description:"Return to Accra overview",shortcut:"R",Symbol:hc,group:"meta"}],u=()=>{e&&(o.current&&(e.removeInteraction(o.current),o.current=null),a.current&&(e.removeInteraction(a.current),a.current=null),l.current&&(e.removeOverlay(l.current),l.current=null),h.current&&(h.current.remove(),h.current=null))},d=()=>{if(!e)return;const g=document.createElement("div");g.className="ol-tooltip ol-tooltip-measure",g.style.cssText=` + background: rgba(30,26,75,0.92); + color: #fff; + padding: 4px 8px; + border-radius: 6px; + font-size: 12px; + font-family: "Exo", sans-serif; + white-space: nowrap; + pointer-events: none; + border: 1px solid rgba(255,255,255,0.2); + `,h.current=g;const _=new Yh({element:g,offset:[0,-15],positioning:"bottom-center",stopEvent:!1});e.addOverlay(_),l.current=_};G.useEffect(()=>{if(!(!e||!i)){switch(u(),n){case"draw":{const g=new Or({source:i.getSource(),type:"Polygon"});e.addInteraction(g),o.current=g;break}case"measure-line":{d();const g=new Or({source:i.getSource(),type:"LineString"});g.on("drawstart",()=>{h.current&&(h.current.textContent="Click to continue drawing")}),g.on("drawend",_=>{const m=_.feature.getGeometry(),p=zl(m,{projection:"EPSG:3857"}),x=p>1e3?`${(p/1e3).toFixed(2)} km`:`${p.toFixed(0)} m`;h.current&&(h.current.textContent=`Distance: ${x}`),console.info("[LUPMIS] Distance measurement:",x)}),e.addInteraction(g),e.on("pointermove",_=>{l.current&&l.current.setPosition(_.coordinate)}),a.current=g;break}case"measure-area":{d();const g=new Or({source:i.getSource(),type:"Polygon"});g.on("drawstart",()=>{h.current&&(h.current.textContent="Click to continue drawing")}),g.on("drawend",_=>{const m=_.feature.getGeometry(),p=Xl(m,{projection:"EPSG:3857"}),x=p>1e6?`${(p/1e6).toFixed(2)} km²`:`${p.toFixed(0)} m²`;h.current&&(h.current.textContent=`Area: ${x}`),console.info("[LUPMIS] Area measurement:",x)}),e.addInteraction(g),e.on("pointermove",_=>{l.current&&l.current.setPosition(_.coordinate)}),a.current=g;break}}return()=>{u()}}},[n,e,i]),G.useEffect(()=>{if(!e)return;const g=_=>{if(_.target.tagName!=="INPUT")switch(_.key){case"+":case"=":f("zoom-in");break;case"-":f("zoom-out");break;case"p":case"P":f("pan");break;case"d":case"D":f("draw");break;case"m":case"M":f("measure-line");break;case"a":case"A":f("measure-area");break;case"r":case"R":f("reset");break;case"Escape":f("pan");break}};return window.addEventListener("keydown",g),()=>window.removeEventListener("keydown",g)},[e]);const f=g=>{if(!e)return;const _=e.getView();if(g==="zoom-in"){const m=_.getZoom()??12;_.animate({zoom:Math.min(m+1,19),duration:300});return}if(g==="zoom-out"){const m=_.getZoom()??12;_.animate({zoom:Math.max(m-1,8),duration:300});return}if(g==="reset"){_.animate({center:Gg,zoom:jg,duration:600}),r("pan");return}r(g)};return C.jsxs("div",{className:` + rounded-xl shadow-lg flex flex-col gap-1.5 p-2 backdrop-blur-sm transition-colors + bg-card/95 border border-border + `,role:"toolbar","aria-label":"Map controls",children:[c.map(g=>{const _=g.icon,m=n===g.id,p=g.Symbol,x=c[c.indexOf(g)-1],w=x&&x.group!==g.group;return C.jsxs(cc.Fragment,{children:[w&&C.jsx("div",{className:"h-px bg-border mx-1 my-0.5"}),C.jsx(ua,{content:`${g.label}${g.shortcut?` (${g.shortcut})`:""}`,position:"right",children:C.jsxs("button",{onClick:()=>f(g.id),className:` + w-10 h-10 rounded-lg flex items-center justify-center + transition-all relative group + ${m?"bg-primary text-primary-foreground shadow-md scale-105":"text-foreground hover:bg-accent hover:text-accent-foreground"} + `,"aria-label":g.label,"aria-pressed":m,children:[m&&p&&C.jsx("div",{className:"absolute inset-0 flex items-center justify-center opacity-10 pointer-events-none",children:C.jsx(p,{size:32,color:"currentColor"})}),C.jsx(_,{size:18,className:"relative z-10"}),m&&C.jsx("div",{className:"absolute -bottom-0.5 left-1/2 -translate-x-1/2 w-5 h-0.5 bg-brand-orange-warm rounded-full"})]})})]},g.id)}),n==="draw"&&C.jsxs(C.Fragment,{children:[C.jsx("div",{className:"h-px bg-border mx-1 my-0.5"}),C.jsx(ua,{content:"Clear sketches (C)",position:"right",children:C.jsx("button",{onClick:()=>{i?.getSource()?.clear()},className:"w-10 h-10 rounded-lg flex items-center justify-center text-destructive hover:bg-destructive/10 transition-all","aria-label":"Clear drawn features",children:C.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:C.jsx("path",{d:"M3 6h18M19 6l-1 14H6L5 6M10 11v6M14 11v6M9 6V4h6v2"})})})})]})]})}const Xg=[{id:-1,title:"Parcel GH-0345-22",subtitle:"Tema Industrial Area, Ref Zone Z-001",type:"parcel",lat:5.68,lon:-.045},{id:-2,title:"Parcel GH-1102-19",subtitle:"Accra CBD, Ref Zone Z-002",type:"parcel",lat:5.56,lon:-.19},{id:-3,title:"Parcel GH-0871-23",subtitle:"Spintex Residential, Ref Zone Z-003",type:"parcel",lat:5.63,lon:-.09}];function Wg(s,t){const[e,i]=G.useState(s);return G.useEffect(()=>{const n=setTimeout(()=>i(s),t);return()=>clearTimeout(n)},[s,t]),e}function Yg({theme:s,onOpenChange:t}){const{map:e}=Yn(),[i,n]=G.useState(""),[r,o]=G.useState([]),[a,l]=G.useState(!1),[h,c]=G.useState(!1),[u,d]=G.useState(-1),f=G.useRef(null),g=G.useRef(null),_=Wg(i,350),m=G.useCallback(async E=>{if(!E.trim()||E.trim().length<2){o([]);return}g.current&&g.current.abort(),g.current=new AbortController;const T=Xg.filter(M=>M.title.toLowerCase().includes(E.toLowerCase())||M.subtitle.toLowerCase().includes(E.toLowerCase()));l(!0);try{const M=`https://nominatim.openstreetmap.org/search?q=${encodeURIComponent(E+" Ghana")}&format=json&limit=5&countrycodes=gh&addressdetails=0`,S=(await(await fetch(M,{signal:g.current.signal,headers:{"Accept-Language":"en"}})).json()).map(A=>({id:A.place_id,title:A.display_name.split(",")[0].trim(),subtitle:A.display_name.split(",").slice(1,3).join(",").trim(),type:"location",lat:parseFloat(A.lat),lon:parseFloat(A.lon)}));o([...T,...S])}catch(M){M.name!=="AbortError"&&o(T)}finally{l(!1)}},[]);G.useEffect(()=>{m(_)},[_,m]);const p=E=>{e&&(e.getView().animate({center:Xs([E.lon,E.lat]),zoom:E.type==="parcel"?16:14,duration:800}),n(E.title),o([]),t(!1),c(!1))},x=E=>{r.length&&(E.key==="ArrowDown"?(E.preventDefault(),d(T=>Math.min(T+1,r.length-1))):E.key==="ArrowUp"?(E.preventDefault(),d(T=>Math.max(T-1,0))):E.key==="Enter"&&u>=0?(E.preventDefault(),p(r[u])):E.key==="Escape"&&(o([]),c(!1),t(!1)))},w=h&&(r.length>0||a||i.length>=2&&!a),y={location:{label:"Location",color:"bg-brand-green-bright/10 text-brand-green-bright"},place:{label:"Place",color:"bg-primary/10 text-primary"},parcel:{label:"Parcel ID",color:"bg-brand-orange-warm/10 text-brand-orange-warm"}};return C.jsxs("div",{className:"w-80",role:"search",children:[C.jsxs("div",{className:` + rounded-xl shadow-lg flex items-center backdrop-blur-sm transition-all + ${h?"ring-2 ring-primary ring-offset-2 ring-offset-background":""} + bg-card/95 border border-border + `,children:[C.jsx("div",{className:"pl-3 flex-shrink-0",children:a?C.jsx(fa,{size:18,className:"text-primary animate-spin"}):C.jsx(yl,{size:20,color:"var(--brand-blue-strong)"})}),C.jsx("input",{ref:f,type:"text",value:i,onChange:E=>{n(E.target.value),t(!0)},onFocus:()=>{c(!0),t(!0)},onBlur:()=>setTimeout(()=>c(!1),180),onKeyDown:x,placeholder:"Search location or parcel ID…",className:` + flex-1 px-3 py-3 bg-transparent outline-none + text-[length:var(--text-sm)] font-[family:var(--font-body)] + text-foreground placeholder:text-muted-foreground + `,"aria-label":"Search locations and parcels","aria-expanded":w,"aria-controls":"search-results","aria-autocomplete":"list"}),i&&C.jsx("button",{onClick:()=>{n(""),o([]),f.current?.focus()},className:"p-2 text-muted-foreground hover:text-foreground transition-colors","aria-label":"Clear search",children:C.jsx(xl,{size:14})}),C.jsx("button",{onClick:()=>m(i),className:"w-11 h-11 flex items-center justify-center text-primary hover:bg-accent rounded-r-xl transition-colors flex-shrink-0","aria-label":"Submit search",children:C.jsx(gc,{size:18})})]}),w&&C.jsxs("div",{id:"search-results",className:` + mt-2 rounded-xl shadow-lg overflow-hidden backdrop-blur-sm + bg-card/95 border border-border + `,role:"listbox","aria-label":"Search results",children:[a&&r.length===0&&C.jsxs("div",{className:"px-4 py-3 flex items-center gap-2 text-muted-foreground",children:[C.jsx(fa,{size:14,className:"animate-spin"}),C.jsx("span",{className:"text-[length:var(--text-sm)]",children:"Searching Nominatim…"})]}),!a&&i.length>=2&&r.length===0&&C.jsxs("div",{className:"px-4 py-4 text-center",children:[C.jsxs("p",{className:"text-muted-foreground text-[length:var(--text-sm)]",children:['No results for "',i,'"']}),C.jsx("p",{className:"text-muted-foreground text-[length:var(--text-xs)] mt-1",children:"Try a district, city, or parcel reference"})]}),r.map((E,T)=>{const M=u===T,b=E.type==="parcel"?Pc:wl,R=y[E.type]??y.location;return C.jsx("div",{role:"option","aria-selected":M,onMouseEnter:()=>d(T),onMouseDown:()=>p(E),className:` + px-4 py-3 cursor-pointer transition-all + ${M?"bg-accent":"hover:bg-accent/50"} + ${T!==r.length-1?"border-b border-border":""} + `,children:C.jsxs("div",{className:"flex items-start gap-3",children:[C.jsx("div",{className:`mt-0.5 flex-shrink-0 ${M?"text-primary":"text-muted-foreground"}`,children:C.jsx(b,{size:16})}),C.jsxs("div",{className:"flex-1 min-w-0",children:[C.jsx("div",{className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-medium)] text-foreground truncate",children:E.title}),C.jsxs("div",{className:"flex items-center gap-1.5 mt-0.5",children:[C.jsx("span",{className:`text-[length:var(--text-xs)] px-1.5 py-0.5 rounded-full ${R.color}`,children:R.label}),E.subtitle&&C.jsx("span",{className:"text-[length:var(--text-xs)] text-muted-foreground truncate",children:E.subtitle})]})]})]})},E.id)}),r.length>0&&C.jsx("div",{className:"px-4 py-2 border-t border-border flex items-center justify-between",children:C.jsxs("span",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:[r.length," result",r.length!==1?"s":""," · Nominatim OSM"]})})]})]})}const _s={Zoning:"#005EB8","Land Use":"#B9D9EB",Utilities:"#FF9E1B"};function Ug({theme:s,isOpen:t,onOpenChange:e}){const i=s==="dark",{osmLayer:n,satelliteLayer:r,zoningLayer:o,landUseLayer:a,utilitiesLayer:l}=Yn(),[h,c]=G.useState("osm"),[u,d]=G.useState(!0),[f,g]=G.useState(!0),[_,m]=G.useState(!1),[p,x]=G.useState(80),w=S=>{c(S),n?.setVisible(S==="osm"),r?.setVisible(S==="satellite")},y=S=>{d(S),o?.setVisible(S)},E=S=>{g(S),a?.setVisible(S)},T=S=>{m(S),l?.setVisible(S)},M=S=>{x(S),o?.setOpacity(S/100)};G.useEffect(()=>{o&&o.setOpacity(p/100)},[o]);const b=[u,f,_].filter(Boolean).length,R=` + peer w-4 h-4 rounded border-2 border-border cursor-pointer transition-colors + focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background + `;return C.jsxs("div",{className:` + w-72 rounded-xl shadow-lg backdrop-blur-sm transition-colors + bg-card/95 border border-border + `,role:"region","aria-label":"Layer controls",children:[C.jsxs("div",{className:"px-4 py-3 flex items-center justify-between border-b border-border",children:[C.jsxs("div",{className:"flex items-center gap-2",children:[C.jsx(uc,{size:20,color:"var(--brand-blue-strong)"}),C.jsx("h3",{className:"font-[weight:var(--font-weight-semibold)] text-foreground",children:"Layers"}),C.jsx("span",{className:` + ml-1 px-1.5 py-0.5 rounded-full + bg-primary/10 text-primary + text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] + `,children:b})]}),C.jsx("button",{onClick:()=>e(!t),className:"p-1 rounded hover:bg-accent transition-colors","aria-label":t?"Collapse layers":"Expand layers","aria-expanded":t,children:t?C.jsx(xc,{size:18,className:"text-muted-foreground"}):C.jsx(dc,{size:18,className:"text-muted-foreground"})})]}),t&&C.jsxs("div",{className:"p-4 space-y-5",children:[C.jsxs("div",{children:[C.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[C.jsx(El,{size:14,color:"var(--muted-foreground)"}),C.jsx("span",{className:"text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase tracking-wider text-muted-foreground",children:"Base Map"})]}),C.jsx("div",{className:"space-y-2",children:[{id:"osm",label:"OpenStreetMap",desc:"Vector tiles"},{id:"satellite",label:"ESRI Satellite",desc:"Aerial imagery"}].map(S=>C.jsxs("label",{className:"flex items-center gap-2.5 cursor-pointer group",children:[C.jsx("input",{type:"radio",name:"basemap",checked:h===S.id,onChange:()=>w(S.id),className:R+" rounded-full",style:{accentColor:"var(--primary)"},"aria-label":`Use ${S.label}`}),C.jsxs("div",{children:[C.jsx("span",{className:"text-[length:var(--text-sm)] text-foreground group-hover:text-primary transition-colors",children:S.label}),C.jsx("span",{className:"block text-[length:var(--text-xs)] text-muted-foreground",children:S.desc})]})]},S.id))})]}),C.jsx("div",{className:"h-px bg-border"}),C.jsxs("div",{children:[C.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[C.jsx(vc,{size:14,className:"text-muted-foreground"}),C.jsx("span",{className:"text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase tracking-wider text-muted-foreground",children:"Planning Layers"})]}),C.jsxs("div",{className:"space-y-3",children:[C.jsxs("div",{children:[C.jsxs("label",{className:"flex items-center gap-2.5 cursor-pointer group",children:[C.jsxs("div",{className:"relative flex-shrink-0",children:[C.jsx("input",{type:"checkbox",checked:u,onChange:S=>y(S.target.checked),className:R,style:{accentColor:"var(--primary)"},"aria-label":"Toggle Zoning layer"}),C.jsx("span",{className:"absolute top-0.5 left-0.5 pointer-events-none",children:u?C.jsx(vl,{size:10,className:"text-primary-foreground"}):C.jsx(Rl,{size:10,className:"text-muted-foreground"})})]}),C.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[C.jsx("div",{className:"w-2.5 h-2.5 rounded-sm flex-shrink-0 border",style:{backgroundColor:`${_s.Zoning}30`,borderColor:_s.Zoning}}),C.jsx("span",{className:"text-[length:var(--text-sm)] text-foreground group-hover:text-primary transition-colors",children:"Zoning"}),C.jsx("span",{className:"ml-auto text-[length:var(--text-xs)] text-muted-foreground",children:"5 zones"})]})]}),u&&C.jsxs("div",{className:"mt-2 ml-8 p-2 bg-accent/50 rounded-lg",children:[C.jsxs("div",{className:"flex items-center justify-between mb-1",children:[C.jsx("span",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:"Opacity"}),C.jsxs("span",{className:"text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] text-primary",children:[p,"%"]})]}),C.jsx("input",{type:"range",min:"10",max:"100",value:p,onChange:S=>M(Number(S.target.value)),className:"w-full h-2 rounded-full appearance-none cursor-pointer bg-border focus:outline-none",style:{background:`linear-gradient(to right, var(--primary) 0%, var(--primary) ${p}%, var(--border) ${p}%, var(--border) 100%)`},"aria-label":"Zoning layer opacity"})]})]}),C.jsx(al,{label:"Land Use",description:"3 areas",swatch:_s["Land Use"],checked:f,onChange:E,checkboxClass:R}),C.jsx(al,{label:"Utilities",description:"5 assets",swatch:_s.Utilities,checked:_,onChange:T,checkboxClass:R})]})]}),C.jsxs("div",{className:"pt-2 border-t border-border flex items-center justify-between",children:[C.jsxs("p",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:[b," overlay",b!==1?"s":""," active"]}),C.jsx("button",{onClick:()=>{y(!0),E(!0),T(!1),M(80)},className:"text-[length:var(--text-xs)] text-primary hover:underline transition-colors",children:"Reset"})]})]})]})}function al({label:s,description:t,swatch:e,checked:i,onChange:n,checkboxClass:r}){return C.jsxs("label",{className:"flex items-center gap-2.5 cursor-pointer group",children:[C.jsxs("div",{className:"relative flex-shrink-0",children:[C.jsx("input",{type:"checkbox",checked:i,onChange:o=>n(o.target.checked),className:r,style:{accentColor:"var(--primary)"},"aria-label":`Toggle ${s} layer`}),C.jsx("span",{className:"absolute top-0.5 left-0.5 pointer-events-none",children:i?C.jsx(vl,{size:10,className:"text-primary-foreground"}):C.jsx(Rl,{size:10,className:"text-muted-foreground"})})]}),C.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[C.jsx("div",{className:"w-2.5 h-2.5 rounded-sm flex-shrink-0 border",style:{backgroundColor:`${e}30`,borderColor:e}}),C.jsx("span",{className:"text-[length:var(--text-sm)] text-foreground group-hover:text-primary transition-colors",children:s}),C.jsx("span",{className:"ml-auto text-[length:var(--text-xs)] text-muted-foreground",children:t})]})]})}const Bg={Active:{bg:"bg-success/10",text:"text-success",dot:"bg-success"},Pending:{bg:"bg-warning/10",text:"text-warning-foreground",dot:"bg-warning"},Review:{bg:"bg-primary/10",text:"text-primary",dot:"bg-primary"}},ll={industrial:"#FF9E1B",commercial:"#005EB8",residential:"#41B6A6",agricultural:"#006B3F",mixed:"#1E1A4B",transport:"#333F48",ecology:"#41B6A6",institutional:"#8B6F47",power:"#FF9E1B",water:"#41B6A6",default:"#7A7A7A"};function Zg({theme:s}){const t=s==="dark",{map:e,popupData:i,setPopupData:n}=Yn(),r=G.useRef(null),o=G.useRef(null);G.useEffect(()=>{if(!e||!r.current||o.current)return;const c=new Yh({element:r.current,autoPan:{animation:{duration:250}},positioning:"bottom-center",stopEvent:!0,offset:[0,-12]});return e.addOverlay(c),o.current=c,()=>{e.removeOverlay(c),o.current=null}},[e]),G.useEffect(()=>{if(o.current)if(i){const c=Xs([i.coordinate[0],i.coordinate[1]]);o.current.setPosition(c)}else o.current.setPosition(void 0)},[i]);const a=()=>n(null),l=ll[i?.type??"default"]??ll.default,h=i?[{label:"Parcel ID",value:i.id,icon:wl,color:"var(--brand-blue-strong)"},{label:"Zone",value:i.zone,icon:zc,color:l},{label:"Owner",value:i.owner,icon:_c,color:"var(--brand-green-bright)"},{label:"Status",value:i.status,icon:pc,color:"var(--success)",badge:!0},{label:"Area",value:i.area,icon:Tc,color:"var(--brand-orange-warm)"},{label:"Coordinates",value:`${i.coordinate[1]}°N, ${Math.abs(i.coordinate[0])}°W`,icon:bc,color:"var(--brand-blue-gray)"}]:[];return C.jsx("div",{ref:r,className:` + relative rounded-xl shadow-xl w-80 backdrop-blur-sm + transition-opacity duration-200 pointer-events-auto + ${i?"opacity-100":"opacity-0 pointer-events-none"} + bg-card/95 border border-border + `,role:"dialog","aria-labelledby":"popup-title","aria-hidden":!i,children:i&&C.jsxs(C.Fragment,{children:[C.jsxs("div",{className:"px-4 py-3 flex items-center justify-between border-b border-border",children:[C.jsxs("div",{className:"flex items-center gap-2",children:[C.jsx(El,{size:18,color:"var(--brand-blue-strong)"}),C.jsx("h3",{id:"popup-title",className:"font-[weight:var(--font-weight-semibold)] text-foreground text-[length:var(--text-sm)] max-w-[180px] truncate",title:i.name,children:i.name})]}),C.jsx("button",{onClick:a,className:"p-1.5 rounded-lg transition-colors hover:bg-accent text-muted-foreground hover:text-foreground","aria-label":"Close popup",children:C.jsx(xl,{size:16})})]}),C.jsxs("div",{className:"p-4 space-y-2",children:[C.jsx("div",{className:"flex justify-center py-1",children:C.jsx(Cl,{size:40,color:"var(--brand-blue-strong)",className:"opacity-10"})}),h.map((c,u)=>{const d=c.icon,f=Bg[c.value];return C.jsxs("div",{className:"flex items-center justify-between p-2.5 rounded-lg bg-accent/50 hover:bg-accent transition-colors",children:[C.jsxs("div",{className:"flex items-center gap-2.5",children:[C.jsx("div",{className:"p-1.5 rounded-md flex-shrink-0",style:{backgroundColor:`${c.color}18`},children:C.jsx(d,{size:13,style:{color:c.color}})}),C.jsx("span",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:c.label})]}),c.badge&&f?C.jsxs("span",{className:`flex items-center gap-1.5 px-2 py-0.5 rounded-full text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] ${f.bg} ${f.text}`,children:[C.jsx("span",{className:`w-1.5 h-1.5 rounded-full ${f.dot}`}),c.value]}):C.jsx("span",{className:"text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] text-foreground text-right max-w-[120px] truncate",children:c.value})]},u)})]}),C.jsxs("div",{className:"px-4 pb-4 flex gap-2",children:[C.jsx(da,{variant:"primary",size:"sm",className:"flex-1",onClick:()=>console.info("[LUPMIS] View full record for",i?.id),children:"Full Record"}),C.jsx(da,{variant:"ghost",size:"sm",onClick:a,children:"Close"})]}),C.jsx("div",{className:` + absolute -bottom-2 left-1/2 -translate-x-1/2 + w-4 h-4 rotate-45 border-r border-b border-border + bg-card + `})]})})}const Pn={POINTERMOVE:"pointermove",POINTERDOWN:"pointerdown",POINTEROUT:"pointerout"};class Kg extends Bs{constructor(t,e){super(t),this.map_=t,this.clickTimeoutId_,this.emulateClicks_=!1,this.dragging_=!1,this.dragListenerKeys_=[],this.moveTolerance_=e===void 0?1:e,this.down_=null;const i=this.map_.getViewport();this.activePointers_=[],this.trackedTouches_={},this.element_=i,this.pointerdownListenerKey_=$(i,Pn.POINTERDOWN,this.handlePointerDown_,this),this.originalPointerMoveEvent_,this.relayedListenerKey_=$(i,Pn.POINTERMOVE,this.relayMoveEvent_,this),this.boundHandleTouchMove_=this.handleTouchMove_.bind(this),this.element_.addEventListener(U.TOUCHMOVE,this.boundHandleTouchMove_,Kl?{passive:!1}:!1)}emulateClick_(t){let e=new xe(et.CLICK,this.map_,t);this.dispatchEvent(e),this.clickTimeoutId_!==void 0?(clearTimeout(this.clickTimeoutId_),this.clickTimeoutId_=void 0,e=new xe(et.DBLCLICK,this.map_,t),this.dispatchEvent(e)):this.clickTimeoutId_=setTimeout(()=>{this.clickTimeoutId_=void 0;const i=new xe(et.SINGLECLICK,this.map_,t);this.dispatchEvent(i)},250)}updateActivePointers_(t){const e=t,i=e.pointerId;if(e.type==et.POINTERUP||e.type==et.POINTERCANCEL){delete this.trackedTouches_[i];for(const n in this.trackedTouches_)if(this.trackedTouches_[n].target!==e.target){delete this.trackedTouches_[n];break}}else(e.type==et.POINTERDOWN||e.type==et.POINTERMOVE)&&(this.trackedTouches_[i]=e);this.activePointers_=Object.values(this.trackedTouches_)}handlePointerUp_(t){this.updateActivePointers_(t);const e=new xe(et.POINTERUP,this.map_,t,void 0,void 0,this.activePointers_);this.dispatchEvent(e),this.emulateClicks_&&!e.defaultPrevented&&!this.dragging_&&this.isMouseActionButton_(t)&&this.emulateClick_(this.down_),this.activePointers_.length===0&&(this.dragListenerKeys_.forEach(ot),this.dragListenerKeys_.length=0,this.dragging_=!1,this.down_=null)}isMouseActionButton_(t){return t.button===0}handlePointerDown_(t){this.emulateClicks_=this.activePointers_.length===0,this.updateActivePointers_(t);const e=new xe(et.POINTERDOWN,this.map_,t,void 0,void 0,this.activePointers_);if(this.dispatchEvent(e),this.down_=new PointerEvent(t.type,t),Object.defineProperty(this.down_,"target",{writable:!1,value:t.target}),this.dragListenerKeys_.length===0){const i=this.map_.getOwnerDocument();this.dragListenerKeys_.push($(i,et.POINTERMOVE,this.handlePointerMove_,this),$(i,et.POINTERUP,this.handlePointerUp_,this),$(this.element_,et.POINTERCANCEL,this.handlePointerUp_,this)),this.element_.getRootNode&&this.element_.getRootNode()!==i&&this.dragListenerKeys_.push($(this.element_.getRootNode(),et.POINTERUP,this.handlePointerUp_,this))}}handlePointerMove_(t){if(this.isMoving_(t)){this.updateActivePointers_(t),this.dragging_=!0;const e=new xe(et.POINTERDRAG,this.map_,t,this.dragging_,void 0,this.activePointers_);this.dispatchEvent(e)}}relayMoveEvent_(t){this.originalPointerMoveEvent_=t;const e=!!(this.down_&&this.isMoving_(t));this.dispatchEvent(new xe(et.POINTERMOVE,this.map_,t,e))}handleTouchMove_(t){const e=this.originalPointerMoveEvent_;(!e||e.defaultPrevented)&&(typeof t.cancelable!="boolean"||t.cancelable===!0)&&t.preventDefault()}isMoving_(t){return this.dragging_||Math.abs(t.clientX-this.down_.clientX)>this.moveTolerance_||Math.abs(t.clientY-this.down_.clientY)>this.moveTolerance_}disposeInternal(){this.relayedListenerKey_&&(ot(this.relayedListenerKey_),this.relayedListenerKey_=null),this.element_.removeEventListener(U.TOUCHMOVE,this.boundHandleTouchMove_),this.pointerdownListenerKey_&&(ot(this.pointerdownListenerKey_),this.pointerdownListenerKey_=null),this.dragListenerKeys_.forEach(ot),this.dragListenerKeys_.length=0,this.element_=null,super.disposeInternal()}}const Et={LAYERGROUP:"layergroup",SIZE:"size",TARGET:"target",VIEW:"view"},N={IDLE:0,LOADING:1,LOADED:2,ERROR:3,EMPTY:4},Os=1/0;class Vg{constructor(t,e){this.priorityFunction_=t,this.keyFunction_=e,this.elements_=[],this.priorities_=[],this.queuedElements_={}}clear(){this.elements_.length=0,this.priorities_.length=0,Fn(this.queuedElements_)}dequeue(){const t=this.elements_,e=this.priorities_,i=t[0];t.length==1?(t.length=0,e.length=0):(t[0]=t.pop(),e[0]=e.pop(),this.siftUp_(0));const n=this.keyFunction_(i);return delete this.queuedElements_[n],i}enqueue(t){it(!(this.keyFunction_(t)in this.queuedElements_),"Tried to enqueue an `element` that was already added to the queue");const e=this.priorityFunction_(t);return e!=Os?(this.elements_.push(t),this.priorities_.push(e),this.queuedElements_[this.keyFunction_(t)]=!0,this.siftDown_(0,this.elements_.length-1),!0):!1}getCount(){return this.elements_.length}getLeftChildIndex_(t){return t*2+1}getRightChildIndex_(t){return t*2+2}getParentIndex_(t){return t-1>>1}heapify_(){let t;for(t=(this.elements_.length>>1)-1;t>=0;t--)this.siftUp_(t)}isEmpty(){return this.elements_.length===0}isKeyQueued(t){return t in this.queuedElements_}isQueued(t){return this.isKeyQueued(this.keyFunction_(t))}siftUp_(t){const e=this.elements_,i=this.priorities_,n=e.length,r=e[t],o=i[t],a=t;for(;t>1;){const l=this.getLeftChildIndex_(t),h=this.getRightChildIndex_(t),c=ht;){const a=this.getParentIndex_(e);if(n[a]>o)i[e]=i[a],n[e]=n[a],e=a;else break}i[e]=r,n[e]=o}reprioritize(){const t=this.priorityFunction_,e=this.elements_,i=this.priorities_;let n=0;const r=e.length;let o,a,l;for(a=0;at.apply(null,i),i=>i[0].getKey()),this.boundHandleTileChange_=this.handleTileChange.bind(this),this.tileChangeCallback_=e,this.tilesLoading_=0,this.tilesLoadingKeys_={}}enqueue(t){const e=super.enqueue(t);return e&&t[0].addEventListener(U.CHANGE,this.boundHandleTileChange_),e}getTilesLoading(){return this.tilesLoading_}handleTileChange(t){const e=t.target,i=e.getState();if(i===N.LOADED||i===N.ERROR||i===N.EMPTY){i!==N.ERROR&&e.removeEventListener(U.CHANGE,this.boundHandleTileChange_);const n=e.getKey();n in this.tilesLoadingKeys_&&(delete this.tilesLoadingKeys_[n],--this.tilesLoading_),this.tileChangeCallback_()}}loadMoreTiles(t,e){let i=0;for(;this.tilesLoading_0;){const n=this.dequeue()[0],r=n.getKey();n.getState()===N.IDLE&&!(r in this.tilesLoadingKeys_)&&(this.tilesLoadingKeys_[r]=!0,++this.tilesLoading_,++i,n.load())}}}function $g(s,t,e,i,n){if(!s||!(e in s.wantedTiles)||!s.wantedTiles[e][t.getKey()])return Os;const r=s.viewState.center,o=i[0]-r[0],a=i[1]-r[1];return 65536*Math.log(n)+Math.sqrt(o*o+a*a)/n}class Un extends ie{constructor(t){super();const e=t.element;e&&!t.target&&!e.style.pointerEvents&&(e.style.pointerEvents="auto"),this.element=e||null,this.target_=null,this.map_=null,this.listenerKeys=[],t.render&&(this.render=t.render),t.target&&this.setTarget(t.target)}disposeInternal(){this.element?.remove(),super.disposeInternal()}getMap(){return this.map_}setMap(t){this.map_&&this.element?.remove();for(let e=0,i=this.listenerKeys.length;en.getAttributions(t)));if(this.attributions_!==void 0&&(Array.isArray(this.attributions_)?this.attributions_.forEach(n=>i.add(n)):i.add(this.attributions_)),!this.overrideCollapsible_){const n=!e.some(r=>r.getSource()?.getAttributionsCollapsible()===!1);this.setCollapsible(n)}return Array.from(i)}async updateElement_(t){if(!t){this.renderedVisible_&&(this.element.style.display="none",this.renderedVisible_=!1);return}const e=await Promise.all(this.collectSourceAttributions_(t).map(n=>Nu(()=>n))),i=e.length>0;if(this.renderedVisible_!=i&&(this.element.style.display=i?"":"none",this.renderedVisible_=i),!Be(e,this.renderedAttributions_)){ch(this.ulElement_);for(let n=0,r=e.length;n0&&i%(2*Math.PI)!==0?e.animate({rotation:0,duration:this.duration_,easing:Wi}):e.setRotation(0))}render(t){const e=t.frameState;if(!e)return;const i=e.viewState.rotation;if(i!=this.rotation_){const n="rotate("+i+"rad)";if(this.autoHide_){const r=this.element.classList.contains(is);!r&&i===0?this.element.classList.add(is):r&&i!==0&&this.element.classList.remove(is)}this.label_.style.transform=n}this.rotation_=i}}class Qg extends Un{constructor(t){t=t||{},super({element:document.createElement("div"),target:t.target});const e=t.className!==void 0?t.className:"ol-zoom",i=t.delta!==void 0?t.delta:1,n=t.zoomInClassName!==void 0?t.zoomInClassName:e+"-in",r=t.zoomOutClassName!==void 0?t.zoomOutClassName:e+"-out",o=t.zoomInLabel!==void 0?t.zoomInLabel:"+",a=t.zoomOutLabel!==void 0?t.zoomOutLabel:"–",l=t.zoomInTipLabel!==void 0?t.zoomInTipLabel:"Zoom in",h=t.zoomOutTipLabel!==void 0?t.zoomOutTipLabel:"Zoom out",c=document.createElement("button");c.className=n,c.setAttribute("type","button"),c.title=l,c.appendChild(typeof o=="string"?document.createTextNode(o):o),c.addEventListener(U.CLICK,this.handleClick_.bind(this,i),!1);const u=document.createElement("button");u.className=r,u.setAttribute("type","button"),u.title=h,u.appendChild(typeof a=="string"?document.createTextNode(a):a),u.addEventListener(U.CLICK,this.handleClick_.bind(this,-i),!1);const d=e+" "+jn+" "+Xo,f=this.element;f.className=d,f.appendChild(c),f.appendChild(u),this.duration_=t.duration!==void 0?t.duration:250}handleClick_(t,e){e.preventDefault(),this.zoomByDelta_(t)}zoomByDelta_(t){const i=this.getMap().getView();if(!i)return;const n=i.getZoom();if(n!==void 0){const r=i.getConstrainedZoom(n+t);this.duration_>0?(i.getAnimating()&&i.cancelAnimations(),i.animate({zoom:r,duration:this.duration_,easing:Wi})):i.setZoom(r)}}}function Bh(s){s=s||{};const t=new Zt;return(s.zoom===void 0||s.zoom)&&t.push(new Qg(s.zoomOptions)),(s.rotate===void 0||s.rotate)&&t.push(new Jg(s.rotateOptions)),(s.attribution===void 0||s.attribution)&&t.push(new qg(s.attributionOptions)),t}class t_{constructor(t,e,i){this.decay_=t,this.minVelocity_=e,this.delay_=i,this.points_=[],this.angle_=0,this.initialVelocity_=0}begin(){this.points_.length=0,this.angle_=0,this.initialVelocity_=0}update(t,e){this.points_.push(t,e,Date.now())}end(){if(this.points_.length<6)return!1;const t=Date.now()-this.delay_,e=this.points_.length-3;if(this.points_[e+2]0&&this.points_[i+2]>t;)i-=3;const n=this.points_[e+2]-this.points_[i+2];if(n<1e3/60)return!1;const r=this.points_[e]-this.points_[i],o=this.points_[e+1]-this.points_[i+1];return this.angle_=Math.atan2(o,r),this.initialVelocity_=Math.sqrt(r*r+o*o)/n,this.initialVelocity_>this.minVelocity_}getDistance(){return(this.minVelocity_-this.initialVelocity_)/this.decay_}getAngle(){return this.angle_}}class e_ extends Wn{constructor(t){super(),t=t||{},this.delta_=t.delta?t.delta:1,this.duration_=t.duration!==void 0?t.duration:250}handleEvent(t){let e=!1;if(t.type==et.DBLCLICK){const i=t.originalEvent,n=t.map,r=t.coordinate,o=i.shiftKey?-this.delta_:this.delta_,a=n.getView();Ho(a,o,r,this.duration_),i.preventDefault(),e=!0}return!e}}class i_ extends Yi{constructor(t){super({stopDown:Xi}),t=t||{},this.kinetic_=t.kinetic,this.lastCentroid=null,this.lastPointersCount_,this.panning_=!1;const e=t.condition?t.condition:Jr(To,Vu);this.condition_=t.onFocusOnly?Jr(Vl,e):e,this.noKinetic_=!1}handleDragEvent(t){const e=t.map;this.panning_||(this.panning_=!0,e.getView().beginInteraction());const i=this.targetPointers,n=e.getEventPixel($o(i));if(i.length==this.lastPointersCount_){if(this.kinetic_&&this.kinetic_.update(n[0],n[1]),this.lastCentroid){const r=[this.lastCentroid[0]-n[0],n[1]-this.lastCentroid[1]],a=t.map.getView();tu(r,a.getResolution()),po(r,a.getRotation()),a.adjustCenterInternal(r)}}else this.kinetic_&&this.kinetic_.begin();this.lastCentroid=n,this.lastPointersCount_=i.length,t.originalEvent.preventDefault()}handleUpEvent(t){const e=t.map,i=e.getView();if(this.targetPointers.length===0){if(!this.noKinetic_&&this.kinetic_&&this.kinetic_.end()){const n=this.kinetic_.getDistance(),r=this.kinetic_.getAngle(),o=i.getCenterInternal(),a=e.getPixelFromCoordinateInternal(o),l=e.getCoordinateFromPixelInternal([a[0]-n*Math.cos(r),a[1]-n*Math.sin(r)]);i.animateInternal({center:i.getConstrainedCenter(l),duration:500,easing:Wi})}return this.panning_&&(this.panning_=!1,i.endInteraction()),!1}return this.kinetic_&&this.kinetic_.begin(),this.lastCentroid=null,!0}handleDownEvent(t){if(this.targetPointers.length>0&&this.condition_(t)){const i=t.map.getView();return this.lastCentroid=null,i.getAnimating()&&i.cancelAnimations(),this.kinetic_&&this.kinetic_.begin(),this.noKinetic_=this.targetPointers.length>1,!0}return!1}}class n_ extends Yi{constructor(t){t=t||{},super({stopDown:Xi}),this.condition_=t.condition?t.condition:Uu,this.lastAngle_=void 0,this.duration_=t.duration!==void 0?t.duration:250}handleDragEvent(t){if(!gr(t))return;const e=t.map,i=e.getView();if(i.getConstraints().rotation===Zo)return;const n=e.getSize(),r=t.pixel,o=Math.atan2(n[1]/2-r[1],r[0]-n[0]/2);if(this.lastAngle_!==void 0){const a=o-this.lastAngle_;i.adjustRotationInternal(-a)}this.lastAngle_=o}handleUpEvent(t){return gr(t)?(t.map.getView().endInteraction(this.duration_),!1):!0}handleDownEvent(t){return gr(t)&&Hl(t)&&this.condition_(t)?(t.map.getView().beginInteraction(),this.lastAngle_=void 0,!0):!1}}class s_ extends Us{constructor(t){super(),this.geometry_=null,this.element_=document.createElement("div"),this.element_.style.position="absolute",this.element_.style.pointerEvents="auto",this.element_.className="ol-box "+t,this.map_=null,this.startPixel_=null,this.endPixel_=null}disposeInternal(){this.setMap(null)}render_(){const t=this.startPixel_,e=this.endPixel_,i="px",n=this.element_.style;n.left=Math.min(t[0],e[0])+i,n.top=Math.min(t[1],e[1])+i,n.width=Math.abs(e[0]-t[0])+i,n.height=Math.abs(e[1]-t[1])+i}setMap(t){if(this.map_){this.map_.getOverlayContainer().removeChild(this.element_);const e=this.element_.style;e.left="inherit",e.top="inherit",e.width="inherit",e.height="inherit"}this.map_=t,this.map_&&this.map_.getOverlayContainer().appendChild(this.element_)}setPixels(t,e){this.startPixel_=t,this.endPixel_=e,this.createOrUpdateGeometry(),this.render_()}createOrUpdateGeometry(){if(!this.map_)return;const t=this.startPixel_,e=this.endPixel_,n=[t,[t[0],e[1]],e,[e[0],t[1]]].map(this.map_.getCoordinateFromPixelInternal,this.map_);n[4]=n[0].slice(),this.geometry_?this.geometry_.setCoordinates([n]):this.geometry_=new ue([n])}getGeometry(){return this.geometry_}}const yi={BOXSTART:"boxstart",BOXDRAG:"boxdrag",BOXEND:"boxend",BOXCANCEL:"boxcancel"};class nn extends fe{constructor(t,e,i){super(t),this.coordinate=e,this.mapBrowserEvent=i}}class r_ extends Yi{constructor(t){super(),this.on,this.once,this.un,t=t??{},this.box_=new s_(t.className||"ol-dragbox"),this.minArea_=t.minArea??64,t.onBoxEnd&&(this.onBoxEnd=t.onBoxEnd),this.startPixel_=null,this.condition_=t.condition??Hl,this.boxEndCondition_=t.boxEndCondition??this.defaultBoxEndCondition}defaultBoxEndCondition(t,e,i){const n=i[0]-e[0],r=i[1]-e[1];return n*n+r*r>=this.minArea_}getGeometry(){return this.box_.getGeometry()}handleDragEvent(t){this.startPixel_&&(this.box_.setPixels(this.startPixel_,t.pixel),this.dispatchEvent(new nn(yi.BOXDRAG,t.coordinate,t)))}handleUpEvent(t){if(!this.startPixel_)return!1;const e=this.boxEndCondition_(t,this.startPixel_,t.pixel);return e&&this.onBoxEnd(t),this.dispatchEvent(new nn(e?yi.BOXEND:yi.BOXCANCEL,t.coordinate,t)),this.box_.setMap(null),this.startPixel_=null,!1}handleDownEvent(t){return this.condition_(t)?(this.startPixel_=t.pixel,this.box_.setMap(t.map),this.box_.setPixels(this.startPixel_,this.startPixel_),this.dispatchEvent(new nn(yi.BOXSTART,t.coordinate,t)),!0):!1}onBoxEnd(t){}setActive(t){t||(this.box_.setMap(null),this.startPixel_&&(this.dispatchEvent(new nn(yi.BOXCANCEL,this.startPixel_,null)),this.startPixel_=null)),super.setActive(t)}setMap(t){this.getMap()&&(this.box_.setMap(null),this.startPixel_&&(this.dispatchEvent(new nn(yi.BOXCANCEL,this.startPixel_,null)),this.startPixel_=null)),super.setMap(t)}}class o_ extends r_{constructor(t){t=t||{};const e=t.condition?t.condition:Qr;super({condition:e,className:t.className||"ol-dragzoom",minArea:t.minArea}),this.duration_=t.duration!==void 0?t.duration:200,this.out_=t.out!==void 0?t.out:!1}onBoxEnd(t){const i=this.getMap().getView();let n=this.getGeometry();if(this.out_){const r=i.rotatedExtentForGeometry(n),o=i.getResolutionForExtentInternal(r),a=i.getResolution()/o;n=n.clone(),n.scale(a*a)}i.fitInternal(n,{duration:this.duration_,easing:Wi})}}const He={LEFT:"ArrowLeft",UP:"ArrowUp",RIGHT:"ArrowRight",DOWN:"ArrowDown"};class a_ extends Wn{constructor(t){super(),t=t||{},this.defaultCondition_=function(e){return To(e)&&$l(e)},this.condition_=t.condition!==void 0?t.condition:this.defaultCondition_,this.duration_=t.duration!==void 0?t.duration:100,this.pixelDelta_=t.pixelDelta!==void 0?t.pixelDelta:128}handleEvent(t){let e=!1;if(t.type==U.KEYDOWN){const i=t.originalEvent,n=i.key;if(this.condition_(t)&&(n==He.DOWN||n==He.LEFT||n==He.RIGHT||n==He.UP)){const o=t.map.getView(),a=o.getResolution()*this.pixelDelta_;let l=0,h=0;n==He.DOWN?h=-a:n==He.LEFT?l=-a:n==He.RIGHT?l=a:h=a;const c=[l,h];po(c,o.getRotation()),Og(o,c,this.duration_),i.preventDefault(),e=!0}}return!e}}class l_ extends Wn{constructor(t){super(),t=t||{},this.condition_=t.condition?t.condition:function(e){return!Ku(e)&&$l(e)},this.delta_=t.delta?t.delta:1,this.duration_=t.duration!==void 0?t.duration:100}handleEvent(t){let e=!1;if(t.type==U.KEYDOWN||t.type==U.KEYPRESS){const i=t.originalEvent,n=i.key;if(this.condition_(t)&&(n==="+"||n==="-")){const r=t.map,o=n==="+"?this.delta_:-this.delta_,a=r.getView();Ho(a,o,void 0,this.duration_),i.preventDefault(),e=!0}}return!e}}const h_=40,c_=300;class u_ extends Wn{constructor(t){t=t||{},super(t),this.totalDelta_=0,this.lastDelta_=0,this.maxDelta_=t.maxDelta!==void 0?t.maxDelta:1,this.duration_=t.duration!==void 0?t.duration:250,this.timeout_=t.timeout!==void 0?t.timeout:80,this.useAnchor_=t.useAnchor!==void 0?t.useAnchor:!0,this.constrainResolution_=t.constrainResolution!==void 0?t.constrainResolution:!1;const e=t.condition?t.condition:ys;this.condition_=t.onFocusOnly?Jr(Vl,e):e,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_,this.mode_=void 0,this.trackpadEventGap_=400,this.trackpadTimeoutId_,this.deltaPerZoom_=300}endInteraction_(){this.trackpadTimeoutId_=void 0;const t=this.getMap();if(!t)return;t.getView().endInteraction(void 0,this.lastDelta_?this.lastDelta_>0?1:-1:0,this.lastAnchor_?t.getCoordinateFromPixel(this.lastAnchor_):null)}handleEvent(t){if(!this.condition_(t)||t.type!==U.WHEEL)return!0;const i=t.map,n=t.originalEvent;n.preventDefault(),this.useAnchor_&&(this.lastAnchor_=t.pixel);let r=n.deltaY;switch(n.deltaMode){case WheelEvent.DOM_DELTA_LINE:r*=h_;break;case WheelEvent.DOM_DELTA_PAGE:r*=c_;break}if(r===0)return!1;this.lastDelta_=r;const o=Date.now();this.startTime_===void 0&&(this.startTime_=o),(!this.mode_||o-this.startTime_>this.trackpadEventGap_)&&(this.mode_=Math.abs(r)<4?"trackpad":"wheel");const a=i.getView();if(this.mode_==="trackpad"&&!(a.getConstrainResolution()||this.constrainResolution_))return this.trackpadTimeoutId_?clearTimeout(this.trackpadTimeoutId_):(a.getAnimating()&&a.cancelAnimations(),a.beginInteraction()),this.trackpadTimeoutId_=setTimeout(this.endInteraction_.bind(this),this.timeout_),a.adjustZoom(-r/this.deltaPerZoom_,this.lastAnchor_?i.getCoordinateFromPixel(this.lastAnchor_):null),this.startTime_=o,!1;this.totalDelta_+=r;const l=Math.max(this.timeout_-(o-this.startTime_),0);return clearTimeout(this.timeoutId_),this.timeoutId_=setTimeout(this.handleWheelZoom_.bind(this,i),l),!1}handleWheelZoom_(t){const e=t.getView();e.getAnimating()&&e.cancelAnimations();let i=-at(this.totalDelta_,-this.maxDelta_*this.deltaPerZoom_,this.maxDelta_*this.deltaPerZoom_)/this.deltaPerZoom_;(e.getConstrainResolution()||this.constrainResolution_)&&(i=i?i>0?1:-1:0),Ho(e,i,this.lastAnchor_?t.getCoordinateFromPixel(this.lastAnchor_):null,this.duration_),this.mode_=void 0,this.totalDelta_=0,this.lastAnchor_=null,this.startTime_=void 0,this.timeoutId_=void 0}setMouseAnchor(t){this.useAnchor_=t,t||(this.lastAnchor_=null)}}class d_ extends Yi{constructor(t){t=t||{};const e=t;e.stopDown||(e.stopDown=Xi),super(e),this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.threshold_=t.threshold!==void 0?t.threshold:.3,this.duration_=t.duration!==void 0?t.duration:250}handleDragEvent(t){let e=0;const i=this.targetPointers[0],n=this.targetPointers[1],r=Math.atan2(n.clientY-i.clientY,n.clientX-i.clientX);if(this.lastAngle_!==void 0){const l=r-this.lastAngle_;this.rotationDelta_+=l,!this.rotating_&&Math.abs(this.rotationDelta_)>this.threshold_&&(this.rotating_=!0),e=l}this.lastAngle_=r;const o=t.map,a=o.getView();a.getConstraints().rotation!==Zo&&(this.anchor_=o.getCoordinateFromPixelInternal(o.getEventPixel($o(this.targetPointers))),this.rotating_&&(o.render(),a.adjustRotationInternal(e,this.anchor_)))}handleUpEvent(t){return this.targetPointers.length<2?(t.map.getView().endInteraction(this.duration_),!1):!0}handleDownEvent(t){if(this.targetPointers.length>=2){const e=t.map;return this.anchor_=null,this.lastAngle_=void 0,this.rotating_=!1,this.rotationDelta_=0,this.handlingDownUpSequence||e.getView().beginInteraction(),!0}return!1}}class f_ extends Yi{constructor(t){t=t||{};const e=t;e.stopDown||(e.stopDown=Xi),super(e),this.anchor_=null,this.duration_=t.duration!==void 0?t.duration:400,this.lastDistance_=void 0,this.lastScaleDelta_=1}handleDragEvent(t){let e=1;const i=this.targetPointers[0],n=this.targetPointers[1],r=i.clientX-n.clientX,o=i.clientY-n.clientY,a=Math.sqrt(r*r+o*o);this.lastDistance_!==void 0&&(e=this.lastDistance_/a),this.lastDistance_=a;const l=t.map,h=l.getView();e!=1&&(this.lastScaleDelta_=e),this.anchor_=l.getCoordinateFromPixelInternal(l.getEventPixel($o(this.targetPointers))),l.render(),h.adjustResolutionInternal(e,this.anchor_)}handleUpEvent(t){if(this.targetPointers.length<2){const i=t.map.getView(),n=this.lastScaleDelta_>1?1:-1;return i.endInteraction(this.duration_,n),!1}return!0}handleDownEvent(t){if(this.targetPointers.length>=2){const e=t.map;return this.anchor_=null,this.lastDistance_=void 0,this.lastScaleDelta_=1,this.handlingDownUpSequence||e.getView().beginInteraction(),!0}return!1}}function g_(s){s=s||{};const t=new Zt,e=new t_(-.005,.05,100);return(s.altShiftDragRotate===void 0||s.altShiftDragRotate)&&t.push(new n_),(s.doubleClickZoom===void 0||s.doubleClickZoom)&&t.push(new e_({delta:s.zoomDelta,duration:s.zoomDuration})),(s.dragPan===void 0||s.dragPan)&&t.push(new i_({onFocusOnly:s.onFocusOnly,kinetic:e})),(s.pinchRotate===void 0||s.pinchRotate)&&t.push(new d_),(s.pinchZoom===void 0||s.pinchZoom)&&t.push(new f_({duration:s.zoomDuration})),(s.keyboard===void 0||s.keyboard)&&(t.push(new a_),t.push(new l_({delta:s.zoomDelta,duration:s.zoomDuration}))),(s.mouseWheelZoom===void 0||s.mouseWheelZoom)&&t.push(new u_({onFocusOnly:s.onFocusOnly,duration:s.zoomDuration})),(s.shiftDragZoom===void 0||s.shiftDragZoom)&&t.push(new o_({duration:s.zoomDuration})),t}const De={ADDLAYER:"addlayer",REMOVELAYER:"removelayer"};class Ge extends fe{constructor(t,e){super(t),this.layer=e}}const kr={LAYERS:"layers"};class Ui extends Gh{constructor(t){t=t||{};const e=Object.assign({},t);delete e.layers;let i=t.layers;super(e),this.on,this.once,this.un,this.layersListenerKeys_=[],this.listenerKeys_={},this.addChangeListener(kr.LAYERS,this.handleLayersChanged_),i?Array.isArray(i)?i=new Zt(i.slice(),{unique:!0}):it(typeof i.getArray=="function","Expected `layers` to be an array or a `Collection`"):i=new Zt(void 0,{unique:!0}),this.setLayers(i)}handleLayerChange_(){this.changed()}handleLayersChanged_(){this.layersListenerKeys_.forEach(ot),this.layersListenerKeys_.length=0;const t=this.getLayers();this.layersListenerKeys_.push($(t,Ot.ADD,this.handleLayersAdd_,this),$(t,Ot.REMOVE,this.handleLayersRemove_,this));for(const i in this.listenerKeys_)this.listenerKeys_[i].forEach(ot);Fn(this.listenerKeys_);const e=t.getArray();for(let i=0,n=e.length;i=0;--E){const T=_[E],M=T.layer;if(M.hasRenderer()&&Vo(T,c)&&a.call(l,M)){const b=M.getRenderer(),R=M.getSource();if(b&&R){const S=R.getWrapX()?f:t,A=u.bind(null,T.managed);x[0]=S[0]+g[y][0],x[1]=S[1]+g[y][1],h=b.forEachFeatureAtCoordinate(x,e,i,A,p)}if(h)return h}}if(p.length===0)return;const w=1/p.length;return p.forEach((y,E)=>y.distanceSq+=E*w),p.sort((y,E)=>y.distanceSq-E.distanceSq),p.some(y=>h=y.callback(y.feature,y.layer,y.geometry)),h}hasFeatureAtCoordinate(t,e,i,n,r,o){return this.forEachFeatureAtCoordinate(t,e,i,n,Di,this,r,o)!==void 0}getMap(){return this.map_}renderFrame(t){X()}scheduleExpireIconCache(t){Bt.canExpireCache()&&t.postRenderFunctions.push(m_)}}function m_(s,t){Bt.expire()}class p_ extends __{constructor(t){super(t),this.fontChangeListenerKey_=$(wi,Fi.PROPERTYCHANGE,t.redrawText,t),this.element_=Yt?uh():document.createElement("div");const e=this.element_.style;e.position="absolute",e.width="100%",e.height="100%",e.zIndex="0",this.element_.className=jn+" ol-layers";const i=t.getViewport();i&&i.insertBefore(this.element_,i.firstChild||null),this.children_=[],this.renderedVisible_=!0}dispatchRenderEvent(t,e){const i=this.getMap();if(i.hasListener(t)){const n=new Th(t,void 0,e);i.dispatchEvent(n)}}disposeInternal(){ot(this.fontChangeListenerKey_),this.element_.remove(),super.disposeInternal()}renderFrame(t){if(!t){this.renderedVisible_&&(this.element_.style.display="none",this.renderedVisible_=!1);return}this.calculateMatrices2D(t),this.dispatchRenderEvent(Ut.PRECOMPOSE,t);const e=t.layerStatesArray.sort((h,c)=>h.zIndex-c.zIndex);e.some(h=>h.layer instanceof jh&&h.layer.getDeclutter())&&(t.declutter={});const n=t.viewState;this.children_.length=0;const r=[];let o=null;for(let h=0,c=e.length;h0)&&(h.fillStyle=d,h.fillRect(0,0,l.width,l.height)),Xe(u)&&u.width>0){h.save();const f=c.style.opacity||u.style.opacity;h.globalAlpha=f===""?1:Number(f);const g=u.style.transform;if(g)h.transform(...to(g));else{const _=parseFloat(u.style.width)/u.width,m=parseFloat(u.style.height)/u.height;h.transform(_,0,0,m,0,0)}h.drawImage(u,0,0),h.restore()}}}this.dispatchRenderEvent(Ut.POSTCOMPOSE,t),this.renderedVisible_||(this.element_.style.display="",this.renderedVisible_=!0),this.scheduleExpireIconCache(t)}declutter(t,e){if(t.declutter){for(let i=e.length-1;i>=0;--i){const n=e[i],r=n.layer;r.getDeclutter()&&r.renderDeclutter(t,n)}e.forEach(i=>i.layer.renderDeferred(t))}}}function Zh(s){if(s instanceof sr){s.setMapInternal(null);return}s instanceof Ui&&s.getLayers().forEach(Zh)}function Kh(s,t){if(s instanceof sr){s.setMapInternal(t);return}if(s instanceof Ui){const e=s.getLayers().getArray();for(let i=0,n=e.length;ithis.updateSize())),this.controls=e.controls||(Yt?new Zt:Bh()),this.interactions=e.interactions||(Yt?new Zt:g_({onFocusOnly:!0})),this.overlays_=e.overlays,this.overlayIdIndex_={},this.renderer_=null,this.postRenderFunctions_=[],this.tileQueue_=new Hg(this.getTilePriority.bind(this),this.handleTileChange_.bind(this)),this.addChangeListener(Et.LAYERGROUP,this.handleLayerGroupChanged_),this.addChangeListener(Et.VIEW,this.handleViewChanged_),this.addChangeListener(Et.SIZE,this.handleSizeChanged_),this.addChangeListener(Et.TARGET,this.handleTargetChanged_),this.setProperties(e.values);const i=this;t.view&&!(t.view instanceof ae)&&t.view.then(function(n){i.setView(new ae(n))}),this.controls.addEventListener(Ot.ADD,n=>{n.element.setMap(this)}),this.controls.addEventListener(Ot.REMOVE,n=>{n.element.setMap(null)}),this.interactions.addEventListener(Ot.ADD,n=>{n.element.setMap(this)}),this.interactions.addEventListener(Ot.REMOVE,n=>{n.element.setMap(null)}),this.overlays_.addEventListener(Ot.ADD,n=>{this.addOverlayInternal_(n.element)}),this.overlays_.addEventListener(Ot.REMOVE,n=>{const r=n.element.getId();r!==void 0&&delete this.overlayIdIndex_[r.toString()],n.element.setMap(null)}),this.controls.forEach(n=>{n.setMap(this)}),this.interactions.forEach(n=>{n.setMap(this)}),this.overlays_.forEach(this.addOverlayInternal_.bind(this))}addControl(t){this.getControls().push(t)}addInteraction(t){this.getInteractions().push(t)}addLayer(t){this.getLayerGroup().getLayers().push(t)}handleLayerAdd_(t){Kh(t.layer,this)}addOverlay(t){this.getOverlays().push(t)}addOverlayInternal_(t){const e=t.getId();e!==void 0&&(this.overlayIdIndex_[e.toString()]=t),t.setMap(this)}disposeInternal(){this.controls.clear(),this.interactions.clear(),this.overlays_.clear(),this.resizeObserver_?.disconnect(),this.setTarget(null),super.disposeInternal()}forEachFeatureAtPixel(t,e,i){if(!this.frameState_||!this.renderer_)return;const n=this.getCoordinateFromPixelInternal(t);i=i!==void 0?i:{};const r=i.hitTolerance!==void 0?i.hitTolerance:0,o=i.layerFilter!==void 0?i.layerFilter:Di,a=i.checkWrapped!==!1;return this.renderer_.forEachFeatureAtCoordinate(n,this.frameState_,r,a,e,null,o,null)}getFeaturesAtPixel(t,e){const i=[];return this.forEachFeatureAtPixel(t,function(n){i.push(n)},e),i}getAllLayers(){const t=[];function e(i){i.forEach(function(n){n instanceof Ui?e(n.getLayers()):t.push(n)})}return e(this.getLayers()),t}hasFeatureAtPixel(t,e){if(!this.frameState_||!this.renderer_)return!1;const i=this.getCoordinateFromPixelInternal(t);e=e!==void 0?e:{};const n=e.layerFilter!==void 0?e.layerFilter:Di,r=e.hitTolerance!==void 0?e.hitTolerance:0,o=e.checkWrapped!==!1;return this.renderer_.hasFeatureAtCoordinate(i,this.frameState_,r,o,n,null)}getEventCoordinate(t){return this.getCoordinateFromPixel(this.getEventPixel(t))}getEventCoordinateInternal(t){return this.getCoordinateFromPixelInternal(this.getEventPixel(t))}getEventPixel(t){const i=this.viewport_.getBoundingClientRect(),n=this.getSize(),r=i.width/n[0],o=i.height/n[1],a="changedTouches"in t?t.changedTouches[0]:t;return[(a.clientX-i.left)/r,(a.clientY-i.top)/o]}getTarget(){return this.get(Et.TARGET)}getTargetElement(){return this.targetElement_}getCoordinateFromPixel(t){return qr(this.getCoordinateFromPixelInternal(t),this.getView().getProjection())}getCoordinateFromPixelInternal(t){const e=this.frameState_;return e?_t(e.pixelToCoordinateTransform,t.slice()):null}getControls(){return this.controls}getOverlays(){return this.overlays_}getOverlayById(t){const e=this.overlayIdIndex_[t.toString()];return e!==void 0?e:null}getInteractions(){return this.interactions}getLayerGroup(){return this.get(Et.LAYERGROUP)}setLayers(t){const e=this.getLayerGroup();if(t instanceof Zt){e.setLayers(t);return}const i=e.getLayers();i.clear(),i.extend(t)}getLayers(){return this.getLayerGroup().getLayers()}getLoadingOrNotReady(){const t=this.getLayerGroup().getLayerStatesArray();for(let e=0,i=t.length;e=0;r--){const o=n[r];if(o.getMap()!==this||!o.getActive()||!this.getTargetElement())continue;if(!o.handleEvent(t)||t.propagationStopped)break}}}handlePostRender(){const t=this.frameState_,e=this.tileQueue_;if(!e.isEmpty()){let n=this.maxTilesLoading_,r=n;if(t){const o=t.viewHints;if(o[Ct.ANIMATING]||o[Ct.INTERACTING]){const a=Date.now()-t.time>8;n=a?0:8,r=a?0:2}}e.getTilesLoading(){this.postRenderTimeoutHandle_=void 0,this.handlePostRender()},0))}setLayerGroup(t){const e=this.getLayerGroup();e&&this.handleLayerRemove_(new Ge("removelayer",e)),this.set(Et.LAYERGROUP,t)}setSize(t){this.set(Et.SIZE,t)}setTarget(t){this.set(Et.TARGET,t)}setView(t){if(!t||t instanceof ae){this.set(Et.VIEW,t);return}this.set(Et.VIEW,new ae);const e=this;t.then(function(i){e.setView(new ae(i))})}updateSize(){const t=this.getTargetElement();let e;if(t){let n,r;if(Xe(t)){const o=t.getContext("2d").getTransform();n=t.width/o.a,r=t.height/o.d}else{const o=getComputedStyle(t);n=t.offsetWidth-parseFloat(o.borderLeftWidth)-parseFloat(o.paddingLeft)-parseFloat(o.paddingRight)-parseFloat(o.borderRightWidth),r=t.offsetHeight-parseFloat(o.borderTopWidth)-parseFloat(o.paddingTop)-parseFloat(o.paddingBottom)-parseFloat(o.borderBottomWidth)}!isNaN(n)&&!isNaN(r)&&(e=[Math.max(0,n),Math.max(0,r)],!Ga(e)&&(t.offsetWidth||t.offsetHeight||t.getClientRects().length)&&Sl("No map visible because the map container's width or height are 0."))}const i=this.getSize();e&&(!i||!Be(e,i))&&(this.setSize(e),this.updateViewportSize_(e))}updateViewportSize_(t){const e=this.getView();e&&e.setViewportSize(t)}}function x_(s){let t=null;s.keyboardEventTarget!==void 0&&(t=typeof s.keyboardEventTarget=="string"?document.getElementById(s.keyboardEventTarget):s.keyboardEventTarget);const e={},i=s.layers&&typeof s.layers.getLayers=="function"?s.layers:new Ui({layers:s.layers});e[Et.LAYERGROUP]=i,e[Et.TARGET]=s.target,e[Et.VIEW]=s.view instanceof ae?s.view:new ae;let n;s.controls!==void 0&&(Array.isArray(s.controls)?n=new Zt(s.controls.slice()):(it(typeof s.controls.getArray=="function","Expected `controls` to be an array or an `ol/Collection.js`"),n=s.controls));let r;s.interactions!==void 0&&(Array.isArray(s.interactions)?r=new Zt(s.interactions.slice()):(it(typeof s.interactions.getArray=="function","Expected `interactions` to be an array or an `ol/Collection.js`"),r=s.interactions));let o;return s.overlays!==void 0?Array.isArray(s.overlays)?o=new Zt(s.overlays.slice()):(it(typeof s.overlays.getArray=="function","Expected `overlays` to be an array or an `ol/Collection.js`"),o=s.overlays):o=new Zt,{controls:n,interactions:r,keyboardEventTarget:t,overlays:o,values:e}}class qo extends Bs{constructor(t,e,i){super(),i=i||{},this.tileCoord=t,this.state=e,this.key="",this.transition_=i.transition===void 0?250:i.transition,this.transitionStarts_={},this.interpolate=!!i.interpolate}changed(){this.dispatchEvent(U.CHANGE)}release(){this.setState(N.EMPTY)}getKey(){return this.key+"/"+this.tileCoord}getTileCoord(){return this.tileCoord}getState(){return this.state}setState(t){if(this.state!==N.EMPTY){if(this.state!==N.ERROR&&this.state>t)throw new Error("Tile load sequence violation");this.state=t,this.changed()}}load(){X()}getAlpha(t,e){if(!this.transition_)return 1;let i=this.transitionStarts_[t];if(!i)i=e,this.transitionStarts_[t]=i;else if(i===-1)return 1;const n=e-i+1e3/60;return n>=this.transition_?1:Nh(n/this.transition_)}inTransition(t){return this.transition_?this.transitionStarts_[t]!==-1:!1}endTransition(t){this.transition_&&(this.transitionStarts_[t]=-1)}disposeInternal(){this.release(),super.disposeInternal()}}function co(s){return s instanceof Image||s instanceof HTMLCanvasElement||s instanceof HTMLVideoElement||s instanceof ImageBitmap?s:null}const E_=new Error("disposed"),C_=[256,256];class hl extends qo{constructor(t){const e=N.IDLE;super(t.tileCoord,e,{transition:t.transition,interpolate:t.interpolate}),this.loader_=t.loader,this.data_=null,this.error_=null,this.size_=t.size||null,this.controller_=t.controller||null}getSize(){if(this.size_)return this.size_;const t=co(this.data_);return t?[t.width,t.height]:C_}getData(){return this.data_}getError(){return this.error_}load(){if(this.state!==N.IDLE&&this.state!==N.ERROR)return;this.state=N.LOADING,this.changed();const t=this;this.loader_().then(function(e){t.data_=e,t.state=N.LOADED,t.changed()}).catch(function(e){t.error_=e,t.state=N.ERROR,t.changed()})}disposeInternal(){this.controller_&&(this.controller_.abort(E_),this.controller_=null),super.disposeInternal()}}class Vh extends qo{constructor(t,e,i,n,r,o){super(t,e,o),this.crossOrigin_=n?.crossOrigin,this.referrerPolicy_=n?.referrerPolicy,this.src_=i,this.key=i,this.image_,Yt?this.image_=new OffscreenCanvas(1,1):(this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_),this.referrerPolicy_!==void 0&&(this.image_.referrerPolicy=this.referrerPolicy_)),this.unlisten_=null,this.tileLoadFunction_=r}getImage(){return this.image_}setImage(t){this.image_=t,this.state=N.LOADED,this.unlistenImage_(),this.changed()}getCrossOrigin(){return this.crossOrigin_}getReferrerPolicy(){return this.referrerPolicy_}handleImageError_(){this.state=N.ERROR,this.unlistenImage_(),this.image_=w_(),this.changed()}handleImageLoad_(){if(Yt)this.state=N.LOADED;else{const t=this.image_;t.naturalWidth&&t.naturalHeight?this.state=N.LOADED:this.state=N.EMPTY}this.unlistenImage_(),this.changed()}load(){this.state==N.ERROR&&(this.state=N.IDLE,this.image_=new Image,this.crossOrigin_!==null&&(this.image_.crossOrigin=this.crossOrigin_),this.referrerPolicy_!==void 0&&(this.image_.referrerPolicy=this.referrerPolicy_)),this.state==N.IDLE&&(this.state=N.LOADING,this.changed(),this.tileLoadFunction_(this,this.src_),this.unlisten_=bd(this.image_,this.handleImageLoad_.bind(this),this.handleImageError_.bind(this)))}unlistenImage_(){this.unlisten_&&(this.unlisten_(),this.unlisten_=null)}disposeInternal(){this.unlistenImage_(),this.image_=null,super.disposeInternal()}}function w_(){const s=dt(1,1);return s.fillStyle="rgba(0,0,0,0)",s.fillRect(0,0,1,1),s.canvas}class Jo{constructor(t,e,i,n){this.minX=t,this.maxX=e,this.minY=i,this.maxY=n}contains(t){return this.containsXY(t[1],t[2])}containsTileRange(t){return this.minX<=t.minX&&t.maxX<=this.maxX&&this.minY<=t.minY&&t.maxY<=this.maxY}containsXY(t,e){return this.minX<=t&&t<=this.maxX&&this.minY<=e&&e<=this.maxY}equals(t){return this.minX==t.minX&&this.minY==t.minY&&this.maxX==t.maxX&&this.maxY==t.maxY}extend(t){t.minXthis.maxX&&(this.maxX=t.maxX),t.minYthis.maxY&&(this.maxY=t.maxY)}getHeight(){return this.maxY-this.minY+1}getSize(){return[this.getWidth(),this.getHeight()]}getWidth(){return this.maxX-this.minX+1}intersects(t){return this.minX<=t.maxX&&this.maxX>=t.minX&&this.minY<=t.maxY&&this.maxY>=t.minY}}function xi(s,t,e,i,n){return n!==void 0?(n.minX=s,n.maxX=t,n.minY=e,n.maxY=i,n):new Jo(s,t,e,i)}let Fr;const Li=[];function cl(s,t,e,i,n){s.beginPath(),s.moveTo(0,0),s.lineTo(t,e),s.lineTo(i,n),s.closePath(),s.save(),s.clip(),s.fillRect(0,0,Math.max(t,i)+1,Math.max(e,n)),s.restore()}function Dr(s,t){return Math.abs(s[t*4]-210)>2||Math.abs(s[t*4+3]-.75*255)>2}function v_(){if(Fr===void 0){const s=dt(6,6,Li);s.globalCompositeOperation="lighter",s.fillStyle="rgba(210, 0, 0, 0.75)",cl(s,4,5,4,0),cl(s,4,5,0,5);const t=s.getImageData(0,0,3,3).data;Fr=Dr(t,0)||Dr(t,4)||Dr(t,8),$s(s),Li.push(s.canvas)}return Fr}function ul(s,t,e,i){const n=Ys(e,t,s);let r=Rs(t,i,e);const o=t.getMetersPerUnit();o!==void 0&&(r*=o);const a=s.getMetersPerUnit();a!==void 0&&(r/=a);const l=s.getExtent();if(!l||Ai(l,n)){const h=Rs(s,r,n)/r;isFinite(h)&&h>0&&(r/=h)}return r}function R_(s,t,e,i){const n=Ue(e);let r=ul(s,t,n,i);return(!isFinite(r)||r<=0)&&mo(e,function(o){return r=ul(s,t,o,i),isFinite(r)&&r>0}),r}function S_(s,t,e,i,n,r,o,a,l,h,c,u,d,f){const g=dt(Math.round(e*s),Math.round(e*t),Li);if(u||(g.imageSmoothingEnabled=!1),l.length===0)return g.canvas;g.scale(e,e);function _(E){return Math.round(E*e)/e}g.globalCompositeOperation="lighter";const m=Vt();l.forEach(function(E,T,M){bl(m,E.extent)});let p;const x=e/i,w=(u?1:1+Math.pow(2,-24))/x;p=dt(Math.round(st(m)*x),Math.round(Tt(m)*x),Li),u||(p.imageSmoothingEnabled=!1),l.forEach(function(E,T,M){if(E.image.width>0&&E.image.height>0){if(E.clipExtent){p.save();const O=(E.clipExtent[0]-m[0])*x,L=-(E.clipExtent[3]-m[3])*x,W=st(E.clipExtent)*x,P=Tt(E.clipExtent)*x;p.rect(u?O:Math.round(O),u?L:Math.round(L),u?W:Math.round(O+W)-Math.round(O),u?P:Math.round(L+P)-Math.round(L)),p.clip()}const b=(E.extent[0]-m[0])*x,R=-(E.extent[3]-m[3])*x,S=st(E.extent)*x,A=Tt(E.extent)*x;p.drawImage(E.image,h,h,E.image.width-2*h,E.image.height-2*h,u?b:Math.round(b),u?R:Math.round(R),u?S:Math.round(b+S)-Math.round(b),u?A:Math.round(R+A)-Math.round(R)),E.clipExtent&&p.restore()}});const y=hi(o);return a.getTriangles().forEach(function(E,T,M){const b=E.source,R=E.target;let S=b[0][0],A=b[0][1],O=b[1][0],L=b[1][1],W=b[2][0],P=b[2][1];const Y=_((R[0][0]-y[0])/r),j=_(-(R[0][1]-y[1])/r),F=_((R[1][0]-y[0])/r),D=_(-(R[1][1]-y[1])/r),V=_((R[2][0]-y[0])/r),q=_(-(R[2][1]-y[1])/r),J=S,K=A;S=0,A=0,O-=J,L-=K,W-=J,P-=K;const lt=[[O,L,0,0,F-Y],[W,P,0,0,V-Y],[0,0,O,L,D-j],[0,0,W,P,q-j]],I=$c(lt);if(!I)return;if(g.save(),g.beginPath(),v_()||!u){g.moveTo(F,D);const rt=4,Mt=Y-F,Pt=j-D;for(let Dt=0;Dt_t(a,Ys(w,this.targetProj_,this.sourceProj_))):xn(this.targetProj_,this.sourceProj_);this.transformInv_=function(w){const y=w[0]+"/"+w[1];return l[y]||(l[y]=h(w)),l[y]},this.maxSourceExtent_=n,this.errorThresholdSquared_=r*r,this.triangles_=[],this.wrapsXInSource_=!1,this.canWrapXInSource_=this.sourceProj_.canWrapX()&&!!n&&!!this.sourceProj_.getExtent()&&st(n)>=st(this.sourceProj_.getExtent()),this.sourceWorldWidth_=this.sourceProj_.getExtent()?st(this.sourceProj_.getExtent()):null,this.targetWorldWidth_=this.targetProj_.getExtent()?st(this.targetProj_.getExtent()):null;const c=hi(i),u=Gs(i),d=Ns(i),f=Ds(i),g=this.transformInv_(c),_=this.transformInv_(u),m=this.transformInv_(d),p=this.transformInv_(f),x=T_+(o?Math.max(0,Math.ceil(Math.log2(Ur(i)/(o*o*256*256)))):0);if(this.addQuad_(c,u,d,f,g,_,m,p,x),this.wrapsXInSource_){let w=1/0;this.triangles_.forEach(function(y,E,T){w=Math.min(w,y.source[0][0],y.source[1][0],y.source[2][0])}),this.triangles_.forEach(y=>{if(Math.max(y.source[0][0],y.source[1][0],y.source[2][0])-w>this.sourceWorldWidth_/2){const E=[[y.source[0][0],y.source[0][1]],[y.source[1][0],y.source[1][1]],[y.source[2][0],y.source[2][1]]];E[0][0]-w>this.sourceWorldWidth_/2&&(E[0][0]-=this.sourceWorldWidth_),E[1][0]-w>this.sourceWorldWidth_/2&&(E[1][0]-=this.sourceWorldWidth_),E[2][0]-w>this.sourceWorldWidth_/2&&(E[2][0]-=this.sourceWorldWidth_);const T=Math.min(E[0][0],E[1][0],E[2][0]);Math.max(E[0][0],E[1][0],E[2][0])-T.5&&u<1;let g=!1;if(h>0){if(this.targetProj_.isGlobal()&&this.targetWorldWidth_){const m=Wr([t,e,i,n]);g=st(m)/this.targetWorldWidth_>dl||g}!f&&this.sourceProj_.isGlobal()&&u&&(g=u>dl||g)}if(!g&&this.maxSourceExtent_&&isFinite(c[0])&&isFinite(c[1])&&isFinite(c[2])&&isFinite(c[3])&&!St(c,this.maxSourceExtent_))return;let _=0;if(!g&&(!isFinite(r[0])||!isFinite(r[1])||!isFinite(o[0])||!isFinite(o[1])||!isFinite(a[0])||!isFinite(a[1])||!isFinite(l[0])||!isFinite(l[1]))){if(h>0)g=!0;else if(_=(!isFinite(r[0])||!isFinite(r[1])?8:0)+(!isFinite(o[0])||!isFinite(o[1])?4:0)+(!isFinite(a[0])||!isFinite(a[1])?2:0)+(!isFinite(l[0])||!isFinite(l[1])?1:0),_!=1&&_!=2&&_!=4&&_!=8)return}if(h>0){if(!g){const m=[(t[0]+i[0])/2,(t[1]+i[1])/2],p=this.transformInv_(m);let x;f?x=(ni(r[0],d)+ni(a[0],d))/2-ni(p[0],d):x=(r[0]+a[0])/2-p[0];const w=(r[1]+a[1])/2-p[1];g=x*x+w*w>this.errorThresholdSquared_}if(g){if(Math.abs(t[0]-i[0])<=Math.abs(t[1]-i[1])){const m=[(e[0]+i[0])/2,(e[1]+i[1])/2],p=this.transformInv_(m),x=[(n[0]+t[0])/2,(n[1]+t[1])/2],w=this.transformInv_(x);this.addQuad_(t,e,m,x,r,o,p,w,h-1),this.addQuad_(x,m,i,n,w,p,a,l,h-1)}else{const m=[(t[0]+e[0])/2,(t[1]+e[1])/2],p=this.transformInv_(m),x=[(i[0]+n[0])/2,(i[1]+n[1])/2],w=this.transformInv_(x);this.addQuad_(t,m,x,n,r,p,w,l,h-1),this.addQuad_(m,e,i,x,p,o,a,w,h-1)}return}}if(f){if(!this.canWrapXInSource_)return;this.wrapsXInSource_=!0}(_&11)==0&&this.addTriangle_(t,i,n,r,a,l),(_&14)==0&&this.addTriangle_(t,i,e,r,a,o),_&&((_&13)==0&&this.addTriangle_(e,n,t,o,l,r),(_&7)==0&&this.addTriangle_(e,n,i,o,l,a))}calculateSourceExtent(){const t=Vt();return this.triangles_.forEach(function(e,i,n){const r=e.source;fn(t,r[0]),fn(t,r[1]),fn(t,r[2])}),t}getTriangles(){return this.triangles_}}const b_=.5;class Hh extends qo{constructor(t,e,i,n,r,o,a,l,h,c,u,d){super(r,N.IDLE,d),this.renderEdges_=u!==void 0?u:!1,this.pixelRatio_=a,this.gutter_=l,this.canvas_=null,this.sourceTileGrid_=e,this.targetTileGrid_=n,this.wrappedTileCoord_=o||r,this.sourceTiles_=[],this.sourcesListenerKeys_=null,this.sourceZ_=0,this.clipExtent_=t.canWrapX()?t.getExtent():void 0;const f=n.getTileCoordExtent(this.wrappedTileCoord_),g=this.targetTileGrid_.getExtent();let _=this.sourceTileGrid_.getExtent();const m=g?ii(f,g):f;if(Ur(m)===0){this.state=N.EMPTY;return}const p=t.getExtent();p&&(_?_=ii(_,p):_=p);const x=n.getResolution(this.wrappedTileCoord_[0]),w=R_(t,i,m,x);if(!isFinite(w)||w<=0){this.state=N.EMPTY;return}const y=c!==void 0?c:b_;if(this.triangulation_=new I_(t,i,m,_,w*y,x),this.triangulation_.getTriangles().length===0){this.state=N.EMPTY;return}this.sourceZ_=e.getZForResolution(w);let E=this.triangulation_.calculateSourceExtent();if(_&&(t.canWrapX()?(E[1]=at(E[1],_[1],_[3]),E[3]=at(E[3],_[1],_[3])):E=ii(E,_)),!Ur(E))this.state=N.EMPTY;else{let T=0,M=0;t.canWrapX()&&(T=st(p),M=Math.floor((E[0]-p[0])/T)),Al(E.slice(),t,!0).forEach(R=>{const S=e.getTileRangeForExtentAndZ(R,this.sourceZ_);for(let A=S.minX;A<=S.maxX;A++)for(let O=S.minY;O<=S.maxY;O++){const L=M*T;this.sourceTiles_.push({getTile:()=>h(this.sourceZ_,A,O,a),offset:L})}++M}),this.sourceTiles_.length===0&&(this.state=N.EMPTY)}}getImage(){return this.canvas_}reproject_(){const t=[];if(this.sourceTiles_.forEach(e=>{const i=e.tile;if(i&&i.getState()==N.LOADED){const n=this.sourceTileGrid_.getTileCoordExtent(i.tileCoord);n[0]+=e.offset,n[2]+=e.offset;const r=this.clipExtent_?.slice();r&&(r[0]+=e.offset,r[2]+=e.offset),t.push({extent:n,clipExtent:r,image:i.getImage()})}}),this.sourceTiles_.length=0,t.length===0)this.state=N.ERROR;else{const e=this.wrappedTileCoord_[0],i=this.targetTileGrid_.getTileSize(e),n=typeof i=="number"?i:i[0],r=typeof i=="number"?i:i[1],o=this.targetTileGrid_.getResolution(e),a=this.sourceTileGrid_.getResolution(this.sourceZ_),l=this.targetTileGrid_.getTileCoordExtent(this.wrappedTileCoord_);this.canvas_=S_(n,r,this.pixelRatio_,a,this.sourceTileGrid_.getExtent(),o,l,this.triangulation_,t,this.gutter_,this.renderEdges_,this.interpolate),this.state=N.LOADED}this.changed()}load(){for(const t of this.sourceTiles_)t.tile=t.getTile();if(this.state==N.IDLE){this.state=N.LOADING,this.changed();let t=0;this.sourcesListenerKeys_=[],this.sourceTiles_.forEach(({tile:e})=>{const i=e.getState();if(i==N.IDLE||i==N.LOADING){t++;const n=$(e,U.CHANGE,r=>{const o=e.getState();(o==N.LOADED||o==N.ERROR||o==N.EMPTY)&&(ot(n),t--,t===0&&(this.unlistenSources_(),this.reproject_()))});this.sourcesListenerKeys_.push(n)}}),t===0?setTimeout(this.reproject_.bind(this),0):this.sourceTiles_.forEach(function({tile:e},i,n){e.getState()==N.IDLE&&e.load()})}}unlistenSources_(){this.sourcesListenerKeys_.forEach(ot),this.sourcesListenerKeys_=null}release(){this.canvas_&&($s(this.canvas_.getContext("2d")),Li.push(this.canvas_),this.canvas_=null),this.sourceTiles_.length=0,super.release()}}class fl{constructor(t){this.highWaterMark=t!==void 0?t:2048,this.count_=0,this.entries_={},this.oldest_=null,this.newest_=null}deleteOldest(){const t=this.pop();t instanceof Us&&t.dispose()}canExpireCache(){return this.highWaterMark>0&&this.getCount()>this.highWaterMark}expireCache(t){for(;this.canExpireCache();)this.deleteOldest()}clear(){for(;this.oldest_;)this.deleteOldest()}containsKey(t){return this.entries_.hasOwnProperty(t)}forEach(t){let e=this.oldest_;for(;e;)t(e.value_,e.key_,this),e=e.newer}get(t,e){const i=this.entries_[t];return it(i!==void 0,"Tried to get a value for a key that does not exist in the cache"),i===this.newest_||(i===this.oldest_?(this.oldest_=this.oldest_.newer,this.oldest_.older=null):(i.newer.older=i.older,i.older.newer=i.newer),i.newer=null,i.older=this.newest_,this.newest_.newer=i,this.newest_=i),i.value_}remove(t){const e=this.entries_[t];return it(e!==void 0,"Tried to get a value for a key that does not exist in the cache"),e===this.newest_?(this.newest_=e.older,this.newest_&&(this.newest_.newer=null)):e===this.oldest_?(this.oldest_=e.newer,this.oldest_&&(this.oldest_.older=null)):(e.newer.older=e.older,e.older.newer=e.newer),delete this.entries_[t],--this.count_,e.value_}getCount(){return this.count_}getKeys(){const t=new Array(this.count_);let e=0,i;for(i=this.newest_;i;i=i.older)t[e++]=i.key_;return t}getValues(){const t=new Array(this.count_);let e=0,i;for(i=this.newest_;i;i=i.older)t[e++]=i.value_;return t}peekLast(){return this.oldest_.value_}peekLastKey(){return this.oldest_.key_}peekFirstKey(){return this.newest_.key_}peek(t){return this.entries_[t]?.value_}pop(){const t=this.oldest_;return delete this.entries_[t.key_],t.newer&&(t.newer.older=null),this.oldest_=t.newer,this.oldest_||(this.newest_=null),--this.count_,t.value_}replace(t,e){this.get(t),this.entries_[t].value_=e}set(t,e){it(!(t in this.entries_),"Tried to set a value for a key that is used already");const i={key_:t,newer:null,older:this.newest_,value_:e};this.newest_?this.newest_.newer=i:this.oldest_=i,this.newest_=i,this.entries_[t]=i,++this.count_}setSize(t){this.highWaterMark=t}}function ks(s,t,e,i){return i!==void 0?(i[0]=s,i[1]=t,i[2]=e,i):[s,t,e]}function M_(s,t,e){return s+"/"+t+"/"+e}function Es(s,t,e,i,n){return`${Q(s)},${t},${M_(e,i,n)}`}function P_(s){return L_(s[0],s[1],s[2])}function L_(s,t,e){return(t<e||e>t.getMaxZoom())return!1;const r=t.getFullTileRange(e);return r?r.containsXY(i,n):!0}function Nr(s,t,e){if(!(e in s))return s[e]=new Set([t]),!0;const i=s[e],n=i.has(t);return n||i.add(t),!n}function O_(s,t,e){const i=s[e];return i?i.delete(t):!1}function gl(s,t){const e=s.layerStatesArray[s.layerIndex];e.extent&&(t=ii(t,je(e.extent,s.viewState.projection)));const i=e.layer.getRenderSource();if(!i.getWrapX()){const n=i.getTileGridForProjection(s.viewState.projection).getExtent();n&&(t=ii(t,n))}return t}class k_ extends Ih{constructor(t,e){super(t),e=e||{},this.extentChanged=!0,this.renderComplete=!1,this.renderedExtent_=null,this.renderedPixelRatio,this.renderedProjection=null,this.renderedTiles=[],this.renderedSourceKey_,this.renderedSourceRevision_,this.tempExtent=Vt(),this.tempTileRange_=new Jo(0,0,0,0),this.tempTileCoord_=ks(0,0,0);const i=e.cacheSize!==void 0?e.cacheSize:512;this.tileCache_=new fl(i),this.sourceTileCache_=null,this.maxStaleKeys=i*.5}getTileCache(){return this.tileCache_}getSourceTileCache(){return this.sourceTileCache_||(this.sourceTileCache_=new fl(512)),this.sourceTileCache_}getOrCreateTile(t,e,i,n){const r=this.tileCache_,a=this.getLayer().getSource(),l=Es(a,a.getKey(),t,e,i);let h;if(r.containsKey(l))h=r.get(l);else{const c=n.viewState.projection,u=a.getProjection();if(h=a.getTile(t,e,i,n.pixelRatio,c,!u||gn(u,c)?void 0:this.getSourceTileCache()),!h)return null;r.set(l,h)}return h}getTile(t,e,i,n){const r=this.getOrCreateTile(t,e,i,n);return r||null}getData(t){const e=this.frameState;if(!e)return null;const i=this.getLayer(),n=_t(e.pixelToCoordinateTransform,t.slice()),r=i.getExtent();if(r&&!Ai(r,n))return null;const o=e.viewState,a=i.getRenderSource(),l=a.getTileGridForProjection(o.projection),h=a.getTilePixelRatio(e.pixelRatio);for(let c=l.getZForResolution(o.resolution);c>=l.getMinZoom();--c){const u=l.getTileCoordForCoordAndZ(n,c),d=this.getTile(c,u[1],u[2],e);if(!d||d.getState()!==N.LOADED)continue;const f=l.getOrigin(c),g=kt(l.getTileSize(c)),_=l.getResolution(c);let m;if(d instanceof Vh||d instanceof Hh)m=d.getImage();else if(d instanceof hl){if(m=co(d.getData()),!m)continue}else continue;const p=Math.floor(h*((n[0]-f[0])/_-u[1]*g[0])),x=Math.floor(h*((f[1]-n[1])/_-u[2]*g[1])),w=Math.round(h*a.getGutterForProjection(o.projection));return this.getImageData(m,p+w,x+w)}return null}prepareFrame(t){this.renderedProjection?t.viewState.projection!==this.renderedProjection&&(this.tileCache_.clear(),this.renderedProjection=t.viewState.projection):this.renderedProjection=t.viewState.projection;const e=this.getLayer().getSource();if(!e)return!1;const i=e.getRevision();return this.renderedSourceRevision_?this.renderedSourceRevision_!==i&&(this.renderedSourceRevision_=i,this.renderedSourceKey_===e.getKey()&&(this.tileCache_.clear(),this.sourceTileCache_?.clear())):this.renderedSourceRevision_=i,!0}enqueueTilesForNextExtent(){return!0}enqueueTiles(t,e,i,n,r){const o=t.viewState,a=this.getLayer(),l=a.getRenderSource(),h=l.getTileGridForProjection(o.projection),c=Q(l);c in t.wantedTiles||(t.wantedTiles[c]={});const u=t.wantedTiles[c],d=a.getMapInternal(),f=Math.max(i-r,h.getMinZoom(),h.getZForResolution(Math.min(a.getMaxResolution(),d?d.getView().getResolutionForZoom(Math.max(a.getMinZoom(),0)):h.getResolution(0)),l.zDirection)),g=o.rotation,_=g?Pl(o.center,o.resolution,g,t.size):void 0;for(let m=i;m>=f;--m){const p=h.getTileRangeForExtentAndZ(e,m,this.tempTileRange_),x=h.getResolution(m);for(let w=p.minX;w<=p.maxX;++w)for(let y=p.minY;y<=p.maxY;++y){if(g&&!h.tileCoordIntersectsViewport([m,w,y],_))continue;const E=this.getTile(m,w,y,t);if(!E||!Nr(n,E,m))continue;const M=E.getKey();if(u[M]=!0,E.getState()===N.IDLE&&!t.tileQueue.isKeyQueued(M)){const b=ks(m,w,y,this.tempTileCoord_);t.tileQueue.enqueue([E,c,h.getTileCoordCenter(b),x])}}}}findStaleTile_(t,e){const i=this.tileCache_,n=t[0],r=t[1],o=t[2],a=this.getStaleKeys();for(let l=0;l0&&setTimeout(()=>{this.enqueueTiles(t,R,d-1,M,b-1)},0),!(d in M))return this.container;const S=Q(this),A=t.time;for(const F of M[d]){const D=F.getState();if(D===N.EMPTY)continue;const V=F.tileCoord;if(D===N.LOADED&&F.getAlpha(S,A)===1){F.endTransition(S);continue}if(D!==N.ERROR&&(this.renderComplete=!1),this.findStaleTile_(V,M)){O_(M,F,d),t.animate=!0;continue}if(this.findAltTiles_(u,V,d+1,M))continue;const K=u.getMinZoom();for(let lt=d-1;lt>=K&&!this.findAltTiles_(u,V,lt,M);--lt);}const O=f/o*l/m,L=this.getRenderContext(t);Me(this.tempTransform,p/2,x/2,O,O,0,-p/2,-x/2),i.extent&&this.clipUnrotated(L,t,w),c.getInterpolate()||(L.imageSmoothingEnabled=!1),this.preRender(L,t);const W=Object.keys(M).map(Number);W.sort(Re);let P;const Y=[],j=[];for(let F=W.length-1;F>=0;--F){const D=W[F],V=c.getTilePixelSize(D,l,r),J=u.getResolution(D)/f,K=V[0]*J*O,lt=V[1]*J*O,I=u.getTileCoordForCoordAndZ(hi(T),D),ut=u.getTileCoordExtent(I),rt=_t(this.tempTransform,[m*(ut[0]-T[0])/f,m*(T[3]-ut[3])/f]),Mt=m*c.getGutterForProjection(r);for(const Pt of M[D]){if(Pt.getState()!==N.LOADED)continue;const Dt=Pt.tileCoord,Bi=I[1]-Dt[1],Bn=Math.round(rt[0]-(Bi-1)*K),Zi=I[2]-Dt[2],rr=Math.round(rt[1]-(Zi-1)*lt),ne=Math.round(rt[0]-Bi*K),Ht=Math.round(rt[1]-Zi*lt),se=Bn-ne,Le=rr-Ht,Zn=W.length===1;let Ki=!1;P=[ne,Ht,ne+se,Ht,ne+se,Ht+Le,ne,Ht+Le];for(let fi=0,Kn=Y.length;fi{const q=Q(c),J=V.wantedTiles[q],K=J?Object.keys(J).length:0;this.updateCacheSize(K),this.tileCache_.expireCache(),this.sourceTileCache_?.expireCache()};t.postRenderFunctions.push(F)}return this.container}updateCacheSize(t){this.tileCache_.highWaterMark=Math.max(this.tileCache_.highWaterMark,t*2)}drawTile(t,e,i,n,r,o,a,l){let h;if(t instanceof hl){if(h=co(t.getData()),!h)throw new Error("Rendering array data is not yet supported")}else h=this.getTileImage(t);if(!h)return;const c=this.getRenderContext(e),u=Q(this),d=e.layerStatesArray[e.layerIndex],f=d.opacity*(l?t.getAlpha(u,e.time):1),g=f!==c.globalAlpha;g&&(c.save(),c.globalAlpha=f),c.drawImage(h,a,a,h.width-2*a,h.height-2*a,i,n,r,o),g&&c.restore(),f!==d.opacity?e.animate=!0:l&&t.endTransition(u)}getImage(){const t=this.context;return t?t.canvas:null}getTileImage(t){return t.getImage()}updateUsedTiles(t,e,i){const n=Q(e);n in t||(t[n]={}),t[n][i.getKey()]=!0}}const ms={PRELOAD:"preload",USE_INTERIM_TILES_ON_ERROR:"useInterimTilesOnError"};class F_ extends sr{constructor(t){t=t||{};const e=Object.assign({},t),i=t.cacheSize;delete t.cacheSize,delete e.preload,delete e.useInterimTilesOnError,super(e),this.on,this.once,this.un,this.cacheSize_=i,this.setPreload(t.preload!==void 0?t.preload:0),this.setUseInterimTilesOnError(t.useInterimTilesOnError!==void 0?t.useInterimTilesOnError:!0)}getCacheSize(){return this.cacheSize_}getPreload(){return this.get(ms.PRELOAD)}setPreload(t){this.set(ms.PRELOAD,t)}getUseInterimTilesOnError(){return this.get(ms.USE_INTERIM_TILES_ON_ERROR)}setUseInterimTilesOnError(t){this.set(ms.USE_INTERIM_TILES_ON_ERROR,t)}getData(t){return super.getData(t)}}class _l extends F_{constructor(t){super(t)}createRenderer(){return new k_(this,{cacheSize:this.getCacheSize()})}}const Ei=[0,0,0],Ne=5;class $h{constructor(t){this.minZoom=t.minZoom!==void 0?t.minZoom:0,this.resolutions_=t.resolutions,it(Du(this.resolutions_,(n,r)=>r-n),"`resolutions` must be sorted in descending order");let e;if(!t.origins){for(let n=0,r=this.resolutions_.length-1;n{const o=new Jo(Math.min(0,n[0]),Math.max(n[0]-1,-1),Math.min(0,n[1]),Math.max(n[1]-1,-1));if(i){const a=this.getTileRangeForExtentAndZ(i,r);o.minX=Math.max(a.minX,o.minX),o.maxX=Math.min(a.maxX,o.maxX),o.minY=Math.max(a.minY,o.minY),o.maxY=Math.min(a.maxY,o.maxY)}return o}):i&&this.calculateTileRanges_(i)}forEachTileCoord(t,e,i){const n=this.getTileRangeForExtentAndZ(t,e);for(let r=n.minX,o=n.maxX;r<=o;++r)for(let a=n.minY,l=n.maxY;a<=l;++a)i([e,r,a])}forEachTileCoordParentTileRange(t,e,i,n){let r,o,a,l=null,h=t[0]-1;for(this.zoomFactor_===2?(o=t[1],a=t[2]):l=this.getTileCoordExtent(t,n);h>=this.minZoom;){if(o!==void 0&&a!==void 0?(o=Math.floor(o/2),a=Math.floor(a/2),r=xi(o,o,a,a,i)):r=this.getTileRangeForExtentAndZ(l,h,i),e(h,r))return!0;--h}return!1}getExtent(){return this.extent_}getMaxZoom(){return this.maxZoom}getMinZoom(){return this.minZoom}getOrigin(t){return this.origin_?this.origin_:this.origins_[t]}getOrigins(){return this.origins_}getResolution(t){return this.resolutions_[t]}getResolutions(){return this.resolutions_}getTileCoordChildTileRange(t,e,i){if(t[0]this.maxZoom||e0?i:Math.max(r/e[0],n/e[1]);const o=t+1,a=new Array(o);for(let l=0;lthis.getTileInternal(g,_,m,p,a,o),this.reprojectionErrorThreshold_,this.renderReprojectionEdges_,this.tileOptions);return f.key=h,f}getTileInternal(t,e,i,n,r,o){const a=this.getKey(),l=Es(this,a,t,e,i);if(o&&o.containsKey(l))return o.get(l);const h=this.createTile_(t,e,i,n,r,a);return o?.set(l,h),h}setRenderReprojectionEdges(t){this.renderReprojectionEdges_!=t&&(this.renderReprojectionEdges_=t,this.changed())}setTileGridForProjection(t,e){const i=ht(t);if(i){const n=Q(i);n in this.tileGridForProjection||(this.tileGridForProjection[n]=e)}}}function J_(s,t){if(Yt){const e=s.getCrossOrigin();let i="same-origin",n="same-origin";e==="anonymous"||e===""?(i="cors",n="omit"):e==="use-credentials"&&(i="cors",n="include");const r={mode:i,credentials:n,referrerPolicy:s.getReferrerPolicy()};fetch(t,r).then(o=>{if(!o.ok)throw new Error(`HTTP ${o.status}`);return o.blob()}).then(o=>createImageBitmap(o)).then(o=>{const a=s.getImage();a.width=o.width,a.height=o.height,a.getContext("2d").drawImage(o,0,0),o.close?.(),a.dispatchEvent(new Event("load"))}).catch(()=>{s.getImage().dispatchEvent(new Event("error"))});return}s.getImage().src=t}class Qh extends q_{constructor(t){t=t||{};const e=t.projection!==void 0?t.projection:"EPSG:3857",i=t.tileGrid!==void 0?t.tileGrid:G_({extent:Qo(e),maxResolution:t.maxResolution,maxZoom:t.maxZoom,minZoom:t.minZoom,tileSize:t.tileSize});super({attributions:t.attributions,cacheSize:t.cacheSize,crossOrigin:t.crossOrigin,referrerPolicy:t.referrerPolicy,interpolate:t.interpolate,projection:e,reprojectionErrorThreshold:t.reprojectionErrorThreshold,tileGrid:i,tileLoadFunction:t.tileLoadFunction,tilePixelRatio:t.tilePixelRatio,tileUrlFunction:t.tileUrlFunction,url:t.url,urls:t.urls,wrapX:t.wrapX!==void 0?t.wrapX:!0,transition:t.transition,attributionsCollapsible:t.attributionsCollapsible,zDirection:t.zDirection}),this.gutter_=t.gutter!==void 0?t.gutter:0}getGutter(){return this.gutter_}}const Q_='© OpenStreetMap contributors.';class tm extends Qh{constructor(t){t=t||{};let e;t.attributions!==void 0?e=t.attributions:e=[Q_];const i=t.url!==void 0?t.url:"https://tile.openstreetmap.org/{z}/{x}/{y}.png";super({attributions:e,attributionsCollapsible:!1,cacheSize:t.cacheSize,crossOrigin:t.crossOrigin!==void 0?t.crossOrigin:"anonymous",referrerPolicy:t.referrerPolicy||"origin-when-cross-origin",interpolate:t.interpolate,maxZoom:t.maxZoom!==void 0?t.maxZoom:19,reprojectionErrorThreshold:t.reprojectionErrorThreshold,tileLoadFunction:t.tileLoadFunction,transition:t.transition,url:i,wrapX:t.wrapX,zDirection:t.zDirection})}}class em{constructor(){this.dataProjection=void 0,this.defaultFeatureProjection=void 0,this.featureClass=we,this.supportedMediaTypes=null}getReadOptions(t,e){if(e){let i=e.dataProjection?ht(e.dataProjection):this.readProjection(t);e.extent&&i&&i.getUnits()==="tile-pixels"&&(i=ht(i),i.setWorldExtent(e.extent)),e={dataProjection:i,featureProjection:e.featureProjection}}return this.adaptOptions(e)}adaptOptions(t){return Object.assign({dataProjection:this.dataProjection,featureProjection:this.defaultFeatureProjection,featureClass:this.featureClass},t)}getType(){return X()}readFeature(t,e){return X()}readFeatures(t,e){return X()}readGeometry(t,e){return X()}readProjection(t){return X()}writeFeature(t,e){return X()}writeFeatures(t,e){return X()}writeGeometry(t,e){return X()}}function ea(s,t,e){const i=e?ht(e.featureProjection):null,n=e?ht(e.dataProjection):null;let r=s;if(i&&n&&!gn(i,n)){t&&(r=s.clone());const o=t?i:n,a=t?n:i;o.getUnits()==="tile-pixels"?r.transform(o,a):r.applyTransform(xn(o,a))}if(t&&e&&e.decimals!==void 0){const o=Math.pow(10,e.decimals),a=function(l){for(let h=0,c=l.length;htc({...s,geometry:r})).flat();const i=e.type==="MultiPolygon"?"Polygon":e.type;if(i==="GeometryCollection"||i==="Circle")throw new Error("Unsupported geometry type: "+i);const n=e.layout.length;return ea(new Gt(i,i==="Polygon"?nm(e.flatCoordinates,e.ends,n):e.flatCoordinates,e.ends?.flat(),n,s.properties||{},s.id).enableSimplifyTransformed(),!1,t)}function ia(s,t){if(!s)return null;if(Array.isArray(s)){const i=s.map(n=>ia(n,t));return new Mn(i)}const e=im[s.type];return ea(new e(s.flatCoordinates,s.layout||"XY",s.ends),!1,t)}class sm extends em{constructor(){super()}getType(){return"json"}readFeature(t,e){return this.readFeatureFromObject(ps(t),this.getReadOptions(t,e))}readFeatures(t,e){return this.readFeaturesFromObject(ps(t),this.getReadOptions(t,e))}readFeatureFromObject(t,e){return X()}readFeaturesFromObject(t,e){return X()}readGeometry(t,e){return this.readGeometryFromObject(ps(t),this.getReadOptions(t,e))}readGeometryFromObject(t,e){return X()}readProjection(t){return this.readProjectionFromObject(ps(t))}readProjectionFromObject(t){return X()}writeFeature(t,e){return JSON.stringify(this.writeFeatureObject(t,e))}writeFeatureObject(t,e){return X()}writeFeatures(t,e){return JSON.stringify(this.writeFeaturesObject(t,e))}writeFeaturesObject(t,e){return X()}writeGeometry(t,e){return JSON.stringify(this.writeGeometryObject(t,e))}writeGeometryObject(t,e){return X()}}function ps(s){if(typeof s=="string"){const t=JSON.parse(s);return t||null}return s!==null?s:null}class rm extends sm{constructor(t){t=t||{},super(),this.dataProjection=ht(t.dataProjection?t.dataProjection:"EPSG:4326"),t.featureProjection&&(this.defaultFeatureProjection=ht(t.featureProjection)),t.featureClass&&(this.featureClass=t.featureClass),this.geometryName_=t.geometryName,this.extractGeometryName_=t.extractGeometryName,this.supportedMediaTypes=["application/geo+json","application/vnd.geo+json"]}readFeatureFromObject(t,e){let i=null;t.type==="Feature"?i=t:i={type:"Feature",geometry:t,properties:null};const n=na(i.geometry);if(this.featureClass===Gt)return tc({geometry:n,id:i.id,properties:i.properties},e);const r=new we;return this.geometryName_?r.setGeometryName(this.geometryName_):this.extractGeometryName_&&i.geometry_name&&r.setGeometryName(i.geometry_name),r.setGeometry(ia(n,e)),"id"in i&&r.setId(i.id),i.properties&&r.setProperties(i.properties,!0),r}readFeaturesFromObject(t,e){const i=t;let n=null;if(i.type==="FeatureCollection"){const r=t;n=[];const o=r.features;for(let a=0,l=o.length;a=l){d=_,f=m,g=p;break}else if(f>=a)break;_=d,m=f,p=g,++u}const x=this.scaleBar_?this.createScaleBar(f,d,c):d.toFixed(g<0?-g:0)+" "+c;this.renderedHTML_!=x&&(this.innerElement_.innerHTML=x,this.renderedHTML_=x),this.renderedWidth_!=f&&(this.innerElement_.style.width=f+"px",this.renderedWidth_=f),this.renderedVisible_||(this.element.style.display="",this.renderedVisible_=!0)}createScaleBar(t,e,i){const n=this.getScaleForResolution(),r=n<1?Math.round(1/n).toLocaleString()+" : 1":"1 : "+Math.round(n).toLocaleString(),o=this.scaleBarSteps_,a=t/o,l=[this.createMarker("absolute")];for(let c=0;c
`+this.createMarker("relative")+(c%2===0||o===2?this.createStepText(c,t,!1,e,i):"")+"")}return l.push(this.createStepText(o,t,!0,e,i)),(this.scaleBarText_?`
`+r+"
":"")+l.join("")}createMarker(t){return`
`}createStepText(t,e,i,n,r){const a=(t===0?0:Math.round(n/this.scaleBarSteps_*t*100)/100)+(t===0?"":" "+r),l=t===0?-3:e/this.scaleBarSteps_*-1,h=t===0?0:e/this.scaleBarSteps_*2;return`
`+a+"
"}getScaleForResolution(){const t=Rs(this.viewState_.projection,this.viewState_.resolution,this.viewState_.center,"m"),e=this.dpi_||sn,i=1e3/25.4;return t*i*e}render(t){const e=t.frameState;e?this.viewState_=e.viewState:this.viewState_=null,this.updateElement_()}}const Rm={type:"FeatureCollection",features:[{type:"Feature",properties:{id:"Z-001",name:"Tema Industrial Corridor",zone:"Industrial",type:"industrial",area:"4,820 ha",owner:"Ghana Free Zones Authority",status:"Active"},geometry:{type:"Polygon",coordinates:[[[-.07,5.66],[-.02,5.66],[-.02,5.7],[-.07,5.7],[-.07,5.66]]]}},{type:"Feature",properties:{id:"Z-002",name:"Accra CBD Zone",zone:"Commercial",type:"commercial",area:"1,240 ha",owner:"AMA – Accra Metro",status:"Active"},geometry:{type:"Polygon",coordinates:[[[-.215,5.54],[-.165,5.54],[-.165,5.58],[-.215,5.58],[-.215,5.54]]]}},{type:"Feature",properties:{id:"Z-003",name:"Spintex Residential Estate",zone:"Residential",type:"residential",area:"2,100 ha",owner:"LUSPA – Greater Accra",status:"Active"},geometry:{type:"Polygon",coordinates:[[[-.12,5.61],[-.06,5.61],[-.06,5.655],[-.12,5.655],[-.12,5.61]]]}},{type:"Feature",properties:{id:"Z-004",name:"Accra Plains Agricultural Reserve",zone:"Agricultural",type:"agricultural",area:"7,640 ha",owner:"Ministry of Food & Agriculture",status:"Pending"},geometry:{type:"Polygon",coordinates:[[[-.28,5.56],[-.22,5.56],[-.22,5.62],[-.28,5.62],[-.28,5.56]]]}},{type:"Feature",properties:{id:"Z-005",name:"Adentan Mixed-Use Corridor",zone:"Mixed-Use",type:"mixed",area:"890 ha",owner:"Adentan Municipal Assembly",status:"Review"},geometry:{type:"Polygon",coordinates:[[[-.17,5.665],[-.12,5.665],[-.12,5.705],[-.17,5.705],[-.17,5.665]]]}}]},Sm={type:"FeatureCollection",features:[{type:"Feature",properties:{id:"LU-001",name:"Accra-Tema Motorway Buffer",type:"transport",area:"620 ha"},geometry:{type:"Polygon",coordinates:[[[-.19,5.595],[-.05,5.595],[-.05,5.615],[-.19,5.615],[-.19,5.595]]]}},{type:"Feature",properties:{id:"LU-002",name:"Korle Lagoon Ecological Zone",type:"ecology",area:"340 ha"},geometry:{type:"Polygon",coordinates:[[[-.235,5.53],[-.195,5.53],[-.195,5.56],[-.235,5.56],[-.235,5.53]]]}},{type:"Feature",properties:{id:"LU-003",name:"Legon University Campus",type:"institutional",area:"1,120 ha"},geometry:{type:"Polygon",coordinates:[[[-.205,5.64],[-.17,5.64],[-.17,5.675],[-.205,5.675],[-.205,5.64]]]}}]},Tm={type:"FeatureCollection",features:[{type:"Feature",properties:{id:"UT-001",name:"Kpone Power Plant",type:"power",status:"Active"},geometry:{type:"Point",coordinates:[-.052,5.693]}},{type:"Feature",properties:{id:"UT-002",name:"Tema Water Works",type:"water",status:"Active"},geometry:{type:"Point",coordinates:[-.012,5.668]}},{type:"Feature",properties:{id:"UT-003",name:"Accra Sewage Treatment",type:"sewage",status:"Active"},geometry:{type:"Point",coordinates:[-.252,5.527]}},{type:"Feature",properties:{id:"UT-004",name:"GHACEM Cement Works",type:"industrial",status:"Active"},geometry:{type:"Point",coordinates:[-.037,5.682]}},{type:"Feature",properties:{id:"UT-005",name:"Kotoka Intl Airport",type:"transport",status:"Active"},geometry:{type:"Point",coordinates:[-.165,5.605]}}]},Fs={industrial:{fill:"rgba(255, 158, 27, 0.20)",stroke:"#FF9E1B"},commercial:{fill:"rgba(0, 94, 184, 0.18)",stroke:"#005EB8"},residential:{fill:"rgba(65, 182, 166, 0.20)",stroke:"#41B6A6"},agricultural:{fill:"rgba(0, 107, 63, 0.20)",stroke:"#006B3F"},mixed:{fill:"rgba(30, 26, 75, 0.18)",stroke:"#1E1A4B"},default:{fill:"rgba(122,122,122, 0.15)",stroke:"#7A7A7A"}},pl={power:"#FF9E1B",water:"#41B6A6",sewage:"#8B6F47",industrial:"#005EB8",transport:"#1E1A4B",default:"#7A7A7A"};function Xr(s,t){const e=s.get("type")||"default",i=Fs[e]??Fs.default;return new wt({fill:new It({color:i.fill}),stroke:new Ft({color:i.stroke,width:2})})}function Im(s,t){const e=s.get("type")||"default",i=Fs[e]??Fs.default;return new wt({fill:new It({color:i.fill.replace("0.20","0.40").replace("0.18","0.38")}),stroke:new Ft({color:i.stroke,width:3}),text:new tr({text:s.get("name"),font:"500 11px 'Exo', sans-serif",fill:new It({color:"#1E1A4B"}),stroke:new Ft({color:"#fff",width:3}),overflow:!0})})}function bm(s,t){return new wt({fill:new It({color:"rgba(185, 217, 235, 0.18)"}),stroke:new Ft({color:"#B9D9EB",width:1.5,lineDash:[6,4]})})}function Mm(s,t){const e=s.get("type")||"default",i=pl[e]??pl.default;return new wt({image:new ui({radius:7,fill:new It({color:i}),stroke:new Ft({color:"#fff",width:2})})})}function Pm(s,t){return new wt({fill:new It({color:"rgba(30, 26, 75, 0.12)"}),stroke:new Ft({color:"#1E1A4B",width:2.5,lineDash:[8,4]}),image:new ui({radius:5,fill:new It({color:"#1E1A4B"}),stroke:new Ft({color:"#fff",width:1.5})})})}function Lm({theme:s,children:t}){const e=G.useRef(null),i=G.useRef(null),n=G.useRef(null),[r,o]=G.useState(null),[a,l]=G.useState(null),[h,c]=G.useState(null),[u,d]=G.useState(null),[f,g]=G.useState(null),[_,m]=G.useState(null),[p,x]=G.useState(null),[w,y]=G.useState(5e4),[E,T]=G.useState([-.187,5.6037]),[M,b]=G.useState("pan"),R=new rm({featureProjection:"EPSG:3857"});G.useEffect(()=>{if(!e.current||n.current)return;const A=new _l({source:new tm,visible:!0,properties:{title:"OpenStreetMap",type:"base"}}),O=new _l({source:new Qh({url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",attributions:"Tiles © Esri",maxZoom:19}),visible:!1,properties:{title:"Satellite",type:"base"}}),L=new dn({features:R.readFeatures(Rm)}),W=new un({source:L,style:Xr,visible:!0,properties:{title:"Zoning",type:"overlay"}}),P=new dn({features:R.readFeatures(Sm)}),Y=new un({source:P,style:bm,visible:!0,properties:{title:"Land Use",type:"overlay"}}),j=new dn({features:R.readFeatures(Tm)}),F=new un({source:j,style:Mm,visible:!1,properties:{title:"Utilities",type:"overlay"}}),D=new dn,V=new un({source:D,style:Pm,properties:{title:"Draw Layer",type:"draw"}}),q=new vm({units:"metric",bar:!1,minWidth:80}),J=new Cm({coordinateFormat:Jc(4),projection:"EPSG:4326",className:"ol-mouse-position",placeholder:"—"}),K=new y_({target:e.current,layers:[A,O,Y,W,F,V],view:new ae({center:Xs([-.187,5.6037]),zoom:12,minZoom:8,maxZoom:19}),controls:Bh({zoom:!1,attribution:!0,rotate:!1}).extend([q,J])});return n.current=K,o(A),l(O),c(W),d(Y),g(F),m(V),K.getView().on("change:resolution",()=>{const I=K.getView().getResolution()??1;y(Math.round(I*96/.0254))}),K.on("pointermove",lt=>{if(lt.dragging)return;const I=va(lt.coordinate);T([Math.round(I[0]*1e4)/1e4,Math.round(I[1]*1e4)/1e4])}),K.on("singleclick",lt=>{let I=!1;K.forEachFeatureAtPixel(lt.pixel,ut=>{if(I)return;I=!0;const rt=ut.getProperties(),Mt=va(lt.coordinate);x({id:rt.id??"N/A",name:rt.name??"Unknown Feature",type:rt.type??"unknown",zone:rt.zone??rt.type??"—",area:rt.area??"—",owner:rt.owner??"—",status:rt.status??"Active",coordinate:[Math.round(Mt[0]*1e4)/1e4,Math.round(Mt[1]*1e4)/1e4]}),W.setStyle((Pt,Dt)=>Pt===ut?Im(Pt):Xr(Pt))},{layerFilter:ut=>ut===W||ut===Y||ut===F}),I||(x(null),W.setStyle(Xr))}),K.on("pointermove",lt=>{const I=K.hasFeatureAtPixel(lt.pixel),ut=K.getViewport();ut.style.cursor=I?"pointer":""}),()=>{K.setTarget(void 0),n.current=null}},[]),G.useEffect(()=>{if(!e.current)return;const A=e.current.querySelector(".ol-viewport");A&&A.classList.toggle("dark",s==="dark")},[s]);const S={map:n.current,osmLayer:r,satelliteLayer:a,zoningLayer:h,landUseLayer:u,utilitiesLayer:f,drawLayer:_,popupData:p,setPopupData:x,scale:w,setScale:y,coordinates:E,setCoordinates:T,activeInteraction:M,setActiveInteraction:b};return C.jsxs(Uh.Provider,{value:S,children:[C.jsx("div",{ref:e,className:`absolute inset-0 w-full h-full ${s==="dark"?"dark":""}`,"aria-label":"Interactive planning map",role:"application"}),C.jsx("div",{ref:i,id:"ol-popup-anchor"}),t]})}function Am(s){const[t,e]=G.useState(()=>s?s==="dark":document.documentElement.classList.contains("dark"));return G.useEffect(()=>{if(s){e(s==="dark");return}const i=new MutationObserver(()=>{e(document.documentElement.classList.contains("dark"))});return i.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]}),()=>i.disconnect()},[s]),t?"dark":"light"}function Om({theme:s}){const t=s==="dark",{scale:e,coordinates:i,popupData:n}=Yn(),[r,o]=G.useState(!0),[a,l]=G.useState(!0),h=e>=1e3?`1:${(e/1e3).toFixed(0)}k`:`1:${e}`;return C.jsxs(C.Fragment,{children:[C.jsx("div",{className:"absolute top-4 left-1/2 -translate-x-1/2 z-50 pointer-events-none",children:!n&&C.jsx(fc,{status:"success",message:"Map ready · Click a feature to inspect"})}),C.jsx("div",{className:"absolute top-6 left-6 z-40",children:C.jsx(zg,{theme:s})}),C.jsx("div",{className:"absolute top-6 right-6 z-40",children:C.jsx(Yg,{theme:s,isOpen:r,onOpenChange:o})}),C.jsx("div",{className:"absolute top-28 right-6 z-40",children:C.jsx(Ug,{theme:s,isOpen:a,onOpenChange:l})}),C.jsx(Zg,{theme:s}),C.jsxs("div",{className:"absolute bottom-32 left-6 z-30 space-y-2 pointer-events-none",children:[C.jsxs("div",{className:` + hidden items-center gap-2 px-3 py-1.5 rounded-lg backdrop-blur-sm shadow-sm + bg-card/95 border border-border + `,children:[C.jsx("div",{className:`w-2 h-2 rounded-full ${t?"bg-brand-blue-light":"bg-brand-blue-strong"}`}),C.jsxs("span",{className:"text-[length:var(--text-xs)] text-foreground",children:[s==="light"?"Light Mode":"Dark Mode"," · OpenLayers"]})]}),C.jsxs("div",{className:` + flex items-center gap-3 px-4 py-3 rounded-xl backdrop-blur-sm shadow-md + bg-card/95 border border-border + `,children:[C.jsx(Cl,{size:30,color:"var(--brand-blue-strong)"}),C.jsxs("div",{children:[C.jsx("h6",{className:"font-[weight:var(--font-weight-bold)] text-foreground",children:"GIS Planning Platform"}),C.jsx("p",{className:"text-[length:var(--text-xs)] text-muted-foreground",children:"LUPMIS 2.0 · Spatial Intelligence"})]})]})]}),C.jsx("div",{className:"absolute bottom-32 left-1/2 -translate-x-1/2 z-30 pointer-events-none",children:C.jsxs("div",{className:` + flex items-center gap-4 px-4 py-2 rounded-xl backdrop-blur-sm shadow-sm + bg-card/95 border border-border + text-[length:var(--text-xs)] text-muted-foreground + `,children:[C.jsxs("div",{className:"flex items-center gap-1.5",children:[C.jsx("span",{children:"Scale"}),C.jsx("span",{className:"font-[weight:var(--font-weight-semibold)] text-foreground",children:h})]}),C.jsx("div",{className:"w-px h-3 bg-border"}),C.jsxs("div",{className:"flex items-center gap-1.5",children:[C.jsx("span",{children:"Lon"}),C.jsx("span",{className:"font-mono font-[weight:var(--font-weight-semibold)] text-foreground",children:i[0]})]}),C.jsxs("div",{className:"flex items-center gap-1.5",children:[C.jsx("span",{children:"Lat"}),C.jsx("span",{className:"font-mono font-[weight:var(--font-weight-semibold)] text-foreground",children:i[1]})]})]})}),C.jsx("div",{className:"absolute bottom-32 right-6 z-30 pointer-events-none",children:C.jsxs("div",{className:` + px-3 py-1.5 rounded-full backdrop-blur-sm + bg-accent/50 border border-border + text-[length:var(--text-xs)] text-muted-foreground + `,children:["Press ",C.jsx("kbd",{className:"px-1.5 py-0.5 bg-muted rounded text-foreground mx-1",children:"?"})," for shortcuts · ",C.jsx("kbd",{className:"px-1.5 py-0.5 bg-muted rounded text-foreground mx-1",children:"Esc"})," to pan"]})})]})}function Wm({theme:s}){const t=Am(s);return C.jsx("div",{className:"relative w-full h-screen overflow-hidden bg-background",children:C.jsx(Lm,{theme:t,children:C.jsx(Om,{theme:t})})})}export{Wm as GISMapMockup}; diff --git a/assets/LUSPADashboard-DFuqoI8e.js b/assets/LUSPADashboard-DFuqoI8e.js new file mode 100644 index 0000000..75d5317 --- /dev/null +++ b/assets/LUSPADashboard-DFuqoI8e.js @@ -0,0 +1,13 @@ +import{c as p,r as g,j as e,O as N,F as w,D as k,N as C,C as A,M as z,S as P}from"./index-mUEXKEer.js";import{Q as S,C as a,M as l,S as D,T as c}from"./NielsenHeuristics-d7HCIgJi.js";import{C as R,a as M,F as _}from"./file-text-BG0u0kR1.js";import{E as h}from"./eye-QHwXAkqY.js";import{U as I}from"./user-H-bTlvBe.js";import{M as U}from"./map-pin-BhJz-uKs.js";const $=[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]],H=p("calendar",$);const L=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],E=p("download",L);const G=[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]],T=p("funnel",G),q=()=>{const[i,r]=g.useState("all"),[u,v]=g.useState(null),s=[{id:"APP-2026-001",parcelId:"GH-0345-22",applicant:"Accra Development Corp",type:"Commercial Development",location:"Tema Industrial Area",submittedDate:"2026-02-15",status:"pending",priority:"high"},{id:"APP-2026-002",parcelId:"GH-0456-22",applicant:"Kumasi Housing Ltd",type:"Residential Complex",location:"Kumasi Metropolitan",submittedDate:"2026-02-18",status:"under_review",priority:"medium"},{id:"APP-2026-003",parcelId:"GH-0567-22",applicant:"Ghana Utilities Co",type:"Infrastructure Upgrade",location:"Greater Accra Region",submittedDate:"2026-02-10",status:"approved",priority:"high"},{id:"APP-2026-004",parcelId:"GH-0678-22",applicant:"Takoradi Ventures",type:"Mixed-Use Development",location:"Sekondi-Takoradi",submittedDate:"2026-02-20",status:"under_review",priority:"low"},{id:"APP-2026-005",parcelId:"GH-0789-22",applicant:"Cape Coast Builders",type:"Hotel Development",location:"Cape Coast",submittedDate:"2026-02-12",status:"rejected",priority:"medium"}],n={total:s.length,pending:s.filter(t=>t.status==="pending").length,underReview:s.filter(t=>t.status==="under_review").length,approved:s.filter(t=>t.status==="approved").length,rejected:s.filter(t=>t.status==="rejected").length},d=i==="all"?s:s.filter(t=>t.status===i),b={pending:{label:"Pending Review",color:"var(--brand-orange-warm)",bg:"bg-brand-orange-warm/10",icon:M},under_review:{label:"Under Review",color:"var(--primary)",bg:"bg-primary/10",icon:h},approved:{label:"Approved",color:"var(--success)",bg:"bg-success/10",icon:R},rejected:{label:"Rejected",color:"var(--destructive)",bg:"bg-destructive/10",icon:A}},j={high:{label:"High",color:"text-destructive",bg:"bg-destructive/10"},medium:{label:"Medium",color:"text-warning",bg:"bg-warning/10"},low:{label:"Low",color:"text-muted-foreground",bg:"bg-muted"}};return e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsxs("header",{className:"bg-gradient-to-br from-brand-navy to-brand-blue-strong text-white py-8 px-8 relative overflow-hidden",children:[e.jsx("div",{className:"absolute top-0 right-0 opacity-10",children:e.jsx(N,{size:200,color:"white"})}),e.jsx("div",{className:"max-w-7xl mx-auto relative z-10",children:e.jsx("div",{className:"flex items-center justify-between",children:e.jsxs("div",{className:"flex items-center gap-4",children:[e.jsx(w,{size:48,color:"var(--brand-orange-warm)"}),e.jsxs("div",{children:[e.jsx("h1",{className:"mb-2",children:"LUSPA Administration"}),e.jsx("p",{className:"text-[length:var(--text-md)] opacity-90",children:"Land Use and Spatial Planning Authority Dashboard"})]})]})})})]}),e.jsxs("div",{className:"max-w-7xl mx-auto p-8 space-y-8",children:[e.jsxs("section",{children:[e.jsxs("div",{className:"flex items-center justify-between mb-6",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(k,{size:24,color:"var(--brand-blue-strong)"}),e.jsx("h2",{children:"Overview"})]}),e.jsx("div",{className:"",children:e.jsx(S,{alignment:"right",actions:[{label:"New Application",symbolName:"sankofa",onClick:()=>alert("New application form"),shortcut:"Ctrl+N",description:"Start new application"},{label:"Export Reports",symbolName:"nyansapo",onClick:()=>alert("Export reports"),shortcut:"Ctrl+E",description:"Download reports"},{label:"View Analytics",symbolName:"nkonsonkonson",onClick:()=>alert("View analytics"),shortcut:"Ctrl+A",description:"System analytics"}],trigger:e.jsx(a,{variant:"secondary",size:"md",children:"Quick Actions"})})})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-5 gap-4",children:[e.jsx(l,{title:"Total Applications",value:n.total,symbolName:"fihankra",onClick:()=>r("all")}),e.jsx(l,{title:"Pending Review",value:n.pending,symbolName:"nkyinkyim",trend:{value:5,isPositive:!0},onClick:()=>r("pending")}),e.jsx(l,{title:"Under Review",value:n.underReview,symbolName:"nyansapo",onClick:()=>r("under_review")}),e.jsx(l,{title:"Approved",value:n.approved,symbolName:"dwennimmen",trend:{value:12,isPositive:!0},onClick:()=>r("approved")}),e.jsx(l,{title:"Rejected",value:n.rejected,symbolName:"mpatapo",onClick:()=>r("rejected")})]})]}),i!=="all"&&e.jsx(D,{status:"success",message:`Showing ${d.length} ${i.replace("_"," ")} application(s)`,symbolName:"nyansapo"}),e.jsxs("section",{children:[e.jsxs("div",{className:"flex items-center justify-between mb-6",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(C,{size:24,color:"var(--brand-blue-strong)"}),e.jsx("h2",{children:"Application Reviews"})]}),e.jsxs("div",{className:"flex gap-3",children:[e.jsx(c,{content:"Filter applications",children:e.jsxs(a,{variant:"ghost",size:"sm",symbolName:"fihankra",onClick:()=>r("all"),children:[e.jsx(T,{size:16}),i!=="all"&&` (${i.replace("_"," ")})`]})}),e.jsx(c,{content:"Export to CSV",children:e.jsx(a,{variant:"ghost",size:"sm",onClick:()=>alert("Export functionality"),children:e.jsx(E,{size:16})})})]})]}),e.jsxs("div",{className:"bg-card rounded-xl border border-border overflow-hidden",children:[e.jsxs("div",{className:"grid grid-cols-12 gap-4 px-6 py-4 bg-muted border-b border-border",children:[e.jsx("div",{className:"col-span-2 text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase text-muted-foreground",children:"Application ID"}),e.jsx("div",{className:"col-span-2 text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase text-muted-foreground",children:"Applicant"}),e.jsx("div",{className:"col-span-2 text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase text-muted-foreground",children:"Type"}),e.jsx("div",{className:"col-span-2 text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase text-muted-foreground",children:"Location"}),e.jsx("div",{className:"col-span-2 text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase text-muted-foreground",children:"Status"}),e.jsx("div",{className:"col-span-2 text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] uppercase text-muted-foreground",children:"Actions"})]}),d.map(t=>{const o=b[t.status],m=j[t.priority],f=o.icon,y=u===t.id;return e.jsxs("div",{onClick:()=>v(t.id),className:` + grid grid-cols-12 gap-4 px-6 py-4 + border-b border-border last:border-b-0 + hover:bg-accent transition-colors cursor-pointer + ${y?"bg-accent":""} + `,children:[e.jsxs("div",{className:"col-span-2 flex flex-col gap-1",children:[e.jsx("span",{className:"text-[length:var(--text-sm)] font-[weight:var(--font-weight-semibold)] text-foreground",children:t.id}),e.jsxs("div",{className:"flex items-center gap-1 text-[length:var(--text-xs)] text-muted-foreground",children:[e.jsx(_,{size:12}),e.jsx("span",{children:t.parcelId})]})]}),e.jsxs("div",{className:"col-span-2 flex items-start gap-2",children:[e.jsx(I,{size:16,className:"text-muted-foreground mt-0.5"}),e.jsxs("div",{className:"flex flex-col",children:[e.jsx("span",{className:"text-[length:var(--text-sm)] text-foreground",children:t.applicant}),e.jsxs("div",{className:"flex items-center gap-1 text-[length:var(--text-xs)] text-muted-foreground",children:[e.jsx(H,{size:12}),e.jsx("span",{children:new Date(t.submittedDate).toLocaleDateString()})]})]})]}),e.jsx("div",{className:"col-span-2",children:e.jsx("span",{className:"text-[length:var(--text-sm)] text-foreground",children:t.type})}),e.jsxs("div",{className:"col-span-2 flex items-start gap-2",children:[e.jsx(U,{size:16,className:"text-primary mt-0.5"}),e.jsx("span",{className:"text-[length:var(--text-sm)] text-foreground",children:t.location})]}),e.jsxs("div",{className:"col-span-2 flex flex-col gap-2",children:[e.jsxs("span",{className:` + inline-flex items-center gap-1.5 px-2 py-1 rounded-full + text-[length:var(--text-xs)] font-[weight:var(--font-weight-semibold)] + ${o.bg} w-fit + `,style:{color:o.color},children:[e.jsx(f,{size:12}),o.label]}),e.jsxs("span",{className:` + inline-flex px-2 py-0.5 rounded text-[length:var(--text-xs)] + ${m.bg} ${m.color} w-fit + `,children:[m.label," Priority"]})]}),e.jsxs("div",{className:"col-span-2 flex items-center gap-2",children:[e.jsx(c,{content:"Review application",children:e.jsx(a,{variant:"primary",size:"sm",onClick:x=>{x.stopPropagation(),alert(`Review ${t.id}`)},children:"Review"})}),e.jsx(c,{content:"View details",children:e.jsx(a,{variant:"ghost",size:"sm",onClick:x=>{x.stopPropagation(),alert(`View details for ${t.id}`)},children:e.jsx(h,{size:16})})})]})]},t.id)})]}),d.length===0&&e.jsxs("div",{className:"bg-card rounded-xl border border-border p-12 text-center",children:[e.jsx(z,{size:64,color:"var(--muted-foreground)",className:"mx-auto mb-4 opacity-50"}),e.jsx("h4",{className:"mb-2 text-muted-foreground",children:"No applications found"}),e.jsx("p",{className:"text-[length:var(--text-sm)] text-muted-foreground",children:"Try adjusting your filters or check back later"})]})]}),e.jsx("section",{className:"bg-gradient-to-r from-brand-navy/5 to-brand-blue-strong/5 rounded-xl p-6 border border-border",children:e.jsxs("div",{className:"flex items-start gap-4",children:[e.jsx(P,{size:40,color:"var(--brand-blue-strong)"}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h5",{className:"mb-2",children:"Application Review Guidelines"}),e.jsx("p",{className:"text-[length:var(--text-sm)] text-muted-foreground mb-3",children:"All applications are reviewed according to LUSPA standards and national planning regulations. Sankofa reminds us to learn from past decisions to improve future planning."}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(a,{variant:"ghost",size:"sm",symbolName:"nyansapo",children:"View Guidelines"}),e.jsx(a,{variant:"ghost",size:"sm",symbolName:"nkonsonkonson",children:"Contact Support"})]})]})]})})]})]})};export{q as LUSPADashboard}; diff --git a/assets/NielsenHeuristics-d7HCIgJi.js b/assets/NielsenHeuristics-d7HCIgJi.js new file mode 100644 index 0000000..70df534 --- /dev/null +++ b/assets/NielsenHeuristics-d7HCIgJi.js @@ -0,0 +1,32 @@ +import{A as u,j as e,r as f,R as k}from"./index-mUEXKEer.js";const $=({status:a,message:d,symbolName:m="osiadan",showProgress:l=!1,progress:n=0,className:s=""})=>{const r={idle:{color:"var(--muted-foreground)",bg:"var(--muted)",icon:m,defaultMessage:"Ready"},loading:{color:"var(--primary)",bg:"var(--accent)",icon:"nkyinkyim",defaultMessage:"Processing...",animate:!0},success:{color:"var(--success)",bg:"rgba(0, 107, 63, 0.1)",icon:"dwennimmen",defaultMessage:"Success!"},error:{color:"var(--destructive)",bg:"rgba(212, 24, 61, 0.1)",icon:"fihankra",defaultMessage:"Error occurred"},warning:{color:"var(--warning)",bg:"rgba(255, 158, 27, 0.1)",icon:"mpatapo",defaultMessage:"Warning"}}[a],i=u[r.icon].component;return e.jsxs("div",{className:`p-4 rounded-lg flex items-center gap-3 transition-all ${s}`,style:{backgroundColor:r.bg},role:"status","aria-live":"polite",children:[e.jsx(i,{size:24,color:r.color,className:r.hasOwnProperty("animate")?"animate-pulse":""}),e.jsxs("div",{className:"flex-1",children:[e.jsx("p",{style:{color:r.color},className:"font-[weight:var(--font-weight-medium)]",children:d||r.defaultMessage}),l&&a==="loading"&&e.jsx("div",{className:"mt-2 h-2 bg-border rounded-full overflow-hidden",children:e.jsx("div",{className:"h-full bg-primary transition-all duration-300",style:{width:`${n}%`},role:"progressbar","aria-valuenow":n,"aria-valuemin":0,"aria-valuemax":100})})]})]})},z=({title:a,description:d,actionLabel:m,symbolName:l,onAction:n,secondaryActionLabel:s,onSecondaryAction:t,disabled:r=!1,className:i=""})=>{const o=u[l].component,c=u[l];return e.jsxs("div",{className:`bg-card p-6 rounded-xl border border-border ${i}`,children:[e.jsxs("div",{className:"flex items-start gap-4 mb-4",children:[e.jsx("div",{className:"flex-shrink-0",children:e.jsx(o,{size:48,color:"var(--primary)"})}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h4",{className:"mb-2",children:a}),e.jsx("p",{className:"text-muted-foreground text-sm mb-1",children:d}),e.jsxs("p",{className:"text-sm text-muted-foreground italic",children:[c.name,": ",c.meaning]})]})]}),e.jsxs("div",{className:"flex gap-3",children:[e.jsx("button",{onClick:n,disabled:r,className:"flex-1 bg-primary text-primary-foreground px-4 py-2 rounded-lg hover:bg-primary-hover disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:m}),s&&t&&e.jsx("button",{onClick:t,disabled:r,className:"px-4 py-2 bg-secondary text-secondary-foreground rounded-lg hover:bg-secondary-hover disabled:opacity-50 disabled:cursor-not-allowed transition-colors",children:s})]})]})},L=({actionLabel:a,onConfirm:d,onCancel:m,confirmMessage:l,showUndo:n=!0,undoTimeoutMs:s=5e3,symbolName:t="nkyinkyim",variant:r="primary",className:i=""})=>{const[o,c]=f.useState("ready"),[g,h]=f.useState(s/1e3),x=u[t].component;f.useEffect(()=>{if(o==="completed"&&n){const p=setInterval(()=>{h(S=>S<=.1?(clearInterval(p),0):S-.1)},100),j=setTimeout(()=>{c("ready"),h(s/1e3)},s);return()=>{clearInterval(p),clearTimeout(j)}}},[o,n,s]);const y=()=>{n?(c("completed"),d()):c("confirming")},N=()=>{c("completed"),d()},w=()=>{c("ready"),m&&m()},v=()=>{c("ready"),h(s/1e3),m&&m()},b={primary:"bg-primary text-primary-foreground hover:bg-primary-hover",destructive:"bg-destructive text-destructive-foreground hover:opacity-90",warning:"bg-warning text-warning-foreground hover:opacity-90"};return o==="completed"&&n?e.jsxs("div",{className:`bg-success/10 p-4 rounded-lg flex items-center justify-between ${i}`,children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(x,{size:24,color:"var(--success)"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-success font-[weight:var(--font-weight-medium)]",children:l}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:["Reverting in ",Math.ceil(g),"s"]})]})]}),e.jsx("button",{onClick:v,className:"px-4 py-2 bg-secondary text-secondary-foreground rounded-lg hover:bg-secondary-hover transition-colors",children:"Undo"})]}):o==="confirming"?e.jsxs("div",{className:`bg-card p-4 rounded-lg border-2 border-warning ${i}`,children:[e.jsx("p",{className:"text-warning font-[weight:var(--font-weight-medium)] mb-3",children:"Are you sure you want to proceed?"}),e.jsxs("div",{className:"flex gap-3",children:[e.jsx("button",{onClick:N,className:`flex-1 px-4 py-2 rounded-lg transition-colors ${b[r]}`,children:"Yes, Continue"}),e.jsx("button",{onClick:w,className:"px-4 py-2 bg-secondary text-secondary-foreground rounded-lg hover:bg-secondary-hover transition-colors",children:"Cancel"})]})]}):e.jsxs("button",{onClick:y,className:`px-6 py-3 rounded-lg transition-colors flex items-center gap-2 ${b[r]} ${i}`,children:[e.jsx(x,{size:24,color:"currentColor"}),e.jsx("span",{children:a})]})},E=({children:a,variant:d="primary",size:m="md",symbolName:l,symbolPosition:n="left",onClick:s,disabled:t=!1,loading:r=!1,fullWidth:i=!1,className:o=""})=>{const c=l?u[l].component:null,g={primary:"bg-primary text-primary-foreground hover:bg-primary-hover",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary-hover",success:"bg-success text-success-foreground hover:opacity-90",warning:"bg-warning text-warning-foreground hover:opacity-90",destructive:"bg-destructive text-destructive-foreground hover:opacity-90",ghost:"bg-transparent text-foreground hover:bg-accent"},x={sm:{padding:"px-3 py-1.5",text:"text-sm",iconSize:16},md:{padding:"px-6 py-3",text:"text-base",iconSize:20},lg:{padding:"px-8 py-4",text:"text-lg",iconSize:24}}[m],y=u.nkyinkyim.component;return e.jsx("button",{onClick:s,disabled:t||r,className:` + ${g[d]} + ${x.padding} + ${x.text} + ${i?"w-full":""} + rounded-lg + font-[weight:var(--font-weight-semibold)] + transition-all + flex items-center justify-center gap-2 + disabled:opacity-50 disabled:cursor-not-allowed + ${o} + `,"aria-busy":r,children:r?e.jsxs(e.Fragment,{children:[e.jsx(y,{size:x.iconSize,color:"currentColor",className:"animate-pulse"}),e.jsx("span",{children:"Loading..."})]}):e.jsxs(e.Fragment,{children:[c&&n==="left"&&e.jsx(c,{size:x.iconSize,color:"currentColor"}),e.jsx("span",{children:a}),c&&n==="right"&&e.jsx(c,{size:x.iconSize,color:"currentColor"})]})})},M=({label:a,value:d,onChange:m,placeholder:l,helpText:n,validation:s,showCharCount:t=!1,symbolName:r="nyansapo",className:i=""})=>{const[o,c]=f.useState(null),[g,h]=f.useState(!1),x=u[r].component,y=p=>s?s.required&&!p.trim()?"This field is required":s.minLength&&p.lengths.maxLength?`Maximum ${s.maxLength} characters allowed`:s.pattern&&!s.pattern.test(p)?"Invalid format":s.custom?s.custom(p):null:null,N=p=>{const j=p.target.value;m(j),g&&c(y(j))},w=()=>{h(!0),c(y(d))},v=!o&&g&&d,b=o&&g;return e.jsxs("div",{className:`space-y-2 ${i}`,children:[e.jsxs("label",{className:"flex items-center gap-2 font-[weight:var(--font-weight-medium)]",children:[e.jsx(x,{size:20,color:"var(--foreground)"}),e.jsx("span",{children:a}),s?.required&&e.jsx("span",{className:"text-destructive",children:"*"})]}),e.jsxs("div",{className:"relative",children:[e.jsx("input",{type:"text",value:d,onChange:N,onBlur:w,placeholder:l,className:` + w-full px-4 py-3 rounded-lg + bg-input-background border-2 + transition-colors + focus:outline-none focus:ring-2 focus:ring-ring + ${b?"border-destructive":v?"border-success":"border-border"} + `,"aria-invalid":b?"true":"false","aria-describedby":`${a}-help ${a}-error`}),v&&e.jsx("div",{className:"absolute right-3 top-1/2 -translate-y-1/2",children:k.createElement(u.dwennimmen.component,{size:20,color:"var(--success)"})})]}),e.jsxs("div",{className:"flex justify-between items-start gap-2",children:[e.jsxs("div",{className:"flex-1",children:[n&&!b&&e.jsx("p",{id:`${a}-help`,className:"text-sm text-muted-foreground",children:n}),b&&e.jsx("p",{id:`${a}-error`,className:"text-sm text-destructive",role:"alert",children:o})]}),t&&s?.maxLength&&e.jsxs("p",{className:"text-sm text-muted-foreground",children:[d.length,"/",s.maxLength]})]})]})},A=({content:a,symbolName:d,children:m,position:l="top",className:n=""})=>{const[s,t]=f.useState(!1),r=d?u[d].component:null,i={top:"bottom-full left-1/2 -translate-x-1/2 mb-2",bottom:"top-full left-1/2 -translate-x-1/2 mt-2",left:"right-full top-1/2 -translate-y-1/2 mr-2",right:"left-full top-1/2 -translate-y-1/2 ml-2"};return e.jsxs("div",{className:`relative inline-block ${n}`,onMouseEnter:()=>t(!0),onMouseLeave:()=>t(!1),onFocus:()=>t(!0),onBlur:()=>t(!1),children:[m,s&&e.jsx("div",{className:` + absolute ${i[l]} + bg-popover text-popover-foreground + px-3 py-2 rounded-lg + text-sm + shadow-lg border border-border + z-50 + whitespace-nowrap + animate-fade-in + `,role:"tooltip",children:e.jsxs("div",{className:"flex items-center gap-2",children:[r&&e.jsx(r,{size:16,color:"currentColor"}),e.jsx("span",{children:a})]})})]})},I=({actions:a,trigger:d,className:m="",alignment:l="left"})=>{const[n,s]=f.useState(!1);return f.useEffect(()=>{const t=r=>{a.forEach(i=>{if(i.shortcut){const o=i.shortcut.toLowerCase().split("+"),c=o.includes("ctrl")&&(r.ctrlKey||r.metaKey),g=o.includes("shift")&&r.shiftKey,h=o.includes("alt")&&r.altKey,x=o[o.length-1];r.key.toLowerCase()===x&&(!o.includes("ctrl")||c)&&(!o.includes("shift")||g)&&(!o.includes("alt")||h)&&(r.preventDefault(),i.onClick(),s(!1))}})};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[a]),e.jsxs("div",{className:`relative ${m}`,children:[e.jsx("div",{onClick:()=>s(!n),children:d||e.jsx("button",{className:"px-4 py-2 bg-secondary text-secondary-foreground rounded-lg hover:bg-secondary-hover",children:"Quick Actions"})}),n&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"fixed inset-0 z-40",onClick:()=>s(!1)}),e.jsx("div",{className:`absolute top-full mt-2 ${l==="left"?"left-0":"right-0"} bg-popover border border-border rounded-lg shadow-xl z-50 min-w-[300px]`,children:a.map((t,r)=>{const i=u[t.symbolName].component;return e.jsxs("button",{onClick:()=>{t.onClick(),s(!1)},className:"w-full px-4 py-3 flex items-center gap-3 hover:bg-accent transition-colors text-left first:rounded-t-lg last:rounded-b-lg",children:[e.jsx(i,{size:20,color:"var(--primary)"}),e.jsxs("div",{className:"flex-1",children:[e.jsx("div",{className:"font-[weight:var(--font-weight-medium)]",children:t.label}),t.description&&e.jsx("div",{className:"text-sm text-muted-foreground",children:t.description})]}),t.shortcut&&e.jsx("kbd",{className:"px-2 py-1 bg-muted rounded text-sm font-mono",children:t.shortcut})]},r)})})]})]})},R=({title:a,value:d,symbolName:m,trend:l,onClick:n,className:s=""})=>{const t=u[m].component;return e.jsxs("div",{onClick:n,className:` + bg-card p-6 rounded-xl border border-border + ${n?"cursor-pointer hover:shadow-lg hover:scale-105":""} + transition-all + ${s} + `,children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(t,{size:32,color:"var(--primary)"}),l&&e.jsxs("div",{className:`font-[weight:var(--font-weight-semibold)] ${l.isPositive?"text-success":"text-destructive"}`,children:[l.isPositive?"↑":"↓"," ",Math.abs(l.value),"%"]})]}),e.jsx("div",{className:"text-[length:var(--text-2xl)] font-[weight:var(--font-weight-bold)] mb-1",children:d}),e.jsx("div",{className:"text-muted-foreground text-sm",children:a})]})},K=({title:a,message:d,technicalDetails:m,onRetry:l,onSupport:n,onDismiss:s,showTechnicalDetails:t=!1,className:r=""})=>{const[i,o]=f.useState(!1),c=u.mpatapo.component,g=u.nkyinkyim.component,h=u.nkonsonkonson.component;return e.jsxs("div",{className:`bg-destructive/10 border-2 border-destructive rounded-xl p-6 ${r}`,role:"alert",children:[e.jsxs("div",{className:"flex items-start gap-4 mb-4",children:[e.jsx(c,{size:32,color:"var(--destructive)"}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h4",{className:"text-destructive mb-2",children:a}),e.jsx("p",{className:"text-foreground mb-3",children:d}),t&&m&&e.jsxs("div",{className:"mt-3",children:[e.jsxs("button",{onClick:()=>o(!i),className:"text-sm text-muted-foreground hover:text-foreground transition-colors underline",children:[i?"Hide":"Show"," technical details"]}),i&&e.jsx("pre",{className:"mt-2 p-3 bg-muted rounded text-sm overflow-x-auto",children:m})]})]})]}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[l&&e.jsxs("button",{onClick:l,className:"px-4 py-2 bg-primary text-primary-foreground rounded-lg hover:bg-primary-hover transition-colors flex items-center gap-2",children:[e.jsx(g,{size:20,color:"currentColor"}),e.jsx("span",{children:"Try Again"})]}),n&&e.jsxs("button",{onClick:n,className:"px-4 py-2 bg-secondary text-secondary-foreground rounded-lg hover:bg-secondary-hover transition-colors flex items-center gap-2",children:[e.jsx(h,{size:20,color:"currentColor"}),e.jsx("span",{children:"Contact Support"})]}),s&&e.jsx("button",{onClick:s,className:"px-4 py-2 bg-transparent text-muted-foreground rounded-lg hover:bg-muted transition-colors",children:"Dismiss"})]})]})},V=({title:a,content:d,learnMoreUrl:m,symbolName:l="nyansapo",steps:n,tips:s,className:t=""})=>{const r=u[l].component,i=u[l];return e.jsxs("div",{className:`bg-accent/50 border border-accent rounded-xl p-6 ${t}`,children:[e.jsxs("div",{className:"flex items-start gap-4 mb-4",children:[e.jsx(r,{size:40,color:"var(--primary)"}),e.jsxs("div",{className:"flex-1",children:[e.jsx("h4",{className:"mb-2",children:a}),e.jsxs("p",{className:"text-sm text-muted-foreground italic mb-3",children:[i.name,": ",i.meaning]}),e.jsx("p",{className:"text-foreground",children:d})]})]}),n&&n.length>0&&e.jsxs("div",{className:"mt-4",children:[e.jsx("h6",{className:"mb-2",children:"Steps:"}),e.jsx("ol",{className:"space-y-2 list-decimal list-inside",children:n.map((o,c)=>e.jsx("li",{className:"text-sm text-foreground",children:o},c))})]}),s&&s.length>0&&e.jsxs("div",{className:"mt-4",children:[e.jsx("h6",{className:"mb-2",children:"Tips:"}),e.jsx("ul",{className:"space-y-2",children:s.map((o,c)=>e.jsxs("li",{className:"text-sm text-muted-foreground flex items-start gap-2",children:[e.jsx("span",{className:"text-success",children:"•"}),e.jsx("span",{children:o})]},c))})]}),m&&e.jsxs("a",{href:"#",target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-2 mt-4 text-primary hover:underline",children:[e.jsx("span",{children:"Learn more"}),e.jsx("span",{children:"→"})]})]})};export{z as A,E as C,K as E,R as M,I as Q,$ as S,A as T,L as U,M as V,V as a}; diff --git a/assets/NielsenShowcase-CNC7yiOM.js b/assets/NielsenShowcase-CNC7yiOM.js new file mode 100644 index 0000000..4d2d108 --- /dev/null +++ b/assets/NielsenShowcase-CNC7yiOM.js @@ -0,0 +1,4 @@ +import{r,j as e,P as f,O as n}from"./index-mUEXKEer.js";import{S as i,C as s,A as x,U as u,V as p,T as d,Q as w,M as t,E as k,a as b}from"./NielsenHeuristics-d7HCIgJi.js";const A=()=>{const[g,j]=r.useState(""),[a,o]=r.useState("idle"),[y,m]=r.useState(0),[N,l]=r.useState(!1),v=()=>{o("loading"),m(0);const c=setInterval(()=>{m(h=>h>=100?(clearInterval(c),o("success"),setTimeout(()=>o("idle"),3e3),100):h+10)},300)};return e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsx(f,{title:"Usability Principles",description:"10 essential design principles for creating user-friendly interfaces, integrated with Adinkra symbolism and proportional typography."}),e.jsxs("section",{className:"relative bg-gradient-to-br from-brand-navy to-brand-blue-strong text-white py-16 px-8",children:[e.jsx("div",{className:"absolute top-10 right-10 opacity-10",children:e.jsx(n,{size:150,color:"white"})}),e.jsxs("div",{className:"max-w-7xl mx-auto relative z-10",children:[e.jsxs("div",{className:"flex items-center gap-4 mb-4",children:[e.jsx(n,{size:64,color:"var(--brand-orange-warm)"}),e.jsx("h1",{children:"Usability Principles"})]}),e.jsx("p",{className:"text-[length:var(--text-md)] opacity-90 max-w-3xl",children:"10 essential design principles for creating user-friendly interfaces, integrated with our Adinkra symbol system and proportional typography scaling."})]})]}),e.jsxs("div",{className:"max-w-7xl mx-auto p-8 space-y-16",children:[e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"1. Show What's Happening"}),e.jsx("p",{className:"text-muted-foreground",children:"Keep users informed with clear, timely feedback about system actions and progress"})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx(i,{status:"idle",message:"System ready for action"}),e.jsx(i,{status:a,message:a==="loading"?"Processing your request...":a==="success"?"Action completed successfully!":"Ready",showProgress:a==="loading",progress:y}),e.jsx(i,{status:"warning",message:"Please review the information before proceeding",symbolName:"mpatapo"}),e.jsx(i,{status:"error",message:"Unable to connect to the server",symbolName:"fihankra"}),e.jsx(s,{onClick:v,symbolName:"nkyinkyim",disabled:a==="loading",children:"Test Loading State"})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"2. Use Familiar Language"}),e.jsx("p",{className:"text-muted-foreground",children:"Speak the user's language with words and concepts they already know"})]}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-6",children:[e.jsx(x,{title:"Begin Your Learning Journey",description:"Access courses, tutorials, and knowledge resources tailored to your interests.",actionLabel:"Start Learning",symbolName:"sankofa",onAction:()=>alert("Learning journey started!"),secondaryActionLabel:"Browse Catalog",onSecondaryAction:()=>alert("Browsing catalog...")}),e.jsx(x,{title:"Join Our Community",description:"Connect with like-minded individuals and collaborate on projects together.",actionLabel:"Join Now",symbolName:"nkonsonkonson",onAction:()=>alert("Welcome to the community!"),secondaryActionLabel:"Learn More",onSecondaryAction:()=>alert("Learning more...")})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"3. Allow Easy Undo and Exit"}),e.jsx("p",{className:"text-muted-foreground",children:"Let users easily reverse actions or exit unwanted situations"})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Safe Actions with Undo"}),e.jsx(u,{actionLabel:"Archive Item",onConfirm:()=>console.log("Item archived"),onCancel:()=>console.log("Archive cancelled"),confirmMessage:"Item archived successfully",symbolName:"fihankra",variant:"primary"})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Destructive Actions with Confirmation"}),e.jsx(u,{actionLabel:"Delete Forever",onConfirm:()=>console.log("Item deleted"),confirmMessage:"Item deleted",showUndo:!1,symbolName:"nkyinkyim",variant:"destructive"})]})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"4. Consistency and Standards"}),e.jsx("p",{className:"text-muted-foreground",children:"Follow platform conventions and maintain internal consistency"})]}),e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Button Variants (Consistent Styling)"}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsx(s,{variant:"primary",symbolName:"osiadan",children:"Primary"}),e.jsx(s,{variant:"secondary",symbolName:"sankofa",children:"Secondary"}),e.jsx(s,{variant:"success",symbolName:"dwennimmen",children:"Success"}),e.jsx(s,{variant:"warning",symbolName:"nkyinkyim",children:"Warning"}),e.jsx(s,{variant:"destructive",children:"Destructive"}),e.jsx(s,{variant:"ghost",symbolName:"nyansapo",children:"Ghost"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Button Sizes (Consistent Scaling)"}),e.jsxs("div",{className:"flex flex-wrap items-center gap-3",children:[e.jsx(s,{size:"sm",symbolName:"osiadan",children:"Small"}),e.jsx(s,{size:"md",symbolName:"osiadan",children:"Medium"}),e.jsx(s,{size:"lg",symbolName:"osiadan",children:"Large"})]})]}),e.jsxs("div",{children:[e.jsx("h6",{className:"mb-3 text-muted-foreground",children:"Loading States (Consistent Feedback)"}),e.jsxs("div",{className:"flex flex-wrap gap-3",children:[e.jsx(s,{loading:!0,variant:"primary",children:"Processing"}),e.jsx(s,{disabled:!0,variant:"secondary",children:"Disabled"})]})]})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"5. Error Prevention"}),e.jsx("p",{className:"text-muted-foreground",children:"Prevent errors through good design, constraints, and confirmations"})]}),e.jsxs("div",{className:"max-w-2xl space-y-6",children:[e.jsx(p,{label:"Username",value:g,onChange:j,placeholder:"Enter your username",helpText:"Use 3-20 characters, letters and numbers only",validation:{required:!0,minLength:3,maxLength:20,pattern:/^[a-zA-Z0-9]+$/},showCharCount:!0,symbolName:"nyansapo"}),e.jsx(p,{label:"Email Address",value:"",onChange:()=>{},placeholder:"you@example.com",helpText:"We'll never share your email",validation:{required:!0,custom:c=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(c)?null:"Please enter a valid email address"},symbolName:"nkonsonkonson"})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"6. Recognition Rather Than Recall"}),e.jsx("p",{className:"text-muted-foreground",children:"Make objects, actions, and options visible with contextual help"})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"flex flex-wrap gap-4",children:[e.jsx(d,{content:"Represents love and harmony",symbolName:"osiadan",children:e.jsx(s,{symbolName:"osiadan",children:"Hover for Symbol Meaning"})}),e.jsx(d,{content:"Learn from the past - Wisdom symbol",symbolName:"sankofa",position:"bottom",children:e.jsx(s,{variant:"secondary",symbolName:"sankofa",children:"Educational Resources"})}),e.jsx(d,{content:"Unity and collaboration",symbolName:"nkonsonkonson",position:"right",children:e.jsx(s,{variant:"success",symbolName:"nkonsonkonson",children:"Team Tools"})})]}),e.jsx("div",{className:"bg-card p-6 rounded-xl border border-border",children:e.jsx("p",{className:"text-muted-foreground mb-4",children:"Tooltips provide context without requiring users to remember meanings. Each Adinkra symbol includes its cultural significance and recommended usage."})})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"7. Support Different Skill Levels"}),e.jsx("p",{className:"text-muted-foreground",children:"Provide shortcuts for experienced users while keeping things simple for beginners"})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsx("div",{className:"flex gap-4",children:e.jsx(w,{actions:[{label:"New Document",symbolName:"sankofa",onClick:()=>alert("New document"),shortcut:"Ctrl+N",description:"Create a new document"},{label:"Save",symbolName:"fihankra",onClick:()=>alert("Saved"),shortcut:"Ctrl+S",description:"Save current work"},{label:"Search",symbolName:"nyansapo",onClick:()=>alert("Search"),shortcut:"Ctrl+F",description:"Find content"},{label:"Collaborate",symbolName:"nkonsonkonson",onClick:()=>alert("Share"),shortcut:"Ctrl+Shift+S",description:"Share with team"}]})}),e.jsx("div",{className:"bg-accent/30 p-4 rounded-lg",children:e.jsxs("p",{className:"text-sm text-muted-foreground",children:["💡 ",e.jsx("strong",{children:"Power User Tip:"})," Keyboard shortcuts are displayed in the menu and work globally. Try pressing ",e.jsx("kbd",{className:"px-2 py-1 bg-muted rounded text-xs",children:"Ctrl+S"})," anywhere on this page."]})})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"8. Aesthetic and Minimalist Design"}),e.jsx("p",{className:"text-muted-foreground",children:"Remove unnecessary elements, focus on what matters"})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4",children:[e.jsx(t,{title:"Active Users",value:"2,547",symbolName:"nkonsonkonson",trend:{value:12,isPositive:!0}}),e.jsx(t,{title:"Completion Rate",value:"94%",symbolName:"dwennimmen",trend:{value:3,isPositive:!0}}),e.jsx(t,{title:"Learning Hours",value:"15,234",symbolName:"sankofa",trend:{value:8,isPositive:!0}}),e.jsx(t,{title:"Response Time",value:"1.2s",symbolName:"nkyinkyim",trend:{value:5,isPositive:!1}})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"9. Help Users Fix Errors"}),e.jsx("p",{className:"text-muted-foreground",children:"Explain errors clearly and offer specific solutions"})]}),e.jsxs("div",{className:"space-y-6",children:[N?e.jsx(k,{title:"Connection Failed",message:"We couldn't connect to the server. This might be due to a temporary network issue or server maintenance.",technicalDetails:`Error: ECONNREFUSED at port 443 +Timestamp: 2026-02-23T10:30:45Z +Request ID: req_abc123xyz`,showTechnicalDetails:!0,onRetry:()=>{alert("Retrying..."),setTimeout(()=>l(!1),1e3)},onSupport:()=>alert("Opening support chat..."),onDismiss:()=>l(!1)}):e.jsx(s,{variant:"destructive",onClick:()=>l(!0),children:"Trigger Example Error"}),e.jsxs("div",{className:"bg-card p-6 rounded-xl border border-border",children:[e.jsx("h6",{className:"mb-3",children:"Error Message Best Practices:"}),e.jsxs("ul",{className:"space-y-2 text-sm text-muted-foreground",children:[e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-success",children:"✓"}),e.jsx("span",{children:"Clear explanation in plain language"})]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-success",children:"✓"}),e.jsx("span",{children:"Actionable recovery options"})]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-success",children:"✓"}),e.jsx("span",{children:"Technical details available but hidden by default"})]}),e.jsxs("li",{className:"flex items-start gap-2",children:[e.jsx("span",{className:"text-success",children:"✓"}),e.jsx("span",{children:"Visual distinction with appropriate symbolism"})]})]})]})]})]}),e.jsx("div",{className:"border-t border-border"}),e.jsxs("section",{children:[e.jsxs("div",{className:"mb-6",children:[e.jsx("h2",{className:"mb-2",children:"10. Help and Documentation"}),e.jsx("p",{className:"text-muted-foreground",children:"Provide easy-to-search documentation focused on user tasks"})]}),e.jsxs("div",{className:"space-y-6",children:[e.jsx(b,{title:"Getting Started with Adinkra Symbols",content:`Adinkra symbols are visual representations of concepts and aphorisms from West African culture. + Each symbol carries deep meaning and can enhance your designs with cultural significance.`,symbolName:"sankofa",steps:["Choose a symbol that matches your feature's purpose","Import the symbol component from AdinkraSymbols","Customize size and color to fit your design","Add appropriate ARIA labels for accessibility"],tips:["Use Osiadan as your primary brand symbol","Match symbol meanings to feature purposes"],learnMoreUrl:"/ADINKRA_QUICK_REFERENCE.md"}),e.jsx(b,{title:"Understanding Proportional Scaling",content:"Our typography and spacing systems use proportional relationships to create harmonious visual designs. This approach creates natural visual hierarchy and balanced layouts.",symbolName:"nyansapo",steps:["Base font size is 16px (1rem)","Each size relates proportionally to the base","This creates natural visual hierarchy","Spacing follows the same principle"],tips:["Use the predefined spacing scale (space-1 through space-12)","Responsive typography scales automatically","Bebas Neue for impact, Exo for readability"],learnMoreUrl:"/DESIGN_SYSTEM_GUIDE.md"})]})]}),e.jsx("section",{className:"bg-gradient-to-br from-brand-blue-strong to-brand-navy text-white p-8 rounded-2xl",children:e.jsxs("div",{className:"flex items-start gap-6",children:[e.jsx(n,{size:80,color:"var(--brand-orange-warm)",className:"flex-shrink-0"}),e.jsxs("div",{children:[e.jsx("h3",{className:"mb-4",children:"Usability Principles in Practice"}),e.jsx("p",{className:"opacity-90 mb-6",children:"These 10 principles create interfaces that are easy to use, efficient, and forgiving. By combining them with our Adinkra symbolism and proportional design guidelines, we achieve both excellent user experience and cultural depth."}),e.jsxs("div",{className:"grid md:grid-cols-2 gap-4 text-sm",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx("p",{className:"font-[weight:var(--font-weight-semibold)]",children:"Key Benefits:"}),e.jsxs("ul",{className:"space-y-1 opacity-90",children:[e.jsx("li",{children:"• Reduced user errors"}),e.jsx("li",{children:"• Faster task completion"}),e.jsx("li",{children:"• Increased user satisfaction"}),e.jsx("li",{children:"• Better accessibility"}),e.jsx("li",{children:"• Cultural resonance"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("p",{className:"font-[weight:var(--font-weight-semibold)]",children:"Components Available:"}),e.jsxs("ul",{className:"space-y-1 opacity-90",children:[e.jsx("li",{children:"• Status feedback system"}),e.jsx("li",{children:"• Undoable actions"}),e.jsx("li",{children:"• Validated inputs"}),e.jsx("li",{children:"• Contextual tooltips"}),e.jsx("li",{children:"• Error recovery flows"})]})]})]})]})]})}),e.jsxs("footer",{className:"text-center pt-8 border-t border-border",children:[e.jsx(n,{size:48,color:"var(--brand-blue-strong)",className:"mx-auto mb-4"}),e.jsx("p",{className:"text-muted-foreground text-sm",children:"LUPMIS 2.0 Design Guidelines"})]})]})]})};export{A as NielsenShowcase}; diff --git a/assets/c12cadb8-101e-4bdc-9b80-78449fafda2f-C5fJKt8t.png b/assets/c12cadb8-101e-4bdc-9b80-78449fafda2f-C5fJKt8t.png new file mode 100644 index 0000000..4903831 Binary files /dev/null and b/assets/c12cadb8-101e-4bdc-9b80-78449fafda2f-C5fJKt8t.png differ diff --git a/assets/eye-QHwXAkqY.js b/assets/eye-QHwXAkqY.js new file mode 100644 index 0000000..fd3cf03 --- /dev/null +++ b/assets/eye-QHwXAkqY.js @@ -0,0 +1 @@ +import{c}from"./index-mUEXKEer.js";const e=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],r=c("eye",e);export{r as E}; diff --git a/assets/eye-off-Dznbbs9G.js b/assets/eye-off-Dznbbs9G.js new file mode 100644 index 0000000..c52da7f --- /dev/null +++ b/assets/eye-off-Dznbbs9G.js @@ -0,0 +1 @@ +import{c as e}from"./index-mUEXKEer.js";const a=[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]],t=e("eye-off",a);export{t as E}; diff --git a/assets/file-text-BG0u0kR1.js b/assets/file-text-BG0u0kR1.js new file mode 100644 index 0000000..2e4d0a5 --- /dev/null +++ b/assets/file-text-BG0u0kR1.js @@ -0,0 +1 @@ +import{c}from"./index-mUEXKEer.js";const e=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],k=c("circle-check-big",e);const t=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 6v6l4 2",key:"mmk7yg"}]],h=c("clock",t);const a=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],l=c("file-text",a);export{k as C,l as F,h as a}; diff --git a/assets/index-BYEJWa0a.css b/assets/index-BYEJWa0a.css new file mode 100644 index 0000000..e280852 --- /dev/null +++ b/assets/index-BYEJWa0a.css @@ -0,0 +1 @@ +@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Exo:wght@300;400;500;600;700;800&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:"";--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-gray-100:oklch(96.7% .003 264.542);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:var(--radius-sm);--radius-md:var(--radius-md);--radius-lg:var(--radius-lg);--radius-xl:var(--radius-xl);--radius-2xl:var(--radius-2xl);--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius-full:var(--radius-full)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}body{background-color:var(--background);color:var(--foreground)}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}}body{background-color:var(--background);color:var(--foreground);font-family:var(--font-body);font-weight:var(--font-weight-normal);line-height:var(--leading-normal)}html{font-size:var(--font-size-base)}h1,h2{font-family:var(--font-display);font-weight:var(--font-weight-normal);line-height:var(--leading-tight);letter-spacing:var(--tracking-wide);text-transform:uppercase}h3,h4,h5,h6{font-family:var(--font-body);font-weight:var(--font-weight-semibold);line-height:var(--leading-snug)}h1{font-size:var(--text-display-sm)}@media(min-width:768px){h1{font-size:var(--text-display-md)}}@media(min-width:1024px){h1{font-size:var(--text-display-lg)}}h2{font-size:var(--text-xl)}@media(min-width:768px){h2{font-size:var(--text-2xl)}}h3{font-size:var(--text-lg)}@media(min-width:768px){h3{font-size:var(--text-xl)}}h4{font-size:var(--text-md)}@media(min-width:768px){h4{font-size:var(--text-lg)}}h5{font-size:var(--text-base);font-weight:var(--font-weight-semibold)}h6{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider)}p{font-size:var(--text-base);line-height:var(--leading-relaxed)}label{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-weight-medium);line-height:var(--leading-normal)}button{font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-weight-semibold);line-height:var(--leading-normal);letter-spacing:var(--tracking-wide)}input,textarea,select{font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-weight-normal);line-height:var(--leading-normal)}small{font-size:var(--text-sm);line-height:var(--leading-normal)}strong,b{font-weight:var(--font-weight-bold)}em,i{font-style:italic}code{font-family:Monaco,Courier New,monospace;font-size:var(--text-sm);background:var(--muted);border-radius:var(--radius-sm);padding:.125rem .25rem}}@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.top-0{top:calc(var(--spacing) * 0)}.top-0\.5{top:calc(var(--spacing) * .5)}.top-1\/2{top:50%}.top-4{top:calc(var(--spacing) * 4)}.top-6{top:calc(var(--spacing) * 6)}.top-10{top:calc(var(--spacing) * 10)}.top-28{top:calc(var(--spacing) * 28)}.top-full{top:100%}.right-0{right:calc(var(--spacing) * 0)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-6{right:calc(var(--spacing) * 6)}.right-10{right:calc(var(--spacing) * 10)}.right-full{right:100%}.-bottom-0\.5{bottom:calc(var(--spacing) * -.5)}.-bottom-2{bottom:calc(var(--spacing) * -2)}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-10{bottom:calc(var(--spacing) * 10)}.bottom-32{bottom:calc(var(--spacing) * 32)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing) * 0)}.left-0\.5{left:calc(var(--spacing) * .5)}.left-1\/2{left:50%}.left-3{left:calc(var(--spacing) * 3)}.left-4{left:calc(var(--spacing) * 4)}.left-6{left:calc(var(--spacing) * 6)}.left-10{left:calc(var(--spacing) * 10)}.left-full{left:100%}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-auto{margin-inline:auto}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-8{margin-left:calc(var(--spacing) * 8)}.ml-auto{margin-left:auto}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-12{height:calc(var(--spacing) * 12)}.h-16{height:calc(var(--spacing) * 16)}.h-24{height:calc(var(--spacing) * 24)}.h-28{height:calc(var(--spacing) * 28)}.h-32{height:calc(var(--spacing) * 32)}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-60{max-height:calc(var(--spacing) * 60)}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-12{width:calc(var(--spacing) * 12)}.w-28{width:calc(var(--spacing) * 28)}.w-48{width:calc(var(--spacing) * 48)}.w-72{width:calc(var(--spacing) * 72)}.w-80{width:calc(var(--spacing) * 80)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[120px\]{max-width:120px}.max-w-\[180px\]{max-width:180px}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[300px\]{min-width:300px}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-105{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-45{rotate:45deg}.rotate-180{rotate:180deg}.animate-\[loading_1\.5s_ease-in-out_infinite\]{animation:1.5s ease-in-out infinite loading}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.appearance-none{appearance:none}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-16>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 16) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 16) * calc(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-l-lg{border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.rounded-r-xl{border-top-right-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl)}.rounded-b-xl{border-bottom-right-radius:var(--radius-xl);border-bottom-left-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-3{border-style:var(--tw-border-style);border-width:3px}.border-4{border-style:var(--tw-border-style);border-width:4px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-accent{border-color:var(--accent)}.border-border{border-color:var(--border)}.border-current{border-color:currentColor}.border-destructive{border-color:var(--destructive)}.border-primary\/20{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.border-primary\/20{border-color:color-mix(in oklab,var(--primary) 20%,transparent)}}.border-success{border-color:var(--success)}.border-transparent{border-color:#0000}.border-warning{border-color:var(--warning)}.border-t-foreground{border-top-color:var(--foreground)}.border-t-primary{border-top-color:var(--primary)}.border-t-transparent{border-top-color:#0000}.bg-accent,.bg-accent\/30{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/30{background-color:color-mix(in oklab,var(--accent) 30%,transparent)}}.bg-accent\/50{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/50{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.bg-background,.bg-background\/95{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/95{background-color:color-mix(in oklab,var(--background) 95%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-border{background-color:var(--border)}.bg-brand-blue-light{background-color:var(--brand-blue-light)}.bg-brand-blue-strong{background-color:var(--brand-blue-strong)}.bg-brand-green-bright\/10{background-color:var(--brand-green-bright)}@supports (color:color-mix(in lab,red,red)){.bg-brand-green-bright\/10{background-color:color-mix(in oklab,var(--brand-green-bright) 10%,transparent)}}.bg-brand-orange-warm,.bg-brand-orange-warm\/10{background-color:var(--brand-orange-warm)}@supports (color:color-mix(in lab,red,red)){.bg-brand-orange-warm\/10{background-color:color-mix(in oklab,var(--brand-orange-warm) 10%,transparent)}}.bg-card,.bg-card\/95{background-color:var(--card)}@supports (color:color-mix(in lab,red,red)){.bg-card\/95{background-color:color-mix(in oklab,var(--card) 95%,transparent)}}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.bg-gray-100{background-color:var(--color-gray-100)}.bg-input-background{background-color:var(--input-background)}.bg-muted,.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--muted) 30%,transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/10{background-color:color-mix(in oklab,var(--primary) 10%,transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-success,.bg-success\/10{background-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.bg-success\/10{background-color:color-mix(in oklab,var(--success) 10%,transparent)}}.bg-transparent{background-color:#0000}.bg-warning,.bg-warning\/10{background-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.bg-warning\/10{background-color:color-mix(in oklab,var(--warning) 10%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-brand-blue-light\/20{--tw-gradient-from:var(--brand-blue-light)}@supports (color:color-mix(in lab,red,red)){.from-brand-blue-light\/20{--tw-gradient-from:color-mix(in oklab, var(--brand-blue-light) 20%, transparent)}}.from-brand-blue-light\/20{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-brand-blue-strong{--tw-gradient-from:var(--brand-blue-strong);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-brand-navy{--tw-gradient-from:var(--brand-navy);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-brand-navy\/5{--tw-gradient-from:var(--brand-navy)}@supports (color:color-mix(in lab,red,red)){.from-brand-navy\/5{--tw-gradient-from:color-mix(in oklab, var(--brand-navy) 5%, transparent)}}.from-brand-navy\/5{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-muted\/50{--tw-gradient-from:var(--muted)}@supports (color:color-mix(in lab,red,red)){.from-muted\/50{--tw-gradient-from:color-mix(in oklab, var(--muted) 50%, transparent)}}.from-muted\/50{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-accent\/30{--tw-gradient-to:var(--accent)}@supports (color:color-mix(in lab,red,red)){.to-accent\/30{--tw-gradient-to:color-mix(in oklab, var(--accent) 30%, transparent)}}.to-accent\/30{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-brand-blue-strong{--tw-gradient-to:var(--brand-blue-strong);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-brand-blue-strong\/5{--tw-gradient-to:var(--brand-blue-strong)}@supports (color:color-mix(in lab,red,red)){.to-brand-blue-strong\/5{--tw-gradient-to:color-mix(in oklab, var(--brand-blue-strong) 5%, transparent)}}.to-brand-blue-strong\/5{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-brand-blue-strong\/10{--tw-gradient-to:var(--brand-blue-strong)}@supports (color:color-mix(in lab,red,red)){.to-brand-blue-strong\/10{--tw-gradient-to:color-mix(in oklab, var(--brand-blue-strong) 10%, transparent)}}.to-brand-blue-strong\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-brand-navy{--tw-gradient-to:var(--brand-navy);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-10{padding:calc(var(--spacing) * 10)}.p-12{padding:calc(var(--spacing) * 12)}.p-\[3px\]{padding:3px}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-8{padding-inline:calc(var(--spacing) * 8)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pr-4{padding-right:calc(var(--spacing) * 4)}.pr-12{padding-right:calc(var(--spacing) * 12)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-10{padding-left:calc(var(--spacing) * 10)}.pl-12{padding-left:calc(var(--spacing) * 12)}.pl-14{padding-left:calc(var(--spacing) * 14)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[length\:var\(--text-2xl\)\]{font-size:var(--text-2xl)}.text-\[length\:var\(--text-3xl\)\]{font-size:var(--text-3xl)}.text-\[length\:var\(--text-base\)\]{font-size:var(--text-base)}.text-\[length\:var\(--text-lg\)\]{font-size:var(--text-lg)}.text-\[length\:var\(--text-md\)\]{font-size:var(--text-md)}.text-\[length\:var\(--text-sm\)\]{font-size:var(--text-sm)}.text-\[length\:var\(--text-xs\)\]{font-size:var(--text-xs)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-\[family\:var\(--font-body\)\]{--tw-font-weight:var(--font-body);font-weight:var(--font-body)}.font-\[weight\:var\(--font-weight-bold\)\]{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-\[weight\:var\(--font-weight-medium\)\]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-\[weight\:var\(--font-weight-semibold\)\]{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-brand-blue-strong{color:var(--brand-blue-strong)}.text-brand-green-bright{color:var(--brand-green-bright)}.text-brand-orange-warm{color:var(--brand-orange-warm)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/60{color:color-mix(in oklab,var(--foreground) 60%,transparent)}}.text-foreground\/70{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/70{color:color-mix(in oklab,var(--foreground) 70%,transparent)}}.text-foreground\/80{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/80{color:color-mix(in oklab,var(--foreground) 80%,transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-success{color:var(--success)}.text-success-foreground{color:var(--success-foreground)}.text-warning{color:var(--warning)}.text-warning-foreground{color:var(--warning-foreground)}.text-white{color:var(--color-white)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-5{opacity:.05}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-50{opacity:.5}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-primary{--tw-ring-color:var(--primary)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.outline-none{--tw-outline-style:none;outline-style:none}.zoom-in{--tw-enter-scale:0}.zoom-out{--tw-exit-scale:0}@media(hover:hover){.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x) var(--tw-scale-y)}.group-hover\:text-primary:is(:where(.group):hover *){color:var(--primary)}}.group-data-\[orientation\=horizontal\]\/tabs\:h-9:is(:where(.group\/tabs)[data-orientation=horizontal] *){height:calc(var(--spacing) * 9)}.group-data-\[orientation\=vertical\]\/tabs\:h-fit:is(:where(.group\/tabs)[data-orientation=vertical] *){height:fit-content}.group-data-\[orientation\=vertical\]\/tabs\:w-full:is(:where(.group\/tabs)[data-orientation=vertical] *){width:100%}.group-data-\[orientation\=vertical\]\/tabs\:flex-col:is(:where(.group\/tabs)[data-orientation=vertical] *){flex-direction:column}.group-data-\[orientation\=vertical\]\/tabs\:justify-start:is(:where(.group\/tabs)[data-orientation=vertical] *){justify-content:flex-start}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[orientation\=horizontal\]\/tabs\:after\:inset-x-0:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);inset-inline:calc(var(--spacing) * 0)}.group-data-\[orientation\=horizontal\]\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);bottom:-5px}.group-data-\[orientation\=horizontal\]\/tabs\:after\:h-0\.5:is(:where(.group\/tabs)[data-orientation=horizontal] *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-\[orientation\=vertical\]\/tabs\:after\:inset-y-0:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);inset-block:calc(var(--spacing) * 0)}.group-data-\[orientation\=vertical\]\/tabs\:after\:-right-1:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-\[orientation\=vertical\]\/tabs\:after\:w-0\.5:is(:where(.group\/tabs)[data-orientation=vertical] *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\:rounded-t-lg:first-child{border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg)}.last\:rounded-b-lg:last-child{border-bottom-right-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}.hover\:border-primary\/50:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-primary\/50:hover{border-color:color-mix(in oklab,var(--primary) 50%,transparent)}}.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.hover\:bg-destructive\/10:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/10:hover{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary-hover:hover{background-color:var(--primary-hover)}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary) 90%,transparent)}}.hover\:bg-secondary-hover:hover{background-color:var(--secondary-hover)}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary) 80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-primary:hover,.hover\:text-primary\/80:hover{color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:text-primary\/80:hover{color:color-mix(in oklab,var(--primary) 80%,transparent)}}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:border-transparent:focus{border-color:#0000}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-destructive:focus{--tw-ring-color:var(--destructive)}.focus\:ring-primary:focus{--tw-ring-color:var(--primary)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus\:ring-offset-background:focus{--tw-ring-offset-color:var(--background)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.data-\[orientation\=horizontal\]\:flex-col[data-orientation=horizontal]{flex-direction:column}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--background)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-\[state\=active\]\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *)[data-state=active]{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]:after{content:var(--tw-content);opacity:1}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}@media(min-width:40rem){.sm\:block{display:block}.sm\:h-12{height:calc(var(--spacing) * 12)}.sm\:w-12{width:calc(var(--spacing) * 12)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}}@media(min-width:48rem){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}}@media(min-width:64rem){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}.lg\:text-\[length\:var\(--text-md\)\]{font-size:var(--text-md)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}@media(hover:hover){.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:data-\[state\=active\]\:border-input:is(.dark *)[data-state=active]{border-color:var(--input)}.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=active\]\:bg-input\/30:is(.dark *)[data-state=active]{background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:data-\[state\=active\]\:text-foreground:is(.dark *)[data-state=active]{color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-\[state\=active\]\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *)[data-state=active]{background-color:#0000}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing) * 6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing) * 6)}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--radius:.625rem;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}:root{--brand-navy:#1e1a4b;--brand-blue-gray:#333f48;--brand-blue-strong:#005eb8;--brand-blue-light:#b9d9eb;--brand-gray-cool:#f2f4f7;--brand-green-deep:#006b3f;--brand-green-bright:#41b6a6;--brand-brown-muted:#8b6f47;--brand-orange-warm:#ff9e1b;--brand-gray-medium:#7a7a7a;--background:#fff;--foreground:var(--brand-navy);--card:#fff;--card-foreground:var(--brand-navy);--popover:#fff;--popover-foreground:var(--brand-navy);--primary:var(--brand-blue-strong);--primary-foreground:#fff;--primary-hover:#004a92;--secondary:var(--brand-gray-cool);--secondary-foreground:var(--brand-navy);--secondary-hover:#e5e8ec;--muted:var(--brand-gray-cool);--muted-foreground:var(--brand-gray-medium);--accent:var(--brand-blue-light);--accent-foreground:var(--brand-navy);--success:var(--brand-green-deep);--success-foreground:#fff;--success-light:var(--brand-green-bright);--warning:var(--brand-orange-warm);--warning-foreground:var(--brand-navy);--destructive:#d4183d;--destructive-foreground:#fff;--border:#1e1a4b1f;--border-strong:#1e1a4b3d;--input:transparent;--input-background:var(--brand-gray-cool);--switch-background:#cbced4;--ring:var(--brand-blue-strong);--chart-1:var(--brand-blue-strong);--chart-2:var(--brand-green-bright);--chart-3:var(--brand-orange-warm);--chart-4:var(--brand-navy);--chart-5:var(--brand-brown-muted);--font-display:"Bebas Neue", sans-serif;--font-body:"Exo", sans-serif;--font-size-base:16px;--text-xs:.618rem;--text-sm:.764rem;--text-base:1rem;--text-md:1.236rem;--text-lg:1.618rem;--text-xl:2.618rem;--text-2xl:4.236rem;--text-3xl:6.854rem;--text-4xl:11.089rem;--text-display-sm:2.618rem;--text-display-md:4.236rem;--text-display-lg:6.854rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--leading-tight:1.2;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.618;--leading-loose:1.8;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.809rem;--space-4:1rem;--space-5:1.618rem;--space-6:2.618rem;--space-8:4.236rem;--space-10:6.854rem;--space-12:11.089rem;--radius:.5rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #1e1a4b0d;--shadow-md:0 4px 6px -1px #1e1a4b1a, 0 2px 4px -1px #1e1a4b0f;--shadow-lg:0 10px 15px -3px #1e1a4b1a, 0 4px 6px -2px #1e1a4b0d;--shadow-xl:0 20px 25px -5px #1e1a4b1a, 0 10px 10px -5px #1e1a4b0a;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--sidebar:var(--brand-gray-cool);--sidebar-foreground:var(--brand-navy);--sidebar-primary:var(--brand-blue-strong);--sidebar-primary-foreground:#fff;--sidebar-accent:#e5e8ec;--sidebar-accent-foreground:var(--brand-navy);--sidebar-border:#1e1a4b1f;--sidebar-ring:var(--brand-blue-strong)}.dark{--background:var(--brand-navy);--foreground:#fff;--card:var(--brand-blue-gray);--card-foreground:#fff;--popover:var(--brand-blue-gray);--popover-foreground:#fff;--primary:var(--brand-blue-light);--primary-foreground:var(--brand-navy);--primary-hover:#a0c9e0;--secondary:#ffffff1a;--secondary-foreground:#fff;--secondary-hover:#ffffff26;--muted:#ffffff1a;--muted-foreground:#ffffffb3;--accent:#b9d9eb33;--accent-foreground:var(--brand-blue-light);--success:var(--brand-green-bright);--success-foreground:var(--brand-navy);--warning:var(--brand-orange-warm);--warning-foreground:var(--brand-navy);--destructive:#ff4d6d;--destructive-foreground:#fff;--border:#ffffff1f;--border-strong:#ffffff3d;--input:#ffffff1a;--input-background:#ffffff0d;--switch-background:#fff3;--ring:var(--brand-blue-light);--chart-1:var(--brand-blue-light);--chart-2:var(--brand-green-bright);--chart-3:var(--brand-orange-warm);--chart-4:#8b9dc3;--chart-5:var(--brand-brown-muted);--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0000004d, 0 2px 4px -1px #0003;--shadow-lg:0 10px 15px -3px #0000004d, 0 4px 6px -2px #0003;--shadow-xl:0 20px 25px -5px #0000004d, 0 10px 10px -5px #0003;--sidebar:var(--brand-blue-gray);--sidebar-foreground:#fff;--sidebar-primary:var(--brand-blue-light);--sidebar-primary-foreground:var(--brand-navy);--sidebar-accent:#ffffff1a;--sidebar-accent-foreground:#fff;--sidebar-border:#ffffff1f;--sidebar-ring:var(--brand-blue-light)}:root,:host{--ol-background-color:white;--ol-accent-background-color:#f5f5f5;--ol-subtle-background-color:#80808040;--ol-partial-background-color:#ffffffbf;--ol-foreground-color:#333;--ol-subtle-foreground-color:#666;--ol-brand-color:#0af}.ol-box{box-sizing:border-box;border:1.5px solid var(--ol-background-color);background-color:var(--ol-partial-background-color);border-radius:2px}.ol-mouse-position{position:absolute;top:8px;right:8px}.ol-scale-line{background:var(--ol-partial-background-color);border-radius:4px;padding:2px;position:absolute;bottom:8px;left:8px}.ol-scale-line-inner{border:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color);text-align:center;will-change:contents,width;border-top:none;margin:1px;font-size:10px;transition:all .25s}.ol-scale-bar{position:absolute;bottom:8px;left:8px}.ol-scale-bar-inner{display:flex}.ol-scale-step-marker{background-color:var(--ol-foreground-color);float:right;z-index:10;width:1px;height:15px}.ol-scale-step-text{z-index:11;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color);font-size:10px;position:absolute;bottom:-5px}.ol-scale-text{text-align:center;color:var(--ol-foreground-color);text-shadow:-1.5px 0 var(--ol-partial-background-color),0 1.5px var(--ol-partial-background-color),1.5px 0 var(--ol-partial-background-color),0 -1.5px var(--ol-partial-background-color);font-size:12px;position:absolute;bottom:25px}.ol-scale-singlebar{z-index:9;box-sizing:border-box;border:1px solid var(--ol-foreground-color);height:10px;position:relative}.ol-scale-singlebar-even{background-color:var(--ol-subtle-foreground-color)}.ol-scale-singlebar-odd{background-color:var(--ol-background-color)}.ol-unsupported{display:none}.ol-viewport canvas{all:unset;overflow:hidden}.ol-viewport{touch-action:pan-x pan-y}.ol-selectable{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}.ol-control{background-color:var(--ol-subtle-background-color);border-radius:4px;position:absolute}.ol-zoom{top:.5em;left:.5em}.ol-rotate{transition:opacity .25s linear,visibility linear;top:.5em;right:.5em}.ol-rotate.ol-hidden{opacity:0;visibility:hidden;transition:opacity .25s linear,visibility 0s linear .25s}.ol-zoom-extent{top:4.643em;left:.5em}.ol-full-screen{top:.5em;right:.5em}.ol-control button{color:var(--ol-subtle-foreground-color);font-weight:700;font-size:inherit;text-align:center;background-color:var(--ol-background-color);border:none;border-radius:2px;width:1.375em;height:1.375em;margin:1px;padding:0;line-height:.4em;text-decoration:none;display:block}.ol-control button::-moz-focus-inner{border:none;padding:0}.ol-zoom-extent button{line-height:1.4em}.ol-compass{will-change:transform;font-weight:400;display:block}.ol-touch .ol-control button{font-size:1.5em}.ol-touch .ol-zoom-extent{top:5.5em}.ol-control button:hover,.ol-control button:focus{outline:1px solid var(--ol-subtle-foreground-color);color:var(--ol-foreground-color);text-decoration:none}.ol-zoom .ol-zoom-in{border-radius:2px 2px 0 0}.ol-zoom .ol-zoom-out{border-radius:0 0 2px 2px}.ol-attribution{text-align:right;flex-flow:row-reverse;align-items:center;max-width:calc(100% - 1.3em);display:flex;bottom:.5em;right:.5em}.ol-attribution a{color:var(--ol-subtle-foreground-color);text-decoration:none}.ol-attribution ul{color:var(--ol-foreground-color);text-shadow:0 0 2px var(--ol-background-color);margin:0;padding:1px .5em;font-size:12px}.ol-attribution li{list-style:none;display:inline}.ol-attribution li:not(:last-child):after{content:" "}.ol-attribution img{max-height:2em;max-width:inherit;vertical-align:middle}.ol-attribution button{flex-shrink:0}.ol-attribution:not(.ol-collapsed){background:var(--ol-partial-background-color)}.ol-attribution.ol-uncollapsible{border-radius:4px 0 0;bottom:0;right:0}.ol-attribution.ol-uncollapsible img{max-height:1.6em;margin-top:-.2em}.ol-attribution.ol-uncollapsible button{display:none}.ol-zoomslider{height:200px;top:4.5em;left:.5em}.ol-zoomslider button{height:10px;position:relative}.ol-touch .ol-zoomslider{top:5.5em}.ol-overviewmap{bottom:.5em;left:.5em}.ol-overviewmap.ol-uncollapsible{border-radius:0 4px 0 0;bottom:0;left:0}.ol-overviewmap .ol-overviewmap-map,.ol-overviewmap button{display:block}.ol-overviewmap .ol-overviewmap-map{border:1px solid var(--ol-subtle-foreground-color);width:150px;height:150px}.ol-overviewmap:not(.ol-collapsed) button{position:absolute;bottom:0;left:0}.ol-overviewmap.ol-collapsed .ol-overviewmap-map,.ol-overviewmap.ol-uncollapsible button{display:none}.ol-overviewmap:not(.ol-collapsed){background:var(--ol-subtle-background-color)}.ol-overviewmap-box{border:1.5px dotted var(--ol-subtle-foreground-color)}.ol-overviewmap .ol-overviewmap-box:hover{cursor:move}.ol-overviewmap .ol-viewport:hover{cursor:pointer}.ol-viewport,.ol-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:#0000}.ol-viewport{touch-action:none;width:100%;height:100%;position:relative;overflow:hidden}.ol-layers{position:absolute;inset:0}.ol-layer{width:100%;height:100%;position:absolute}.ol-layer canvas{position:absolute;top:0;left:0}.ol-overlaycontainer,.ol-overlaycontainer-stopevent{pointer-events:none;position:absolute;inset:0;overflow:hidden}.ol-overlaycontainer-stopevent>*{pointer-events:auto}.ol-grabbing{cursor:-webkit-grabbing!important;cursor:-moz-grabbing!important;cursor:grabbing!important}.ol-grab{cursor:move;cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.ol-control{border:1px solid var(--border);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-md);background-color:#fffffff2;padding:4px;position:absolute}.dark .ol-control{border-color:var(--border);background-color:#333f48f2}.ol-control button{width:2.25rem;height:2.25rem;color:var(--foreground);border-radius:var(--radius-lg);cursor:pointer;font-family:var(--font-body);font-size:1.1rem;font-weight:var(--font-weight-medium);background:0 0;border:none;justify-content:center;align-items:center;padding:0;line-height:1;transition:background-color .15s,color .15s;display:flex}.ol-control button:hover,.ol-control button:focus{background-color:var(--accent);color:var(--accent-foreground);outline:none}.ol-control button:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.ol-control button:active{background-color:var(--primary);color:var(--primary-foreground)}.ol-zoom{display:none}.ol-rotate{display:none;top:.5rem;right:.5rem}.ol-rotate.ol-hidden{display:none}.ol-attribution{border:1px solid var(--border);border-radius:var(--radius-md);max-width:320px;box-shadow:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#ffffffd9;padding:2px 8px;position:absolute;bottom:.5rem;right:.5rem}.dark .ol-attribution{background-color:#333f48d9}.ol-attribution button{background:var(--primary);width:1.25rem;height:1.25rem;color:var(--primary-foreground);border-radius:var(--radius-full);font-size:.7rem}.ol-attribution ul{font-family:var(--font-body);color:var(--muted-foreground);margin:0;padding:0 4px;font-size:.65rem;list-style:none;display:inline}.ol-attribution.ol-collapsed ul{display:none}.ol-attribution.ol-logo-only{box-shadow:none;background-color:#0000;border:none}.ol-scale-line{border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);pointer-events:none;background:#ffffffe6;padding:3px 8px 2px;position:absolute;bottom:2.5rem;left:6rem}.dark .ol-scale-line{background:#333f48e6}.ol-scale-line-inner{border:1px solid var(--brand-navy);font-family:var(--font-body);font-size:.6rem;font-weight:var(--font-weight-semibold);color:var(--foreground);text-align:center;letter-spacing:var(--tracking-wide);will-change:contents,width;border-top:none;min-width:64px;padding:1px 2px}.dark .ol-scale-line-inner{border-color:#ffffffb3}.ol-mouse-position{bottom:calc(var(--spacing) * 32);color:var(--muted-foreground);pointer-events:none;border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffffd9;padding:2px 6px;font-family:Monaco,Courier New,monospace;font-size:.65rem;display:none;position:absolute;right:12rem}.dark .ol-mouse-position{color:#ffffffb3;background:#333f48d9}.ol-bar{border:1px solid var(--border);border-radius:var(--radius-xl);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-md);background-color:#fffffff2;gap:4px;padding:6px;display:flex;position:absolute}.dark .ol-bar{background-color:#333f48f2}.ol-bar.ol-left{flex-direction:column;top:1.5rem;bottom:auto;left:1.5rem}.ol-bar.ol-right{flex-direction:column;top:1.5rem;right:1.5rem}.ol-bar.ol-top.ol-center{flex-direction:row;top:1.5rem;left:50%;transform:translate(-50%)}.ol-bar .ol-bar{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;flex-direction:row;padding:0;position:relative}.ol-bar .ol-separator{background-color:var(--border);align-self:stretch;width:1px;margin:2px 0}.ol-bar.ol-left .ol-separator,.ol-bar.ol-right .ol-separator{width:100%;height:1px;margin:2px 0}.ol-bar .ol-control{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;padding:0;position:relative}.ol-bar .ol-control button,.ol-bar .ol-toggle button,.ol-bar .ol-button button{border-radius:var(--radius-lg);width:2.25rem;height:2.25rem;color:var(--foreground);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:1rem;transition:background-color .15s,color .15s,transform .1s;display:flex;position:relative}.ol-bar .ol-control button:hover,.ol-bar .ol-toggle button:hover{background-color:var(--accent);color:var(--accent-foreground)}.ol-bar .ol-toggle.ol-active button,.ol-bar .ol-control.ol-active button{background-color:var(--primary);color:var(--primary-foreground);box-shadow:var(--shadow-sm);transform:scale(1.05)}.ol-bar .ol-toggle.ol-active button:hover{background-color:var(--primary-hover);color:var(--primary-foreground)}.ol-bar .ol-toggle.ol-active button:after{content:"";background-color:var(--brand-orange-warm);border-radius:var(--radius-full);width:1.25rem;height:2px;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}.ol-popup{border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;min-width:260px;max-width:320px;font-family:var(--font-body);background-color:#fffffff7;margin-top:-12px;padding:0;position:absolute;transform:translate(-50%,-100%)}.dark .ol-popup{border-color:var(--border);background-color:#333f48f7}.ol-popup:after{content:"";border-right:1px solid var(--border);border-bottom:1px solid var(--border);background-color:#fffffff7;width:14px;height:14px;display:block;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:2px 2px 3px #1e1a4b0d}.dark .ol-popup:after{background-color:#333f48f7}.ol-popup-closer{border-radius:var(--radius-md);width:1.5rem;height:1.5rem;color:var(--muted-foreground);cursor:pointer;z-index:1;background:0 0;border:none;justify-content:center;align-items:center;font-size:1rem;line-height:1;transition:background-color .15s,color .15s;display:flex;position:absolute;top:.5rem;right:.5rem}.ol-popup-closer:hover{background-color:var(--accent);color:var(--foreground)}.ol-popup-closer:after{content:"✕";font-size:.75rem}.ol-popup-content{border-radius:var(--radius-xl);padding:0;overflow:hidden}.ol-popup .ol-popup-title{border-bottom:1px solid var(--border);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--foreground);align-items:center;gap:.5rem;padding:.75rem 1rem;display:flex}.ol-tooltip{background-color:var(--brand-navy);color:#fff;font-family:var(--font-body);font-size:.7rem;font-weight:var(--font-weight-semibold);border-radius:var(--radius-md);white-space:nowrap;box-shadow:var(--shadow-sm);pointer-events:none;padding:4px 10px;position:relative;transform:translate(-50%,-120%)}.ol-tooltip:after{content:"";border-left:5px solid #0000;border-right:5px solid #0000;border-top:5px solid var(--brand-navy);position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.ol-tooltip-measure{background-color:var(--brand-green-deep);opacity:1}.ol-tooltip-measure:after{border-top-color:var(--brand-green-deep)}.ol-tooltip-static{background-color:var(--brand-blue-strong);color:#fff;opacity:.9}.ol-tooltip-static:after{border-top-color:var(--brand-blue-strong)}.ol-measure-tooltip{background:var(--brand-navy);color:#fff;border-radius:var(--radius-md);font-size:.68rem;font-family:var(--font-body);padding:4px 10px}.ol-layerswitcher{border:1px solid var(--border);border-radius:var(--radius-xl);min-width:220px;max-width:280px;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-body);background-color:#fffffff2;position:absolute;top:8rem;right:1.5rem;overflow:hidden}.dark .ol-layerswitcher{background-color:#333f48f2}.ol-layerswitcher .ol-header{border-bottom:1px solid var(--border);font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--foreground);justify-content:space-between;align-items:center;padding:.625rem 1rem;display:flex}.ol-layerswitcher ul{margin:0;padding:.5rem;list-style:none}.ol-layerswitcher li{border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--foreground);cursor:pointer;align-items:center;gap:.5rem;padding:.4rem .5rem;transition:background-color .15s;display:flex}.ol-layerswitcher li:hover{background-color:var(--accent)}.ol-layerswitcher li.ol-group-header{font-size:.6rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--muted-foreground);cursor:default;padding-top:.75rem}.ol-layerswitcher li.ol-group-header:hover{background:0 0}.ol-layerswitcher input[type=checkbox],.ol-layerswitcher input[type=radio]{width:.9rem;height:.9rem;accent-color:var(--primary);cursor:pointer;border-radius:var(--radius-sm);border:2px solid var(--border);flex-shrink:0}.ol-layerswitcher .ol-opacity{width:100%;height:4px;accent-color:var(--primary);cursor:pointer;margin-top:.25rem}.ol-search{box-shadow:none;background:0 0;border:none;padding:0;position:absolute;top:1.5rem;right:1.5rem}.ol-search input{border:1px solid var(--border);border-radius:var(--radius-xl);width:280px;box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-family:var(--font-body);font-size:var(--text-sm);color:var(--foreground);background-color:#fffffff7;outline:none;padding:.6rem 1rem;transition:border-color .15s,box-shadow .15s;display:block}.dark .ol-search input{color:#fff;background-color:#333f48f7}.ol-search input:focus{border-color:var(--ring);box-shadow:var(--shadow-md),0 0 0 2px #005eb833}.ol-search .ol-autocomplete{border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#fffffff7;max-height:240px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden auto}.dark .ol-search .ol-autocomplete{background-color:#333f48f7}.ol-search .ol-autocomplete li{font-family:var(--font-body);font-size:var(--text-sm);color:var(--foreground);cursor:pointer;border-bottom:1px solid var(--border);padding:.6rem 1rem;list-style:none;transition:background-color .1s}.ol-search .ol-autocomplete li:last-child{border-bottom:none}.ol-search .ol-autocomplete li:hover,.ol-search .ol-autocomplete li.ol-selected{background-color:var(--accent);color:var(--accent-foreground)}.ol-overlay-container{will-change:left,top,bottom,right}.ol-viewport.ol-draw-polygon,.ol-viewport.ol-draw-line{cursor:crosshair!important}.ol-viewport.ol-draw-point{cursor:cell!important}.ol-ext-notification{background-color:var(--brand-navy);color:#fff;border-radius:var(--radius-xl);font-family:var(--font-body);font-size:var(--text-sm);box-shadow:var(--shadow-lg);z-index:9999;pointer-events:none;opacity:1;align-items:center;gap:.5rem;padding:.6rem 1.25rem;transition:opacity .3s;display:flex;position:absolute;top:5rem;left:50%;transform:translate(-50%)}.ol-ext-notification.ol-error{background-color:var(--destructive)}.ol-ext-notification.ol-success{background-color:var(--success)}.ol-ext-dialog{border:1px solid var(--border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);font-family:var(--font-body);z-index:1000;background-color:#fffffffa;min-width:300px;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.dark .ol-ext-dialog{background-color:#333f48fa}.ol-ext-dialog>h2{font-size:var(--text-sm);font-weight:var(--font-weight-semibold);color:var(--foreground);border-bottom:1px solid var(--border);font-family:var(--font-body);margin:0;padding:.875rem 1rem}.ol-profil{border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);background-color:#fffffff2}.dark .ol-profil{background-color:#333f48f2}.dark .ol-control button{color:#fff}.dark .ol-control button:hover{background-color:var(--accent);color:var(--accent-foreground)}.dark .ol-attribution ul{color:#fff9}.dark .ol-scale-line-inner{color:#ffffffe6;border-color:#ffffffb3}.dark .ol-tooltip{background-color:var(--brand-blue-light);color:var(--brand-navy)}.dark .ol-tooltip:after{border-top-color:var(--brand-blue-light)}.dark .ol-layerswitcher li{color:#ffffffe6}.ol-loading-indicator{border:3px solid var(--border);border-top-color:var(--primary);pointer-events:none;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite ol-spin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes ol-spin{to{transform:translate(-50%,-50%)rotate(360deg)}}.ol-dragbox{border:2px solid var(--brand-blue-strong);background-color:#005eb81a;border-radius:2px}@media print{@page{margin:2cm;size:A4 portrait}@page :first{margin-top:1.5cm}*{color-adjust:exact!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body,.dark body{color:#1e1a4b!important;background:#fff!important}div,section,article,aside,header,footer,main,.dark div,.dark section,.dark article,.dark aside,.dark header,.dark footer,.dark main{background:0 0!important}[class*=card],.dark [class*=card]{box-shadow:none!important;background:#fff!important;border:1px solid #d0d0d0!important}table tbody tr:nth-child(2n),.dark table tbody tr:nth-child(2n){background:#f8f8f8!important}table thead,.dark table thead{color:#1e1a4b!important;background:#fff!important;border-bottom:2px solid #1e1a4b!important}nav,[role=navigation],.sidebar,[class*=sidebar],[class*=nav],header nav,.top-navigation,.breadcrumb,button,[role=button],input[type=button],input[type=submit],input[type=reset],.button,[class*=btn]{display:none!important}input,textarea,select,[contenteditable]{background:#fff!important;border:1px solid #d0d0d0!important}input[type=checkbox],input[type=radio]{opacity:1!important;display:inline!important}video,audio,iframe,embed,object,[role=tooltip],[role=dialog],[class*=tooltip],[class*=popover],[class*=modal],[class*=dialog],[class*=ad-],[class*=advertisement],[class*=social-],[id*=social]{display:none!important}.ol-viewport,.ol-layer,canvas{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.ol-control,.ol-zoom,.ol-attribution,.ol-scale-line,.ol-mouse-position,.ol-bar,.ol-layerswitcher,.ol-search{display:none!important}body{font-family:var(--font-body),"Georgia","Times New Roman",serif!important;color:#000!important;font-size:11pt!important;line-height:1.5!important}h1{font-family:var(--font-display),"Arial Black",sans-serif!important;page-break-after:avoid!important;color:#1e1a4b!important;margin-top:0!important;margin-bottom:12pt!important;font-size:24pt!important}h2{font-family:var(--font-display),"Arial Black",sans-serif!important;page-break-after:avoid!important;color:#1e1a4b!important;margin-top:18pt!important;margin-bottom:10pt!important;font-size:18pt!important}h3{page-break-after:avoid!important;margin-top:14pt!important;margin-bottom:8pt!important;font-size:14pt!important;font-weight:600!important}h4{page-break-after:avoid!important;margin-top:12pt!important;margin-bottom:6pt!important;font-size:12pt!important;font-weight:600!important}h5,h6{page-break-after:avoid!important;margin-top:10pt!important;margin-bottom:6pt!important;font-size:11pt!important;font-weight:600!important}p{orphans:3!important;widows:3!important;margin-bottom:8pt!important;font-size:11pt!important;line-height:1.5!important}ul,ol{margin-left:1cm!important}li{margin-bottom:4pt!important}code,pre{page-break-inside:avoid!important;background:#f0f0f0!important;border:1px solid #d0d0d0!important;font-family:Courier New,monospace!important;font-size:9pt!important}pre{margin:8pt 0!important;padding:8pt!important}table{border-collapse:collapse!important;page-break-inside:auto!important;width:100%!important;margin:12pt 0!important;font-size:10pt!important}thead{display:table-header-group!important}tbody{display:table-row-group!important}tfoot{display:table-footer-group!important}tr{page-break-inside:avoid!important;page-break-after:auto!important}th,td{text-align:left!important;border:1px solid #d0d0d0!important;padding:6pt 8pt!important}th{color:#1e1a4b!important;background:#fff!important;font-weight:600!important}.recharts-wrapper,[class*=chart]{page-break-inside:avoid!important;max-width:100%!important}.recharts-surface,.recharts-layer,svg[class*=chart]{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.recharts-legend-wrapper{page-break-before:avoid!important;margin-top:8pt!important}[class*=adinkra],svg[class*=adinkra]{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;width:auto!important;max-height:3cm!important;margin:0 auto 12pt!important;display:block!important}[class*=logo],img[alt*=LUSPA],img[alt*=logo]{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;width:auto!important;max-height:2cm!important;display:block!important}a{color:#1e1a4b!important;text-decoration:underline!important}a[href^=http]:after{content:" (" attr(href) ")";color:#666;word-break:break-all;font-size:9pt}a[href^="#"]:after{content:""}img,svg,figure,table,pre,blockquote{page-break-inside:avoid!important}h1,h2,h3,h4,h5,h6,caption,figcaption{page-break-after:avoid!important}section,article{page-break-before:auto!important}.print-page-break,.page-break{page-break-before:always!important}.print-avoid-break,.avoid-break{page-break-inside:avoid!important}label{margin-bottom:4pt!important;font-weight:600!important;display:inline-block!important}input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],textarea{border-bottom:1px solid #d0d0d0!important;padding:2pt!important}[class*=badge],.status,[class*=status-]{color:#1e1a4b!important;background:#fff!important;border:1px solid #1e1a4b!important;border-radius:2pt!important;padding:2pt 6pt!important;font-size:9pt!important;font-weight:600!important;display:inline-block!important}[class*=success],[class*=approved]{color:#006b3f!important;border-color:#006b3f!important}[class*=warning],[class*=pending]{color:#ff9e1b!important;border-color:#ff9e1b!important}[class*=error],[class*=destructive],[class*=rejected]{color:#d4183d!important;border-color:#d4183d!important}.no-print,.print-hide,[data-print=hide]{display:none!important}.print-only,[data-print=show]{display:block!important}.print-text-sm{font-size:9pt!important}.print-text-lg{font-size:13pt!important}section,article,.section{margin-top:12pt!important;margin-bottom:12pt!important}[class*=card-content]{padding:12pt!important}*{box-shadow:none!important;text-shadow:none!important;transition:none!important;animation:none!important}img{page-break-inside:avoid!important;max-width:100%!important;display:block!important}figure{page-break-inside:avoid!important;margin:12pt 0!important}figcaption{color:#666!important;text-align:center!important;margin-top:6pt!important;font-size:9pt!important;font-style:italic!important}}@media screen{.print-only,[data-print=show]{display:none!important}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}} diff --git a/assets/index-mUEXKEer.js b/assets/index-mUEXKEer.js new file mode 100644 index 0000000..6b9f36b --- /dev/null +++ b/assets/index-mUEXKEer.js @@ -0,0 +1,28 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/NielsenShowcase-CNC7yiOM.js","assets/NielsenHeuristics-d7HCIgJi.js","assets/CommonComponents-9wqIxBg4.js","assets/search-wZFAvndP.js","assets/GISMapMockup-CfyYGwjR.js","assets/map-pin-BhJz-uKs.js","assets/eye-QHwXAkqY.js","assets/eye-off-Dznbbs9G.js","assets/user-H-bTlvBe.js","assets/LUSPADashboard-DFuqoI8e.js","assets/file-text-BG0u0kR1.js","assets/ConsumerPortal-Q9gDSGOS.js","assets/AnalyticsDashboard-DSxaDMue.js"])))=>i.map(i=>d[i]); +function up(n,r){for(var o=0;oc[s]})}}}return Object.freeze(Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}))}(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))c(s);new MutationObserver(s=>{for(const d of s)if(d.type==="childList")for(const h of d.addedNodes)h.tagName==="LINK"&&h.rel==="modulepreload"&&c(h)}).observe(document,{childList:!0,subtree:!0});function o(s){const d={};return s.integrity&&(d.integrity=s.integrity),s.referrerPolicy&&(d.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?d.credentials="include":s.crossOrigin==="anonymous"?d.credentials="omit":d.credentials="same-origin",d}function c(s){if(s.ep)return;s.ep=!0;const d=o(s);fetch(s.href,d)}})();function li(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var Wo={exports:{}},Qu={};var Sm;function ip(){if(Sm)return Qu;Sm=1;var n=Symbol.for("react.transitional.element"),r=Symbol.for("react.fragment");function o(c,s,d){var h=null;if(d!==void 0&&(h=""+d),s.key!==void 0&&(h=""+s.key),"key"in s){d={};for(var y in s)y!=="key"&&(d[y]=s[y])}else d=s;return s=d.ref,{$$typeof:n,type:c,key:h,ref:s!==void 0?s:null,props:d}}return Qu.Fragment=r,Qu.jsx=o,Qu.jsxs=o,Qu}var Em;function rp(){return Em||(Em=1,Wo.exports=ip()),Wo.exports}var O=rp(),Po={exports:{}},ge={};var Tm;function cp(){if(Tm)return ge;Tm=1;var n=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),c=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),d=Symbol.for("react.consumer"),h=Symbol.for("react.context"),y=Symbol.for("react.forward_ref"),v=Symbol.for("react.suspense"),m=Symbol.for("react.memo"),b=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),T=Symbol.iterator;function _(x){return x===null||typeof x!="object"?null:(x=T&&x[T]||x["@@iterator"],typeof x=="function"?x:null)}var Y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Q=Object.assign,X={};function k(x,B,J){this.props=x,this.context=B,this.refs=X,this.updater=J||Y}k.prototype.isReactComponent={},k.prototype.setState=function(x,B){if(typeof x!="object"&&typeof x!="function"&&x!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,x,B,"setState")},k.prototype.forceUpdate=function(x){this.updater.enqueueForceUpdate(this,x,"forceUpdate")};function $(){}$.prototype=k.prototype;function P(x,B,J){this.props=x,this.context=B,this.refs=X,this.updater=J||Y}var ye=P.prototype=new $;ye.constructor=P,Q(ye,k.prototype),ye.isPureReactComponent=!0;var he=Array.isArray;function Ee(){}var ie={H:null,A:null,T:null,S:null},z=Object.prototype.hasOwnProperty;function Re(x,B,J){var W=J.ref;return{$$typeof:n,type:x,key:B,ref:W!==void 0?W:null,props:J}}function we(x,B){return Re(x.type,B,x.props)}function Ke(x){return typeof x=="object"&&x!==null&&x.$$typeof===n}function pe(x){var B={"=":"=0",":":"=2"};return"$"+x.replace(/[=:]/g,function(J){return B[J]})}var nt=/\/+/g;function je(x,B){return typeof x=="object"&&x!==null&&x.key!=null?pe(""+x.key):B.toString(36)}function ve(x){switch(x.status){case"fulfilled":return x.value;case"rejected":throw x.reason;default:switch(typeof x.status=="string"?x.then(Ee,Ee):(x.status="pending",x.then(function(B){x.status==="pending"&&(x.status="fulfilled",x.value=B)},function(B){x.status==="pending"&&(x.status="rejected",x.reason=B)})),x.status){case"fulfilled":return x.value;case"rejected":throw x.reason}}throw x}function U(x,B,J,W,se){var me=typeof x;(me==="undefined"||me==="boolean")&&(x=null);var Ae=!1;if(x===null)Ae=!0;else switch(me){case"bigint":case"string":case"number":Ae=!0;break;case"object":switch(x.$$typeof){case n:case r:Ae=!0;break;case b:return Ae=x._init,U(Ae(x._payload),B,J,W,se)}}if(Ae)return se=se(x),Ae=W===""?"."+je(x,0):W,he(se)?(J="",Ae!=null&&(J=Ae.replace(nt,"$&/")+"/"),U(se,B,J,"",function(Nl){return Nl})):se!=null&&(Ke(se)&&(se=we(se,J+(se.key==null||x&&x.key===se.key?"":(""+se.key).replace(nt,"$&/")+"/")+Ae)),B.push(se)),1;Ae=0;var st=W===""?".":W+":";if(he(x))for(var Je=0;Je>>1,Te=U[ne];if(0>>1;nes(J,le))Ws(se,J)?(U[ne]=se,U[W]=le,ne=W):(U[ne]=J,U[B]=le,ne=B);else if(Ws(se,le))U[ne]=se,U[W]=le,ne=W;else break e}}return Z}function s(U,Z){var le=U.sortIndex-Z.sortIndex;return le!==0?le:U.id-Z.id}if(n.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var d=performance;n.unstable_now=function(){return d.now()}}else{var h=Date,y=h.now();n.unstable_now=function(){return h.now()-y}}var v=[],m=[],b=1,g=null,T=3,_=!1,Y=!1,Q=!1,X=!1,k=typeof setTimeout=="function"?setTimeout:null,$=typeof clearTimeout=="function"?clearTimeout:null,P=typeof setImmediate<"u"?setImmediate:null;function ye(U){for(var Z=o(m);Z!==null;){if(Z.callback===null)c(m);else if(Z.startTime<=U)c(m),Z.sortIndex=Z.expirationTime,r(v,Z);else break;Z=o(m)}}function he(U){if(Q=!1,ye(U),!Y)if(o(v)!==null)Y=!0,Ee||(Ee=!0,pe());else{var Z=o(m);Z!==null&&ve(he,Z.startTime-U)}}var Ee=!1,ie=-1,z=5,Re=-1;function we(){return X?!0:!(n.unstable_now()-ReU&&we());){var ne=g.callback;if(typeof ne=="function"){g.callback=null,T=g.priorityLevel;var Te=ne(g.expirationTime<=U);if(U=n.unstable_now(),typeof Te=="function"){g.callback=Te,ye(U),Z=!0;break t}g===o(v)&&c(v),ye(U)}else c(v);g=o(v)}if(g!==null)Z=!0;else{var x=o(m);x!==null&&ve(he,x.startTime-U),Z=!1}}break e}finally{g=null,T=le,_=!1}Z=void 0}}finally{Z?pe():Ee=!1}}}var pe;if(typeof P=="function")pe=function(){P(Ke)};else if(typeof MessageChannel<"u"){var nt=new MessageChannel,je=nt.port2;nt.port1.onmessage=Ke,pe=function(){je.postMessage(null)}}else pe=function(){k(Ke,0)};function ve(U,Z){ie=k(function(){U(n.unstable_now())},Z)}n.unstable_IdlePriority=5,n.unstable_ImmediatePriority=1,n.unstable_LowPriority=4,n.unstable_NormalPriority=3,n.unstable_Profiling=null,n.unstable_UserBlockingPriority=2,n.unstable_cancelCallback=function(U){U.callback=null},n.unstable_forceFrameRate=function(U){0>U||125ne?(U.sortIndex=le,r(m,U),o(v)===null&&U===o(m)&&(Q?($(ie),ie=-1):Q=!0,ve(he,le-ne))):(U.sortIndex=Te,r(v,U),Y||_||(Y=!0,Ee||(Ee=!0,pe()))),U},n.unstable_shouldYield=we,n.unstable_wrapCallback=function(U){var Z=T;return function(){var le=T;T=Z;try{return U.apply(this,arguments)}finally{T=le}}}})(tf)),tf}var Am;function sp(){return Am||(Am=1,ef.exports=fp()),ef.exports}var af={exports:{}},Ct={};var Mm;function dp(){if(Mm)return Ct;Mm=1;var n=Ur();function r(v){var m="https://react.dev/errors/"+v;if(1"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(r){console.error(r)}}return n(),af.exports=dp(),af.exports}var _m;function mp(){if(_m)return Vu;_m=1;var n=sp(),r=Ur(),o=hp();function c(e){var t="https://react.dev/errors/"+e;if(1Te||(e.current=ne[Te],ne[Te]=null,Te--)}function J(e,t){Te++,ne[Te]=e.current,e.current=t}var W=x(null),se=x(null),me=x(null),Ae=x(null);function st(e,t){switch(J(me,t),J(se,e),J(W,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Qh(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Qh(t),e=Vh(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}B(W),J(W,e)}function Je(){B(W),B(se),B(me)}function Nl(e){e.memoizedState!==null&&J(Ae,e);var t=W.current,a=Vh(t,e.type);t!==a&&(J(se,e),J(W,a))}function ln(e){se.current===e&&(B(W),B(se)),Ae.current===e&&(B(Ae),qu._currentValue=le)}var $n,gt;function Lt(e){if($n===void 0)try{throw Error()}catch(a){var t=a.stack.trim().match(/\n( *(at )?)/);$n=t&&t[1]||"",gt=-1)":-1u||S[l]!==N[u]){var H=` +`+S[l].replace(" at new "," at ");return e.displayName&&H.includes("")&&(H=H.replace("",e.displayName)),H}while(1<=l&&0<=u);break}}}finally{nn=!1,Error.prepareStackTrace=a}return(a=e?e.displayName||e.name:"")?Lt(a):""}function Ca(e,t){switch(e.tag){case 26:case 27:case 5:return Lt(e.type);case 16:return Lt("Lazy");case 13:return e.child!==t&&t!==null?Lt("Suspense Fallback"):Lt("Suspense");case 19:return Lt("SuspenseList");case 0:case 15:return Wn(e.type,!1);case 11:return Wn(e.type.render,!1);case 1:return Wn(e.type,!0);case 31:return Lt("Activity");default:return""}}function oi(e){try{var t="",a=null;do t+=Ca(e,a),a=e,e=e.return;while(e);return t}catch(l){return` +Error generating stack: `+l.message+` +`+l.stack}}var Pn=Object.prototype.hasOwnProperty,un=n.unstable_scheduleCallback,In=n.unstable_cancelCallback,qr=n.unstable_shouldYield,Yr=n.unstable_requestPaint,wt=n.unstable_now,Da=n.unstable_getCurrentPriorityLevel,el=n.unstable_ImmediatePriority,eu=n.unstable_UserBlockingPriority,tl=n.unstable_NormalPriority,sa=n.unstable_LowPriority,Pt=n.unstable_IdlePriority,fi=n.log,Gr=n.unstable_setDisableYieldValue,Na=null,jt=null;function Et(e){if(typeof fi=="function"&&Gr(e),jt&&typeof jt.setStrictMode=="function")try{jt.setStrictMode(Na,e)}catch{}}var _t=Math.clz32?Math.clz32:Xr,si=Math.log,di=Math.LN2;function Xr(e){return e>>>=0,e===0?32:31-(si(e)/di|0)|0}var wl=256,wa=262144,jl=4194304;function da(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function rn(e,t,a){var l=e.pendingLanes;if(l===0)return 0;var u=0,i=e.suspendedLanes,f=e.pingedLanes;e=e.warmLanes;var p=l&134217727;return p!==0?(l=p&~i,l!==0?u=da(l):(f&=p,f!==0?u=da(f):a||(a=p&~e,a!==0&&(u=da(a))))):(p=l&~i,p!==0?u=da(p):f!==0?u=da(f):a||(a=l&~e,a!==0&&(u=da(a)))),u===0?0:t!==0&&t!==u&&(t&i)===0&&(i=u&-u,a=t&-t,i>=a||i===32&&(a&4194048)!==0)?t:u}function al(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Qr(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function tu(){var e=jl;return jl<<=1,(jl&62914560)===0&&(jl=4194304),e}function ll(e){for(var t=[],a=0;31>a;a++)t.push(e);return t}function Sa(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function hi(e,t,a,l,u,i){var f=e.pendingLanes;e.pendingLanes=a,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=a,e.entangledLanes&=a,e.errorRecoveryDisabledLanes&=a,e.shellSuspendCounter=0;var p=e.entanglements,S=e.expirationTimes,N=e.hiddenUpdates;for(a=f&~a;0"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var Iy=/[\n"\\]/g;function It(e){return e.replace(Iy,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function Vr(e,t,a,l,u,i,f,p){e.name="",f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"?e.type=f:e.removeAttribute("type"),t!=null?f==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+dt(t)):e.value!==""+dt(t)&&(e.value=""+dt(t)):f!=="submit"&&f!=="reset"||e.removeAttribute("value"),t!=null?Zr(e,f,dt(t)):a!=null?Zr(e,f,dt(a)):l!=null&&e.removeAttribute("value"),u==null&&i!=null&&(e.defaultChecked=!!i),u!=null&&(e.checked=u&&typeof u!="function"&&typeof u!="symbol"),p!=null&&typeof p!="function"&&typeof p!="symbol"&&typeof p!="boolean"?e.name=""+dt(p):e.removeAttribute("name")}function Hf(e,t,a,l,u,i,f,p){if(i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(e.type=i),t!=null||a!=null){if(!(i!=="submit"&&i!=="reset"||t!=null)){fn(e);return}a=a!=null?""+dt(a):"",t=t!=null?""+dt(t):a,p||t===e.value||(e.value=t),e.defaultValue=t}l=l??u,l=typeof l!="function"&&typeof l!="symbol"&&!!l,e.checked=p?e.checked:!!l,e.defaultChecked=!!l,f!=null&&typeof f!="function"&&typeof f!="symbol"&&typeof f!="boolean"&&(e.name=f),fn(e)}function Zr(e,t,a){t==="number"&&pi(e.ownerDocument)===e||e.defaultValue===""+a||(e.defaultValue=""+a)}function sn(e,t,a,l){if(e=e.options,t){t={};for(var u=0;u"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),$r=!1;if(Ua)try{var lu={};Object.defineProperty(lu,"passive",{get:function(){$r=!0}}),window.addEventListener("test",lu,lu),window.removeEventListener("test",lu,lu)}catch{$r=!1}var ul=null,Wr=null,bi=null;function Vf(){if(bi)return bi;var e,t=Wr,a=t.length,l,u="value"in ul?ul.value:ul.textContent,i=u.length;for(e=0;e=iu),$f=" ",Wf=!1;function Pf(e,t){switch(e){case"keyup":return Ov.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function If(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var yn=!1;function zv(e,t){switch(e){case"compositionend":return If(t);case"keypress":return t.which!==32?null:(Wf=!0,$f);case"textInput":return e=t.data,e===$f&&Wf?null:e;default:return null}}function Cv(e,t){if(yn)return e==="compositionend"||!ac&&Pf(e,t)?(e=Vf(),bi=Wr=ul=null,yn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:a,offset:t-e};e=l}e:{for(;a;){if(a.nextSibling){a=a.nextSibling;break e}a=a.parentNode}a=void 0}a=rs(a)}}function os(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?os(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function fs(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=pi(e.document);t instanceof e.HTMLIFrameElement;){try{var a=typeof t.contentWindow.location.href=="string"}catch{a=!1}if(a)e=t.contentWindow;else break;t=pi(e.document)}return t}function uc(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var Bv=Ua&&"documentMode"in document&&11>=document.documentMode,vn=null,ic=null,fu=null,rc=!1;function ss(e,t,a){var l=a.window===a?a.document:a.nodeType===9?a:a.ownerDocument;rc||vn==null||vn!==pi(l)||(l=vn,"selectionStart"in l&&uc(l)?l={start:l.selectionStart,end:l.selectionEnd}:(l=(l.ownerDocument&&l.ownerDocument.defaultView||window).getSelection(),l={anchorNode:l.anchorNode,anchorOffset:l.anchorOffset,focusNode:l.focusNode,focusOffset:l.focusOffset}),fu&&ou(fu,l)||(fu=l,l=dr(ic,"onSelect"),0>=f,u-=f,xa=1<<32-_t(t)+u|a<xe?(Ne=ue,ue=null):Ne=ue.sibling;var qe=w(M,ue,D[xe],q);if(qe===null){ue===null&&(ue=Ne);break}e&&ue&&qe.alternate===null&&t(M,ue),R=i(qe,R,xe),Be===null?oe=qe:Be.sibling=qe,Be=qe,ue=Ne}if(xe===D.length)return a(M,ue),Ue&&Ha(M,xe),oe;if(ue===null){for(;xexe?(Ne=ue,ue=null):Ne=ue.sibling;var Ol=w(M,ue,qe.value,q);if(Ol===null){ue===null&&(ue=Ne);break}e&&ue&&Ol.alternate===null&&t(M,ue),R=i(Ol,R,xe),Be===null?oe=Ol:Be.sibling=Ol,Be=Ol,ue=Ne}if(qe.done)return a(M,ue),Ue&&Ha(M,xe),oe;if(ue===null){for(;!qe.done;xe++,qe=D.next())qe=G(M,qe.value,q),qe!==null&&(R=i(qe,R,xe),Be===null?oe=qe:Be.sibling=qe,Be=qe);return Ue&&Ha(M,xe),oe}for(ue=l(ue);!qe.done;xe++,qe=D.next())qe=L(ue,M,xe,qe.value,q),qe!==null&&(e&&qe.alternate!==null&&ue.delete(qe.key===null?xe:qe.key),R=i(qe,R,xe),Be===null?oe=qe:Be.sibling=qe,Be=qe);return e&&ue.forEach(function(np){return t(M,np)}),Ue&&Ha(M,xe),oe}function Ze(M,R,D,q){if(typeof D=="object"&&D!==null&&D.type===Q&&D.key===null&&(D=D.props.children),typeof D=="object"&&D!==null){switch(D.$$typeof){case _:e:{for(var oe=D.key;R!==null;){if(R.key===oe){if(oe=D.type,oe===Q){if(R.tag===7){a(M,R.sibling),q=u(R,D.props.children),q.return=M,M=q;break e}}else if(R.elementType===oe||typeof oe=="object"&&oe!==null&&oe.$$typeof===z&&Kl(oe)===R.type){a(M,R.sibling),q=u(R,D.props),vu(q,D),q.return=M,M=q;break e}a(M,R);break}else t(M,R);R=R.sibling}D.type===Q?(q=Gl(D.props.children,M.mode,q,D.key),q.return=M,M=q):(q=zi(D.type,D.key,D.props,null,M.mode,q),vu(q,D),q.return=M,M=q)}return f(M);case Y:e:{for(oe=D.key;R!==null;){if(R.key===oe)if(R.tag===4&&R.stateNode.containerInfo===D.containerInfo&&R.stateNode.implementation===D.implementation){a(M,R.sibling),q=u(R,D.children||[]),q.return=M,M=q;break e}else{a(M,R);break}else t(M,R);R=R.sibling}q=mc(D,M.mode,q),q.return=M,M=q}return f(M);case z:return D=Kl(D),Ze(M,R,D,q)}if(ve(D))return ae(M,R,D,q);if(pe(D)){if(oe=pe(D),typeof oe!="function")throw Error(c(150));return D=oe.call(D),de(M,R,D,q)}if(typeof D.then=="function")return Ze(M,R,Li(D),q);if(D.$$typeof===P)return Ze(M,R,Ni(M,D),q);Hi(M,D)}return typeof D=="string"&&D!==""||typeof D=="number"||typeof D=="bigint"?(D=""+D,R!==null&&R.tag===6?(a(M,R.sibling),q=u(R,D),q.return=M,M=q):(a(M,R),q=hc(D,M.mode,q),q.return=M,M=q),f(M)):a(M,R)}return function(M,R,D,q){try{yu=0;var oe=Ze(M,R,D,q);return On=null,oe}catch(ue){if(ue===Mn||ue===ji)throw ue;var Be=Zt(29,ue,null,M.mode);return Be.lanes=q,Be.return=M,Be}}}var kl=js(!0),Us=js(!1),fl=!1;function Mc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Oc(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function sl(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function dl(e,t,a){var l=e.updateQueue;if(l===null)return null;if(l=l.shared,(Ye&2)!==0){var u=l.pending;return u===null?t.next=t:(t.next=u.next,u.next=t),l.pending=t,t=_i(e),gs(e,null,a),t}return Oi(e,l,t,a),_i(e)}function pu(e,t,a){if(t=t.updateQueue,t!==null&&(t=t.shared,(a&4194048)!==0)){var l=t.lanes;l&=e.pendingLanes,a|=l,t.lanes=a,yi(e,a)}}function _c(e,t){var a=e.updateQueue,l=e.alternate;if(l!==null&&(l=l.updateQueue,a===l)){var u=null,i=null;if(a=a.firstBaseUpdate,a!==null){do{var f={lane:a.lane,tag:a.tag,payload:a.payload,callback:null,next:null};i===null?u=i=f:i=i.next=f,a=a.next}while(a!==null);i===null?u=i=t:i=i.next=t}else u=i=t;a={baseState:l.baseState,firstBaseUpdate:u,lastBaseUpdate:i,shared:l.shared,callbacks:l.callbacks},e.updateQueue=a;return}e=a.lastBaseUpdate,e===null?a.firstBaseUpdate=t:e.next=t,a.lastBaseUpdate=t}var zc=!1;function gu(){if(zc){var e=An;if(e!==null)throw e}}function bu(e,t,a,l){zc=!1;var u=e.updateQueue;fl=!1;var i=u.firstBaseUpdate,f=u.lastBaseUpdate,p=u.shared.pending;if(p!==null){u.shared.pending=null;var S=p,N=S.next;S.next=null,f===null?i=N:f.next=N,f=S;var H=e.alternate;H!==null&&(H=H.updateQueue,p=H.lastBaseUpdate,p!==f&&(p===null?H.firstBaseUpdate=N:p.next=N,H.lastBaseUpdate=S))}if(i!==null){var G=u.baseState;f=0,H=N=S=null,p=i;do{var w=p.lane&-536870913,L=w!==p.lane;if(L?(De&w)===w:(l&w)===w){w!==0&&w===Rn&&(zc=!0),H!==null&&(H=H.next={lane:0,tag:p.tag,payload:p.payload,callback:null,next:null});e:{var ae=e,de=p;w=t;var Ze=a;switch(de.tag){case 1:if(ae=de.payload,typeof ae=="function"){G=ae.call(Ze,G,w);break e}G=ae;break e;case 3:ae.flags=ae.flags&-65537|128;case 0:if(ae=de.payload,w=typeof ae=="function"?ae.call(Ze,G,w):ae,w==null)break e;G=g({},G,w);break e;case 2:fl=!0}}w=p.callback,w!==null&&(e.flags|=64,L&&(e.flags|=8192),L=u.callbacks,L===null?u.callbacks=[w]:L.push(w))}else L={lane:w,tag:p.tag,payload:p.payload,callback:p.callback,next:null},H===null?(N=H=L,S=G):H=H.next=L,f|=w;if(p=p.next,p===null){if(p=u.shared.pending,p===null)break;L=p,p=L.next,L.next=null,u.lastBaseUpdate=L,u.shared.pending=null}}while(!0);H===null&&(S=G),u.baseState=S,u.firstBaseUpdate=N,u.lastBaseUpdate=H,i===null&&(u.shared.lanes=0),pl|=f,e.lanes=f,e.memoizedState=G}}function Ls(e,t){if(typeof e!="function")throw Error(c(191,e));e.call(t)}function Hs(e,t){var a=e.callbacks;if(a!==null)for(e.callbacks=null,e=0;ei?i:8;var f=U.T,p={};U.T=p,kc(e,!1,t,a);try{var S=u(),N=U.S;if(N!==null&&N(p,S),S!==null&&typeof S=="object"&&typeof S.then=="function"){var H=Jv(S,l);Tu(e,t,H,$t(e))}else Tu(e,t,l,$t(e))}catch(G){Tu(e,t,{then:function(){},status:"rejected",reason:G},$t())}finally{Z.p=i,f!==null&&p.types!==null&&(f.types=p.types),U.T=f}}function Iv(){}function Kc(e,t,a,l){if(e.tag!==5)throw Error(c(476));var u=yd(e).queue;md(e,u,t,le,a===null?Iv:function(){return vd(e),a(l)})}function yd(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:le,baseState:le,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ga,lastRenderedState:le},next:null};var a={};return t.next={memoizedState:a,baseState:a,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Ga,lastRenderedState:a},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function vd(e){var t=yd(e);t.next===null&&(t=e.alternate.memoizedState),Tu(e,t.next.queue,{},$t())}function Jc(){return At(qu)}function pd(){return ft().memoizedState}function gd(){return ft().memoizedState}function e0(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var a=$t();e=sl(a);var l=dl(t,e,a);l!==null&&(Xt(l,t,a),pu(l,t,a)),t={cache:Tc()},e.payload=t;return}t=t.return}}function t0(e,t,a){var l=$t();a={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Ji(e)?Sd(t,a):(a=sc(e,t,a,l),a!==null&&(Xt(a,e,l),Ed(a,t,l)))}function bd(e,t,a){var l=$t();Tu(e,t,a,l)}function Tu(e,t,a,l){var u={lane:l,revertLane:0,gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null};if(Ji(e))Sd(t,u);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var f=t.lastRenderedState,p=i(f,a);if(u.hasEagerState=!0,u.eagerState=p,Vt(p,f))return Oi(e,t,u,0),Fe===null&&Mi(),!1}catch{}if(a=sc(e,t,u,l),a!==null)return Xt(a,e,l),Ed(a,t,l),!0}return!1}function kc(e,t,a,l){if(l={lane:2,revertLane:Oo(),gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Ji(e)){if(t)throw Error(c(479))}else t=sc(e,a,l,2),t!==null&&Xt(t,e,2)}function Ji(e){var t=e.alternate;return e===Se||t!==null&&t===Se}function Sd(e,t){zn=Yi=!0;var a=e.pending;a===null?t.next=t:(t.next=a.next,a.next=t),e.pending=t}function Ed(e,t,a){if((a&4194048)!==0){var l=t.lanes;l&=e.pendingLanes,a|=l,t.lanes=a,yi(e,a)}}var xu={readContext:At,use:Qi,useCallback:it,useContext:it,useEffect:it,useImperativeHandle:it,useLayoutEffect:it,useInsertionEffect:it,useMemo:it,useReducer:it,useRef:it,useState:it,useDebugValue:it,useDeferredValue:it,useTransition:it,useSyncExternalStore:it,useId:it,useHostTransitionStatus:it,useFormState:it,useActionState:it,useOptimistic:it,useMemoCache:it,useCacheRefresh:it};xu.useEffectEvent=it;var Td={readContext:At,use:Qi,useCallback:function(e,t){return Ut().memoizedState=[e,t===void 0?null:t],e},useContext:At,useEffect:ud,useImperativeHandle:function(e,t,a){a=a!=null?a.concat([e]):null,Zi(4194308,4,od.bind(null,t,e),a)},useLayoutEffect:function(e,t){return Zi(4194308,4,e,t)},useInsertionEffect:function(e,t){Zi(4,2,e,t)},useMemo:function(e,t){var a=Ut();t=t===void 0?null:t;var l=e();if(Fl){Et(!0);try{e()}finally{Et(!1)}}return a.memoizedState=[l,t],l},useReducer:function(e,t,a){var l=Ut();if(a!==void 0){var u=a(t);if(Fl){Et(!0);try{a(t)}finally{Et(!1)}}}else u=t;return l.memoizedState=l.baseState=u,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:u},l.queue=e,e=e.dispatch=t0.bind(null,Se,e),[l.memoizedState,e]},useRef:function(e){var t=Ut();return e={current:e},t.memoizedState=e},useState:function(e){e=Gc(e);var t=e.queue,a=bd.bind(null,Se,t);return t.dispatch=a,[e.memoizedState,a]},useDebugValue:Vc,useDeferredValue:function(e,t){var a=Ut();return Zc(a,e,t)},useTransition:function(){var e=Gc(!1);return e=md.bind(null,Se,e.queue,!0,!1),Ut().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,a){var l=Se,u=Ut();if(Ue){if(a===void 0)throw Error(c(407));a=a()}else{if(a=t(),Fe===null)throw Error(c(349));(De&127)!==0||Qs(l,t,a)}u.memoizedState=a;var i={value:a,getSnapshot:t};return u.queue=i,ud(Zs.bind(null,l,i,e),[e]),l.flags|=2048,Dn(9,{destroy:void 0},Vs.bind(null,l,i,a,t),null),a},useId:function(){var e=Ut(),t=Fe.identifierPrefix;if(Ue){var a=Ra,l=xa;a=(l&~(1<<32-_t(l)-1)).toString(32)+a,t="_"+t+"R_"+a,a=Gi++,0<\/script>",i=i.removeChild(i.firstChild);break;case"select":i=typeof l.is=="string"?f.createElement("select",{is:l.is}):f.createElement("select"),l.multiple?i.multiple=!0:l.size&&(i.size=l.size);break;default:i=typeof l.is=="string"?f.createElement(u,{is:l.is}):f.createElement(u)}}i[F]=t,i[I]=l;e:for(f=t.child;f!==null;){if(f.tag===5||f.tag===6)i.appendChild(f.stateNode);else if(f.tag!==4&&f.tag!==27&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===t)break e;for(;f.sibling===null;){if(f.return===null||f.return===t)break e;f=f.return}f.sibling.return=f.return,f=f.sibling}t.stateNode=i;e:switch(Ot(i,u,l),u){case"button":case"input":case"select":case"textarea":l=!!l.autoFocus;break e;case"img":l=!0;break e;default:l=!1}l&&Qa(t)}}return et(t),co(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,a),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==l&&Qa(t);else{if(typeof l!="string"&&t.stateNode===null)throw Error(c(166));if(e=me.current,Tn(t)){if(e=t.stateNode,a=t.memoizedProps,l=null,u=Rt,u!==null)switch(u.tag){case 27:case 5:l=u.memoizedProps}e[F]=t,e=!!(e.nodeValue===a||l!==null&&l.suppressHydrationWarning===!0||Gh(e.nodeValue,a)),e||cl(t,!0)}else e=hr(e).createTextNode(l),e[F]=t,t.stateNode=e}return et(t),null;case 31:if(a=t.memoizedState,e===null||e.memoizedState!==null){if(l=Tn(t),a!==null){if(e===null){if(!l)throw Error(c(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(c(557));e[F]=t}else Xl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;et(t),e=!1}else a=gc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),e=!0;if(!e)return t.flags&256?(Jt(t),t):(Jt(t),null);if((t.flags&128)!==0)throw Error(c(558))}return et(t),null;case 13:if(l=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(u=Tn(t),l!==null&&l.dehydrated!==null){if(e===null){if(!u)throw Error(c(318));if(u=t.memoizedState,u=u!==null?u.dehydrated:null,!u)throw Error(c(317));u[F]=t}else Xl(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;et(t),u=!1}else u=gc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=u),u=!0;if(!u)return t.flags&256?(Jt(t),t):(Jt(t),null)}return Jt(t),(t.flags&128)!==0?(t.lanes=a,t):(a=l!==null,e=e!==null&&e.memoizedState!==null,a&&(l=t.child,u=null,l.alternate!==null&&l.alternate.memoizedState!==null&&l.alternate.memoizedState.cachePool!==null&&(u=l.alternate.memoizedState.cachePool.pool),i=null,l.memoizedState!==null&&l.memoizedState.cachePool!==null&&(i=l.memoizedState.cachePool.pool),i!==u&&(l.flags|=2048)),a!==e&&a&&(t.child.flags|=8192),Pi(t,t.updateQueue),et(t),null);case 4:return Je(),e===null&&Do(t.stateNode.containerInfo),et(t),null;case 10:return qa(t.type),et(t),null;case 19:if(B(ot),l=t.memoizedState,l===null)return et(t),null;if(u=(t.flags&128)!==0,i=l.rendering,i===null)if(u)Au(l,!1);else{if(rt!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(i=qi(e),i!==null){for(t.flags|=128,Au(l,!1),e=i.updateQueue,t.updateQueue=e,Pi(t,e),t.subtreeFlags=0,e=a,a=t.child;a!==null;)bs(a,e),a=a.sibling;return J(ot,ot.current&1|2),Ue&&Ha(t,l.treeForkCount),t.child}e=e.sibling}l.tail!==null&&wt()>lr&&(t.flags|=128,u=!0,Au(l,!1),t.lanes=4194304)}else{if(!u)if(e=qi(i),e!==null){if(t.flags|=128,u=!0,e=e.updateQueue,t.updateQueue=e,Pi(t,e),Au(l,!0),l.tail===null&&l.tailMode==="hidden"&&!i.alternate&&!Ue)return et(t),null}else 2*wt()-l.renderingStartTime>lr&&a!==536870912&&(t.flags|=128,u=!0,Au(l,!1),t.lanes=4194304);l.isBackwards?(i.sibling=t.child,t.child=i):(e=l.last,e!==null?e.sibling=i:t.child=i,l.last=i)}return l.tail!==null?(e=l.tail,l.rendering=e,l.tail=e.sibling,l.renderingStartTime=wt(),e.sibling=null,a=ot.current,J(ot,u?a&1|2:a&1),Ue&&Ha(t,l.treeForkCount),e):(et(t),null);case 22:case 23:return Jt(t),Dc(),l=t.memoizedState!==null,e!==null?e.memoizedState!==null!==l&&(t.flags|=8192):l&&(t.flags|=8192),l?(a&536870912)!==0&&(t.flags&128)===0&&(et(t),t.subtreeFlags&6&&(t.flags|=8192)):et(t),a=t.updateQueue,a!==null&&Pi(t,a.retryQueue),a=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),l=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(l=t.memoizedState.cachePool.pool),l!==a&&(t.flags|=2048),e!==null&&B(Zl),null;case 24:return a=null,e!==null&&(a=e.memoizedState.cache),t.memoizedState.cache!==a&&(t.flags|=2048),qa(ht),et(t),null;case 25:return null;case 30:return null}throw Error(c(156,t.tag))}function i0(e,t){switch(vc(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return qa(ht),Je(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ln(t),null;case 31:if(t.memoizedState!==null){if(Jt(t),t.alternate===null)throw Error(c(340));Xl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Jt(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(c(340));Xl()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return B(ot),null;case 4:return Je(),null;case 10:return qa(t.type),null;case 22:case 23:return Jt(t),Dc(),e!==null&&B(Zl),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return qa(ht),null;case 25:return null;default:return null}}function Kd(e,t){switch(vc(t),t.tag){case 3:qa(ht),Je();break;case 26:case 27:case 5:ln(t);break;case 4:Je();break;case 31:t.memoizedState!==null&&Jt(t);break;case 13:Jt(t);break;case 19:B(ot);break;case 10:qa(t.type);break;case 22:case 23:Jt(t),Dc(),e!==null&&B(Zl);break;case 24:qa(ht)}}function Mu(e,t){try{var a=t.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var u=l.next;a=u;do{if((a.tag&e)===e){l=void 0;var i=a.create,f=a.inst;l=i(),f.destroy=l}a=a.next}while(a!==u)}}catch(p){Xe(t,t.return,p)}}function yl(e,t,a){try{var l=t.updateQueue,u=l!==null?l.lastEffect:null;if(u!==null){var i=u.next;l=i;do{if((l.tag&e)===e){var f=l.inst,p=f.destroy;if(p!==void 0){f.destroy=void 0,u=t;var S=a,N=p;try{N()}catch(H){Xe(u,S,H)}}}l=l.next}while(l!==i)}}catch(H){Xe(t,t.return,H)}}function Jd(e){var t=e.updateQueue;if(t!==null){var a=e.stateNode;try{Hs(t,a)}catch(l){Xe(e,e.return,l)}}}function kd(e,t,a){a.props=$l(e.type,e.memoizedProps),a.state=e.memoizedState;try{a.componentWillUnmount()}catch(l){Xe(e,t,l)}}function Ou(e,t){try{var a=e.ref;if(a!==null){switch(e.tag){case 26:case 27:case 5:var l=e.stateNode;break;case 30:l=e.stateNode;break;default:l=e.stateNode}typeof a=="function"?e.refCleanup=a(l):a.current=l}}catch(u){Xe(e,t,u)}}function Aa(e,t){var a=e.ref,l=e.refCleanup;if(a!==null)if(typeof l=="function")try{l()}catch(u){Xe(e,t,u)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof a=="function")try{a(null)}catch(u){Xe(e,t,u)}else a.current=null}function Fd(e){var t=e.type,a=e.memoizedProps,l=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":a.autoFocus&&l.focus();break e;case"img":a.src?l.src=a.src:a.srcSet&&(l.srcset=a.srcSet)}}catch(u){Xe(e,e.return,u)}}function oo(e,t,a){try{var l=e.stateNode;_0(l,e.type,a,t),l[I]=t}catch(u){Xe(e,e.return,u)}}function $d(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Tl(e.type)||e.tag===4}function fo(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||$d(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Tl(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function so(e,t,a){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?(a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a).insertBefore(e,t):(t=a.nodeType===9?a.body:a.nodeName==="HTML"?a.ownerDocument.body:a,t.appendChild(e),a=a._reactRootContainer,a!=null||t.onclick!==null||(t.onclick=ja));else if(l!==4&&(l===27&&Tl(e.type)&&(a=e.stateNode,t=null),e=e.child,e!==null))for(so(e,t,a),e=e.sibling;e!==null;)so(e,t,a),e=e.sibling}function Ii(e,t,a){var l=e.tag;if(l===5||l===6)e=e.stateNode,t?a.insertBefore(e,t):a.appendChild(e);else if(l!==4&&(l===27&&Tl(e.type)&&(a=e.stateNode),e=e.child,e!==null))for(Ii(e,t,a),e=e.sibling;e!==null;)Ii(e,t,a),e=e.sibling}function Wd(e){var t=e.stateNode,a=e.memoizedProps;try{for(var l=e.type,u=t.attributes;u.length;)t.removeAttributeNode(u[0]);Ot(t,l,a),t[F]=e,t[I]=a}catch(i){Xe(e,e.return,i)}}var Va=!1,vt=!1,ho=!1,Pd=typeof WeakSet=="function"?WeakSet:Set,xt=null;function r0(e,t){if(e=e.containerInfo,jo=Sr,e=fs(e),uc(e)){if("selectionStart"in e)var a={start:e.selectionStart,end:e.selectionEnd};else e:{a=(a=e.ownerDocument)&&a.defaultView||window;var l=a.getSelection&&a.getSelection();if(l&&l.rangeCount!==0){a=l.anchorNode;var u=l.anchorOffset,i=l.focusNode;l=l.focusOffset;try{a.nodeType,i.nodeType}catch{a=null;break e}var f=0,p=-1,S=-1,N=0,H=0,G=e,w=null;t:for(;;){for(var L;G!==a||u!==0&&G.nodeType!==3||(p=f+u),G!==i||l!==0&&G.nodeType!==3||(S=f+l),G.nodeType===3&&(f+=G.nodeValue.length),(L=G.firstChild)!==null;)w=G,G=L;for(;;){if(G===e)break t;if(w===a&&++N===u&&(p=f),w===i&&++H===l&&(S=f),(L=G.nextSibling)!==null)break;G=w,w=G.parentNode}G=L}a=p===-1||S===-1?null:{start:p,end:S}}else a=null}a=a||{start:0,end:0}}else a=null;for(Uo={focusedElem:e,selectionRange:a},Sr=!1,xt=t;xt!==null;)if(t=xt,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,xt=e;else for(;xt!==null;){switch(t=xt,i=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(a=0;a title"))),Ot(i,l,a),i[F]=e,$e(i),l=i;break e;case"link":var f=nm("link","href",u).get(l+(a.href||""));if(f){for(var p=0;pZe&&(f=Ze,Ze=de,de=f);var M=cs(p,de),R=cs(p,Ze);if(M&&R&&(L.rangeCount!==1||L.anchorNode!==M.node||L.anchorOffset!==M.offset||L.focusNode!==R.node||L.focusOffset!==R.offset)){var D=G.createRange();D.setStart(M.node,M.offset),L.removeAllRanges(),de>Ze?(L.addRange(D),L.extend(R.node,R.offset)):(D.setEnd(R.node,R.offset),L.addRange(D))}}}}for(G=[],L=p;L=L.parentNode;)L.nodeType===1&&G.push({element:L,left:L.scrollLeft,top:L.scrollTop});for(typeof p.focus=="function"&&p.focus(),p=0;pa?32:a,U.T=null,a=So,So=null;var i=bl,f=Fa;if(St=0,Ln=bl=null,Fa=0,(Ye&6)!==0)throw Error(c(331));var p=Ye;if(Ye|=4,oh(i.current),ih(i,i.current,f,a),Ye=p,wu(0,!1),jt&&typeof jt.onPostCommitFiberRoot=="function")try{jt.onPostCommitFiberRoot(Na,i)}catch{}return!0}finally{Z.p=u,U.T=l,Oh(e,t)}}function zh(e,t,a){t=ta(a,t),t=Pc(e.stateNode,t,2),e=dl(e,t,2),e!==null&&(Sa(e,2),Ma(e))}function Xe(e,t,a){if(e.tag===3)zh(e,e,a);else for(;t!==null;){if(t.tag===3){zh(t,e,a);break}else if(t.tag===1){var l=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof l.componentDidCatch=="function"&&(gl===null||!gl.has(l))){e=ta(a,e),a=Cd(2),l=dl(t,a,2),l!==null&&(Dd(a,l,t,e),Sa(l,2),Ma(l));break}}t=t.return}}function Ro(e,t,a){var l=e.pingCache;if(l===null){l=e.pingCache=new f0;var u=new Set;l.set(t,u)}else u=l.get(t),u===void 0&&(u=new Set,l.set(t,u));u.has(a)||(vo=!0,u.add(a),e=y0.bind(null,e,t,a),t.then(e,e))}function y0(e,t,a){var l=e.pingCache;l!==null&&l.delete(t),e.pingedLanes|=e.suspendedLanes&a,e.warmLanes&=~a,Fe===e&&(De&a)===a&&(rt===4||rt===3&&(De&62914560)===De&&300>wt()-ar?(Ye&2)===0&&Hn(e,0):po|=a,Un===De&&(Un=0)),Ma(e)}function Ch(e,t){t===0&&(t=tu()),e=Yl(e,t),e!==null&&(Sa(e,t),Ma(e))}function v0(e){var t=e.memoizedState,a=0;t!==null&&(a=t.retryLane),Ch(e,a)}function p0(e,t){var a=0;switch(e.tag){case 31:case 13:var l=e.stateNode,u=e.memoizedState;u!==null&&(a=u.retryLane);break;case 19:l=e.stateNode;break;case 22:l=e.stateNode._retryCache;break;default:throw Error(c(314))}l!==null&&l.delete(t),Ch(e,a)}function g0(e,t){return un(e,t)}var or=null,qn=null,Ao=!1,fr=!1,Mo=!1,El=0;function Ma(e){e!==qn&&e.next===null&&(qn===null?or=qn=e:qn=qn.next=e),fr=!0,Ao||(Ao=!0,S0())}function wu(e,t){if(!Mo&&fr){Mo=!0;do for(var a=!1,l=or;l!==null;){if(e!==0){var u=l.pendingLanes;if(u===0)var i=0;else{var f=l.suspendedLanes,p=l.pingedLanes;i=(1<<31-_t(42|e)+1)-1,i&=u&~(f&~p),i=i&201326741?i&201326741|1:i?i|2:0}i!==0&&(a=!0,jh(l,i))}else i=De,i=rn(l,l===Fe?i:0,l.cancelPendingCommit!==null||l.timeoutHandle!==-1),(i&3)===0||al(l,i)||(a=!0,jh(l,i));l=l.next}while(a);Mo=!1}}function b0(){Dh()}function Dh(){fr=Ao=!1;var e=0;El!==0&&C0()&&(e=El);for(var t=wt(),a=null,l=or;l!==null;){var u=l.next,i=Nh(l,t);i===0?(l.next=null,a===null?or=u:a.next=u,u===null&&(qn=a)):(a=l,(e!==0||(i&3)!==0)&&(fr=!0)),l=u}St!==0&&St!==5||wu(e),El!==0&&(El=0)}function Nh(e,t){for(var a=e.suspendedLanes,l=e.pingedLanes,u=e.expirationTimes,i=e.pendingLanes&-62914561;0p)break;var H=S.transferSize,G=S.initiatorType;H&&Xh(G)&&(S=S.responseEnd,f+=H*(S"u"?null:document;function em(e,t,a){var l=Yn;if(l&&typeof t=="string"&&t){var u=It(t);u='link[rel="'+e+'"][href="'+u+'"]',typeof a=="string"&&(u+='[crossorigin="'+a+'"]'),Ih.has(u)||(Ih.add(u),e={rel:e,crossOrigin:a,href:t},l.querySelector(u)===null&&(t=l.createElement("link"),Ot(t,"link",e),$e(t),l.head.appendChild(t)))}}function q0(e){$a.D(e),em("dns-prefetch",e,null)}function Y0(e,t){$a.C(e,t),em("preconnect",e,t)}function G0(e,t,a){$a.L(e,t,a);var l=Yn;if(l&&e&&t){var u='link[rel="preload"][as="'+It(t)+'"]';t==="image"&&a&&a.imageSrcSet?(u+='[imagesrcset="'+It(a.imageSrcSet)+'"]',typeof a.imageSizes=="string"&&(u+='[imagesizes="'+It(a.imageSizes)+'"]')):u+='[href="'+It(e)+'"]';var i=u;switch(t){case"style":i=Gn(e);break;case"script":i=Xn(e)}ra.has(i)||(e=g({rel:"preload",href:t==="image"&&a&&a.imageSrcSet?void 0:e,as:t},a),ra.set(i,e),l.querySelector(u)!==null||t==="style"&&l.querySelector(Hu(i))||t==="script"&&l.querySelector(Bu(i))||(t=l.createElement("link"),Ot(t,"link",e),$e(t),l.head.appendChild(t)))}}function X0(e,t){$a.m(e,t);var a=Yn;if(a&&e){var l=t&&typeof t.as=="string"?t.as:"script",u='link[rel="modulepreload"][as="'+It(l)+'"][href="'+It(e)+'"]',i=u;switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":i=Xn(e)}if(!ra.has(i)&&(e=g({rel:"modulepreload",href:e},t),ra.set(i,e),a.querySelector(u)===null)){switch(l){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(a.querySelector(Bu(i)))return}l=a.createElement("link"),Ot(l,"link",e),$e(l),a.head.appendChild(l)}}}function Q0(e,t,a){$a.S(e,t,a);var l=Yn;if(l&&e){var u=bt(l).hoistableStyles,i=Gn(e);t=t||"default";var f=u.get(i);if(!f){var p={loading:0,preload:null};if(f=l.querySelector(Hu(i)))p.loading=5;else{e=g({rel:"stylesheet",href:e,"data-precedence":t},a),(a=ra.get(i))&&Xo(e,a);var S=f=l.createElement("link");$e(S),Ot(S,"link",e),S._p=new Promise(function(N,H){S.onload=N,S.onerror=H}),S.addEventListener("load",function(){p.loading|=1}),S.addEventListener("error",function(){p.loading|=2}),p.loading|=4,yr(f,t,l)}f={type:"stylesheet",instance:f,count:1,state:p},u.set(i,f)}}}function V0(e,t){$a.X(e,t);var a=Yn;if(a&&e){var l=bt(a).hoistableScripts,u=Xn(e),i=l.get(u);i||(i=a.querySelector(Bu(u)),i||(e=g({src:e,async:!0},t),(t=ra.get(u))&&Qo(e,t),i=a.createElement("script"),$e(i),Ot(i,"link",e),a.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},l.set(u,i))}}function Z0(e,t){$a.M(e,t);var a=Yn;if(a&&e){var l=bt(a).hoistableScripts,u=Xn(e),i=l.get(u);i||(i=a.querySelector(Bu(u)),i||(e=g({src:e,async:!0,type:"module"},t),(t=ra.get(u))&&Qo(e,t),i=a.createElement("script"),$e(i),Ot(i,"link",e),a.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},l.set(u,i))}}function tm(e,t,a,l){var u=(u=me.current)?mr(u):null;if(!u)throw Error(c(446));switch(e){case"meta":case"title":return null;case"style":return typeof a.precedence=="string"&&typeof a.href=="string"?(t=Gn(a.href),a=bt(u).hoistableStyles,l=a.get(t),l||(l={type:"style",instance:null,count:0,state:null},a.set(t,l)),l):{type:"void",instance:null,count:0,state:null};case"link":if(a.rel==="stylesheet"&&typeof a.href=="string"&&typeof a.precedence=="string"){e=Gn(a.href);var i=bt(u).hoistableStyles,f=i.get(e);if(f||(u=u.ownerDocument||u,f={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},i.set(e,f),(i=u.querySelector(Hu(e)))&&!i._p&&(f.instance=i,f.state.loading=5),ra.has(e)||(a={rel:"preload",as:"style",href:a.href,crossOrigin:a.crossOrigin,integrity:a.integrity,media:a.media,hrefLang:a.hrefLang,referrerPolicy:a.referrerPolicy},ra.set(e,a),i||K0(u,e,a,f.state))),t&&l===null)throw Error(c(528,""));return f}if(t&&l!==null)throw Error(c(529,""));return null;case"script":return t=a.async,a=a.src,typeof a=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Xn(a),a=bt(u).hoistableScripts,l=a.get(t),l||(l={type:"script",instance:null,count:0,state:null},a.set(t,l)),l):{type:"void",instance:null,count:0,state:null};default:throw Error(c(444,e))}}function Gn(e){return'href="'+It(e)+'"'}function Hu(e){return'link[rel="stylesheet"]['+e+"]"}function am(e){return g({},e,{"data-precedence":e.precedence,precedence:null})}function K0(e,t,a,l){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?l.loading=1:(t=e.createElement("link"),l.preload=t,t.addEventListener("load",function(){return l.loading|=1}),t.addEventListener("error",function(){return l.loading|=2}),Ot(t,"link",a),$e(t),e.head.appendChild(t))}function Xn(e){return'[src="'+It(e)+'"]'}function Bu(e){return"script[async]"+e}function lm(e,t,a){if(t.count++,t.instance===null)switch(t.type){case"style":var l=e.querySelector('style[data-href~="'+It(a.href)+'"]');if(l)return t.instance=l,$e(l),l;var u=g({},a,{"data-href":a.href,"data-precedence":a.precedence,href:null,precedence:null});return l=(e.ownerDocument||e).createElement("style"),$e(l),Ot(l,"style",u),yr(l,a.precedence,e),t.instance=l;case"stylesheet":u=Gn(a.href);var i=e.querySelector(Hu(u));if(i)return t.state.loading|=4,t.instance=i,$e(i),i;l=am(a),(u=ra.get(u))&&Xo(l,u),i=(e.ownerDocument||e).createElement("link"),$e(i);var f=i;return f._p=new Promise(function(p,S){f.onload=p,f.onerror=S}),Ot(i,"link",l),t.state.loading|=4,yr(i,a.precedence,e),t.instance=i;case"script":return i=Xn(a.src),(u=e.querySelector(Bu(i)))?(t.instance=u,$e(u),u):(l=a,(u=ra.get(i))&&(l=g({},a),Qo(l,u)),e=e.ownerDocument||e,u=e.createElement("script"),$e(u),Ot(u,"link",l),e.head.appendChild(u),t.instance=u);case"void":return null;default:throw Error(c(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(l=t.instance,t.state.loading|=4,yr(l,a.precedence,e));return t.instance}function yr(e,t,a){for(var l=a.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),u=l.length?l[l.length-1]:null,i=u,f=0;f title"):null)}function J0(e,t,a){if(a===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(e=t.disabled,typeof t.precedence=="string"&&e==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function im(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function k0(e,t,a,l){if(a.type==="stylesheet"&&(typeof l.media!="string"||matchMedia(l.media).matches!==!1)&&(a.state.loading&4)===0){if(a.instance===null){var u=Gn(l.href),i=t.querySelector(Hu(u));if(i){t=i._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=pr.bind(e),t.then(e,e)),a.state.loading|=4,a.instance=i,$e(i);return}i=t.ownerDocument||t,l=am(l),(u=ra.get(u))&&Xo(l,u),i=i.createElement("link"),$e(i);var f=i;f._p=new Promise(function(p,S){f.onload=p,f.onerror=S}),Ot(i,"link",l),a.instance=i}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(a,t),(t=a.state.preload)&&(a.state.loading&3)===0&&(e.count++,a=pr.bind(e),t.addEventListener("load",a),t.addEventListener("error",a))}}var Vo=0;function F0(e,t){return e.stylesheets&&e.count===0&&br(e,e.stylesheets),0Vo?50:800)+t);return e.unsuspend=a,function(){e.unsuspend=null,clearTimeout(l),clearTimeout(u)}}:null}function pr(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)br(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var gr=null;function br(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,gr=new Map,t.forEach($0,e),gr=null,pr.call(e))}function $0(e,t){if(!(t.state.loading&4)){var a=gr.get(e);if(a)var l=a.get(null);else{a=new Map,gr.set(e,a);for(var u=e.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(r){console.error(r)}}return n(),Io.exports=mp(),Io.exports}var vp=yp();var py=n=>{throw TypeError(n)},pp=(n,r,o)=>r.has(n)||py("Cannot "+o),lf=(n,r,o)=>(pp(n,r,"read from private field"),o?o.call(n):r.get(n)),gp=(n,r,o)=>r.has(n)?py("Cannot add the same private member more than once"):r instanceof WeakSet?r.add(n):r.set(n,o),Cm="popstate";function Dm(n){return typeof n=="object"&&n!=null&&"pathname"in n&&"search"in n&&"hash"in n&&"state"in n&&"key"in n}function bp(n={}){function r(c,s){let d=s.state?.masked,{pathname:h,search:y,hash:v}=d||c.location;return Iu("",{pathname:h,search:y,hash:v},s.state&&s.state.usr||null,s.state&&s.state.key||"default",d?{pathname:c.location.pathname,search:c.location.search,hash:c.location.hash}:void 0)}function o(c,s){return typeof s=="string"?s:Oa(s)}return Ep(r,o,null,n)}function _e(n,r){if(n===!1||n===null||typeof n>"u")throw new Error(r)}function pt(n,r){if(!n){typeof console<"u"&&console.warn(r);try{throw new Error(r)}catch{}}}function Sp(){return Math.random().toString(36).substring(2,10)}function Nm(n,r){return{usr:n.state,key:n.key,idx:r,masked:n.unstable_mask?{pathname:n.pathname,search:n.search,hash:n.hash}:void 0}}function Iu(n,r,o=null,c,s){return{pathname:typeof n=="string"?n:n.pathname,search:"",hash:"",...typeof r=="string"?Ia(r):r,state:o,key:r&&r.key||c||Sp(),unstable_mask:s}}function Oa({pathname:n="/",search:r="",hash:o=""}){return r&&r!=="?"&&(n+=r.charAt(0)==="?"?r:"?"+r),o&&o!=="#"&&(n+=o.charAt(0)==="#"?o:"#"+o),n}function Ia(n){let r={};if(n){let o=n.indexOf("#");o>=0&&(r.hash=n.substring(o),n=n.substring(0,o));let c=n.indexOf("?");c>=0&&(r.search=n.substring(c),n=n.substring(0,c)),n&&(r.pathname=n)}return r}function Ep(n,r,o,c={}){let{window:s=document.defaultView,v5Compat:d=!1}=c,h=s.history,y="POP",v=null,m=b();m==null&&(m=0,h.replaceState({...h.state,idx:m},""));function b(){return(h.state||{idx:null}).idx}function g(){y="POP";let X=b(),k=X==null?null:X-m;m=X,v&&v({action:y,location:Q.location,delta:k})}function T(X,k){y="PUSH";let $=Dm(X)?X:Iu(Q.location,X,k);m=b()+1;let P=Nm($,m),ye=Q.createHref($.unstable_mask||$);try{h.pushState(P,"",ye)}catch(he){if(he instanceof DOMException&&he.name==="DataCloneError")throw he;s.location.assign(ye)}d&&v&&v({action:y,location:Q.location,delta:1})}function _(X,k){y="REPLACE";let $=Dm(X)?X:Iu(Q.location,X,k);m=b();let P=Nm($,m),ye=Q.createHref($.unstable_mask||$);h.replaceState(P,"",ye),d&&v&&v({action:y,location:Q.location,delta:0})}function Y(X){return gy(X)}let Q={get action(){return y},get location(){return n(s,h)},listen(X){if(v)throw new Error("A history only accepts one active listener");return s.addEventListener(Cm,g),v=X,()=>{s.removeEventListener(Cm,g),v=null}},createHref(X){return r(s,X)},createURL:Y,encodeLocation(X){let k=Y(X);return{pathname:k.pathname,search:k.search,hash:k.hash}},push:T,replace:_,go(X){return h.go(X)}};return Q}function gy(n,r=!1){let o="http://localhost";typeof window<"u"&&(o=window.location.origin!=="null"?window.location.origin:window.location.href),_e(o,"No window.location.(origin|href) available to create URL");let c=typeof n=="string"?n:Oa(n);return c=c.replace(/ $/,"%20"),!r&&c.startsWith("//")&&(c=o+c),new URL(c,o)}var $u,wm=class{constructor(n){if(gp(this,$u,new Map),n)for(let[r,o]of n)this.set(r,o)}get(n){if(lf(this,$u).has(n))return lf(this,$u).get(n);if(n.defaultValue!==void 0)return n.defaultValue;throw new Error("No value found for context")}set(n,r){lf(this,$u).set(n,r)}};$u=new WeakMap;var Tp=new Set(["lazy","caseSensitive","path","id","index","children"]);function xp(n){return Tp.has(n)}var Rp=new Set(["lazy","caseSensitive","path","id","index","middleware","children"]);function Ap(n){return Rp.has(n)}function Mp(n){return n.index===!0}function ei(n,r,o=[],c={},s=!1){return n.map((d,h)=>{let y=[...o,String(h)],v=typeof d.id=="string"?d.id:y.join("-");if(_e(d.index!==!0||!d.children,"Cannot specify children on an index route"),_e(s||!c[v],`Found a route id collision on id "${v}". Route id's must be globally unique within Data Router usages`),Mp(d)){let m={...d,id:v};return c[v]=jm(m,r(m)),m}else{let m={...d,id:v,children:void 0};return c[v]=jm(m,r(m)),d.children&&(m.children=ei(d.children,r,y,c,s)),m}})}function jm(n,r){return Object.assign(n,{...r,...typeof r.lazy=="object"&&r.lazy!=null?{lazy:{...n.lazy,...r.lazy}}:{}})}function zl(n,r,o="/"){return Wu(n,r,o,!1)}function Wu(n,r,o,c){let s=typeof r=="string"?Ia(r):r,d=oa(s.pathname||"/",o);if(d==null)return null;let h=by(n);_p(h);let y=null;for(let v=0;y==null&&v{let b={relativePath:m===void 0?h.path||"":m,caseSensitive:h.caseSensitive===!0,childrenIndex:y,route:h};if(b.relativePath.startsWith("/")){if(!b.relativePath.startsWith(c)&&v)return;_e(b.relativePath.startsWith(c),`Absolute route path "${b.relativePath}" nested under path "${c}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),b.relativePath=b.relativePath.slice(c.length)}let g=ga([c,b.relativePath]),T=o.concat(b);h.children&&h.children.length>0&&(_e(h.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${g}".`),by(h.children,r,T,g,v)),!(h.path==null&&!h.index)&&r.push({path:g,score:Up(g,h.index),routesMeta:T})};return n.forEach((h,y)=>{if(h.path===""||!h.path?.includes("?"))d(h,y);else for(let v of Sy(h.path))d(h,y,!0,v)}),r}function Sy(n){let r=n.split("/");if(r.length===0)return[];let[o,...c]=r,s=o.endsWith("?"),d=o.replace(/\?$/,"");if(c.length===0)return s?[d,""]:[d];let h=Sy(c.join("/")),y=[];return y.push(...h.map(v=>v===""?d:[d,v].join("/"))),s&&y.push(...h),y.map(v=>n.startsWith("/")&&v===""?"/":v)}function _p(n){n.sort((r,o)=>r.score!==o.score?o.score-r.score:Lp(r.routesMeta.map(c=>c.childrenIndex),o.routesMeta.map(c=>c.childrenIndex)))}var zp=/^:[\w-]+$/,Cp=3,Dp=2,Np=1,wp=10,jp=-2,Um=n=>n==="*";function Up(n,r){let o=n.split("/"),c=o.length;return o.some(Um)&&(c+=jp),r&&(c+=Dp),o.filter(s=>!Um(s)).reduce((s,d)=>s+(zp.test(d)?Cp:d===""?Np:wp),c)}function Lp(n,r){return n.length===r.length&&n.slice(0,-1).every((c,s)=>c===r[s])?n[n.length-1]-r[r.length-1]:0}function Hp(n,r,o=!1){let{routesMeta:c}=n,s={},d="/",h=[];for(let y=0;y{if(b==="*"){let Y=y[T]||"";h=d.slice(0,d.length-Y.length).replace(/(.)\/+$/,"$1")}const _=y[T];return g&&!_?m[b]=void 0:m[b]=(_||"").replace(/%2F/g,"/"),m},{}),pathname:d,pathnameBase:h,pattern:n}}function Bp(n,r=!1,o=!0){pt(n==="*"||!n.endsWith("*")||n.endsWith("/*"),`Route path "${n}" will be treated as if it were "${n.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${n.replace(/\*$/,"/*")}".`);let c=[],s="^"+n.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(h,y,v,m,b)=>{if(c.push({paramName:y,isOptional:v!=null}),v){let g=b.charAt(m+h.length);return g&&g!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return n.endsWith("*")?(c.push({paramName:"*"}),s+=n==="*"||n==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):o?s+="\\/*$":n!==""&&n!=="/"&&(s+="(?:(?=\\/|$))"),[new RegExp(s,r?void 0:"i"),c]}function qp(n){try{return n.split("/").map(r=>decodeURIComponent(r).replace(/\//g,"%2F")).join("/")}catch(r){return pt(!1,`The URL path "${n}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${r}).`),n}}function oa(n,r){if(r==="/")return n;if(!n.toLowerCase().startsWith(r.toLowerCase()))return null;let o=r.endsWith("/")?r.length-1:r.length,c=n.charAt(o);return c&&c!=="/"?null:n.slice(o)||"/"}function Yp({basename:n,pathname:r}){return r==="/"?n:ga([n,r])}var Ey=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Af=n=>Ey.test(n);function Gp(n,r="/"){let{pathname:o,search:c="",hash:s=""}=typeof n=="string"?Ia(n):n,d;return o?(o=o.replace(/\/\/+/g,"/"),o.startsWith("/")?d=Lm(o.substring(1),"/"):d=Lm(o,r)):d=r,{pathname:d,search:Qp(c),hash:Vp(s)}}function Lm(n,r){let o=r.replace(/\/+$/,"").split("/");return n.split("/").forEach(s=>{s===".."?o.length>1&&o.pop():s!=="."&&o.push(s)}),o.length>1?o.join("/"):"/"}function nf(n,r,o,c){return`Cannot include a '${n}' character in a manually specified \`to.${r}\` field [${JSON.stringify(c)}]. Please separate it out to the \`to.${o}\` field. Alternatively you may provide the full path as a string in and the router will parse it for you.`}function Ty(n){return n.filter((r,o)=>o===0||r.route.path&&r.route.path.length>0)}function Mf(n){let r=Ty(n);return r.map((o,c)=>c===r.length-1?o.pathname:o.pathnameBase)}function Lr(n,r,o,c=!1){let s;typeof n=="string"?s=Ia(n):(s={...n},_e(!s.pathname||!s.pathname.includes("?"),nf("?","pathname","search",s)),_e(!s.pathname||!s.pathname.includes("#"),nf("#","pathname","hash",s)),_e(!s.search||!s.search.includes("#"),nf("#","search","hash",s)));let d=n===""||s.pathname==="",h=d?"/":s.pathname,y;if(h==null)y=o;else{let g=r.length-1;if(!c&&h.startsWith("..")){let T=h.split("/");for(;T[0]==="..";)T.shift(),g-=1;s.pathname=T.join("/")}y=g>=0?r[g]:"/"}let v=Gp(s,y),m=h&&h!=="/"&&h.endsWith("/"),b=(d||h===".")&&o.endsWith("/");return!v.pathname.endsWith("/")&&(m||b)&&(v.pathname+="/"),v}var ga=n=>n.join("/").replace(/\/\/+/g,"/"),Xp=n=>n.replace(/\/+$/,"").replace(/^\/*/,"/"),Qp=n=>!n||n==="?"?"":n.startsWith("?")?n:"?"+n,Vp=n=>!n||n==="#"?"":n.startsWith("#")?n:"#"+n,ni=class{constructor(n,r,o,c=!1){this.status=n,this.statusText=r||"",this.internal=c,o instanceof Error?(this.data=o.toString(),this.error=o):this.data=o}};function ti(n){return n!=null&&typeof n.status=="number"&&typeof n.statusText=="string"&&typeof n.internal=="boolean"&&"data"in n}function ui(n){return n.map(r=>r.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var xy=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Ry(n,r){let o=n;if(typeof o!="string"||!Ey.test(o))return{absoluteURL:void 0,isExternal:!1,to:o};let c=o,s=!1;if(xy)try{let d=new URL(window.location.href),h=o.startsWith("//")?new URL(d.protocol+o):new URL(o),y=oa(h.pathname,r);h.origin===d.origin&&y!=null?o=y+h.search+h.hash:s=!0}catch{pt(!1,` contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:c,isExternal:s,to:o}}var Dl=Symbol("Uninstrumented");function Zp(n,r){let o={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};n.forEach(s=>s({id:r.id,index:r.index,path:r.path,instrument(d){let h=Object.keys(o);for(let y of h)d[y]&&o[y].push(d[y])}}));let c={};if(typeof r.lazy=="function"&&o.lazy.length>0){let s=Kn(o.lazy,r.lazy,()=>{});s&&(c.lazy=s)}if(typeof r.lazy=="object"){let s=r.lazy;["middleware","loader","action"].forEach(d=>{let h=s[d],y=o[`lazy.${d}`];if(typeof h=="function"&&y.length>0){let v=Kn(y,h,()=>{});v&&(c.lazy=Object.assign(c.lazy||{},{[d]:v}))}})}return["loader","action"].forEach(s=>{let d=r[s];if(typeof d=="function"&&o[s].length>0){let h=d[Dl]??d,y=Kn(o[s],h,(...v)=>Hm(v[0]));y&&(s==="loader"&&h.hydrate===!0&&(y.hydrate=!0),y[Dl]=h,c[s]=y)}}),r.middleware&&r.middleware.length>0&&o.middleware.length>0&&(c.middleware=r.middleware.map(s=>{let d=s[Dl]??s,h=Kn(o.middleware,d,(...y)=>Hm(y[0]));return h?(h[Dl]=d,h):s})),c}function Kp(n,r){let o={navigate:[],fetch:[]};if(r.forEach(c=>c({instrument(s){let d=Object.keys(s);for(let h of d)s[h]&&o[h].push(s[h])}})),o.navigate.length>0){let c=n.navigate[Dl]??n.navigate,s=Kn(o.navigate,c,(...d)=>{let[h,y]=d;return{to:typeof h=="number"||typeof h=="string"?h:h?Oa(h):".",...Bm(n,y??{})}});s&&(s[Dl]=c,n.navigate=s)}if(o.fetch.length>0){let c=n.fetch[Dl]??n.fetch,s=Kn(o.fetch,c,(...d)=>{let[h,,y,v]=d;return{href:y??".",fetcherKey:h,...Bm(n,v??{})}});s&&(s[Dl]=c,n.fetch=s)}return n}function Kn(n,r,o){return n.length===0?null:async(...c)=>{let s=await Ay(n,o(...c),()=>r(...c),n.length-1);if(s.type==="error")throw s.value;return s.value}}async function Ay(n,r,o,c){let s=n[c],d;if(s){let h,y=async()=>(h?console.error("You cannot call instrumented handlers more than once"):h=Ay(n,r,o,c-1),d=await h,_e(d,"Expected a result"),d.type==="error"&&d.value instanceof Error?{status:"error",error:d.value}:{status:"success",error:void 0});try{await s(y,r)}catch(v){console.error("An instrumentation function threw an error:",v)}h||await y(),await h}else try{d={type:"success",value:await o()}}catch(h){d={type:"error",value:h}}return d||{type:"error",value:new Error("No result assigned in instrumentation chain.")}}function Hm(n){let{request:r,context:o,params:c,unstable_pattern:s}=n;return{request:Jp(r),params:{...c},unstable_pattern:s,context:kp(o)}}function Bm(n,r){return{currentUrl:Oa(n.state.location),..."formMethod"in r?{formMethod:r.formMethod}:{},..."formEncType"in r?{formEncType:r.formEncType}:{},..."formData"in r?{formData:r.formData}:{},..."body"in r?{body:r.body}:{}}}function Jp(n){return{method:n.method,url:n.url,headers:{get:(...r)=>n.headers.get(...r)}}}function kp(n){if($p(n)){let r={...n};return Object.freeze(r),r}else return{get:r=>n.get(r)}}var Fp=Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function $p(n){if(n===null||typeof n!="object")return!1;const r=Object.getPrototypeOf(n);return r===Object.prototype||r===null||Object.getOwnPropertyNames(r).sort().join("\0")===Fp}var My=["POST","PUT","PATCH","DELETE"],Wp=new Set(My),Pp=["GET",...My],Ip=new Set(Pp),Oy=new Set([301,302,303,307,308]),eg=new Set([307,308]),uf={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},tg={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},Zu={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},ag=n=>({hasErrorBoundary:!!n.hasErrorBoundary}),_y="remix-router-transitions",zy=Symbol("ResetLoaderData");function lg(n){const r=n.window?n.window:typeof window<"u"?window:void 0,o=typeof r<"u"&&typeof r.document<"u"&&typeof r.document.createElement<"u";_e(n.routes.length>0,"You must provide a non-empty routes array to createRouter");let c=n.hydrationRouteProperties||[],s=n.mapRouteProperties||ag,d=s;if(n.unstable_instrumentations){let E=n.unstable_instrumentations;d=A=>({...s(A),...Zp(E.map(j=>j.route).filter(Boolean),A)})}let h={},y=ei(n.routes,d,void 0,h),v,m=n.basename||"/";m.startsWith("/")||(m=`/${m}`);let b=n.dataStrategy||cg,g={...n.future},T=null,_=new Set,Y=null,Q=null,X=null,k=n.hydrationData!=null,$=zl(y,n.history.location,m),P=!1,ye=null,he,Ee;if($==null&&!n.patchRoutesOnNavigation){let E=ca(404,{pathname:n.history.location.pathname}),{matches:A,route:j}=Or(y);he=!0,Ee=!he,$=A,ye={[j.id]:E}}else if($&&!n.hydrationData&&ll($,y,n.history.location.pathname).active&&($=null),$)if($.some(E=>E.route.lazy))he=!1,Ee=!he;else if(!$.some(E=>Of(E.route)))he=!0,Ee=!he;else{let E=n.hydrationData?n.hydrationData.loaderData:null,A=n.hydrationData?n.hydrationData.errors:null,j=$;if(A){let V=$.findIndex(K=>A[K.route.id]!==void 0);j=j.slice(0,V+1)}Ee=!1,he=j.every(V=>{let K=Cy(V.route,E,A);return Ee=Ee||K.renderFallback,!K.shouldLoad})}else{he=!1,Ee=!he,$=[];let E=ll(null,y,n.history.location.pathname);E.active&&E.matches&&(P=!0,$=E.matches)}let ie,z={historyAction:n.history.action,location:n.history.location,matches:$,initialized:he,renderFallback:Ee,navigation:uf,restoreScrollPosition:n.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:n.hydrationData&&n.hydrationData.loaderData||{},actionData:n.hydrationData&&n.hydrationData.actionData||null,errors:n.hydrationData&&n.hydrationData.errors||ye,fetchers:new Map,blockers:new Map},Re="POP",we=null,Ke=!1,pe,nt=!1,je=new Map,ve=null,U=!1,Z=!1,le=new Set,ne=new Map,Te=0,x=-1,B=new Map,J=new Set,W=new Map,se=new Map,me=new Set,Ae=new Map,st,Je=null;function Nl(){if(T=n.history.listen(({action:E,location:A,delta:j})=>{if(st){st(),st=void 0;return}pt(Ae.size===0||j!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let V=jl({currentLocation:z.location,nextLocation:A,historyAction:E});if(V&&j!=null){let K=new Promise(te=>{st=te});n.history.go(j*-1),wa(V,{state:"blocked",location:A,proceed(){wa(V,{state:"proceeding",proceed:void 0,reset:void 0,location:A}),K.then(()=>n.history.go(j))},reset(){let te=new Map(z.blockers);te.set(V,Zu),gt({blockers:te})}}),we?.resolve(),we=null;return}return Ca(E,A)}),o){Mg(r,je);let E=()=>Og(r,je);r.addEventListener("pagehide",E),ve=()=>r.removeEventListener("pagehide",E)}return z.initialized||Ca("POP",z.location,{initialHydration:!0}),ie}function ln(){T&&T(),ve&&ve(),_.clear(),pe&&pe.abort(),z.fetchers.forEach((E,A)=>Na(A)),z.blockers.forEach((E,A)=>wl(A))}function $n(E){return _.add(E),()=>_.delete(E)}function gt(E,A={}){E.matches&&(E.matches=E.matches.map(K=>{let te=h[K.route.id],F=K.route;return F.element!==te.element||F.errorElement!==te.errorElement||F.hydrateFallbackElement!==te.hydrateFallbackElement?{...K,route:te}:K})),z={...z,...E};let j=[],V=[];z.fetchers.forEach((K,te)=>{K.state==="idle"&&(me.has(te)?j.push(te):V.push(te))}),me.forEach(K=>{!z.fetchers.has(K)&&!ne.has(K)&&j.push(K)}),[..._].forEach(K=>K(z,{deletedFetchers:j,newErrors:E.errors??null,viewTransitionOpts:A.viewTransitionOpts,flushSync:A.flushSync===!0})),j.forEach(K=>Na(K)),V.forEach(K=>z.fetchers.delete(K))}function Lt(E,A,{flushSync:j}={}){let V=z.actionData!=null&&z.navigation.formMethod!=null&&Nt(z.navigation.formMethod)&&z.navigation.state==="loading"&&E.state?._isRedirect!==!0,K;A.actionData?Object.keys(A.actionData).length>0?K=A.actionData:K=null:V?K=z.actionData:K=null;let te=A.loaderData?km(z.loaderData,A.loaderData,A.matches||[],A.errors):z.loaderData,F=z.blockers;F.size>0&&(F=new Map(F),F.forEach((fe,re)=>F.set(re,Zu)));let I=U?!1:tu(E,A.matches||z.matches),ee=Ke===!0||z.navigation.formMethod!=null&&Nt(z.navigation.formMethod)&&E.state?._isRedirect!==!0;v&&(y=v,v=void 0),U||Re==="POP"||(Re==="PUSH"?n.history.push(E,E.state):Re==="REPLACE"&&n.history.replace(E,E.state));let ce;if(Re==="POP"){let fe=je.get(z.location.pathname);fe&&fe.has(E.pathname)?ce={currentLocation:z.location,nextLocation:E}:je.has(E.pathname)&&(ce={currentLocation:E,nextLocation:z.location})}else if(nt){let fe=je.get(z.location.pathname);fe?fe.add(E.pathname):(fe=new Set([E.pathname]),je.set(z.location.pathname,fe)),ce={currentLocation:z.location,nextLocation:E}}gt({...A,actionData:K,loaderData:te,historyAction:Re,location:E,initialized:!0,renderFallback:!1,navigation:uf,revalidation:"idle",restoreScrollPosition:I,preventScrollReset:ee,blockers:F},{viewTransitionOpts:ce,flushSync:j===!0}),Re="POP",Ke=!1,nt=!1,U=!1,Z=!1,we?.resolve(),we=null,Je?.resolve(),Je=null}async function nn(E,A){if(we?.resolve(),we=null,typeof E=="number"){we||(we=Pm());let ke=we.promise;return n.history.go(E),ke}let j=pf(z.location,z.matches,m,E,A?.fromRouteId,A?.relative),{path:V,submission:K,error:te}=qm(!1,j,A),F;A?.unstable_mask&&(F={pathname:"",search:"",hash:"",...typeof A.unstable_mask=="string"?Ia(A.unstable_mask):{...z.location.unstable_mask,...A.unstable_mask}});let I=z.location,ee=Iu(I,V,A&&A.state,void 0,F);ee={...ee,...n.history.encodeLocation(ee)};let ce=A&&A.replace!=null?A.replace:void 0,fe="PUSH";ce===!0?fe="REPLACE":ce===!1||K!=null&&Nt(K.formMethod)&&K.formAction===z.location.pathname+z.location.search&&(fe="REPLACE");let re=A&&"preventScrollReset"in A?A.preventScrollReset===!0:void 0,He=(A&&A.flushSync)===!0,Me=jl({currentLocation:I,nextLocation:ee,historyAction:fe});if(Me){wa(Me,{state:"blocked",location:ee,proceed(){wa(Me,{state:"proceeding",proceed:void 0,reset:void 0,location:ee}),nn(E,A)},reset(){let ke=new Map(z.blockers);ke.set(Me,Zu),gt({blockers:ke})}});return}await Ca(fe,ee,{submission:K,pendingError:te,preventScrollReset:re,replace:A&&A.replace,enableViewTransition:A&&A.viewTransition,flushSync:He,callSiteDefaultShouldRevalidate:A&&A.unstable_defaultShouldRevalidate})}function Wn(){Je||(Je=Pm()),tl(),gt({revalidation:"loading"});let E=Je.promise;return z.navigation.state==="submitting"?E:z.navigation.state==="idle"?(Ca(z.historyAction,z.location,{startUninterruptedRevalidation:!0}),E):(Ca(Re||z.historyAction,z.navigation.location,{overrideNavigation:z.navigation,enableViewTransition:nt===!0}),E)}async function Ca(E,A,j){pe&&pe.abort(),pe=null,Re=E,U=(j&&j.startUninterruptedRevalidation)===!0,Qr(z.location,z.matches),Ke=(j&&j.preventScrollReset)===!0,nt=(j&&j.enableViewTransition)===!0;let V=v||y,K=j&&j.overrideNavigation,te=j?.initialHydration&&z.matches&&z.matches.length>0&&!P?z.matches:zl(V,A,m),F=(j&&j.flushSync)===!0;if(te&&z.initialized&&!Z&&vg(z.location,A)&&!(j&&j.submission&&Nt(j.submission.formMethod))){Lt(A,{matches:te},{flushSync:F});return}let I=ll(te,V,A.pathname);if(I.active&&I.matches&&(te=I.matches),!te){let{error:We,notFoundMatches:ut,route:Le}=da(A.pathname);Lt(A,{matches:ut,loaderData:{},errors:{[Le.id]:We}},{flushSync:F});return}pe=new AbortController;let ee=Zn(n.history,A,pe.signal,j&&j.submission),ce=n.getContext?await n.getContext():new wm,fe;if(j&&j.pendingError)fe=[Cl(te).route.id,{type:"error",error:j.pendingError}];else if(j&&j.submission&&Nt(j.submission.formMethod)){let We=await oi(ee,A,j.submission,te,ce,I.active,j&&j.initialHydration===!0,{replace:j.replace,flushSync:F});if(We.shortCircuited)return;if(We.pendingActionResult){let[ut,Le]=We.pendingActionResult;if(Wt(Le)&&ti(Le.error)&&Le.error.status===404){pe=null,Lt(A,{matches:We.matches,loaderData:{},errors:{[ut]:Le.error}});return}}te=We.matches||te,fe=We.pendingActionResult,K=rf(A,j.submission),F=!1,I.active=!1,ee=Zn(n.history,ee.url,ee.signal)}let{shortCircuited:re,matches:He,loaderData:Me,errors:ke}=await Pn(ee,A,te,ce,I.active,K,j&&j.submission,j&&j.fetcherSubmission,j&&j.replace,j&&j.initialHydration===!0,F,fe,j&&j.callSiteDefaultShouldRevalidate);re||(pe=null,Lt(A,{matches:He||te,...Fm(fe),loaderData:Me,errors:ke}))}async function oi(E,A,j,V,K,te,F,I={}){tl();let ee=Rg(A,j);if(gt({navigation:ee},{flushSync:I.flushSync===!0}),te){let re=await Sa(V,A.pathname,E.signal);if(re.type==="aborted")return{shortCircuited:!0};if(re.type==="error"){if(re.partialMatches.length===0){let{matches:Me,route:ke}=Or(y);return{matches:Me,pendingActionResult:[ke.id,{type:"error",error:re.error}]}}let He=Cl(re.partialMatches).route.id;return{matches:re.partialMatches,pendingActionResult:[He,{type:"error",error:re.error}]}}else if(re.matches)V=re.matches;else{let{notFoundMatches:He,error:Me,route:ke}=da(A.pathname);return{matches:He,pendingActionResult:[ke.id,{type:"error",error:Me}]}}}let ce,fe=Cr(V,A);if(!fe.route.action&&!fe.route.lazy)ce={type:"error",error:ca(405,{method:E.method,pathname:A.pathname,routeId:fe.route.id})};else{let re=kn(d,h,E,V,fe,F?[]:c,K),He=await el(E,re,K,null);if(ce=He[fe.route.id],!ce){for(let Me of V)if(He[Me.route.id]){ce=He[Me.route.id];break}}if(E.signal.aborted)return{shortCircuited:!0}}if(Il(ce)){let re;return I&&I.replace!=null?re=I.replace:re=Zm(ce.response.headers.get("Location"),new URL(E.url),m,n.history)===z.location.pathname+z.location.search,await Da(E,ce,!0,{submission:j,replace:re}),{shortCircuited:!0}}if(Wt(ce)){let re=Cl(V,fe.route.id);return(I&&I.replace)!==!0&&(Re="PUSH"),{matches:V,pendingActionResult:[re.route.id,ce,fe.route.id]}}return{matches:V,pendingActionResult:[fe.route.id,ce]}}async function Pn(E,A,j,V,K,te,F,I,ee,ce,fe,re,He){let Me=te||rf(A,F),ke=F||I||Wm(Me),We=!U&&!ce;if(K){if(We){let ct=un(re);gt({navigation:Me,...ct!==void 0?{actionData:ct}:{}},{flushSync:fe})}let Oe=await Sa(j,A.pathname,E.signal);if(Oe.type==="aborted")return{shortCircuited:!0};if(Oe.type==="error"){if(Oe.partialMatches.length===0){let{matches:zt,route:dt}=Or(y);return{matches:zt,loaderData:{},errors:{[dt.id]:Oe.error}}}let ct=Cl(Oe.partialMatches).route.id;return{matches:Oe.partialMatches,loaderData:{},errors:{[ct]:Oe.error}}}else if(Oe.matches)j=Oe.matches;else{let{error:ct,notFoundMatches:zt,route:dt}=da(A.pathname);return{matches:zt,loaderData:{},errors:{[dt.id]:ct}}}}let ut=v||y,{dsMatches:Le,revalidatingFetchers:bt}=Ym(E,V,d,h,n.history,z,j,ke,A,ce?[]:c,ce===!0,Z,le,me,W,J,ut,m,n.patchRoutesOnNavigation!=null,re,He);if(x=++Te,!n.dataStrategy&&!Le.some(Oe=>Oe.shouldLoad)&&!Le.some(Oe=>Oe.route.middleware&&Oe.route.middleware.length>0)&&bt.length===0){let Oe=si();return Lt(A,{matches:j,loaderData:{},errors:re&&Wt(re[1])?{[re[0]]:re[1].error}:null,...Fm(re),...Oe?{fetchers:new Map(z.fetchers)}:{}},{flushSync:fe}),{shortCircuited:!0}}if(We){let Oe={};if(!K){Oe.navigation=Me;let ct=un(re);ct!==void 0&&(Oe.actionData=ct)}bt.length>0&&(Oe.fetchers=In(bt)),gt(Oe,{flushSync:fe})}bt.forEach(Oe=>{Et(Oe.key),Oe.controller&&ne.set(Oe.key,Oe.controller)});let $e=()=>bt.forEach(Oe=>Et(Oe.key));pe&&pe.signal.addEventListener("abort",$e);let{loaderResults:nl,fetcherResults:ha}=await eu(Le,bt,E,V);if(E.signal.aborted)return{shortCircuited:!0};pe&&pe.signal.removeEventListener("abort",$e),bt.forEach(Oe=>ne.delete(Oe.key));let Tt=_r(nl);if(Tt)return await Da(E,Tt.result,!0,{replace:ee}),{shortCircuited:!0};if(Tt=_r(ha),Tt)return J.add(Tt.key),await Da(E,Tt.result,!0,{replace:ee}),{shortCircuited:!0};let{loaderData:Ea,errors:Ul}=Jm(z,j,nl,re,bt,ha);ce&&z.errors&&(Ul={...z.errors,...Ul});let Ta=si(),Ll=di(x),cn=Ta||Ll||bt.length>0;return{matches:j,loaderData:Ea,errors:Ul,...cn?{fetchers:new Map(z.fetchers)}:{}}}function un(E){if(E&&!Wt(E[1]))return{[E[0]]:E[1].data};if(z.actionData)return Object.keys(z.actionData).length===0?null:z.actionData}function In(E){return E.forEach(A=>{let j=z.fetchers.get(A.key),V=Ku(void 0,j?j.data:void 0);z.fetchers.set(A.key,V)}),new Map(z.fetchers)}async function qr(E,A,j,V){Et(E);let K=(V&&V.flushSync)===!0,te=v||y,F=pf(z.location,z.matches,m,j,A,V?.relative),I=zl(te,F,m),ee=ll(I,te,F);if(ee.active&&ee.matches&&(I=ee.matches),!I){Pt(E,A,ca(404,{pathname:F}),{flushSync:K});return}let{path:ce,submission:fe,error:re}=qm(!0,F,V);if(re){Pt(E,A,re,{flushSync:K});return}let He=n.getContext?await n.getContext():new wm,Me=(V&&V.preventScrollReset)===!0;if(fe&&Nt(fe.formMethod)){await Yr(E,A,ce,I,He,ee.active,K,Me,fe,V&&V.unstable_defaultShouldRevalidate);return}W.set(E,{routeId:A,path:ce}),await wt(E,A,ce,I,He,ee.active,K,Me,fe)}async function Yr(E,A,j,V,K,te,F,I,ee,ce){tl(),W.delete(E);let fe=z.fetchers.get(E);sa(E,Ag(ee,fe),{flushSync:F});let re=new AbortController,He=Zn(n.history,j,re.signal,ee);if(te){let Pe=await Sa(V,new URL(He.url).pathname,He.signal,E);if(Pe.type==="aborted")return;if(Pe.type==="error"){Pt(E,A,Pe.error,{flushSync:F});return}else if(Pe.matches)V=Pe.matches;else{Pt(E,A,ca(404,{pathname:j}),{flushSync:F});return}}let Me=Cr(V,j);if(!Me.route.action&&!Me.route.lazy){let Pe=ca(405,{method:ee.formMethod,pathname:j,routeId:A});Pt(E,A,Pe,{flushSync:F});return}ne.set(E,re);let ke=Te,We=kn(d,h,He,V,Me,c,K),ut=await el(He,We,K,E),Le=ut[Me.route.id];if(!Le){for(let Pe of We)if(ut[Pe.route.id]){Le=ut[Pe.route.id];break}}if(He.signal.aborted){ne.get(E)===re&&ne.delete(E);return}if(me.has(E)){if(Il(Le)||Wt(Le)){sa(E,Pa(void 0));return}}else{if(Il(Le))if(ne.delete(E),x>ke){sa(E,Pa(void 0));return}else return J.add(E),sa(E,Ku(ee)),Da(He,Le,!1,{fetcherSubmission:ee,preventScrollReset:I});if(Wt(Le)){Pt(E,A,Le.error);return}}let bt=z.navigation.location||z.location,$e=Zn(n.history,bt,re.signal),nl=v||y,ha=z.navigation.state!=="idle"?zl(nl,z.navigation.location,m):z.matches;_e(ha,"Didn't find any matches after fetcher action");let Tt=++Te;B.set(E,Tt);let Ea=Ku(ee,Le.data);z.fetchers.set(E,Ea);let{dsMatches:Ul,revalidatingFetchers:Ta}=Ym($e,K,d,h,n.history,z,ha,ee,bt,c,!1,Z,le,me,W,J,nl,m,n.patchRoutesOnNavigation!=null,[Me.route.id,Le],ce);Ta.filter(Pe=>Pe.key!==E).forEach(Pe=>{let on=Pe.key,fn=z.fetchers.get(on),vi=Ku(void 0,fn?fn.data:void 0);z.fetchers.set(on,vi),Et(on),Pe.controller&&ne.set(on,Pe.controller)}),gt({fetchers:new Map(z.fetchers)});let Ll=()=>Ta.forEach(Pe=>Et(Pe.key));re.signal.addEventListener("abort",Ll);let{loaderResults:cn,fetcherResults:Oe}=await eu(Ul,Ta,$e,K);if(re.signal.aborted)return;if(re.signal.removeEventListener("abort",Ll),B.delete(E),ne.delete(E),Ta.forEach(Pe=>ne.delete(Pe.key)),z.fetchers.has(E)){let Pe=Pa(Le.data);z.fetchers.set(E,Pe)}let ct=_r(cn);if(ct)return Da($e,ct.result,!1,{preventScrollReset:I});if(ct=_r(Oe),ct)return J.add(ct.key),Da($e,ct.result,!1,{preventScrollReset:I});let{loaderData:zt,errors:dt}=Jm(z,ha,cn,void 0,Ta,Oe);di(Tt),z.navigation.state==="loading"&&Tt>x?(_e(Re,"Expected pending action"),pe&&pe.abort(),Lt(z.navigation.location,{matches:ha,loaderData:zt,errors:dt,fetchers:new Map(z.fetchers)})):(gt({errors:dt,loaderData:km(z.loaderData,zt,ha,dt),fetchers:new Map(z.fetchers)}),Z=!1)}async function wt(E,A,j,V,K,te,F,I,ee){let ce=z.fetchers.get(E);sa(E,Ku(ee,ce?ce.data:void 0),{flushSync:F});let fe=new AbortController,re=Zn(n.history,j,fe.signal);if(te){let Le=await Sa(V,new URL(re.url).pathname,re.signal,E);if(Le.type==="aborted")return;if(Le.type==="error"){Pt(E,A,Le.error,{flushSync:F});return}else if(Le.matches)V=Le.matches;else{Pt(E,A,ca(404,{pathname:j}),{flushSync:F});return}}let He=Cr(V,j);ne.set(E,fe);let Me=Te,ke=kn(d,h,re,V,He,c,K),ut=(await el(re,ke,K,E))[He.route.id];if(ne.get(E)===fe&&ne.delete(E),!re.signal.aborted){if(me.has(E)){sa(E,Pa(void 0));return}if(Il(ut))if(x>Me){sa(E,Pa(void 0));return}else{J.add(E),await Da(re,ut,!1,{preventScrollReset:I});return}if(Wt(ut)){Pt(E,A,ut.error);return}sa(E,Pa(ut.data))}}async function Da(E,A,j,{submission:V,fetcherSubmission:K,preventScrollReset:te,replace:F}={}){j||(we?.resolve(),we=null),A.response.headers.has("X-Remix-Revalidate")&&(Z=!0);let I=A.response.headers.get("Location");_e(I,"Expected a Location header on the redirect Response"),I=Zm(I,new URL(E.url),m,n.history);let ee=Iu(z.location,I,{_isRedirect:!0});if(o){let ke=!1;if(A.response.headers.has("X-Remix-Reload-Document"))ke=!0;else if(Af(I)){const We=gy(I,!0);ke=We.origin!==r.location.origin||oa(We.pathname,m)==null}if(ke){F?r.location.replace(I):r.location.assign(I);return}}pe=null;let ce=F===!0||A.response.headers.has("X-Remix-Replace")?"REPLACE":"PUSH",{formMethod:fe,formAction:re,formEncType:He}=z.navigation;!V&&!K&&fe&&re&&He&&(V=Wm(z.navigation));let Me=V||K;if(eg.has(A.response.status)&&Me&&Nt(Me.formMethod))await Ca(ce,ee,{submission:{...Me,formAction:I},preventScrollReset:te||Ke,enableViewTransition:j?nt:void 0});else{let ke=rf(ee,V);await Ca(ce,ee,{overrideNavigation:ke,fetcherSubmission:K,preventScrollReset:te||Ke,enableViewTransition:j?nt:void 0})}}async function el(E,A,j,V){let K,te={};try{K=await fg(b,E,A,V,j,!1)}catch(F){return A.filter(I=>I.shouldLoad).forEach(I=>{te[I.route.id]={type:"error",error:F}}),te}if(E.signal.aborted)return te;if(!Nt(E.method))for(let F of A){if(K[F.route.id]?.type==="error")break;!K.hasOwnProperty(F.route.id)&&!z.loaderData.hasOwnProperty(F.route.id)&&(!z.errors||!z.errors.hasOwnProperty(F.route.id))&&F.shouldCallHandler()&&(K[F.route.id]={type:"error",result:new Error(`No result returned from dataStrategy for route ${F.route.id}`)})}for(let[F,I]of Object.entries(K))if(Sg(I)){let ee=I.result;te[F]={type:"redirect",response:mg(ee,E,F,A,m)}}else te[F]=await hg(I);return te}async function eu(E,A,j,V){let K=el(j,E,V,null),te=Promise.all(A.map(async ee=>{if(ee.matches&&ee.match&&ee.request&&ee.controller){let fe=(await el(ee.request,ee.matches,V,ee.key))[ee.match.route.id];return{[ee.key]:fe}}else return Promise.resolve({[ee.key]:{type:"error",error:ca(404,{pathname:ee.path})}})})),F=await K,I=(await te).reduce((ee,ce)=>Object.assign(ee,ce),{});return{loaderResults:F,fetcherResults:I}}function tl(){Z=!0,W.forEach((E,A)=>{ne.has(A)&&le.add(A),Et(A)})}function sa(E,A,j={}){z.fetchers.set(E,A),gt({fetchers:new Map(z.fetchers)},{flushSync:(j&&j.flushSync)===!0})}function Pt(E,A,j,V={}){let K=Cl(z.matches,A);Na(E),gt({errors:{[K.route.id]:j},fetchers:new Map(z.fetchers)},{flushSync:(V&&V.flushSync)===!0})}function fi(E){return se.set(E,(se.get(E)||0)+1),me.has(E)&&me.delete(E),z.fetchers.get(E)||tg}function Gr(E,A){Et(E,A?.reason),sa(E,Pa(null))}function Na(E){let A=z.fetchers.get(E);ne.has(E)&&!(A&&A.state==="loading"&&B.has(E))&&Et(E),W.delete(E),B.delete(E),J.delete(E),me.delete(E),le.delete(E),z.fetchers.delete(E)}function jt(E){let A=(se.get(E)||0)-1;A<=0?(se.delete(E),me.add(E)):se.set(E,A),gt({fetchers:new Map(z.fetchers)})}function Et(E,A){let j=ne.get(E);j&&(j.abort(A),ne.delete(E))}function _t(E){for(let A of E){let j=fi(A),V=Pa(j.data);z.fetchers.set(A,V)}}function si(){let E=[],A=!1;for(let j of J){let V=z.fetchers.get(j);_e(V,`Expected fetcher: ${j}`),V.state==="loading"&&(J.delete(j),E.push(j),A=!0)}return _t(E),A}function di(E){let A=[];for(let[j,V]of B)if(V0}function Xr(E,A){let j=z.blockers.get(E)||Zu;return Ae.get(E)!==A&&Ae.set(E,A),j}function wl(E){z.blockers.delete(E),Ae.delete(E)}function wa(E,A){let j=z.blockers.get(E)||Zu;_e(j.state==="unblocked"&&A.state==="blocked"||j.state==="blocked"&&A.state==="blocked"||j.state==="blocked"&&A.state==="proceeding"||j.state==="blocked"&&A.state==="unblocked"||j.state==="proceeding"&&A.state==="unblocked",`Invalid blocker state transition: ${j.state} -> ${A.state}`);let V=new Map(z.blockers);V.set(E,A),gt({blockers:V})}function jl({currentLocation:E,nextLocation:A,historyAction:j}){if(Ae.size===0)return;Ae.size>1&&pt(!1,"A router only supports one blocker at a time");let V=Array.from(Ae.entries()),[K,te]=V[V.length-1],F=z.blockers.get(K);if(!(F&&F.state==="proceeding")&&te({currentLocation:E,nextLocation:A,historyAction:j}))return K}function da(E){let A=ca(404,{pathname:E}),j=v||y,{matches:V,route:K}=Or(j);return{notFoundMatches:V,route:K,error:A}}function rn(E,A,j){if(Y=E,X=A,Q=j||null,!k&&z.navigation===uf){k=!0;let V=tu(z.location,z.matches);V!=null&>({restoreScrollPosition:V})}return()=>{Y=null,X=null,Q=null}}function al(E,A){return Q&&Q(E,A.map(V=>Op(V,z.loaderData)))||E.key}function Qr(E,A){if(Y&&X){let j=al(E,A);Y[j]=X()}}function tu(E,A){if(Y){let j=al(E,A),V=Y[j];if(typeof V=="number")return V}return null}function ll(E,A,j){if(n.patchRoutesOnNavigation)if(E){if(Object.keys(E[0].params).length>0)return{active:!0,matches:Wu(A,j,m,!0)}}else return{active:!0,matches:Wu(A,j,m,!0)||[]};return{active:!1,matches:null}}async function Sa(E,A,j,V){if(!n.patchRoutesOnNavigation)return{type:"success",matches:E};let K=E;for(;;){let te=v==null,F=v||y,I=h;try{await n.patchRoutesOnNavigation({signal:j,path:A,matches:K,fetcherKey:V,patch:(fe,re)=>{j.aborted||Gm(fe,re,F,I,d,!1)}})}catch(fe){return{type:"error",error:fe,partialMatches:K}}finally{te&&!j.aborted&&(y=[...y])}if(j.aborted)return{type:"aborted"};let ee=zl(F,A,m),ce=null;if(ee){if(Object.keys(ee[0].params).length===0)return{type:"success",matches:ee};if(ce=Wu(F,A,m,!0),!(ce&&K.lengthj.route.id===A[V].route.id)}function mi(E){h={},v=ei(E,d,void 0,h)}function yi(E,A,j=!1){let V=v==null;Gm(E,A,v||y,h,d,j),V&&(y=[...y],gt({}))}return ie={get basename(){return m},get future(){return g},get state(){return z},get routes(){return y},get window(){return r},initialize:Nl,subscribe:$n,enableScrollRestoration:rn,navigate:nn,fetch:qr,revalidate:Wn,createHref:E=>n.history.createHref(E),encodeLocation:E=>n.history.encodeLocation(E),getFetcher:fi,resetFetcher:Gr,deleteFetcher:jt,dispose:ln,getBlocker:Xr,deleteBlocker:wl,patchRoutes:yi,_internalFetchControllers:ne,_internalSetRoutes:mi,_internalSetStateDoNotUseOrYouWillBreakYourApp(E){gt(E)}},n.unstable_instrumentations&&(ie=Kp(ie,n.unstable_instrumentations.map(E=>E.router).filter(Boolean))),ie}function ng(n){return n!=null&&("formData"in n&&n.formData!=null||"body"in n&&n.body!==void 0)}function pf(n,r,o,c,s,d){let h,y;if(s){h=[];for(let m of r)if(h.push(m),m.route.id===s){y=m;break}}else h=r,y=r[r.length-1];let v=Lr(c||".",Mf(h),oa(n.pathname,o)||n.pathname,d==="path");if(c==null&&(v.search=n.search,v.hash=n.hash),(c==null||c===""||c===".")&&y){let m=zf(v.search);if(y.route.index&&!m)v.search=v.search?v.search.replace(/^\?/,"?index&"):"?index";else if(!y.route.index&&m){let b=new URLSearchParams(v.search),g=b.getAll("index");b.delete("index"),g.filter(_=>_).forEach(_=>b.append("index",_));let T=b.toString();v.search=T?`?${T}`:""}}return o!=="/"&&(v.pathname=Yp({basename:o,pathname:v.pathname})),Oa(v)}function qm(n,r,o){if(!o||!ng(o))return{path:r};if(o.formMethod&&!xg(o.formMethod))return{path:r,error:ca(405,{method:o.formMethod})};let c=()=>({path:r,error:ca(400,{type:"invalid-body"})}),d=(o.formMethod||"get").toUpperCase(),h=Ly(r);if(o.body!==void 0){if(o.formEncType==="text/plain"){if(!Nt(d))return c();let g=typeof o.body=="string"?o.body:o.body instanceof FormData||o.body instanceof URLSearchParams?Array.from(o.body.entries()).reduce((T,[_,Y])=>`${T}${_}=${Y} +`,""):String(o.body);return{path:r,submission:{formMethod:d,formAction:h,formEncType:o.formEncType,formData:void 0,json:void 0,text:g}}}else if(o.formEncType==="application/json"){if(!Nt(d))return c();try{let g=typeof o.body=="string"?JSON.parse(o.body):o.body;return{path:r,submission:{formMethod:d,formAction:h,formEncType:o.formEncType,formData:void 0,json:g,text:void 0}}}catch{return c()}}}_e(typeof FormData=="function","FormData is not available in this environment");let y,v;if(o.formData)y=bf(o.formData),v=o.formData;else if(o.body instanceof FormData)y=bf(o.body),v=o.body;else if(o.body instanceof URLSearchParams)y=o.body,v=Km(y);else if(o.body==null)y=new URLSearchParams,v=new FormData;else try{y=new URLSearchParams(o.body),v=Km(y)}catch{return c()}let m={formMethod:d,formAction:h,formEncType:o&&o.formEncType||"application/x-www-form-urlencoded",formData:v,json:void 0,text:void 0};if(Nt(m.formMethod))return{path:r,submission:m};let b=Ia(r);return n&&b.search&&zf(b.search)&&y.append("index",""),b.search=`?${y}`,{path:Oa(b),submission:m}}function Ym(n,r,o,c,s,d,h,y,v,m,b,g,T,_,Y,Q,X,k,$,P,ye){let he=P?Wt(P[1])?P[1].error:P[1].data:void 0,Ee=s.createURL(d.location),ie=s.createURL(v),z;if(b&&d.errors){let ve=Object.keys(d.errors)[0];z=h.findIndex(U=>U.route.id===ve)}else if(P&&Wt(P[1])){let ve=P[0];z=h.findIndex(U=>U.route.id===ve)-1}let Re=P?P[1].statusCode:void 0,we=Re&&Re>=400,Ke={currentUrl:Ee,currentParams:d.matches[0]?.params||{},nextUrl:ie,nextParams:h[0].params,...y,actionResult:he,actionStatus:Re},pe=ui(h),nt=h.map((ve,U)=>{let{route:Z}=ve,le=null;if(z!=null&&U>z)le=!1;else if(Z.lazy)le=!0;else if(!Of(Z))le=!1;else if(b){let{shouldLoad:B}=Cy(Z,d.loaderData,d.errors);le=B}else ug(d.loaderData,d.matches[U],ve)&&(le=!0);if(le!==null)return gf(o,c,n,pe,ve,m,r,le);let ne=!1;typeof ye=="boolean"?ne=ye:we?ne=!1:(g||Ee.pathname+Ee.search===ie.pathname+ie.search||Ee.search!==ie.search||ig(d.matches[U],ve))&&(ne=!0);let Te={...Ke,defaultShouldRevalidate:ne},x=Pu(ve,Te);return gf(o,c,n,pe,ve,m,r,x,Te,ye)}),je=[];return Y.forEach((ve,U)=>{if(b||!h.some(W=>W.route.id===ve.routeId)||_.has(U))return;let Z=d.fetchers.get(U),le=Z&&Z.state!=="idle"&&Z.data===void 0,ne=zl(X,ve.path,k);if(!ne){if($&&le)return;je.push({key:U,routeId:ve.routeId,path:ve.path,matches:null,match:null,request:null,controller:null});return}if(Q.has(U))return;let Te=Cr(ne,ve.path),x=new AbortController,B=Zn(s,ve.path,x.signal),J=null;if(T.has(U))T.delete(U),J=kn(o,c,B,ne,Te,m,r);else if(le)g&&(J=kn(o,c,B,ne,Te,m,r));else{let W;typeof ye=="boolean"?W=ye:we?W=!1:W=g;let se={...Ke,defaultShouldRevalidate:W};Pu(Te,se)&&(J=kn(o,c,B,ne,Te,m,r,se))}J&&je.push({key:U,routeId:ve.routeId,path:ve.path,matches:J,match:Te,request:B,controller:x})}),{dsMatches:nt,revalidatingFetchers:je}}function Of(n){return n.loader!=null||n.middleware!=null&&n.middleware.length>0}function Cy(n,r,o){if(n.lazy)return{shouldLoad:!0,renderFallback:!0};if(!Of(n))return{shouldLoad:!1,renderFallback:!1};let c=r!=null&&n.id in r,s=o!=null&&o[n.id]!==void 0;if(!c&&s)return{shouldLoad:!1,renderFallback:!1};if(typeof n.loader=="function"&&n.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!c};let d=!c&&!s;return{shouldLoad:d,renderFallback:d}}function ug(n,r,o){let c=!r||o.route.id!==r.route.id,s=!n.hasOwnProperty(o.route.id);return c||s}function ig(n,r){let o=n.route.path;return n.pathname!==r.pathname||o!=null&&o.endsWith("*")&&n.params["*"]!==r.params["*"]}function Pu(n,r){if(n.route.shouldRevalidate){let o=n.route.shouldRevalidate(r);if(typeof o=="boolean")return o}return r.defaultShouldRevalidate}function Gm(n,r,o,c,s,d){let h;if(n){let m=c[n];_e(m,`No route found to patch children into: routeId = ${n}`),m.children||(m.children=[]),h=m.children}else h=o;let y=[],v=[];if(r.forEach(m=>{let b=h.find(g=>Dy(m,g));b?v.push({existingRoute:b,newRoute:m}):y.push(m)}),y.length>0){let m=ei(y,s,[n||"_","patch",String(h?.length||"0")],c);h.push(...m)}if(d&&v.length>0)for(let m=0;mr.children?.some(s=>Dy(o,s)))??!1:!1}var Xm=new WeakMap,Ny=({key:n,route:r,manifest:o,mapRouteProperties:c})=>{let s=o[r.id];if(_e(s,"No route found in manifest"),!s.lazy||typeof s.lazy!="object")return;let d=s.lazy[n];if(!d)return;let h=Xm.get(s);h||(h={},Xm.set(s,h));let y=h[n];if(y)return y;let v=(async()=>{let m=xp(n),g=s[n]!==void 0&&n!=="hasErrorBoundary";if(m)pt(!m,"Route property "+n+" is not a supported lazy route property. This property will be ignored."),h[n]=Promise.resolve();else if(g)pt(!1,`Route "${s.id}" has a static property "${n}" defined. The lazy property will be ignored.`);else{let T=await d();T!=null&&(Object.assign(s,{[n]:T}),Object.assign(s,c(s)))}typeof s.lazy=="object"&&(s.lazy[n]=void 0,Object.values(s.lazy).every(T=>T===void 0)&&(s.lazy=void 0))})();return h[n]=v,v},Qm=new WeakMap;function rg(n,r,o,c,s){let d=o[n.id];if(_e(d,"No route found in manifest"),!n.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof n.lazy=="function"){let b=Qm.get(d);if(b)return{lazyRoutePromise:b,lazyHandlerPromise:b};let g=(async()=>{_e(typeof n.lazy=="function","No lazy route function found");let T=await n.lazy(),_={};for(let Y in T){let Q=T[Y];if(Q===void 0)continue;let X=Ap(Y),$=d[Y]!==void 0&&Y!=="hasErrorBoundary";X?pt(!X,"Route property "+Y+" is not a supported property to be returned from a lazy route function. This property will be ignored."):$?pt(!$,`Route "${d.id}" has a static property "${Y}" defined but its lazy function is also returning a value for this property. The lazy route property "${Y}" will be ignored.`):_[Y]=Q}Object.assign(d,_),Object.assign(d,{...c(d),lazy:void 0})})();return Qm.set(d,g),g.catch(()=>{}),{lazyRoutePromise:g,lazyHandlerPromise:g}}let h=Object.keys(n.lazy),y=[],v;for(let b of h){if(s&&s.includes(b))continue;let g=Ny({key:b,route:n,manifest:o,mapRouteProperties:c});g&&(y.push(g),b===r&&(v=g))}let m=y.length>0?Promise.all(y).then(()=>{}):void 0;return m?.catch(()=>{}),v?.catch(()=>{}),{lazyRoutePromise:m,lazyHandlerPromise:v}}async function Vm(n){let r=n.matches.filter(s=>s.shouldLoad),o={};return(await Promise.all(r.map(s=>s.resolve()))).forEach((s,d)=>{o[r[d].route.id]=s}),o}async function cg(n){return n.matches.some(r=>r.route.middleware)?wy(n,()=>Vm(n)):Vm(n)}function wy(n,r){return og(n,r,c=>{if(Tg(c))throw c;return c},gg,o);function o(c,s,d){if(d)return Promise.resolve(Object.assign(d.value,{[s]:{type:"error",result:c}}));{let{matches:h}=n,y=Math.min(Math.max(h.findIndex(m=>m.route.id===s),0),Math.max(h.findIndex(m=>m.shouldCallHandler()),0)),v=Cl(h,h[y].route.id).route.id;return Promise.resolve({[v]:{type:"error",result:c}})}}}async function og(n,r,o,c,s){let{matches:d,request:h,params:y,context:v,unstable_pattern:m}=n,b=d.flatMap(T=>T.route.middleware?T.route.middleware.map(_=>[T.route.id,_]):[]);return await jy({request:h,params:y,context:v,unstable_pattern:m},b,r,o,c,s)}async function jy(n,r,o,c,s,d,h=0){let{request:y}=n;if(y.signal.aborted)throw y.signal.reason??new Error(`Request aborted: ${y.method} ${y.url}`);let v=r[h];if(!v)return await o();let[m,b]=v,g,T=async()=>{if(g)throw new Error("You may only call `next()` once per middleware");try{return g={value:await jy(n,r,o,c,s,d,h+1)},g.value}catch(_){return g={value:await d(_,m,g)},g.value}};try{let _=await b(n,T),Y=_!=null?c(_):void 0;return s(Y)?Y:g?Y??g.value:(g={value:await T()},g.value)}catch(_){return await d(_,m,g)}}function Uy(n,r,o,c,s){let d=Ny({key:"middleware",route:c.route,manifest:r,mapRouteProperties:n}),h=rg(c.route,Nt(o.method)?"action":"loader",r,n,s);return{middleware:d,route:h.lazyRoutePromise,handler:h.lazyHandlerPromise}}function gf(n,r,o,c,s,d,h,y,v=null,m){let b=!1,g=Uy(n,r,o,s,d);return{...s,_lazyPromises:g,shouldLoad:y,shouldRevalidateArgs:v,shouldCallHandler(T){return b=!0,v?typeof m=="boolean"?Pu(s,{...v,defaultShouldRevalidate:m}):typeof T=="boolean"?Pu(s,{...v,defaultShouldRevalidate:T}):Pu(s,v):y},resolve(T){let{lazy:_,loader:Y,middleware:Q}=s.route,X=b||y||T&&!Nt(o.method)&&(_||Y),k=Q&&Q.length>0&&!Y&&!_;return X&&(Nt(o.method)||!k)?sg({request:o,unstable_pattern:c,match:s,lazyHandlerPromise:g?.handler,lazyRoutePromise:g?.route,handlerOverride:T,scopedContext:h}):Promise.resolve({type:"data",result:void 0})}}}function kn(n,r,o,c,s,d,h,y=null){return c.map(v=>v.route.id!==s.route.id?{...v,shouldLoad:!1,shouldRevalidateArgs:y,shouldCallHandler:()=>!1,_lazyPromises:Uy(n,r,o,v,d),resolve:()=>Promise.resolve({type:"data",result:void 0})}:gf(n,r,o,ui(c),v,d,h,!0,y))}async function fg(n,r,o,c,s,d){o.some(m=>m._lazyPromises?.middleware)&&await Promise.all(o.map(m=>m._lazyPromises?.middleware));let h={request:r,unstable_pattern:ui(o),params:o[0].params,context:s,matches:o},v=await n({...h,fetcherKey:c,runClientMiddleware:m=>{let b=h;return wy(b,()=>m({...b,fetcherKey:c,runClientMiddleware:()=>{throw new Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))}});try{await Promise.all(o.flatMap(m=>[m._lazyPromises?.handler,m._lazyPromises?.route]))}catch{}return v}async function sg({request:n,unstable_pattern:r,match:o,lazyHandlerPromise:c,lazyRoutePromise:s,handlerOverride:d,scopedContext:h}){let y,v,m=Nt(n.method),b=m?"action":"loader",g=T=>{let _,Y=new Promise((k,$)=>_=$);v=()=>_(),n.signal.addEventListener("abort",v);let Q=k=>typeof T!="function"?Promise.reject(new Error(`You cannot call the handler for a route which defines a boolean "${b}" [routeId: ${o.route.id}]`)):T({request:n,unstable_pattern:r,params:o.params,context:h},...k!==void 0?[k]:[]),X=(async()=>{try{return{type:"data",result:await(d?d($=>Q($)):Q())}}catch(k){return{type:"error",result:k}}})();return Promise.race([X,Y])};try{let T=m?o.route.action:o.route.loader;if(c||s)if(T){let _,[Y]=await Promise.all([g(T).catch(Q=>{_=Q}),c,s]);if(_!==void 0)throw _;y=Y}else{await c;let _=m?o.route.action:o.route.loader;if(_)[y]=await Promise.all([g(_),s]);else if(b==="action"){let Y=new URL(n.url),Q=Y.pathname+Y.search;throw ca(405,{method:n.method,pathname:Q,routeId:o.route.id})}else return{type:"data",result:void 0}}else if(T)y=await g(T);else{let _=new URL(n.url),Y=_.pathname+_.search;throw ca(404,{pathname:Y})}}catch(T){return{type:"error",result:T}}finally{v&&n.signal.removeEventListener("abort",v)}return y}async function dg(n){let r=n.headers.get("Content-Type");return r&&/\bapplication\/json\b/.test(r)?n.body==null?null:n.json():n.text()}async function hg(n){let{result:r,type:o}=n;if(_f(r)){let c;try{c=await dg(r)}catch(s){return{type:"error",error:s}}return o==="error"?{type:"error",error:new ni(r.status,r.statusText,c),statusCode:r.status,headers:r.headers}:{type:"data",data:c,statusCode:r.status,headers:r.headers}}return o==="error"?$m(r)?r.data instanceof Error?{type:"error",error:r.data,statusCode:r.init?.status,headers:r.init?.headers?new Headers(r.init.headers):void 0}:{type:"error",error:pg(r),statusCode:ti(r)?r.status:void 0,headers:r.init?.headers?new Headers(r.init.headers):void 0}:{type:"error",error:r,statusCode:ti(r)?r.status:void 0}:$m(r)?{type:"data",data:r.data,statusCode:r.init?.status,headers:r.init?.headers?new Headers(r.init.headers):void 0}:{type:"data",data:r}}function mg(n,r,o,c,s){let d=n.headers.get("Location");if(_e(d,"Redirects returned/thrown from loaders/actions must have a Location header"),!Af(d)){let h=c.slice(0,c.findIndex(y=>y.route.id===o)+1);d=pf(new URL(r.url),h,s,d),n.headers.set("Location",d)}return n}function Zm(n,r,o,c){let s=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];if(Af(n)){let d=n,h=d.startsWith("//")?new URL(r.protocol+d):new URL(d);if(s.includes(h.protocol))throw new Error("Invalid redirect location");let y=oa(h.pathname,o)!=null;if(h.origin===r.origin&&y)return h.pathname+h.search+h.hash}try{let d=c.createURL(n);if(s.includes(d.protocol))throw new Error("Invalid redirect location")}catch{}return n}function Zn(n,r,o,c){let s=n.createURL(Ly(r)).toString(),d={signal:o};if(c&&Nt(c.formMethod)){let{formMethod:h,formEncType:y}=c;d.method=h.toUpperCase(),y==="application/json"?(d.headers=new Headers({"Content-Type":y}),d.body=JSON.stringify(c.json)):y==="text/plain"?d.body=c.text:y==="application/x-www-form-urlencoded"&&c.formData?d.body=bf(c.formData):d.body=c.formData}return new Request(s,d)}function bf(n){let r=new URLSearchParams;for(let[o,c]of n.entries())r.append(o,typeof c=="string"?c:c.name);return r}function Km(n){let r=new FormData;for(let[o,c]of n.entries())r.append(o,c);return r}function yg(n,r,o,c=!1,s=!1){let d={},h=null,y,v=!1,m={},b=o&&Wt(o[1])?o[1].error:void 0;return n.forEach(g=>{if(!(g.route.id in r))return;let T=g.route.id,_=r[T];if(_e(!Il(_),"Cannot handle redirect results in processLoaderData"),Wt(_)){let Y=_.error;if(b!==void 0&&(Y=b,b=void 0),h=h||{},s)h[T]=Y;else{let Q=Cl(n,T);h[Q.route.id]==null&&(h[Q.route.id]=Y)}c||(d[T]=zy),v||(v=!0,y=ti(_.error)?_.error.status:500),_.headers&&(m[T]=_.headers)}else d[T]=_.data,_.statusCode&&_.statusCode!==200&&!v&&(y=_.statusCode),_.headers&&(m[T]=_.headers)}),b!==void 0&&o&&(h={[o[0]]:b},o[2]&&(d[o[2]]=void 0)),{loaderData:d,errors:h,statusCode:y||200,loaderHeaders:m}}function Jm(n,r,o,c,s,d){let{loaderData:h,errors:y}=yg(r,o,c);return s.filter(v=>!v.matches||v.matches.some(m=>m.shouldLoad)).forEach(v=>{let{key:m,match:b,controller:g}=v;if(g&&g.signal.aborted)return;let T=d[m];if(_e(T,"Did not find corresponding fetcher result"),Wt(T)){let _=Cl(n.matches,b?.route.id);y&&y[_.route.id]||(y={...y,[_.route.id]:T.error}),n.fetchers.delete(m)}else if(Il(T))_e(!1,"Unhandled fetcher revalidation redirect");else{let _=Pa(T.data);n.fetchers.set(m,_)}}),{loaderData:h,errors:y}}function km(n,r,o,c){let s=Object.entries(r).filter(([,d])=>d!==zy).reduce((d,[h,y])=>(d[h]=y,d),{});for(let d of o){let h=d.route.id;if(!r.hasOwnProperty(h)&&n.hasOwnProperty(h)&&d.route.loader&&(s[h]=n[h]),c&&c.hasOwnProperty(h))break}return s}function Fm(n){return n?Wt(n[1])?{actionData:{}}:{actionData:{[n[0]]:n[1].data}}:{}}function Cl(n,r){return(r?n.slice(0,n.findIndex(c=>c.route.id===r)+1):[...n]).reverse().find(c=>c.route.hasErrorBoundary===!0)||n[0]}function Or(n){let r=n.length===1?n[0]:n.find(o=>o.index||!o.path||o.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:r}],route:r}}function ca(n,{pathname:r,routeId:o,method:c,type:s,message:d}={}){let h="Unknown Server Error",y="Unknown @remix-run/router error";return n===400?(h="Bad Request",c&&r&&o?y=`You made a ${c} request to "${r}" but did not provide a \`loader\` for route "${o}", so there is no way to handle the request.`:s==="invalid-body"&&(y="Unable to encode submission body")):n===403?(h="Forbidden",y=`Route "${o}" does not match URL "${r}"`):n===404?(h="Not Found",y=`No route matches URL "${r}"`):n===405&&(h="Method Not Allowed",c&&r&&o?y=`You made a ${c.toUpperCase()} request to "${r}" but did not provide an \`action\` for route "${o}", so there is no way to handle the request.`:c&&(y=`Invalid request method "${c.toUpperCase()}"`)),new ni(n||500,h,new Error(y),!0)}function _r(n){let r=Object.entries(n);for(let o=r.length-1;o>=0;o--){let[c,s]=r[o];if(Il(s))return{key:c,result:s}}}function Ly(n){let r=typeof n=="string"?Ia(n):n;return Oa({...r,hash:""})}function vg(n,r){return n.pathname!==r.pathname||n.search!==r.search?!1:n.hash===""?r.hash!=="":n.hash===r.hash?!0:r.hash!==""}function pg(n){return new ni(n.init?.status??500,n.init?.statusText??"Internal Server Error",n.data)}function gg(n){return n!=null&&typeof n=="object"&&Object.entries(n).every(([r,o])=>typeof r=="string"&&bg(o))}function bg(n){return n!=null&&typeof n=="object"&&"type"in n&&"result"in n&&(n.type==="data"||n.type==="error")}function Sg(n){return _f(n.result)&&Oy.has(n.result.status)}function Wt(n){return n.type==="error"}function Il(n){return(n&&n.type)==="redirect"}function $m(n){return typeof n=="object"&&n!=null&&"type"in n&&"data"in n&&"init"in n&&n.type==="DataWithResponseInit"}function _f(n){return n!=null&&typeof n.status=="number"&&typeof n.statusText=="string"&&typeof n.headers=="object"&&typeof n.body<"u"}function Eg(n){return Oy.has(n)}function Tg(n){return _f(n)&&Eg(n.status)&&n.headers.has("Location")}function xg(n){return Ip.has(n.toUpperCase())}function Nt(n){return Wp.has(n.toUpperCase())}function zf(n){return new URLSearchParams(n).getAll("index").some(r=>r==="")}function Cr(n,r){let o=typeof r=="string"?Ia(r).search:r.search;if(n[n.length-1].route.index&&zf(o||""))return n[n.length-1];let c=Ty(n);return c[c.length-1]}function Wm(n){let{formMethod:r,formAction:o,formEncType:c,text:s,formData:d,json:h}=n;if(!(!r||!o||!c)){if(s!=null)return{formMethod:r,formAction:o,formEncType:c,formData:void 0,json:void 0,text:s};if(d!=null)return{formMethod:r,formAction:o,formEncType:c,formData:d,json:void 0,text:void 0};if(h!==void 0)return{formMethod:r,formAction:o,formEncType:c,formData:void 0,json:h,text:void 0}}}function rf(n,r){return r?{state:"loading",location:n,formMethod:r.formMethod,formAction:r.formAction,formEncType:r.formEncType,formData:r.formData,json:r.json,text:r.text}:{state:"loading",location:n,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function Rg(n,r){return{state:"submitting",location:n,formMethod:r.formMethod,formAction:r.formAction,formEncType:r.formEncType,formData:r.formData,json:r.json,text:r.text}}function Ku(n,r){return n?{state:"loading",formMethod:n.formMethod,formAction:n.formAction,formEncType:n.formEncType,formData:n.formData,json:n.json,text:n.text,data:r}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:r}}function Ag(n,r){return{state:"submitting",formMethod:n.formMethod,formAction:n.formAction,formEncType:n.formEncType,formData:n.formData,json:n.json,text:n.text,data:r?r.data:void 0}}function Pa(n){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:n}}function Mg(n,r){try{let o=n.sessionStorage.getItem(_y);if(o){let c=JSON.parse(o);for(let[s,d]of Object.entries(c||{}))d&&Array.isArray(d)&&r.set(s,new Set(d||[]))}}catch{}}function Og(n,r){if(r.size>0){let o={};for(let[c,s]of r)o[c]=[...s];try{n.sessionStorage.setItem(_y,JSON.stringify(o))}catch(c){pt(!1,`Failed to save applied view transitions in sessionStorage (${c}).`)}}}function Pm(){let n,r,o=new Promise((c,s)=>{n=async d=>{c(d);try{await o}catch{}},r=async d=>{s(d);try{await o}catch{}}});return{promise:o,resolve:n,reject:r}}var tn=C.createContext(null);tn.displayName="DataRouter";var ii=C.createContext(null);ii.displayName="DataRouterState";var Hy=C.createContext(!1);function _g(){return C.useContext(Hy)}var Cf=C.createContext({isTransitioning:!1});Cf.displayName="ViewTransition";var By=C.createContext(new Map);By.displayName="Fetchers";var zg=C.createContext(null);zg.displayName="Await";var fa=C.createContext(null);fa.displayName="Navigation";var Hr=C.createContext(null);Hr.displayName="Location";var _a=C.createContext({outlet:null,matches:[],isDataRoute:!1});_a.displayName="Route";var Df=C.createContext(null);Df.displayName="RouteError";var qy="REACT_ROUTER_ERROR",Cg="REDIRECT",Dg="ROUTE_ERROR_RESPONSE";function Ng(n){if(n.startsWith(`${qy}:${Cg}:{`))try{let r=JSON.parse(n.slice(28));if(typeof r=="object"&&r&&typeof r.status=="number"&&typeof r.statusText=="string"&&typeof r.location=="string"&&typeof r.reloadDocument=="boolean"&&typeof r.replace=="boolean")return r}catch{}}function wg(n){if(n.startsWith(`${qy}:${Dg}:{`))try{let r=JSON.parse(n.slice(40));if(typeof r=="object"&&r&&typeof r.status=="number"&&typeof r.statusText=="string")return new ni(r.status,r.statusText,r.data)}catch{}}function jg(n,{relative:r}={}){_e(ri(),"useHref() may be used only in the context of a component.");let{basename:o,navigator:c}=C.useContext(fa),{hash:s,pathname:d,search:h}=ci(n,{relative:r}),y=d;return o!=="/"&&(y=d==="/"?o:ga([o,d])),c.createHref({pathname:y,search:h,hash:s})}function ri(){return C.useContext(Hr)!=null}function ba(){return _e(ri(),"useLocation() may be used only in the context of a component."),C.useContext(Hr).location}var Yy="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Gy(n){C.useContext(fa).static||C.useLayoutEffect(n)}function Ug(){let{isDataRoute:n}=C.useContext(_a);return n?$g():Lg()}function Lg(){_e(ri(),"useNavigate() may be used only in the context of a component.");let n=C.useContext(tn),{basename:r,navigator:o}=C.useContext(fa),{matches:c}=C.useContext(_a),{pathname:s}=ba(),d=JSON.stringify(Mf(c)),h=C.useRef(!1);return Gy(()=>{h.current=!0}),C.useCallback((v,m={})=>{if(pt(h.current,Yy),!h.current)return;if(typeof v=="number"){o.go(v);return}let b=Lr(v,JSON.parse(d),s,m.relative==="path");n==null&&r!=="/"&&(b.pathname=b.pathname==="/"?r:ga([r,b.pathname])),(m.replace?o.replace:o.push)(b,m.state,m)},[r,o,d,s,n])}var Hg=C.createContext(null);function Bg(n){let r=C.useContext(_a).outlet;return C.useMemo(()=>r&&C.createElement(Hg.Provider,{value:n},r),[r,n])}function ci(n,{relative:r}={}){let{matches:o}=C.useContext(_a),{pathname:c}=ba(),s=JSON.stringify(Mf(o));return C.useMemo(()=>Lr(n,JSON.parse(s),c,r==="path"),[n,s,c,r])}function qg(n,r,o){_e(ri(),"useRoutes() may be used only in the context of a component.");let{navigator:c}=C.useContext(fa),{matches:s}=C.useContext(_a),d=s[s.length-1],h=d?d.params:{},y=d?d.pathname:"/",v=d?d.pathnameBase:"/",m=d&&d.route;{let X=m&&m.path||"";Qy(y,!m||X.endsWith("*")||X.endsWith("*?"),`You rendered descendant (or called \`useRoutes()\`) at "${y}" (under ) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render. + +Please change the parent to .`)}let b=ba(),g;g=b;let T=g.pathname||"/",_=T;if(v!=="/"){let X=v.replace(/^\//,"").split("/");_="/"+T.replace(/^\//,"").split("/").slice(X.length).join("/")}let Y=zl(n,{pathname:_});return pt(m||Y!=null,`No routes matched location "${g.pathname}${g.search}${g.hash}" `),pt(Y==null||Y[Y.length-1].route.element!==void 0||Y[Y.length-1].route.Component!==void 0||Y[Y.length-1].route.lazy!==void 0,`Matched leaf route at location "${g.pathname}${g.search}${g.hash}" does not have an element or Component. This means it will render an with a null value by default resulting in an "empty" page.`),Vg(Y&&Y.map(X=>Object.assign({},X,{params:Object.assign({},h,X.params),pathname:ga([v,c.encodeLocation?c.encodeLocation(X.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:X.pathname]),pathnameBase:X.pathnameBase==="/"?v:ga([v,c.encodeLocation?c.encodeLocation(X.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:X.pathnameBase])})),s,o)}function Yg(){let n=Fg(),r=ti(n)?`${n.status} ${n.statusText}`:n instanceof Error?n.message:JSON.stringify(n),o=n instanceof Error?n.stack:null,c="rgba(200,200,200, 0.5)",s={padding:"0.5rem",backgroundColor:c},d={padding:"2px 4px",backgroundColor:c},h=null;return console.error("Error handled by React Router default ErrorBoundary:",n),h=C.createElement(C.Fragment,null,C.createElement("p",null,"💿 Hey developer 👋"),C.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",C.createElement("code",{style:d},"ErrorBoundary")," or"," ",C.createElement("code",{style:d},"errorElement")," prop on your route.")),C.createElement(C.Fragment,null,C.createElement("h2",null,"Unexpected Application Error!"),C.createElement("h3",{style:{fontStyle:"italic"}},r),o?C.createElement("pre",{style:s},o):null,h)}var Gg=C.createElement(Yg,null),Xy=class extends C.Component{constructor(n){super(n),this.state={location:n.location,revalidation:n.revalidation,error:n.error}}static getDerivedStateFromError(n){return{error:n}}static getDerivedStateFromProps(n,r){return r.location!==n.location||r.revalidation!=="idle"&&n.revalidation==="idle"?{error:n.error,location:n.location,revalidation:n.revalidation}:{error:n.error!==void 0?n.error:r.error,location:r.location,revalidation:n.revalidation||r.revalidation}}componentDidCatch(n,r){this.props.onError?this.props.onError(n,r):console.error("React Router caught the following error during render",n)}render(){let n=this.state.error;if(this.context&&typeof n=="object"&&n&&"digest"in n&&typeof n.digest=="string"){const o=wg(n.digest);o&&(n=o)}let r=n!==void 0?C.createElement(_a.Provider,{value:this.props.routeContext},C.createElement(Df.Provider,{value:n,children:this.props.component})):this.props.children;return this.context?C.createElement(Xg,{error:n},r):r}};Xy.contextType=Hy;var cf=new WeakMap;function Xg({children:n,error:r}){let{basename:o}=C.useContext(fa);if(typeof r=="object"&&r&&"digest"in r&&typeof r.digest=="string"){let c=Ng(r.digest);if(c){let s=cf.get(r);if(s)throw s;let d=Ry(c.location,o);if(xy&&!cf.get(r))if(d.isExternal||c.reloadDocument)window.location.href=d.absoluteURL||d.to;else{const h=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(d.to,{replace:c.replace}));throw cf.set(r,h),h}return C.createElement("meta",{httpEquiv:"refresh",content:`0;url=${d.absoluteURL||d.to}`})}}return n}function Qg({routeContext:n,match:r,children:o}){let c=C.useContext(tn);return c&&c.static&&c.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(c.staticContext._deepestRenderedBoundaryId=r.route.id),C.createElement(_a.Provider,{value:n},o)}function Vg(n,r=[],o){let c=o?.state;if(n==null){if(!c)return null;if(c.errors)n=c.matches;else if(r.length===0&&!c.initialized&&c.matches.length>0)n=c.matches;else return null}let s=n,d=c?.errors;if(d!=null){let b=s.findIndex(g=>g.route.id&&d?.[g.route.id]!==void 0);_e(b>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(d).join(",")}`),s=s.slice(0,Math.min(s.length,b+1))}let h=!1,y=-1;if(o&&c){h=c.renderFallback;for(let b=0;b=0?s=s.slice(0,y+1):s=[s[0]];break}}}}let v=o?.onError,m=c&&v?(b,g)=>{v(b,{location:c.location,params:c.matches?.[0]?.params??{},unstable_pattern:ui(c.matches),errorInfo:g})}:void 0;return s.reduceRight((b,g,T)=>{let _,Y=!1,Q=null,X=null;c&&(_=d&&g.route.id?d[g.route.id]:void 0,Q=g.route.errorElement||Gg,h&&(y<0&&T===0?(Qy("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),Y=!0,X=null):y===T&&(Y=!0,X=g.route.hydrateFallbackElement||null)));let k=r.concat(s.slice(0,T+1)),$=()=>{let P;return _?P=Q:Y?P=X:g.route.Component?P=C.createElement(g.route.Component,null):g.route.element?P=g.route.element:P=b,C.createElement(Qg,{match:g,routeContext:{outlet:b,matches:k,isDataRoute:c!=null},children:P})};return c&&(g.route.ErrorBoundary||g.route.errorElement||T===0)?C.createElement(Xy,{location:c.location,revalidation:c.revalidation,component:Q,error:_,children:$(),routeContext:{outlet:null,matches:k,isDataRoute:!0},onError:m}):$()},null)}function Nf(n){return`${n} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Zg(n){let r=C.useContext(tn);return _e(r,Nf(n)),r}function Kg(n){let r=C.useContext(ii);return _e(r,Nf(n)),r}function Jg(n){let r=C.useContext(_a);return _e(r,Nf(n)),r}function wf(n){let r=Jg(n),o=r.matches[r.matches.length-1];return _e(o.route.id,`${n} can only be used on routes that contain a unique "id"`),o.route.id}function kg(){return wf("useRouteId")}function Fg(){let n=C.useContext(Df),r=Kg("useRouteError"),o=wf("useRouteError");return n!==void 0?n:r.errors?.[o]}function $g(){let{router:n}=Zg("useNavigate"),r=wf("useNavigate"),o=C.useRef(!1);return Gy(()=>{o.current=!0}),C.useCallback(async(s,d={})=>{pt(o.current,Yy),o.current&&(typeof s=="number"?await n.navigate(s):await n.navigate(s,{fromRouteId:r,...d}))},[n,r])}var Im={};function Qy(n,r,o){!r&&!Im[n]&&(Im[n]=!0,pt(!1,o))}var ey={};function ty(n,r){!n&&!ey[r]&&(ey[r]=!0,console.warn(r))}var Wg="useOptimistic",ay=op[Wg],Pg=()=>{};function Ig(n){return ay?ay(n):[n,Pg]}function e1(n){let r={hasErrorBoundary:n.hasErrorBoundary||n.ErrorBoundary!=null||n.errorElement!=null};return n.Component&&(n.element&&pt(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(r,{element:C.createElement(n.Component),Component:void 0})),n.HydrateFallback&&(n.hydrateFallbackElement&&pt(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(r,{hydrateFallbackElement:C.createElement(n.HydrateFallback),HydrateFallback:void 0})),n.ErrorBoundary&&(n.errorElement&&pt(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(r,{errorElement:C.createElement(n.ErrorBoundary),ErrorBoundary:void 0})),r}var t1=["HydrateFallback","hydrateFallbackElement"],a1=class{constructor(){this.status="pending",this.promise=new Promise((n,r)=>{this.resolve=o=>{this.status==="pending"&&(this.status="resolved",n(o))},this.reject=o=>{this.status==="pending"&&(this.status="rejected",r(o))}})}};function l1({router:n,flushSync:r,onError:o,unstable_useTransitions:c}){c=_g()||c;let[d,h]=C.useState(n.state),[y,v]=Ig(d),[m,b]=C.useState(),[g,T]=C.useState({isTransitioning:!1}),[_,Y]=C.useState(),[Q,X]=C.useState(),[k,$]=C.useState(),P=C.useRef(new Map),ye=C.useCallback((z,{deletedFetchers:Re,newErrors:we,flushSync:Ke,viewTransitionOpts:pe})=>{we&&o&&Object.values(we).forEach(je=>o(je,{location:z.location,params:z.matches[0]?.params??{},unstable_pattern:ui(z.matches)})),z.fetchers.forEach((je,ve)=>{je.data!==void 0&&P.current.set(ve,je.data)}),Re.forEach(je=>P.current.delete(je)),ty(Ke===!1||r!=null,'You provided the `flushSync` option to a router update, but you are not using the `` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let nt=n.window!=null&&n.window.document!=null&&typeof n.window.document.startViewTransition=="function";if(ty(pe==null||nt,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!pe||!nt){r&&Ke?r(()=>h(z)):c===!1?h(z):C.startTransition(()=>{c===!0&&v(je=>ly(je,z)),h(z)});return}if(r&&Ke){r(()=>{Q&&(_?.resolve(),Q.skipTransition()),T({isTransitioning:!0,flushSync:!0,currentLocation:pe.currentLocation,nextLocation:pe.nextLocation})});let je=n.window.document.startViewTransition(()=>{r(()=>h(z))});je.finished.finally(()=>{r(()=>{Y(void 0),X(void 0),b(void 0),T({isTransitioning:!1})})}),r(()=>X(je));return}Q?(_?.resolve(),Q.skipTransition(),$({state:z,currentLocation:pe.currentLocation,nextLocation:pe.nextLocation})):(b(z),T({isTransitioning:!0,flushSync:!1,currentLocation:pe.currentLocation,nextLocation:pe.nextLocation}))},[n.window,r,Q,_,c,v,o]);C.useLayoutEffect(()=>n.subscribe(ye),[n,ye]),C.useEffect(()=>{g.isTransitioning&&!g.flushSync&&Y(new a1)},[g]),C.useEffect(()=>{if(_&&m&&n.window){let z=m,Re=_.promise,we=n.window.document.startViewTransition(async()=>{c===!1?h(z):C.startTransition(()=>{c===!0&&v(Ke=>ly(Ke,z)),h(z)}),await Re});we.finished.finally(()=>{Y(void 0),X(void 0),b(void 0),T({isTransitioning:!1})}),X(we)}},[m,_,n.window,c,v]),C.useEffect(()=>{_&&m&&y.location.key===m.location.key&&_.resolve()},[_,Q,y.location,m]),C.useEffect(()=>{!g.isTransitioning&&k&&(b(k.state),T({isTransitioning:!0,flushSync:!1,currentLocation:k.currentLocation,nextLocation:k.nextLocation}),$(void 0))},[g.isTransitioning,k]);let he=C.useMemo(()=>({createHref:n.createHref,encodeLocation:n.encodeLocation,go:z=>n.navigate(z),push:(z,Re,we)=>n.navigate(z,{state:Re,preventScrollReset:we?.preventScrollReset}),replace:(z,Re,we)=>n.navigate(z,{replace:!0,state:Re,preventScrollReset:we?.preventScrollReset})}),[n]),Ee=n.basename||"/",ie=C.useMemo(()=>({router:n,navigator:he,static:!1,basename:Ee,onError:o}),[n,he,Ee,o]);return C.createElement(C.Fragment,null,C.createElement(tn.Provider,{value:ie},C.createElement(ii.Provider,{value:y},C.createElement(By.Provider,{value:P.current},C.createElement(Cf.Provider,{value:g},C.createElement(r1,{basename:Ee,location:y.location,navigationType:y.historyAction,navigator:he,unstable_useTransitions:c},C.createElement(n1,{routes:n.routes,future:n.future,state:y,isStatic:!1,onError:o})))))),null)}function ly(n,r){return{...n,navigation:r.navigation.state!=="idle"?r.navigation:n.navigation,revalidation:r.revalidation!=="idle"?r.revalidation:n.revalidation,actionData:r.navigation.state!=="submitting"?r.actionData:n.actionData,fetchers:r.fetchers}}var n1=C.memo(u1);function u1({routes:n,future:r,state:o,isStatic:c,onError:s}){return qg(n,void 0,{state:o,isStatic:c,onError:s})}function i1(n){return Bg(n.context)}function r1({basename:n="/",children:r=null,location:o,navigationType:c="POP",navigator:s,static:d=!1,unstable_useTransitions:h}){_e(!ri(),"You cannot render a inside another . You should never have more than one in your app.");let y=n.replace(/^\/*/,"/"),v=C.useMemo(()=>({basename:y,navigator:s,static:d,unstable_useTransitions:h,future:{}}),[y,s,d,h]);typeof o=="string"&&(o=Ia(o));let{pathname:m="/",search:b="",hash:g="",state:T=null,key:_="default",unstable_mask:Y}=o,Q=C.useMemo(()=>{let X=oa(m,y);return X==null?null:{location:{pathname:X,search:b,hash:g,state:T,key:_,unstable_mask:Y},navigationType:c}},[y,m,b,g,T,_,c,Y]);return pt(Q!=null,` is not able to match the URL "${m}${b}${g}" because it does not start with the basename, so the won't render anything.`),Q==null?null:C.createElement(fa.Provider,{value:v},C.createElement(Hr.Provider,{children:r,value:Q}))}var Dr="get",Nr="application/x-www-form-urlencoded";function Br(n){return typeof HTMLElement<"u"&&n instanceof HTMLElement}function c1(n){return Br(n)&&n.tagName.toLowerCase()==="button"}function o1(n){return Br(n)&&n.tagName.toLowerCase()==="form"}function f1(n){return Br(n)&&n.tagName.toLowerCase()==="input"}function s1(n){return!!(n.metaKey||n.altKey||n.ctrlKey||n.shiftKey)}function d1(n,r){return n.button===0&&(!r||r==="_self")&&!s1(n)}var zr=null;function h1(){if(zr===null)try{new FormData(document.createElement("form"),0),zr=!1}catch{zr=!0}return zr}var m1=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function of(n){return n!=null&&!m1.has(n)?(pt(!1,`"${n}" is not a valid \`encType\` for \`
\`/\`\` and will default to "${Nr}"`),null):n}function y1(n,r){let o,c,s,d,h;if(o1(n)){let y=n.getAttribute("action");c=y?oa(y,r):null,o=n.getAttribute("method")||Dr,s=of(n.getAttribute("enctype"))||Nr,d=new FormData(n)}else if(c1(n)||f1(n)&&(n.type==="submit"||n.type==="image")){let y=n.form;if(y==null)throw new Error('Cannot submit a