PageSourceSearch

https://aflowos.com/assets/vendor-react-B_IdytDc.js

js aflowos.com collected 2026-09-24 14:37:29 UTC 104,955 bytes, 4 lines download raw bytes

vendor: 4,516 bytes, line 1
1(function(){try{var e=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};e.SENTRY_RELEASE={id:"961c2eb7750df318de834429069d65c6a949bf11"};var t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="29e53e0c-39d6-4e04-8e50-54c690e46840",e._sentryDebugIdIdentifier="sentry-dbid-29e53e0c-39d6-4e04-8e50-54c690e46840")}catch{}})();function En(e,t){for(var r=0;r<t.length;r++){const a=t[r];if(typeof a!="string"&&!Array.isArray(a)){for(const n in a)if(n!=="default"&&!(n in e)){const o=Object.getOwnPropertyDescriptor(a,n);o&&Object.defineProperty(e,n,o.get?o:{enumerable:!0,get:()=>a[n]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}function ma(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var qt={exports:{}},j={};var Fr;function wn(){if(Fr)return j;Fr=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),a=Symbol.for("react.strict_mode"),n=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),i=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),s=Symbol.for("react.suspense"),l=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),p=Symbol.for("react.activity"),R=Symbol.iterator;function g(f){return f===null||typeof f!="object"?null:(f=R&&f[R]||f["@@iterator"],typeof f=="function"?f:null)}var P={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,b={};function D(f,S,_){this.props=f,this.context=S,this.refs=b,this.updater=_||P}D.prototype.isReactComponent={},D.prototype.setState=function(f,S){if(typeof f!="object"&&typeof f!="function"&&f!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,f,S,"setState")},D.prototype.forceUpdate=function(f){this.updater.enqueueForceUpdate(this,f,"forceUpdate")};function x(){}x.prototype=D.prototype;function N(f,S,_){this.props=f,this.context=S,this.refs=b,this.updater=_||P}var V=N.prototype=new x;V.constructor=N,C(V,D.prototype),V.isPureReactComponent=!0;var H=Array.isArray;function re(){}var U={H:null,A:null,T:null,S:null},v=Object.prototype.hasOwnProperty;function G(f,S,_){var O=_.ref;return{$$typeof:e,type:f,key:S,ref:O!==void 0?O:null,props:_}}function Z(f,S){return G(f.type,S,f.props)}function se(f){return typeof f=="object"&&f!==null&&f.$$typeof===e}function J(f){var S={"=":"=0",":":"=2"};return"$"+f.replace(/[=:]/g,function(_){return S[_]})}var de=/\/+/g;function ae(f,S){return typeof f=="object"&&f!==null&&f.key!=null?J(""+f.key):S.toString(36)}function ue(f){switch(f.status){case"fulfilled":return f.value;case"rejected":throw f.reason;default:switch(typeof f.status=="string"?f.then(re,re):(f.status="pending",f.then(function(S){f.status==="pending"&&(f.status="fulfilled",f.value=S)},function(S){f.status==="pending"&&(f.status="rejected",f.reason=S)})),f.status){case"fulfilled":return f.value;case"rejected":throw f.reason}}throw f}function Y(f,S,_,O,I){var B=typeof f;(B==="undefined"||B==="boolean")&&(f=null);var q=!1;if(f===null)q=!0;else switch(B){case"bigint":case"string":case"number":q=!0;break;case"object":switch(f.$$typeof){case e:case t:q=!0;break;case h:return q=f._init,Y(q(f._payload),S,_,O,I)}}if(q)return I=I(f),q=O===""?"."+ae(f,0):O,H(I)?(_="",q!=null&&(_=q.replace(de,"$&/")+"/"),Y(I,S,_,"",function(Bt){return Bt})):I!=null&&(se(I)&&(I=Z(I,_+(I.key==null||f&&f.key===I.key?"":(""+I.key).replace(de,"$&/")+"/")+q)),S.push(I)),1;q=0;var ve=O===""?".":O+":";if(H(f))for(var fe=0;fe<f.length;fe++)O=f[fe],B=ve+ae(O,fe),q+=Y(O,S,_,B,I);else if(fe=g(f),typeof fe=="function")for(f=fe.call(f),fe=0;!(O=f.next()).done;)O=O.value,B=ve+ae(O,fe++),q+=Y(O,S,_,B,I);else if(B==="object"){if(typeof f.then=="function")return Y(ue(f),S,_,O,I);throw S=String(f),Error("Objects are not valid as a React child (found: "+(S==="[object Object]"?"object with keys {"+Object.keys(f).join(", ")+"}":S)+"). If you meant to render a collection of children, use an array instead.")}return q}function ee(f,S,_){if(f==null)return f;var O=[],I=0;return Y(f,O,"","",function(B){return S.call(_,B,I++)}),O}function ge(f){if(f._status===-1){var S=f._result;S=S(),S.then(function(_){(f._status===0||f._status===-1)&&(f._status=1,f._result=_)},function(_){(f._status===0||f._status===-1)&&(f._status=2,f._result=_)}
vendor: 2,158 bytes, line 1
1),f._status===-1&&(f._status=0,f._result=S)}if(f._status===1)return f._result.default;throw f._result}var X=typeof reportError=="function"?reportError:function(f){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var S=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof f=="object"&&f!==null&&typeof f.message=="string"?String(f.message):String(f),error:f});if(!window.dispatchEvent(S))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",f);return}console.error(f)},ce={map:ee,forEach:function(f,S,_){ee(f,function(){S.apply(this,arguments)},_)},count:function(f){var S=0;return ee(f,function(){S++}),S},toArray:function(f){return ee(f,function(S){return S})||[]},only:function(f){if(!se(f))throw Error("React.Children.only expected to receive a single React element child.");return f}};return j.Activity=p,j.Children=ce,j.Component=D,j.Fragment=r,j.Profiler=n,j.PureComponent=N,j.StrictMode=a,j.Suspense=s,j.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=U,j.__COMPILER_RUNTIME={__proto__:null,c:function(f){return U.H.useMemoCache(f)}},j.cache=function(f){return function(){return f.apply(null,arguments)}},j.cacheSignal=function(){return null},j.cloneElement=function(f,S,_){if(f==null)throw Error("The argument must be a React element, but you passed "+f+".");var O=C({},f.props),I=f.key;if(S!=null)for(B in S.key!==void 0&&(I=""+S.key),S)!v.call(S,B)||B==="key"||B==="__self"||B==="__source"||B==="ref"&&S.ref===void 0||(O[B]=S[B]);var B=arguments.length-2;if(B===1)O.children=_;else if(1<B){for(var q=Array(B),ve=0;ve<B;ve++)q[ve]=arguments[ve+2];O.children=q}return G(f.type,I,O)},j.createContext=function(f){return f={$$typeof:i,_currentValue:f,_currentValue2:f,_threadCount:0,Provider:null,Consumer:null},f.Provider=f,f.Consumer={$$typeof:o,_context:f},f},j.createElement=function(f,S,_){var O,I={},B=null;if(S!=null)for(O in S.key!==void 0&&(B=""+S.key),S)v.call(S,O)&&O!=="key"&&O!=="__self"&&O!=="__source"&&(I[O]=S[O]);var q=arguments.length-2;if(q===1)I.children=_;else if(1<q){for(var ve=Array(q),fe=0;fe<q;fe++)ve[fe]=arguments[fe+2];
1I.children=ve}if(f&&f.defaultProps)for(O in q=f.defaultProps,q)I[O]===void 0&&(I[O]=q[O]);return G(f,B,I)},j.createRef=function(){return{current:null}},j.forwardRef=function(f){return{$$typeof:u,render:f}},j.isValidElement=se,j.lazy=function(f){return{$$typeof:h,_payload:{_status:-1,_result:f},_init:ge}},j.memo=function(f,S){return{$$typeof:l,type:f,compare:S===void 0?null:S}},j.startTransition=function(f){var S=U.T,_={};U.T=_;try{var O=f(),I=U.S;I!==null&&I(_,O),typeof O=="object"&&O!==null&&typeof O.then=="function"&&O.then(re,X)}catch(B){X(B)}finally{S!==null&&_.types!==null&&(S.types=_.types),U.T=S}},j.unstable_useCacheRefresh=function(){return U.H.useCacheRefresh()},j.use=function(f){return U.H.use(f)},j.useActionState=function(f,S,_){return U.H.useActionState(f,S,_)},j.useCallback=function(f,S){return U.H.useCallback(f,S)},j.useContext=function(f){return U.H.useContext(f)},j.useDebugValue=function(){},j.useDeferredValue=function(f,S){return U.H.useDeferredValue(f,S)},j.useEffect=function(f,S){return U.H.useEffect(f,S)},j.useEffectEvent=function(f){return U.H.useEffectEvent(f)},j.useId=function(){return U.H.useId()},j.useImperativeHandle=function(f,S,_){return U.H.useImperativeHandle(f,S,_)},j.useInsertionEffect=function(f,S){return U.H.useInsertionEffect(f,S)},j.useLayoutEffect=function(f,S){return U.H.useLayoutEffect(f,S)},j.useMemo=function(f,S){return U.H.useMemo(f,S)},j.useOptimistic=function(f,S){return U.H.useOptimistic(f,S)},j.useReducer=function(f,S,_){return U.H.useReducer(f,S,_)},j.useRef=function(f){return U.H.useRef(f)},j.useState=function(f){return U.H.useState(f)},j.useSyncExternalStore=function(f,S,_){return U.H.useSyncExternalStore(f,S,_)},j.useTransition=function(){return U.H.useTransition()},j.version="19.2.4",j}var Ar;function pa(){return Ar||(Ar=1,qt.exports=wn()),qt.exports}var m=pa();const bn=ma(m),Sn=En({__proto__:null,default:bn},[m]);var ya=e=>{throw TypeError(e)},va=(e,t,r)=>t.has(e)||ya("Cannot "+r),Ce=(e,t,r)=>(va(e,t,"read from private field"),r?r.call(e):t.get(e)),dt=(e,t,r)=>t.has(e)?ya("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),ke=(e,t,r,a)=>(va(e,t,"write to private field"),t.set(e,r),r),It=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,lr=/^[\\/]{2}/;function ga(e,t){return t+e.replace(/\\/g,"/")}var Nr="popstate";function Ur(e){return typeof e=="object"&&e!=null&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function Pn(e={}){function t(a,n){let o=n.state?.masked,{pathname:i,search:u,hash:s}=o||a.location;return pt("",{pathname:i,search:u,hash:s},n.state&&n.state.usr||null,n.state&&n.state.key||"default",o?{pathname:a.location.pathname,search:a.location.search,hash:a.location.hash}:void 0)}function r(a,n){return typeof n=="string"?n:Ae(n)}return xn(t,r,null,e)}function z(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function le(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Cn(){return Math.random().toString(36).substring(2,10)}function $r(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function pt(e,t,r=null,a,n){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?Ne(t):t,state:r,key:t&&t.key||a||Cn(),mask:n}}function Ae({pathname:e="/",search:t="",hash:r=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),r&&r!=="#"&&(e+=r.charAt(0)==="#"?r:"#"+r),e}function Ne(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substring(r),e=e.substring(0,r));let a=e.indexOf("?");a>=0&&(t.search=e.substring(a),e=e.substring(0,a)),e&&(t.pathname=e)}return t}function xn(e,t,r,a={}){let{window:n=document.defaultView,v5Compat:o=!1}=a,i=n.history,u="POP",s=null,l=h();l==null&&(l=0,i.replaceState({...i.state,idx:l},""));function h(){return(i.state||{idx:null}).idx}function p(){u="POP";let b=h(),D=b==null?null:b-l;l=b,s&&s({action:u,location:C.location,delta:D})}function R(b,D){u="PUSH";let x=Ur(b)?b:pt(C.location,b,D);l=h()+1;let N=$r(x,l),V=C.createHref(x.mask||x);try{i.pushState(N,"",V)}catch(H){if(H instanceof DOMException&&H.name==="DataCloneError")throw H;n.location.assign(V)}o&&s&&s({action:u,location:C.location,delta:1})}function g(b,D){u="REPLACE";let x=Ur(b)?b:pt(C.location,b,D);l=h();let N=$r(x,l),V=C.createHref(x.mask||x);i.replaceState(N,"",V),o&&s&&s({action:u,location:C.location,delta:0})}function P(b){return Ra(n,b)}let C={get action(){return u},get location(){return e(n,i)},listen(b){if(s)throw new Error("A history only accepts one active listener");return n.addEventListener(Nr,p),s=b,()=>{n.removeEventListener(Nr,p),s=null}},createHref(b){return t(n,b)},createURL:P,encodeLocation(b){let D=P(b);return{pathname:D.pathname,search:D.search,hash:D.hash}},push:R,replace:g,go(b){return i.go(b)}};return C}function Ra(e,t,r=!1){let a="http://localhost";
1e&&(a=e.location.origin!=="null"?e.location.origin:e.location.href),z(a,"No window.location.(origin|href) available to create URL");let n=typeof t=="string"?t:Ae(t);return n=n.replace(/ $/,"%20"),!r&&lr.test(n)&&(n=a+n),new URL(n,a)}var ht,Ir=class{constructor(e){if(dt(this,ht,new Map),e)for(let[t,r]of e)this.set(t,r)}get(e){if(Ce(this,ht).has(e))return Ce(this,ht).get(e);if(e.defaultValue!==void 0)return e.defaultValue;throw new Error("No value found for context")}set(e,t){Ce(this,ht).set(e,t)}};ht=new WeakMap;var Ln=new Set(["lazy","caseSensitive","path","id","index","children"]);function _n(e){return Ln.has(e)}var Dn=new Set(["lazy","caseSensitive","path","id","index","middleware","children"]);function Tn(e){return Dn.has(e)}function Mn(e){return e.index===!0}function yt(e,t,r=[],a={},n=!1){return e.map((o,i)=>{let u=[...r,String(i)],s=typeof o.id=="string"?o.id:u.join("-");if(z(o.index!==!0||!o.children,"Cannot specify children on an index route"),z(n||!a[s],`Found a route id collision on id "${s}".  Route id's must be globally unique within Data Router usages`),Mn(o)){let l={...o,id:s};return a[s]=jr(l,t(l)),l}else{let l={...o,id:s,children:void 0};return a[s]=jr(l,t(l)),o.children&&(l.children=yt(o.children,t,u,a,n)),l}})}function jr(e,t){return Object.assign(e,{...t,...typeof t.lazy=="object"&&t.lazy!=null?{lazy:{...e.lazy,...t.lazy}}:{}})}function Ea(e,t,r="/"){return De(e,t,r,!1)}function De(e,t,r,a,n){let o=typeof t=="string"?Ne(t):t,i=be(o.pathname||"/",r);if(i==null)return null;let u=n??kt(e),s=null,l=Bn(i);for(let h=0;s==null&&h<u.length;++h)s=Hn(u[h],l,a);return s}function On(e,t){let{route:r,pathname:a,params:n}=e;return{id:r.id,pathname:a,params:n,data:t[r.id],loaderData:t[r.id],handle:r.handle}}function kt(e){let t=wa(e);return kn(t),t}function wa(e,t=[],r=[],a="",n=!1){let o=(i,u,s=n,l)=>{let h={relativePath:l===void 0?i.path||"":l,caseSensitive:i.caseSensitive===!0,childrenIndex:u,route:i};if(h.relativePath.startsWith("/")){if(!h.relativePath.startsWith(a)&&s)return;z(h.relativePath.startsWith(a),`Absolute route path "${h.relativePath}" nested under path "${a}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),h.relativePath=h.relativePath.slice(a.length)}let p=Le([a,h.relativePath]),R=r.concat(h);i.children&&i.children.length>0&&(z(i.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${p}".`),wa(i.children,t,R,p,s)),!(i.path==null&&!i.index)&&t.push({path:p,score:jn(p,i.index),routesMeta:R.map((g,P)=>{let[C,b]=Pa(g.relativePath,g.caseSensitive,P===R.length-1);return{...g,matcher:C,compiledParams:b}})})};return e.forEach((i,u)=>{if(i.path===""||!i.path?.includes("?"))o(i,u);else for(let s of ba(i.path))o(i,u,!0,s)}),t}function ba(e){let t=e.split("/");if(t.length===0)return[];let[r,...a]=t,n=r.endsWith("?"),o=r.replace(/\?$/,"");if(a.length===0)return n?[o,""]:[o];let i=ba(a.join("/")),u=[];return u.push(...i.map(s=>s===""?o:[o,s].join("/"))),n&&u.push(...i),u.map(s=>e.startsWith("/")&&s===""?"/":s)}function kn(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:zn(t.routesMeta.map(a=>a.childrenIndex),r.routesMeta.map(a=>a.childrenIndex)))}var Fn=/^:[\w-]+$/,An=3,Nn=2,Un=1,$n=10,In=-2,zr=e=>e==="*";function jn(e,t){let r=e.split("/"),a=r.length;return r.some(zr)&&(a+=In),t&&(a+=Nn),r.filter(n=>!zr(n)).reduce((n,o)=>n+(Fn.test(o)?An:o===""?Un:$n),a)}function zn(e,t){return e.length===t.length&&e.slice(0,-1).every((a,n)=>a===t[n])?e[e.length-1]-t[t.length-1]:0}function Hn(e,t,r=!1){let{routesMeta:a}=e,n={},o="/",i=[];for(let u=0;u<a.length;++u){let s=a[u],l=u===a.length-1,h=o==="/"?t:t.slice(o.length)||"/",p={path:s.relativePath,caseSensitive:s.caseSensitive,end:l},R=s.matcher&&s.compiledParams?Sa(p,h,s.matcher,s.compiledParams):Ut(p,h),g=s.route;if(!R&&l&&r&&!a[a.length-1].route.index&&(R=Ut({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},h)),!R)return null;
1Object.assign(n,R.params),i.push({params:n,pathname:Le([o,R.pathname]),pathnameBase:Vn(Le([o,R.pathnameBase])),route:g}),R.pathnameBase!=="/"&&(o=Le([o,R.pathnameBase]))}return i}function Ut(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,a]=Pa(e.path,e.caseSensitive,e.end);return Sa(e,t,r,a)}function Sa(e,t,r,a){let n=t.match(r);if(!n)return null;let o=n[0],i=o.replace(/(.)\/+$/,"$1"),u=n.slice(1);return{params:a.reduce((l,{paramName:h,isOptional:p},R)=>{if(h==="*"){let P=u[R]||"";i=o.slice(0,o.length-P.length).replace(/(.)\/+$/,"$1")}const g=u[R];return p&&!g?l[h]=void 0:l[h]=(g||"").replace(/%2F/g,"/"),l},{}),pathname:o,pathnameBase:i,pattern:e}}function Pa(e,t=!1,r=!0){le(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 a=[],n="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(i,u,s,l,h)=>{if(a.push({paramName:u,isOptional:s!=null}),s){let p=h.charAt(l+i.length);return p&&p!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(a.push({paramName:"*"}),n+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?n+="\\/*$":e!==""&&e!=="/"&&(n+="(?:(?=\\/|$))"),[new RegExp(n,t?void 0:"i"),a]}function Bn(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return le(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function be(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,a=e.charAt(r);return a&&a!=="/"?null:e.slice(r)||"/"}function Wn({basename:e,pathname:t}){return t==="/"?e:Le([e,t])}var sr=e=>It.test(e);function Yn(e,t="/"){let{pathname:r,search:a="",hash:n=""}=typeof e=="string"?Ne(e):e,o;return r?(r=ur(r),r.startsWith("/")?o=Hr(r.substring(1),"/"):o=Hr(r,t)):o=t,{pathname:o,search:Kn(a),hash:Gn(n)}}function Hr(e,t){let r=$t(t).split("/");return e.split("/").forEach(n=>{n===".."?r.length>1&&r.pop():n!=="."&&r.push(n)}),r.length>1?r.join("/"):"/"}function Jt(e,t,r,a){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(a)}].  Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Ca(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function jt(e){let t=Ca(e);return t.map((r,a)=>a===t.length-1?r.pathname:r.pathnameBase)}function gt(e,t,r,a=!1){let n;typeof e=="string"?n=Ne(e):(n={...e},z(!n.pathname||!n.pathname.includes("?"),Jt("?","pathname","search",n)),z(!n.pathname||!n.pathname.includes("#"),Jt("#","pathname","hash",n)),z(!n.search||!n.search.includes("#"),Jt("#","search","hash",n)));let o=e===""||n.pathname==="",i=o?"/":n.pathname,u;if(i==null)u=r;else{let p=t.length-1;if(!a&&i.startsWith("..")){let R=i.split("/");for(;R[0]==="..";)R.shift(),p-=1;n.pathname=R.join("/")}u=p>=0?t[p]:"/"}let s=Yn(n,u),l=i&&i!=="/"&&i.endsWith("/"),h=(o||i===".")&&r.endsWith("/");return!s.pathname.endsWith("/")&&(l||h)&&(s.pathname+="/"),s}var ur=e=>e.replace(/[\\/]{2,}/g,"/"),Le=e=>ur(e.join("/")),$t=e=>e.replace(/\/+$/,""),Vn=e=>$t(e).replace(/^\/*/,"/"),Kn=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Gn=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e,qn=["EvalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Rt=class{constructor(e,t,r,a=!1){this.status=e,this.statusText=t||"",this.internal=a,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}};function vt(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}function Et(e){let t=e.map(r=>r.route.path).filter(Boolean);return Le(t)||"/"}var xa=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function La(e,t){let r=e;if(typeof r!="string"||!It.test(r))return{absoluteURL:void 0,isExternal:!1,to:r};let a=r,n=!1;if(xa)try{let o=new URL(window.location.href),i=lr.test(r)?new URL(ga(r,o.protocol)):new URL(r),u=be(i.pathname,t);i.origin===o.origin&&u!=null?r=u+i.search+i.hash:n=!0}catch{le(!1,`<Link to="${r}">
1 contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:a,isExternal:n,to:r}}var Ve=Symbol("Uninstrumented");function Jn(e,t){let r={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};e.forEach(n=>n({id:t.id,index:t.index,path:t.path,instrument(o){let i=Object.keys(r);for(let u of i)o[u]&&r[u].push(o[u])}}));let a={};if(typeof t.lazy=="function"&&r.lazy.length>0){let n=ot(r.lazy,t.lazy,()=>{});n&&(a.lazy=n)}if(typeof t.lazy=="object"){let n=t.lazy;["middleware","loader","action"].forEach(o=>{let i=n[o],u=r[`lazy.${o}`];if(typeof i=="function"&&u.length>0){let s=ot(u,i,()=>{});s&&(a.lazy=Object.assign(a.lazy||{},{[o]:s}))}})}return["loader","action"].forEach(n=>{let o=t[n];if(typeof o=="function"&&r[n].length>0){let i=o[Ve]??o,u=ot(r[n],i,(...s)=>Br(s[0]));u&&(n==="loader"&&i.hydrate===!0&&(u.hydrate=!0),u[Ve]=i,a[n]=u)}}),t.middleware&&t.middleware.length>0&&r.middleware.length>0&&(a.middleware=t.middleware.map(n=>{let o=n[Ve]??n,i=ot(r.middleware,o,(...u)=>Br(u[0]));return i?(i[Ve]=o,i):n})),a}function Xn(e,t){let r={navigate:[],fetch:[]};if(t.forEach(a=>a({instrument(n){let o=Object.keys(n);for(let i of o)n[i]&&r[i].push(n[i])}})),r.navigate.length>0){let a=e.navigate[Ve]??e.navigate,n=ot(r.navigate,a,(...o)=>{let[i,u]=o;return{to:typeof i=="number"||typeof i=="string"?i:i?Ae(i):".",...Wr(e,u??{})}});n&&(n[Ve]=a,e.navigate=n)}if(r.fetch.length>0){let a=e.fetch[Ve]??e.fetch,n=ot(r.fetch,a,(...o)=>{let[i,,u,s]=o;return{href:u??".",fetcherKey:i,...Wr(e,s??{})}});n&&(n[Ve]=a,e.fetch=n)}return e}function ot(e,t,r){return e.length===0?null:async(...a)=>{let n=await _a(e,r(...a),()=>t(...a),e.length-1);if(n.type==="error")throw n.value;return n.value}}async function _a(e,t,r,a){let n=e[a],o;if(n){let i,u=async()=>(i?console.error("You cannot call instrumented handlers more than once"):i=_a(e,t,r,a-1),o=await i,z(o,"Expected a result"),o.type==="error"&&o.value instanceof Error?{status:"error",error:o.value}:{status:"success",error:void 0});try{await n(u,t)}catch(s){console.error("An instrumentation function threw an error:",s)}i||await u(),await i}else try{o={type:"success",value:await r()}}catch(i){o={type:"error",value:i}}return o||{type:"error",value:new Error("No result assigned in instrumentation chain.")}}function Br(e){let{request:t,context:r,params:a,pattern:n}=e;return{request:Qn(t),params:{...a},pattern:n,context:Zn(r)}}function Wr(e,t){return{currentUrl:Ae(e.state.location),..."formMethod"in t?{formMethod:t.formMethod}:{},..."formEncType"in t?{formEncType:t.formEncType}:{},..."formData"in t?{formData:t.formData}:{},..."body"in t?{body:t.body}:{}}}function Qn(e){return{method:e.method,url:e.url,headers:{get:(...t)=>e.headers.get(...t)}}}function Zn(e){if(to(e)){let t={...e};return Object.freeze(t),t}else return{get:t=>e.get(t)}}var eo=Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function to(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getOwnPropertyNames(t).sort().join("\0")===eo}var Da=["POST","PUT","PATCH","DELETE"],ro=new Set(Da),ao=["GET",...Da],no=new Set(ao),Ta=new Set([301,302,303,307,308]),oo=new Set([307,308]),Xt={state:"idle",location:void 0,matches:void 0,historyAction:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},io={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},tt={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},lo=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),Ma="remix-router-transitions",Oa=Symbol("ResetLoaderData"),Je,rt,We,at,so=class{constructor(e){dt(this,Je),dt(this,rt),dt(this,We),dt(this,at),ke(this,Je,e),ke(this,rt,kt(e))}get stableRoutes(){return Ce(this,Je)}get activeRoutes(){return Ce(this,We)??Ce(this,Je)}get branches(){return Ce(this,at)??Ce(this,rt)}get hasHMRRoutes(){return Ce(this,We)!=null}setRoutes(e){ke(this,Je,e),ke(this,rt,kt(e))}setHmrRoutes(e){ke(this,We,e),ke(this,at,kt(e))}commitHmrRoutes(){Ce(this,We)&&(ke(this,Je,Ce(this,We)),ke(this,rt,Ce(this,at)),ke(this,We,void 0),ke(this,at,void 0))}};Je=new WeakMap;rt=new WeakMap;
1We=new WeakMap;at=new WeakMap;function uo(e){const t=e.window?e.window:typeof window<"u"?window:void 0,r=typeof t<"u"&&typeof t.document<"u"&&typeof t.document.createElement<"u";z(e.routes.length>0,"You must provide a non-empty routes array to createRouter");let a=e.hydrationRouteProperties||[],n=e.mapRouteProperties||lo,o=n;if(e.instrumentations){let c=e.instrumentations;o=d=>({...n(d),...Jn(c.map(y=>y.route).filter(Boolean),d)})}let i={},u=new so(yt(e.routes,o,void 0,i)),s=e.basename||"/";s.startsWith("/")||(s=`/${s}`);let l=e.dataStrategy||po,h={...e.future},p=null,R=new Set,g=null,P=null,C=null,b=null,D=e.hydrationData!=null,x=De(u.activeRoutes,e.history.location,s,!1,u.branches),N=!1,V=null,H,re;if(x==null&&!e.patchRoutesOnNavigation){let c=xe(404,{pathname:e.history.location.pathname}),{matches:d,route:y}=Tt(u.activeRoutes);H=!0,re=!H,x=d,V={[y.id]:c}}else if(x&&!e.hydrationData&&Ct(x,u.activeRoutes,e.history.location.pathname).active&&(x=null),x)if(x.some(c=>c.route.lazy))H=!1,re=!H;else if(!x.some(c=>cr(c.route)))H=!0,re=!H;else{let c=e.hydrationData?e.hydrationData.loaderData:null,d=e.hydrationData?e.hydrationData.errors:null,y=x;if(d){let E=x.findIndex(w=>d[w.route.id]!==void 0);y=y.slice(0,E+1)}re=!1,H=!0,y.forEach(E=>{let w=ka(E.route,c,d);re=re||w.renderFallback,H=H&&!w.shouldLoad})}else{H=!1,re=!H,x=[];let c=Ct(null,u.activeRoutes,e.history.location.pathname);c.active&&c.matches&&(N=!0,x=c.matches)}let U,v={historyAction:e.history.action,location:e.history.location,matches:x,initialized:H,renderFallback:re,navigation:Xt,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||V,fetchers:new Map,blockers:new Map},G="POP",Z=null,se=!1,J,de=!1,ae=new Map,ue=null,Y=!1,ee=!1,ge=new Set,X=new Map,ce=0,f=-1,S=new Map,_=new Set,O=new Map,I=new Map,B=new Set,q=new Map,ve,fe=null;function Bt(){if(p=e.history.listen(({action:c,location:d,delta:y})=>{if(ve){ve(),ve=void 0;return}le(q.size===0||y!=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 E=_r({currentLocation:v.location,nextLocation:d,historyAction:c});if(E&&y!=null){let w=new Promise(T=>{ve=T});e.history.go(y*-1),Pt(E,{state:"blocked",location:d,proceed(){Pt(E,{state:"proceeding",proceed:void 0,reset:void 0,location:d}),w.then(()=>e.history.go(y))},reset(){let T=new Map(v.blockers);T.set(E,tt),me({blockers:T})}}),Z?.resolve(),Z=null;return}return Ke(c,d)}),r){Fo(t,ae);let c=()=>Ao(t,ae);t.addEventListener("pagehide",c),ue=()=>t.removeEventListener("pagehide",c)}return v.initialized||Ke("POP",v.location,{initialHydration:!0}),U}function tn(){p&&p(),ue&&ue(),R.clear(),J&&J.abort(),v.fetchers.forEach((c,d)=>Yt(v.fetchers,d)),v.blockers.forEach((c,d)=>Lr(d))}function rn(c){if(R.add(c),g){let{newErrors:d}=g;g=null,c(v,{deletedFetchers:[],newErrors:d,viewTransitionOpts:void 0,flushSync:!1})}return()=>R.delete(c)}function me(c,d={}){c.matches&&(c.matches=c.matches.map(w=>{let T=i[w.route.id],M=w.route;return M.element!==T.element||M.errorElement!==T.errorElement||M.hydrateFallbackElement!==T.hydrateFallbackElement?{...w,route:T}:w})),v={...v,...c};let y=[],E=[];v.fetchers.forEach((w,T)=>{w.state==="idle"&&(B.has(T)?y.push(T):E.push(T))}),B.forEach(w=>{!v.fetchers.has(w)&&!X.has(w)&&y.push(w)}),R.size===0&&(g={newErrors:c.errors??null}),[...R].forEach(w=>w(v,{deletedFetchers:y,newErrors:c.errors??null,viewTransitionOpts:d.viewTransitionOpts,flushSync:d.flushSync===!0})),y.forEach(w=>
1Yt(v.fetchers,w)),E.forEach(w=>v.fetchers.delete(w))}function Ze(c,d,{flushSync:y}={}){let E=v.actionData!=null&&v.navigation.formMethod!=null&&ye(v.navigation.formMethod)&&v.navigation.state==="loading"&&c.state?._isRedirect!==!0,w;d.actionData?Object.keys(d.actionData).length>0?w=d.actionData:w=null:E?w=v.actionData:w=null;let T=d.loaderData?ea(v.loaderData,d.loaderData,d.matches||[],d.errors):v.loaderData,M=v.blockers;M.size>0&&(M=new Map(M),M.forEach((F,W)=>M.set(W,tt)));let k=Y?!1:Tr(c,d.matches||v.matches),L=se===!0||v.navigation.formMethod!=null&&ye(v.navigation.formMethod)&&c.state?._isRedirect!==!0;u.commitHmrRoutes(),Y||G==="POP"||(G==="PUSH"?e.history.push(c,c.state):G==="REPLACE"&&e.history.replace(c,c.state));let A;if(G==="POP"){let F=ae.get(v.location.pathname);F&&F.has(c.pathname)?A={currentLocation:v.location,nextLocation:c}:ae.has(c.pathname)&&(A={currentLocation:c,nextLocation:v.location})}else if(de){let F=ae.get(v.location.pathname);F?F.add(c.pathname):(F=new Set([c.pathname]),ae.set(v.location.pathname,F)),A={currentLocation:v.location,nextLocation:c}}me({...d,actionData:w,loaderData:T,historyAction:G,location:c,initialized:!0,renderFallback:!1,navigation:Xt,revalidation:"idle",restoreScrollPosition:k,preventScrollReset:L,blockers:M},{viewTransitionOpts:A,flushSync:y===!0}),G="POP",se=!1,de=!1,Y=!1,ee=!1,Z?.resolve(),Z=null,fe?.resolve(),fe=null}async function wr(c,d){if(Z?.resolve(),Z=null,typeof c=="number"){Z||(Z=na());let te=Z.promise;return e.history.go(c),te}let y=rr(v.location,v.matches,s,c,d?.fromRouteId,d?.relative),{path:E,submission:w,error:T}=Yr(!1,y,d),M;d?.mask&&(M={pathname:"",search:"",hash:"",...typeof d.mask=="string"?Ne(d.mask):{...v.location.mask,...d.mask}});let k=v.location,L=pt(k,E,d&&d.state,void 0,M);L={...L,...e.history.encodeLocation(L)};let A=d&&d.replace!=null?d.replace:void 0,F="PUSH";A===!0?F="REPLACE":A===!1||w!=null&&ye(w.formMethod)&&w.formAction===v.location.pathname+v.location.search&&(F="REPLACE");let W=d&&"preventScrollReset"in d?d.preventScrollReset===!0:void 0,$=(d&&d.flushSync)===!0,Q=_r({currentLocation:k,nextLocation:L,historyAction:F});if(Q){Pt(Q,{state:"blocked",location:L,proceed(){Pt(Q,{state:"proceeding",proceed:void 0,reset:void 0,location:L}),wr(c,d)},reset(){let te=new Map(v.blockers);te.set(Q,tt),me({blockers:te})}});return}await Ke(F,L,{submission:w,pendingError:T,preventScrollReset:W,replace:d&&d.replace,enableViewTransition:d&&d.viewTransition,flushSync:$,callSiteDefaultShouldRevalidate:d&&d.defaultShouldRevalidate})}function an(){fe||(fe=na()),Wt(),me({revalidation:"loading"});let c=fe.promise;return v.navigation.state==="submitting"?c:v.navigation.state==="idle"?(Ke(v.historyAction,v.location,{startUninterruptedRevalidation:!0}),c):(Ke(G||v.historyAction,v.navigation.location,{overrideNavigation:v.navigation,enableViewTransition:de===!0}),c)}async function Ke(c,d,y){J&&J.abort(),J=null,G=c,Y=(y&&y.startUninterruptedRevalidation)===!0,yn(v.location,v.matches),se=(y&&y.preventScrollReset)===!0,de=(y&&y.enableViewTransition)===!0;let E=u.activeRoutes,w=y?.initialHydration&&v.matches&&v.matches.length>0&&!N?v.matches:De(E,d,s,!1,u.branches),T=(y&&y.flushSync)===!0;if(w&&v.initialized&&!ee&&Po(v.location,d)&&!(y&&y.submission&&ye(y.submission.formMethod))){Ze(d,{matches:w},{flushSync:T});return}let M=Ct(w,E,d.pathname);if(M.active&&M.matches&&(w=M.matches),!w){let{error:ie,notFoundMatches:ne,route:Re}=Vt(d.pathname);Ze(d,{matches:ne,loaderData:{},errors:{[Re.id]:ie}},{flushSync:T});return}let k=y&&y.overrideNavigation?{...y.overrideNavigation,matches:w,historyAction:c}:void 0;
1J=new AbortController;let L=nt(e.history,d,J.signal,y&&y.submission),A=e.getContext?await e.getContext():new Ir,F;if(y&&y.pendingError)F=[Ye(w).route.id,{type:"error",error:y.pendingError}];else if(y&&y.submission&&ye(y.submission.formMethod)){let ie=await nn(L,d,y.submission,w,c,A,M.active,y&&y.initialHydration===!0,{replace:y.replace,flushSync:T});if(ie.shortCircuited)return;if(ie.pendingActionResult){let[ne,Re]=ie.pendingActionResult;if(Se(Re)&&vt(Re.error)&&Re.error.status===404){J=null,Ze(d,{matches:ie.matches,loaderData:{},errors:{[ne]:Re.error}});return}}w=ie.matches||w,F=ie.pendingActionResult,k=Qt(d,w,c,y.submission),T=!1,M.active=!1,L=nt(e.history,L.url,L.signal)}let{shortCircuited:W,matches:$,loaderData:Q,errors:te,workingFetchers:he}=await on(L,d,w,c,A,M.active,k,y&&y.submission,y&&y.fetcherSubmission,y&&y.replace,y&&y.initialHydration===!0,T,F,y&&y.callSiteDefaultShouldRevalidate);W||(J=null,Ze(d,{matches:$||w,...ta(F),loaderData:Q,errors:te,...he?{fetchers:he}:{}}))}async function nn(c,d,y,E,w,T,M,k,L={}){Wt();let A=Oo(d,E,w,y);if(me({navigation:A},{flushSync:L.flushSync===!0}),M){let $=await xt(E,d.pathname,c.signal);if($.type==="aborted")return{shortCircuited:!0};if($.type==="error"){if($.partialMatches.length===0){let{matches:te,route:he}=Tt(u.activeRoutes);return{matches:te,pendingActionResult:[he.id,{type:"error",error:$.error}]}}let Q=Ye($.partialMatches).route.id;return{matches:$.partialMatches,pendingActionResult:[Q,{type:"error",error:$.error}]}}else if($.matches)E=$.matches;else{let{notFoundMatches:Q,error:te,route:he}=Vt(d.pathname);return{matches:Q,pendingActionResult:[he.id,{type:"error",error:te}]}}}let F,W=Ft(E,d);if(!W.route.action&&!W.route.lazy)F={type:"error",error:xe(405,{method:c.method,pathname:d.pathname,routeId:W.route.id})};else{let $=it(o,i,c,d,E,W,k?[]:a,T),Q=await st(c,d,$,T,null);if(F=Q[W.route.id],!F){for(let te of E)if(Q[te.route.id]){F=Q[te.route.id];break}}if(c.signal.aborted)return{shortCircuited:!0}}if(Xe(F)){let $;return L&&L.replace!=null?$=L.replace:$=Xr(F.response.headers.get("Location"),new URL(c.url),s,e.history)===v.location.pathname+v.location.search,await Ge(c,F,!0,{submission:y,replace:$}),{shortCircuited:!0}}if(Se(F)){let $=Ye(E,W.route.id);return(L&&L.replace)!==!0&&(G="PUSH"),{matches:E,pendingActionResult:[$.route.id,F,W.route.id]}}return{matches:E,pendingActionResult:[W.route.id,F]}}async function on(c,d,y,E,w,T,M,k,L,A,F,W,$,Q){let te=M||Qt(d,y,E,k),he=k||L||aa(te),ie=!Y&&!F;if(T){if(ie){let we=br($);me({navigation:te,...we!==void 0?{actionData:we}:{}},{flushSync:W})}let K=await xt(y,d.pathname,c.signal);if(K.type==="aborted")return{shortCircuited:!0};if(K.type==="error"){if(K.partialMatches.length===0){let{matches:Oe,route:je}=Tt(u.activeRoutes);return{matches:Oe,loaderData:{},errors:{[je.id]:K.error}}}let we=Ye(K.partialMatches).route.id;return{matches:K.partialMatches,loaderData:{},errors:{[we]:K.error}}}else if(K.matches)y=K.matches;else{let{error:we,notFoundMatches:Oe,route:je}=Vt(d.pathname);return{matches:Oe,loaderData:{},errors:{[je.id]:we}}}}let ne=u.activeRoutes,{dsMatches:Re,revalidatingFetchers:Ee}=Vr(c,w,o,i,e.history,v,y,he,d,F?[]:a,F===!0,ee,ge,B,O,_,ne,s,e.patchRoutesOnNavigation!=null,u.branches,$,Q);if(f=++ce,!e.dataStrategy&&!Re.some(K=>K.shouldLoad)&&!Re.some(K=>K.route.middleware&&K.route.middleware.length>0)&&Ee.length===0){let K=new Map(v.fetchers),we=Cr(K);return Ze(d,{matches:y,loaderData:{},errors:$&&Se($[1])?{[$[0]]:$[1].error}:null,...ta($),...we?{fetchers:K}:{}},{flushSync:W}),{shortCircuited:!0}}if(ie){let K={};if(!T){K.navigation=te;let we=br($);we!==void 0&&(K.actionData=we)}Ee.length>0&&(K.fetchers=ln(Ee)),me(K,{flushSync:W})}Ee.forEach(K=>{Ie(K.key),K.controller&&X.set(K.key,K.controller)});let ut=()=>Ee.forEach(K=>Ie(K.key));J&&J.signal.addEventListener("abort",ut);let{loaderResults:ze,fetcherResults:et}=await Sr(Re,Ee,c,d,w);if(c.signal.aborted)return{shortCircuited:!0};J&&J.signal.removeEventListener("abort",ut),Ee.forEach(K=>X.delete(K.key));let He=Mt(ze);if(He)return await Ge(c,He.result,!0,{replace:A}),{shortCircuited:!0};if(He=Mt(et),He)return _.add(He.key),await Ge(c,He.result,!0,{replace:A}),{shortCircuited:!0};let Me=new Map(v.fetchers),{loaderData:Kt,errors:Be}=Zr(v,y,ze,$,Ee,et,Me);F&&v.errors&&(Be={...v.errors,...Be});let Lt=Cr(Me),_t=xr(f,Me),Dt=Lt||_t||Ee.length>0;return{matches:y,loaderData:Kt,errors:Be,...Dt?{workingFetchers:Me}:{}}}function br(c){if(c&&!Se(c[1]))return{[c[0]]:c[1].data};if(v.actionData)return Object.keys(v.actionData).length===0?null:v.actionData}function ln(c){let d=new Map(v.fetchers);
1return c.forEach(y=>{let E=d.get(y.key),w=ct(void 0,E?E.data:void 0);d.set(y.key,w)}),d}async function sn(c,d,y,E){Ie(c);let w=(E&&E.flushSync)===!0,T=u.activeRoutes,M=rr(v.location,v.matches,s,y,d,E?.relative),k=De(T,M,s,!1,u.branches),L=Ct(k,T,M);if(L.active&&L.matches&&(k=L.matches),!k){$e(c,d,xe(404,{pathname:M}),{flushSync:w});return}let{path:A,submission:F,error:W}=Yr(!0,M,E);if(W){$e(c,d,W,{flushSync:w});return}let $=e.getContext?await e.getContext():new Ir,Q=(E&&E.preventScrollReset)===!0;if(F&&ye(F.formMethod)){await un(c,d,A,k,$,L.active,w,Q,F,E&&E.defaultShouldRevalidate);return}O.set(c,{routeId:d,path:A}),await cn(c,d,A,k,$,L.active,w,Q,F)}async function un(c,d,y,E,w,T,M,k,L,A){Wt(),O.delete(c);let F=v.fetchers.get(c);Ue(c,ko(L,F),{flushSync:M});let W=new AbortController,$=nt(e.history,y,W.signal,L);if(T){let oe=await xt(E,new URL($.url).pathname,$.signal,c);if(oe.type==="aborted")return;if(oe.type==="error"){$e(c,d,oe.error,{flushSync:M});return}else if(oe.matches)E=oe.matches;else{$e(c,d,xe(404,{pathname:y}),{flushSync:M});return}}let Q=Ft(E,y);if(!Q.route.action&&!Q.route.lazy){let oe=xe(405,{method:L.formMethod,pathname:y,routeId:d});$e(c,d,oe,{flushSync:M});return}X.set(c,W);let te=ce,he=it(o,i,$,y,E,Q,a,w),ie=await st($,y,he,w,c),ne=ie[Q.route.id];if(!ne){for(let oe of he)if(ie[oe.route.id]){ne=ie[oe.route.id];break}}if($.signal.aborted){X.get(c)===W&&X.delete(c);return}if(B.has(c)){if(Xe(ne)||Se(ne)){Ue(c,Fe(void 0));return}}else{if(Xe(ne))if(X.delete(c),f>te){Ue(c,Fe(void 0));return}else return _.add(c),Ue(c,ct(L)),Ge($,ne,!1,{fetcherSubmission:L,preventScrollReset:k});if(Se(ne)){$e(c,d,ne.error);return}}let Re=v.navigation.location||v.location,Ee=nt(e.history,Re,W.signal),ut=u.activeRoutes,ze=v.navigation.state!=="idle"?De(ut,v.navigation.location,s,!1,u.branches):v.matches;z(ze,"Didn't find any matches after fetcher action");let et=++ce;S.set(c,et);let{dsMatches:He,revalidatingFetchers:Me}=Vr(Ee,w,o,i,e.history,v,ze,L,Re,a,!1,ee,ge,B,O,_,ut,s,e.patchRoutesOnNavigation!=null,u.branches,[Q.route.id,ne],A),Kt=ct(L,ne.data),Be=new Map(v.fetchers);Be.set(c,Kt),Me.filter(oe=>oe.key!==c).forEach(oe=>{let qe=oe.key,kr=Be.get(qe),Rn=ct(void 0,kr?kr.data:void 0);Be.set(qe,Rn),Ie(qe),oe.controller&&X.set(qe,oe.controller)}),me({fetchers:Be});let Lt=()=>Me.forEach(oe=>Ie(oe.key));W.signal.addEventListener("abort",Lt);let{loaderResults:_t,fetcherResults:Dt}=await Sr(He,Me,Ee,Re,w);if(W.signal.aborted)return;W.signal.removeEventListener("abort",Lt),S.delete(c),X.delete(c),Me.forEach(oe=>X.delete(oe.key));let K=v.fetchers.has(c),we=oe=>{if(!K)return oe;let qe=new Map(oe.fetchers);return qe.set(c,Fe(ne.data)),{...oe,fetchers:qe}},Oe=Mt(_t);if(Oe)return v=we(v),Ge(Ee,Oe.result,!1,{preventScrollReset:k});if(Oe=Mt(Dt),Oe)return _.add(Oe.key),v=we(v),Ge(Ee,Oe.result,!1,{preventScrollReset:k});let je=new Map(v.fetchers);K&&je.set(c,Fe(ne.data));let{loaderData:Or,errors:Gt}=Zr(v,ze,_t,void 0,Me,Dt,je);xr(et,je),v.navigation.state==="loading"&&et>f?(z(G,"Expected pending action"),J&&J.abort(),Ze(v.navigation.location,{matches:ze,loaderData:Or,errors:Gt,fetchers:je})):(me({errors:Gt,loaderData:ea(v.loaderData,Or,ze,Gt),fetchers:je}),ee=!1)}async function cn(c,d,y,E,w,T,M,k,L){let A=v.fetchers.get(c);Ue(c,ct(L,A?A.data:void 0),{flushSync:M});let F=new AbortController,W=nt(e.history,y,F.signal);if(T){let ne=await xt(E,new URL(W.url).pathname,W.signal,c);if(ne.type==="aborted")return;if(ne.type==="error"){$e(c,d,ne.error,{flushSync:M});return}else if(ne.matches)E=ne.matches;else{$e(c,d,xe(404,{pathname:y}),{flushSync:M});return}}let $=Ft(E,y);X.set(c,F);let Q=ce,te=it(o,i,W,y,E,$,a,w),he=await st(W,y,te,w,c),ie=he[$.route.id];if(!ie){for(let ne of E)if(he[ne.route.id]){ie=he[ne.route.id];break}}if(X.get(c)===F&&X.delete(c),!W.signal.aborted){if(B.has(c)){Ue(c,Fe(void 0));return}if(Xe(ie))if(f>Q){Ue(c,Fe(void 0));return}else{_.add(c),await Ge(W,ie,!1,{preventScrollReset:k});return}if(Se(ie)){$e(c,d,ie.error);return}Ue(c,Fe(ie.data))}}async function Ge(c,d,y,{submission:E,fetcherSubmission:w,preventScrollReset:T,replace:M}={}
1){y||(Z?.resolve(),Z=null),d.response.headers.has("X-Remix-Revalidate")&&(ee=!0);let k=d.response.headers.get("Location");z(k,"Expected a Location header on the redirect Response"),k=Xr(k,new URL(c.url),s,e.history);let L=pt(v.location,k,{_isRedirect:!0});if(r){let te=!1;if(d.response.headers.has("X-Remix-Reload-Document"))te=!0;else if(sr(k)){const he=Ra(t,k,!0);te=he.origin!==t.location.origin||be(he.pathname,s)==null}if(te){M?t.location.replace(k):t.location.assign(k);return}}J=null;let A=M===!0||d.response.headers.has("X-Remix-Replace")?"REPLACE":"PUSH",{formMethod:F,formAction:W,formEncType:$}=v.navigation;!E&&!w&&F&&W&&$&&(E=aa(v.navigation));let Q=E||w;if(oo.has(d.response.status)&&Q&&ye(Q.formMethod))await Ke(A,L,{submission:{...Q,formAction:k},preventScrollReset:T||se,enableViewTransition:y?de:void 0});else{let te=Qt(L,[],A,E);await Ke(A,L,{overrideNavigation:te,fetcherSubmission:w,preventScrollReset:T||se,enableViewTransition:y?de:void 0})}}async function st(c,d,y,E,w){let T,M={};try{T=await vo(l,c,d,y,w,E,!1)}catch(k){return y.filter(L=>L.shouldLoad).forEach(L=>{M[L.route.id]={type:"error",error:k}}),M}if(c.signal.aborted)return M;if(!ye(c.method))for(let k of y){if(T[k.route.id]?.type==="error")break;!T.hasOwnProperty(k.route.id)&&!v.loaderData.hasOwnProperty(k.route.id)&&(!v.errors||!v.errors.hasOwnProperty(k.route.id))&&k.shouldCallHandler()&&(T[k.route.id]={type:"error",result:new Error(`No result returned from dataStrategy for route ${k.route.id}`)})}for(let[k,L]of Object.entries(T))if(_o(L)){let A=L.result;M[k]={type:"redirect",response:wo(A,c,k,y,s)}}else M[k]=await Eo(L);return M}async function Sr(c,d,y,E,w){let T=st(y,E,c,w,null),M=Promise.all(d.map(async A=>{if(A.matches&&A.match&&A.request&&A.controller){let W=(await st(A.request,A.path,A.matches,w,A.key))[A.match.route.id];return{[A.key]:W}}else return Promise.resolve({[A.key]:{type:"error",error:xe(404,{pathname:A.path})}})})),k=await T,L=(await M).reduce((A,F)=>Object.assign(A,F),{});return{loaderResults:k,fetcherResults:L}}function Wt(){ee=!0,O.forEach((c,d)=>{X.has(d)&&ge.add(d),Ie(d)})}function Ue(c,d,y={}){let E=new Map(v.fetchers);E.set(c,d),me({fetchers:E},{flushSync:(y&&y.flushSync)===!0})}function $e(c,d,y,E={}){let w=Ye(v.matches,d),T=new Map(v.fetchers);Yt(T,c),me({errors:{[w.route.id]:y},fetchers:T},{flushSync:(E&&E.flushSync)===!0})}function fn(c){return I.set(c,(I.get(c)||0)+1),B.has(c)&&B.delete(c),v.fetchers.get(c)||io}function dn(c,d){Ie(c,d?.reason),Ue(c,Fe(null))}function Yt(c,d){let y=v.fetchers.get(d);X.has(d)&&!(y&&y.state==="loading"&&S.has(d))&&Ie(d),O.delete(d),S.delete(d),_.delete(d),B.delete(d),ge.delete(d),c.delete(d)}function hn(c){let d=(I.get(c)||0)-1;d<=0?(I.delete(c),B.add(c)):I.set(c,d),me({fetchers:new Map(v.fetchers)})}function Ie(c,d){let y=X.get(c);y&&(y.abort(d),X.delete(c))}function Pr(c,d){for(let y of c){let E=d.get(y);z(E,`Expected fetcher: ${y}`);let w=Fe(E.data);d.set(y,w)}}function Cr(c){let d=[],y=!1;for(let E of _){let w=c.get(E);z(w,`Expected fetcher: ${E}`),w.state==="loading"&&(_.delete(E),d.push(E),y=!0)}return Pr(d,c),y}function xr(c,d){let y=[];for(let[E,w]of S)if(w<c){let T=d.get(E);z(T,`Expected fetcher: ${E}`),T.state==="loading"&&(Ie(E),S.delete(E),y.push(E))}return Pr(y,d),y.length>0}function mn(c,d){let y=v.blockers.get(c)||tt;return q.get(c)!==d&&q.set(c,d),y}function Lr(c){v.blockers.delete(c),q.delete(c)}function Pt(c,d){let y=v.blockers.get(c)||tt;z(y.state==="unblocked"&&d.state==="blocked"||y.state==="blocked"&&d.state==="blocked"||y.state==="blocked"&&d.state==="proceeding"||y.state==="blocked"&&d.state==="unblocked"||y.state==="proceeding"&&d.state==="unblocked",`Invalid blocker state transition: ${y.state} -> ${d.state}`);let E=new Map(v.blockers);E.set(c,d),me({blockers:E})}function _r({currentLocation:c,nextLocation:d,historyAction:y}){if(q.size===0)return;q.size>1&&le(!1,"A router only supports one blocker at a time");let E=Array.from(q.entries()),[w,T]=E[E.length-1],M=v.blockers.get(w);if(!(M&&M.state==="proceeding")&&T({currentLocation:c,nextLocation:d,historyAction:y}))return w}function Vt(c){let d=xe(404,{pathname:c}),y=u.activeRoutes,{matches:E,route:w}=Tt(y);return{notFoundMatches:E,route:w,error:d}}function pn(c,d,y){if(P=c,b=d,C=y||null,!D&&v.navigation===Xt){D=!0;let E=Tr(v.location,v.matches);E!=null&&me({restoreScrollPosition:E})}return()=>{P=null,b=null,C=null}}function Dr(c,d){return C&&C(c,d.map(E=>On(E,v.loaderData)))||c.key}function yn(c,d){if(P&&b){let y=Dr(c,d);
1P[y]=b()}}function Tr(c,d){if(P){let y=Dr(c,d),E=P[y];if(typeof E=="number")return E}return null}function Ct(c,d,y){if(e.patchRoutesOnNavigation){let E=u.branches;if(c){if(Object.keys(c[0].params).length>0)return{active:!0,matches:De(d,y,s,!0,E)}}else return{active:!0,matches:De(d,y,s,!0,E)||[]}}return{active:!1,matches:null}}async function xt(c,d,y,E){if(!e.patchRoutesOnNavigation)return{type:"success",matches:c};let w=c;for(;;){let T=i;try{await e.patchRoutesOnNavigation({signal:y,path:d,matches:w,fetcherKey:E,patch:(A,F)=>{y.aborted||Kr(A,F,u,T,o,!1)}})}catch(A){return{type:"error",error:A,partialMatches:w}}if(y.aborted)return{type:"aborted"};let M=u.branches,k=De(u.activeRoutes,d,s,!1,M),L=null;if(k){if(Object.keys(k[0].params).length===0)return{type:"success",matches:k};if(L=De(u.activeRoutes,d,s,!0,M),!(L&&w.length<L.length&&Mr(w,L.slice(0,w.length))))return{type:"success",matches:k}}if(L||(L=De(u.activeRoutes,d,s,!0,M)),!L||Mr(w,L))return{type:"success",matches:null};w=L}}function Mr(c,d){return c.length===d.length&&c.every((y,E)=>y.route.id===d[E].route.id)}function vn(c){i={},u.setHmrRoutes(yt(c,o,void 0,i))}function gn(c,d,y=!1){Kr(c,d,u,i,o,y),u.hasHMRRoutes||me({})}return U={get basename(){return s},get future(){return h},get state(){return v},get routes(){return u.stableRoutes},get branches(){return u.branches},get manifest(){return i},get window(){return t},initialize:Bt,subscribe:rn,enableScrollRestoration:pn,navigate:wr,fetch:sn,revalidate:an,createHref:c=>e.history.createHref(c),encodeLocation:c=>e.history.encodeLocation(c),getFetcher:fn,resetFetcher:dn,deleteFetcher:hn,dispose:tn,getBlocker:mn,deleteBlocker:Lr,patchRoutes:gn,_internalFetchControllers:X,_internalSetRoutes:vn,_internalSetStateDoNotUseOrYouWillBreakYourApp(c){me(c)}},e.instrumentations&&(U=Xn(U,e.instrumentations.map(c=>c.router).filter(Boolean))),U}function co(e){return e!=null&&("formData"in e&&e.formData!=null||"body"in e&&e.body!==void 0)}function rr(e,t,r,a,n,o){let i,u;if(n){i=[];for(let l of t)if(i.push(l),l.route.id===n){u=l;break}}else i=t,u=t[t.length-1];let s=gt(a||".",jt(i),be(e.pathname,r)||e.pathname,o==="path");if(a==null&&(s.search=e.search,s.hash=e.hash),(a==null||a===""||a===".")&&u){let l=dr(s.search);if(u.route.index&&!l)s.search=s.search?s.search.replace(/^\?/,"?index&"):"?index";else if(!u.route.index&&l){let h=new URLSearchParams(s.search),p=h.getAll("index");h.delete("index"),p.filter(g=>g).forEach(g=>h.append("index",g));let R=h.toString();s.search=R?`?${R}`:""}}return r!=="/"&&(s.pathname=Wn({basename:r,pathname:s.pathname})),Ae(s)}function Yr(e,t,r){if(!r||!co(r))return{path:t};if(r.formMethod&&!Mo(r.formMethod))return{path:t,error:xe(405,{method:r.formMethod})};let a=()=>({path:t,error:xe(400,{type:"invalid-body"})}),o=(r.formMethod||"get").toUpperCase(),i=ja(t);if(r.body!==void 0){if(r.formEncType==="text/plain"){if(!ye(o))return a();let p=typeof r.body=="string"?r.body:r.body instanceof FormData||r.body instanceof URLSearchParams?Array.from(r.body.entries()).reduce((R,[g,P])=>`${R}${g}=${P}
2`,""):String(r.body);return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:void 0,text:p}}}else if(r.formEncType==="application/json"){if(!ye(o))return a();try{let p=typeof r.body=="string"?JSON.parse(r.body):r.body;return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:p,text:void 0}}}catch{return a()}}}z(typeof FormData=="function","FormData is not available in this environment");let u,s;if(r.formData)u=or(r.formData),s=r.formData;else if(r.body instanceof FormData)u=or(r.body),s=r.body;else if(r.body instanceof URLSearchParams)u=r.body,s=Qr(u);else if(r.body==null)u=new URLSearchParams,s=new FormData;else try{u=new URLSearchParams(r.body),s=Qr(u)}catch{return a()}let l={formMethod:o,formAction:i,formEncType:r&&r.formEncType||"application/x-www-form-urlencoded",formData:s,json:void 0,text:void 0};if(ye(l.formMethod))return{path:t,submission:l};let h=Ne(t);return e&&h.search&&dr(h.search)&&u.append("index",""),h.search=`?${u}`,{path:Ae(h),submission:l}}function Vr(e,t,r,a,n,o,i,u,s,l,h,p,R,g,P,C,b,D,x,N,V,H){let re=V?Se(V[1])?V[1].error:V[1].data:void 0,U=n.createURL(o.location),v=n.createURL(s),G;if(h&&o.errors){let Y=Object.keys(o.errors)[0];G=i.findIndex(ee=>ee.route.id===Y)}else if(V&&Se(V[1])){let Y=V[0];G=i.findIndex(ee=>ee.route.id===Y)-1}let Z=V?V[1].statusCode:void 0,se=Z&&Z>
2=400,J={currentUrl:U,currentParams:o.matches[0]?.params||{},nextUrl:v,nextParams:i[0].params,...u,actionResult:re,actionStatus:Z},de=Et(i),ae=i.map((Y,ee)=>{let{route:ge}=Y,X=null;if(G!=null&&ee>G)X=!1;else if(ge.lazy)X=!0;else if(!cr(ge))X=!1;else if(h){let{shouldLoad:_}=ka(ge,o.loaderData,o.errors);X=_}else fo(o.loaderData,o.matches[ee],Y)&&(X=!0);if(X!==null)return ar(r,a,e,s,de,Y,l,t,X);let ce=!1;typeof H=="boolean"?ce=H:se?ce=!1:(p||U.pathname+U.search===v.pathname+v.search||U.search!==v.search||ho(o.matches[ee],Y))&&(ce=!0);let f={...J,defaultShouldRevalidate:ce},S=mt(Y,f);return ar(r,a,e,s,de,Y,l,t,S,f,H)}),ue=[];return P.forEach((Y,ee)=>{if(h||!i.some(I=>I.route.id===Y.routeId)||g.has(ee))return;let ge=o.fetchers.get(ee),X=ge&&ge.state!=="idle"&&ge.data===void 0,ce=De(b,Y.path,D??"/",!1,N);if(!ce){if(x&&X)return;ue.push({key:ee,routeId:Y.routeId,path:Y.path,matches:null,match:null,request:null,controller:null});return}if(C.has(ee))return;let f=Ft(ce,Y.path),S=new AbortController,_=nt(n,Y.path,S.signal),O=null;if(R.has(ee))R.delete(ee),O=it(r,a,_,Y.path,ce,f,l,t);else if(X)p&&(O=it(r,a,_,Y.path,ce,f,l,t));else{let I;typeof H=="boolean"?I=H:se?I=!1:I=p;let B={...J,defaultShouldRevalidate:I};mt(f,B)&&(O=it(r,a,_,Y.path,ce,f,l,t,B))}O&&ue.push({key:ee,routeId:Y.routeId,path:Y.path,matches:O,match:f,request:_,controller:S})}),{dsMatches:ae,revalidatingFetchers:ue}}function cr(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function ka(e,t,r){if(e.lazy)return{shouldLoad:!0,renderFallback:!0};if(!cr(e))return{shouldLoad:!1,renderFallback:!1};let a=t!=null&&e.id in t,n=r!=null&&r[e.id]!==void 0;if(!a&&n)return{shouldLoad:!1,renderFallback:!1};if(typeof e.loader=="function"&&e.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!a};let o=!a&&!n;return{shouldLoad:o,renderFallback:o}}function fo(e,t,r){let a=!t||r.route.id!==t.route.id,n=!e.hasOwnProperty(r.route.id);return a||n}function ho(e,t){let r=e.route.path;return e.pathname!==t.pathname||r!=null&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function mt(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if(typeof r=="boolean")return r}return t.defaultShouldRevalidate}function Kr(e,t,r,a,n,o){let i;if(e){let l=a[e];z(l,`No route found to patch children into: routeId = ${e}`),l.children||(l.children=[]),i=l.children}else i=r.activeRoutes;let u=[],s=[];if(t.forEach(l=>{let h=i.find(p=>Fa(l,p));h?s.push({existingRoute:h,newRoute:l}):u.push(l)}),u.length>0){let l=yt(u,n,[e||"_","patch",String(i?.length||"0")],a);i.push(...l)}if(o&&s.length>0)for(let l=0;l<s.length;l++){let{existingRoute:h,newRoute:p}=s[l],R=h,[g]=yt([p],n,[],{},!0);Object.assign(R,{element:g.element?g.element:R.element,errorElement:g.errorElement?g.errorElement:R.errorElement,hydrateFallbackElement:g.hydrateFallbackElement?g.hydrateFallbackElement:R.hydrateFallbackElement})}r.hasHMRRoutes||r.setRoutes([...r.activeRoutes])}function Fa(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((r,a)=>t.children?.some(n=>Fa(r,n)))??!1:!1}var Gr=new WeakMap,Aa=({key:e,route:t,manifest:r,mapRouteProperties:a})=>{let n=r[t.id];if(z(n,"No route found in manifest"),!n.lazy||typeof n.lazy!="object")return;let o=n.lazy[e];if(!o)return;let i=Gr.get(n);i||(i={},Gr.set(n,i));let u=i[e];if(u)return u;let s=(async()=>{let l=_n(e),p=n[e]!==void 0&&e!=="hasErrorBoundary";if(l)le(!l,"Route property "+e+" is not a supported lazy route property. This property will be ignored."),i[e]=Promise.resolve();else if(p)le(!1,`Route "${n.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let R=await o();R!=null&&(Object.assign(n,{[e]:R}),Object.assign(n,a(n)))}typeof n.lazy=="object"&&(n.lazy[e]=void 0,Object.values(n.lazy).every(R=>R===void 0)&&(n.lazy=void 0))})();return i[e]=s,s},qr=new WeakMap;function mo(e,t,r,a,n){let o=r[e.id];if(z(o,"No route found in manifest"),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy=="function"){let h=qr.get(o);if(h)return{lazyRoutePromise:h,lazyHandlerPromise:h};let p=(async()=>{z(typeof e.lazy=="function","No lazy route function found");let R=await e.lazy(),g={};for(let P in R){let C=R[P];
2if(C===void 0)continue;let b=Tn(P),x=o[P]!==void 0&&P!=="hasErrorBoundary";b?le(!b,"Route property "+P+" is not a supported property to be returned from a lazy route function. This property will be ignored."):x?le(!x,`Route "${o.id}" has a static property "${P}" defined but its lazy function is also returning a value for this property. The lazy route property "${P}" will be ignored.`):g[P]=C}Object.assign(o,g),Object.assign(o,{...a(o),lazy:void 0})})();return qr.set(o,p),p.catch(()=>{}),{lazyRoutePromise:p,lazyHandlerPromise:p}}let i=Object.keys(e.lazy),u=[],s;for(let h of i){if(n&&n.includes(h))continue;let p=Aa({key:h,route:e,manifest:r,mapRouteProperties:a});p&&(u.push(p),h===t&&(s=p))}let l=u.length>0?Promise.all(u).then(()=>{}):void 0;return l?.catch(()=>{}),s?.catch(()=>{}),{lazyRoutePromise:l,lazyHandlerPromise:s}}async function Jr(e){let t=e.matches.filter(n=>n.shouldLoad),r={};return(await Promise.all(t.map(n=>n.resolve()))).forEach((n,o)=>{r[t[o].route.id]=n}),r}async function po(e){return e.matches.some(t=>t.route.middleware)?Na(e,()=>Jr(e)):Jr(e)}function Na(e,t){return yo(e,t,a=>{if(To(a))throw a;return a},xo,r);function r(a,n,o){if(o)return Promise.resolve(Object.assign(o.value,{[n]:{type:"error",result:a}}));{let{matches:i}=e,u=Math.min(Math.max(i.findIndex(l=>l.route.id===n),0),Math.max(i.findIndex(l=>l.shouldCallHandler()),0)),s=Ye(i,i[u].route.id).route.id;return Promise.resolve({[s]:{type:"error",result:a}})}}}async function yo(e,t,r,a,n){let{matches:o,...i}=e,u=o.flatMap(l=>l.route.middleware?l.route.middleware.map(h=>[l.route.id,h]):[]);return await Ua(i,u,t,r,a,n)}async function Ua(e,t,r,a,n,o,i=0){let{request:u}=e;if(u.signal.aborted)throw u.signal.reason??new Error(`Request aborted: ${u.method} ${u.url}`);let s=t[i];if(!s)return await r();let[l,h]=s,p,R=async()=>{if(p)throw new Error("You may only call `next()` once per middleware");try{return p={value:await Ua(e,t,r,a,n,o,i+1)},p.value}catch(g){return p={value:await o(g,l,p)},p.value}};try{let g=await h(e,R),P=g!=null?a(g):void 0;return n(P)?P:p?P??p.value:(p={value:await R()},p.value)}catch(g){return await o(g,l,p)}}function $a(e,t,r,a,n){let o=Aa({key:"middleware",route:a.route,manifest:t,mapRouteProperties:e}),i=mo(a.route,ye(r.method)?"action":"loader",t,e,n);return{middleware:o,route:i.lazyRoutePromise,handler:i.lazyHandlerPromise}}function ar(e,t,r,a,n,o,i,u,s,l=null,h){let p=!1,R=$a(e,t,r,o,i);return{...o,_lazyPromises:R,shouldLoad:s,shouldRevalidateArgs:l,shouldCallHandler(g){return p=!0,l?typeof h=="boolean"?mt(o,{...l,defaultShouldRevalidate:h}):typeof g=="boolean"?mt(o,{...l,defaultShouldRevalidate:g}):mt(o,l):s},resolve(g){let{lazy:P,loader:C,middleware:b}=o.route,D=p||s||g&&!ye(r.method)&&(P||C),x=b&&b.length>0&&!C&&!P;return D&&(ye(r.method)||!x)?go({request:r,path:a,pattern:n,match:o,lazyHandlerPromise:R?.handler,lazyRoutePromise:R?.route,handlerOverride:g,scopedContext:u}):Promise.resolve({type:"data",result:void 0})}}}function it(e,t,r,a,n,o,i,u,s=null){return n.map(l=>l.route.id!==o.route.id?{...l,shouldLoad:!1,shouldRevalidateArgs:s,shouldCallHandler:()=>!1,_lazyPromises:$a(e,t,r,l,i),resolve:()=>Promise.resolve({type:"data",result:void 0})}:ar(e,t,r,a,Et(n),l,i,u,!0,s))}async function vo(e,t,r,a,n,o,i){a.some(h=>h._lazyPromises?.middleware)&&await Promise.all(a.map(h=>h._lazyPromises?.middleware));let u={request:t,url:Ia(t,r),pattern:Et(a),params:a[0].params,context:o,matches:a},l=await e({...u,fetcherKey:n,runClientMiddleware:h=>{let p=u;return Na(p,()=>h({...p,fetcherKey:n,runClientMiddleware:()=>{throw new Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))}});try{await Promise.all(a.flatMap(h=>[h._lazyPromises?.handler,h._lazyPromises?.route]))}catch{}return l}async function go({request:e,path:t,pattern:r,match:a,lazyHandlerPromise:n,lazyRoutePromise:o,handlerOverride:i,scopedContext:u}){let s,l,h=ye(e.method),p=h?"action":"loader",R=g=>{let P,C=new Promise((x,N)=>P=N);l=()=>P(),e.signal.addEventListener("abort",l);let b=x=>typeof g!="function"?Promise.reject(new Error(`You cannot call the handler for a route which defines a boolean "${p}" [routeId: ${a.route.id}]`)):g({request:e,url:Ia(e,t),pattern:r,params:a.params,context:u},...x!==void 0?[x]:[]),D=(async()=>{try{return{type:"data",result:await(i?i(N=>b(N)):b())}}catch(x){return{type:"error",result:x}}})();return Promise.race([D,C])};try{let g=h?a.route.action:a.route.loader;
2if(n||o)if(g){let P,[C]=await Promise.all([R(g).catch(b=>{P=b}),n,o]);if(P!==void 0)throw P;s=C}else{await n;let P=h?a.route.action:a.route.loader;if(P)[s]=await Promise.all([R(P),o]);else if(p==="action"){let C=new URL(e.url),b=C.pathname+C.search;throw xe(405,{method:e.method,pathname:b,routeId:a.route.id})}else return{type:"data",result:void 0}}else if(g)s=await R(g);else{let P=new URL(e.url),C=P.pathname+P.search;throw xe(404,{pathname:C})}}catch(g){return{type:"error",result:g}}finally{l&&e.signal.removeEventListener("abort",l)}return s}async function Ro(e){let t=e.headers.get("Content-Type");return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function Eo(e){let{result:t,type:r}=e;if(fr(t)){let a;try{a=await Ro(t)}catch(n){return{type:"error",error:n}}return r==="error"?{type:"error",error:new Rt(t.status,t.statusText,a),statusCode:t.status,headers:t.headers}:{type:"data",data:a,statusCode:t.status,headers:t.headers}}return r==="error"?ra(t)?t.data instanceof Error?{type:"error",error:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:"error",error:Co(t),statusCode:vt(t)?t.status:void 0,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:"error",error:t,statusCode:vt(t)?t.status:void 0}:ra(t)?{type:"data",data:t.data,statusCode:t.init?.status,headers:t.init?.headers?new Headers(t.init.headers):void 0}:{type:"data",data:t}}function wo(e,t,r,a,n){let o=e.headers.get("Location");if(z(o,"Redirects returned/thrown from loaders/actions must have a Location header"),!sr(o)){let i=a.slice(0,a.findIndex(u=>u.route.id===r)+1);o=rr(new URL(t.url),i,n,o),e.headers.set("Location",o)}return e}var bo=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];function nr(e){try{return bo.includes(new URL(e).protocol)}catch{return!1}}function Xr(e,t,r,a){if(sr(e)){let n=e,o=lr.test(n)?new URL(ga(n,t.protocol)):new URL(n);if(nr(o.toString()))throw new Error("Invalid redirect location");let i=be(o.pathname,r)!=null;if(o.origin===t.origin&&i)return ur(o.pathname)+o.search+o.hash}try{let n=a.createURL(e);if(nr(n.toString()))throw new Error("Invalid redirect location")}catch{}return e}function nt(e,t,r,a){let n=e.createURL(ja(t)).toString(),o={signal:r};if(a&&ye(a.formMethod)){let{formMethod:i,formEncType:u}=a;o.method=i.toUpperCase(),u==="application/json"?(o.headers=new Headers({"Content-Type":u}),o.body=JSON.stringify(a.json)):u==="text/plain"?o.body=a.text:u==="application/x-www-form-urlencoded"&&a.formData?o.body=or(a.formData):o.body=a.formData}return new Request(n,o)}function Ia(e,t){let r=new URL(e.url),a=typeof t=="string"?Ne(t):t;if(r.pathname=a.pathname||"/",a.search){let n=new URLSearchParams(a.search),o=n.getAll("index");n.delete("index");for(let i of o.filter(Boolean))n.append("index",i);r.search=n.size?`?${n.toString()}`:""}else r.search="";return r.hash=a.hash||"",r}function or(e){let t=new URLSearchParams;for(let[r,a]of e.entries())t.append(r,typeof a=="string"?a:a.name);return t}function Qr(e){let t=new FormData;for(let[r,a]of e.entries())t.append(r,a);return t}function So(e,t,r,a=!1,n=!1){let o={},i=null,u,s=!1,l={},h=r&&Se(r[1])?r[1].error:void 0;return e.forEach(p=>{if(!(p.route.id in t))return;let R=p.route.id,g=t[R];if(z(!Xe(g),"Cannot handle redirect results in processLoaderData"),Se(g)){let P=g.error;if(h!==void 0&&(P=h,h=void 0),i=i||{},n)i[R]=P;else{let C=Ye(e,R);i[C.route.id]==null&&(i[C.route.id]=P)}a||(o[R]=Oa),s||(s=!0,u=vt(g.error)?g.error.status:500),g.headers&&(l[R]=g.headers)}else o[R]=g.data,g.statusCode&&g.statusCode!==200&&!s&&(u=g.statusCode),g.headers&&(l[R]=g.headers)}),h!==void 0&&r&&(i={[r[0]]:h},r[2]&&(o[r[2]]=void 0)),{loaderData:o,errors:i,statusCode:u||200,loaderHeaders:l}}function Zr(e,t,r,a,n,o,i){let{loaderData:u,errors:s}=So(t,r,a);return n.filter(l=>!l.matches||l.matches.some(h=>h.shouldLoad)).forEach(l=>{let{key:h,match:p,controller:R}=l;if(R&&R.signal.aborted)return;let g=o[h];if(z(g,"Did not find corresponding fetcher result"),Se(g)){let P=Ye(e.matches,p?.route.id);s&&s[P.route.id]||(s={...s,[P.route.id]:g.error}),i.delete(h)}else if(Xe(g))z(!1,"Unhandled fetcher revalidation redirect");else{let P=Fe(g.data);i.set(h,P)}}),{loaderData:u,errors:s}}function ea(e,t,r,a){let n=Object.entries(t).filter(([,o])=>o!==Oa).reduce((o,[i,u])=>(o[i]=u,o),{});for(let o of r){let i=o.route.id;if(!t.hasOwnProperty(i)&&e.hasOwnProperty(i)&&o.route.loader&&(n[i]=e[i]),a&&a.hasOwnProperty(i))break}return n}function ta(e){return e?Se(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Ye(e,t){return(t?e.slice(0,e.findIndex(a=>a.route.id===t)+1):[...e]).reverse().find(a=>a.route.hasErrorBoundary===!0)||e[0]}function Tt(e){let t=e.length===1?e[0]:e.find(r=>r.index||!r.path||r.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function xe(e,{pathname:t,routeId:r,method:a,type:n,message:o}={}){let i="Unknown Server Error",u="Unknown @remix-run/router error";return e===400?(i="Bad Request",a&&t&&r?u=`You made a ${a} request to "${t}" but did not provide a \`loader\` for route "${r}", so there is no way to handle the request.`:n==="invalid-body"&&(u="Unable to encode submission body")):e===403?(i="Forbidden",u=`Route "${r}" does not match URL "${t}"`):e===404?(i="Not Found",u=`No route matches URL "${t}"`):e===405&&(i="Method Not Allowed",a&&t&&r?u=`You made a ${a.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${r}", so there is no way to handle the request.`:a&&(u=`Invalid request method "${a.toUpperCase()}"`)),new Rt(e||500,i,new Error(u),!0)}function Mt(e){let t=Object.entries(e);for(let r=t.length-1;r>=0;r--){let[a,n]=t[r];
2if(Xe(n))return{key:a,result:n}}}function ja(e){let t=typeof e=="string"?Ne(e):e;return Ae({...t,hash:""})}function Po(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===""?t.hash!=="":e.hash===t.hash?!0:t.hash!==""}function Co(e){return new Rt(e.init?.status??500,e.init?.statusText??"Internal Server Error",e.data)}function xo(e){return e!=null&&typeof e=="object"&&Object.entries(e).every(([t,r])=>typeof t=="string"&&Lo(r))}function Lo(e){return e!=null&&typeof e=="object"&&"type"in e&&"result"in e&&(e.type==="data"||e.type==="error")}function _o(e){return fr(e.result)&&Ta.has(e.result.status)}function Se(e){return e.type==="error"}function Xe(e){return(e&&e.type)==="redirect"}function ra(e){return typeof e=="object"&&e!=null&&"type"in e&&"data"in e&&"init"in e&&e.type==="DataWithResponseInit"}function fr(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body<"u"}function Do(e){return Ta.has(e)}function To(e){return fr(e)&&Do(e.status)&&e.headers.has("Location")}function Mo(e){return no.has(e.toUpperCase())}function ye(e){return ro.has(e.toUpperCase())}function dr(e){return new URLSearchParams(e).getAll("index").some(t=>t==="")}function Ft(e,t){let r=typeof t=="string"?Ne(t).search:t.search;if(e[e.length-1].route.index&&dr(r||""))return e[e.length-1];let a=Ca(e);return a[a.length-1]}function aa(e){let{formMethod:t,formAction:r,formEncType:a,text:n,formData:o,json:i}=e;if(!(!t||!r||!a)){if(n!=null)return{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:void 0,text:n};if(o!=null)return{formMethod:t,formAction:r,formEncType:a,formData:o,json:void 0,text:void 0};if(i!==void 0)return{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:i,text:void 0}}}function Qt(e,t,r,a){return a?{state:"loading",location:e,matches:t,historyAction:r,formMethod:a.formMethod,formAction:a.formAction,formEncType:a.formEncType,formData:a.formData,json:a.json,text:a.text}:{state:"loading",location:e,matches:t,historyAction:r,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function Oo(e,t,r,a){return{state:"submitting",location:e,matches:t,historyAction:r,formMethod:a.formMethod,formAction:a.formAction,formEncType:a.formEncType,formData:a.formData,json:a.json,text:a.text}}function ct(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 ko(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 Fe(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 Fo(e,t){try{let r=e.sessionStorage.getItem(Ma);if(r){let a=JSON.parse(r);for(let[n,o]of Object.entries(a||{}))o&&Array.isArray(o)&&t.set(n,new Set(o||[]))}}catch{}}function Ao(e,t){if(t.size>0){let r={};for(let[a,n]of t)r[a]=[...n];try{e.sessionStorage.setItem(Ma,JSON.stringify(r))}catch(a){le(!1,`Failed to save applied view transitions in sessionStorage (${a}).`)}}}function na(){let e,t,r=new Promise((a,n)=>{e=async o=>{a(o);try{await r}catch{}},t=async o=>{n(o);try{await r}catch{}}});return{promise:r,resolve:e,reject:t}}var Qe=m.createContext(null);Qe.displayName="DataRouter";var wt=m.createContext(null);wt.displayName="DataRouterState";var za=m.createContext(!1);function Ha(){return m.useContext(za)}var hr=m.createContext({isTransitioning:!1});hr.displayName="ViewTransition";var Ba=m.createContext(new Map);Ba.displayName="Fetchers";var No=m.createContext(null);No.displayName="Await";var Pe=m.createContext(null);Pe.displayName="Navigation";var bt=m.createContext(null);bt.displayName="Location";var _e=m.createContext({outlet:null,matches:[],isDataRoute:!1});_e.displayName="Route";var mr=m.createContext(null);mr.displayName="RouteError";var Wa="REACT_ROUTER_ERROR",Uo="REDIRECT",$o="ROUTE_ERROR_RESPONSE";function Io(e){if(e.startsWith(`${Wa}:${Uo}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="str
2ing"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function jo(e){if(e.startsWith(`${Wa}:${$o}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new Rt(t.status,t.statusText,t.data)}catch{}}function zo(e,{relative:t}={}){z(lt(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:a}=m.useContext(Pe),{hash:n,pathname:o,search:i}=St(e,{relative:t}),u=o;return r!=="/"&&(u=o==="/"?r:Le([r,o])),a.createHref({pathname:u,search:i,hash:n})}function lt(){return m.useContext(bt)!=null}function Te(){return z(lt(),"useLocation() may be used only in the context of a <Router> component."),m.useContext(bt).location}function Ji(){return m.useContext(bt).navigationType}var Ya="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Va(e){m.useContext(Pe).static||m.useLayoutEffect(e)}function pr(){let{isDataRoute:e}=m.useContext(_e);return e?ti():Ho()}function Ho(){z(lt(),"useNavigate() may be used only in the context of a <Router> component.");let e=m.useContext(Qe),{basename:t,navigator:r}=m.useContext(Pe),{matches:a}=m.useContext(_e),{pathname:n}=Te(),o=JSON.stringify(jt(a)),i=m.useRef(!1);return Va(()=>{i.current=!0}),m.useCallback((s,l={})=>{if(le(i.current,Ya),!i.current)return;if(typeof s=="number"){r.go(s);return}let h=gt(s,JSON.parse(o),n,l.relative==="path");e==null&&t!=="/"&&(h.pathname=h.pathname==="/"?t:Le([t,h.pathname])),(l.replace?r.replace:r.push)(h,l.state,l)},[t,r,o,n,e])}var Bo=m.createContext(null);function Wo(e){let t=m.useContext(_e).outlet;return m.useMemo(()=>t&&m.createElement(Bo.Provider,{value:e},t),[t,e])}function Xi(){let{matches:e}=m.useContext(_e);return e[e.length-1]?.params??{}}function St(e,{relative:t}={}){let{matches:r}=m.useContext(_e),{pathname:a}=Te(),n=JSON.stringify(jt(r));return m.useMemo(()=>gt(e,JSON.parse(n),a,t==="path"),[e,n,a,t])}function Yo(e,t,r){z(lt(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=m.useContext(Pe),{matches:n}=m.useContext(_e),o=n[n.length-1],i=o?o.params:{},u=o?o.pathname:"/",s=o?o.pathnameBase:"/",l=o&&o.route;{let b=l&&l.path||"";Ja(u,!l||b.endsWith("*")||b.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${u}" (under <Route path="${b}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
3
4Please change the parent <Route path="${b}"> to <Route path="${b==="/"?"*":`${b}/*`}">.`)}let h=Te(),p;p=h;let R=p.pathname||"/",g=R;if(s!=="/"){let b=s.replace(/^\//,"").split("/");g="/"+R.replace(/^\//,"").split("/").slice(b.length).join("/")}let P=r&&r.state.matches.length?r.state.matches.map(b=>Object.assign(b,{route:r.manifest[b.route.id]||b.route})):Ea(e,{pathname:g});return le(l||P!=null,`No routes matched location "${p.pathname}${p.search}${p.hash}" `),le(P==null||P[P.length-1].route.element!==void 0||P[P.length-1].route.Component!==void 0||P[P.length-1].route.lazy!==void 0,`Matched leaf route at location "${p.pathname}${p.search}${p.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`),Jo(P&&P.map(b=>Object.assign({},b,{params:Object.assign({},i,b.params),pathname:Le([s,a.encodeLocation?a.encodeLocation(b.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?s:Le([s,a.encodeLocation?a.encodeLocation(b.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:b.pathnameBase])})),n,r)}function Vo(){let e=Zo(),t=vt(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,a="rgba(200,200,200, 0.5)",n={padding:"0.5rem",backgroundColor:a},o={padding:"2px 4px",backgroundColor:a},i=null;return console.error("Error handled by React Router default ErrorBoundary:",e),i=m.createElement(m.Fragment,null,m.createElement("p",null,"💿 Hey developer 👋"),m.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",m.createElement("code",{style:o},"ErrorBoundary")," or"," ",m.createElement("code",{style:o},"errorElement")," prop on your route.")),m.createElement(m.Fragment,null,m.createElement("h2",null,"Unexpected Application 
4Error!"),m.createElement("h3",{style:{fontStyle:"italic"}},t),r?m.createElement("pre",{style:n},r):null,i)}var Ko=m.createElement(Vo,null),Ka=class extends m.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){const r=jo(e.digest);r&&(e=r)}let t=e!==void 0?m.createElement(_e.Provider,{value:this.props.routeContext},m.createElement(mr.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?m.createElement(Go,{error:e},t):t}};Ka.contextType=za;var Zt=new WeakMap;function Go({children:e,error:t}){let{basename:r}=m.useContext(Pe);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let a=Io(t.digest);if(a){let n=Zt.get(t);if(n)throw n;let o=La(a.location,r),i=o.absoluteURL||o.to;if(nr(i))throw new Error("Invalid redirect location");if(xa&&!Zt.get(t))if(o.isExternal||a.reloadDocument)window.location.href=i;else{const u=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:a.replace}));throw Zt.set(t,u),u}return m.createElement("meta",{httpEquiv:"refresh",content:`0;url=${i}`})}}return e}function qo({routeContext:e,match:t,children:r}){let a=m.useContext(Qe);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),m.createElement(_e.Provider,{value:e},r)}function Jo(e,t=[],r){let a=r?.state;if(e==null){if(!a)return null;if(a.errors)e=a.matches;else if(t.length===0&&!a.initialized&&a.matches.length>0)e=a.matches;else return null}let n=e,o=a?.errors;if(o!=null){let h=n.findIndex(p=>p.route.id&&o?.[p.route.id]!==void 0);z(h>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),n=n.slice(0,Math.min(n.length,h+1))}let i=!1,u=-1;if(r&&a){i=a.renderFallback;for(let h=0;h<n.length;h++){let p=n[h];if((p.route.HydrateFallback||p.route.hydrateFallbackElement)&&(u=h),p.route.id){let{loaderData:R,errors:g}=a,P=p.route.loader&&!R.hasOwnProperty(p.route.id)&&(!g||g[p.route.id]===void 0);if(p.route.lazy||P){r.isStatic&&(i=!0),u>=0?n=n.slice(0,u+1):n=[n[0]];break}}}}let s=r?.onError,l=a&&s?(h,p)=>{s(h,{location:a.location,params:a.matches?.[0]?.params??{},pattern:Et(a.matches),errorInfo:p})}:void 0;return n.reduceRight((h,p,R)=>{let g,P=!1,C=null,b=null;a&&(g=o&&p.route.id?o[p.route.id]:void 0,C=p.route.errorElement||Ko,i&&(u<0&&R===0?(Ja("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),P=!0,b=null):u===R&&(P=!0,b=p.route.hydrateFallbackElement||null)));let D=t.concat(n.slice(0,R+1)),x=()=>{let N;return g?N=C:P?N=b:p.route.Component?N=m.createElement(p.route.Component,null):p.route.element?N=p.route.element:N=h,m.createElement(qo,{match:p,routeContext:{outlet:h,matches:D,isDataRoute:a!=null},children:N})};return a&&(p.route.ErrorBoundary||p.route.errorElement||R===0)?m.createElement(Ka,{location:a.location,revalidation:a.revalidation,component:C,error:g,children:x(),routeContext:{outlet:null,matches:D,isDataRoute:!0},onError:l}):x()},null)}function yr(e){return`${e} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function Ga(e){let t=m.useContext(Qe);return z(t,yr(e)),t}function qa(e){let t=m.useContext(wt);return z(t,yr(e)),t}function Xo(e){let t=m.useContext(_e);return z(t,yr(e)),t}function vr(e){let t=Xo(e),r=t.matches[t.matches.length-1];return z(r.route.id,`${e} can only be used on routes that contain a unique "id"`),r.route.id}function Qo(){return vr("useRouteId")}function Zo(){let e=m.useContext(mr),t=qa("useRouteError"),r=vr("useRouteError");return e!==void 0?e:t.errors?.[r]}var ei=0;function Qi(e){let{router:t,basename:r}=Ga("useBlocker"),a=qa("useBlocker"),[n,o]=m.useState(""),i=m.useCallback(u=>{if(typeof e!="function")return!!e;if(r==="/")return e(u);let{currentLocation:s,nextLocation:l,historyAction:h}=u;return e({currentLocation:{...s,pathname:be(s.pathname,r)||s.pathname},nextLocation:{...l,pathname:be(l.pathname,r)||l.pathname},historyAction:h})},[r,e]);return m.useEffect(()=>{let u=String(++ei);return o(u),()=>t.deleteBlocker(u)},[t]),m.useEffect(()=>{n!==""&&t.getBlocker(n,i)},[t,n,i]),n&&a.blockers.has(n)?a.blockers.get(n):tt}function ti(){let{router:e}=Ga("useNavigate"),t=vr("useNavigate"),r=m.useRef(!1);return Va(()=>{r.current=!0}),m.useCallback(async(n,o={})=>{le(r.current,Ya),r.current&&(typeof n=="number"?await e.navigate(n):await e.navigate(n,{fromRouteId:t,...o}))},[e,t])}var oa={};function Ja(e,t,r){!t&&!oa[e]&&(oa[e]=!0,le(!1,r))}var ia={};function la(e,t){!e&&!ia[t]&&(ia[t]=!0,console.warn(t))}var ri="useOptimistic",sa=Sn[ri],ai=()=>{};function ni(e){return sa?sa(e):[e,ai]}function oi(e){let t={hasErrorBoundary:e.hasErrorBoundary||e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&(e.element&&le(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(t,{element:m.createElement(e.Component),Component:void 0})),e.HydrateFallback&&(e.hydrateFallbackElement&&le(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(t,{hydrateFallbackElement:m.createElement(e.HydrateFallback),HydrateFallback:void 0})),e.ErrorBoundary&&(e.errorElement&&le(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(t,{errorElement:m.createElement(e.ErrorBoundary),ErrorBoundary:void 0})),t}var ii=["HydrateFallback","hydrateFallbackElement"],li=class{constructor(){this.status="pending",this.promise=new Promise((e,t)=>
4{this.resolve=r=>{this.status==="pending"&&(this.status="resolved",e(r))},this.reject=r=>{this.status==="pending"&&(this.status="rejected",t(r))}})}};function si({router:e,flushSync:t,onError:r,useTransitions:a}){a=Ha()||a;let[o,i]=m.useState(e.state),[u,s]=ni(o),[l,h]=m.useState(),[p,R]=m.useState({isTransitioning:!1}),[g,P]=m.useState(),[C,b]=m.useState(),[D,x]=m.useState(),N=m.useRef(new Map),V=m.useCallback((v,{deletedFetchers:G,newErrors:Z,flushSync:se,viewTransitionOpts:J})=>{Z&&r&&Object.values(Z).forEach(ae=>r(ae,{location:v.location,params:v.matches[0]?.params??{},pattern:Et(v.matches)})),v.fetchers.forEach((ae,ue)=>{ae.data!==void 0&&N.current.set(ue,ae.data)}),G.forEach(ae=>N.current.delete(ae)),la(se===!1||t!=null,'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable.  Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let de=e.window!=null&&e.window.document!=null&&typeof e.window.document.startViewTransition=="function";if(la(J==null||de,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!J||!de){t&&se?t(()=>i(v)):a===!1?i(v):m.startTransition(()=>{a===!0&&s(ae=>ua(ae,v)),i(v)});return}if(t&&se){t(()=>{C&&(g?.resolve(),C.skipTransition()),R({isTransitioning:!0,flushSync:!0,currentLocation:J.currentLocation,nextLocation:J.nextLocation})});let ae=e.window.document.startViewTransition(()=>{t(()=>i(v))});ae.finished.finally(()=>{t(()=>{P(void 0),b(void 0),h(void 0),R({isTransitioning:!1})})}),t(()=>b(ae));return}C?(g?.resolve(),C.skipTransition(),x({state:v,currentLocation:J.currentLocation,nextLocation:J.nextLocation})):(h(v),R({isTransitioning:!0,flushSync:!1,currentLocation:J.currentLocation,nextLocation:J.nextLocation}))},[e.window,t,C,g,a,s,r]);m.useLayoutEffect(()=>e.subscribe(V),[e,V]),m.useEffect(()=>{p.isTransitioning&&!p.flushSync&&P(new li)},[p]),m.useEffect(()=>{if(g&&l&&e.window){let v=l,G=g.promise,Z=e.window.document.startViewTransition(async()=>{a===!1?i(v):m.startTransition(()=>{a===!0&&s(se=>ua(se,v)),i(v)}),await G});Z.finished.finally(()=>{P(void 0),b(void 0),h(void 0),R({isTransitioning:!1})}),b(Z)}},[l,g,e.window,a,s]),m.useEffect(()=>{g&&l&&u.location.key===l.location.key&&g.resolve()},[g,C,u.location,l]),m.useEffect(()=>{!p.isTransitioning&&D&&(h(D.state),R({isTransitioning:!0,flushSync:!1,currentLocation:D.currentLocation,nextLocation:D.nextLocation}),x(void 0))},[p.isTransitioning,D]);let H=m.useMemo(()=>({createHref:e.createHref,encodeLocation:e.encodeLocation,go:v=>e.navigate(v),push:(v,G,Z)=>e.navigate(v,{state:G,preventScrollReset:Z?.preventScrollReset}),replace:(v,G,Z)=>e.navigate(v,{replace:!0,state:G,preventScrollReset:Z?.preventScrollReset})}),[e]),re=e.basename||"/",U=m.useMemo(()=>({router:e,navigator:H,static:!1,basename:re,onError:r}),[e,H,re,r]);return m.createElement(m.Fragment,null,m.createElement(Qe.Provider,{value:U},m.createElement(wt.Provider,{value:u},m.createElement(Ba.Provider,{value:N.current},m.createElement(hr.Provider,{value:p}
4,m.createElement(di,{basename:re,location:u.location,navigationType:u.historyAction,navigator:H,useTransitions:a},m.createElement(ui,{routes:e.routes,manifest:e.manifest,future:e.future,state:u,isStatic:!1,onError:r})))))),null)}function ua(e,t){return{...e,navigation:t.navigation.state!=="idle"?t.navigation:e.navigation,revalidation:t.revalidation!=="idle"?t.revalidation:e.revalidation,actionData:t.navigation.state!=="submitting"?t.actionData:e.actionData,fetchers:t.fetchers}}var ui=m.memo(ci);function ci({routes:e,manifest:t,future:r,state:a,isStatic:n,onError:o}){return Yo(e,void 0,{manifest:t,state:a,isStatic:n,onError:o})}function Zi({to:e,replace:t,state:r,relative:a}){z(lt(),"<Navigate> may be used only in the context of a <Router> component.");let{static:n}=m.useContext(Pe);le(!n,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:o}=m.useContext(_e),{pathname:i}=Te(),u=pr(),s=gt(e,jt(o),i,a==="path"),l=JSON.stringify(s);return m.useEffect(()=>{u(JSON.parse(l),{replace:t,state:r,relative:a})},[u,l,a,t,r]),null}function el(e){return Wo(e.context)}function fi(e){z(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function di({basename:e="/",children:t=null,location:r,navigationType:a="POP",navigator:n,static:o=!1,useTransitions:i}){z(!lt(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let u=e.replace(/^\/*/,"/"),s=m.useMemo(()=>({basename:u,navigator:n,static:o,useTransitions:i,future:{}}),[u,n,o,i]);typeof r=="string"&&(r=Ne(r));let{pathname:l="/",search:h="",hash:p="",state:R=null,key:g="default",mask:P}=r,C=m.useMemo(()=>{let b=be(l,u);return b==null?null:{location:{pathname:b,search:h,hash:p,state:R,key:g,mask:P},navigationType:a}},[u,l,h,p,R,g,a,P]);return le(C!=null,`<Router basename="${u}"> is not able to match the URL "${l}${h}${p}" because it does not start with the basename, so the <Router> won't render anything.`),C==null?null:m.createElement(Pe.Provider,{value:s},m.createElement(bt.Provider,{children:t,value:C}))}function ca(e,t=[]){let r=[];return m.Children.forEach(e,(a,n)=>{if(!m.isValidElement(a))return;let o=[...t,n];if(a.type===m.Fragment){r.push.apply(r,ca(a.props.children,o));return}z(a.type===fi,`[${typeof a.type=="string"?a.type:a.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),z(!a.props.index||!a.props.children,"An index route cannot have child routes.");let i={id:a.props.id||o.join("-"),caseSensitive:a.props.caseSensitive,element:a.props.element,Component:a.props.Component,index:a.props.index,path:a.props.path,middleware:a.props.middleware,loader:a.props.loader,action:a.props.action,hydrateFallbackElement:a.props.hydrateFallbackElement,HydrateFallback:a.props.HydrateFallback,errorElement:a.props.errorElement,ErrorBoundary:a.props.ErrorBoundary,hasErrorBoundary:a.props.hasErrorBoundary===!0||a.props.ErrorBoundary!=null||a.props.errorElement!=null,shouldRevalidate:a.props.shouldRevalidate,handle:a.props.handle,lazy:a.props.lazy};a.props.children&&(i.children=ca(a.props.children,o)),r.push(i)}),r}var At="get",Nt="application/x-www-form-urlencoded";function zt(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function hi(e){return zt(e)&&e.tagName.toLowerCase()==="button"}function mi(e){return zt(e)&&e.tagName.toLowerCase()==="form"}function pi(e){return zt(e)&&e.tagName.toLowerCase()==="input"}function yi(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function vi(e,t){return e.button===0&&(!t||t==="_self")&&!yi(e)}function ir(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let a=e[r];return t.concat(Array.isArray(a)?a.map(n=>[r,n]):[[r,a]])},[]))}function gi(e,t){let r=ir(e);return t&&t.forEach((a,n)=>
4{r.has(n)||t.getAll(n).forEach(o=>{r.append(n,o)})}),r}var Ot=null;function Ri(){if(Ot===null)try{new FormData(document.createElement("form"),0),Ot=!1}catch{Ot=!0}return Ot}var Ei=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function er(e){return e!=null&&!Ei.has(e)?(le(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Nt}"`),null):e}function wi(e,t){let r,a,n,o,i;if(mi(e)){let u=e.getAttribute("action");a=u?be(u,t):null,r=e.getAttribute("method")||At,n=er(e.getAttribute("enctype"))||Nt,o=new FormData(e)}else if(hi(e)||pi(e)&&(e.type==="submit"||e.type==="image")){let u=e.form;if(u==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||u.getAttribute("action");if(a=s?be(s,t):null,r=e.getAttribute("formmethod")||u.getAttribute("method")||At,n=er(e.getAttribute("formenctype"))||er(u.getAttribute("enctype"))||Nt,o=new FormData(u,e),!Ri()){let{name:l,type:h,value:p}=e;if(h==="image"){let R=l?`${l}.`:"";o.append(`${R}x`,"0"),o.append(`${R}y`,"0")}else l&&o.append(l,p)}}else{if(zt(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=At,a=null,n=Nt,i=e}return o&&n==="text/plain"&&(i=o,o=void 0),{action:a,method:r.toLowerCase(),encType:n,formData:o,body:i}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function gr(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Xa(e,t,r,a){let n=typeof e=="string"?new URL(e,typeof window>"u"?"server://singlefetch/":window.location.origin):e;return r?n.pathname.endsWith("/")?n.pathname=`${n.pathname}_.${a}`:n.pathname=`${n.pathname}.${a}`:n.pathname==="/"?n.pathname=`_root.${a}`:t&&be(n.pathname,t)==="/"?n.pathname=`${$t(t)}/_root.${a}`:n.pathname=`${$t(n.pathname)}.${a}`,n}async function bi(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Si(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function Pi(e,t,r){let a=await Promise.all(e.map(async n=>{let o=t.routes[n.route.id];if(o){let i=await bi(o,r);return i.links?i.links():[]}return[]}));return _i(a.flat(1).filter(Si).filter(n=>n.rel==="stylesheet"||n.rel==="preload").map(n=>n.rel==="stylesheet"?{...n,rel:"prefetch",as:"style"}:{...n,rel:"prefetch"}))}function fa(e,t,r,a,n,o){let i=(s,l)=>r[l]?s.route.id!==r[l].route.id:!0,u=(s,l)=>r[l].pathname!==s.pathname||r[l].route.path?.endsWith("*")&&r[l].params["*"]!==s.params["*"];return o==="assets"?t.filter((s,l)=>i(s,l)||u(s,l)):o==="data"?t.filter((s,l)=>{let h=a.routes[s.route.id];if(!h||!h.hasLoader)return!1;if(i(s,l)||u(s,l))return!0;if(s.route.shouldRevalidate){let p=s.route.shouldRevalidate({currentUrl:new URL(n.pathname+n.search+n.hash,window.origin),currentParams:r[0]?.params||{},nextUrl:new URL(e,window.origin),nextParams:s.params,defaultShouldRevalidate:!0});if(typeof p=="boolean")return p}return!0}):[]}function Ci(e,t,{includeHydrateFallback:r}={}){return xi(e.map(a=>{let n=t.routes[a.route.id];if(!n)return[];let o=[n.module];return n.clientActionModule&&(o=o.concat(n.clientActionModule)),n.clientLoaderModule&&(o=o.concat(n.clientLoaderModule)),r&&n.hydrateFallbackModule&&(o=o.concat(n.hydrateFallbackModule)),n.imports&&(o=o.concat(n.imports)),o}).flat(1))}function xi(e){return[...new Set(e)]}function Li(e){let t={},r=Object.keys(e).sort();for(let a of r)t[a]=e[a];return t}function _i(e,t){let r=new Set;return new Set(t),e.reduce((a,n)=>{let o=JSON.stringify(Li(n));return r.has(o)||(r.add(o),a.push({key:o,link:n})),a},[])}function Rr(){let e=m.useContext(Qe);return gr(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function Di(){let e=m.useContext(wt);return gr(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var Er=m.createContext(void 0);Er.displayName="FrameworkContext";function Ht(){let e=m.useContext(Er);return gr(e,"You must render this element inside a <HydratedRouter> element"),e}function Ti(e,t){let r=m.useContext(Er),[a,n]=m.useState(!1),[o,i]=m.useState(!1),{onFocus:u,onBlur:s,onMouseEnter:l,onMouseLeave:h,onTouchStart:p}=t,R=m.useRef(null);m.useEffect(()=>{if(e==="render"&&i(!0),e==="viewport"){let C=D=>{D.forEach(x=>{i(x.isIntersecting)})},b=new IntersectionObserver(C,{threshold:.5});return R.current&&b.observe(R.current),()=>{b.disconnect()}}},[e]),m.useEffect(()=>{if(a){let C=setTimeout(()=>{i(!0)},100);return()=>{clearTimeout(C)}}},[a]);let g=()=>{n(!0)},P=()=>{n(!1),i(!1)};return r?e!=="intent"?[o,R,{}]:[o,R,{onFocus:ft(u,g),onBlur:ft(s,P),onMouseEnter:ft(l,g),onMouseLeave:ft(h,P),onTouchStart:ft(p,g)}]:[!1,R,{}]}function ft(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function Mi({page:e,...t}){let r=Ha(),{nonce:a}=Ht(),{router:n}=Rr(),o=m.useMemo(()=>Ea(n.routes,e,n.basename),[n.routes,e,n.basename]);return o?(t.nonce==null&&a&&(t={...t,nonce:a}),r?m.createElement(ki,{page:e,matches:o,...t}):m.createElement(Fi,{page:e,matches:o,...t})):null}function Oi(e){let{manifest:t,routeModules:r}=Ht(),[a,n]=m.useState([]);return m.useEffect(()=>{let o=!1;return Pi(e,t,r).then(i=>{o||n(i)}),()=>{o=!0}},[e,t,r]),a}function ki({page:e,matches:t,...r}){let a=Te(),{future:n}=Ht(),{basename:o}=Rr(),i=m.useMemo(()=>
4{if(e===a.pathname+a.search+a.hash)return[];let u=Xa(e,o,n.v8_trailingSlashAwareDataRequests,"rsc"),s=!1,l=[];for(let h of t)typeof h.route.shouldRevalidate=="function"?s=!0:l.push(h.route.id);return s&&l.length>0&&u.searchParams.set("_routes",l.join(",")),[u.pathname+u.search]},[o,n.v8_trailingSlashAwareDataRequests,e,a,t]);return m.createElement(m.Fragment,null,i.map(u=>m.createElement("link",{key:u,rel:"prefetch",as:"fetch",href:u,...r})))}function Fi({page:e,matches:t,...r}){let a=Te(),{future:n,manifest:o,routeModules:i}=Ht(),{basename:u}=Rr(),{loaderData:s,matches:l}=Di(),h=m.useMemo(()=>fa(e,t,l,o,a,"data"),[e,t,l,o,a]),p=m.useMemo(()=>fa(e,t,l,o,a,"assets"),[e,t,l,o,a]),R=m.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let C=new Set,b=!1;if(t.forEach(x=>{let N=o.routes[x.route.id];!N||!N.hasLoader||(!h.some(V=>V.route.id===x.route.id)&&x.route.id in s&&i[x.route.id]?.shouldRevalidate||N.hasClientLoader?b=!0:C.add(x.route.id))}),C.size===0)return[];let D=Xa(e,u,n.v8_trailingSlashAwareDataRequests,"data");return b&&C.size>0&&D.searchParams.set("_routes",t.filter(x=>C.has(x.route.id)).map(x=>x.route.id).join(",")),[D.pathname+D.search]},[u,n.v8_trailingSlashAwareDataRequests,s,a,o,h,t,e,i]),g=m.useMemo(()=>Ci(p,o),[p,o]),P=Oi(p);return m.createElement(m.Fragment,null,R.map(C=>m.createElement("link",{key:C,rel:"prefetch",as:"fetch",href:C,...r})),g.map(C=>m.createElement("link",{key:C,rel:"modulepreload",href:C,...r})),P.map(({key:C,link:b})=>m.createElement("link",{key:C,nonce:r.nonce,...b,crossOrigin:b.crossOrigin??r.crossOrigin})))}function Ai(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}var Ni=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{Ni&&(window.__reactRouterVersion="7.18.2")}catch{}function tl(e,t){return uo({basename:t?.basename,getContext:t?.getContext,future:t?.future,history:Pn({window:t?.window}),hydrationData:t?.hydrationData||Ui(),routes:e,mapRouteProperties:oi,hydrationRouteProperties:ii,dataStrategy:t?.dataStrategy,patchRoutesOnNavigation:t?.patchRoutesOnNavigation,window:t?.window,instrumentations:t?.instrumentations}).initialize()}function Ui(){let e=window?.__staticRouterHydrationData;return e&&e.errors&&(e={...e,errors:$i(e.errors)}),e}function $i(e){if(!e)return null;let t=Object.entries(e),r={};for(let[a,n]of t)if(n&&n.__type==="RouteErrorResponse")r[a]=new Rt(n.status,n.statusText,n.data,n.internal===!0);else if(n&&n.__type==="Error"){if(typeof n.__subType=="string"&&qn.includes(n.__subType)){let o=window[n.__subType];if(typeof o=="function")try{let i=new o(n.message);i.stack="",r[a]=i}catch{}}if(r[a]==null){let o=new Error(n.message);o.stack="",r[a]=o}}else r[a]=n;return r}var Qa=m.forwardRef(function({onClick:t,discover:r="render",prefetch:a="none",relative:n,reloadDocument:o,replace:i,mask:u,state:s,target:l,to:h,preventScrollReset:p,viewTransition:R,defaultShouldRevalidate:g,...P},C){let{basename:b,navigator:D,useTransitions:x}=m.useContext(Pe),N=typeof h=="string"&&It.test(h),V=La(h,b);h=V.to;let H=zo(h,{relative:n}),re=Te(),U=null;if(u){let ue=gt(u,[],re.mask?re.mask.pathname:"/",!0);b!=="/"&&(ue.pathname=ue.pathname==="/"?b:Le([b,ue.pathname])),U=D.createHref(ue)}let[v,G,Z]=Ti(a,P),se=Hi(h,{replace:i,mask:u,state:s,target:l,preventScrollReset:p,relative:n,viewTransition:R,defaultShouldRevalidate:g,useTransitions:x});function J(ue){t&&t(ue),ue.defaultPrevented||se(ue)}let de=!(V.isExternal||o),ae=m.createElement("a",{...P,...Z,href:(de?U:void 0)||V.absoluteURL||H,onClick:de?J:t,ref:Ai(C,G),target:l,"data-discover":!N&&r==="render"?"true":void 0});return v&&!N?m.createElement(m.Fragment,null,ae,m.createElement(Mi,{page:H})):ae});Qa.displayName="Link";var Ii=m.forwardRef(function({"aria-current":t="page",caseSensitive:r=!1,className:a="",end:n=!1,style:o,to:i,viewTransition:u,children:s,...l},h){let p=St(i,{relative:l.relative}),R=Te(),g=m.useContext(wt),{navigator:P,basename:C}=m.useContext(Pe),b=g!=null&&Ki(p)&&u===!0,D=P.encodeLocation?P.encodeLocation(p).pathname:p.pathname,x=R.pathname,N=g&&g.navigation&&g.navigation.location?g.navigation.location.pathname:null;r||(x=x.toLowerCase(),N=N?N.toLowerCase():null,D=D.toLowerCase()),N&&C&&(N=be(N,C)||N);const V=D!=="/"&&D.endsWith("/")?D.length-1:D.length;let H=x===D||!n&&x.startsWith(D)&&x.charAt(V)==="/",re=N!=null&&(N===D||!n&&N.startsWith(D)&&N.charAt(D.length)==="/"),U={isActive:H,isPending:re,isTransitioning:b},v=H?t:void 0,G;typeof a=="function"?G=a(U):G=[a,H?"active":null,re?"pending":null,b?"transitioning":null].filter(
4Boolean).join(" ");let Z=typeof o=="function"?o(U):o;return m.createElement(Qa,{...l,"aria-current":v,className:G,ref:h,style:Z,to:i,viewTransition:u},typeof s=="function"?s(U):s)});Ii.displayName="NavLink";var ji=m.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:a,replace:n,state:o,method:i=At,action:u,onSubmit:s,relative:l,preventScrollReset:h,viewTransition:p,defaultShouldRevalidate:R,...g},P)=>{let{useTransitions:C}=m.useContext(Pe),b=Yi(),D=Vi(u,{relative:l}),x=i.toLowerCase()==="get"?"get":"post",N=typeof u=="string"&&It.test(u),V=H=>{if(s&&s(H),H.defaultPrevented)return;H.preventDefault();let re=H.nativeEvent.submitter,U=re?.getAttribute("formmethod")||i,v=()=>b(re||H.currentTarget,{fetcherKey:t,method:U,navigate:r,replace:n,state:o,relative:l,preventScrollReset:h,viewTransition:p,defaultShouldRevalidate:R});C&&r!==!1?m.startTransition(()=>v()):v()};return m.createElement("form",{ref:P,method:x,action:D,onSubmit:a?s:V,...g,"data-discover":!N&&e==="render"?"true":void 0})});ji.displayName="Form";function zi(e){return`${e} must be used within a data router.  See https://reactrouter.com/en/main/routers/picking-a-router.`}function Za(e){let t=m.useContext(Qe);return z(t,zi(e)),t}function Hi(e,{target:t,replace:r,mask:a,state:n,preventScrollReset:o,relative:i,viewTransition:u,defaultShouldRevalidate:s,useTransitions:l}={}){let h=pr(),p=Te(),R=St(e,{relative:i});return m.useCallback(g=>{if(vi(g,t)){g.preventDefault();let P=r!==void 0?r:Ae(p)===Ae(R),C=()=>h(e,{replace:P,mask:a,state:n,preventScrollReset:o,relative:i,viewTransition:u,defaultShouldRevalidate:s});l?m.startTransition(()=>C()):C()}},[p,h,R,r,a,n,t,e,o,i,u,s,l])}function rl(e){le(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=m.useRef(ir(e)),r=m.useRef(!1),a=Te(),n=m.useMemo(()=>gi(a.search,r.current?null:t.current),[a.search]),o=pr(),i=m.useCallback((u,s)=>{const l=ir(typeof u=="function"?u(new URLSearchParams(n)):u);r.current=!0,o("?"+l,s)},[o,n]);return[n,i]}var Bi=0,Wi=()=>`__${String(++Bi)}__`;function Yi(){let{router:e}=Za("useSubmit"),{basename:t}=m.useContext(Pe),r=Qo(),a=e.fetch,n=e.navigate;return m.useCallback(async(o,i={})=>{let{action:u,method:s,encType:l,formData:h,body:p}=wi(o,t);if(i.navigate===!1){let R=i.fetcherKey||Wi();await a(R,r,i.action||u,{defaultShouldRevalidate:i.defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:h,body:p,formMethod:i.method||s,formEncType:i.encType||l,flushSync:i.flushSync})}else await n(i.action||u,{defaultShouldRevalidate:i.defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:h,body:p,formMethod:i.method||s,formEncType:i.encType||l,replace:i.replace,state:i.state,fromRouteId:r,flushSync:i.flushSync,viewTransition:i.viewTransition})},[a,n,t,r])}function Vi(e,{relative:t}={}){let{basename:r}=m.useContext(Pe),a=m.useContext(_e);z(a,"useFormAction must be used inside a RouteContext");let[n]=a.matches.slice(-1),o={...St(e||".",{relative:t})},i=Te();if(e==null){o.search=i.search;let u=new URLSearchParams(o.search),s=u.getAll("index");if(s.some(h=>h==="")){u.delete("index"),s.filter(p=>p).forEach(p=>u.append("index",p));let h=u.toString();o.search=h?`?${h}`:""}}return(!e||e===".")&&n.route.index&&(o.search=o.search?o.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(o.pathname=o.pathname==="/"?r:Le([r,o.pathname])),Ae(o)}function Ki(e,{relative:t}={}){let r=m.useContext(hr);z(r!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`.  Did you accidentally import `RouterProvider` from `react-router`?");let{basename:a}=Za("useViewTransitionState"),n=St(e,{relative:t});if(!r.isTransitioning)return!1;let o=be(r.currentLocation.pathname,a)||r.currentLocation.pathname,i=be(r.nextLocation.pathname,a)||r.nextLocation.pathname;return Ut(n.pathname,i)!=null||Ut(n.pathname,o)!=null}var tr={exports:{}},pe={};var da;
4function Gi(){if(da)return pe;da=1;var e=pa();function t(s){var l="https://react.dev/errors/"+s;if(1<arguments.length){l+="?args[]="+encodeURIComponent(arguments[1]);for(var h=2;h<arguments.length;h++)l+="&args[]="+encodeURIComponent(arguments[h])}return"Minified React error #"+s+"; visit "+l+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function r(){}var a={d:{f:r,r:function(){throw Error(t(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},n=Symbol.for("react.portal");function o(s,l,h){var p=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:n,key:p==null?null:""+p,children:s,containerInfo:l,implementation:h}}var i=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function u(s,l){if(s==="font")return"";if(typeof l=="string")return l==="use-credentials"?l:""}return pe.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,pe.createPortal=function(s,l){var h=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11)throw Error(t(299));return o(s,l,null,h)},pe.flushSync=function(s){var l=i.T,h=a.p;try{if(i.T=null,a.p=2,s)return s()}finally{i.T=l,a.p=h,a.d.f()}},pe.preconnect=function(s,l){typeof s=="string"&&(l?(l=l.crossOrigin,l=typeof l=="string"?l==="use-credentials"?l:"":void 0):l=null,a.d.C(s,l))},pe.prefetchDNS=function(s){typeof s=="string"&&a.d.D(s)},pe.preinit=function(s,l){if(typeof s=="string"&&l&&typeof l.as=="string"){var h=l.as,p=u(h,l.crossOrigin),R=typeof l.integrity=="string"?l.integrity:void 0,g=typeof l.fetchPriority=="string"?l.fetchPriority:void 0;h==="style"?a.d.S(s,typeof l.precedence=="string"?l.precedence:void 0,{crossOrigin:p,integrity:R,fetchPriority:g}):h==="script"&&a.d.X(s,{crossOrigin:p,integrity:R,fetchPriority:g,nonce:typeof l.nonce=="string"?l.nonce:void 0})}},pe.preinitModule=function(s,l){if(typeof s=="string")if(typeof l=="object"&&l!==null){if(l.as==null||l.as==="script"){var h=u(l.as,l.crossOrigin);a.d.M(s,{crossOrigin:h,integrity:typeof l.integrity=="string"?l.integrity:void 0,nonce:typeof l.nonce=="string"?l.nonce:void 0})}}else l==null&&a.d.M(s)},pe.preload=function(s,l){if(typeof s=="string"&&typeof l=="object"&&l!==null&&typeof l.as=="string"){var h=l.as,p=u(h,l.crossOrigin);a.d.L(s,h,{crossOrigin:p,integrity:typeof l.integrity=="string"?l.integrity:void 0,nonce:typeof l.nonce=="string"?l.nonce:void 0,type:typeof l.type=="string"?l.type:void 0,fetchPriority:typeof l.fetchPriority=="string"?l.fetchPriority:void 0,referrerPolicy:typeof l.referrerPolicy=="string"?l.referrerPolicy:void 0,imageSrcSet:typeof l.imageSrcSet=="string"?l.imageSrcSet:void 0,imageSizes:typeof l.imageSizes=="string"?l.imageSizes:void 0,media:typeof l.media=="string"?l.media:void 0})}},pe.preloadModule=function(s,l){if(typeof s=="string")if(l){var h=u(l.as,l.crossOrigin);a.d.m(s,{as:typeof l.as=="string"&&l.as!=="script"?l.as:void 0,crossOrigin:h,integrity:typeof l.integrity=="string"?l.integrity:void 0})}else a.d.m(s)},pe.requestFormReset=function(s){a.d.r(s)},pe.unstable_batchedUpdates=function(s,l){return s(l)},pe.useFormState=function(s,l,h){return i.H.useFormState(s,l,h)},pe.useFormStatus=function(){return i.H.useHostTransitionStatus()},pe.version="19.2.4",pe}var ha;function qi(){if(ha)return tr.exports;ha=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),tr.exports=Gi(),tr.exports}var en=qi();const al=ma(en);function nl(e){return m.createElement(si,{flushSync:en.flushSync,...e})}export{Qa as L,Zi as N,el as O,bn as R,pa as a,al as b,ca as c,Te as d,qi as e,Sn as f,ma as g,en as h,Zo as i,vt as j,pr as k,Ii as l,Ea as m,rl as n,Qi as o,Xi as p,nl as q,m as r,tl as s,Ji as u};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.