diff --git a/shopping-cart/.gitignore b/shopping-cart/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/shopping-cart/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/shopping-cart/README.md b/shopping-cart/README.md new file mode 100644 index 0000000..f768e33 --- /dev/null +++ b/shopping-cart/README.md @@ -0,0 +1,8 @@ +# React + Vite + +This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules. + +Currently, two official plugins are available: + +- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh +- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh diff --git a/shopping-cart/app/assets/index-B-lFhr22.js b/shopping-cart/app/assets/index-B-lFhr22.js new file mode 100644 index 0000000..c89aec5 --- /dev/null +++ b/shopping-cart/app/assets/index-B-lFhr22.js @@ -0,0 +1,82 @@ +function Md(e,t){for(var n=0;nr[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const l of o.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();function lu(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ad={exports:{}},Ul={},Id={exports:{}},Y={};/** + * @license React + * react.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var co=Symbol.for("react.element"),c0=Symbol.for("react.portal"),f0=Symbol.for("react.fragment"),d0=Symbol.for("react.strict_mode"),p0=Symbol.for("react.profiler"),h0=Symbol.for("react.provider"),m0=Symbol.for("react.context"),g0=Symbol.for("react.forward_ref"),y0=Symbol.for("react.suspense"),v0=Symbol.for("react.memo"),w0=Symbol.for("react.lazy"),Dc=Symbol.iterator;function S0(e){return e===null||typeof e!="object"?null:(e=Dc&&e[Dc]||e["@@iterator"],typeof e=="function"?e:null)}var $d={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Fd=Object.assign,bd={};function ti(e,t,n){this.props=e,this.context=t,this.refs=bd,this.updater=n||$d}ti.prototype.isReactComponent={};ti.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};ti.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function Bd(){}Bd.prototype=ti.prototype;function au(e,t,n){this.props=e,this.context=t,this.refs=bd,this.updater=n||$d}var su=au.prototype=new Bd;su.constructor=au;Fd(su,ti.prototype);su.isPureReactComponent=!0;var zc=Array.isArray,Ud=Object.prototype.hasOwnProperty,uu={current:null},Vd={key:!0,ref:!0,__self:!0,__source:!0};function Wd(e,t,n){var r,i={},o=null,l=null;if(t!=null)for(r in t.ref!==void 0&&(l=t.ref),t.key!==void 0&&(o=""+t.key),t)Ud.call(t,r)&&!Vd.hasOwnProperty(r)&&(i[r]=t[r]);var a=arguments.length-2;if(a===1)i.children=n;else if(1>>1,de=A[ne];if(0>>1;ne<$t;){var Fe=2*(ne+1)-1,Rt=A[Fe],Xe=Fe+1,Yt=A[Xe];if(0>i(Rt,Q))Xei(Yt,Rt)?(A[ne]=Yt,A[Xe]=Q,ne=Xe):(A[ne]=Rt,A[Fe]=Q,ne=Fe);else if(Xei(Yt,Q))A[ne]=Yt,A[Xe]=Q,ne=Xe;else break e}}return K}function i(A,K){var Q=A.sortIndex-K.sortIndex;return Q!==0?Q:A.id-K.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var l=Date,a=l.now();e.unstable_now=function(){return l.now()-a}}var s=[],u=[],d=1,c=null,p=3,v=!1,x=!1,y=!1,T=typeof setTimeout=="function"?setTimeout:null,m=typeof clearTimeout=="function"?clearTimeout:null,h=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function g(A){for(var K=n(u);K!==null;){if(K.callback===null)r(u);else if(K.startTime<=A)r(u),K.sortIndex=K.expirationTime,t(s,K);else break;K=n(u)}}function C(A){if(y=!1,g(A),!x)if(n(s)!==null)x=!0,nt(P);else{var K=n(u);K!==null&&me(C,K.startTime-A)}}function P(A,K){x=!1,y&&(y=!1,m(L),L=-1),v=!0;var Q=p;try{for(g(K),c=n(s);c!==null&&(!(c.expirationTime>K)||A&&!z());){var ne=c.callback;if(typeof ne=="function"){c.callback=null,p=c.priorityLevel;var de=ne(c.expirationTime<=K);K=e.unstable_now(),typeof de=="function"?c.callback=de:c===n(s)&&r(s),g(K)}else r(s);c=n(s)}if(c!==null)var $t=!0;else{var Fe=n(u);Fe!==null&&me(C,Fe.startTime-K),$t=!1}return $t}finally{c=null,p=Q,v=!1}}var w=!1,R=null,L=-1,M=5,f=-1;function z(){return!(e.unstable_now()-fA||125ne?(A.sortIndex=Q,t(u,A),n(s)===null&&A===n(u)&&(y?(m(L),L=-1):y=!0,me(C,Q-ne))):(A.sortIndex=de,t(s,A),x||v||(x=!0,nt(P))),A},e.unstable_shouldYield=z,e.unstable_wrapCallback=function(A){var K=p;return function(){var Q=p;p=K;try{return A.apply(this,arguments)}finally{p=Q}}}})(Yd);Gd.exports=Yd;var j0=Gd.exports;/** + * @license React + * react-dom.production.min.js + * + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */var D0=N,yt=j0;function D(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),is=Object.prototype.hasOwnProperty,z0=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Ac={},Ic={};function M0(e){return is.call(Ic,e)?!0:is.call(Ac,e)?!1:z0.test(e)?Ic[e]=!0:(Ac[e]=!0,!1)}function A0(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function I0(e,t,n,r){if(t===null||typeof t>"u"||A0(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function tt(e,t,n,r,i,o,l){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=l}var We={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){We[e]=new tt(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];We[t]=new tt(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){We[e]=new tt(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){We[e]=new tt(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){We[e]=new tt(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){We[e]=new tt(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){We[e]=new tt(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){We[e]=new tt(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){We[e]=new tt(e,5,!1,e.toLowerCase(),null,!1,!1)});var fu=/[\-:]([a-z])/g;function du(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(fu,du);We[t]=new tt(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(fu,du);We[t]=new tt(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(fu,du);We[t]=new tt(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){We[e]=new tt(e,1,!1,e.toLowerCase(),null,!1,!1)});We.xlinkHref=new tt("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){We[e]=new tt(e,1,!1,e.toLowerCase(),null,!0,!0)});function pu(e,t,n,r){var i=We.hasOwnProperty(t)?We[t]:null;(i!==null?i.type!==0:r||!(2a||i[l]!==o[a]){var s=` +`+i[l].replace(" at new "," at ");return e.displayName&&s.includes("")&&(s=s.replace("",e.displayName)),s}while(1<=l&&0<=a);break}}}finally{_a=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?Ei(e):""}function $0(e){switch(e.tag){case 5:return Ei(e.type);case 16:return Ei("Lazy");case 13:return Ei("Suspense");case 19:return Ei("SuspenseList");case 0:case 2:case 15:return e=Pa(e.type,!1),e;case 11:return e=Pa(e.type.render,!1),e;case 1:return e=Pa(e.type,!0),e;default:return""}}function ss(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Cr:return"Fragment";case kr:return"Portal";case os:return"Profiler";case hu:return"StrictMode";case ls:return"Suspense";case as:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Zd:return(e.displayName||"Context")+".Consumer";case Jd:return(e._context.displayName||"Context")+".Provider";case mu:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case gu:return t=e.displayName||null,t!==null?t:ss(e.type)||"Memo";case wn:t=e._payload,e=e._init;try{return ss(e(t))}catch{}}return null}function F0(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return ss(t);case 8:return t===hu?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Mn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function ep(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function b0(e){var t=ep(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(l){r=""+l,o.call(this,l)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(l){r=""+l},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function No(e){e._valueTracker||(e._valueTracker=b0(e))}function tp(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=ep(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function fl(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function us(e,t){var n=t.checked;return xe({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Fc(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Mn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function np(e,t){t=t.checked,t!=null&&pu(e,"checked",t,!1)}function cs(e,t){np(e,t);var n=Mn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?fs(e,t.type,n):t.hasOwnProperty("defaultValue")&&fs(e,t.type,Mn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function bc(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function fs(e,t,n){(t!=="number"||fl(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var _i=Array.isArray;function Mr(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=Lo.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function Ui(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Oi={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},B0=["Webkit","ms","Moz","O"];Object.keys(Oi).forEach(function(e){B0.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Oi[t]=Oi[e]})});function lp(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||Oi.hasOwnProperty(e)&&Oi[e]?(""+t).trim():t+"px"}function ap(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=lp(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var U0=xe({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function hs(e,t){if(t){if(U0[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(D(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(D(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(D(61))}if(t.style!=null&&typeof t.style!="object")throw Error(D(62))}}function ms(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var gs=null;function yu(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ys=null,Ar=null,Ir=null;function Vc(e){if(e=ho(e)){if(typeof ys!="function")throw Error(D(280));var t=e.stateNode;t&&(t=Ql(t),ys(e.stateNode,e.type,t))}}function sp(e){Ar?Ir?Ir.push(e):Ir=[e]:Ar=e}function up(){if(Ar){var e=Ar,t=Ir;if(Ir=Ar=null,Vc(e),t)for(e=0;e>>=0,e===0?32:31-(q0(e)/eg|0)|0}var Oo=64,jo=4194304;function Pi(e){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: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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function ml(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,l=n&268435455;if(l!==0){var a=l&~i;a!==0?r=Pi(a):(o&=l,o!==0&&(r=Pi(o)))}else l=n&~i,l!==0?r=Pi(l):o!==0&&(r=Pi(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,o=t&-t,i>=o||i===16&&(o&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function fo(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Mt(t),e[t]=n}function ig(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=Di),Zc=" ",qc=!1;function Np(e,t){switch(e){case"keyup":return jg.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Lp(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Er=!1;function zg(e,t){switch(e){case"compositionend":return Lp(t);case"keypress":return t.which!==32?null:(qc=!0,Zc);case"textInput":return e=t.data,e===Zc&&qc?null:e;default:return null}}function Mg(e,t){if(Er)return e==="compositionend"||!_u&&Np(e,t)?(e=Tp(),Jo=ku=En=null,Er=!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:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=rf(n)}}function zp(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?zp(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Mp(){for(var e=window,t=fl();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=fl(e.document)}return t}function Pu(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")}function Wg(e){var t=Mp(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&zp(n.ownerDocument.documentElement,n)){if(r!==null&&Pu(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,o=Math.min(r.start,i);r=r.end===void 0?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=of(n,o);var l=of(n,r);i&&l&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==l.node||e.focusOffset!==l.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(l.node,l.offset)):(t.setEnd(l.node,l.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,_r=null,Cs=null,Mi=null,Es=!1;function lf(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Es||_r==null||_r!==fl(r)||(r=_r,"selectionStart"in r&&Pu(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Mi&&Gi(Mi,r)||(Mi=r,r=vl(Cs,"onSelect"),0Rr||(e.current=Ls[Rr],Ls[Rr]=null,Rr--)}function fe(e,t){Rr++,Ls[Rr]=e.current,e.current=t}var An={},Ye=Fn(An),lt=Fn(!1),tr=An;function Hr(e,t){var n=e.type.contextTypes;if(!n)return An;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function at(e){return e=e.childContextTypes,e!=null}function Sl(){he(lt),he(Ye)}function pf(e,t,n){if(Ye.current!==An)throw Error(D(168));fe(Ye,t),fe(lt,n)}function Wp(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(D(108,F0(e)||"Unknown",i));return xe({},n,r)}function xl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||An,tr=Ye.current,fe(Ye,e),fe(lt,lt.current),!0}function hf(e,t,n){var r=e.stateNode;if(!r)throw Error(D(169));n?(e=Wp(e,t,tr),r.__reactInternalMemoizedMergedChildContext=e,he(lt),he(Ye),fe(Ye,e)):he(lt),fe(lt,n)}var en=null,Gl=!1,ba=!1;function Hp(e){en===null?en=[e]:en.push(e)}function ny(e){Gl=!0,Hp(e)}function bn(){if(!ba&&en!==null){ba=!0;var e=0,t=le;try{var n=en;for(le=1;e>=l,i-=l,nn=1<<32-Mt(t)+i|n<L?(M=R,R=null):M=R.sibling;var f=p(m,R,g[L],C);if(f===null){R===null&&(R=M);break}e&&R&&f.alternate===null&&t(m,R),h=o(f,h,L),w===null?P=f:w.sibling=f,w=f,R=M}if(L===g.length)return n(m,R),ve&&Hn(m,L),P;if(R===null){for(;LL?(M=R,R=null):M=R.sibling;var z=p(m,R,f.value,C);if(z===null){R===null&&(R=M);break}e&&R&&z.alternate===null&&t(m,R),h=o(z,h,L),w===null?P=z:w.sibling=z,w=z,R=M}if(f.done)return n(m,R),ve&&Hn(m,L),P;if(R===null){for(;!f.done;L++,f=g.next())f=c(m,f.value,C),f!==null&&(h=o(f,h,L),w===null?P=f:w.sibling=f,w=f);return ve&&Hn(m,L),P}for(R=r(m,R);!f.done;L++,f=g.next())f=v(R,m,L,f.value,C),f!==null&&(e&&f.alternate!==null&&R.delete(f.key===null?L:f.key),h=o(f,h,L),w===null?P=f:w.sibling=f,w=f);return e&&R.forEach(function(U){return t(m,U)}),ve&&Hn(m,L),P}function T(m,h,g,C){if(typeof g=="object"&&g!==null&&g.type===Cr&&g.key===null&&(g=g.props.children),typeof g=="object"&&g!==null){switch(g.$$typeof){case Ro:e:{for(var P=g.key,w=h;w!==null;){if(w.key===P){if(P=g.type,P===Cr){if(w.tag===7){n(m,w.sibling),h=i(w,g.props.children),h.return=m,m=h;break e}}else if(w.elementType===P||typeof P=="object"&&P!==null&&P.$$typeof===wn&&yf(P)===w.type){n(m,w.sibling),h=i(w,g.props),h.ref=mi(m,w,g),h.return=m,m=h;break e}n(m,w);break}else t(m,w);w=w.sibling}g.type===Cr?(h=er(g.props.children,m.mode,C,g.key),h.return=m,m=h):(C=ol(g.type,g.key,g.props,null,m.mode,C),C.ref=mi(m,h,g),C.return=m,m=C)}return l(m);case kr:e:{for(w=g.key;h!==null;){if(h.key===w)if(h.tag===4&&h.stateNode.containerInfo===g.containerInfo&&h.stateNode.implementation===g.implementation){n(m,h.sibling),h=i(h,g.children||[]),h.return=m,m=h;break e}else{n(m,h);break}else t(m,h);h=h.sibling}h=Ga(g,m.mode,C),h.return=m,m=h}return l(m);case wn:return w=g._init,T(m,h,w(g._payload),C)}if(_i(g))return x(m,h,g,C);if(ci(g))return y(m,h,g,C);Fo(m,g)}return typeof g=="string"&&g!==""||typeof g=="number"?(g=""+g,h!==null&&h.tag===6?(n(m,h.sibling),h=i(h,g),h.return=m,m=h):(n(m,h),h=Qa(g,m.mode,C),h.return=m,m=h),l(m)):n(m,h)}return T}var Qr=Yp(!0),Xp=Yp(!1),El=Fn(null),_l=null,Or=null,Lu=null;function Ou(){Lu=Or=_l=null}function ju(e){var t=El.current;he(El),e._currentValue=t}function Ds(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Fr(e,t){_l=e,Lu=Or=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(ot=!0),e.firstContext=null)}function _t(e){var t=e._currentValue;if(Lu!==e)if(e={context:e,memoizedValue:t,next:null},Or===null){if(_l===null)throw Error(D(308));Or=e,_l.dependencies={lanes:0,firstContext:e}}else Or=Or.next=e;return t}var Xn=null;function Du(e){Xn===null?Xn=[e]:Xn.push(e)}function Jp(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,Du(t)):(n.next=i.next,i.next=n),t.interleaved=n,cn(e,r)}function cn(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Sn=!1;function zu(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Zp(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function on(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function On(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,ee&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,cn(e,n)}return i=r.interleaved,i===null?(t.next=t,Du(r)):(t.next=i.next,i.next=t),r.interleaved=t,cn(e,n)}function qo(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,wu(e,n)}}function vf(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,o=null;if(n=n.firstBaseUpdate,n!==null){do{var l={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};o===null?i=o=l:o=o.next=l,n=n.next}while(n!==null);o===null?i=o=t:o=o.next=t}else i=o=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:o,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Pl(e,t,n,r){var i=e.updateQueue;Sn=!1;var o=i.firstBaseUpdate,l=i.lastBaseUpdate,a=i.shared.pending;if(a!==null){i.shared.pending=null;var s=a,u=s.next;s.next=null,l===null?o=u:l.next=u,l=s;var d=e.alternate;d!==null&&(d=d.updateQueue,a=d.lastBaseUpdate,a!==l&&(a===null?d.firstBaseUpdate=u:a.next=u,d.lastBaseUpdate=s))}if(o!==null){var c=i.baseState;l=0,d=u=s=null,a=o;do{var p=a.lane,v=a.eventTime;if((r&p)===p){d!==null&&(d=d.next={eventTime:v,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var x=e,y=a;switch(p=t,v=n,y.tag){case 1:if(x=y.payload,typeof x=="function"){c=x.call(v,c,p);break e}c=x;break e;case 3:x.flags=x.flags&-65537|128;case 0:if(x=y.payload,p=typeof x=="function"?x.call(v,c,p):x,p==null)break e;c=xe({},c,p);break e;case 2:Sn=!0}}a.callback!==null&&a.lane!==0&&(e.flags|=64,p=i.effects,p===null?i.effects=[a]:p.push(a))}else v={eventTime:v,lane:p,tag:a.tag,payload:a.payload,callback:a.callback,next:null},d===null?(u=d=v,s=c):d=d.next=v,l|=p;if(a=a.next,a===null){if(a=i.shared.pending,a===null)break;p=a,a=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(!0);if(d===null&&(s=c),i.baseState=s,i.firstBaseUpdate=u,i.lastBaseUpdate=d,t=i.shared.interleaved,t!==null){i=t;do l|=i.lane,i=i.next;while(i!==t)}else o===null&&(i.shared.lanes=0);ir|=l,e.lanes=l,e.memoizedState=c}}function wf(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=Ua.transition;Ua.transition={};try{e(!1),t()}finally{le=n,Ua.transition=r}}function mh(){return Pt().memoizedState}function ly(e,t,n){var r=Dn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},gh(e))yh(t,n);else if(n=Jp(e,t,n,r),n!==null){var i=qe();At(n,e,r,i),vh(n,t,r)}}function ay(e,t,n){var r=Dn(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(gh(e))yh(t,i);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var l=t.lastRenderedState,a=o(l,n);if(i.hasEagerState=!0,i.eagerState=a,It(a,l)){var s=t.interleaved;s===null?(i.next=i,Du(t)):(i.next=s.next,s.next=i),t.interleaved=i;return}}catch{}finally{}n=Jp(e,t,i,r),n!==null&&(i=qe(),At(n,e,r,i),vh(n,t,r))}}function gh(e){var t=e.alternate;return e===Se||t!==null&&t===Se}function yh(e,t){Ai=Rl=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function vh(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,wu(e,n)}}var Nl={readContext:_t,useCallback:He,useContext:He,useEffect:He,useImperativeHandle:He,useInsertionEffect:He,useLayoutEffect:He,useMemo:He,useReducer:He,useRef:He,useState:He,useDebugValue:He,useDeferredValue:He,useTransition:He,useMutableSource:He,useSyncExternalStore:He,useId:He,unstable_isNewReconciler:!1},sy={readContext:_t,useCallback:function(e,t){return Ut().memoizedState=[e,t===void 0?null:t],e},useContext:_t,useEffect:xf,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,tl(4194308,4,ch.bind(null,t,e),n)},useLayoutEffect:function(e,t){return tl(4194308,4,e,t)},useInsertionEffect:function(e,t){return tl(4,2,e,t)},useMemo:function(e,t){var n=Ut();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ut();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=ly.bind(null,Se,e),[r.memoizedState,e]},useRef:function(e){var t=Ut();return e={current:e},t.memoizedState=e},useState:Sf,useDebugValue:Uu,useDeferredValue:function(e){return Ut().memoizedState=e},useTransition:function(){var e=Sf(!1),t=e[0];return e=oy.bind(null,e[1]),Ut().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Se,i=Ut();if(ve){if(n===void 0)throw Error(D(407));n=n()}else{if(n=t(),$e===null)throw Error(D(349));rr&30||nh(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,xf(ih.bind(null,r,o,e),[e]),r.flags|=2048,no(9,rh.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Ut(),t=$e.identifierPrefix;if(ve){var n=rn,r=nn;n=(r&~(1<<32-Mt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=eo++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=l.createElement(n,{is:r.is}):(e=l.createElement(n),n==="select"&&(l=e,r.multiple?l.multiple=!0:r.size&&(l.size=r.size))):e=l.createElementNS(e,n),e[Ht]=t,e[Ji]=r,Rh(e,t,!1,!1),t.stateNode=e;e:{switch(l=ms(n,r),n){case"dialog":pe("cancel",e),pe("close",e),i=r;break;case"iframe":case"object":case"embed":pe("load",e),i=r;break;case"video":case"audio":for(i=0;iXr&&(t.flags|=128,r=!0,gi(o,!1),t.lanes=4194304)}else{if(!r)if(e=Tl(l),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),gi(o,!0),o.tail===null&&o.tailMode==="hidden"&&!l.alternate&&!ve)return Ke(t),null}else 2*Te()-o.renderingStartTime>Xr&&n!==1073741824&&(t.flags|=128,r=!0,gi(o,!1),t.lanes=4194304);o.isBackwards?(l.sibling=t.child,t.child=l):(n=o.last,n!==null?n.sibling=l:t.child=l,o.last=l)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=Te(),t.sibling=null,n=we.current,fe(we,r?n&1|2:n&1),t):(Ke(t),null);case 22:case 23:return Gu(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?ct&1073741824&&(Ke(t),t.subtreeFlags&6&&(t.flags|=8192)):Ke(t),null;case 24:return null;case 25:return null}throw Error(D(156,t.tag))}function gy(e,t){switch(Ru(t),t.tag){case 1:return at(t.type)&&Sl(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Gr(),he(lt),he(Ye),Iu(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Au(t),null;case 13:if(he(we),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(D(340));Kr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return he(we),null;case 4:return Gr(),null;case 10:return ju(t.type._context),null;case 22:case 23:return Gu(),null;case 24:return null;default:return null}}var Bo=!1,Ge=!1,yy=typeof WeakSet=="function"?WeakSet:Set,I=null;function jr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Pe(e,t,r)}else n.current=null}function Us(e,t,n){try{n()}catch(r){Pe(e,t,r)}}var jf=!1;function vy(e,t){if(_s=gl,e=Mp(),Pu(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var l=0,a=-1,s=-1,u=0,d=0,c=e,p=null;t:for(;;){for(var v;c!==n||i!==0&&c.nodeType!==3||(a=l+i),c!==o||r!==0&&c.nodeType!==3||(s=l+r),c.nodeType===3&&(l+=c.nodeValue.length),(v=c.firstChild)!==null;)p=c,c=v;for(;;){if(c===e)break t;if(p===n&&++u===i&&(a=l),p===o&&++d===r&&(s=l),(v=c.nextSibling)!==null)break;c=p,p=c.parentNode}c=v}n=a===-1||s===-1?null:{start:a,end:s}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ps={focusedElem:e,selectionRange:n},gl=!1,I=t;I!==null;)if(t=I,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,I=e;else for(;I!==null;){t=I;try{var x=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(x!==null){var y=x.memoizedProps,T=x.memoizedState,m=t.stateNode,h=m.getSnapshotBeforeUpdate(t.elementType===t.type?y:Lt(t.type,y),T);m.__reactInternalSnapshotBeforeUpdate=h}break;case 3:var g=t.stateNode.containerInfo;g.nodeType===1?g.textContent="":g.nodeType===9&&g.documentElement&&g.removeChild(g.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(D(163))}}catch(C){Pe(t,t.return,C)}if(e=t.sibling,e!==null){e.return=t.return,I=e;break}I=t.return}return x=jf,jf=!1,x}function Ii(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,o!==void 0&&Us(t,n,o)}i=i.next}while(i!==r)}}function Jl(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Vs(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function Oh(e){var t=e.alternate;t!==null&&(e.alternate=null,Oh(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Ht],delete t[Ji],delete t[Ns],delete t[ey],delete t[ty])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function jh(e){return e.tag===5||e.tag===3||e.tag===4}function Df(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||jh(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.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 Ws(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=wl));else if(r!==4&&(e=e.child,e!==null))for(Ws(e,t,n),e=e.sibling;e!==null;)Ws(e,t,n),e=e.sibling}function Hs(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Hs(e,t,n),e=e.sibling;e!==null;)Hs(e,t,n),e=e.sibling}var Be=null,Ot=!1;function yn(e,t,n){for(n=n.child;n!==null;)Dh(e,t,n),n=n.sibling}function Dh(e,t,n){if(Kt&&typeof Kt.onCommitFiberUnmount=="function")try{Kt.onCommitFiberUnmount(Vl,n)}catch{}switch(n.tag){case 5:Ge||jr(n,t);case 6:var r=Be,i=Ot;Be=null,yn(e,t,n),Be=r,Ot=i,Be!==null&&(Ot?(e=Be,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Be.removeChild(n.stateNode));break;case 18:Be!==null&&(Ot?(e=Be,n=n.stateNode,e.nodeType===8?Fa(e.parentNode,n):e.nodeType===1&&Fa(e,n),Ki(e)):Fa(Be,n.stateNode));break;case 4:r=Be,i=Ot,Be=n.stateNode.containerInfo,Ot=!0,yn(e,t,n),Be=r,Ot=i;break;case 0:case 11:case 14:case 15:if(!Ge&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var o=i,l=o.destroy;o=o.tag,l!==void 0&&(o&2||o&4)&&Us(n,t,l),i=i.next}while(i!==r)}yn(e,t,n);break;case 1:if(!Ge&&(jr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(a){Pe(n,t,a)}yn(e,t,n);break;case 21:yn(e,t,n);break;case 22:n.mode&1?(Ge=(r=Ge)||n.memoizedState!==null,yn(e,t,n),Ge=r):yn(e,t,n);break;default:yn(e,t,n)}}function zf(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new yy),t.forEach(function(r){var i=Ty.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function Nt(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=l),r&=~o}if(r=i,r=Te()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Sy(r/1960))-r,10e?16:e,_n===null)var r=!1;else{if(e=_n,_n=null,jl=0,ee&6)throw Error(D(331));var i=ee;for(ee|=4,I=e.current;I!==null;){var o=I,l=o.child;if(I.flags&16){var a=o.deletions;if(a!==null){for(var s=0;sTe()-Ku?qn(e,0):Hu|=n),st(e,t)}function Bh(e,t){t===0&&(e.mode&1?(t=jo,jo<<=1,!(jo&130023424)&&(jo=4194304)):t=1);var n=qe();e=cn(e,t),e!==null&&(fo(e,t,n),st(e,n))}function Py(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Bh(e,n)}function Ty(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(D(314))}r!==null&&r.delete(t),Bh(e,n)}var Uh;Uh=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||lt.current)ot=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return ot=!1,hy(e,t,n);ot=!!(e.flags&131072)}else ot=!1,ve&&t.flags&1048576&&Kp(t,Cl,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;nl(e,t),e=t.pendingProps;var i=Hr(t,Ye.current);Fr(t,n),i=Fu(null,t,r,e,i,n);var o=bu();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,at(r)?(o=!0,xl(t)):o=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,zu(t),i.updater=Xl,t.stateNode=i,i._reactInternals=t,Ms(t,r,e,n),t=$s(null,t,r,!0,o,n)):(t.tag=0,ve&&o&&Tu(t),Ze(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(nl(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=Ny(r),e=Lt(r,e),i){case 0:t=Is(null,t,r,e,n);break e;case 1:t=Nf(null,t,r,e,n);break e;case 11:t=Tf(null,t,r,e,n);break e;case 14:t=Rf(null,t,r,Lt(r.type,e),n);break e}throw Error(D(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Lt(r,i),Is(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Lt(r,i),Nf(e,t,r,i,n);case 3:e:{if(_h(t),e===null)throw Error(D(387));r=t.pendingProps,o=t.memoizedState,i=o.element,Zp(e,t),Pl(t,r,null,n);var l=t.memoizedState;if(r=l.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:l.cache,pendingSuspenseBoundaries:l.pendingSuspenseBoundaries,transitions:l.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){i=Yr(Error(D(423)),t),t=Lf(e,t,r,n,i);break e}else if(r!==i){i=Yr(Error(D(424)),t),t=Lf(e,t,r,n,i);break e}else for(pt=Ln(t.stateNode.containerInfo.firstChild),ht=t,ve=!0,Dt=null,n=Xp(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Kr(),r===i){t=fn(e,t,n);break e}Ze(e,t,r,n)}t=t.child}return t;case 5:return qp(t),e===null&&js(t),r=t.type,i=t.pendingProps,o=e!==null?e.memoizedProps:null,l=i.children,Ts(r,i)?l=null:o!==null&&Ts(r,o)&&(t.flags|=32),Eh(e,t),Ze(e,t,l,n),t.child;case 6:return e===null&&js(t),null;case 13:return Ph(e,t,n);case 4:return Mu(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Qr(t,null,r,n):Ze(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Lt(r,i),Tf(e,t,r,i,n);case 7:return Ze(e,t,t.pendingProps,n),t.child;case 8:return Ze(e,t,t.pendingProps.children,n),t.child;case 12:return Ze(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,o=t.memoizedProps,l=i.value,fe(El,r._currentValue),r._currentValue=l,o!==null)if(It(o.value,l)){if(o.children===i.children&&!lt.current){t=fn(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var a=o.dependencies;if(a!==null){l=o.child;for(var s=a.firstContext;s!==null;){if(s.context===r){if(o.tag===1){s=on(-1,n&-n),s.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?s.next=s:(s.next=d.next,d.next=s),u.pending=s}}o.lanes|=n,s=o.alternate,s!==null&&(s.lanes|=n),Ds(o.return,n,t),a.lanes|=n;break}s=s.next}}else if(o.tag===10)l=o.type===t.type?null:o.child;else if(o.tag===18){if(l=o.return,l===null)throw Error(D(341));l.lanes|=n,a=l.alternate,a!==null&&(a.lanes|=n),Ds(l,n,t),l=o.sibling}else l=o.child;if(l!==null)l.return=o;else for(l=o;l!==null;){if(l===t){l=null;break}if(o=l.sibling,o!==null){o.return=l.return,l=o;break}l=l.return}o=l}Ze(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,Fr(t,n),i=_t(i),r=r(i),t.flags|=1,Ze(e,t,r,n),t.child;case 14:return r=t.type,i=Lt(r,t.pendingProps),i=Lt(r.type,i),Rf(e,t,r,i,n);case 15:return kh(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Lt(r,i),nl(e,t),t.tag=1,at(r)?(e=!0,xl(t)):e=!1,Fr(t,n),wh(t,r,i),Ms(t,r,i,n),$s(null,t,r,!0,e,n);case 19:return Th(e,t,n);case 22:return Ch(e,t,n)}throw Error(D(156,t.tag))};function Vh(e,t){return gp(e,t)}function Ry(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Ct(e,t,n,r){return new Ry(e,t,n,r)}function Xu(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Ny(e){if(typeof e=="function")return Xu(e)?1:0;if(e!=null){if(e=e.$$typeof,e===mu)return 11;if(e===gu)return 14}return 2}function zn(e,t){var n=e.alternate;return n===null?(n=Ct(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function ol(e,t,n,r,i,o){var l=2;if(r=e,typeof e=="function")Xu(e)&&(l=1);else if(typeof e=="string")l=5;else e:switch(e){case Cr:return er(n.children,i,o,t);case hu:l=8,i|=8;break;case os:return e=Ct(12,n,t,i|2),e.elementType=os,e.lanes=o,e;case ls:return e=Ct(13,n,t,i),e.elementType=ls,e.lanes=o,e;case as:return e=Ct(19,n,t,i),e.elementType=as,e.lanes=o,e;case qd:return ql(n,i,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Jd:l=10;break e;case Zd:l=9;break e;case mu:l=11;break e;case gu:l=14;break e;case wn:l=16,r=null;break e}throw Error(D(130,e==null?e:typeof e,""))}return t=Ct(l,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function er(e,t,n,r){return e=Ct(7,e,r,t),e.lanes=n,e}function ql(e,t,n,r){return e=Ct(22,e,r,t),e.elementType=qd,e.lanes=n,e.stateNode={isHidden:!1},e}function Qa(e,t,n){return e=Ct(6,e,null,t),e.lanes=n,e}function Ga(e,t,n){return t=Ct(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ly(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Ra(0),this.expirationTimes=Ra(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ra(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function Ju(e,t,n,r,i,o,l,a,s){return e=new Ly(e,t,n,a,s),t===1?(t=1,o===!0&&(t|=8)):t=0,o=Ct(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},zu(o),e}function Oy(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Qh)}catch(e){console.error(e)}}Qh(),Qd.exports=vt;var tc=Qd.exports;const Ay=lu(tc),Iy=Md({__proto__:null,default:Ay},[tc]);var Gh,Uf=tc;Gh=Uf.createRoot,Uf.hydrateRoot;/** + * @remix-run/router v1.20.0 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function ye(){return ye=Object.assign?Object.assign.bind():function(e){for(var t=1;t"u")throw new Error(t)}function Jr(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Fy(){return Math.random().toString(36).substr(2,8)}function Wf(e,t){return{usr:e.state,key:e.key,idx:t}}function io(e,t,n,r){return n===void 0&&(n=null),ye({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?Bn(t):t,{state:n,key:t&&t.key||r||Fy()})}function lr(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function Bn(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function by(e,t,n,r){r===void 0&&(r={});let{window:i=document.defaultView,v5Compat:o=!1}=r,l=i.history,a=Le.Pop,s=null,u=d();u==null&&(u=0,l.replaceState(ye({},l.state,{idx:u}),""));function d(){return(l.state||{idx:null}).idx}function c(){a=Le.Pop;let T=d(),m=T==null?null:T-u;u=T,s&&s({action:a,location:y.location,delta:m})}function p(T,m){a=Le.Push;let h=io(y.location,T,m);u=d()+1;let g=Wf(h,u),C=y.createHref(h);try{l.pushState(g,"",C)}catch(P){if(P instanceof DOMException&&P.name==="DataCloneError")throw P;i.location.assign(C)}o&&s&&s({action:a,location:y.location,delta:1})}function v(T,m){a=Le.Replace;let h=io(y.location,T,m);u=d();let g=Wf(h,u),C=y.createHref(h);l.replaceState(g,"",C),o&&s&&s({action:a,location:y.location,delta:0})}function x(T){let m=i.location.origin!=="null"?i.location.origin:i.location.href,h=typeof T=="string"?T:lr(T);return h=h.replace(/ $/,"%20"),Z(m,"No window.location.(origin|href) available to create URL for href: "+h),new URL(h,m)}let y={get action(){return a},get location(){return e(i,l)},listen(T){if(s)throw new Error("A history only accepts one active listener");return i.addEventListener(Vf,c),s=T,()=>{i.removeEventListener(Vf,c),s=null}},createHref(T){return t(i,T)},createURL:x,encodeLocation(T){let m=x(T);return{pathname:m.pathname,search:m.search,hash:m.hash}},push:p,replace:v,go(T){return l.go(T)}};return y}var ae;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(ae||(ae={}));const By=new Set(["lazy","caseSensitive","path","id","index","children"]);function Uy(e){return e.index===!0}function Ml(e,t,n,r){return n===void 0&&(n=[]),r===void 0&&(r={}),e.map((i,o)=>{let l=[...n,String(o)],a=typeof i.id=="string"?i.id:l.join("-");if(Z(i.index!==!0||!i.children,"Cannot specify children on an index route"),Z(!r[a],'Found a route id collision on id "'+a+`". Route id's must be globally unique within Data Router usages`),Uy(i)){let s=ye({},i,t(i),{id:a});return r[a]=s,s}else{let s=ye({},i,t(i),{id:a,children:void 0});return r[a]=s,i.children&&(s.children=Ml(i.children,t,l,r)),s}})}function Qn(e,t,n){return n===void 0&&(n="/"),ll(e,t,n,!1)}function ll(e,t,n,r){let i=typeof t=="string"?Bn(t):t,o=ii(i.pathname||"/",n);if(o==null)return null;let l=Yh(e);Wy(l);let a=null;for(let s=0;a==null&&s{let s={relativePath:a===void 0?o.path||"":a,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};s.relativePath.startsWith("/")&&(Z(s.relativePath.startsWith(r),'Absolute route path "'+s.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),s.relativePath=s.relativePath.slice(r.length));let u=ln([r,s.relativePath]),d=n.concat(s);o.children&&o.children.length>0&&(Z(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),Yh(o.children,t,d,u)),!(o.path==null&&!o.index)&&t.push({path:u,score:Jy(u,o.index),routesMeta:d})};return e.forEach((o,l)=>{var a;if(o.path===""||!((a=o.path)!=null&&a.includes("?")))i(o,l);else for(let s of Xh(o.path))i(o,l,s)}),t}function Xh(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,i=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return i?[o,""]:[o];let l=Xh(r.join("/")),a=[];return a.push(...l.map(s=>s===""?o:[o,s].join("/"))),i&&a.push(...l),a.map(s=>e.startsWith("/")&&s===""?"/":s)}function Wy(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Zy(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const Hy=/^:[\w-]+$/,Ky=3,Qy=2,Gy=1,Yy=10,Xy=-2,Hf=e=>e==="*";function Jy(e,t){let n=e.split("/"),r=n.length;return n.some(Hf)&&(r+=Xy),t&&(r+=Qy),n.filter(i=>!Hf(i)).reduce((i,o)=>i+(Hy.test(o)?Ky:o===""?Gy:Yy),r)}function Zy(e,t){return e.length===t.length&&e.slice(0,-1).every((r,i)=>r===t[i])?e[e.length-1]-t[t.length-1]:0}function qy(e,t,n){n===void 0&&(n=!1);let{routesMeta:r}=e,i={},o="/",l=[];for(let a=0;a{let{paramName:p,isOptional:v}=d;if(p==="*"){let y=a[c]||"";l=o.slice(0,o.length-y.length).replace(/(.)\/+$/,"$1")}const x=a[c];return v&&!x?u[p]=void 0:u[p]=(x||"").replace(/%2F/g,"/"),u},{}),pathname:o,pathnameBase:l,pattern:e}}function ev(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Jr(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],i="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(l,a,s)=>(r.push({paramName:a,isOptional:s!=null}),s?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),i+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?i+="\\/*$":e!==""&&e!=="/"&&(i+="(?:(?=\\/|$))"),[new RegExp(i,t?void 0:"i"),r]}function tv(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Jr(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function ii(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}function nv(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:i=""}=typeof e=="string"?Bn(e):e;return{pathname:n?n.startsWith("/")?n:rv(n,t):t,search:ov(r),hash:lv(i)}}function rv(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(i=>{i===".."?n.length>1&&n.pop():i!=="."&&n.push(i)}),n.length>1?n.join("/"):"/"}function Ya(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in and the router will parse it for you.'}function Jh(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function nc(e,t){let n=Jh(e);return t?n.map((r,i)=>i===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function rc(e,t,n,r){r===void 0&&(r=!1);let i;typeof e=="string"?i=Bn(e):(i=ye({},e),Z(!i.pathname||!i.pathname.includes("?"),Ya("?","pathname","search",i)),Z(!i.pathname||!i.pathname.includes("#"),Ya("#","pathname","hash",i)),Z(!i.search||!i.search.includes("#"),Ya("#","search","hash",i)));let o=e===""||i.pathname==="",l=o?"/":i.pathname,a;if(l==null)a=n;else{let c=t.length-1;if(!r&&l.startsWith("..")){let p=l.split("/");for(;p[0]==="..";)p.shift(),c-=1;i.pathname=p.join("/")}a=c>=0?t[c]:"/"}let s=nv(i,a),u=l&&l!=="/"&&l.endsWith("/"),d=(o||l===".")&&n.endsWith("/");return!s.pathname.endsWith("/")&&(u||d)&&(s.pathname+="/"),s}const ln=e=>e.join("/").replace(/\/\/+/g,"/"),iv=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),ov=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,lv=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;class Al{constructor(t,n,r,i){i===void 0&&(i=!1),this.status=t,this.statusText=n||"",this.internal=i,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}}function ia(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const Zh=["post","put","patch","delete"],av=new Set(Zh),sv=["get",...Zh],uv=new Set(sv),cv=new Set([301,302,303,307,308]),fv=new Set([307,308]),Xa={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},dv={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},vi={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},ic=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,pv=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),qh="remix-router-transitions";function hv(e){const t=e.window?e.window:typeof window<"u"?window:void 0,n=typeof t<"u"&&typeof t.document<"u"&&typeof t.document.createElement<"u",r=!n;Z(e.routes.length>0,"You must provide a non-empty routes array to createRouter");let i;if(e.mapRouteProperties)i=e.mapRouteProperties;else if(e.detectErrorBoundary){let S=e.detectErrorBoundary;i=k=>({hasErrorBoundary:S(k)})}else i=pv;let o={},l=Ml(e.routes,i,void 0,o),a,s=e.basename||"/",u=e.dataStrategy||vv,d=e.patchRoutesOnNavigation,c=ye({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1,v7_skipActionErrorRevalidation:!1},e.future),p=null,v=new Set,x=null,y=null,T=null,m=e.hydrationData!=null,h=Qn(l,e.history.location,s),g=null;if(h==null&&!d){let S=rt(404,{pathname:e.history.location.pathname}),{matches:k,route:E}=rd(l);h=k,g={[E.id]:S}}h&&!e.hydrationData&&Co(h,l,e.history.location.pathname).active&&(h=null);let C;if(h)if(h.some(S=>S.route.lazy))C=!1;else if(!h.some(S=>S.route.loader))C=!0;else if(c.v7_partialHydration){let S=e.hydrationData?e.hydrationData.loaderData:null,k=e.hydrationData?e.hydrationData.errors:null;if(k){let E=h.findIndex(O=>k[O.route.id]!==void 0);C=h.slice(0,E+1).every(O=>!Js(O.route,S,k))}else C=h.every(E=>!Js(E.route,S,k))}else C=e.hydrationData!=null;else if(C=!1,h=[],c.v7_partialHydration){let S=Co(null,l,e.history.location.pathname);S.active&&S.matches&&(h=S.matches)}let P,w={historyAction:e.history.action,location:e.history.location,matches:h,initialized:C,navigation:Xa,restoreScrollPosition:e.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||g,fetchers:new Map,blockers:new Map},R=Le.Pop,L=!1,M,f=!1,z=new Map,U=null,H=!1,X=!1,ze=[],nt=new Set,me=new Map,A=0,K=-1,Q=new Map,ne=new Set,de=new Map,$t=new Map,Fe=new Set,Rt=new Map,Xe=new Map,Yt;function Qm(){if(p=e.history.listen(S=>{let{action:k,location:E,delta:O}=S;if(Yt){Yt(),Yt=void 0;return}Jr(Xe.size===0||O!=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 $=Nc({currentLocation:w.location,nextLocation:E,historyAction:k});if($&&O!=null){let V=new Promise(G=>{Yt=G});e.history.go(O*-1),ko($,{state:"blocked",location:E,proceed(){ko($,{state:"proceeding",proceed:void 0,reset:void 0,location:E}),V.then(()=>e.history.go(O))},reset(){let G=new Map(w.blockers);G.set($,vi),Je({blockers:G})}});return}return Un(k,E)}),n){jv(t,z);let S=()=>Dv(t,z);t.addEventListener("pagehide",S),U=()=>t.removeEventListener("pagehide",S)}return w.initialized||Un(Le.Pop,w.location,{initialHydration:!0}),P}function Gm(){p&&p(),U&&U(),v.clear(),M&&M.abort(),w.fetchers.forEach((S,k)=>xo(k)),w.blockers.forEach((S,k)=>Rc(k))}function Ym(S){return v.add(S),()=>v.delete(S)}function Je(S,k){k===void 0&&(k={}),w=ye({},w,S);let E=[],O=[];c.v7_fetcherPersist&&w.fetchers.forEach(($,V)=>{$.state==="idle"&&(Fe.has(V)?O.push(V):E.push(V))}),[...v].forEach($=>$(w,{deletedFetchers:O,viewTransitionOpts:k.viewTransitionOpts,flushSync:k.flushSync===!0})),c.v7_fetcherPersist&&(E.forEach($=>w.fetchers.delete($)),O.forEach($=>xo($)))}function fr(S,k,E){var O,$;let{flushSync:V}=E===void 0?{}:E,G=w.actionData!=null&&w.navigation.formMethod!=null&&jt(w.navigation.formMethod)&&w.navigation.state==="loading"&&((O=S.state)==null?void 0:O._isRedirect)!==!0,b;k.actionData?Object.keys(k.actionData).length>0?b=k.actionData:b=null:G?b=w.actionData:b=null;let B=k.loaderData?td(w.loaderData,k.loaderData,k.matches||[],k.errors):w.loaderData,F=w.blockers;F.size>0&&(F=new Map(F),F.forEach((q,be)=>F.set(be,vi)));let W=L===!0||w.navigation.formMethod!=null&&jt(w.navigation.formMethod)&&(($=S.state)==null?void 0:$._isRedirect)!==!0;a&&(l=a,a=void 0),H||R===Le.Pop||(R===Le.Push?e.history.push(S,S.state):R===Le.Replace&&e.history.replace(S,S.state));let J;if(R===Le.Pop){let q=z.get(w.location.pathname);q&&q.has(S.pathname)?J={currentLocation:w.location,nextLocation:S}:z.has(S.pathname)&&(J={currentLocation:S,nextLocation:w.location})}else if(f){let q=z.get(w.location.pathname);q?q.add(S.pathname):(q=new Set([S.pathname]),z.set(w.location.pathname,q)),J={currentLocation:w.location,nextLocation:S}}Je(ye({},k,{actionData:b,loaderData:B,historyAction:R,location:S,initialized:!0,navigation:Xa,revalidation:"idle",restoreScrollPosition:Oc(S,k.matches||w.matches),preventScrollReset:W,blockers:F}),{viewTransitionOpts:J,flushSync:V===!0}),R=Le.Pop,L=!1,f=!1,H=!1,X=!1,ze=[]}async function xc(S,k){if(typeof S=="number"){e.history.go(S);return}let E=Xs(w.location,w.matches,s,c.v7_prependBasename,S,c.v7_relativeSplatPath,k==null?void 0:k.fromRouteId,k==null?void 0:k.relative),{path:O,submission:$,error:V}=Qf(c.v7_normalizeFormMethod,!1,E,k),G=w.location,b=io(w.location,O,k&&k.state);b=ye({},b,e.history.encodeLocation(b));let B=k&&k.replace!=null?k.replace:void 0,F=Le.Push;B===!0?F=Le.Replace:B===!1||$!=null&&jt($.formMethod)&&$.formAction===w.location.pathname+w.location.search&&(F=Le.Replace);let W=k&&"preventScrollReset"in k?k.preventScrollReset===!0:void 0,J=(k&&k.flushSync)===!0,q=Nc({currentLocation:G,nextLocation:b,historyAction:F});if(q){ko(q,{state:"blocked",location:b,proceed(){ko(q,{state:"proceeding",proceed:void 0,reset:void 0,location:b}),xc(S,k)},reset(){let be=new Map(w.blockers);be.set(q,vi),Je({blockers:be})}});return}return await Un(F,b,{submission:$,pendingError:V,preventScrollReset:W,replace:k&&k.replace,enableViewTransition:k&&k.viewTransition,flushSync:J})}function Xm(){if(wa(),Je({revalidation:"loading"}),w.navigation.state!=="submitting"){if(w.navigation.state==="idle"){Un(w.historyAction,w.location,{startUninterruptedRevalidation:!0});return}Un(R||w.historyAction,w.navigation.location,{overrideNavigation:w.navigation,enableViewTransition:f===!0})}}async function Un(S,k,E){M&&M.abort(),M=null,R=S,H=(E&&E.startUninterruptedRevalidation)===!0,l0(w.location,w.matches),L=(E&&E.preventScrollReset)===!0,f=(E&&E.enableViewTransition)===!0;let O=a||l,$=E&&E.overrideNavigation,V=Qn(O,k,s),G=(E&&E.flushSync)===!0,b=Co(V,O,k.pathname);if(b.active&&b.matches&&(V=b.matches),!V){let{error:ce,notFoundMatches:re,route:ke}=Sa(k.pathname);fr(k,{matches:re,loaderData:{},errors:{[ke.id]:ce}},{flushSync:G});return}if(w.initialized&&!X&&Ev(w.location,k)&&!(E&&E.submission&&jt(E.submission.formMethod))){fr(k,{matches:V},{flushSync:G});return}M=new AbortController;let B=gr(e.history,k,M.signal,E&&E.submission),F;if(E&&E.pendingError)F=[Gn(V).route.id,{type:ae.error,error:E.pendingError}];else if(E&&E.submission&&jt(E.submission.formMethod)){let ce=await Jm(B,k,E.submission,V,b.active,{replace:E.replace,flushSync:G});if(ce.shortCircuited)return;if(ce.pendingActionResult){let[re,ke]=ce.pendingActionResult;if(ft(ke)&&ia(ke.error)&&ke.error.status===404){M=null,fr(k,{matches:ce.matches,loaderData:{},errors:{[re]:ke.error}});return}}V=ce.matches||V,F=ce.pendingActionResult,$=Ja(k,E.submission),G=!1,b.active=!1,B=gr(e.history,B.url,B.signal)}let{shortCircuited:W,matches:J,loaderData:q,errors:be}=await Zm(B,k,V,b.active,$,E&&E.submission,E&&E.fetcherSubmission,E&&E.replace,E&&E.initialHydration===!0,G,F);W||(M=null,fr(k,ye({matches:J||V},nd(F),{loaderData:q,errors:be})))}async function Jm(S,k,E,O,$,V){V===void 0&&(V={}),wa();let G=Lv(k,E);if(Je({navigation:G},{flushSync:V.flushSync===!0}),$){let F=await Eo(O,k.pathname,S.signal);if(F.type==="aborted")return{shortCircuited:!0};if(F.type==="error"){let W=Gn(F.partialMatches).route.id;return{matches:F.partialMatches,pendingActionResult:[W,{type:ae.error,error:F.error}]}}else if(F.matches)O=F.matches;else{let{notFoundMatches:W,error:J,route:q}=Sa(k.pathname);return{matches:W,pendingActionResult:[q.id,{type:ae.error,error:J}]}}}let b,B=Ri(O,k);if(!B.route.action&&!B.route.lazy)b={type:ae.error,error:rt(405,{method:S.method,pathname:k.pathname,routeId:B.route.id})};else if(b=(await li("action",w,S,[B],O,null))[B.route.id],S.signal.aborted)return{shortCircuited:!0};if(Zn(b)){let F;return V&&V.replace!=null?F=V.replace:F=Zf(b.response.headers.get("Location"),new URL(S.url),s)===w.location.pathname+w.location.search,await Vn(S,b,!0,{submission:E,replace:F}),{shortCircuited:!0}}if(Pn(b))throw rt(400,{type:"defer-action"});if(ft(b)){let F=Gn(O,B.route.id);return(V&&V.replace)!==!0&&(R=Le.Push),{matches:O,pendingActionResult:[F.route.id,b]}}return{matches:O,pendingActionResult:[B.route.id,b]}}async function Zm(S,k,E,O,$,V,G,b,B,F,W){let J=$||Ja(k,V),q=V||G||od(J),be=!H&&(!c.v7_partialHydration||!B);if(O){if(be){let Ce=kc(W);Je(ye({navigation:J},Ce!==void 0?{actionData:Ce}:{}),{flushSync:F})}let te=await Eo(E,k.pathname,S.signal);if(te.type==="aborted")return{shortCircuited:!0};if(te.type==="error"){let Ce=Gn(te.partialMatches).route.id;return{matches:te.partialMatches,loaderData:{},errors:{[Ce]:te.error}}}else if(te.matches)E=te.matches;else{let{error:Ce,notFoundMatches:pr,route:ui}=Sa(k.pathname);return{matches:pr,loaderData:{},errors:{[ui.id]:Ce}}}}let ce=a||l,[re,ke]=Yf(e.history,w,E,q,k,c.v7_partialHydration&&B===!0,c.v7_skipActionErrorRevalidation,X,ze,nt,Fe,de,ne,ce,s,W);if(xa(te=>!(E&&E.some(Ce=>Ce.route.id===te))||re&&re.some(Ce=>Ce.route.id===te)),K=++A,re.length===0&&ke.length===0){let te=Pc();return fr(k,ye({matches:E,loaderData:{},errors:W&&ft(W[1])?{[W[0]]:W[1].error}:null},nd(W),te?{fetchers:new Map(w.fetchers)}:{}),{flushSync:F}),{shortCircuited:!0}}if(be){let te={};if(!O){te.navigation=J;let Ce=kc(W);Ce!==void 0&&(te.actionData=Ce)}ke.length>0&&(te.fetchers=qm(ke)),Je(te,{flushSync:F})}ke.forEach(te=>{gn(te.key),te.controller&&me.set(te.key,te.controller)});let dr=()=>ke.forEach(te=>gn(te.key));M&&M.signal.addEventListener("abort",dr);let{loaderResults:ai,fetcherResults:Jt}=await Cc(w,E,re,ke,S);if(S.signal.aborted)return{shortCircuited:!0};M&&M.signal.removeEventListener("abort",dr),ke.forEach(te=>me.delete(te.key));let Ft=Wo(ai);if(Ft)return await Vn(S,Ft.result,!0,{replace:b}),{shortCircuited:!0};if(Ft=Wo(Jt),Ft)return ne.add(Ft.key),await Vn(S,Ft.result,!0,{replace:b}),{shortCircuited:!0};let{loaderData:ka,errors:si}=ed(w,E,ai,W,ke,Jt,Rt);Rt.forEach((te,Ce)=>{te.subscribe(pr=>{(pr||te.done)&&Rt.delete(Ce)})}),c.v7_partialHydration&&B&&w.errors&&(si=ye({},w.errors,si));let Wn=Pc(),_o=Tc(K),Po=Wn||_o||ke.length>0;return ye({matches:E,loaderData:ka,errors:si},Po?{fetchers:new Map(w.fetchers)}:{})}function kc(S){if(S&&!ft(S[1]))return{[S[0]]:S[1].data};if(w.actionData)return Object.keys(w.actionData).length===0?null:w.actionData}function qm(S){return S.forEach(k=>{let E=w.fetchers.get(k.key),O=wi(void 0,E?E.data:void 0);w.fetchers.set(k.key,O)}),new Map(w.fetchers)}function e0(S,k,E,O){if(r)throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");gn(S);let $=(O&&O.flushSync)===!0,V=a||l,G=Xs(w.location,w.matches,s,c.v7_prependBasename,E,c.v7_relativeSplatPath,k,O==null?void 0:O.relative),b=Qn(V,G,s),B=Co(b,V,G);if(B.active&&B.matches&&(b=B.matches),!b){Xt(S,k,rt(404,{pathname:G}),{flushSync:$});return}let{path:F,submission:W,error:J}=Qf(c.v7_normalizeFormMethod,!0,G,O);if(J){Xt(S,k,J,{flushSync:$});return}let q=Ri(b,F),be=(O&&O.preventScrollReset)===!0;if(W&&jt(W.formMethod)){t0(S,k,F,q,b,B.active,$,be,W);return}de.set(S,{routeId:k,path:F}),n0(S,k,F,q,b,B.active,$,be,W)}async function t0(S,k,E,O,$,V,G,b,B){wa(),de.delete(S);function F(Ne){if(!Ne.route.action&&!Ne.route.lazy){let hr=rt(405,{method:B.formMethod,pathname:E,routeId:k});return Xt(S,k,hr,{flushSync:G}),!0}return!1}if(!V&&F(O))return;let W=w.fetchers.get(S);mn(S,Ov(B,W),{flushSync:G});let J=new AbortController,q=gr(e.history,E,J.signal,B);if(V){let Ne=await Eo($,E,q.signal);if(Ne.type==="aborted")return;if(Ne.type==="error"){Xt(S,k,Ne.error,{flushSync:G});return}else if(Ne.matches){if($=Ne.matches,O=Ri($,E),F(O))return}else{Xt(S,k,rt(404,{pathname:E}),{flushSync:G});return}}me.set(S,J);let be=A,re=(await li("action",w,q,[O],$,S))[O.route.id];if(q.signal.aborted){me.get(S)===J&&me.delete(S);return}if(c.v7_fetcherPersist&&Fe.has(S)){if(Zn(re)||ft(re)){mn(S,vn(void 0));return}}else{if(Zn(re))if(me.delete(S),K>be){mn(S,vn(void 0));return}else return ne.add(S),mn(S,wi(B)),Vn(q,re,!1,{fetcherSubmission:B,preventScrollReset:b});if(ft(re)){Xt(S,k,re.error);return}}if(Pn(re))throw rt(400,{type:"defer-action"});let ke=w.navigation.location||w.location,dr=gr(e.history,ke,J.signal),ai=a||l,Jt=w.navigation.state!=="idle"?Qn(ai,w.navigation.location,s):w.matches;Z(Jt,"Didn't find any matches after fetcher action");let Ft=++A;Q.set(S,Ft);let ka=wi(B,re.data);w.fetchers.set(S,ka);let[si,Wn]=Yf(e.history,w,Jt,B,ke,!1,c.v7_skipActionErrorRevalidation,X,ze,nt,Fe,de,ne,ai,s,[O.route.id,re]);Wn.filter(Ne=>Ne.key!==S).forEach(Ne=>{let hr=Ne.key,jc=w.fetchers.get(hr),u0=wi(void 0,jc?jc.data:void 0);w.fetchers.set(hr,u0),gn(hr),Ne.controller&&me.set(hr,Ne.controller)}),Je({fetchers:new Map(w.fetchers)});let _o=()=>Wn.forEach(Ne=>gn(Ne.key));J.signal.addEventListener("abort",_o);let{loaderResults:Po,fetcherResults:te}=await Cc(w,Jt,si,Wn,dr);if(J.signal.aborted)return;J.signal.removeEventListener("abort",_o),Q.delete(S),me.delete(S),Wn.forEach(Ne=>me.delete(Ne.key));let Ce=Wo(Po);if(Ce)return Vn(dr,Ce.result,!1,{preventScrollReset:b});if(Ce=Wo(te),Ce)return ne.add(Ce.key),Vn(dr,Ce.result,!1,{preventScrollReset:b});let{loaderData:pr,errors:ui}=ed(w,Jt,Po,void 0,Wn,te,Rt);if(w.fetchers.has(S)){let Ne=vn(re.data);w.fetchers.set(S,Ne)}Tc(Ft),w.navigation.state==="loading"&&Ft>K?(Z(R,"Expected pending action"),M&&M.abort(),fr(w.navigation.location,{matches:Jt,loaderData:pr,errors:ui,fetchers:new Map(w.fetchers)})):(Je({errors:ui,loaderData:td(w.loaderData,pr,Jt,ui),fetchers:new Map(w.fetchers)}),X=!1)}async function n0(S,k,E,O,$,V,G,b,B){let F=w.fetchers.get(S);mn(S,wi(B,F?F.data:void 0),{flushSync:G});let W=new AbortController,J=gr(e.history,E,W.signal);if(V){let re=await Eo($,E,J.signal);if(re.type==="aborted")return;if(re.type==="error"){Xt(S,k,re.error,{flushSync:G});return}else if(re.matches)$=re.matches,O=Ri($,E);else{Xt(S,k,rt(404,{pathname:E}),{flushSync:G});return}}me.set(S,W);let q=A,ce=(await li("loader",w,J,[O],$,S))[O.route.id];if(Pn(ce)&&(ce=await oc(ce,J.signal,!0)||ce),me.get(S)===W&&me.delete(S),!J.signal.aborted){if(Fe.has(S)){mn(S,vn(void 0));return}if(Zn(ce))if(K>q){mn(S,vn(void 0));return}else{ne.add(S),await Vn(J,ce,!1,{preventScrollReset:b});return}if(ft(ce)){Xt(S,k,ce.error);return}Z(!Pn(ce),"Unhandled fetcher deferred data"),mn(S,vn(ce.data))}}async function Vn(S,k,E,O){let{submission:$,fetcherSubmission:V,preventScrollReset:G,replace:b}=O===void 0?{}:O;k.response.headers.has("X-Remix-Revalidate")&&(X=!0);let B=k.response.headers.get("Location");Z(B,"Expected a Location header on the redirect Response"),B=Zf(B,new URL(S.url),s);let F=io(w.location,B,{_isRedirect:!0});if(n){let re=!1;if(k.response.headers.has("X-Remix-Reload-Document"))re=!0;else if(ic.test(B)){const ke=e.history.createURL(B);re=ke.origin!==t.location.origin||ii(ke.pathname,s)==null}if(re){b?t.location.replace(B):t.location.assign(B);return}}M=null;let W=b===!0||k.response.headers.has("X-Remix-Replace")?Le.Replace:Le.Push,{formMethod:J,formAction:q,formEncType:be}=w.navigation;!$&&!V&&J&&q&&be&&($=od(w.navigation));let ce=$||V;if(fv.has(k.response.status)&&ce&&jt(ce.formMethod))await Un(W,F,{submission:ye({},ce,{formAction:B}),preventScrollReset:G||L,enableViewTransition:E?f:void 0});else{let re=Ja(F,$);await Un(W,F,{overrideNavigation:re,fetcherSubmission:V,preventScrollReset:G||L,enableViewTransition:E?f:void 0})}}async function li(S,k,E,O,$,V){let G,b={};try{G=await wv(u,S,k,E,O,$,V,o,i)}catch(B){return O.forEach(F=>{b[F.route.id]={type:ae.error,error:B}}),b}for(let[B,F]of Object.entries(G))if(_v(F)){let W=F.result;b[B]={type:ae.redirect,response:kv(W,E,B,$,s,c.v7_relativeSplatPath)}}else b[B]=await xv(F);return b}async function Cc(S,k,E,O,$){let V=S.matches,G=li("loader",S,$,E,k,null),b=Promise.all(O.map(async W=>{if(W.matches&&W.match&&W.controller){let q=(await li("loader",S,gr(e.history,W.path,W.controller.signal),[W.match],W.matches,W.key))[W.match.route.id];return{[W.key]:q}}else return Promise.resolve({[W.key]:{type:ae.error,error:rt(404,{pathname:W.path})}})})),B=await G,F=(await b).reduce((W,J)=>Object.assign(W,J),{});return await Promise.all([Rv(k,B,$.signal,V,S.loaderData),Nv(k,F,O)]),{loaderResults:B,fetcherResults:F}}function wa(){X=!0,ze.push(...xa()),de.forEach((S,k)=>{me.has(k)&&nt.add(k),gn(k)})}function mn(S,k,E){E===void 0&&(E={}),w.fetchers.set(S,k),Je({fetchers:new Map(w.fetchers)},{flushSync:(E&&E.flushSync)===!0})}function Xt(S,k,E,O){O===void 0&&(O={});let $=Gn(w.matches,k);xo(S),Je({errors:{[$.route.id]:E},fetchers:new Map(w.fetchers)},{flushSync:(O&&O.flushSync)===!0})}function Ec(S){return c.v7_fetcherPersist&&($t.set(S,($t.get(S)||0)+1),Fe.has(S)&&Fe.delete(S)),w.fetchers.get(S)||dv}function xo(S){let k=w.fetchers.get(S);me.has(S)&&!(k&&k.state==="loading"&&Q.has(S))&&gn(S),de.delete(S),Q.delete(S),ne.delete(S),Fe.delete(S),nt.delete(S),w.fetchers.delete(S)}function r0(S){if(c.v7_fetcherPersist){let k=($t.get(S)||0)-1;k<=0?($t.delete(S),Fe.add(S)):$t.set(S,k)}else xo(S);Je({fetchers:new Map(w.fetchers)})}function gn(S){let k=me.get(S);k&&(k.abort(),me.delete(S))}function _c(S){for(let k of S){let E=Ec(k),O=vn(E.data);w.fetchers.set(k,O)}}function Pc(){let S=[],k=!1;for(let E of ne){let O=w.fetchers.get(E);Z(O,"Expected fetcher: "+E),O.state==="loading"&&(ne.delete(E),S.push(E),k=!0)}return _c(S),k}function Tc(S){let k=[];for(let[E,O]of Q)if(O0}function i0(S,k){let E=w.blockers.get(S)||vi;return Xe.get(S)!==k&&Xe.set(S,k),E}function Rc(S){w.blockers.delete(S),Xe.delete(S)}function ko(S,k){let E=w.blockers.get(S)||vi;Z(E.state==="unblocked"&&k.state==="blocked"||E.state==="blocked"&&k.state==="blocked"||E.state==="blocked"&&k.state==="proceeding"||E.state==="blocked"&&k.state==="unblocked"||E.state==="proceeding"&&k.state==="unblocked","Invalid blocker state transition: "+E.state+" -> "+k.state);let O=new Map(w.blockers);O.set(S,k),Je({blockers:O})}function Nc(S){let{currentLocation:k,nextLocation:E,historyAction:O}=S;if(Xe.size===0)return;Xe.size>1&&Jr(!1,"A router only supports one blocker at a time");let $=Array.from(Xe.entries()),[V,G]=$[$.length-1],b=w.blockers.get(V);if(!(b&&b.state==="proceeding")&&G({currentLocation:k,nextLocation:E,historyAction:O}))return V}function Sa(S){let k=rt(404,{pathname:S}),E=a||l,{matches:O,route:$}=rd(E);return xa(),{notFoundMatches:O,route:$,error:k}}function xa(S){let k=[];return Rt.forEach((E,O)=>{(!S||S(O))&&(E.cancel(),k.push(O),Rt.delete(O))}),k}function o0(S,k,E){if(x=S,T=k,y=E||null,!m&&w.navigation===Xa){m=!0;let O=Oc(w.location,w.matches);O!=null&&Je({restoreScrollPosition:O})}return()=>{x=null,T=null,y=null}}function Lc(S,k){return y&&y(S,k.map(O=>Vy(O,w.loaderData)))||S.key}function l0(S,k){if(x&&T){let E=Lc(S,k);x[E]=T()}}function Oc(S,k){if(x){let E=Lc(S,k),O=x[E];if(typeof O=="number")return O}return null}function Co(S,k,E){if(d)if(S){if(Object.keys(S[0].params).length>0)return{active:!0,matches:ll(k,E,s,!0)}}else return{active:!0,matches:ll(k,E,s,!0)||[]};return{active:!1,matches:null}}async function Eo(S,k,E){if(!d)return{type:"success",matches:S};let O=S;for(;;){let $=a==null,V=a||l,G=o;try{await d({path:k,matches:O,patch:(F,W)=>{E.aborted||Jf(F,W,V,G,i)}})}catch(F){return{type:"error",error:F,partialMatches:O}}finally{$&&!E.aborted&&(l=[...l])}if(E.aborted)return{type:"aborted"};let b=Qn(V,k,s);if(b)return{type:"success",matches:b};let B=ll(V,k,s,!0);if(!B||O.length===B.length&&O.every((F,W)=>F.route.id===B[W].route.id))return{type:"success",matches:null};O=B}}function a0(S){o={},a=Ml(S,i,void 0,o)}function s0(S,k){let E=a==null;Jf(S,k,a||l,o,i),E&&(l=[...l],Je({}))}return P={get basename(){return s},get future(){return c},get state(){return w},get routes(){return l},get window(){return t},initialize:Qm,subscribe:Ym,enableScrollRestoration:o0,navigate:xc,fetch:e0,revalidate:Xm,createHref:S=>e.history.createHref(S),encodeLocation:S=>e.history.encodeLocation(S),getFetcher:Ec,deleteFetcher:r0,dispose:Gm,getBlocker:i0,deleteBlocker:Rc,patchRoutes:s0,_internalFetchControllers:me,_internalActiveDeferreds:Rt,_internalSetRoutes:a0},P}function mv(e){return e!=null&&("formData"in e&&e.formData!=null||"body"in e&&e.body!==void 0)}function Xs(e,t,n,r,i,o,l,a){let s,u;if(l){s=[];for(let c of t)if(s.push(c),c.route.id===l){u=c;break}}else s=t,u=t[t.length-1];let d=rc(i||".",nc(s,o),ii(e.pathname,n)||e.pathname,a==="path");if(i==null&&(d.search=e.search,d.hash=e.hash),(i==null||i===""||i===".")&&u){let c=lc(d.search);if(u.route.index&&!c)d.search=d.search?d.search.replace(/^\?/,"?index&"):"?index";else if(!u.route.index&&c){let p=new URLSearchParams(d.search),v=p.getAll("index");p.delete("index"),v.filter(y=>y).forEach(y=>p.append("index",y));let x=p.toString();d.search=x?"?"+x:""}}return r&&n!=="/"&&(d.pathname=d.pathname==="/"?n:ln([n,d.pathname])),lr(d)}function Qf(e,t,n,r){if(!r||!mv(r))return{path:n};if(r.formMethod&&!Tv(r.formMethod))return{path:n,error:rt(405,{method:r.formMethod})};let i=()=>({path:n,error:rt(400,{type:"invalid-body"})}),o=r.formMethod||"get",l=e?o.toUpperCase():o.toLowerCase(),a=nm(n);if(r.body!==void 0){if(r.formEncType==="text/plain"){if(!jt(l))return i();let p=typeof r.body=="string"?r.body:r.body instanceof FormData||r.body instanceof URLSearchParams?Array.from(r.body.entries()).reduce((v,x)=>{let[y,T]=x;return""+v+y+"="+T+` +`},""):String(r.body);return{path:n,submission:{formMethod:l,formAction:a,formEncType:r.formEncType,formData:void 0,json:void 0,text:p}}}else if(r.formEncType==="application/json"){if(!jt(l))return i();try{let p=typeof r.body=="string"?JSON.parse(r.body):r.body;return{path:n,submission:{formMethod:l,formAction:a,formEncType:r.formEncType,formData:void 0,json:p,text:void 0}}}catch{return i()}}}Z(typeof FormData=="function","FormData is not available in this environment");let s,u;if(r.formData)s=Zs(r.formData),u=r.formData;else if(r.body instanceof FormData)s=Zs(r.body),u=r.body;else if(r.body instanceof URLSearchParams)s=r.body,u=qf(s);else if(r.body==null)s=new URLSearchParams,u=new FormData;else try{s=new URLSearchParams(r.body),u=qf(s)}catch{return i()}let d={formMethod:l,formAction:a,formEncType:r&&r.formEncType||"application/x-www-form-urlencoded",formData:u,json:void 0,text:void 0};if(jt(d.formMethod))return{path:n,submission:d};let c=Bn(n);return t&&c.search&&lc(c.search)&&s.append("index",""),c.search="?"+s,{path:lr(c),submission:d}}function Gf(e,t,n){n===void 0&&(n=!1);let r=e.findIndex(i=>i.route.id===t);return r>=0?e.slice(0,n?r+1:r):e}function Yf(e,t,n,r,i,o,l,a,s,u,d,c,p,v,x,y){let T=y?ft(y[1])?y[1].error:y[1].data:void 0,m=e.createURL(t.location),h=e.createURL(i),g=n;o&&t.errors?g=Gf(n,Object.keys(t.errors)[0],!0):y&&ft(y[1])&&(g=Gf(n,y[0]));let C=y?y[1].statusCode:void 0,P=l&&C&&C>=400,w=g.filter((L,M)=>{let{route:f}=L;if(f.lazy)return!0;if(f.loader==null)return!1;if(o)return Js(f,t.loaderData,t.errors);if(gv(t.loaderData,t.matches[M],L)||s.some(H=>H===L.route.id))return!0;let z=t.matches[M],U=L;return Xf(L,ye({currentUrl:m,currentParams:z.params,nextUrl:h,nextParams:U.params},r,{actionResult:T,actionStatus:C,defaultShouldRevalidate:P?!1:a||m.pathname+m.search===h.pathname+h.search||m.search!==h.search||em(z,U)}))}),R=[];return c.forEach((L,M)=>{if(o||!n.some(X=>X.route.id===L.routeId)||d.has(M))return;let f=Qn(v,L.path,x);if(!f){R.push({key:M,routeId:L.routeId,path:L.path,matches:null,match:null,controller:null});return}let z=t.fetchers.get(M),U=Ri(f,L.path),H=!1;p.has(M)?H=!1:u.has(M)?(u.delete(M),H=!0):z&&z.state!=="idle"&&z.data===void 0?H=a:H=Xf(U,ye({currentUrl:m,currentParams:t.matches[t.matches.length-1].params,nextUrl:h,nextParams:n[n.length-1].params},r,{actionResult:T,actionStatus:C,defaultShouldRevalidate:P?!1:a})),H&&R.push({key:M,routeId:L.routeId,path:L.path,matches:f,match:U,controller:new AbortController})}),[w,R]}function Js(e,t,n){if(e.lazy)return!0;if(!e.loader)return!1;let r=t!=null&&t[e.id]!==void 0,i=n!=null&&n[e.id]!==void 0;return!r&&i?!1:typeof e.loader=="function"&&e.loader.hydrate===!0?!0:!r&&!i}function gv(e,t,n){let r=!t||n.route.id!==t.route.id,i=e[n.route.id]===void 0;return r||i}function em(e,t){let n=e.route.path;return e.pathname!==t.pathname||n!=null&&n.endsWith("*")&&e.params["*"]!==t.params["*"]}function Xf(e,t){if(e.route.shouldRevalidate){let n=e.route.shouldRevalidate(t);if(typeof n=="boolean")return n}return t.defaultShouldRevalidate}function Jf(e,t,n,r,i){var o;let l;if(e){let u=r[e];Z(u,"No route found to patch children into: routeId = "+e),u.children||(u.children=[]),l=u.children}else l=n;let a=t.filter(u=>!l.some(d=>tm(u,d))),s=Ml(a,i,[e||"_","patch",String(((o=l)==null?void 0:o.length)||"0")],r);l.push(...s)}function tm(e,t){return"id"in e&&"id"in t&&e.id===t.id?!0:e.index===t.index&&e.path===t.path&&e.caseSensitive===t.caseSensitive?(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:e.children.every((n,r)=>{var i;return(i=t.children)==null?void 0:i.some(o=>tm(n,o))}):!1}async function yv(e,t,n){if(!e.lazy)return;let r=await e.lazy();if(!e.lazy)return;let i=n[e.id];Z(i,"No route found in manifest");let o={};for(let l in r){let s=i[l]!==void 0&&l!=="hasErrorBoundary";Jr(!s,'Route "'+i.id+'" has a static property "'+l+'" defined but its lazy function is also returning a value for this property. '+('The lazy route property "'+l+'" will be ignored.')),!s&&!By.has(l)&&(o[l]=r[l])}Object.assign(i,o),Object.assign(i,ye({},t(i),{lazy:void 0}))}async function vv(e){let{matches:t}=e,n=t.filter(i=>i.shouldLoad);return(await Promise.all(n.map(i=>i.resolve()))).reduce((i,o,l)=>Object.assign(i,{[n[l].route.id]:o}),{})}async function wv(e,t,n,r,i,o,l,a,s,u){let d=o.map(v=>v.route.lazy?yv(v.route,s,a):void 0),c=o.map((v,x)=>{let y=d[x],T=i.some(h=>h.route.id===v.route.id);return ye({},v,{shouldLoad:T,resolve:async h=>(h&&r.method==="GET"&&(v.route.lazy||v.route.loader)&&(T=!0),T?Sv(t,r,v,y,h,u):Promise.resolve({type:ae.data,result:void 0}))})}),p=await e({matches:c,request:r,params:o[0].params,fetcherKey:l,context:u});try{await Promise.all(d)}catch{}return p}async function Sv(e,t,n,r,i,o){let l,a,s=u=>{let d,c=new Promise((x,y)=>d=y);a=()=>d(),t.signal.addEventListener("abort",a);let p=x=>typeof u!="function"?Promise.reject(new Error("You cannot call the handler for a route which defines a boolean "+('"'+e+'" [routeId: '+n.route.id+"]"))):u({request:t,params:n.params,context:o},...x!==void 0?[x]:[]),v=(async()=>{try{return{type:"data",result:await(i?i(y=>p(y)):p())}}catch(x){return{type:"error",result:x}}})();return Promise.race([v,c])};try{let u=n.route[e];if(r)if(u){let d,[c]=await Promise.all([s(u).catch(p=>{d=p}),r]);if(d!==void 0)throw d;l=c}else if(await r,u=n.route[e],u)l=await s(u);else if(e==="action"){let d=new URL(t.url),c=d.pathname+d.search;throw rt(405,{method:t.method,pathname:c,routeId:n.route.id})}else return{type:ae.data,result:void 0};else if(u)l=await s(u);else{let d=new URL(t.url),c=d.pathname+d.search;throw rt(404,{pathname:c})}Z(l.result!==void 0,"You defined "+(e==="action"?"an action":"a loader")+" for route "+('"'+n.route.id+"\" but didn't return anything from your `"+e+"` ")+"function. Please return a value or `null`.")}catch(u){return{type:ae.error,result:u}}finally{a&&t.signal.removeEventListener("abort",a)}return l}async function xv(e){let{result:t,type:n}=e;if(rm(t)){let u;try{let d=t.headers.get("Content-Type");d&&/\bapplication\/json\b/.test(d)?t.body==null?u=null:u=await t.json():u=await t.text()}catch(d){return{type:ae.error,error:d}}return n===ae.error?{type:ae.error,error:new Al(t.status,t.statusText,u),statusCode:t.status,headers:t.headers}:{type:ae.data,data:u,statusCode:t.status,headers:t.headers}}if(n===ae.error){if(id(t)){var r;if(t.data instanceof Error){var i;return{type:ae.error,error:t.data,statusCode:(i=t.init)==null?void 0:i.status}}t=new Al(((r=t.init)==null?void 0:r.status)||500,void 0,t.data)}return{type:ae.error,error:t,statusCode:ia(t)?t.status:void 0}}if(Pv(t)){var o,l;return{type:ae.deferred,deferredData:t,statusCode:(o=t.init)==null?void 0:o.status,headers:((l=t.init)==null?void 0:l.headers)&&new Headers(t.init.headers)}}if(id(t)){var a,s;return{type:ae.data,data:t.data,statusCode:(a=t.init)==null?void 0:a.status,headers:(s=t.init)!=null&&s.headers?new Headers(t.init.headers):void 0}}return{type:ae.data,data:t}}function kv(e,t,n,r,i,o){let l=e.headers.get("Location");if(Z(l,"Redirects returned/thrown from loaders/actions must have a Location header"),!ic.test(l)){let a=r.slice(0,r.findIndex(s=>s.route.id===n)+1);l=Xs(new URL(t.url),a,i,!0,l,o),e.headers.set("Location",l)}return e}function Zf(e,t,n){if(ic.test(e)){let r=e,i=r.startsWith("//")?new URL(t.protocol+r):new URL(r),o=ii(i.pathname,n)!=null;if(i.origin===t.origin&&o)return i.pathname+i.search+i.hash}return e}function gr(e,t,n,r){let i=e.createURL(nm(t)).toString(),o={signal:n};if(r&&jt(r.formMethod)){let{formMethod:l,formEncType:a}=r;o.method=l.toUpperCase(),a==="application/json"?(o.headers=new Headers({"Content-Type":a}),o.body=JSON.stringify(r.json)):a==="text/plain"?o.body=r.text:a==="application/x-www-form-urlencoded"&&r.formData?o.body=Zs(r.formData):o.body=r.formData}return new Request(i,o)}function Zs(e){let t=new URLSearchParams;for(let[n,r]of e.entries())t.append(n,typeof r=="string"?r:r.name);return t}function qf(e){let t=new FormData;for(let[n,r]of e.entries())t.append(n,r);return t}function Cv(e,t,n,r,i){let o={},l=null,a,s=!1,u={},d=n&&ft(n[1])?n[1].error:void 0;return e.forEach(c=>{if(!(c.route.id in t))return;let p=c.route.id,v=t[p];if(Z(!Zn(v),"Cannot handle redirect results in processLoaderData"),ft(v)){let x=v.error;d!==void 0&&(x=d,d=void 0),l=l||{};{let y=Gn(e,p);l[y.route.id]==null&&(l[y.route.id]=x)}o[p]=void 0,s||(s=!0,a=ia(v.error)?v.error.status:500),v.headers&&(u[p]=v.headers)}else Pn(v)?(r.set(p,v.deferredData),o[p]=v.deferredData.data,v.statusCode!=null&&v.statusCode!==200&&!s&&(a=v.statusCode),v.headers&&(u[p]=v.headers)):(o[p]=v.data,v.statusCode&&v.statusCode!==200&&!s&&(a=v.statusCode),v.headers&&(u[p]=v.headers))}),d!==void 0&&n&&(l={[n[0]]:d},o[n[0]]=void 0),{loaderData:o,errors:l,statusCode:a||200,loaderHeaders:u}}function ed(e,t,n,r,i,o,l){let{loaderData:a,errors:s}=Cv(t,n,r,l);return i.forEach(u=>{let{key:d,match:c,controller:p}=u,v=o[d];if(Z(v,"Did not find corresponding fetcher result"),!(p&&p.signal.aborted))if(ft(v)){let x=Gn(e.matches,c==null?void 0:c.route.id);s&&s[x.route.id]||(s=ye({},s,{[x.route.id]:v.error})),e.fetchers.delete(d)}else if(Zn(v))Z(!1,"Unhandled fetcher revalidation redirect");else if(Pn(v))Z(!1,"Unhandled fetcher deferred data");else{let x=vn(v.data);e.fetchers.set(d,x)}}),{loaderData:a,errors:s}}function td(e,t,n,r){let i=ye({},t);for(let o of n){let l=o.route.id;if(t.hasOwnProperty(l)?t[l]!==void 0&&(i[l]=t[l]):e[l]!==void 0&&o.route.loader&&(i[l]=e[l]),r&&r.hasOwnProperty(l))break}return i}function nd(e){return e?ft(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Gn(e,t){return(t?e.slice(0,e.findIndex(r=>r.route.id===t)+1):[...e]).reverse().find(r=>r.route.hasErrorBoundary===!0)||e[0]}function rd(e){let t=e.length===1?e[0]:e.find(n=>n.index||!n.path||n.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function rt(e,t){let{pathname:n,routeId:r,method:i,type:o,message:l}=t===void 0?{}:t,a="Unknown Server Error",s="Unknown @remix-run/router error";return e===400?(a="Bad Request",i&&n&&r?s="You made a "+i+' request to "'+n+'" but '+('did not provide a `loader` for route "'+r+'", ')+"so there is no way to handle the request.":o==="defer-action"?s="defer() is not supported in actions":o==="invalid-body"&&(s="Unable to encode submission body")):e===403?(a="Forbidden",s='Route "'+r+'" does not match URL "'+n+'"'):e===404?(a="Not Found",s='No route matches URL "'+n+'"'):e===405&&(a="Method Not Allowed",i&&n&&r?s="You made a "+i.toUpperCase()+' request to "'+n+'" but '+('did not provide an `action` for route "'+r+'", ')+"so there is no way to handle the request.":i&&(s='Invalid request method "'+i.toUpperCase()+'"')),new Al(e||500,a,new Error(s),!0)}function Wo(e){let t=Object.entries(e);for(let n=t.length-1;n>=0;n--){let[r,i]=t[n];if(Zn(i))return{key:r,result:i}}}function nm(e){let t=typeof e=="string"?Bn(e):e;return lr(ye({},t,{hash:""}))}function Ev(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===""?t.hash!=="":e.hash===t.hash?!0:t.hash!==""}function _v(e){return rm(e.result)&&cv.has(e.result.status)}function Pn(e){return e.type===ae.deferred}function ft(e){return e.type===ae.error}function Zn(e){return(e&&e.type)===ae.redirect}function id(e){return typeof e=="object"&&e!=null&&"type"in e&&"data"in e&&"init"in e&&e.type==="DataWithResponseInit"}function Pv(e){let t=e;return t&&typeof t=="object"&&typeof t.data=="object"&&typeof t.subscribe=="function"&&typeof t.cancel=="function"&&typeof t.resolveData=="function"}function rm(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body<"u"}function Tv(e){return uv.has(e.toLowerCase())}function jt(e){return av.has(e.toLowerCase())}async function Rv(e,t,n,r,i){let o=Object.entries(t);for(let l=0;l(p==null?void 0:p.route.id)===a);if(!u)continue;let d=r.find(p=>p.route.id===u.route.id),c=d!=null&&!em(d,u)&&(i&&i[u.route.id])!==void 0;Pn(s)&&c&&await oc(s,n,!1).then(p=>{p&&(t[a]=p)})}}async function Nv(e,t,n){for(let r=0;r(u==null?void 0:u.route.id)===o)&&Pn(a)&&(Z(l,"Expected an AbortController for revalidating fetcher deferred result"),await oc(a,l.signal,!0).then(u=>{u&&(t[i]=u)}))}}async function oc(e,t,n){if(n===void 0&&(n=!1),!await e.deferredData.resolveData(t)){if(n)try{return{type:ae.data,data:e.deferredData.unwrappedData}}catch(i){return{type:ae.error,error:i}}return{type:ae.data,data:e.deferredData.data}}}function lc(e){return new URLSearchParams(e).getAll("index").some(t=>t==="")}function Ri(e,t){let n=typeof t=="string"?Bn(t).search:t.search;if(e[e.length-1].route.index&&lc(n||""))return e[e.length-1];let r=Jh(e);return r[r.length-1]}function od(e){let{formMethod:t,formAction:n,formEncType:r,text:i,formData:o,json:l}=e;if(!(!t||!n||!r)){if(i!=null)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:void 0,text:i};if(o!=null)return{formMethod:t,formAction:n,formEncType:r,formData:o,json:void 0,text:void 0};if(l!==void 0)return{formMethod:t,formAction:n,formEncType:r,formData:void 0,json:l,text:void 0}}}function Ja(e,t){return t?{state:"loading",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function Lv(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function wi(e,t){return e?{state:"loading",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function Ov(e,t){return{state:"submitting",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function vn(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function jv(e,t){try{let n=e.sessionStorage.getItem(qh);if(n){let r=JSON.parse(n);for(let[i,o]of Object.entries(r||{}))o&&Array.isArray(o)&&t.set(i,new Set(o||[]))}}catch{}}function Dv(e,t){if(t.size>0){let n={};for(let[r,i]of t)n[r]=[...i];try{e.sessionStorage.setItem(qh,JSON.stringify(n))}catch(r){Jr(!1,"Failed to save applied view transitions in sessionStorage ("+r+").")}}}/** + * React Router v6.27.0 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function Il(){return Il=Object.assign?Object.assign.bind():function(e){for(var t=1;t{a.current=!0}),N.useCallback(function(u,d){if(d===void 0&&(d={}),!a.current)return;if(typeof u=="number"){r.go(u);return}let c=rc(u,JSON.parse(l),o,d.relative==="path");e==null&&t!=="/"&&(c.pathname=c.pathname==="/"?t:ln([t,c.pathname])),(d.replace?r.replace:r.push)(c,d.state,d)},[t,r,l,o,e])}const am=N.createContext(null);function sc(){return N.useContext(am)}function Iv(e){let t=N.useContext(hn).outlet;return t&&N.createElement(am.Provider,{value:e},t)}function $v(){let{matches:e}=N.useContext(hn),t=e[e.length-1];return t?t.params:{}}function sm(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=N.useContext(cr),{matches:i}=N.useContext(hn),{pathname:o}=la(),l=JSON.stringify(nc(i,r.v7_relativeSplatPath));return N.useMemo(()=>rc(e,JSON.parse(l),o,n==="path"),[e,l,o,n])}function Fv(e,t,n,r){go()||Z(!1);let{navigator:i}=N.useContext(cr),{matches:o}=N.useContext(hn),l=o[o.length-1],a=l?l.params:{};l&&l.pathname;let s=l?l.pathnameBase:"/";l&&l.route;let u=la(),d;d=u;let c=d.pathname||"/",p=c;if(s!=="/"){let y=s.replace(/^\//,"").split("/");p="/"+c.replace(/^\//,"").split("/").slice(y.length).join("/")}let v=Qn(e,{pathname:p});return Wv(v&&v.map(y=>Object.assign({},y,{params:Object.assign({},a,y.params),pathname:ln([s,i.encodeLocation?i.encodeLocation(y.pathname).pathname:y.pathname]),pathnameBase:y.pathnameBase==="/"?s:ln([s,i.encodeLocation?i.encodeLocation(y.pathnameBase).pathname:y.pathnameBase])})),o,n,r)}function bv(){let e=Gv(),t=ia(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,i={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return N.createElement(N.Fragment,null,N.createElement("h2",null,"Unexpected Application Error!"),N.createElement("h3",{style:{fontStyle:"italic"}},t),n?N.createElement("pre",{style:i},n):null,null)}const Bv=N.createElement(bv,null);class Uv extends N.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?N.createElement(hn.Provider,{value:this.props.routeContext},N.createElement(om.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Vv(e){let{routeContext:t,match:n,children:r}=e,i=N.useContext(oa);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),N.createElement(hn.Provider,{value:t},r)}function Wv(e,t,n,r){var i;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var o;if(!n)return null;if(n.errors)e=n.matches;else if((o=r)!=null&&o.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let l=e,a=(i=n)==null?void 0:i.errors;if(a!=null){let d=l.findIndex(c=>c.route.id&&(a==null?void 0:a[c.route.id])!==void 0);d>=0||Z(!1),l=l.slice(0,Math.min(l.length,d+1))}let s=!1,u=-1;if(n&&r&&r.v7_partialHydration)for(let d=0;d=0?l=l.slice(0,u+1):l=[l[0]];break}}}return l.reduceRight((d,c,p)=>{let v,x=!1,y=null,T=null;n&&(v=a&&c.route.id?a[c.route.id]:void 0,y=c.route.errorElement||Bv,s&&(u<0&&p===0?(Xv("route-fallback"),x=!0,T=null):u===p&&(x=!0,T=c.route.hydrateFallbackElement||null)));let m=t.concat(l.slice(0,p+1)),h=()=>{let g;return v?g=y:x?g=T:c.route.Component?g=N.createElement(c.route.Component,null):c.route.element?g=c.route.element:g=d,N.createElement(Vv,{match:c,routeContext:{outlet:d,matches:m,isDataRoute:n!=null},children:g})};return n&&(c.route.ErrorBoundary||c.route.errorElement||p===0)?N.createElement(Uv,{location:n.location,revalidation:n.revalidation,component:y,error:v,children:h(),routeContext:{outlet:null,matches:m,isDataRoute:!0}}):h()},null)}var um=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(um||{}),$l=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}($l||{});function Hv(e){let t=N.useContext(oa);return t||Z(!1),t}function Kv(e){let t=N.useContext(im);return t||Z(!1),t}function Qv(e){let t=N.useContext(hn);return t||Z(!1),t}function cm(e){let t=Qv(),n=t.matches[t.matches.length-1];return n.route.id||Z(!1),n.route.id}function Gv(){var e;let t=N.useContext(om),n=Kv($l.UseRouteError),r=cm($l.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function Yv(){let{router:e}=Hv(um.UseNavigateStable),t=cm($l.UseNavigateStable),n=N.useRef(!1);return lm(()=>{n.current=!0}),N.useCallback(function(i,o){o===void 0&&(o={}),n.current&&(typeof i=="number"?e.navigate(i):e.navigate(i,Il({fromRouteId:t},o)))},[e,t])}const ld={};function Xv(e,t,n){ld[e]||(ld[e]=!0)}function Jv(e){return Iv(e.context)}function Zv(e){let{basename:t="/",children:n=null,location:r,navigationType:i=Le.Pop,navigator:o,static:l=!1,future:a}=e;go()&&Z(!1);let s=t.replace(/^\/*/,"/"),u=N.useMemo(()=>({basename:s,navigator:o,static:l,future:Il({v7_relativeSplatPath:!1},a)}),[s,a,o,l]);typeof r=="string"&&(r=Bn(r));let{pathname:d="/",search:c="",hash:p="",state:v=null,key:x="default"}=r,y=N.useMemo(()=>{let T=ii(d,s);return T==null?null:{location:{pathname:T,search:c,hash:p,state:v,key:x},navigationType:i}},[s,d,c,p,v,x,i]);return y==null?null:N.createElement(cr.Provider,{value:u},N.createElement(ac.Provider,{children:n,value:y}))}new Promise(()=>{});function qv(e){let t={hasErrorBoundary:e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&Object.assign(t,{element:N.createElement(e.Component),Component:void 0}),e.HydrateFallback&&Object.assign(t,{hydrateFallbackElement:N.createElement(e.HydrateFallback),HydrateFallback:void 0}),e.ErrorBoundary&&Object.assign(t,{errorElement:N.createElement(e.ErrorBoundary),ErrorBoundary:void 0}),t}/** + * React Router DOM v6.27.0 + * + * Copyright (c) Remix Software Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE.md file in the root directory of this source tree. + * + * @license MIT + */function oo(){return oo=Object.assign?Object.assign.bind():function(e){for(var t=1;t=0)&&(n[i]=e[i]);return n}function t1(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function n1(e,t){return e.button===0&&(!t||t==="_self")&&!t1(e)}const r1=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],i1="6";try{window.__reactRouterVersion=i1}catch{}function o1(e,t){return hv({basename:void 0,future:oo({},void 0,{v7_prependBasename:!0}),history:$y({window:void 0}),hydrationData:l1(),routes:e,mapRouteProperties:qv,dataStrategy:void 0,patchRoutesOnNavigation:void 0,window:void 0}).initialize()}function l1(){var e;let t=(e=window)==null?void 0:e.__staticRouterHydrationData;return t&&t.errors&&(t=oo({},t,{errors:a1(t.errors)})),t}function a1(e){if(!e)return null;let t=Object.entries(e),n={};for(let[r,i]of t)if(i&&i.__type==="RouteErrorResponse")n[r]=new Al(i.status,i.statusText,i.data,i.internal===!0);else if(i&&i.__type==="Error"){if(i.__subType){let o=window[i.__subType];if(typeof o=="function")try{let l=new o(i.message);l.stack="",n[r]=l}catch{}}if(n[r]==null){let o=new Error(i.message);o.stack="",n[r]=o}}else n[r]=i;return n}const s1=N.createContext({isTransitioning:!1}),u1=N.createContext(new Map),c1="startTransition",ad=rs[c1],f1="flushSync",sd=Iy[f1];function d1(e){ad?ad(e):e()}function Si(e){sd?sd(e):e()}class p1{constructor(){this.status="pending",this.promise=new Promise((t,n)=>{this.resolve=r=>{this.status==="pending"&&(this.status="resolved",t(r))},this.reject=r=>{this.status==="pending"&&(this.status="rejected",n(r))}})}}function h1(e){let{fallbackElement:t,router:n,future:r}=e,[i,o]=N.useState(n.state),[l,a]=N.useState(),[s,u]=N.useState({isTransitioning:!1}),[d,c]=N.useState(),[p,v]=N.useState(),[x,y]=N.useState(),T=N.useRef(new Map),{v7_startTransition:m}=r||{},h=N.useCallback(L=>{m?d1(L):L()},[m]),g=N.useCallback((L,M)=>{let{deletedFetchers:f,flushSync:z,viewTransitionOpts:U}=M;f.forEach(X=>T.current.delete(X)),L.fetchers.forEach((X,ze)=>{X.data!==void 0&&T.current.set(ze,X.data)});let H=n.window==null||n.window.document==null||typeof n.window.document.startViewTransition!="function";if(!U||H){z?Si(()=>o(L)):h(()=>o(L));return}if(z){Si(()=>{p&&(d&&d.resolve(),p.skipTransition()),u({isTransitioning:!0,flushSync:!0,currentLocation:U.currentLocation,nextLocation:U.nextLocation})});let X=n.window.document.startViewTransition(()=>{Si(()=>o(L))});X.finished.finally(()=>{Si(()=>{c(void 0),v(void 0),a(void 0),u({isTransitioning:!1})})}),Si(()=>v(X));return}p?(d&&d.resolve(),p.skipTransition(),y({state:L,currentLocation:U.currentLocation,nextLocation:U.nextLocation})):(a(L),u({isTransitioning:!0,flushSync:!1,currentLocation:U.currentLocation,nextLocation:U.nextLocation}))},[n.window,p,d,T,h]);N.useLayoutEffect(()=>n.subscribe(g),[n,g]),N.useEffect(()=>{s.isTransitioning&&!s.flushSync&&c(new p1)},[s]),N.useEffect(()=>{if(d&&l&&n.window){let L=l,M=d.promise,f=n.window.document.startViewTransition(async()=>{h(()=>o(L)),await M});f.finished.finally(()=>{c(void 0),v(void 0),a(void 0),u({isTransitioning:!1})}),v(f)}},[h,l,d,n.window]),N.useEffect(()=>{d&&l&&i.location.key===l.location.key&&d.resolve()},[d,p,i.location,l]),N.useEffect(()=>{!s.isTransitioning&&x&&(a(x.state),u({isTransitioning:!0,flushSync:!1,currentLocation:x.currentLocation,nextLocation:x.nextLocation}),y(void 0))},[s.isTransitioning,x]),N.useEffect(()=>{},[]);let C=N.useMemo(()=>({createHref:n.createHref,encodeLocation:n.encodeLocation,go:L=>n.navigate(L),push:(L,M,f)=>n.navigate(L,{state:M,preventScrollReset:f==null?void 0:f.preventScrollReset}),replace:(L,M,f)=>n.navigate(L,{replace:!0,state:M,preventScrollReset:f==null?void 0:f.preventScrollReset})}),[n]),P=n.basename||"/",w=N.useMemo(()=>({router:n,navigator:C,static:!1,basename:P}),[n,C,P]),R=N.useMemo(()=>({v7_relativeSplatPath:n.future.v7_relativeSplatPath}),[n.future.v7_relativeSplatPath]);return N.createElement(N.Fragment,null,N.createElement(oa.Provider,{value:w},N.createElement(im.Provider,{value:i},N.createElement(u1.Provider,{value:T.current},N.createElement(s1.Provider,{value:s},N.createElement(Zv,{basename:P,location:i.location,navigationType:i.historyAction,navigator:C,future:R},i.initialized||n.future.v7_partialHydration?N.createElement(m1,{routes:n.routes,future:n.future,state:i}):t))))),null)}const m1=N.memo(g1);function g1(e){let{routes:t,future:n,state:r}=e;return Fv(t,void 0,r,n)}const y1=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",v1=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,an=N.forwardRef(function(t,n){let{onClick:r,relative:i,reloadDocument:o,replace:l,state:a,target:s,to:u,preventScrollReset:d,viewTransition:c}=t,p=e1(t,r1),{basename:v}=N.useContext(cr),x,y=!1;if(typeof u=="string"&&v1.test(u)&&(x=u,y1))try{let g=new URL(window.location.href),C=u.startsWith("//")?new URL(g.protocol+u):new URL(u),P=ii(C.pathname,v);C.origin===g.origin&&P!=null?u=P+C.search+C.hash:y=!0}catch{}let T=zv(u,{relative:i}),m=w1(u,{replace:l,state:a,target:s,preventScrollReset:d,relative:i,viewTransition:c});function h(g){r&&r(g),g.defaultPrevented||m(g)}return N.createElement("a",oo({},p,{href:x||T,onClick:y||o?r:h,ref:n,target:s}))});var ud;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(ud||(ud={}));var cd;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(cd||(cd={}));function w1(e,t){let{target:n,replace:r,state:i,preventScrollReset:o,relative:l,viewTransition:a}=t===void 0?{}:t,s=Mv(),u=la(),d=sm(e,{relative:l});return N.useCallback(c=>{if(n1(c,n)){c.preventDefault();let p=r!==void 0?r:lr(u)===lr(d);s(e,{replace:p,state:i,preventScrollReset:o,relative:l,viewTransition:a})}},[u,s,d,r,i,n,e,o,l,a])}const S1="_container_xopze_1",x1="_nav_xopze_8",k1="_link_xopze_19",xn={container:S1,nav:x1,link:k1,"nav-heading":"_nav-heading_xopze_25","cart-icon-container":"_cart-icon-container_xopze_29","cart-icon-circle":"_cart-icon-circle_xopze_33"};var fm={exports:{}},C1="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",E1=C1,_1=E1;function dm(){}function pm(){}pm.resetWarningCache=dm;var P1=function(){function e(r,i,o,l,a,s){if(s!==_1){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:pm,resetWarningCache:dm};return n.PropTypes=n,n};fm.exports=P1();var T1=fm.exports;const De=lu(T1);function tn(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function hm(e){if(N.isValidElement(e)||!tn(e))return e;const t={};return Object.keys(e).forEach(n=>{t[n]=hm(e[n])}),t}function mt(e,t,n={clone:!0}){const r=n.clone?{...e}:e;return tn(e)&&tn(t)&&Object.keys(t).forEach(i=>{N.isValidElement(t[i])?r[i]=t[i]:tn(t[i])&&Object.prototype.hasOwnProperty.call(e,i)&&tn(e[i])?r[i]=mt(e[i],t[i],n):n.clone?r[i]=tn(t[i])?hm(t[i]):t[i]:r[i]=t[i]}),r}function ar(e,...t){const n=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach(r=>n.searchParams.append("args[]",r)),`Minified MUI error #${e}; visit ${n} for the full message.`}function Zr(e){if(typeof e!="string")throw new Error(ar(7));return e.charAt(0).toUpperCase()+e.slice(1)}function qs(e,t){const n={...t};for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){const i=r;if(i==="components"||i==="slots")n[i]={...e[i],...n[i]};else if(i==="componentsProps"||i==="slotProps"){const o=e[i],l=t[i];if(!l)n[i]=o||{};else if(!o)n[i]=l;else{n[i]={...l};for(const a in o)if(Object.prototype.hasOwnProperty.call(o,a)){const s=a;n[i][s]=qs(o[s],l[s])}}}else n[i]===void 0&&(n[i]=e[i])}return n}function R1(e,t,n=void 0){const r={};for(const i in e){const o=e[i];let l="",a=!0;for(let s=0;se,N1=()=>{let e=fd;return{configure(t){e=t},generate(t){return e(t)},reset(){e=fd}}},L1=N1(),O1={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function mm(e,t,n="Mui"){const r=O1[t];return r?`${n}-${r}`:`${L1.generate(e)}-${t}`}function j1(e,t,n="Mui"){const r={};return t.forEach(i=>{r[i]=mm(e,i,n)}),r}function D1(e,t=Number.MIN_SAFE_INTEGER,n=Number.MAX_SAFE_INTEGER){return Math.max(t,Math.min(e,n))}function gm(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;tr.startsWith("@container")).sort((r,i)=>{var l,a;const o=/min-width:\s*([0-9.]+)/;return+(((l=r.match(o))==null?void 0:l[1])||0)-+(((a=i.match(o))==null?void 0:a[1])||0)});return n.length?n.reduce((r,i)=>{const o=t[i];return delete r[i],r[i]=o,r},{...t}):t}function A1(e,t){return t==="@"||t.startsWith("@")&&(e.some(n=>t.startsWith(`@${n}`))||!!t.match(/^@\d/))}function I1(e,t){const n=t.match(/^@([^/]+)?\/?(.+)?$/);if(!n)return null;const[,r,i]=n,o=Number.isNaN(+r)?r||0:+r;return e.containerQueries(i).up(o)}function $1(e){const t=(o,l)=>o.replace("@media",l?`@container ${l}`:"@container");function n(o,l){o.up=(...a)=>t(e.breakpoints.up(...a),l),o.down=(...a)=>t(e.breakpoints.down(...a),l),o.between=(...a)=>t(e.breakpoints.between(...a),l),o.only=(...a)=>t(e.breakpoints.only(...a),l),o.not=(...a)=>{const s=t(e.breakpoints.not(...a),l);return s.includes("not all and")?s.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):s}}const r={},i=o=>(n(r,o),r);return n(i),{...e,containerQueries:i}}const aa={xs:0,sm:600,md:900,lg:1200,xl:1536},dd={keys:["xs","sm","md","lg","xl"],up:e=>`@media (min-width:${aa[e]}px)`},F1={containerQueries:e=>({up:t=>{let n=typeof t=="number"?t:aa[t]||t;return typeof n=="number"&&(n=`${n}px`),e?`@container ${e} (min-width:${n})`:`@container (min-width:${n})`}})};function dn(e,t,n){const r=e.theme||{};if(Array.isArray(t)){const o=r.breakpoints||dd;return t.reduce((l,a,s)=>(l[o.up(o.keys[s])]=n(t[s]),l),{})}if(typeof t=="object"){const o=r.breakpoints||dd;return Object.keys(t).reduce((l,a)=>{if(A1(o.keys,a)){const s=I1(r.containerQueries?r:F1,a);s&&(l[s]=n(t[a],a))}else if(Object.keys(o.values||aa).includes(a)){const s=o.up(a);l[s]=n(t[a],a)}else{const s=a;l[s]=t[s]}return l},{})}return n(t)}function b1(e={}){var n;return((n=e.keys)==null?void 0:n.reduce((r,i)=>{const o=e.up(i);return r[o]={},r},{}))||{}}function B1(e,t){return e.reduce((n,r)=>{const i=n[r];return(!i||Object.keys(i).length===0)&&delete n[r],n},t)}function sa(e,t,n=!0){if(!t||typeof t!="string")return null;if(e&&e.vars&&n){const r=`vars.${t}`.split(".").reduce((i,o)=>i&&i[o]?i[o]:null,e);if(r!=null)return r}return t.split(".").reduce((r,i)=>r&&r[i]!=null?r[i]:null,e)}function Fl(e,t,n,r=n){let i;return typeof e=="function"?i=e(n):Array.isArray(e)?i=e[n]||r:i=sa(e,n)||r,t&&(i=t(i,r,e)),i}function Re(e){const{prop:t,cssProperty:n=e.prop,themeKey:r,transform:i}=e,o=l=>{if(l[t]==null)return null;const a=l[t],s=l.theme,u=sa(s,r)||{};return dn(l,a,c=>{let p=Fl(u,i,c);return c===p&&typeof c=="string"&&(p=Fl(u,i,`${t}${c==="default"?"":Zr(c)}`,c)),n===!1?p:{[n]:p}})};return o.propTypes={},o.filterProps=[t],o}function U1(e){const t={};return n=>(t[n]===void 0&&(t[n]=e(n)),t[n])}const V1={m:"margin",p:"padding"},W1={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},pd={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},H1=U1(e=>{if(e.length>2)if(pd[e])e=pd[e];else return[e];const[t,n]=e.split(""),r=V1[t],i=W1[n]||"";return Array.isArray(i)?i.map(o=>r+o):[r+i]}),uc=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],cc=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"];[...uc,...cc];function yo(e,t,n,r){const i=sa(e,t,!0)??n;return typeof i=="number"||typeof i=="string"?o=>typeof o=="string"?o:typeof i=="string"?`calc(${o} * ${i})`:i*o:Array.isArray(i)?o=>{if(typeof o=="string")return o;const l=Math.abs(o),a=i[l];return o>=0?a:typeof a=="number"?-a:`-${a}`}:typeof i=="function"?i:()=>{}}function fc(e){return yo(e,"spacing",8)}function vo(e,t){return typeof t=="string"||t==null?t:e(t)}function K1(e,t){return n=>e.reduce((r,i)=>(r[i]=vo(t,n),r),{})}function Q1(e,t,n,r){if(!t.includes(n))return null;const i=H1(n),o=K1(i,r),l=e[n];return dn(e,l,o)}function ym(e,t){const n=fc(e.theme);return Object.keys(e).map(r=>Q1(e,t,r,n)).reduce(bi,{})}function Ee(e){return ym(e,uc)}Ee.propTypes={};Ee.filterProps=uc;function _e(e){return ym(e,cc)}_e.propTypes={};_e.filterProps=cc;function ua(...e){const t=e.reduce((r,i)=>(i.filterProps.forEach(o=>{r[o]=i}),r),{}),n=r=>Object.keys(r).reduce((i,o)=>t[o]?bi(i,t[o](r)):i,{});return n.propTypes={},n.filterProps=e.reduce((r,i)=>r.concat(i.filterProps),[]),n}function kt(e){return typeof e!="number"?e:`${e}px solid`}function Tt(e,t){return Re({prop:e,themeKey:"borders",transform:t})}const G1=Tt("border",kt),Y1=Tt("borderTop",kt),X1=Tt("borderRight",kt),J1=Tt("borderBottom",kt),Z1=Tt("borderLeft",kt),q1=Tt("borderColor"),ew=Tt("borderTopColor"),tw=Tt("borderRightColor"),nw=Tt("borderBottomColor"),rw=Tt("borderLeftColor"),iw=Tt("outline",kt),ow=Tt("outlineColor"),ca=e=>{if(e.borderRadius!==void 0&&e.borderRadius!==null){const t=yo(e.theme,"shape.borderRadius",4),n=r=>({borderRadius:vo(t,r)});return dn(e,e.borderRadius,n)}return null};ca.propTypes={};ca.filterProps=["borderRadius"];ua(G1,Y1,X1,J1,Z1,q1,ew,tw,nw,rw,ca,iw,ow);const fa=e=>{if(e.gap!==void 0&&e.gap!==null){const t=yo(e.theme,"spacing",8),n=r=>({gap:vo(t,r)});return dn(e,e.gap,n)}return null};fa.propTypes={};fa.filterProps=["gap"];const da=e=>{if(e.columnGap!==void 0&&e.columnGap!==null){const t=yo(e.theme,"spacing",8),n=r=>({columnGap:vo(t,r)});return dn(e,e.columnGap,n)}return null};da.propTypes={};da.filterProps=["columnGap"];const pa=e=>{if(e.rowGap!==void 0&&e.rowGap!==null){const t=yo(e.theme,"spacing",8),n=r=>({rowGap:vo(t,r)});return dn(e,e.rowGap,n)}return null};pa.propTypes={};pa.filterProps=["rowGap"];const lw=Re({prop:"gridColumn"}),aw=Re({prop:"gridRow"}),sw=Re({prop:"gridAutoFlow"}),uw=Re({prop:"gridAutoColumns"}),cw=Re({prop:"gridAutoRows"}),fw=Re({prop:"gridTemplateColumns"}),dw=Re({prop:"gridTemplateRows"}),pw=Re({prop:"gridTemplateAreas"}),hw=Re({prop:"gridArea"});ua(fa,da,pa,lw,aw,sw,uw,cw,fw,dw,pw,hw);function Br(e,t){return t==="grey"?t:e}const mw=Re({prop:"color",themeKey:"palette",transform:Br}),gw=Re({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:Br}),yw=Re({prop:"backgroundColor",themeKey:"palette",transform:Br});ua(mw,gw,yw);function dt(e){return e<=1&&e!==0?`${e*100}%`:e}const vw=Re({prop:"width",transform:dt}),dc=e=>{if(e.maxWidth!==void 0&&e.maxWidth!==null){const t=n=>{var i,o,l,a,s;const r=((l=(o=(i=e.theme)==null?void 0:i.breakpoints)==null?void 0:o.values)==null?void 0:l[n])||aa[n];return r?((s=(a=e.theme)==null?void 0:a.breakpoints)==null?void 0:s.unit)!=="px"?{maxWidth:`${r}${e.theme.breakpoints.unit}`}:{maxWidth:r}:{maxWidth:dt(n)}};return dn(e,e.maxWidth,t)}return null};dc.filterProps=["maxWidth"];const ww=Re({prop:"minWidth",transform:dt}),Sw=Re({prop:"height",transform:dt}),xw=Re({prop:"maxHeight",transform:dt}),kw=Re({prop:"minHeight",transform:dt});Re({prop:"size",cssProperty:"width",transform:dt});Re({prop:"size",cssProperty:"height",transform:dt});const Cw=Re({prop:"boxSizing"});ua(vw,dc,ww,Sw,xw,kw,Cw);const ha={border:{themeKey:"borders",transform:kt},borderTop:{themeKey:"borders",transform:kt},borderRight:{themeKey:"borders",transform:kt},borderBottom:{themeKey:"borders",transform:kt},borderLeft:{themeKey:"borders",transform:kt},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:kt},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:ca},color:{themeKey:"palette",transform:Br},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:Br},backgroundColor:{themeKey:"palette",transform:Br},p:{style:_e},pt:{style:_e},pr:{style:_e},pb:{style:_e},pl:{style:_e},px:{style:_e},py:{style:_e},padding:{style:_e},paddingTop:{style:_e},paddingRight:{style:_e},paddingBottom:{style:_e},paddingLeft:{style:_e},paddingX:{style:_e},paddingY:{style:_e},paddingInline:{style:_e},paddingInlineStart:{style:_e},paddingInlineEnd:{style:_e},paddingBlock:{style:_e},paddingBlockStart:{style:_e},paddingBlockEnd:{style:_e},m:{style:Ee},mt:{style:Ee},mr:{style:Ee},mb:{style:Ee},ml:{style:Ee},mx:{style:Ee},my:{style:Ee},margin:{style:Ee},marginTop:{style:Ee},marginRight:{style:Ee},marginBottom:{style:Ee},marginLeft:{style:Ee},marginX:{style:Ee},marginY:{style:Ee},marginInline:{style:Ee},marginInlineStart:{style:Ee},marginInlineEnd:{style:Ee},marginBlock:{style:Ee},marginBlockStart:{style:Ee},marginBlockEnd:{style:Ee},displayPrint:{cssProperty:!1,transform:e=>({"@media print":{display:e}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:fa},rowGap:{style:pa},columnGap:{style:da},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:dt},maxWidth:{style:dc},minWidth:{transform:dt},height:{transform:dt},maxHeight:{transform:dt},minHeight:{transform:dt},boxSizing:{},font:{themeKey:"font"},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}};function Ew(...e){const t=e.reduce((r,i)=>r.concat(Object.keys(i)),[]),n=new Set(t);return e.every(r=>n.size===Object.keys(r).length)}function _w(e,t){return typeof e=="function"?e(t):e}function Pw(){function e(n,r,i,o){const l={[n]:r,theme:i},a=o[n];if(!a)return{[n]:r};const{cssProperty:s=n,themeKey:u,transform:d,style:c}=a;if(r==null)return null;if(u==="typography"&&r==="inherit")return{[n]:r};const p=sa(i,u)||{};return c?c(l):dn(l,r,x=>{let y=Fl(p,d,x);return x===y&&typeof x=="string"&&(y=Fl(p,d,`${n}${x==="default"?"":Zr(x)}`,x)),s===!1?y:{[s]:y}})}function t(n){const{sx:r,theme:i={}}=n||{};if(!r)return null;const o=i.unstable_sxConfig??ha;function l(a){let s=a;if(typeof a=="function")s=a(i);else if(typeof a!="object")return a;if(!s)return null;const u=b1(i.breakpoints),d=Object.keys(u);let c=u;return Object.keys(s).forEach(p=>{const v=_w(s[p],i);if(v!=null)if(typeof v=="object")if(o[p])c=bi(c,e(p,v,i,o));else{const x=dn({theme:i},v,y=>({[p]:y}));Ew(x,v)?c[p]=t({sx:v,theme:i}):c=bi(c,x)}else c=bi(c,e(p,v,i,o))}),M1(i,B1(d,c))}return Array.isArray(r)?r.map(l):l(r)}return t}const qr=Pw();qr.filterProps=["sx"];function eu(){return eu=Object.assign?Object.assign.bind():function(e){for(var t=1;t0?Ue(oi,--ut):0,ei--,Oe===10&&(ei=1,ga--),Oe}function gt(){return Oe=ut2||ao(Oe)>3?"":" "}function Vw(e,t){for(;--t&>()&&!(Oe<48||Oe>102||Oe>57&&Oe<65||Oe>70&&Oe<97););return wo(e,al()+(t<6&&Gt()==32&>()==32))}function nu(e){for(;gt();)switch(Oe){case e:return ut;case 34:case 39:e!==34&&e!==39&&nu(Oe);break;case 40:e===41&&nu(e);break;case 92:gt();break}return ut}function Ww(e,t){for(;gt()&&e+Oe!==57;)if(e+Oe===84&&Gt()===47)break;return"/*"+wo(t,ut-1)+"*"+ma(e===47?e:gt())}function Hw(e){for(;!ao(Gt());)gt();return wo(e,ut)}function Kw(e){return Em(ul("",null,null,null,[""],e=Cm(e),0,[0],e))}function ul(e,t,n,r,i,o,l,a,s){for(var u=0,d=0,c=l,p=0,v=0,x=0,y=1,T=1,m=1,h=0,g="",C=i,P=o,w=r,R=g;T;)switch(x=h,h=gt()){case 40:if(x!=108&&Ue(R,c-1)==58){tu(R+=oe(sl(h),"&","&\f"),"&\f")!=-1&&(m=-1);break}case 34:case 39:case 91:R+=sl(h);break;case 9:case 10:case 13:case 32:R+=Uw(x);break;case 92:R+=Vw(al()-1,7);continue;case 47:switch(Gt()){case 42:case 47:Ho(Qw(Ww(gt(),al()),t,n),s);break;default:R+="/"}break;case 123*y:a[u++]=Vt(R)*m;case 125*y:case 59:case 0:switch(h){case 0:case 125:T=0;case 59+d:m==-1&&(R=oe(R,/\f/g,"")),v>0&&Vt(R)-c&&Ho(v>32?md(R+";",r,n,c-1):md(oe(R," ","")+";",r,n,c-2),s);break;case 59:R+=";";default:if(Ho(w=hd(R,t,n,u,d,i,a,g,C=[],P=[],c),o),h===123)if(d===0)ul(R,t,w,w,C,o,c,a,P);else switch(p===99&&Ue(R,3)===110?100:p){case 100:case 108:case 109:case 115:ul(e,w,w,r&&Ho(hd(e,w,w,0,0,i,a,g,i,C=[],c),P),i,P,c,a,r?C:P);break;default:ul(R,w,w,w,[""],P,0,a,P)}}u=d=v=0,y=m=1,g=R="",c=l;break;case 58:c=1+Vt(R),v=x;default:if(y<1){if(h==123)--y;else if(h==125&&y++==0&&Bw()==125)continue}switch(R+=ma(h),h*y){case 38:m=d>0?1:(R+="\f",-1);break;case 44:a[u++]=(Vt(R)-1)*m,m=1;break;case 64:Gt()===45&&(R+=sl(gt())),p=Gt(),d=c=Vt(g=R+=Hw(al())),h++;break;case 45:x===45&&Vt(R)==2&&(y=0)}}return o}function hd(e,t,n,r,i,o,l,a,s,u,d){for(var c=i-1,p=i===0?o:[""],v=mc(p),x=0,y=0,T=0;x0?p[m]+" "+h:oe(h,/&\f/g,p[m])))&&(s[T++]=g);return ya(e,t,n,i===0?pc:a,s,u,d)}function Qw(e,t,n){return ya(e,t,n,wm,ma(bw()),lo(e,2,-2),0)}function md(e,t,n,r){return ya(e,t,n,hc,lo(e,0,r),lo(e,r+1,-1),r)}function Ur(e,t){for(var n="",r=mc(e),i=0;i6)switch(Ue(e,t+1)){case 109:if(Ue(e,t+4)!==45)break;case 102:return oe(e,/(.+:)(.+)-([^]+)/,"$1"+ie+"$2-$3$1"+bl+(Ue(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~tu(e,"stretch")?_m(oe(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(Ue(e,t+1)!==115)break;case 6444:switch(Ue(e,Vt(e)-3-(~tu(e,"!important")&&10))){case 107:return oe(e,":",":"+ie)+e;case 101:return oe(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+ie+(Ue(e,14)===45?"inline-":"")+"box$3$1"+ie+"$2$3$1"+Qe+"$2box$3")+e}break;case 5936:switch(Ue(e,t+11)){case 114:return ie+e+Qe+oe(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return ie+e+Qe+oe(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return ie+e+Qe+oe(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return ie+e+Qe+e+e}return e}var nS=function(t,n,r,i){if(t.length>-1&&!t.return)switch(t.type){case hc:t.return=_m(t.value,t.length);break;case Sm:return Ur([xi(t,{value:oe(t.value,"@","@"+ie)})],i);case pc:if(t.length)return Fw(t.props,function(o){switch($w(o,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return Ur([xi(t,{props:[oe(o,/:(read-\w+)/,":"+bl+"$1")]})],i);case"::placeholder":return Ur([xi(t,{props:[oe(o,/:(plac\w+)/,":"+ie+"input-$1")]}),xi(t,{props:[oe(o,/:(plac\w+)/,":"+bl+"$1")]}),xi(t,{props:[oe(o,/:(plac\w+)/,Qe+"input-$1")]})],i)}return""})}},rS=[nS],iS=function(t){var n=t.key;if(n==="css"){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,function(y){var T=y.getAttribute("data-emotion");T.indexOf(" ")!==-1&&(document.head.appendChild(y),y.setAttribute("data-s",""))})}var i=t.stylisPlugins||rS,o={},l,a=[];l=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(y){for(var T=y.getAttribute("data-emotion").split(" "),m=1;m=4;++r,i-=4)n=e.charCodeAt(r)&255|(e.charCodeAt(++r)&255)<<8|(e.charCodeAt(++r)&255)<<16|(e.charCodeAt(++r)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,t=(n&65535)*1540483477+((n>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(i){case 3:t^=(e.charCodeAt(r+2)&255)<<16;case 2:t^=(e.charCodeAt(r+1)&255)<<8;case 1:t^=e.charCodeAt(r)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}var uS={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},cS=!1,fS=/[A-Z]|^ms/g,dS=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Tm=function(t){return t.charCodeAt(1)===45},yd=function(t){return t!=null&&typeof t!="boolean"},Za=vm(function(e){return Tm(e)?e:e.replace(fS,"-$&").toLowerCase()}),vd=function(t,n){switch(t){case"animation":case"animationName":if(typeof n=="string")return n.replace(dS,function(r,i,o){return Wt={name:i,styles:o,next:Wt},i})}return uS[t]!==1&&!Tm(t)&&typeof n=="number"&&n!==0?n+"px":n},pS="Component selectors can only be used in conjunction with @emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware compiler transform.";function so(e,t,n){if(n==null)return"";var r=n;if(r.__emotion_styles!==void 0)return r;switch(typeof n){case"boolean":return"";case"object":{var i=n;if(i.anim===1)return Wt={name:i.name,styles:i.styles,next:Wt},i.name;var o=n;if(o.styles!==void 0){var l=o.next;if(l!==void 0)for(;l!==void 0;)Wt={name:l.name,styles:l.styles,next:Wt},l=l.next;var a=o.styles+";";return a}return hS(e,t,n)}case"function":{if(e!==void 0){var s=Wt,u=n(e);return Wt=s,so(e,t,u)}break}}var d=n;if(t==null)return d;var c=t[d];return c!==void 0?c:d}function hS(e,t,n){var r="";if(Array.isArray(n))for(var i=0;i96?SS:xS},xd=function(t,n,r){var i;if(n){var o=n.shouldForwardProp;i=t.__emotion_forwardProp&&o?function(l){return t.__emotion_forwardProp(l)&&o(l)}:o}return typeof i!="function"&&r&&(i=t.__emotion_forwardProp),i},kS=!1,CS=function(t){var n=t.cache,r=t.serialized,i=t.isStringTag;return Pm(n,r,i),yS(function(){return aS(n,r,i)}),null},ES=function e(t,n){var r=t.__emotion_real===t,i=r&&t.__emotion_base||t,o,l;n!==void 0&&(o=n.label,l=n.target);var a=xd(t,n,r),s=a||Sd(i),u=!s("as");return function(){var d=arguments,c=r&&t.__emotion_styles!==void 0?t.__emotion_styles.slice(0):[];if(o!==void 0&&c.push("label:"+o+";"),d[0]==null||d[0].raw===void 0)c.push.apply(c,d);else{c.push(d[0][0]);for(var p=d.length,v=1;v{const t=Object.keys(e).map(n=>({key:n,val:e[n]}))||[];return t.sort((n,r)=>n.val-r.val),t.reduce((n,r)=>({...n,[r.key]:r.val}),{})};function NS(e){const{values:t={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:r=5,...i}=e,o=RS(t),l=Object.keys(o);function a(p){return`@media (min-width:${typeof t[p]=="number"?t[p]:p}${n})`}function s(p){return`@media (max-width:${(typeof t[p]=="number"?t[p]:p)-r/100}${n})`}function u(p,v){const x=l.indexOf(v);return`@media (min-width:${typeof t[p]=="number"?t[p]:p}${n}) and (max-width:${(x!==-1&&typeof t[l[x]]=="number"?t[l[x]]:v)-r/100}${n})`}function d(p){return l.indexOf(p)+1(r.length===0?[1]:r).map(o=>{const l=t(o);return typeof l=="number"?`${l}px`:l}).join(" ");return n.mui=!0,n}function OS(e,t){var r;const n=this;if(n.vars){if(!((r=n.colorSchemes)!=null&&r[e])||typeof n.getColorSchemeSelector!="function")return{};let i=n.getColorSchemeSelector(e);return i==="&"?t:((i.includes("data-")||i.includes("."))&&(i=`*:where(${i.replace(/\s*&$/,"")}) &`),{[i]:t})}return n.palette.mode===e?t:{}}function Om(e={},...t){const{breakpoints:n={},palette:r={},spacing:i,shape:o={},...l}=e,a=NS(n),s=Lm(i);let u=mt({breakpoints:a,direction:"ltr",components:{},palette:{mode:"light",...r},spacing:s,shape:{...LS,...o}},l);return u=$1(u),u.applyStyles=OS,u=t.reduce((d,c)=>mt(d,c),u),u.unstable_sxConfig={...ha,...l==null?void 0:l.unstable_sxConfig},u.unstable_sx=function(c){return qr({sx:c,theme:this})},u}function jm(e){const{variants:t,...n}=e,r={variants:t,style:Cd(n),isProcessed:!0};return r.style===n||t&&t.forEach(i=>{typeof i.style!="function"&&(i.style=Cd(i.style))}),r}const jS=Om();function qa(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}function DS(e){return e?(t,n)=>n[e]:null}function zS(e,t,n){e.theme=IS(e.theme)?n:e.theme[t]||e.theme}function cl(e,t){const n=typeof t=="function"?t(e):t;if(Array.isArray(n))return n.flatMap(r=>cl(e,r));if(Array.isArray(n==null?void 0:n.variants)){let r;if(n.isProcessed)r=n.style;else{const{variants:i,...o}=n;r=o}return Dm(e,n.variants,[r])}return n!=null&&n.isProcessed?n.style:n}function Dm(e,t,n=[]){var i;let r;e:for(let o=0;o{TS(a,P=>P.filter(w=>w!==qr));const{name:u,slot:d,skipVariantsResolver:c,skipSx:p,overridesResolver:v=DS(FS(d)),...x}=s,y=c!==void 0?c:d&&d!=="Root"&&d!=="root"||!1,T=p||!1;let m=qa;d==="Root"||d==="root"?m=r:d?m=i:$S(a)&&(m=void 0);const h=PS(a,{shouldForwardProp:m,label:AS(),...x}),g=P=>{if(typeof P=="function"&&P.__emotion_real!==P)return function(R){return cl(R,P)};if(tn(P)){const w=jm(P);return w.variants?function(L){return cl(L,w)}:w.style}return P},C=(...P)=>{const w=[],R=P.map(g),L=[];if(w.push(o),u&&v&&L.push(function(U){var nt,me;const X=(me=(nt=U.theme.components)==null?void 0:nt[u])==null?void 0:me.styleOverrides;if(!X)return null;const ze={};for(const A in X)ze[A]=cl(U,X[A]);return v(U,ze)}),u&&!y&&L.push(function(U){var ze,nt;const H=U.theme,X=(nt=(ze=H==null?void 0:H.components)==null?void 0:ze[u])==null?void 0:nt.variants;return X?Dm(U,X):null}),T||L.push(qr),Array.isArray(R[0])){const z=R.shift(),U=new Array(w.length).fill(""),H=new Array(L.length).fill("");let X;X=[...U,...z,...H],X.raw=[...U,...z.raw,...H],w.unshift(X)}const M=[...w,...R,...L],f=h(...M);return a.muiName&&(f.muiName=a.muiName),f};return h.withConfig&&(C.withConfig=h.withConfig),C}}function AS(e,t){return void 0}function IS(e){for(const t in e)return!1;return!0}function $S(e){return typeof e=="string"&&e.charCodeAt(0)>96}function FS(e){return e&&e.charAt(0).toLowerCase()+e.slice(1)}function gc(e,t=0,n=1){return D1(e,t,n)}function bS(e){e=e.slice(1);const t=new RegExp(`.{1,${e.length>=6?2:1}}`,"g");let n=e.match(t);return n&&n[0].length===1&&(n=n.map(r=>r+r)),n?`rgb${n.length===4?"a":""}(${n.map((r,i)=>i<3?parseInt(r,16):Math.round(parseInt(r,16)/255*1e3)/1e3).join(", ")})`:""}function In(e){if(e.type)return e;if(e.charAt(0)==="#")return In(bS(e));const t=e.indexOf("("),n=e.substring(0,t);if(!["rgb","rgba","hsl","hsla","color"].includes(n))throw new Error(ar(9,e));let r=e.substring(t+1,e.length-1),i;if(n==="color"){if(r=r.split(" "),i=r.shift(),r.length===4&&r[3].charAt(0)==="/"&&(r[3]=r[3].slice(1)),!["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].includes(i))throw new Error(ar(10,i))}else r=r.split(",");return r=r.map(o=>parseFloat(o)),{type:n,values:r,colorSpace:i}}const BS=e=>{const t=In(e);return t.values.slice(0,3).map((n,r)=>t.type.includes("hsl")&&r!==0?`${n}%`:n).join(" ")},Ni=(e,t)=>{try{return BS(e)}catch{return e}};function va(e){const{type:t,colorSpace:n}=e;let{values:r}=e;return t.includes("rgb")?r=r.map((i,o)=>o<3?parseInt(i,10):i):t.includes("hsl")&&(r[1]=`${r[1]}%`,r[2]=`${r[2]}%`),t.includes("color")?r=`${n} ${r.join(" ")}`:r=`${r.join(", ")}`,`${t}(${r})`}function zm(e){e=In(e);const{values:t}=e,n=t[0],r=t[1]/100,i=t[2]/100,o=r*Math.min(i,1-i),l=(u,d=(u+n/30)%12)=>i-o*Math.max(Math.min(d-3,9-d,1),-1);let a="rgb";const s=[Math.round(l(0)*255),Math.round(l(8)*255),Math.round(l(4)*255)];return e.type==="hsla"&&(a+="a",s.push(t[3])),va({type:a,values:s})}function iu(e){e=In(e);let t=e.type==="hsl"||e.type==="hsla"?In(zm(e)).values:e.values;return t=t.map(n=>(e.type!=="color"&&(n/=255),n<=.03928?n/12.92:((n+.055)/1.055)**2.4)),Number((.2126*t[0]+.7152*t[1]+.0722*t[2]).toFixed(3))}function US(e,t){const n=iu(e),r=iu(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function VS(e,t){return e=In(e),t=gc(t),(e.type==="rgb"||e.type==="hsl")&&(e.type+="a"),e.type==="color"?e.values[3]=`/${t}`:e.values[3]=t,va(e)}function Ko(e,t,n){try{return VS(e,t)}catch{return e}}function yc(e,t){if(e=In(e),t=gc(t),e.type.includes("hsl"))e.values[2]*=1-t;else if(e.type.includes("rgb")||e.type.includes("color"))for(let n=0;n<3;n+=1)e.values[n]*=1-t;return va(e)}function se(e,t,n){try{return yc(e,t)}catch{return e}}function vc(e,t){if(e=In(e),t=gc(t),e.type.includes("hsl"))e.values[2]+=(100-e.values[2])*t;else if(e.type.includes("rgb"))for(let n=0;n<3;n+=1)e.values[n]+=(255-e.values[n])*t;else if(e.type.includes("color"))for(let n=0;n<3;n+=1)e.values[n]+=(1-e.values[n])*t;return va(e)}function ue(e,t,n){try{return vc(e,t)}catch{return e}}function WS(e,t=.15){return iu(e)>.5?yc(e,t):vc(e,t)}function Qo(e,t,n){try{return WS(e,t)}catch{return e}}const HS=N.createContext(void 0);function KS(e){const{theme:t,name:n,props:r}=e;if(!t||!t.components||!t.components[n])return r;const i=t.components[n];return i.defaultProps?qs(i.defaultProps,r):!i.styleOverrides&&!i.variants?qs(i,r):r}function QS({props:e,name:t}){const n=N.useContext(HS);return KS({props:e,name:t,theme:{components:n}})}const Ed={theme:void 0};function GS(e){let t,n;return function(i){let o=t;return(o===void 0||i.theme!==n)&&(Ed.theme=i.theme,o=jm(e(Ed)),t=o,n=i.theme),o}}function YS(e=""){function t(...r){if(!r.length)return"";const i=r[0];return typeof i=="string"&&!i.match(/(#|\(|\)|(-?(\d*\.)?\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\d*\.)?\d+)$|(\d+ \d+ \d+)/)?`, var(--${e?`${e}-`:""}${i}${t(...r.slice(1))})`:`, ${i}`}return(r,...i)=>`var(--${e?`${e}-`:""}${r}${t(...i)})`}const _d=(e,t,n,r=[])=>{let i=e;t.forEach((o,l)=>{l===t.length-1?Array.isArray(i)?i[Number(o)]=n:i&&typeof i=="object"&&(i[o]=n):i&&typeof i=="object"&&(i[o]||(i[o]=r.includes(o)?[]:{}),i=i[o])})},XS=(e,t,n)=>{function r(i,o=[],l=[]){Object.entries(i).forEach(([a,s])=>{(!n||n&&!n([...o,a]))&&s!=null&&(typeof s=="object"&&Object.keys(s).length>0?r(s,[...o,a],Array.isArray(s)?[...l,a]:l):t([...o,a],s,l))})}r(e)},JS=(e,t)=>typeof t=="number"?["lineHeight","fontWeight","opacity","zIndex"].some(r=>e.includes(r))||e[e.length-1].toLowerCase().includes("opacity")?t:`${t}px`:t;function es(e,t){const{prefix:n,shouldSkipGeneratingVar:r}=t||{},i={},o={},l={};return XS(e,(a,s,u)=>{if((typeof s=="string"||typeof s=="number")&&(!r||!r(a,s))){const d=`--${n?`${n}-`:""}${a.join("-")}`,c=JS(a,s);Object.assign(i,{[d]:c}),_d(o,a,`var(${d})`,u),_d(l,a,`var(${d}, ${c})`,u)}},a=>a[0]==="vars"),{css:i,vars:o,varsWithDefaults:l}}function ZS(e,t={}){const{getSelector:n=T,disableCssColorScheme:r,colorSchemeSelector:i}=t,{colorSchemes:o={},components:l,defaultColorScheme:a="light",...s}=e,{vars:u,css:d,varsWithDefaults:c}=es(s,t);let p=c;const v={},{[a]:x,...y}=o;if(Object.entries(y||{}).forEach(([g,C])=>{const{vars:P,css:w,varsWithDefaults:R}=es(C,t);p=mt(p,R),v[g]={css:w,vars:P}}),x){const{css:g,vars:C,varsWithDefaults:P}=es(x,t);p=mt(p,P),v[a]={css:g,vars:C}}function T(g,C){var w,R;let P=i;if(i==="class"&&(P=".%s"),i==="data"&&(P="[data-%s]"),i!=null&&i.startsWith("data-")&&!i.includes("%s")&&(P=`[${i}="%s"]`),g){if(P==="media")return e.defaultColorScheme===g?":root":{[`@media (prefers-color-scheme: ${((R=(w=o[g])==null?void 0:w.palette)==null?void 0:R.mode)||g})`]:{":root":C}};if(P)return e.defaultColorScheme===g?`:root, ${P.replace("%s",String(g))}`:P.replace("%s",String(g))}return":root"}return{vars:p,generateThemeVars:()=>{let g={...u};return Object.entries(v).forEach(([,{vars:C}])=>{g=mt(g,C)}),g},generateStyleSheets:()=>{var L,M;const g=[],C=e.defaultColorScheme||"light";function P(f,z){Object.keys(z).length&&g.push(typeof f=="string"?{[f]:{...z}}:f)}P(n(void 0,{...d}),d);const{[C]:w,...R}=v;if(w){const{css:f}=w,z=(M=(L=o[C])==null?void 0:L.palette)==null?void 0:M.mode,U=!r&&z?{colorScheme:z,...f}:{...f};P(n(C,{...U}),U)}return Object.entries(R).forEach(([f,{css:z}])=>{var X,ze;const U=(ze=(X=o[f])==null?void 0:X.palette)==null?void 0:ze.mode,H=!r&&U?{colorScheme:U,...z}:{...z};P(n(f,{...H}),H)}),g}}}function qS(e){return function(n){return e==="media"?`@media (prefers-color-scheme: ${n})`:e?e.startsWith("data-")&&!e.includes("%s")?`[${e}="${n}"] &`:e==="class"?`.${n} &`:e==="data"?`[data-${n}] &`:`${e.replace("%s",n)} &`:"&"}}const uo={black:"#000",white:"#fff"},ex={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},yr={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",A100:"#ea80fc",A200:"#e040fb",A400:"#d500f9",A700:"#aa00ff"},vr={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",A100:"#ff8a80",A200:"#ff5252",A400:"#ff1744",A700:"#d50000"},ki={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",A100:"#ffd180",A200:"#ffab40",A400:"#ff9100",A700:"#ff6d00"},wr={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",A100:"#82b1ff",A200:"#448aff",A400:"#2979ff",A700:"#2962ff"},Sr={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",A100:"#80d8ff",A200:"#40c4ff",A400:"#00b0ff",A700:"#0091ea"},xr={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",A100:"#b9f6ca",A200:"#69f0ae",A400:"#00e676",A700:"#00c853"};function Mm(){return{text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:uo.white,default:uo.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}}}const tx=Mm();function Am(){return{text:{primary:uo.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:uo.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}}}const Pd=Am();function Td(e,t,n,r){const i=r.light||r,o=r.dark||r*1.5;e[t]||(e.hasOwnProperty(n)?e[t]=e[n]:t==="light"?e.light=vc(e.main,i):t==="dark"&&(e.dark=yc(e.main,o)))}function nx(e="light"){return e==="dark"?{main:wr[200],light:wr[50],dark:wr[400]}:{main:wr[700],light:wr[400],dark:wr[800]}}function rx(e="light"){return e==="dark"?{main:yr[200],light:yr[50],dark:yr[400]}:{main:yr[500],light:yr[300],dark:yr[700]}}function ix(e="light"){return e==="dark"?{main:vr[500],light:vr[300],dark:vr[700]}:{main:vr[700],light:vr[400],dark:vr[800]}}function ox(e="light"){return e==="dark"?{main:Sr[400],light:Sr[300],dark:Sr[700]}:{main:Sr[700],light:Sr[500],dark:Sr[900]}}function lx(e="light"){return e==="dark"?{main:xr[400],light:xr[300],dark:xr[700]}:{main:xr[800],light:xr[500],dark:xr[900]}}function ax(e="light"){return e==="dark"?{main:ki[400],light:ki[300],dark:ki[700]}:{main:"#ed6c02",light:ki[500],dark:ki[900]}}function wc(e){const{mode:t="light",contrastThreshold:n=3,tonalOffset:r=.2,...i}=e,o=e.primary||nx(t),l=e.secondary||rx(t),a=e.error||ix(t),s=e.info||ox(t),u=e.success||lx(t),d=e.warning||ax(t);function c(y){return US(y,Pd.text.primary)>=n?Pd.text.primary:tx.text.primary}const p=({color:y,name:T,mainShade:m=500,lightShade:h=300,darkShade:g=700})=>{if(y={...y},!y.main&&y[m]&&(y.main=y[m]),!y.hasOwnProperty("main"))throw new Error(ar(11,T?` (${T})`:"",m));if(typeof y.main!="string")throw new Error(ar(12,T?` (${T})`:"",JSON.stringify(y.main)));return Td(y,"light",h,r),Td(y,"dark",g,r),y.contrastText||(y.contrastText=c(y.main)),y};let v;return t==="light"?v=Mm():t==="dark"&&(v=Am()),mt({common:{...uo},mode:t,primary:p({color:o,name:"primary"}),secondary:p({color:l,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:p({color:a,name:"error"}),warning:p({color:d,name:"warning"}),info:p({color:s,name:"info"}),success:p({color:u,name:"success"}),grey:ex,contrastThreshold:n,getContrastText:c,augmentColor:p,tonalOffset:r,...v},i)}function sx(e){const t={};return Object.entries(e).forEach(r=>{const[i,o]=r;typeof o=="object"&&(t[i]=`${o.fontStyle?`${o.fontStyle} `:""}${o.fontVariant?`${o.fontVariant} `:""}${o.fontWeight?`${o.fontWeight} `:""}${o.fontStretch?`${o.fontStretch} `:""}${o.fontSize||""}${o.lineHeight?`/${o.lineHeight} `:""}${o.fontFamily||""}`)}),t}function ux(e,t){return{toolbar:{minHeight:56,[e.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[e.up("sm")]:{minHeight:64}},...t}}function cx(e){return Math.round(e*1e5)/1e5}const Rd={textTransform:"uppercase"},Nd='"Roboto", "Helvetica", "Arial", sans-serif';function fx(e,t){const{fontFamily:n=Nd,fontSize:r=14,fontWeightLight:i=300,fontWeightRegular:o=400,fontWeightMedium:l=500,fontWeightBold:a=700,htmlFontSize:s=16,allVariants:u,pxToRem:d,...c}=typeof t=="function"?t(e):t,p=r/14,v=d||(T=>`${T/s*p}rem`),x=(T,m,h,g,C)=>({fontFamily:n,fontWeight:T,fontSize:v(m),lineHeight:h,...n===Nd?{letterSpacing:`${cx(g/m)}em`}:{},...C,...u}),y={h1:x(i,96,1.167,-1.5),h2:x(i,60,1.2,-.5),h3:x(o,48,1.167,0),h4:x(o,34,1.235,.25),h5:x(o,24,1.334,0),h6:x(l,20,1.6,.15),subtitle1:x(o,16,1.75,.15),subtitle2:x(l,14,1.57,.1),body1:x(o,16,1.5,.15),body2:x(o,14,1.43,.15),button:x(l,14,1.75,.4,Rd),caption:x(o,12,1.66,.4),overline:x(o,12,2.66,1,Rd),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return mt({htmlFontSize:s,pxToRem:v,fontFamily:n,fontSize:r,fontWeightLight:i,fontWeightRegular:o,fontWeightMedium:l,fontWeightBold:a,...y},c,{clone:!1})}const dx=.2,px=.14,hx=.12;function ge(...e){return[`${e[0]}px ${e[1]}px ${e[2]}px ${e[3]}px rgba(0,0,0,${dx})`,`${e[4]}px ${e[5]}px ${e[6]}px ${e[7]}px rgba(0,0,0,${px})`,`${e[8]}px ${e[9]}px ${e[10]}px ${e[11]}px rgba(0,0,0,${hx})`].join(",")}const mx=["none",ge(0,2,1,-1,0,1,1,0,0,1,3,0),ge(0,3,1,-2,0,2,2,0,0,1,5,0),ge(0,3,3,-2,0,3,4,0,0,1,8,0),ge(0,2,4,-1,0,4,5,0,0,1,10,0),ge(0,3,5,-1,0,5,8,0,0,1,14,0),ge(0,3,5,-1,0,6,10,0,0,1,18,0),ge(0,4,5,-2,0,7,10,1,0,2,16,1),ge(0,5,5,-3,0,8,10,1,0,3,14,2),ge(0,5,6,-3,0,9,12,1,0,3,16,2),ge(0,6,6,-3,0,10,14,1,0,4,18,3),ge(0,6,7,-4,0,11,15,1,0,4,20,3),ge(0,7,8,-4,0,12,17,2,0,5,22,4),ge(0,7,8,-4,0,13,19,2,0,5,24,4),ge(0,7,9,-4,0,14,21,2,0,5,26,4),ge(0,8,9,-5,0,15,22,2,0,6,28,5),ge(0,8,10,-5,0,16,24,2,0,6,30,5),ge(0,8,11,-5,0,17,26,2,0,6,32,5),ge(0,9,11,-5,0,18,28,2,0,7,34,6),ge(0,9,12,-6,0,19,29,2,0,7,36,6),ge(0,10,13,-6,0,20,31,3,0,8,38,7),ge(0,10,13,-6,0,21,33,3,0,8,40,7),ge(0,10,14,-6,0,22,35,3,0,8,42,7),ge(0,11,14,-7,0,23,36,3,0,9,44,8),ge(0,11,15,-7,0,24,38,3,0,9,46,8)],gx={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},yx={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function Ld(e){return`${Math.round(e)}ms`}function vx(e){if(!e)return 0;const t=e/36;return Math.min(Math.round((4+15*t**.25+t/5)*10),3e3)}function wx(e){const t={...gx,...e.easing},n={...yx,...e.duration};return{getAutoHeightDuration:vx,create:(i=["all"],o={})=>{const{duration:l=n.standard,easing:a=t.easeInOut,delay:s=0,...u}=o;return(Array.isArray(i)?i:[i]).map(d=>`${d} ${typeof l=="string"?l:Ld(l)} ${a} ${typeof s=="string"?s:Ld(s)}`).join(",")},...e,easing:t,duration:n}}const Sx={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500};function xx(e){return tn(e)||typeof e>"u"||typeof e=="string"||typeof e=="boolean"||typeof e=="number"||Array.isArray(e)}function Im(e={}){const t={...e};function n(r){const i=Object.entries(r);for(let o=0;omt(v,x),p),p.unstable_sxConfig={...ha,...u==null?void 0:u.unstable_sxConfig},p.unstable_sx=function(x){return qr({sx:x,theme:this})},p.toRuntimeSource=Im,p}function kx(e){let t;return e<1?t=5.11916*e**2:t=4.5*Math.log(e+1)+2,Math.round(t*10)/1e3}const Cx=[...Array(25)].map((e,t)=>{if(t===0)return"none";const n=kx(t);return`linear-gradient(rgba(255 255 255 / ${n}), rgba(255 255 255 / ${n}))`});function $m(e){return{inputPlaceholder:e==="dark"?.5:.42,inputUnderline:e==="dark"?.7:.42,switchTrackDisabled:e==="dark"?.2:.12,switchTrack:e==="dark"?.3:.38}}function Fm(e){return e==="dark"?Cx:[]}function Ex(e){const{palette:t={mode:"light"},opacity:n,overlays:r,...i}=e,o=wc(t);return{palette:o,opacity:{...$m(o.mode),...n},overlays:r||Fm(o.mode),...i}}function _x(e){var t;return!!e[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/)||!!e[0].match(/sxConfig$/)||e[0]==="palette"&&!!((t=e[1])!=null&&t.match(/(mode|contrastThreshold|tonalOffset)/))}const Px=e=>[...[...Array(25)].map((t,n)=>`--${e?`${e}-`:""}overlays-${n}`),`--${e?`${e}-`:""}palette-AppBar-darkBg`,`--${e?`${e}-`:""}palette-AppBar-darkColor`],Tx=e=>(t,n)=>{const r=e.rootSelector||":root",i=e.colorSchemeSelector;let o=i;if(i==="class"&&(o=".%s"),i==="data"&&(o="[data-%s]"),i!=null&&i.startsWith("data-")&&!i.includes("%s")&&(o=`[${i}="%s"]`),e.defaultColorScheme===t){if(t==="dark"){const l={};return Px(e.cssVarPrefix).forEach(a=>{l[a]=n[a],delete n[a]}),o==="media"?{[r]:n,"@media (prefers-color-scheme: dark)":{[r]:l}}:o?{[o.replace("%s",t)]:l,[`${r}, ${o.replace("%s",t)}`]:n}:{[r]:{...n,...l}}}if(o&&o!=="media")return`${r}, ${o.replace("%s",String(t))}`}else if(t){if(o==="media")return{[`@media (prefers-color-scheme: ${String(t)})`]:{[r]:n}};if(o)return o.replace("%s",String(t))}return r};function Rx(e,t){t.forEach(n=>{e[n]||(e[n]={})})}function _(e,t,n){!e[t]&&n&&(e[t]=n)}function Li(e){return!e||!e.startsWith("hsl")?e:zm(e)}function Zt(e,t){`${t}Channel`in e||(e[`${t}Channel`]=Ni(Li(e[t]),`MUI: Can't create \`palette.${t}Channel\` because \`palette.${t}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color(). +To suppress this warning, you need to explicitly provide the \`palette.${t}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`))}function Nx(e){return typeof e=="number"?`${e}px`:typeof e=="string"||typeof e=="function"||Array.isArray(e)?e:"8px"}const Bt=e=>{try{return e()}catch{}},Lx=(e="mui")=>YS(e);function ts(e,t,n,r){if(!t)return;t=t===!0?{}:t;const i=r==="dark"?"dark":"light";if(!n){e[r]=Ex({...t,palette:{mode:i,...t==null?void 0:t.palette}});return}const{palette:o,...l}=ou({...n,palette:{mode:i,...t==null?void 0:t.palette}});return e[r]={...t,palette:o,opacity:{...$m(i),...t==null?void 0:t.opacity},overlays:(t==null?void 0:t.overlays)||Fm(i)},l}function Ox(e={},...t){const{colorSchemes:n={light:!0},defaultColorScheme:r,disableCssColorScheme:i=!1,cssVarPrefix:o="mui",shouldSkipGeneratingVar:l=_x,colorSchemeSelector:a=n.light&&n.dark?"media":void 0,rootSelector:s=":root",...u}=e,d=Object.keys(n)[0],c=r||(n.light&&d!=="light"?"light":d),p=Lx(o),{[c]:v,light:x,dark:y,...T}=n,m={...T};let h=v;if((c==="dark"&&!("dark"in n)||c==="light"&&!("light"in n))&&(h=!0),!h)throw new Error(ar(21,c));const g=ts(m,h,u,c);x&&!m.light&&ts(m,x,void 0,"light"),y&&!m.dark&&ts(m,y,void 0,"dark");let C={defaultColorScheme:c,...g,cssVarPrefix:o,colorSchemeSelector:a,rootSelector:s,getCssVar:p,colorSchemes:m,font:{...sx(g.typography),...g.font},spacing:Nx(u.spacing)};Object.keys(C.colorSchemes).forEach(M=>{const f=C.colorSchemes[M].palette,z=U=>{const H=U.split("-"),X=H[1],ze=H[2];return p(U,f[X][ze])};if(f.mode==="light"&&(_(f.common,"background","#fff"),_(f.common,"onBackground","#000")),f.mode==="dark"&&(_(f.common,"background","#000"),_(f.common,"onBackground","#fff")),Rx(f,["Alert","AppBar","Avatar","Button","Chip","FilledInput","LinearProgress","Skeleton","Slider","SnackbarContent","SpeedDialAction","StepConnector","StepContent","Switch","TableCell","Tooltip"]),f.mode==="light"){_(f.Alert,"errorColor",se(f.error.light,.6)),_(f.Alert,"infoColor",se(f.info.light,.6)),_(f.Alert,"successColor",se(f.success.light,.6)),_(f.Alert,"warningColor",se(f.warning.light,.6)),_(f.Alert,"errorFilledBg",z("palette-error-main")),_(f.Alert,"infoFilledBg",z("palette-info-main")),_(f.Alert,"successFilledBg",z("palette-success-main")),_(f.Alert,"warningFilledBg",z("palette-warning-main")),_(f.Alert,"errorFilledColor",Bt(()=>f.getContrastText(f.error.main))),_(f.Alert,"infoFilledColor",Bt(()=>f.getContrastText(f.info.main))),_(f.Alert,"successFilledColor",Bt(()=>f.getContrastText(f.success.main))),_(f.Alert,"warningFilledColor",Bt(()=>f.getContrastText(f.warning.main))),_(f.Alert,"errorStandardBg",ue(f.error.light,.9)),_(f.Alert,"infoStandardBg",ue(f.info.light,.9)),_(f.Alert,"successStandardBg",ue(f.success.light,.9)),_(f.Alert,"warningStandardBg",ue(f.warning.light,.9)),_(f.Alert,"errorIconColor",z("palette-error-main")),_(f.Alert,"infoIconColor",z("palette-info-main")),_(f.Alert,"successIconColor",z("palette-success-main")),_(f.Alert,"warningIconColor",z("palette-warning-main")),_(f.AppBar,"defaultBg",z("palette-grey-100")),_(f.Avatar,"defaultBg",z("palette-grey-400")),_(f.Button,"inheritContainedBg",z("palette-grey-300")),_(f.Button,"inheritContainedHoverBg",z("palette-grey-A100")),_(f.Chip,"defaultBorder",z("palette-grey-400")),_(f.Chip,"defaultAvatarColor",z("palette-grey-700")),_(f.Chip,"defaultIconColor",z("palette-grey-700")),_(f.FilledInput,"bg","rgba(0, 0, 0, 0.06)"),_(f.FilledInput,"hoverBg","rgba(0, 0, 0, 0.09)"),_(f.FilledInput,"disabledBg","rgba(0, 0, 0, 0.12)"),_(f.LinearProgress,"primaryBg",ue(f.primary.main,.62)),_(f.LinearProgress,"secondaryBg",ue(f.secondary.main,.62)),_(f.LinearProgress,"errorBg",ue(f.error.main,.62)),_(f.LinearProgress,"infoBg",ue(f.info.main,.62)),_(f.LinearProgress,"successBg",ue(f.success.main,.62)),_(f.LinearProgress,"warningBg",ue(f.warning.main,.62)),_(f.Skeleton,"bg",`rgba(${z("palette-text-primaryChannel")} / 0.11)`),_(f.Slider,"primaryTrack",ue(f.primary.main,.62)),_(f.Slider,"secondaryTrack",ue(f.secondary.main,.62)),_(f.Slider,"errorTrack",ue(f.error.main,.62)),_(f.Slider,"infoTrack",ue(f.info.main,.62)),_(f.Slider,"successTrack",ue(f.success.main,.62)),_(f.Slider,"warningTrack",ue(f.warning.main,.62));const U=Qo(f.background.default,.8);_(f.SnackbarContent,"bg",U),_(f.SnackbarContent,"color",Bt(()=>f.getContrastText(U))),_(f.SpeedDialAction,"fabHoverBg",Qo(f.background.paper,.15)),_(f.StepConnector,"border",z("palette-grey-400")),_(f.StepContent,"border",z("palette-grey-400")),_(f.Switch,"defaultColor",z("palette-common-white")),_(f.Switch,"defaultDisabledColor",z("palette-grey-100")),_(f.Switch,"primaryDisabledColor",ue(f.primary.main,.62)),_(f.Switch,"secondaryDisabledColor",ue(f.secondary.main,.62)),_(f.Switch,"errorDisabledColor",ue(f.error.main,.62)),_(f.Switch,"infoDisabledColor",ue(f.info.main,.62)),_(f.Switch,"successDisabledColor",ue(f.success.main,.62)),_(f.Switch,"warningDisabledColor",ue(f.warning.main,.62)),_(f.TableCell,"border",ue(Ko(f.divider,1),.88)),_(f.Tooltip,"bg",Ko(f.grey[700],.92))}if(f.mode==="dark"){_(f.Alert,"errorColor",ue(f.error.light,.6)),_(f.Alert,"infoColor",ue(f.info.light,.6)),_(f.Alert,"successColor",ue(f.success.light,.6)),_(f.Alert,"warningColor",ue(f.warning.light,.6)),_(f.Alert,"errorFilledBg",z("palette-error-dark")),_(f.Alert,"infoFilledBg",z("palette-info-dark")),_(f.Alert,"successFilledBg",z("palette-success-dark")),_(f.Alert,"warningFilledBg",z("palette-warning-dark")),_(f.Alert,"errorFilledColor",Bt(()=>f.getContrastText(f.error.dark))),_(f.Alert,"infoFilledColor",Bt(()=>f.getContrastText(f.info.dark))),_(f.Alert,"successFilledColor",Bt(()=>f.getContrastText(f.success.dark))),_(f.Alert,"warningFilledColor",Bt(()=>f.getContrastText(f.warning.dark))),_(f.Alert,"errorStandardBg",se(f.error.light,.9)),_(f.Alert,"infoStandardBg",se(f.info.light,.9)),_(f.Alert,"successStandardBg",se(f.success.light,.9)),_(f.Alert,"warningStandardBg",se(f.warning.light,.9)),_(f.Alert,"errorIconColor",z("palette-error-main")),_(f.Alert,"infoIconColor",z("palette-info-main")),_(f.Alert,"successIconColor",z("palette-success-main")),_(f.Alert,"warningIconColor",z("palette-warning-main")),_(f.AppBar,"defaultBg",z("palette-grey-900")),_(f.AppBar,"darkBg",z("palette-background-paper")),_(f.AppBar,"darkColor",z("palette-text-primary")),_(f.Avatar,"defaultBg",z("palette-grey-600")),_(f.Button,"inheritContainedBg",z("palette-grey-800")),_(f.Button,"inheritContainedHoverBg",z("palette-grey-700")),_(f.Chip,"defaultBorder",z("palette-grey-700")),_(f.Chip,"defaultAvatarColor",z("palette-grey-300")),_(f.Chip,"defaultIconColor",z("palette-grey-300")),_(f.FilledInput,"bg","rgba(255, 255, 255, 0.09)"),_(f.FilledInput,"hoverBg","rgba(255, 255, 255, 0.13)"),_(f.FilledInput,"disabledBg","rgba(255, 255, 255, 0.12)"),_(f.LinearProgress,"primaryBg",se(f.primary.main,.5)),_(f.LinearProgress,"secondaryBg",se(f.secondary.main,.5)),_(f.LinearProgress,"errorBg",se(f.error.main,.5)),_(f.LinearProgress,"infoBg",se(f.info.main,.5)),_(f.LinearProgress,"successBg",se(f.success.main,.5)),_(f.LinearProgress,"warningBg",se(f.warning.main,.5)),_(f.Skeleton,"bg",`rgba(${z("palette-text-primaryChannel")} / 0.13)`),_(f.Slider,"primaryTrack",se(f.primary.main,.5)),_(f.Slider,"secondaryTrack",se(f.secondary.main,.5)),_(f.Slider,"errorTrack",se(f.error.main,.5)),_(f.Slider,"infoTrack",se(f.info.main,.5)),_(f.Slider,"successTrack",se(f.success.main,.5)),_(f.Slider,"warningTrack",se(f.warning.main,.5));const U=Qo(f.background.default,.98);_(f.SnackbarContent,"bg",U),_(f.SnackbarContent,"color",Bt(()=>f.getContrastText(U))),_(f.SpeedDialAction,"fabHoverBg",Qo(f.background.paper,.15)),_(f.StepConnector,"border",z("palette-grey-600")),_(f.StepContent,"border",z("palette-grey-600")),_(f.Switch,"defaultColor",z("palette-grey-300")),_(f.Switch,"defaultDisabledColor",z("palette-grey-600")),_(f.Switch,"primaryDisabledColor",se(f.primary.main,.55)),_(f.Switch,"secondaryDisabledColor",se(f.secondary.main,.55)),_(f.Switch,"errorDisabledColor",se(f.error.main,.55)),_(f.Switch,"infoDisabledColor",se(f.info.main,.55)),_(f.Switch,"successDisabledColor",se(f.success.main,.55)),_(f.Switch,"warningDisabledColor",se(f.warning.main,.55)),_(f.TableCell,"border",se(Ko(f.divider,1),.68)),_(f.Tooltip,"bg",Ko(f.grey[700],.92))}Zt(f.background,"default"),Zt(f.background,"paper"),Zt(f.common,"background"),Zt(f.common,"onBackground"),Zt(f,"divider"),Object.keys(f).forEach(U=>{const H=f[U];H&&typeof H=="object"&&(H.main&&_(f[U],"mainChannel",Ni(Li(H.main))),H.light&&_(f[U],"lightChannel",Ni(Li(H.light))),H.dark&&_(f[U],"darkChannel",Ni(Li(H.dark))),H.contrastText&&_(f[U],"contrastTextChannel",Ni(Li(H.contrastText))),U==="text"&&(Zt(f[U],"primary"),Zt(f[U],"secondary")),U==="action"&&(H.active&&Zt(f[U],"active"),H.selected&&Zt(f[U],"selected")))})}),C=t.reduce((M,f)=>mt(M,f),C);const P={prefix:o,disableCssColorScheme:i,shouldSkipGeneratingVar:l,getSelector:Tx(C)},{vars:w,generateThemeVars:R,generateStyleSheets:L}=ZS(C,P);return C.vars=w,Object.entries(C.colorSchemes[C.defaultColorScheme]).forEach(([M,f])=>{C[M]=f}),C.generateThemeVars=R,C.generateStyleSheets=L,C.generateSpacing=function(){return Lm(u.spacing,fc(this))},C.getColorSchemeSelector=qS(a),C.spacing=C.generateSpacing(),C.shouldSkipGeneratingVar=l,C.unstable_sxConfig={...ha,...u==null?void 0:u.unstable_sxConfig},C.unstable_sx=function(f){return qr({sx:f,theme:this})},C.toRuntimeSource=Im,C}function Od(e,t,n){e.colorSchemes&&n&&(e.colorSchemes[t]={...n!==!0&&n,palette:wc({...n===!0?{}:n.palette,mode:t})})}function jx(e={},...t){const{palette:n,cssVariables:r=!1,colorSchemes:i=n?void 0:{light:!0},defaultColorScheme:o=n==null?void 0:n.mode,...l}=e,a=o||"light",s=i==null?void 0:i[a],u={...i,...n?{[a]:{...typeof s!="boolean"&&s,palette:n}}:void 0};if(r===!1){if(!("colorSchemes"in e))return ou(e,...t);let d=n;"palette"in e||u[a]&&(u[a]!==!0?d=u[a].palette:a==="dark"&&(d={mode:"dark"}));const c=ou({...e,palette:d},...t);return c.defaultColorScheme=a,c.colorSchemes=u,c.palette.mode==="light"&&(c.colorSchemes.light={...u.light!==!0&&u.light,palette:c.palette},Od(c,"dark",u.dark)),c.palette.mode==="dark"&&(c.colorSchemes.dark={...u.dark!==!0&&u.dark,palette:c.palette},Od(c,"light",u.light)),c}return!n&&!("light"in u)&&a==="light"&&(u.light=!0),Ox({...l,colorSchemes:u,defaultColorScheme:a,...typeof r!="boolean"&&r},...t)}const Dx=jx(),zx="$$material";function Mx(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}const Ax=e=>Mx(e)&&e!=="classes",Ix=MS({themeId:zx,defaultTheme:Dx,rootShouldForwardProp:Ax}),$x=GS;function Fx(e){return QS(e)}function bx(e){return mm("MuiSvgIcon",e)}j1("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);const Bx=e=>{const{color:t,fontSize:n,classes:r}=e,i={root:["root",t!=="inherit"&&`color${Zr(t)}`,`fontSize${Zr(n)}`]};return R1(i,bx,r)},Ux=Ix("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.color!=="inherit"&&t[`color${Zr(n.color)}`],t[`fontSize${Zr(n.fontSize)}`]]}})($x(({theme:e})=>{var t,n,r,i,o,l,a,s,u,d,c,p,v,x;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",flexShrink:0,transition:(i=(t=e.transitions)==null?void 0:t.create)==null?void 0:i.call(t,"fill",{duration:(r=(n=(e.vars??e).transitions)==null?void 0:n.duration)==null?void 0:r.shorter}),variants:[{props:y=>!y.hasSvgAsChild,style:{fill:"currentColor"}},{props:{fontSize:"inherit"},style:{fontSize:"inherit"}},{props:{fontSize:"small"},style:{fontSize:((l=(o=e.typography)==null?void 0:o.pxToRem)==null?void 0:l.call(o,20))||"1.25rem"}},{props:{fontSize:"medium"},style:{fontSize:((s=(a=e.typography)==null?void 0:a.pxToRem)==null?void 0:s.call(a,24))||"1.5rem"}},{props:{fontSize:"large"},style:{fontSize:((d=(u=e.typography)==null?void 0:u.pxToRem)==null?void 0:d.call(u,35))||"2.1875rem"}},...Object.entries((e.vars??e).palette).filter(([,y])=>y&&y.main).map(([y])=>{var T,m;return{props:{color:y},style:{color:(m=(T=(e.vars??e).palette)==null?void 0:T[y])==null?void 0:m.main}}}),{props:{color:"action"},style:{color:(p=(c=(e.vars??e).palette)==null?void 0:c.action)==null?void 0:p.active}},{props:{color:"disabled"},style:{color:(x=(v=(e.vars??e).palette)==null?void 0:v.action)==null?void 0:x.disabled}},{props:{color:"inherit"},style:{color:void 0}}]}})),Bl=N.forwardRef(function(t,n){const r=Fx({props:t,name:"MuiSvgIcon"}),{children:i,className:o,color:l="inherit",component:a="svg",fontSize:s="medium",htmlColor:u,inheritViewBox:d=!1,titleAccess:c,viewBox:p="0 0 24 24",...v}=r,x=N.isValidElement(i)&&i.type==="svg",y={...r,color:l,component:a,fontSize:s,instanceFontSize:t.fontSize,inheritViewBox:d,viewBox:p,hasSvgAsChild:x},T={};d||(T.viewBox=p);const m=Bx(y);return j.jsxs(Ux,{as:a,className:z1(m.root,o),focusable:"false",color:u,"aria-hidden":c?void 0:!0,role:c?"img":void 0,ref:n,...T,...v,...x&&i.props,ownerState:y,children:[x?i.props.children:i,c?j.jsx("title",{children:c}):null]})});Bl&&(Bl.muiName="SvgIcon");function Vx(e,t){function n(r,i){return j.jsx(Bl,{"data-testid":`${t}Icon`,ref:i,...r,children:e})}return n.muiName=Bl.muiName,N.memo(N.forwardRef(n))}const jd=Vx(j.jsx("path",{d:"M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2M1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49c.08-.14.12-.31.12-.48 0-.55-.45-1-1-1H5.21l-.94-2zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2"}),"ShoppingCart");function bm({cartItems:e}){const t=Object.keys(e).length;return j.jsxs("nav",{className:xn.container,children:[j.jsx("h1",{className:xn["nav-heading"],children:"Hobby Tech"}),j.jsx(Bm,{sumCartItems:t})]})}function Bm({sumCartItems:e}){return j.jsxs("ul",{className:xn.nav,children:[j.jsx("li",{children:j.jsx(an,{to:"/",className:xn.link,children:"home"})}),j.jsx("li",{children:j.jsx(an,{to:"store",className:xn.link,children:"shop"})}),j.jsx(an,{to:"bag",className:xn.link,children:e>0?j.jsxs("div",{className:xn["cart-icon-container"],children:[j.jsx("div",{className:xn["cart-icon-circle"]}),j.jsx(jd,{fontSize:"large"})]}):j.jsx(jd,{fontSize:"large"})})]})}bm.propTypes={cartItems:De.object};Bm.propTypes={sumCartItems:De.number};function Wx(){const[e,t]=N.useState({}),[n,r]=N.useState(null);return j.jsxs(j.Fragment,{children:[j.jsx(bm,{cartItems:e}),j.jsx(Jv,{context:[e,t,n,r]})]})}const Hx="_btn_1oi8g_1",Kx="_action_1oi8g_10",Dd={btn:Hx,action:Kx};function So(e){return j.jsx("button",{onClick:e.onClick,className:e.styles?Dd[e.styles]:Dd.btn,children:e.text})}So.propTypes={onClick:De.func,text:De.string,styles:De.string};const Qx="_container_wwoz3_1",Gx="_summary_wwoz3_14",Yx="_fullwidth_wwoz3_21",Xx="_card_wwoz3_25",Jx="_cartItems_wwoz3_33",Zx="_cartItem_wwoz3_33",qx="_qtybtn_wwoz3_73",ek="_qtyp_wwoz3_77",tk="_img_wwoz3_1",nk="_header_wwoz3_91",rk="_input_wwoz3_95",zt={container:Qx,"empty-cart":"_empty-cart_wwoz3_6",summary:Gx,fullwidth:Yx,card:Xx,cartItems:Jx,cartItem:Zx,"price-qty":"_price-qty_wwoz3_63",qtybtn:qx,qtyp:ek,img:tk,header:nk,input:rk};function Vr(e){return(e/100).toFixed(2).toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}const ik=()=>{const[e,t]=sc(),n=Object.keys(e);return j.jsx("div",{children:j.jsxs("div",{className:zt.container,children:[j.jsx(Um,{cartKeys:n,cart:e,setCart:t}),j.jsx(Vm,{cart:e})]})})};function Um({cartKeys:e,cart:t,setCart:n}){return j.jsx(j.Fragment,{children:e.length>0?j.jsx("div",{className:zt.fullwidth,children:j.jsx("div",{className:zt.cartItems,children:e.map((r,i)=>j.jsx(Wm,{item:t[r],cart:t,setCart:n},i))})}):j.jsx("div",{className:zt["empty-cart"],children:j.jsx("h2",{children:"Your cart is empty"})})})}function Vm({cart:e}){const t=Object.keys(e),n=.1;let r=0,i=0;t.forEach(a=>{i+=Number(e[a].price)*Number(e[a].qty),r+=Number(e[a].qty)});const o=n*i,l=o+i;return j.jsxs("div",{className:zt.summary,children:[j.jsx("h2",{children:"Order Summary"}),j.jsxs("p",{children:["Subtotal (",r," items): $",Vr(i)]}),j.jsxs("p",{children:["Shipping (10%): $",Vr(o)]}),j.jsxs("p",{children:["Total: $",Vr(l)]}),j.jsx(So,{text:"Checkout",onClick:()=>alert("Congrats! You would've leveled up")})]})}function Wm({item:e,cart:t,setCart:n}){const{title:r,price:i,image:o,qty:l}=e;return j.jsxs("div",{className:zt.cartItem,children:[j.jsx("img",{id:zt.img,src:o,alt:r}),j.jsxs("div",{className:zt.card,children:[j.jsxs("div",{children:[j.jsx("h3",{children:r}),j.jsxs("div",{className:zt["price-qty"],children:[j.jsxs("p",{children:[" $",Vr(i)," x "]}),j.jsxs("div",{className:zt.qtybtn,children:[j.jsx("button",{onClick:()=>lk(e,t,n),children:"-"}),j.jsx(Hm,{item:e,cart:t,setCart:n}),j.jsx("button",{onClick:()=>ok(e,t,n),children:"+"})]}),j.jsxs("p",{children:["Item total: $",Vr(l*i)," "]})]})]}),j.jsx("div",{children:j.jsx(So,{onClick:()=>ak(e,t,n),text:"Remove From Cart"})})]})]})}function Hm({item:e,cart:t,setCart:n}){function r(i){const o=Number(i.target.value);let l={...t};o!==0?l[e.id].qty=o:l[e.id].qty=1,n(l)}return j.jsx("input",{value:e.qty,onChange:r,min:"1",max:"999",type:"number",className:zt.input})}function ok(e,t,n){if(t[e.id]){let r={...t};r[e.id].qty+=1,n(r)}}function lk(e,t,n){if(t[e.id]){let r={...t};r[e.id].qty>1&&(r[e.id].qty-=1),n(r)}}function ak(e,t,n){if(t[e.id]){let r={...t};delete r[e.id],n(r)}}Wm.propTypes={item:De.object,cart:De.object,setCart:De.func};Um.propTypes={cartKeys:De.array,cart:De.object,setCart:De.func};Vm.propTypes={cart:De.object};Hm.propTypes={item:De.object,cart:De.object,setCart:De.func};const sk="_container_exc1g_5",uk="_mainHeading_exc1g_13",Ci={container:sk,mainHeading:uk,"sub-heading":"_sub-heading_exc1g_18","heading-color":"_heading-color_exc1g_22","hero-img":"_hero-img_exc1g_26"};function ck(){return j.jsx("main",{children:j.jsx(fk,{})})}function fk(){return j.jsx(j.Fragment,{children:j.jsxs("div",{className:Ci.container,children:[j.jsxs("h1",{className:Ci.mainHeading,children:["Our products help ",j.jsx("span",{className:Ci["heading-color"],children:"you"})," "]}),j.jsx("p",{className:Ci["sub-heading"],children:"Keep engineers happy using working technology. Fast results and guaranteed value from day one."}),j.jsx(an,{to:"/store",children:j.jsx(So,{text:"Start shopping now!"})}),j.jsx("div",{children:j.jsx("img",{src:"/hero.jpg",alt:"",className:Ci["hero-img"]})})]})})}const dk="_img_1sizt_1",pk={img:dk};function Sc({item:e}){return j.jsxs(j.Fragment,{children:[j.jsx("img",{src:e.image,alt:e.title,className:pk.img}),j.jsx("p",{children:e.title}),j.jsxs("p",{children:["$",Vr(e.price)]})]})}Sc.propTypes={item:De.object};const hk="_container_1lsd1_1",mk="_card_1lsd1_9",gk="_link_1lsd1_20",zr={container:hk,card:mk,link:gk};function yk(){const[e,t,n]=sc(),{id:r}=$v();if(!n)return j.jsx(zd,{});const i=n.find(o=>o.id===r);return j.jsx("div",{className:zr.container,children:i?j.jsxs("div",{className:zr.card,children:[j.jsx(an,{to:"/store",className:zr.link,children:"Back"}),j.jsx(Sc,{item:i,cart:e,setCart:t}),j.jsx(So,{onClick:()=>{e[i.id]?wk(i,e,t):vk(i,e,t)},text:e[i.id]?"Remove from Cart":"Add to Cart"}),Object.keys(e).length>0?j.jsx(an,{to:"/bag",className:zr.link,children:"View Cart"}):null]}):j.jsx(zd,{})})}function zd(){return j.jsx("div",{className:zr.container,children:j.jsxs("div",{className:zr.card,children:[j.jsx("h1",{children:"Product Does Not Exist!"}),j.jsx(an,{to:"/store",children:"Return to Store"})]})})}function vk(e,t,n){let r={...t};r[e.id]=e,r[e.id].qty=1,n(r)}function wk(e,t,n){if(t[e.id]){let r={...t};delete r[e.id],n(r)}}const Sk="_container_1wfgo_1",xk="_card_1wfgo_8",kk="_link_1wfgo_20",ns={container:Sk,card:xk,link:kk};function Km({loading:e,items:t,cart:n,setCart:r}){return j.jsx("div",{className:ns.container,children:e?null:t.map((i,o)=>j.jsxs("div",{className:ns.card,children:[j.jsx(Sc,{item:i,cart:n,setCart:r}),j.jsxs(an,{to:i.id,className:ns.link,children:[" ","More Info"]})]},o))})}Km.propTypes={loading:De.bool,items:De.array,cart:De.object,setCart:De.func};function Ck(){const[e,t,n,r]=sc(),[i,o]=N.useState(!0);return Ek(n,r,i,o),j.jsx("div",{children:j.jsx(Km,{loading:i,items:n,cart:e,setCart:t})})}function Ek(e,t,n,r){N.useEffect(()=>{if(e!==null){r(!1);return}fetch("https://fakestoreapi.com/products/category/electronics",{mode:"cors"}).then(i=>{if(i.status>=400)throw new Error("unable to fetch items");return i.json()}).then(i=>{const o=[];i.forEach(l=>{o.push({title:l.title,price:l.price*100,image:l.image,id:crypto.randomUUID()})}),t(o)}).catch(i=>console.log(i)).finally(()=>r(!1))},[e,t,n,r])}function _k(){return j.jsxs("div",{children:[j.jsx("h1",{children:"Oh no, this route doesn't exist!"}),j.jsxs("p",{children:["You can go back to the home page by clicking ",j.jsx(an,{to:"/",children:"here"})," though!"]})]})}const Pk=[{path:"/",element:j.jsx(Wx,{}),errorElement:j.jsx(_k,{}),children:[{path:"/",element:j.jsx(ck,{}),index:!0},{path:"store",element:j.jsx(Ck,{})},{path:"store/:id",element:j.jsx(yk,{})},{path:"bag",element:j.jsx(ik,{})}]}],Tk=o1(Pk);Gh(document.getElementById("root")).render(j.jsx(N.StrictMode,{children:j.jsx(h1,{router:Tk})})); diff --git a/shopping-cart/app/assets/index-BNTrPwWY.css b/shopping-cart/app/assets/index-BNTrPwWY.css new file mode 100644 index 0000000..6d5686b --- /dev/null +++ b/shopping-cart/app/assets/index-BNTrPwWY.css @@ -0,0 +1 @@ +:root{font-family:Inter,system-ui,sans-serif;line-height:1.5;font-weight:400;font-size:18px;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;display:flex}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.roboto-condensed-fnt{font-family:Roboto Condensed,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}#root{margin:0 auto;padding:0;width:100%}._container_xopze_1{display:flex;justify-content:space-between;padding:0 1rem}._nav_xopze_8{display:flex;list-style-type:none;gap:20px;padding-right:1rem;margin-left:auto;align-self:center}._link_xopze_19{text-decoration:none;font-size:1.5rem;color:#0e374e}._nav-heading_xopze_25{color:#0e374e}._cart-icon-container_xopze_29{position:relative}._cart-icon-circle_xopze_33{background:#85d5f4;border-radius:50%;height:20px;width:20px;position:absolute;top:7px;left:10px;opacity:60%}._btn_1oi8g_1{padding:1rem;margin:1rem;font-size:1rem;border-radius:.5rem;border:none;cursor:pointer}._action_1oi8g_10{color:red}._container_wwoz3_1{display:flex;justify-content:space-between}._empty-cart_wwoz3_6{width:100%;display:flex;justify-content:center;align-items:flex-start;margin-top:.5rem}._summary_wwoz3_14{margin-right:3rem;padding:1rem;display:inline-block;min-width:250px}._fullwidth_wwoz3_21{width:100%}._card_wwoz3_25{display:flex;flex-direction:column;margin:0 2rem;justify-content:center;align-items:center}._cartItems_wwoz3_33{display:flex;flex-direction:column;gap:2.5rem;align-items:space-between;justify-content:space-between;align-content:flex-start}._cartItem_wwoz3_33{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));justify-items:center;padding:2rem 0;position:relative}._cartItem_wwoz3_33:after{content:"";position:absolute;border-bottom:solid black;margin:auto;left:0;bottom:0;right:0;height:1px;width:50%;border-bottom:1px solid black}._price-qty_wwoz3_63{display:flex;gap:30px;justify-content:center}._price-qty_wwoz3_63 p{margin:0}._qtybtn_wwoz3_73{display:flex}._qtyp_wwoz3_77{font-size:1.3rem;padding:.5rem;margin:.5rem}#_img_wwoz3_1{max-width:100%;max-height:300px;object-fit:contain;border-radius:2rem;align-self:center}._header_wwoz3_91{margin:1rem}._input_wwoz3_95{max-width:30px}main{padding:0 1rem}._container_exc1g_5{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh}._mainHeading_exc1g_13{font-size:4rem;margin:0}._sub-heading_exc1g_18{font-size:1.5rem}._heading-color_exc1g_22{color:#0e6c96}._hero-img_exc1g_26{margin-top:100px;width:100%;max-height:800px;vertical-align:middle;object-fit:contain;float:left}._img_1sizt_1{width:100%;max-height:300px;vertical-align:middle;object-fit:contain;float:left}._container_1lsd1_1{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;align-items:stretch;text-align:center}._card_1lsd1_9{display:flex;flex-direction:column;max-width:20%;justify-content:end;padding:1.5rem;margin:1.5rem;border-radius:1rem}._link_1lsd1_20{text-decoration:none;color:#0e374e;font-weight:600;transition:font-weight .5s}._link_1lsd1_20:hover{font-weight:900}._container_1wfgo_1{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap;align-items:stretch}._card_1wfgo_8{display:flex;flex-direction:column;max-width:350px;justify-content:end;padding:1.5rem;margin:1.5rem;background:#e2f3fc;border-radius:1rem;text-align:center}._link_1wfgo_20{text-decoration:none;color:#0e374e;font-weight:600;transition:font-weight .5s}._link_1wfgo_20:hover{font-weight:900} diff --git a/shopping-cart/app/favicon.png b/shopping-cart/app/favicon.png new file mode 100644 index 0000000..cbca2bb Binary files /dev/null and b/shopping-cart/app/favicon.png differ diff --git a/shopping-cart/app/favicon.png.bak b/shopping-cart/app/favicon.png.bak new file mode 100644 index 0000000..661386d Binary files /dev/null and b/shopping-cart/app/favicon.png.bak differ diff --git a/shopping-cart/app/hero.jpg b/shopping-cart/app/hero.jpg new file mode 100644 index 0000000..9baa52d Binary files /dev/null and b/shopping-cart/app/hero.jpg differ diff --git a/shopping-cart/app/index.html b/shopping-cart/app/index.html new file mode 100644 index 0000000..96e6590 --- /dev/null +++ b/shopping-cart/app/index.html @@ -0,0 +1,20 @@ + + + + + + + + + + Hobby Tech + + + + +
+ + diff --git a/shopping-cart/app/shopping_cart_icon.svg b/shopping-cart/app/shopping_cart_icon.svg new file mode 100644 index 0000000..0a51c8f --- /dev/null +++ b/shopping-cart/app/shopping_cart_icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/shopping-cart/app/vite.svg b/shopping-cart/app/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/shopping-cart/app/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/shopping-cart/eslint.config.js b/shopping-cart/eslint.config.js new file mode 100644 index 0000000..238d2e4 --- /dev/null +++ b/shopping-cart/eslint.config.js @@ -0,0 +1,38 @@ +import js from '@eslint/js' +import globals from 'globals' +import react from 'eslint-plugin-react' +import reactHooks from 'eslint-plugin-react-hooks' +import reactRefresh from 'eslint-plugin-react-refresh' + +export default [ + { ignores: ['dist'] }, + { + files: ['**/*.{js,jsx}'], + languageOptions: { + ecmaVersion: 2020, + globals: globals.browser, + parserOptions: { + ecmaVersion: 'latest', + ecmaFeatures: { jsx: true }, + sourceType: 'module', + }, + }, + settings: { react: { version: '18.3' } }, + plugins: { + react, + 'react-hooks': reactHooks, + 'react-refresh': reactRefresh, + }, + rules: { + ...js.configs.recommended.rules, + ...react.configs.recommended.rules, + ...react.configs['jsx-runtime'].rules, + ...reactHooks.configs.recommended.rules, + 'react/jsx-no-target-blank': 'off', + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + }, + }, +] diff --git a/shopping-cart/index.html b/shopping-cart/index.html new file mode 100644 index 0000000..a5d436e --- /dev/null +++ b/shopping-cart/index.html @@ -0,0 +1,19 @@ + + + + + + + + + + Hobby Tech + + +
+ + + diff --git a/shopping-cart/package-lock.json b/shopping-cart/package-lock.json new file mode 100644 index 0000000..4ff6031 --- /dev/null +++ b/shopping-cart/package-lock.json @@ -0,0 +1,5000 @@ +{ + "name": "shopping-cart", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "shopping-cart", + "version": "0.0.0", + "dependencies": { + "@emotion/react": "^11.13.5", + "@emotion/styled": "^11.13.5", + "@mui/icons-material": "^6.1.8", + "@mui/material": "^6.1.8", + "prop-types": "^15.8.1", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-router-dom": "^6.27.0" + }, + "devDependencies": { + "@eslint/js": "^9.11.1", + "@types/react": "^18.3.10", + "@types/react-dom": "^18.3.0", + "@vitejs/plugin-react": "^4.3.2", + "eslint": "^9.11.1", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^5.1.0-rc.0", + "eslint-plugin-react-refresh": "^0.4.12", + "globals": "^15.9.0", + "vite": "^5.4.8" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", + "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.25.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", + "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", + "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helpers": "^7.25.7", + "@babel/parser": "^7.25.8", + "@babel/template": "^7.25.7", + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.8", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", + "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", + "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.25.7", + "@babel/helper-validator-option": "^7.25.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", + "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", + "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-simple-access": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "@babel/traverse": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz", + "integrity": "sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", + "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", + "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", + "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", + "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", + "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", + "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-self": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.25.7.tgz", + "integrity": "sha512-JD9MUnLbPL0WdVK8AWC7F7tTG2OS6u/AKKnsK+NdRhUiVdnzyR1S3kKQCaRLOiaULvUiqK6Z4JQE635VgtCFeg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-source": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.25.7.tgz", + "integrity": "sha512-S/JXG/KrbIY06iyJPKfxr0qRxnhNOdkNXYBl/rmwgDd72cQLH9tEGkDm/yJPGvcSIUoikzfjMios9i+xT/uv9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", + "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", + "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", + "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", + "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emotion/babel-plugin": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.16.7", + "@babel/runtime": "^7.18.3", + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/serialize": "^1.3.3", + "babel-plugin-macros": "^3.1.0", + "convert-source-map": "^1.5.0", + "escape-string-regexp": "^4.0.0", + "find-root": "^1.1.0", + "source-map": "^0.5.7", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/babel-plugin/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "license": "MIT" + }, + "node_modules/@emotion/babel-plugin/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@emotion/cache": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.13.5.tgz", + "integrity": "sha512-Z3xbtJ+UcK76eWkagZ1onvn/wAVb1GOMuR15s30Fm2wrMgC7jzpnO2JZXr4eujTTqoQFUrZIw/rT0c6Zzjca1g==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.9.0", + "@emotion/sheet": "^1.4.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "stylis": "4.2.0" + } + }, + "node_modules/@emotion/hash": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz", + "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==", + "license": "MIT" + }, + "node_modules/@emotion/is-prop-valid": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz", + "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==", + "license": "MIT", + "dependencies": { + "@emotion/memoize": "^0.9.0" + } + }, + "node_modules/@emotion/memoize": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", + "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==", + "license": "MIT" + }, + "node_modules/@emotion/react": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.13.5.tgz", + "integrity": "sha512-6zeCUxUH+EPF1s+YF/2hPVODeV/7V07YU5x+2tfuRL8MdW6rv5vb2+CBEGTGwBdux0OIERcOS+RzxeK80k2DsQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.13.5", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", + "@emotion/utils": "^1.4.2", + "@emotion/weak-memoize": "^0.4.0", + "hoist-non-react-statics": "^3.3.1" + }, + "peerDependencies": { + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/serialize": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", + "license": "MIT", + "dependencies": { + "@emotion/hash": "^0.9.2", + "@emotion/memoize": "^0.9.0", + "@emotion/unitless": "^0.10.0", + "@emotion/utils": "^1.4.2", + "csstype": "^3.0.2" + } + }, + "node_modules/@emotion/sheet": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz", + "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==", + "license": "MIT" + }, + "node_modules/@emotion/styled": { + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.13.5.tgz", + "integrity": "sha512-gnOQ+nGLPvDXgIx119JqGalys64lhMdnNQA9TMxhDA4K0Hq5+++OE20Zs5GxiCV9r814xQ2K5WmtofSpHVW6BQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.18.3", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/is-prop-valid": "^1.3.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", + "@emotion/utils": "^1.4.2" + }, + "peerDependencies": { + "@emotion/react": "^11.0.0-rc.0", + "react": ">=16.8.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@emotion/unitless": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", + "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==", + "license": "MIT" + }, + "node_modules/@emotion/use-insertion-effect-with-fallbacks": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz", + "integrity": "sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==", + "license": "MIT", + "peerDependencies": { + "react": ">=16.8.0" + } + }, + "node_modules/@emotion/utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==", + "license": "MIT" + }, + "node_modules/@emotion/weak-memoize": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz", + "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==", + "license": "MIT" + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.11.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz", + "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/config-array": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz", + "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@eslint/object-schema": "^2.1.4", + "debug": "^4.3.1", + "minimatch": "^3.1.2" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/core": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz", + "integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz", + "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "9.12.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz", + "integrity": "sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", + "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.0.tgz", + "integrity": "sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.0.tgz", + "integrity": "sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.5", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.5.tgz", + "integrity": "sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.0", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@mui/core-downloads-tracker": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-6.1.8.tgz", + "integrity": "sha512-TGAvzwUg9hybDacwfIGFjI2bXYXrIqky+vMfaeay8rvT56/PNAlvIDUJ54kpT5KRc9AWAihOvtDI7/LJOThOmQ==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + } + }, + "node_modules/@mui/icons-material": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-6.1.8.tgz", + "integrity": "sha512-6frsXcf1TcJKWevWwRup6V4L8lzI33cbHcAjT83YLgKw0vYRZKY0kjMI9fhrJZdRWXgFFgKKvEv3GjoxbqFF7A==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.26.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@mui/material": "^6.1.8", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-6.1.8.tgz", + "integrity": "sha512-QZdQFnXct+7NXIzHgT3qt+sQiO7HYGZU2vymP9Xl9tUMXEOA/S1mZMMb7+WGZrk5TzNlU/kP/85K0da5V1jXoQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.26.0", + "@mui/core-downloads-tracker": "^6.1.8", + "@mui/system": "^6.1.8", + "@mui/types": "^7.2.19", + "@mui/utils": "^6.1.8", + "@popperjs/core": "^2.11.8", + "@types/react-transition-group": "^4.4.11", + "clsx": "^2.1.1", + "csstype": "^3.1.3", + "prop-types": "^15.8.1", + "react-is": "^18.3.1", + "react-transition-group": "^4.4.5" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@mui/material-pigment-css": "^6.1.8", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@mui/material-pigment-css": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/material/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "license": "MIT" + }, + "node_modules/@mui/private-theming": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-6.1.8.tgz", + "integrity": "sha512-TuKl7msynCNCVvhX3c0ef1sF0Qb3VHcPs8XOGB/8bdOGBr/ynmIG1yTMjZeiFQXk8yN9fzK/FDEKMFxILNn3wg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.26.0", + "@mui/utils": "^6.1.8", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/styled-engine": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-6.1.8.tgz", + "integrity": "sha512-ZvEoT0U2nPLSLI+B4by4cVjaZnPT2f20f4JUPkyHdwLv65ZzuoHiTlwyhqX1Ch63p8bcJzKTHQVGisEoMK6PGA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.26.0", + "@emotion/cache": "^11.13.1", + "@emotion/serialize": "^1.3.2", + "@emotion/sheet": "^1.4.0", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.4.1", + "@emotion/styled": "^11.3.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + } + } + }, + "node_modules/@mui/system": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-6.1.8.tgz", + "integrity": "sha512-i1kLfQoWxzFpXTBQIuPoA3xKnAnP3en4I2T8xIolovSolGQX5k8vGjw1JaydQS40td++cFsgCdEU458HDNTGUA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.26.0", + "@mui/private-theming": "^6.1.8", + "@mui/styled-engine": "^6.1.8", + "@mui/types": "^7.2.19", + "@mui/utils": "^6.1.8", + "clsx": "^2.1.1", + "csstype": "^3.1.3", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@emotion/react": "^11.5.0", + "@emotion/styled": "^11.3.0", + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/react": { + "optional": true + }, + "@emotion/styled": { + "optional": true + }, + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/types": { + "version": "7.2.19", + "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.19.tgz", + "integrity": "sha512-6XpZEM/Q3epK9RN8ENoXuygnqUQxE+siN/6rGRi2iwJPgBUR25mphYQ9ZI87plGh58YoZ5pp40bFvKYOCDJ3tA==", + "license": "MIT", + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils": { + "version": "6.1.8", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.1.8.tgz", + "integrity": "sha512-O2DWb1kz8hiANVcR7Z4gOB3SvPPsSQGUmStpyBDzde6dJIfBzgV9PbEQOBZd3EBsd1pB+Uv1z5LAJAbymmawrA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.26.0", + "@mui/types": "^7.2.19", + "@types/prop-types": "^15.7.13", + "clsx": "^2.1.1", + "prop-types": "^15.8.1", + "react-is": "^18.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mui-org" + }, + "peerDependencies": { + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/@mui/utils/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "license": "MIT" + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@remix-run/router": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.20.0.tgz", + "integrity": "sha512-mUnk8rPJBI9loFDZ+YzPGdeniYK+FTmRD1TMCz7ev2SNIozyKKpnGgsxO34u6Z4z/t0ITuu7voi/AshfsGsgFg==", + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.24.0.tgz", + "integrity": "sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.24.0.tgz", + "integrity": "sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.24.0.tgz", + "integrity": "sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.24.0.tgz", + "integrity": "sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.24.0.tgz", + "integrity": "sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.24.0.tgz", + "integrity": "sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.24.0.tgz", + "integrity": "sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.24.0.tgz", + "integrity": "sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.24.0.tgz", + "integrity": "sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.24.0.tgz", + "integrity": "sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.24.0.tgz", + "integrity": "sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.24.0.tgz", + "integrity": "sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.24.0.tgz", + "integrity": "sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.24.0.tgz", + "integrity": "sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.24.0.tgz", + "integrity": "sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.24.0.tgz", + "integrity": "sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "license": "MIT" + }, + "node_modules/@types/prop-types": { + "version": "15.7.13", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz", + "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==", + "license": "MIT" + }, + "node_modules/@types/react": { + "version": "18.3.11", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.11.tgz", + "integrity": "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==", + "license": "MIT", + "dependencies": { + "@types/prop-types": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.3.0", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", + "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/react-transition-group": { + "version": "4.4.11", + "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.11.tgz", + "integrity": "sha512-RM05tAniPZ5DZPzzNFP+DmrcOdD0efDUxMy3145oljWSl3x9ZV5vhme98gTxFrj2lhXvmGNnUiuDyJgY9IKkNA==", + "license": "MIT", + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@vitejs/plugin-react": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.2.tgz", + "integrity": "sha512-hieu+o05v4glEBucTcKMK3dlES0OeJlD9YVOAPraVMOInBCwzumaIFiUjr4bHK7NPgnAHgiskUoceKercrN8vg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.25.2", + "@babel/plugin-transform-react-jsx-self": "^7.24.7", + "@babel/plugin-transform-react-jsx-source": "^7.24.7", + "@types/babel__core": "^7.20.5", + "react-refresh": "^0.14.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "vite": "^4.2.0 || ^5.0.0" + } + }, + "node_modules/acorn": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", + "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "license": "Python-2.0" + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-includes": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "is-string": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.findlast": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlast/-/array.prototype.findlast-1.2.5.tgz", + "integrity": "sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.4.tgz", + "integrity": "sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-shim-unscopables": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-plugin-macros/node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/browserslist": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001667", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001667.tgz", + "integrity": "sha512-7LTwJjcRkzKFmtqGsibMeuXmvFDfZq/nzIjnmgCGzKKRVzjD72selLDK1oPF/Oxzmt4fNcPvTDvGqSDG4tCALw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "license": "MIT", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "license": "MIT" + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dom-helpers": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", + "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.8.7", + "csstype": "^3.0.2" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.5.35", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.35.tgz", + "integrity": "sha512-hOSRInrIDm0Brzp4IHW2F/VM+638qOL2CzE0DgpnGzKW27C95IqqeqgKz/hxHGnvPxvQGpHUGD5qRVC9EZY2+A==", + "dev": true, + "license": "ISC" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-iterator-helpers": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.1.0.tgz", + "integrity": "sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "globalthis": "^1.0.4", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "iterator.prototype": "^1.1.3", + "safe-array-concat": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "9.12.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz", + "integrity": "sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.11.0", + "@eslint/config-array": "^0.18.0", + "@eslint/core": "^0.6.0", + "@eslint/eslintrc": "^3.1.0", + "@eslint/js": "9.12.0", + "@eslint/plugin-kit": "^0.2.0", + "@humanfs/node": "^0.16.5", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.3.1", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.1.0", + "eslint-visitor-keys": "^4.1.0", + "espree": "^10.2.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" + }, + "peerDependencies": { + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.37.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.1.tgz", + "integrity": "sha512-xwTnwDqzbDRA8uJ7BMxPs/EXRB3i8ZfnOIp8BsxEQkT0nHPp+WWceqGgo6rKb9ctNi8GJLDT4Go5HAWELa/WMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.2", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.19", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.8", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.0", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.11", + "string.prototype.repeat": "^1.0.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + } + }, + "node_modules/eslint-plugin-react-hooks": { + "version": "5.1.0-rc-fb9a90fa48-20240614", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.1.0-rc-fb9a90fa48-20240614.tgz", + "integrity": "sha512-xsiRwaDNF5wWNC4ZHLut+x/YcAxksUd9Rizt7LaEn3bV8VyYRpXnRJQlLOfYaVy9esk4DFP4zPPnoNVjq5Gc0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } + }, + "node_modules/eslint-plugin-react-refresh": { + "version": "0.4.12", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.12.tgz", + "integrity": "sha512-9neVjoGv20FwYtCP6CB1dzR1vr57ZDNOXst21wd2xJ/cTlM2xLq0GWVlSNTdMn/4BtP6cHYBMCSp1wFBJ9jBsg==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "eslint": ">=7" + } + }, + "node_modules/eslint-scope": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.1.0.tgz", + "integrity": "sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz", + "integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/eslint/node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/eslint/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/espree": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz", + "integrity": "sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^8.12.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.1.0" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^4.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "license": "MIT" + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true, + "license": "ISC" + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/globals": { + "version": "15.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.11.0.tgz", + "integrity": "sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "license": "BSD-3-Clause", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true, + "license": "ISC" + }, + "node_modules/iterator.prototype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", + "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "license": "MIT" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true, + "license": "MIT" + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz", + "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.entries": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.8.tgz", + "integrity": "sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/react": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.2" + }, + "peerDependencies": { + "react": "^18.3.1" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "license": "MIT" + }, + "node_modules/react-refresh": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", + "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-router": { + "version": "6.27.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.27.0.tgz", + "integrity": "sha512-YA+HGZXz4jaAkVoYBE98VQl+nVzI+cVI2Oj/06F5ZM+0u3TgedN9Y9kmMRo2mnkSK2nCpNQn0DVob4HCsY/WLw==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.20.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8" + } + }, + "node_modules/react-router-dom": { + "version": "6.27.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.27.0.tgz", + "integrity": "sha512-+bvtFWMC0DgAFrfKXKG9Fc+BcXWRUO1aJIihbB79xaeq0v5UzfvnM5houGUm1Y461WVRcgAQ+Clh5rdb1eCx4g==", + "license": "MIT", + "dependencies": { + "@remix-run/router": "1.20.0", + "react-router": "6.27.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "react": ">=16.8", + "react-dom": ">=16.8" + } + }, + "node_modules/react-transition-group": { + "version": "4.4.5", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz", + "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/runtime": "^7.5.5", + "dom-helpers": "^5.0.1", + "loose-envify": "^1.4.0", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": ">=16.6.0", + "react-dom": ">=16.6.0" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.6.tgz", + "integrity": "sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.1", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "globalthis": "^1.0.3", + "which-builtin-type": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/rollup": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", + "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.24.0", + "@rollup/rollup-android-arm64": "4.24.0", + "@rollup/rollup-darwin-arm64": "4.24.0", + "@rollup/rollup-darwin-x64": "4.24.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.24.0", + "@rollup/rollup-linux-arm-musleabihf": "4.24.0", + "@rollup/rollup-linux-arm64-gnu": "4.24.0", + "@rollup/rollup-linux-arm64-musl": "4.24.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.24.0", + "@rollup/rollup-linux-riscv64-gnu": "4.24.0", + "@rollup/rollup-linux-s390x-gnu": "4.24.0", + "@rollup/rollup-linux-x64-gnu": "4.24.0", + "@rollup/rollup-linux-x64-musl": "4.24.0", + "@rollup/rollup-win32-arm64-msvc": "4.24.0", + "@rollup/rollup-win32-ia32-msvc": "4.24.0", + "@rollup/rollup-win32-x64-msvc": "4.24.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/scheduler": { + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.11.tgz", + "integrity": "sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.7", + "regexp.prototype.flags": "^1.5.2", + "set-function-name": "^2.0.2", + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.repeat": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-1.0.0.tgz", + "integrity": "sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stylis": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz", + "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==", + "license": "MIT" + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true, + "license": "MIT" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/vite": { + "version": "5.4.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz", + "integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.4.tgz", + "integrity": "sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==", + "dev": true, + "license": "MIT", + "dependencies": { + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.0.2", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/shopping-cart/package.json b/shopping-cart/package.json new file mode 100644 index 0000000..b89d782 --- /dev/null +++ b/shopping-cart/package.json @@ -0,0 +1,34 @@ +{ + "name": "shopping-cart", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "lint": "eslint .", + "preview": "vite preview" + }, + "dependencies": { + "@emotion/react": "^11.13.5", + "@emotion/styled": "^11.13.5", + "@mui/icons-material": "^6.1.8", + "@mui/material": "^6.1.8", + "prop-types": "^15.8.1", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "react-router-dom": "^6.27.0" + }, + "devDependencies": { + "@eslint/js": "^9.11.1", + "@types/react": "^18.3.10", + "@types/react-dom": "^18.3.0", + "@vitejs/plugin-react": "^4.3.2", + "eslint": "^9.11.1", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^5.1.0-rc.0", + "eslint-plugin-react-refresh": "^0.4.12", + "globals": "^15.9.0", + "vite": "^5.4.8" + } +} diff --git a/shopping-cart/public/favicon.png b/shopping-cart/public/favicon.png new file mode 100644 index 0000000..cbca2bb Binary files /dev/null and b/shopping-cart/public/favicon.png differ diff --git a/shopping-cart/public/favicon.png.bak b/shopping-cart/public/favicon.png.bak new file mode 100644 index 0000000..661386d Binary files /dev/null and b/shopping-cart/public/favicon.png.bak differ diff --git a/shopping-cart/public/hero.jpg b/shopping-cart/public/hero.jpg new file mode 100644 index 0000000..9baa52d Binary files /dev/null and b/shopping-cart/public/hero.jpg differ diff --git a/shopping-cart/public/shopping_cart_icon.svg b/shopping-cart/public/shopping_cart_icon.svg new file mode 100644 index 0000000..0a51c8f --- /dev/null +++ b/shopping-cart/public/shopping_cart_icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/shopping-cart/public/vite.svg b/shopping-cart/public/vite.svg new file mode 100644 index 0000000..e7b8dfb --- /dev/null +++ b/shopping-cart/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/shopping-cart/src/App.jsx b/shopping-cart/src/App.jsx new file mode 100644 index 0000000..8bf3d4f --- /dev/null +++ b/shopping-cart/src/App.jsx @@ -0,0 +1,17 @@ +import { useState } from "react"; +import { Outlet } from "react-router-dom"; +import "./css/App.css"; +import Navbar from "./components/navbar"; + +function App() { + const [cart, setCart] = useState({}); + const [items, setItems] = useState(null); + return ( + <> + + + + ); +} + +export default App; diff --git a/shopping-cart/src/Cart.jsx b/shopping-cart/src/Cart.jsx new file mode 100644 index 0000000..f96aefa --- /dev/null +++ b/shopping-cart/src/Cart.jsx @@ -0,0 +1,181 @@ +import Button from "./components/button"; +import PropTypes from "prop-types"; +import styles from "./css/cart.module.css"; +import { useOutletContext } from "react-router-dom"; +import { currencyFormat } from "./utils/currency"; + +const Cart = () => { + const [cart, setCart] = useOutletContext(); + + const cartKeys = Object.keys(cart); + + return ( +
+
+ + +
+
+ ); +}; + +function Bag({ cartKeys, cart, setCart }) { + return ( + <> + {cartKeys.length > 0 ? ( +
+
+ {cartKeys.map((key, index) => ( + + ))} +
+
+ ) : ( +
+

Your cart is empty

+
+ )} + + ); +} + +function OrderSummary({ cart }) { + const cartItems = Object.keys(cart); + const shippingFee = 0.1; + let numItems = 0; + let subTotal = 0; + + cartItems.forEach((item) => { + subTotal += Number(cart[item].price) * Number(cart[item].qty); + numItems += Number(cart[item].qty); + }); + + const shippingCosts = shippingFee * subTotal; + const total = shippingCosts + subTotal; + + return ( +
+

Order Summary

+

+ Subtotal ({numItems} items): ${currencyFormat(subTotal)} +

+

Shipping (10%): ${currencyFormat(shippingCosts)}

+

Total: ${currencyFormat(total)}

+
+ ); +} + +function CartItem({ item, cart, setCart }) { + const { title, price, image, qty } = item; + + return ( +
+ {title} +
+
+

{title}

+
+

${currencyFormat(price)} x

+
+ + + +
+

Item total: ${currencyFormat(qty * price)}

+
+
+
+
+
+
+ ); +} + +function QuantityInput({ item, cart, setCart }) { + function handleChange(e) { + const newQty = Number(e.target.value); + let obj = { ...cart }; + if (newQty !== 0) { + obj[item.id].qty = newQty; + } else { + obj[item.id].qty = 1; + } + setCart(obj); + } + + return ( + + ); +} + +function increaseQty(item, cart, setCart) { + if (cart[item.id]) { + let obj = { ...cart }; + obj[item.id].qty += 1; + setCart(obj); + } +} + +function decreaseQty(item, cart, setCart) { + if (cart[item.id]) { + let obj = { ...cart }; + if (obj[item.id].qty > 1) obj[item.id].qty -= 1; + setCart(obj); + } +} + +function removeFromCart(item, cart, setCart) { + if (cart[item.id]) { + let obj = { ...cart }; + delete obj[item.id]; + setCart(obj); + } +} + +CartItem.propTypes = { + item: PropTypes.object, + cart: PropTypes.object, + setCart: PropTypes.func, +}; + +Bag.propTypes = { + cartKeys: PropTypes.array, + cart: PropTypes.object, + setCart: PropTypes.func, +}; + +OrderSummary.propTypes = { + cart: PropTypes.object, +}; + +QuantityInput.propTypes = { + item: PropTypes.object, + cart: PropTypes.object, + setCart: PropTypes.func, +}; + +export default Cart; diff --git a/shopping-cart/src/Store.jsx b/shopping-cart/src/Store.jsx new file mode 100644 index 0000000..9395762 --- /dev/null +++ b/shopping-cart/src/Store.jsx @@ -0,0 +1,54 @@ +import { useEffect, useState } from "react"; +import ProductCollection from "./components/productCollection"; +import { useOutletContext } from "react-router-dom"; + +export default function Store() { + const [cart, setCart, items, setItems] = useOutletContext(); + const [loading, setLoading] = useState(true); + + useFakeStoreAPIData(items, setItems, loading, setLoading); + + return ( +
+ +
+ ); +} + +function useFakeStoreAPIData(items, setItems, loading, setLoading) { + useEffect(() => { + if (items !== null) { + setLoading(false); + return; + } + + fetch("https://fakestoreapi.com/products/category/electronics", { + mode: "cors", + }) + .then((response) => { + if (response.status >= 400) { + throw new Error("unable to fetch items"); + } + return response.json(); + }) + .then((response) => { + const arr = []; + response.forEach((item) => { + arr.push({ + title: item.title, + price: item.price * 100, + image: item.image, + id: crypto.randomUUID(), + }); + }); + setItems(arr); + }) + .catch((error) => console.log(error)) + .finally(() => setLoading(false)); + }, [items, setItems, loading, setLoading]); +} diff --git a/shopping-cart/src/assets/react.svg b/shopping-cart/src/assets/react.svg new file mode 100644 index 0000000..6c87de9 --- /dev/null +++ b/shopping-cart/src/assets/react.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/shopping-cart/src/components/button.jsx b/shopping-cart/src/components/button.jsx new file mode 100644 index 0000000..5a2f319 --- /dev/null +++ b/shopping-cart/src/components/button.jsx @@ -0,0 +1,19 @@ +import PropTypes from "prop-types"; +import styles from "./button.module.css"; + +export default function Button(props) { + return ( + + ); +} + +Button.propTypes = { + onClick: PropTypes.func, + text: PropTypes.string, + styles: PropTypes.string, +}; diff --git a/shopping-cart/src/components/button.module.css b/shopping-cart/src/components/button.module.css new file mode 100644 index 0000000..57529a9 --- /dev/null +++ b/shopping-cart/src/components/button.module.css @@ -0,0 +1,12 @@ +.btn { + padding: 1rem; + margin: 1rem; + font-size: 1rem; + border-radius: 0.5rem; + border: none; + cursor: pointer; +} + +.action { + color: red; +} diff --git a/shopping-cart/src/components/main.jsx b/shopping-cart/src/components/main.jsx new file mode 100644 index 0000000..4951dbb --- /dev/null +++ b/shopping-cart/src/components/main.jsx @@ -0,0 +1,33 @@ +import Button from "./button"; +import { Link } from "react-router-dom"; +import styles from "./main.module.css"; + +export default function Main() { + return ( +
+ +
+ ); +} + +function Default() { + return ( + <> +
+

+ Our products help you{" "} +

+

+ Keep engineers happy using working technology. Fast results and + guaranteed value from day one. +

+ +
+ + ); +} diff --git a/shopping-cart/src/components/main.module.css b/shopping-cart/src/components/main.module.css new file mode 100644 index 0000000..c2b936c --- /dev/null +++ b/shopping-cart/src/components/main.module.css @@ -0,0 +1,33 @@ +main { + padding: 0 1rem; +} + +.container { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + height: 100vh; +} + +.mainHeading { + font-size: 4rem; + margin: 0; +} + +.sub-heading { + font-size: 1.5rem; +} + +.heading-color { + color: #0e6c96; +} + +.hero-img { + margin-top: 100px; + width: 100%; + max-height: 800px; + vertical-align: middle; + object-fit: contain; + float: left; +} diff --git a/shopping-cart/src/components/navbar.jsx b/shopping-cart/src/components/navbar.jsx new file mode 100644 index 0000000..2a58391 --- /dev/null +++ b/shopping-cart/src/components/navbar.jsx @@ -0,0 +1,50 @@ +import styles from "./navbar.module.css"; +import { Link } from "react-router-dom"; +import PropTypes from "prop-types"; +import ShoppingCartIcon from "@mui/icons-material/ShoppingCart"; + +export default function Navbar({ cartItems }) { + const sumCartItems = Object.keys(cartItems).length; + + return ( +