@modern-js/devtools-client 0.0.0-nightly-20240305170715 → 0.0.0-nightly-20240306170726

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- /*! For license information please see lib-router.96f8407c.js.LICENSE.txt */
2
- (self.webpackChunkmodernjsDevtools=self.webpackChunkmodernjsDevtools||[]).push([["118"],{77393:function(e,t,r){"use strict";var n,a,o,i;function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}r.r(t),r.d(t,{Action:function(){return n},UNSAFE_ErrorResponseImpl:function(){return M},UNSAFE_convertRouteMatchToUiMatch:function(){return E},UNSAFE_getResolveToMatches:function(){return U},UNSAFE_invariant:function(){return d},createBrowserHistory:function(){return u},createHashHistory:function(){return c},createPath:function(){return m},createRouter:function(){return K},isRouteErrorResponse:function(){return N},joinPaths:function(){return L},matchPath:function(){return x},matchRoutes:function(){return b},parsePath:function(){return v},redirect:function(){return F},resolveTo:function(){return C},stripBasename:function(){return P}}),(o=n||(n={})).Pop="POP",o.Push="PUSH",o.Replace="REPLACE";let s="popstate";function u(e){return void 0===e&&(e={}),y(function(e,t){let{pathname:r,search:n,hash:a}=e.location;return p("",{pathname:r,search:n,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){return"string"==typeof t?t:m(t)},null,e)}function c(e){return void 0===e&&(e={}),y(function(e,t){let{pathname:r="/",search:n="",hash:a=""}=v(e.location.hash.substr(1));return!r.startsWith("/")&&!r.startsWith(".")&&(r="/"+r),p("",{pathname:r,search:n,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){let r=e.document.querySelector("base"),n="";if(r&&r.getAttribute("href")){let t=e.location.href,r=t.indexOf("#");n=-1===r?t:t.slice(0,r)}return n+"#"+("string"==typeof t?t:m(t))},function(e,t){h("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")},e)}function d(e,t){if(!1===e||null==e)throw Error(t)}function h(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw Error(t)}catch(e){}}}function f(e,t){return{usr:e.state,key:e.key,idx:t}}function p(e,t,r,n){return void 0===r&&(r=null),l({pathname:"string"==typeof e?e:e.pathname,search:"",hash:""},"string"==typeof t?v(t):t,{state:r,key:t&&t.key||n||Math.random().toString(36).substr(2,8)})}function m(e){let{pathname:t="/",search:r="",hash:n=""}=e;return r&&"?"!==r&&(t+="?"===r.charAt(0)?r:"?"+r),n&&"#"!==n&&(t+="#"===n.charAt(0)?n:"#"+n),t}function v(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function y(e,t,r,a){void 0===a&&(a={});let{window:o=document.defaultView,v5Compat:i=!1}=a,u=o.history,c=n.Pop,h=null,v=y();function y(){return(u.state||{idx:null}).idx}function g(){c=n.Pop;let e=y(),t=null==e?null:e-v;v=e,h&&h({action:c,location:b.location,delta:t})}null==v&&(v=0,u.replaceState(l({},u.state,{idx:v}),""));function w(e){let t="null"!==o.location.origin?o.location.origin:o.location.href,r="string"==typeof e?e:m(e);return d(t,"No window.location.(origin|href) available to create URL for href: "+r),new URL(r,t)}let b={get action(){return c},get location(){return e(o,u)},listen(e){if(h)throw Error("A history only accepts one active listener");return o.addEventListener(s,g),h=e,()=>{o.removeEventListener(s,g),h=null}},createHref:e=>t(o,e),createURL:w,encodeLocation(e){let t=w(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){c=n.Push;let a=p(b.location,e,t);r&&r(a,e);let l=f(a,v=y()+1),s=b.createHref(a);try{u.pushState(l,"",s)}catch(e){if(e instanceof DOMException&&"DataCloneError"===e.name)throw e;o.location.assign(s)}i&&h&&h({action:c,location:b.location,delta:1})},replace:function(e,t){c=n.Replace;let a=p(b.location,e,t);r&&r(a,e);let o=f(a,v=y()),l=b.createHref(a);u.replaceState(o,"",l),i&&h&&h({action:c,location:b.location,delta:0})},go:e=>u.go(e)};return b}(i=a||(a={})).data="data",i.deferred="deferred",i.redirect="redirect",i.error="error";let g=new Set(["lazy","caseSensitive","path","id","index","children"]);function w(e,t,r,n){return void 0===r&&(r=[]),void 0===n&&(n={}),e.map((e,a)=>{let o=[...r,a],i="string"==typeof e.id?e.id:o.join("-");if(d(!0!==e.index||!e.children,"Cannot specify children on an index route"),d(!n[i],'Found a route id collision on id "'+i+"\". Route id's must be globally unique within Data Router usages"),!0===e.index){let r=l({},e,t(e),{id:i});return n[i]=r,r}{let r=l({},e,t(e),{id:i,children:void 0});return n[i]=r,e.children&&(r.children=w(e.children,t,o,n)),r}})}function b(e,t,r){void 0===r&&(r="/");let n=P(("string"==typeof t?v(t):t).pathname||"/",r);if(null==n)return null;let a=function e(t,r,n,a){void 0===r&&(r=[]),void 0===n&&(n=[]),void 0===a&&(a="");let o=(t,o,i)=>{let l={relativePath:void 0===i?t.path||"":i,caseSensitive:!0===t.caseSensitive,childrenIndex:o,route:t};l.relativePath.startsWith("/")&&(d(l.relativePath.startsWith(a),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+a)+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),l.relativePath=l.relativePath.slice(a.length));let s=L([a,l.relativePath]),u=n.concat(l);t.children&&t.children.length>0&&(d(!0!==t.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),e(t.children,r,u,s)),(null!=t.path||t.index)&&r.push({path:s,score:function(e,t){let r=e.split("/"),n=r.length;return r.some(R)&&(n+=-2),t&&(n+=2),r.filter(e=>!R(e)).reduce((e,t)=>e+(S.test(t)?3:""===t?1:10),n)}(s,t.index),routesMeta:u})};return t.forEach((e,t)=>{var r;if(""!==e.path&&null!=(r=e.path)&&r.includes("?"))for(let r of function e(t){let r=t.split("/");if(0===r.length)return[];let[n,...a]=r,o=n.endsWith("?"),i=n.replace(/\?$/,"");if(0===a.length)return o?[i,""]:[i];let l=e(a.join("/")),s=[];return s.push(...l.map(e=>""===e?i:[i,e].join("/"))),o&&s.push(...l),s.map(e=>t.startsWith("/")&&""===e?"/":e)}(e.path))o(e,t,r);else o(e,t)}),r}(e);(function(e){e.sort((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){return e.length===t.length&&e.slice(0,-1).every((e,r)=>e===t[r])?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)))})(a);let o=null;for(let e=0;null==o&&e<a.length;++e)o=function(e,t){let{routesMeta:r}=e,n={},a="/",o=[];for(let e=0;e<r.length;++e){let i=r[e],l=e===r.length-1,s="/"===a?t:t.slice(a.length)||"/",u=x({path:i.relativePath,caseSensitive:i.caseSensitive,end:l},s);if(!u)return null;Object.assign(n,u.params);let c=i.route;o.push({params:n,pathname:L([a,u.pathname]),pathnameBase:A(L([a,u.pathnameBase])),route:c}),"/"!==u.pathnameBase&&(a=L([a,u.pathnameBase]))}return o}(a[e],function(e){try{return decodeURI(e)}catch(t){return h(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t)+")."),e}}(n));return o}function E(e,t){let{route:r,pathname:n,params:a}=e;return{id:r.id,pathname:n,params:a,data:t[r.id],handle:r.handle}}let S=/^:[\w-]+$/,R=e=>"*"===e;function x(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[r,n]=function(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!0),h("*"===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 n=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,t,r)=>(n.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(n.push({paramName:"*"}),a+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?a+="\\/*$":""!==e&&"/"!==e&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),n]}(e.path,e.caseSensitive,e.end),a=t.match(r);if(!a)return null;let o=a[0],i=o.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:n.reduce((e,t,r)=>{let{paramName:n,isOptional:a}=t;if("*"===n){let e=l[r]||"";i=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}let s=l[r];return a&&!s?e[n]=void 0:e[n]=function(e,t){try{return decodeURIComponent(e)}catch(r){return h(!1,'The value for the URL param "'+t+'" will not be decoded because'+(' the string "'+e)+'" is a malformed URL segment. This is probably'+(" due to a bad percent encoding ("+r)+")."),e}}(s||"",n),e},{}),pathname:o,pathnameBase:i,pattern:e}}function P(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&"/"!==n?null:e.slice(r)||"/"}function D(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(n))+"]. 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 _(e){return e.filter((e,t)=>0===t||e.route.path&&e.route.path.length>0)}function U(e,t){let r=_(e);return t?r.map((t,r)=>r===e.length-1?t.pathname:t.pathnameBase):r.map(e=>e.pathnameBase)}function C(e,t,r,n){let a,o;void 0===n&&(n=!1),"string"==typeof e?a=v(e):(d(!(a=l({},e)).pathname||!a.pathname.includes("?"),D("?","pathname","search",a)),d(!a.pathname||!a.pathname.includes("#"),D("#","pathname","hash",a)),d(!a.search||!a.search.includes("#"),D("#","search","hash",a)));let i=""===e||""===a.pathname,s=i?"/":a.pathname;if(null==s)o=r;else{let e=t.length-1;if(!n&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;a.pathname=t.join("/")}o=e>=0?t[e]:"/"}let u=function(e,t){void 0===t&&(t="/");let{pathname:r,search:n="",hash:a=""}="string"==typeof e?v(e):e;return{pathname:r?r.startsWith("/")?r:function(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(e=>{".."===e?r.length>1&&r.pop():"."!==e&&r.push(e)}),r.length>1?r.join("/"):"/"}(r,t):t,search:k(n),hash:T(a)}}(a,o),c=s&&"/"!==s&&s.endsWith("/"),h=(i||"."===s)&&r.endsWith("/");return!u.pathname.endsWith("/")&&(c||h)&&(u.pathname+="/"),u}let L=e=>e.join("/").replace(/\/\/+/g,"/"),A=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),k=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",T=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"",F=function(e,t){void 0===t&&(t=302);let r=t;"number"==typeof r?r={status:r}:void 0===r.status&&(r.status=302);let n=new Headers(r.headers);return n.set("Location",e),new Response(null,l({},r,{headers:n}))};class M{constructor(e,t,r,n){void 0===n&&(n=!1),this.status=e,this.statusText=t||"",this.internal=n,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}}function N(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}let j=["post","put","patch","delete"],O=new Set(j),B=["get",...j],H=new Set(B),z=new Set([301,302,303,307,308]),I=new Set([307,308]),W={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},$={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},q={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},J=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,V=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),Y="remix-router-transitions";function K(e){let t,r,o,i,s;let u=e.window?e.window:"undefined"!=typeof window?window:void 0,c=void 0!==u&&void 0!==u.document&&void 0!==u.document.createElement,f=!c;if(d(e.routes.length>0,"You must provide a non-empty routes array to createRouter"),e.mapRouteProperties)t=e.mapRouteProperties;else if(e.detectErrorBoundary){let r=e.detectErrorBoundary;t=e=>({hasErrorBoundary:r(e)})}else t=V;let m={},v=w(e.routes,t,void 0,m),y=e.basename||"/",g=l({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1},e.future),S=null,R=new Set,x=null,D=null,_=null,U=null!=e.hydrationData,C=b(v,e.history.location,y),L=null;if(null==C){let t=ec(404,{pathname:e.history.location.pathname}),{matches:r,route:n}=eu(v);C=r,L={[n.id]:t}}let A=C.some(e=>e.route.lazy),k=C.some(e=>e.route.loader);if(A)o=!1;else if(k){if(g.v7_partialHydration){let t=e.hydrationData?e.hydrationData.loaderData:null,r=e.hydrationData?e.hydrationData.errors:null;o=C.every(e=>e.route.loader&&!0!==e.route.loader.hydrate&&(t&&void 0!==t[e.route.id]||r&&void 0!==r[e.route.id]))}else o=null!=e.hydrationData}else o=!0;let T={historyAction:e.history.action,location:e.history.location,matches:C,initialized:o,navigation:W,restoreScrollPosition:null==e.hydrationData&&null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||L,fetchers:new Map,blockers:new Map},F=n.Pop,M=!1,N=!1,j=new Map,O=null,B=!1,H=!1,z=[],K=[],Z=new Map,ee=0,et=-1,ea=new Map,eo=new Set,eh=new Map,ew=new Map,eP=new Set,eD=new Map,e_=new Map,eU=!1;function eC(e,t){void 0===t&&(t={}),T=l({},T,e);let r=[],n=[];g.v7_fetcherPersist&&T.fetchers.forEach((e,t)=>{"idle"===e.state&&(eP.has(t)?n.push(t):r.push(t))}),[...R].forEach(e=>e(T,{deletedFetchers:n,unstable_viewTransitionOpts:t.viewTransitionOpts,unstable_flushSync:!0===t.flushSync})),g.v7_fetcherPersist&&(r.forEach(e=>T.fetchers.delete(e)),n.forEach(e=>eW(e)))}function eL(t,a,o){var i,s;let u,c;let{flushSync:d}=void 0===o?{}:o,h=null!=T.actionData&&null!=T.navigation.formMethod&&ev(T.navigation.formMethod)&&"loading"===T.navigation.state&&(null==(i=t.state)?void 0:i._isRedirect)!==!0;u=a.actionData?Object.keys(a.actionData).length>0?a.actionData:null:h?T.actionData:null;let f=a.loaderData?el(T.loaderData,a.loaderData,a.matches||[],a.errors):T.loaderData,p=T.blockers;p.size>0&&(p=new Map(p)).forEach((e,t)=>p.set(t,q));let m=!0===M||null!=T.navigation.formMethod&&ev(T.navigation.formMethod)&&(null==(s=t.state)?void 0:s._isRedirect)!==!0;if(r&&(v=r,r=void 0),B||F===n.Pop||(F===n.Push?e.history.push(t,t.state):F===n.Replace&&e.history.replace(t,t.state)),F===n.Pop){let e=j.get(T.location.pathname);e&&e.has(t.pathname)?c={currentLocation:T.location,nextLocation:t}:j.has(t.pathname)&&(c={currentLocation:t,nextLocation:T.location})}else if(N){let e=j.get(T.location.pathname);e?e.add(t.pathname):(e=new Set([t.pathname]),j.set(T.location.pathname,e)),c={currentLocation:T.location,nextLocation:t}}eC(l({},a,{actionData:u,loaderData:f,historyAction:F,location:t,initialized:!0,navigation:W,revalidation:"idle",restoreScrollPosition:eZ(t,a.matches||T.matches),preventScrollReset:m,blockers:p}),{viewTransitionOpts:c,flushSync:!0===d}),F=n.Pop,M=!1,N=!1,B=!1,H=!1,z=[],K=[]}async function eA(t,r){if("number"==typeof t){e.history.go(t);return}let a=X(T.location,T.matches,y,g.v7_prependBasename,t,g.v7_relativeSplatPath,null==r?void 0:r.fromRouteId,null==r?void 0:r.relative),{path:o,submission:i,error:s}=G(g.v7_normalizeFormMethod,!1,a,r),u=T.location,c=p(T.location,o,r&&r.state);c=l({},c,e.history.encodeLocation(c));let d=r&&null!=r.replace?r.replace:void 0,h=n.Push;!0===d?h=n.Replace:!1===d||null!=i&&ev(i.formMethod)&&i.formAction===T.location.pathname+T.location.search&&(h=n.Replace);let f=r&&"preventScrollReset"in r?!0===r.preventScrollReset:void 0,m=!0===(r&&r.unstable_flushSync),v=eX({currentLocation:u,nextLocation:c,historyAction:h});if(v){eK(v,{state:"blocked",location:c,proceed(){eK(v,{state:"proceeding",proceed:void 0,reset:void 0,location:c}),eA(t,r)},reset(){let e=new Map(T.blockers);e.set(v,q),eC({blockers:e})}});return}return await ek(h,c,{submission:i,pendingError:s,preventScrollReset:f,replace:r&&r.replace,enableViewTransition:r&&r.unstable_viewTransition,flushSync:m})}async function ek(t,n,a){let o,i;s&&s.abort(),s=null,F=t,B=!0===(a&&a.startUninterruptedRevalidation),function(e,t){x&&_&&(x[eQ(e,t)]=_())}(T.location,T.matches),M=!0===(a&&a.preventScrollReset),N=!0===(a&&a.enableViewTransition);let u=r||v,c=a&&a.overrideNavigation,d=b(u,n,y),h=!0===(a&&a.flushSync);if(!d){let e=ec(404,{pathname:n.pathname}),{matches:t,route:r}=eu(u);eG(),eL(n,{matches:t,loaderData:{},errors:{[r.id]:e}},{flushSync:h});return}if(T.initialized&&!H&&function(e,t){if(e.pathname!==t.pathname||e.search!==t.search)return!1;if(""===e.hash)return""!==t.hash;if(e.hash===t.hash)return!0;if(""!==t.hash)return!0;return!1}(T.location,n)&&!(a&&a.submission&&ev(a.submission.formMethod))){eL(n,{matches:d},{flushSync:h});return}s=new AbortController;let f=en(e.history,n,s.signal,a&&a.submission);if(a&&a.pendingError)i={[es(d).route.id]:a.pendingError};else if(a&&a.submission&&ev(a.submission.formMethod)){let e=await eT(f,n,a.submission,d,{replace:a.replace,flushSync:h});if(e.shortCircuited)return;o=e.pendingActionData,i=e.pendingActionError,c=eS(n,a.submission),h=!1,f=new Request(f.url,{signal:f.signal})}let{shortCircuited:p,loaderData:m,errors:g}=await eF(f,n,d,c,a&&a.submission,a&&a.fetcherSubmission,a&&a.replace,a&&!0===a.initialHydration,h,o,i);!p&&(s=null,eL(n,l({matches:d},o?{actionData:o}:{},{loaderData:m,errors:g})))}async function eT(e,r,o,i,l){let s;void 0===l&&(l={}),eB(),eC({navigation:function(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}(r,o)},{flushSync:!0===l.flushSync});let u=eb(i,r);if(u.route.action||u.route.lazy){if(s=await er("action",e,u,i,m,t,y,g.v7_relativeSplatPath),e.signal.aborted)return{shortCircuited:!0}}else s={type:a.error,error:ec(405,{method:e.method,pathname:r.pathname,routeId:u.route.id})};if(em(s)){let e;return e=l&&null!=l.replace?l.replace:s.location===T.location.pathname+T.location.search,await ej(T,s,{submission:o,replace:e}),{shortCircuited:!0}}if(ep(s)){let e=es(i,u.route.id);return!0!==(l&&l.replace)&&(F=n.Push),{pendingActionData:{},pendingActionError:{[e.route.id]:s.error}}}if(ef(s))throw ec(400,{type:"defer-action"});return{pendingActionData:{[u.route.id]:s.data}}}async function eF(t,n,a,o,i,u,c,d,h,f,p){let m=o||eS(n,i),w=i||u||eE(m),b=r||v,[E,S]=Q(e.history,T,a,w,n,g.v7_partialHydration&&!0===d,H,z,K,eP,eh,eo,b,y,f,p);if(eG(e=>!(a&&a.some(t=>t.route.id===e))||E&&E.some(t=>t.route.id===e)),et=++ee,0===E.length&&0===S.length){let e=eJ();return eL(n,l({matches:a,loaderData:{},errors:p||null},f?{actionData:f}:{},e?{fetchers:new Map(T.fetchers)}:{}),{flushSync:h}),{shortCircuited:!0}}if(!B&&(!g.v7_partialHydration||!d)){S.forEach(e=>{let t=T.fetchers.get(e.key),r=eR(void 0,t?t.data:void 0);T.fetchers.set(e.key,r)});let e=f||T.actionData;eC(l({navigation:m},e?0===Object.keys(e).length?{actionData:null}:{actionData:e}:{},S.length>0?{fetchers:new Map(T.fetchers)}:{}),{flushSync:h})}S.forEach(e=>{Z.has(e.key)&&e$(e.key),e.controller&&Z.set(e.key,e.controller)});let R=()=>S.forEach(e=>e$(e.key));s&&s.signal.addEventListener("abort",R);let{results:x,loaderResults:P,fetcherResults:D}=await eO(T.matches,a,E,S,t);if(t.signal.aborted)return{shortCircuited:!0};s&&s.signal.removeEventListener("abort",R),S.forEach(e=>Z.delete(e.key));let _=ed(x);if(_){if(_.idx>=E.length){let e=S[_.idx-E.length].key;eo.add(e)}return await ej(T,_.result,{replace:c}),{shortCircuited:!0}}let{loaderData:U,errors:C}=ei(T,a,E,P,p,S,D,eD);eD.forEach((e,t)=>{e.subscribe(r=>{(r||e.done)&&eD.delete(t)})});let L=eJ(),A=eV(et),k=L||A||S.length>0;return l({loaderData:U,errors:C},k?{fetchers:new Map(T.fetchers)}:{})}async function eM(n,a,o,i,l,u,c){if(eB(),eh.delete(n),!i.route.action&&!i.route.lazy){let e=ec(405,{method:c.formMethod,pathname:o,routeId:a});ez(n,a,e,{flushSync:u});return}let h=T.fetchers.get(n);eH(n,function(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}}(c,h),{flushSync:u});let f=new AbortController,p=en(e.history,o,f.signal,c);Z.set(n,f);let w=ee,E=await er("action",p,i,l,m,t,y,g.v7_relativeSplatPath);if(p.signal.aborted){Z.get(n)===f&&Z.delete(n);return}if(g.v7_fetcherPersist&&eP.has(n)){if(em(E)||ep(E)){eH(n,ex(void 0));return}}else{if(em(E)){if(Z.delete(n),!(et>w))return eo.add(n),eH(n,eR(c)),ej(T,E,{fetcherSubmission:c});eH(n,ex(void 0));return}if(ep(E)){ez(n,a,E.error);return}}if(ef(E))throw ec(400,{type:"defer-action"});let S=T.navigation.location||T.location,R=en(e.history,S,f.signal),x=r||v,P="idle"!==T.navigation.state?b(x,T.navigation.location,y):T.matches;d(P,"Didn't find any matches after fetcher action");let D=++ee;ea.set(n,D);let _=eR(c,E.data);T.fetchers.set(n,_);let[U,C]=Q(e.history,T,P,c,S,!1,H,z,K,eP,eh,eo,x,y,{[i.route.id]:E.data},void 0);C.filter(e=>e.key!==n).forEach(e=>{let t=e.key,r=T.fetchers.get(t),n=eR(void 0,r?r.data:void 0);T.fetchers.set(t,n),Z.has(t)&&e$(t),e.controller&&Z.set(t,e.controller)}),eC({fetchers:new Map(T.fetchers)});let L=()=>C.forEach(e=>e$(e.key));f.signal.addEventListener("abort",L);let{results:A,loaderResults:k,fetcherResults:M}=await eO(T.matches,P,U,C,R);if(f.signal.aborted)return;f.signal.removeEventListener("abort",L),ea.delete(n),Z.delete(n),C.forEach(e=>Z.delete(e.key));let N=ed(A);if(N){if(N.idx>=U.length){let e=C[N.idx-U.length].key;eo.add(e)}return ej(T,N.result)}let{loaderData:j,errors:O}=ei(T,T.matches,U,k,void 0,C,M,eD);if(T.fetchers.has(n)){let e=ex(E.data);T.fetchers.set(n,e)}eV(D),"loading"===T.navigation.state&&D>et?(d(F,"Expected pending action"),s&&s.abort(),eL(T.navigation.location,{matches:P,loaderData:j,errors:O,fetchers:new Map(T.fetchers)})):(eC({errors:O,loaderData:el(T.loaderData,j,P,O),fetchers:new Map(T.fetchers)}),H=!1)}async function eN(r,n,a,o,i,l,s){let u=T.fetchers.get(r);eH(r,eR(s,u?u.data:void 0),{flushSync:l});let c=new AbortController,h=en(e.history,a,c.signal);Z.set(r,c);let f=ee,p=await er("loader",h,o,i,m,t,y,g.v7_relativeSplatPath);if(ef(p)&&(p=await eg(p,h.signal,!0)||p),Z.get(r)===c&&Z.delete(r),!h.signal.aborted){if(eP.has(r)){eH(r,ex(void 0));return}if(em(p)){if(et>f){eH(r,ex(void 0));return}eo.add(r),await ej(T,p);return}if(ep(p)){ez(r,n,p.error);return}d(!ef(p),"Unhandled fetcher deferred data"),eH(r,ex(p.data))}}async function ej(t,r,a){let{submission:o,fetcherSubmission:i,replace:h}=void 0===a?{}:a;r.revalidate&&(H=!0);let f=p(t.location,r.location,{_isRedirect:!0});if(d(f,"Expected a location on the redirect navigation"),c){let t=!1;if(r.reloadDocument)t=!0;else if(J.test(r.location)){let n=e.history.createURL(r.location);t=n.origin!==u.location.origin||null==P(n.pathname,y)}if(t){h?u.location.replace(r.location):u.location.assign(r.location);return}}s=null;let m=!0===h?n.Replace:n.Push,{formMethod:v,formAction:g,formEncType:w}=t.navigation;!o&&!i&&v&&g&&w&&(o=eE(t.navigation));let b=o||i;if(I.has(r.status)&&b&&ev(b.formMethod))await ek(m,f,{submission:l({},b,{formAction:r.location}),preventScrollReset:M});else{let e=eS(f,o);await ek(m,f,{overrideNavigation:e,fetcherSubmission:i,preventScrollReset:M})}}async function eO(r,n,o,i,l){let s=await Promise.all([...o.map(e=>er("loader",l,e,n,m,t,y,g.v7_relativeSplatPath)),...i.map(r=>r.matches&&r.match&&r.controller?er("loader",en(e.history,r.path,r.controller.signal),r.match,r.matches,m,t,y,g.v7_relativeSplatPath):{type:a.error,error:ec(404,{pathname:r.path})})]),u=s.slice(0,o.length),c=s.slice(o.length);return await Promise.all([ey(r,o,u,u.map(()=>l.signal),!1,T.loaderData),ey(r,i.map(e=>e.match),c,i.map(e=>e.controller?e.controller.signal:null),!0)]),{results:s,loaderResults:u,fetcherResults:c}}function eB(){H=!0,z.push(...eG()),eh.forEach((e,t)=>{Z.has(t)&&(K.push(t),e$(t))})}function eH(e,t,r){void 0===r&&(r={}),T.fetchers.set(e,t),eC({fetchers:new Map(T.fetchers)},{flushSync:!0===(r&&r.flushSync)})}function ez(e,t,r,n){void 0===n&&(n={});let a=es(T.matches,t);eW(e),eC({errors:{[a.route.id]:r},fetchers:new Map(T.fetchers)},{flushSync:!0===(n&&n.flushSync)})}function eI(e){return g.v7_fetcherPersist&&(ew.set(e,(ew.get(e)||0)+1),eP.has(e)&&eP.delete(e)),T.fetchers.get(e)||$}function eW(e){let t=T.fetchers.get(e);Z.has(e)&&!(t&&"loading"===t.state&&ea.has(e))&&e$(e),eh.delete(e),ea.delete(e),eo.delete(e),eP.delete(e),T.fetchers.delete(e)}function e$(e){let t=Z.get(e);d(t,"Expected fetch controller: "+e),t.abort(),Z.delete(e)}function eq(e){for(let t of e){let e=ex(eI(t).data);T.fetchers.set(t,e)}}function eJ(){let e=[],t=!1;for(let r of eo){let n=T.fetchers.get(r);d(n,"Expected fetcher: "+r),"loading"===n.state&&(eo.delete(r),e.push(r),t=!0)}return eq(e),t}function eV(e){let t=[];for(let[r,n]of ea)if(n<e){let e=T.fetchers.get(r);d(e,"Expected fetcher: "+r),"loading"===e.state&&(e$(r),ea.delete(r),t.push(r))}return eq(t),t.length>0}function eY(e){T.blockers.delete(e),e_.delete(e)}function eK(e,t){let r=T.blockers.get(e)||q;d("unblocked"===r.state&&"blocked"===t.state||"blocked"===r.state&&"blocked"===t.state||"blocked"===r.state&&"proceeding"===t.state||"blocked"===r.state&&"unblocked"===t.state||"proceeding"===r.state&&"unblocked"===t.state,"Invalid blocker state transition: "+r.state+" -> "+t.state);let n=new Map(T.blockers);n.set(e,t),eC({blockers:n})}function eX(e){let{currentLocation:t,nextLocation:r,historyAction:n}=e;if(0===e_.size)return;e_.size>1&&h(!1,"A router only supports one blocker at a time");let a=Array.from(e_.entries()),[o,i]=a[a.length-1],l=T.blockers.get(o);if((!l||"proceeding"!==l.state)&&i({currentLocation:t,nextLocation:r,historyAction:n}))return o}function eG(e){let t=[];return eD.forEach((r,n)=>{(!e||e(n))&&(r.cancel(),t.push(n),eD.delete(n))}),t}function eQ(e,t){return D&&D(e,t.map(e=>E(e,T.loaderData)))||e.key}function eZ(e,t){if(x){let r=x[eQ(e,t)];if("number"==typeof r)return r}return null}return i={get basename(){return y},get future(){return g},get state(){return T},get routes(){return v},get window(){return u},initialize:function(){if(S=e.history.listen(t=>{let{action:r,location:n,delta:a}=t;if(eU){eU=!1;return}h(0===e_.size||null!=a,"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 o=eX({currentLocation:T.location,nextLocation:n,historyAction:r});if(o&&null!=a){eU=!0,e.history.go(-1*a),eK(o,{state:"blocked",location:n,proceed(){eK(o,{state:"proceeding",proceed:void 0,reset:void 0,location:n}),e.history.go(a)},reset(){let e=new Map(T.blockers);e.set(o,q),eC({blockers:e})}});return}return ek(r,n)}),c){(function(e,t){try{let r=e.sessionStorage.getItem(Y);if(r){let e=JSON.parse(r);for(let[r,n]of Object.entries(e||{}))n&&Array.isArray(n)&&t.set(r,new Set(n||[]))}}catch(e){}})(u,j);let e=()=>(function(e,t){if(t.size>0){let r={};for(let[e,n]of t)r[e]=[...n];try{e.sessionStorage.setItem(Y,JSON.stringify(r))}catch(e){h(!1,"Failed to save applied view transitions in sessionStorage ("+e+").")}}})(u,j);u.addEventListener("pagehide",e),O=()=>u.removeEventListener("pagehide",e)}return!T.initialized&&ek(n.Pop,T.location,{initialHydration:!0}),i},subscribe:function(e){return R.add(e),()=>R.delete(e)},enableScrollRestoration:function(e,t,r){if(x=e,_=t,D=r||null,!U&&T.navigation===W){U=!0;let e=eZ(T.location,T.matches);null!=e&&eC({restoreScrollPosition:e})}return()=>{x=null,_=null,D=null}},navigate:eA,fetch:function(e,t,n,a){if(f)throw Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");Z.has(e)&&e$(e);let o=!0===(a&&a.unstable_flushSync),i=r||v,l=X(T.location,T.matches,y,g.v7_prependBasename,n,g.v7_relativeSplatPath,t,null==a?void 0:a.relative),s=b(i,l,y);if(!s){ez(e,t,ec(404,{pathname:l}),{flushSync:o});return}let{path:u,submission:c,error:d}=G(g.v7_normalizeFormMethod,!0,l,a);if(d){ez(e,t,d,{flushSync:o});return}let h=eb(s,u);if(M=!0===(a&&a.preventScrollReset),c&&ev(c.formMethod)){eM(e,t,u,h,s,o,c);return}eh.set(e,{routeId:t,path:u}),eN(e,t,u,h,s,o,c)},revalidate:function(){if(eB(),eC({revalidation:"loading"}),"submitting"!==T.navigation.state){if("idle"===T.navigation.state){ek(T.historyAction,T.location,{startUninterruptedRevalidation:!0});return}ek(F||T.historyAction,T.navigation.location,{overrideNavigation:T.navigation})}},createHref:t=>e.history.createHref(t),encodeLocation:t=>e.history.encodeLocation(t),getFetcher:eI,deleteFetcher:function(e){if(g.v7_fetcherPersist){let t=(ew.get(e)||0)-1;t<=0?(ew.delete(e),eP.add(e)):ew.set(e,t)}else eW(e);eC({fetchers:new Map(T.fetchers)})},dispose:function(){S&&S(),O&&O(),R.clear(),s&&s.abort(),T.fetchers.forEach((e,t)=>eW(t)),T.blockers.forEach((e,t)=>eY(t))},getBlocker:function(e,t){let r=T.blockers.get(e)||q;return e_.get(e)!==t&&e_.set(e,t),r},deleteBlocker:eY,_internalFetchControllers:Z,_internalActiveDeferreds:eD,_internalSetRoutes:function(e){r=w(e,t,void 0,m={})}}}Symbol("deferred");function X(e,t,r,n,a,o,i,l){let s,u;if(i){for(let e of(s=[],t))if(s.push(e),e.route.id===i){u=e;break}}else s=t,u=t[t.length-1];let c=C(a||".",U(s,o),P(e.pathname,r)||e.pathname,"path"===l);return null==a&&(c.search=e.search,c.hash=e.hash),(null==a||""===a||"."===a)&&u&&u.route.index&&!ew(c.search)&&(c.search=c.search?c.search.replace(/^\?/,"?index&"):"?index"),n&&"/"!==r&&(c.pathname="/"===c.pathname?r:L([r,c.pathname])),m(c)}function G(e,t,r,n){var a;let o,i;if(!n||!(null!=(a=n)&&("formData"in a&&null!=a.formData||"body"in a&&void 0!==a.body)))return{path:r};if(n.formMethod&&!function(e){return H.has(e.toLowerCase())}(n.formMethod))return{path:r,error:ec(405,{method:n.formMethod})};let l=()=>({path:r,error:ec(400,{type:"invalid-body"})}),s=n.formMethod||"get",u=e?s.toUpperCase():s.toLowerCase(),c=eh(r);if(void 0!==n.body){if("text/plain"===n.formEncType){if(!ev(u))return l();let e="string"==typeof n.body?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((e,t)=>{let[r,n]=t;return""+e+r+"="+n+"\n"},""):String(n.body);return{path:r,submission:{formMethod:u,formAction:c,formEncType:n.formEncType,formData:void 0,json:void 0,text:e}}}if("application/json"===n.formEncType){if(!ev(u))return l();try{let e="string"==typeof n.body?JSON.parse(n.body):n.body;return{path:r,submission:{formMethod:u,formAction:c,formEncType:n.formEncType,formData:void 0,json:e,text:void 0}}}catch(e){return l()}}}if(d("function"==typeof FormData,"FormData is not available in this environment"),n.formData)o=ea(n.formData),i=n.formData;else if(n.body instanceof FormData)o=ea(n.body),i=n.body;else if(n.body instanceof URLSearchParams)i=eo(o=n.body);else if(null==n.body)o=new URLSearchParams,i=new FormData;else try{o=new URLSearchParams(n.body),i=eo(o)}catch(e){return l()}let h={formMethod:u,formAction:c,formEncType:n&&n.formEncType||"application/x-www-form-urlencoded",formData:i,json:void 0,text:void 0};if(ev(h.formMethod))return{path:r,submission:h};let f=v(r);return t&&f.search&&ew(f.search)&&o.append("index",""),f.search="?"+o,{path:m(f),submission:h}}function Q(e,t,r,n,a,o,i,s,u,c,d,h,f,p,m,v){let y=v?Object.values(v)[0]:m?Object.values(m)[0]:void 0,g=e.createURL(t.location),w=e.createURL(a),E=(function(e,t){let r=e;if(t){let n=e.findIndex(e=>e.route.id===t);n>=0&&(r=e.slice(0,n))}return r})(r,v?Object.keys(v)[0]:void 0).filter((e,r)=>{let{route:a}=e;if(a.lazy)return!0;if(null==a.loader)return!1;if(o)return!!a.loader.hydrate||void 0===t.loaderData[a.id]&&(!t.errors||void 0===t.errors[a.id]);if(function(e,t,r){let n=!t||r.route.id!==t.route.id,a=void 0===e[r.route.id];return n||a}(t.loaderData,t.matches[r],e)||s.some(t=>t===e.route.id))return!0;let u=t.matches[r];return ee(e,l({currentUrl:g,currentParams:u.params,nextUrl:w,nextParams:e.params},n,{actionResult:y,defaultShouldRevalidate:i||g.pathname+g.search===w.pathname+w.search||g.search!==w.search||Z(u,e)}))}),S=[];return d.forEach((e,a)=>{if(o||!r.some(t=>t.route.id===e.routeId)||c.has(a))return;let s=b(f,e.path,p);if(!s){S.push({key:a,routeId:e.routeId,path:e.path,matches:null,match:null,controller:null});return}let d=t.fetchers.get(a),m=eb(s,e.path),v=!1;(v=!h.has(a)&&(!!u.includes(a)||(d&&"idle"!==d.state&&void 0===d.data?i:ee(m,l({currentUrl:g,currentParams:t.matches[t.matches.length-1].params,nextUrl:w,nextParams:r[r.length-1].params},n,{actionResult:y,defaultShouldRevalidate:i})))))&&S.push({key:a,routeId:e.routeId,path:e.path,matches:s,match:m,controller:new AbortController})}),[E,S]}function Z(e,t){let r=e.route.path;return e.pathname!==t.pathname||null!=r&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function ee(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if("boolean"==typeof r)return r}return t.defaultShouldRevalidate}async function et(e,t,r){if(!e.lazy)return;let n=await e.lazy();if(!e.lazy)return;let a=r[e.id];d(a,"No route found in manifest");let o={};for(let e in n){let t=void 0!==a[e]&&"hasErrorBoundary"!==e;h(!t,'Route "'+a.id+'" has a static property "'+e+'" defined but its lazy function is also returning a value for this property. '+('The lazy route property "'+e)+'" will be ignored.'),!t&&!g.has(e)&&(o[e]=n[e])}Object.assign(a,o),Object.assign(a,l({},t(a),{lazy:void 0}))}async function er(e,t,r,n,o,i,l,s,u){let c,h,f;void 0===u&&(u={});let p=e=>{let n;let a=new Promise((e,t)=>n=t);return f=()=>n(),t.signal.addEventListener("abort",f),Promise.race([e({request:t,params:r.params,context:u.requestContext}),a])};try{let n=r.route[e];if(r.route.lazy){if(n){let e;let t=await Promise.all([p(n).catch(t=>{e=t}),et(r.route,i,o)]);if(e)throw e;h=t[0]}else if(await et(r.route,i,o),n=r.route[e])h=await p(n);else{if("action"!==e)return{type:a.data,data:void 0};let n=new URL(t.url),o=n.pathname+n.search;throw ec(405,{method:t.method,pathname:o,routeId:r.route.id})}}else if(n)h=await p(n);else{let e=new URL(t.url),r=e.pathname+e.search;throw ec(404,{pathname:r})}d(void 0!==h,"You defined "+("action"===e?"an action":"a loader")+" for route "+('"'+r.route.id+"\" but didn't return anything from your `"+e)+"` function. Please return a value or `null`.")}catch(e){c=a.error,h=e}finally{f&&t.signal.removeEventListener("abort",f)}if(function(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"object"==typeof e.headers&&void 0!==e.body}(h)){let e,o=h.status;if(z.has(o)){let e=h.headers.get("Location");if(d(e,"Redirects returned/thrown from loaders/actions must have a Location header"),J.test(e)){if(!u.isStaticRequest){let r=new URL(t.url),n=new URL(e.startsWith("//")?r.protocol+e:e),a=null!=P(n.pathname,l);n.origin===r.origin&&a&&(e=n.pathname+n.search+n.hash)}}else e=X(new URL(t.url),n.slice(0,n.indexOf(r)+1),l,!0,e,s);if(u.isStaticRequest)throw h.headers.set("Location",e),h;return{type:a.redirect,status:o,location:e,revalidate:null!==h.headers.get("X-Remix-Revalidate"),reloadDocument:null!==h.headers.get("X-Remix-Reload-Document")}}if(u.isRouteRequest)throw{type:c===a.error?a.error:a.data,response:h};try{let t=h.headers.get("Content-Type");e=t&&/\bapplication\/json\b/.test(t)?null==h.body?null:await h.json():await h.text()}catch(e){return{type:a.error,error:e}}return c===a.error?{type:c,error:new M(o,h.statusText,e),headers:h.headers}:{type:a.data,data:e,statusCode:h.status,headers:h.headers}}if(c===a.error)return{type:c,error:h};if(function(e){return e&&"object"==typeof e&&"object"==typeof e.data&&"function"==typeof e.subscribe&&"function"==typeof e.cancel&&"function"==typeof e.resolveData}(h)){var m,v;return{type:a.deferred,deferredData:h,statusCode:null==(m=h.init)?void 0:m.status,headers:(null==(v=h.init)?void 0:v.headers)&&new Headers(h.init.headers)}}return{type:a.data,data:h}}function en(e,t,r,n){let a=e.createURL(eh(t)).toString(),o={signal:r};if(n&&ev(n.formMethod)){let{formMethod:e,formEncType:t}=n;o.method=e.toUpperCase(),"application/json"===t?(o.headers=new Headers({"Content-Type":t}),o.body=JSON.stringify(n.json)):"text/plain"===t?o.body=n.text:"application/x-www-form-urlencoded"===t&&n.formData?o.body=ea(n.formData):o.body=n.formData}return new Request(a,o)}function ea(e){let t=new URLSearchParams;for(let[r,n]of e.entries())t.append(r,"string"==typeof n?n:n.name);return t}function eo(e){let t=new FormData;for(let[r,n]of e.entries())t.append(r,n);return t}function ei(e,t,r,n,a,o,i,s){var u,c,h,f,p;let m,v,y,g,w;let{loaderData:b,errors:E}=(u=t,c=r,h=n,f=a,p=s,v={},y=null,g=!1,w={},h.forEach((e,t)=>{let r=c[t].route.id;if(d(!em(e),"Cannot handle redirect results in processLoaderData"),ep(e)){let t=es(u,r),n=e.error;f&&(n=Object.values(f)[0],f=void 0),null==(y=y||{})[t.route.id]&&(y[t.route.id]=n),v[r]=void 0,!g&&(g=!0,m=N(e.error)?e.error.status:500),e.headers&&(w[r]=e.headers)}else ef(e)?(p.set(r,e.deferredData),v[r]=e.deferredData.data):v[r]=e.data,null!=e.statusCode&&200!==e.statusCode&&!g&&(m=e.statusCode),e.headers&&(w[r]=e.headers)}),f&&(y=f,v[Object.keys(f)[0]]=void 0),{loaderData:v,errors:y,statusCode:m||200,loaderHeaders:w});for(let t=0;t<o.length;t++){let{key:r,match:n,controller:a}=o[t];d(void 0!==i&&void 0!==i[t],"Did not find corresponding fetcher result");let s=i[t];if(!a||!a.signal.aborted)if(ep(s)){let t=es(e.matches,null==n?void 0:n.route.id);!(E&&E[t.route.id])&&(E=l({},E,{[t.route.id]:s.error})),e.fetchers.delete(r)}else if(em(s))d(!1,"Unhandled fetcher revalidation redirect");else if(ef(s))d(!1,"Unhandled fetcher deferred data");else{let t=ex(s.data);e.fetchers.set(r,t)}}return{loaderData:b,errors:E}}function el(e,t,r,n){let a=l({},t);for(let o of r){let r=o.route.id;if(t.hasOwnProperty(r)?void 0!==t[r]&&(a[r]=t[r]):void 0!==e[r]&&o.route.loader&&(a[r]=e[r]),n&&n.hasOwnProperty(r))break}return a}function es(e,t){return(t?e.slice(0,e.findIndex(e=>e.route.id===t)+1):[...e]).reverse().find(e=>!0===e.route.hasErrorBoundary)||e[0]}function eu(e){let t=1===e.length?e[0]:e.find(e=>e.index||!e.path||"/"===e.path)||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function ec(e,t){let{pathname:r,routeId:n,method:a,type:o}=void 0===t?{}:t,i="Unknown Server Error",l="Unknown @remix-run/router error";return 400===e?(i="Bad Request",a&&r&&n?l="You made a "+a+' request to "'+r+'" but '+('did not provide a `loader` for route "'+n)+'", so there is no way to handle the request.':"defer-action"===o?l="defer() is not supported in actions":"invalid-body"===o&&(l="Unable to encode submission body")):403===e?(i="Forbidden",l='Route "'+n+'" does not match URL "'+r+'"'):404===e?(i="Not Found",l='No route matches URL "'+r+'"'):405===e&&(i="Method Not Allowed",a&&r&&n?l="You made a "+a.toUpperCase()+' request to "'+r+'" but '+('did not provide an `action` for route "'+n)+'", so there is no way to handle the request.':a&&(l='Invalid request method "'+a.toUpperCase()+'"')),new M(e||500,i,Error(l),!0)}function ed(e){for(let t=e.length-1;t>=0;t--){let r=e[t];if(em(r))return{result:r,idx:t}}}function eh(e){let t="string"==typeof e?v(e):e;return m(l({},t,{hash:""}))}function ef(e){return e.type===a.deferred}function ep(e){return e.type===a.error}function em(e){return(e&&e.type)===a.redirect}function ev(e){return O.has(e.toLowerCase())}async function ey(e,t,r,n,a,o){for(let i=0;i<r.length;i++){let l=r[i],s=t[i];if(!s)continue;let u=e.find(e=>e.route.id===s.route.id),c=null!=u&&!Z(u,s)&&(o&&o[s.route.id])!==void 0;if(ef(l)&&(a||c)){let e=n[i];d(e,"Expected an AbortSignal for revalidating fetcher deferred result"),await eg(l,e,a).then(e=>{e&&(r[i]=e||r[i])})}}}async function eg(e,t,r){if(void 0===r&&(r=!1),!await e.deferredData.resolveData(t)){if(r)try{return{type:a.data,data:e.deferredData.unwrappedData}}catch(e){return{type:a.error,error:e}}return{type:a.data,data:e.deferredData.data}}}function ew(e){return new URLSearchParams(e).getAll("index").some(e=>""===e)}function eb(e,t){let r="string"==typeof t?v(t).search:t.search;if(e[e.length-1].route.index&&ew(r||""))return e[e.length-1];let n=_(e);return n[n.length-1]}function eE(e){let{formMethod:t,formAction:r,formEncType:n,text:a,formData:o,json:i}=e;if(t&&r&&n){if(null!=a)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:void 0,text:a};else if(null!=o)return{formMethod:t,formAction:r,formEncType:n,formData:o,json:void 0,text:void 0};else if(void 0!==i)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:i,text:void 0}}}function eS(e,t){return t?{state:"loading",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function eR(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 ex(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}},31988:function(e,t,r){"use strict";r.r(t),r.d(t,{Link:function(){return F},NavLink:function(){return M},Outlet:function(){return u.Outlet},Route:function(){return u.Route},RouterProvider:function(){return L},createBrowserRouter:function(){return E},createHashRouter:function(){return S},createRoutesFromElements:function(){return u.createRoutesFromElements},matchPath:function(){return u.matchPath},matchRoutes:function(){return u.matchRoutes},redirect:function(){return u.redirect},useHref:function(){return u.useHref},useLocation:function(){return u.useLocation},useMatches:function(){return u.useMatches},useNavigate:function(){return u.useNavigate},useParams:function(){return u.useParams},useResolvedPath:function(){return u.useResolvedPath},useRouteError:function(){return u.useRouteError}});var n,a,o,i,l=r("5872"),s=r("13922"),u=r("92927"),c=r("77393");function d(){return(d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function h(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],!(t.indexOf(r)>=0)&&(a[r]=e[r]);return a}let f="application/x-www-form-urlencoded";function p(e){return null!=e&&"string"==typeof e.tagName}let m=null,v=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function y(e){return null==e||v.has(e)?e:null}let g=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"],w=["aria-current","caseSensitive","className","end","style","to","unstable_viewTransition","children"],b=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","unstable_viewTransition"];try{window.__reactRouterVersion="6"}catch(e){}function E(e,t){return(0,c.createRouter)({basename:null==t?void 0:t.basename,future:d({},null==t?void 0:t.future,{v7_prependBasename:!0}),history:(0,c.createBrowserHistory)({window:null==t?void 0:t.window}),hydrationData:(null==t?void 0:t.hydrationData)||R(),routes:e,mapRouteProperties:u.UNSAFE_mapRouteProperties,window:null==t?void 0:t.window}).initialize()}function S(e,t){return(0,c.createRouter)({basename:null==t?void 0:t.basename,future:d({},null==t?void 0:t.future,{v7_prependBasename:!0}),history:(0,c.createHashHistory)({window:null==t?void 0:t.window}),hydrationData:(null==t?void 0:t.hydrationData)||R(),routes:e,mapRouteProperties:u.UNSAFE_mapRouteProperties,window:null==t?void 0:t.window}).initialize()}function R(){var e;let t=null==(e=window)?void 0:e.__staticRouterHydrationData;return t&&t.errors&&(t=d({},t,{errors:function(e){if(!e)return null;let t=Object.entries(e),r={};for(let[e,n]of t)if(n&&"RouteErrorResponse"===n.__type)r[e]=new c.UNSAFE_ErrorResponseImpl(n.status,n.statusText,n.data,!0===n.internal);else if(n&&"Error"===n.__type){if(n.__subType){let t=window[n.__subType];if("function"==typeof t)try{let a=new t(n.message);a.stack="",r[e]=a}catch(e){}}if(null==r[e]){let t=Error(n.message);t.stack="",r[e]=t}}else r[e]=n;return r}(t.errors)})),t}let x=l.createContext({isTransitioning:!1}),P=l.createContext(new Map),D=l.startTransition,_=s.flushSync;l.useId;function U(e){_?_(e):e()}class C{constructor(){this.status="pending",this.promise=new Promise((e,t)=>{this.resolve=t=>{"pending"===this.status&&(this.status="resolved",e(t))},this.reject=e=>{"pending"===this.status&&(this.status="rejected",t(e))}})}}function L(e){let{fallbackElement:t,router:r,future:n}=e,[a,o]=l.useState(r.state),[i,s]=l.useState(),[c,d]=l.useState({isTransitioning:!1}),[h,f]=l.useState(),[p,m]=l.useState(),[v,y]=l.useState(),g=l.useRef(new Map),{v7_startTransition:w}=n||{},b=l.useCallback(e=>{if(w){var t;t=e,D?D(t):t()}else e()},[w]),E=l.useCallback((e,t)=>{let{deletedFetchers:n,unstable_flushSync:a,unstable_viewTransitionOpts:i}=t;n.forEach(e=>g.current.delete(e)),e.fetchers.forEach((e,t)=>{void 0!==e.data&&g.current.set(t,e.data)});let l=null==r.window||"function"!=typeof r.window.document.startViewTransition;if(!i||l){a?U(()=>o(e)):b(()=>o(e));return}if(a){U(()=>{p&&(h&&h.resolve(),p.skipTransition()),d({isTransitioning:!0,flushSync:!0,currentLocation:i.currentLocation,nextLocation:i.nextLocation})});let t=r.window.document.startViewTransition(()=>{U(()=>o(e))});t.finished.finally(()=>{U(()=>{f(void 0),m(void 0),s(void 0),d({isTransitioning:!1})})}),U(()=>m(t));return}p?(h&&h.resolve(),p.skipTransition(),y({state:e,currentLocation:i.currentLocation,nextLocation:i.nextLocation})):(s(e),d({isTransitioning:!0,flushSync:!1,currentLocation:i.currentLocation,nextLocation:i.nextLocation}))},[r.window,p,h,g,b]);l.useLayoutEffect(()=>r.subscribe(E),[r,E]),l.useEffect(()=>{c.isTransitioning&&!c.flushSync&&f(new C)},[c]),l.useEffect(()=>{if(h&&i&&r.window){let e=h.promise,t=r.window.document.startViewTransition(async()=>{b(()=>o(i)),await e});t.finished.finally(()=>{f(void 0),m(void 0),s(void 0),d({isTransitioning:!1})}),m(t)}},[b,i,h,r.window]),l.useEffect(()=>{h&&i&&a.location.key===i.location.key&&h.resolve()},[h,p,a.location,i]),l.useEffect(()=>{!c.isTransitioning&&v&&(s(v.state),d({isTransitioning:!0,flushSync:!1,currentLocation:v.currentLocation,nextLocation:v.nextLocation}),y(void 0))},[c.isTransitioning,v]),l.useEffect(()=>{},[]);let S=l.useMemo(()=>({createHref:r.createHref,encodeLocation:r.encodeLocation,go:e=>r.navigate(e),push:(e,t,n)=>r.navigate(e,{state:t,preventScrollReset:null==n?void 0:n.preventScrollReset}),replace:(e,t,n)=>r.navigate(e,{replace:!0,state:t,preventScrollReset:null==n?void 0:n.preventScrollReset})}),[r]),R=r.basename||"/",_=l.useMemo(()=>({router:r,navigator:S,static:!1,basename:R}),[r,S,R]);return l.createElement(l.Fragment,null,l.createElement(u.UNSAFE_DataRouterContext.Provider,{value:_},l.createElement(u.UNSAFE_DataRouterStateContext.Provider,{value:a},l.createElement(P.Provider,{value:g.current},l.createElement(x.Provider,{value:c},l.createElement(u.Router,{basename:R,location:a.location,navigationType:a.historyAction,navigator:S,future:{v7_relativeSplatPath:r.future.v7_relativeSplatPath}},a.initialized||r.future.v7_partialHydration?l.createElement(A,{routes:r.routes,future:r.future,state:a}):t))))),null)}function A(e){let{routes:t,future:r,state:n}=e;return(0,u.UNSAFE_useRoutesImpl)(t,void 0,n,r)}let k="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,T=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,F=l.forwardRef(function(e,t){let r,{onClick:n,relative:a,reloadDocument:o,replace:i,state:s,target:f,to:p,preventScrollReset:m,unstable_viewTransition:v}=e,y=h(e,g),{basename:w}=l.useContext(u.UNSAFE_NavigationContext),b=!1;if("string"==typeof p&&T.test(p)&&(r=p,k))try{let e=new URL(window.location.href),t=new URL(p.startsWith("//")?e.protocol+p:p),r=(0,c.stripBasename)(t.pathname,w);t.origin===e.origin&&null!=r?p=r+t.search+t.hash:b=!0}catch(e){}let E=(0,u.useHref)(p,{relative:a}),S=function(e,t){let{target:r,replace:n,state:a,preventScrollReset:o,relative:i,unstable_viewTransition:s}=void 0===t?{}:t,c=(0,u.useNavigate)(),d=(0,u.useLocation)(),h=(0,u.useResolvedPath)(e,{relative:i});return l.useCallback(t=>{var l,f,p;if(l=t,f=r,0===l.button&&(!f||"_self"===f)&&!((p=l).metaKey||p.altKey||p.ctrlKey||p.shiftKey))t.preventDefault(),c(e,{replace:void 0!==n?n:(0,u.createPath)(d)===(0,u.createPath)(h),state:a,preventScrollReset:o,relative:i,unstable_viewTransition:s})},[d,c,h,n,a,r,e,o,i,s])}(p,{replace:i,state:s,target:f,preventScrollReset:m,relative:a,unstable_viewTransition:v});return l.createElement("a",d({},y,{href:r||E,onClick:b||o?n:function(e){n&&n(e),!e.defaultPrevented&&S(e)},ref:t,target:f}))}),M=l.forwardRef(function(e,t){let r,{"aria-current":n="page",caseSensitive:a=!1,className:i="",end:s=!1,style:f,to:p,unstable_viewTransition:m,children:v}=e,y=h(e,w),g=(0,u.useResolvedPath)(p,{relative:y.relative}),b=(0,u.useLocation)(),E=l.useContext(u.UNSAFE_DataRouterStateContext),{navigator:S,basename:R}=l.useContext(u.UNSAFE_NavigationContext),P=null!=E&&function(e,t){void 0===t&&(t={});let r=l.useContext(x);null!=r||(0,c.UNSAFE_invariant)(!1);let{basename:n}=N(o.useViewTransitionState),a=(0,u.useResolvedPath)(e,{relative:t.relative});if(!r.isTransitioning)return!1;let i=(0,c.stripBasename)(r.currentLocation.pathname,n)||r.currentLocation.pathname,s=(0,c.stripBasename)(r.nextLocation.pathname,n)||r.nextLocation.pathname;return null!=(0,c.matchPath)(a.pathname,s)||null!=(0,c.matchPath)(a.pathname,i)}(g)&&!0===m,D=S.encodeLocation?S.encodeLocation(g).pathname:g.pathname,_=b.pathname,U=E&&E.navigation&&E.navigation.location?E.navigation.location.pathname:null;!a&&(_=_.toLowerCase(),U=U?U.toLowerCase():null,D=D.toLowerCase()),U&&R&&(U=(0,c.stripBasename)(U,R)||U);let C="/"!==D&&D.endsWith("/")?D.length-1:D.length,L=_===D||!s&&_.startsWith(D)&&"/"===_.charAt(C),A=null!=U&&(U===D||!s&&U.startsWith(D)&&"/"===U.charAt(D.length)),k={isActive:L,isPending:A,isTransitioning:P},T=L?n:void 0;r="function"==typeof i?i(k):[i,L?"active":null,A?"pending":null,P?"transitioning":null].filter(Boolean).join(" ");let M="function"==typeof f?f(k):f;return l.createElement(F,d({},y,{"aria-current":T,className:r,ref:t,style:M,to:p,unstable_viewTransition:m}),"function"==typeof v?v(k):v)});function N(e){let t=l.useContext(u.UNSAFE_DataRouterContext);return t||(0,c.UNSAFE_invariant)(!1),t}(n=o||(o={})).UseScrollRestoration="useScrollRestoration",n.UseSubmit="useSubmit",n.UseSubmitFetcher="useSubmitFetcher",n.UseFetcher="useFetcher",n.useViewTransitionState="useViewTransitionState",(a=i||(i={})).UseFetcher="useFetcher",a.UseFetchers="useFetchers",a.UseScrollRestoration="useScrollRestoration";let j=0,O=()=>"__"+String(++j)+"__"},92927:function(e,t,r){"use strict";r.r(t),r.d(t,{Outlet:function(){return M},Route:function(){return N},Router:function(){return j},UNSAFE_DataRouterContext:function(){return u},UNSAFE_DataRouterStateContext:function(){return c},UNSAFE_NavigationContext:function(){return d},UNSAFE_RouteContext:function(){return f},UNSAFE_mapRouteProperties:function(){return B},UNSAFE_useRouteId:function(){return A},UNSAFE_useRoutesImpl:function(){return R},createPath:function(){return l.createPath},createRoutesFromElements:function(){return function e(t,r){void 0===r&&(r=[]);let n=[];return i.Children.forEach(t,(t,a)=>{if(!i.isValidElement(t))return;let o=[...r,a];if(t.type===i.Fragment){n.push.apply(n,e(t.props.children,o));return}t.type!==N&&(0,l.UNSAFE_invariant)(!1),!t.props.index||!t.props.children||(0,l.UNSAFE_invariant)(!1);let s={id:t.props.id||o.join("-"),caseSensitive:t.props.caseSensitive,element:t.props.element,Component:t.props.Component,index:t.props.index,path:t.props.path,loader:t.props.loader,action:t.props.action,errorElement:t.props.errorElement,ErrorBoundary:t.props.ErrorBoundary,hasErrorBoundary:null!=t.props.ErrorBoundary||null!=t.props.errorElement,shouldRevalidate:t.props.shouldRevalidate,handle:t.props.handle,lazy:t.props.lazy};t.props.children&&(s.children=e(t.props.children,o)),n.push(s)}),n}},matchPath:function(){return l.matchPath},matchRoutes:function(){return l.matchRoutes},redirect:function(){return l.redirect},useHref:function(){return m},useLocation:function(){return y},useMatches:function(){return k},useNavigate:function(){return w},useParams:function(){return E},useResolvedPath:function(){return S},useRouteError:function(){return T}});var n,a,o,i=r("5872"),l=r("77393");function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}let u=i.createContext(null),c=i.createContext(null),d=i.createContext(null),h=i.createContext(null),f=i.createContext({outlet:null,matches:[],isDataRoute:!1}),p=i.createContext(null);function m(e,t){let{relative:r}=void 0===t?{}:t;v()||(0,l.UNSAFE_invariant)(!1);let{basename:n,navigator:a}=i.useContext(d),{hash:o,pathname:s,search:u}=S(e,{relative:r}),c=s;return"/"!==n&&(c="/"===s?n:(0,l.joinPaths)([n,s])),a.createHref({pathname:c,search:u,hash:o})}function v(){return null!=i.useContext(h)}function y(){return v()||(0,l.UNSAFE_invariant)(!1),i.useContext(h).location}function g(e){!i.useContext(d).static&&i.useLayoutEffect(e)}function w(){let{isDataRoute:e}=i.useContext(f);return e?function(){var e;let t;let{router:r}=(e=_.UseNavigateStable,(t=i.useContext(u))||(0,l.UNSAFE_invariant)(!1),t),n=L(U.UseNavigateStable),a=i.useRef(!1);return g(()=>{a.current=!0}),i.useCallback(function(e,t){void 0===t&&(t={}),a.current&&("number"==typeof e?r.navigate(e):r.navigate(e,s({fromRouteId:n},t)))},[r,n])}():function(){v()||(0,l.UNSAFE_invariant)(!1);let e=i.useContext(u),{basename:t,future:r,navigator:n}=i.useContext(d),{matches:a}=i.useContext(f),{pathname:o}=y(),s=JSON.stringify((0,l.UNSAFE_getResolveToMatches)(a,r.v7_relativeSplatPath)),c=i.useRef(!1);return g(()=>{c.current=!0}),i.useCallback(function(r,a){if(void 0===a&&(a={}),!c.current)return;if("number"==typeof r){n.go(r);return}let i=(0,l.resolveTo)(r,JSON.parse(s),o,"path"===a.relative);null==e&&"/"!==t&&(i.pathname="/"===i.pathname?t:(0,l.joinPaths)([t,i.pathname])),(a.replace?n.replace:n.push)(i,a.state,a)},[t,n,s,o,e])}()}let b=i.createContext(null);function E(){let{matches:e}=i.useContext(f),t=e[e.length-1];return t?t.params:{}}function S(e,t){let{relative:r}=void 0===t?{}:t,{future:n}=i.useContext(d),{matches:a}=i.useContext(f),{pathname:o}=y(),s=JSON.stringify((0,l.UNSAFE_getResolveToMatches)(a,n.v7_relativeSplatPath));return i.useMemo(()=>(0,l.resolveTo)(e,JSON.parse(s),o,"path"===r),[e,s,o,r])}function R(e,t,r,n){let a;v()||(0,l.UNSAFE_invariant)(!1);let{navigator:o}=i.useContext(d),{matches:u}=i.useContext(f),c=u[u.length-1],p=c?c.params:{};c&&c.pathname;let m=c?c.pathnameBase:"/";c&&c.route;let g=y();if(t){var w;let e="string"==typeof t?(0,l.parsePath)(t):t;"/"===m||(null==(w=e.pathname)?void 0:w.startsWith(m))||(0,l.UNSAFE_invariant)(!1),a=e}else a=g;let b=a.pathname||"/",E="/"===m?b:b.slice(m.length)||"/",S=(0,l.matchRoutes)(e,{pathname:E}),R=function(e,t,r,n){var a,o;if(void 0===t&&(t=[]),void 0===r&&(r=null),void 0===n&&(n=null),null==e){if(null==(o=r)||!o.errors)return null;e=r.matches}let s=e,u=null==(a=r)?void 0:a.errors;if(null!=u){let e=s.findIndex(e=>e.route.id&&(null==u?void 0:u[e.route.id]));e>=0||(0,l.UNSAFE_invariant)(!1),s=s.slice(0,Math.min(s.length,e+1))}let c=!1,d=-1;if(r&&n&&n.v7_partialHydration)for(let e=0;e<s.length;e++){let t=s[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(d=e),t.route.id){let{loaderData:e,errors:n}=r,a=t.route.loader&&void 0===e[t.route.id]&&(!n||void 0===n[t.route.id]);if(t.route.lazy||a){c=!0,s=d>=0?s.slice(0,d+1):[s[0]];break}}}return s.reduceRight((e,n,a)=>{let o;let l=!1,h=null,f=null;r&&(o=u&&n.route.id?u[n.route.id]:void 0,h=n.route.errorElement||x,c&&(d<0&&0===a?(function(e,t,r){!t&&!F[e]&&(F[e]=!0)}("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),l=!0,f=null):d===a&&(l=!0,f=n.route.hydrateFallbackElement||null)));let p=t.concat(s.slice(0,a+1)),m=()=>{let t;return t=o?h:l?f:n.route.Component?i.createElement(n.route.Component,null):n.route.element?n.route.element:e,i.createElement(D,{match:n,routeContext:{outlet:e,matches:p,isDataRoute:null!=r},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||0===a)?i.createElement(P,{location:r.location,revalidation:r.revalidation,component:h,error:o,children:m(),routeContext:{outlet:null,matches:p,isDataRoute:!0}}):m()},null)}(S&&S.map(e=>Object.assign({},e,{params:Object.assign({},p,e.params),pathname:(0,l.joinPaths)([m,o.encodeLocation?o.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?m:(0,l.joinPaths)([m,o.encodeLocation?o.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])})),u,r,n);return t&&R?i.createElement(h.Provider,{value:{location:s({pathname:"/",search:"",hash:"",state:null,key:"default"},a),navigationType:l.Action.Pop}},R):R}let x=i.createElement(function(){let e=T(),t=(0,l.isRouteErrorResponse)(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null;return i.createElement(i.Fragment,null,i.createElement("h2",null,"Unexpected Application Error!"),i.createElement("h3",{style:{fontStyle:"italic"}},t),r?i.createElement("pre",{style:{padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"}},r):null,null)},null);class P extends i.Component{static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return void 0!==this.state.error?i.createElement(f.Provider,{value:this.props.routeContext},i.createElement(p.Provider,{value:this.state.error,children:this.props.component})):this.props.children}constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}}function D(e){let{routeContext:t,match:r,children:n}=e,a=i.useContext(u);return a&&a.static&&a.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=r.route.id),i.createElement(f.Provider,{value:t},n)}var _=((n=_||{}).UseBlocker="useBlocker",n.UseRevalidator="useRevalidator",n.UseNavigateStable="useNavigate",n);var U=((a=U||{}).UseBlocker="useBlocker",a.UseLoaderData="useLoaderData",a.UseActionData="useActionData",a.UseRouteError="useRouteError",a.UseNavigation="useNavigation",a.UseRouteLoaderData="useRouteLoaderData",a.UseMatches="useMatches",a.UseRevalidator="useRevalidator",a.UseNavigateStable="useNavigate",a.UseRouteId="useRouteId",a);function C(e){let t=i.useContext(c);return t||(0,l.UNSAFE_invariant)(!1),t}function L(e){var t;let r;let n=(t=0,(r=i.useContext(f))||(0,l.UNSAFE_invariant)(!1),r),a=n.matches[n.matches.length-1];return a.route.id||(0,l.UNSAFE_invariant)(!1),a.route.id}function A(){return L(U.UseRouteId)}function k(){let{matches:e,loaderData:t}=C(U.UseMatches);return i.useMemo(()=>e.map(e=>(0,l.UNSAFE_convertRouteMatchToUiMatch)(e,t)),[e,t])}function T(){var e;let t=i.useContext(p),r=C(U.UseRouteError),n=L(U.UseRouteError);return void 0!==t?t:null==(e=r.errors)?void 0:e[n]}let F={};function M(e){var t;let r;return t=e.context,(r=i.useContext(f).outlet)?i.createElement(b.Provider,{value:t},r):r}function N(e){(0,l.UNSAFE_invariant)(!1)}function j(e){let{basename:t="/",children:r=null,location:n,navigationType:a=l.Action.Pop,navigator:o,static:u=!1,future:c}=e;v()&&(0,l.UNSAFE_invariant)(!1);let f=t.replace(/^\/*/,"/"),p=i.useMemo(()=>({basename:f,navigator:o,static:u,future:s({v7_relativeSplatPath:!1},c)}),[f,c,o,u]);"string"==typeof n&&(n=(0,l.parsePath)(n));let{pathname:m="/",search:y="",hash:g="",state:w=null,key:b="default"}=n,E=i.useMemo(()=>{let e=(0,l.stripBasename)(m,f);return null==e?null:{location:{pathname:e,search:y,hash:g,state:w,key:b},navigationType:a}},[f,m,y,g,w,b,a]);return null==E?null:i.createElement(d.Provider,{value:p},i.createElement(h.Provider,{children:r,value:E}))}i.startTransition;var O=((o=O||{})[o.pending=0]="pending",o[o.success=1]="success",o[o.error=2]="error",o);new Promise(()=>{});function B(e){let t={hasErrorBoundary:null!=e.ErrorBoundary||null!=e.errorElement};return e.Component&&Object.assign(t,{element:i.createElement(e.Component),Component:void 0}),e.HydrateFallback&&Object.assign(t,{hydrateFallbackElement:i.createElement(e.HydrateFallback),HydrateFallback:void 0}),e.ErrorBoundary&&Object.assign(t,{errorElement:i.createElement(e.ErrorBoundary),ErrorBoundary:void 0}),t}}}]);
1
+ /*! For license information please see lib-router.e084a6fd.js.LICENSE.txt */
2
+ (self.webpackChunkmodernjsDevtools=self.webpackChunkmodernjsDevtools||[]).push([["118"],{77393:function(e,t,r){"use strict";var n,a,o,i;function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}r.r(t),r.d(t,{Action:function(){return n},UNSAFE_ErrorResponseImpl:function(){return M},UNSAFE_convertRouteMatchToUiMatch:function(){return E},UNSAFE_getResolveToMatches:function(){return U},UNSAFE_invariant:function(){return d},createBrowserHistory:function(){return u},createHashHistory:function(){return c},createPath:function(){return m},createRouter:function(){return K},isRouteErrorResponse:function(){return N},joinPaths:function(){return L},matchPath:function(){return x},matchRoutes:function(){return b},parsePath:function(){return v},redirect:function(){return F},resolveTo:function(){return C},stripBasename:function(){return P}}),(o=n||(n={})).Pop="POP",o.Push="PUSH",o.Replace="REPLACE";let s="popstate";function u(e){return void 0===e&&(e={}),y(function(e,t){let{pathname:r,search:n,hash:a}=e.location;return p("",{pathname:r,search:n,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){return"string"==typeof t?t:m(t)},null,e)}function c(e){return void 0===e&&(e={}),y(function(e,t){let{pathname:r="/",search:n="",hash:a=""}=v(e.location.hash.substr(1));return!r.startsWith("/")&&!r.startsWith(".")&&(r="/"+r),p("",{pathname:r,search:n,hash:a},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){let r=e.document.querySelector("base"),n="";if(r&&r.getAttribute("href")){let t=e.location.href,r=t.indexOf("#");n=-1===r?t:t.slice(0,r)}return n+"#"+("string"==typeof t?t:m(t))},function(e,t){h("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")},e)}function d(e,t){if(!1===e||null==e)throw Error(t)}function h(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw Error(t)}catch(e){}}}function f(e,t){return{usr:e.state,key:e.key,idx:t}}function p(e,t,r,n){return void 0===r&&(r=null),l({pathname:"string"==typeof e?e:e.pathname,search:"",hash:""},"string"==typeof t?v(t):t,{state:r,key:t&&t.key||n||Math.random().toString(36).substr(2,8)})}function m(e){let{pathname:t="/",search:r="",hash:n=""}=e;return r&&"?"!==r&&(t+="?"===r.charAt(0)?r:"?"+r),n&&"#"!==n&&(t+="#"===n.charAt(0)?n:"#"+n),t}function v(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function y(e,t,r,a){void 0===a&&(a={});let{window:o=document.defaultView,v5Compat:i=!1}=a,u=o.history,c=n.Pop,h=null,v=y();function y(){return(u.state||{idx:null}).idx}function g(){c=n.Pop;let e=y(),t=null==e?null:e-v;v=e,h&&h({action:c,location:b.location,delta:t})}null==v&&(v=0,u.replaceState(l({},u.state,{idx:v}),""));function w(e){let t="null"!==o.location.origin?o.location.origin:o.location.href,r="string"==typeof e?e:m(e);return d(t,"No window.location.(origin|href) available to create URL for href: "+r),new URL(r,t)}let b={get action(){return c},get location(){return e(o,u)},listen(e){if(h)throw Error("A history only accepts one active listener");return o.addEventListener(s,g),h=e,()=>{o.removeEventListener(s,g),h=null}},createHref:e=>t(o,e),createURL:w,encodeLocation(e){let t=w(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){c=n.Push;let a=p(b.location,e,t);r&&r(a,e);let l=f(a,v=y()+1),s=b.createHref(a);try{u.pushState(l,"",s)}catch(e){if(e instanceof DOMException&&"DataCloneError"===e.name)throw e;o.location.assign(s)}i&&h&&h({action:c,location:b.location,delta:1})},replace:function(e,t){c=n.Replace;let a=p(b.location,e,t);r&&r(a,e);let o=f(a,v=y()),l=b.createHref(a);u.replaceState(o,"",l),i&&h&&h({action:c,location:b.location,delta:0})},go:e=>u.go(e)};return b}(i=a||(a={})).data="data",i.deferred="deferred",i.redirect="redirect",i.error="error";let g=new Set(["lazy","caseSensitive","path","id","index","children"]);function w(e,t,r,n){return void 0===r&&(r=[]),void 0===n&&(n={}),e.map((e,a)=>{let o=[...r,a],i="string"==typeof e.id?e.id:o.join("-");if(d(!0!==e.index||!e.children,"Cannot specify children on an index route"),d(!n[i],'Found a route id collision on id "'+i+"\". Route id's must be globally unique within Data Router usages"),!0===e.index){let r=l({},e,t(e),{id:i});return n[i]=r,r}{let r=l({},e,t(e),{id:i,children:void 0});return n[i]=r,e.children&&(r.children=w(e.children,t,o,n)),r}})}function b(e,t,r){void 0===r&&(r="/");let n=P(("string"==typeof t?v(t):t).pathname||"/",r);if(null==n)return null;let a=function e(t,r,n,a){void 0===r&&(r=[]),void 0===n&&(n=[]),void 0===a&&(a="");let o=(t,o,i)=>{let l={relativePath:void 0===i?t.path||"":i,caseSensitive:!0===t.caseSensitive,childrenIndex:o,route:t};l.relativePath.startsWith("/")&&(d(l.relativePath.startsWith(a),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+a)+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),l.relativePath=l.relativePath.slice(a.length));let s=L([a,l.relativePath]),u=n.concat(l);t.children&&t.children.length>0&&(d(!0!==t.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),e(t.children,r,u,s)),(null!=t.path||t.index)&&r.push({path:s,score:function(e,t){let r=e.split("/"),n=r.length;return r.some(R)&&(n+=-2),t&&(n+=2),r.filter(e=>!R(e)).reduce((e,t)=>e+(S.test(t)?3:""===t?1:10),n)}(s,t.index),routesMeta:u})};return t.forEach((e,t)=>{var r;if(""!==e.path&&null!=(r=e.path)&&r.includes("?"))for(let r of function e(t){let r=t.split("/");if(0===r.length)return[];let[n,...a]=r,o=n.endsWith("?"),i=n.replace(/\?$/,"");if(0===a.length)return o?[i,""]:[i];let l=e(a.join("/")),s=[];return s.push(...l.map(e=>""===e?i:[i,e].join("/"))),o&&s.push(...l),s.map(e=>t.startsWith("/")&&""===e?"/":e)}(e.path))o(e,t,r);else o(e,t)}),r}(e);(function(e){e.sort((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){return e.length===t.length&&e.slice(0,-1).every((e,r)=>e===t[r])?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map(e=>e.childrenIndex),t.routesMeta.map(e=>e.childrenIndex)))})(a);let o=null;for(let e=0;null==o&&e<a.length;++e)o=function(e,t){let{routesMeta:r}=e,n={},a="/",o=[];for(let e=0;e<r.length;++e){let i=r[e],l=e===r.length-1,s="/"===a?t:t.slice(a.length)||"/",u=x({path:i.relativePath,caseSensitive:i.caseSensitive,end:l},s);if(!u)return null;Object.assign(n,u.params);let c=i.route;o.push({params:n,pathname:L([a,u.pathname]),pathnameBase:A(L([a,u.pathnameBase])),route:c}),"/"!==u.pathnameBase&&(a=L([a,u.pathnameBase]))}return o}(a[e],function(e){try{return decodeURI(e)}catch(t){return h(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t)+")."),e}}(n));return o}function E(e,t){let{route:r,pathname:n,params:a}=e;return{id:r.id,pathname:n,params:a,data:t[r.id],handle:r.handle}}let S=/^:[\w-]+$/,R=e=>"*"===e;function x(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[r,n]=function(e,t,r){void 0===t&&(t=!1),void 0===r&&(r=!0),h("*"===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 n=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,t,r)=>(n.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(n.push({paramName:"*"}),a+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?a+="\\/*$":""!==e&&"/"!==e&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),n]}(e.path,e.caseSensitive,e.end),a=t.match(r);if(!a)return null;let o=a[0],i=o.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:n.reduce((e,t,r)=>{let{paramName:n,isOptional:a}=t;if("*"===n){let e=l[r]||"";i=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}let s=l[r];return a&&!s?e[n]=void 0:e[n]=function(e,t){try{return decodeURIComponent(e)}catch(r){return h(!1,'The value for the URL param "'+t+'" will not be decoded because'+(' the string "'+e)+'" is a malformed URL segment. This is probably'+(" due to a bad percent encoding ("+r)+")."),e}}(s||"",n),e},{}),pathname:o,pathnameBase:i,pattern:e}}function P(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&"/"!==n?null:e.slice(r)||"/"}function D(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(n))+"]. 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 _(e){return e.filter((e,t)=>0===t||e.route.path&&e.route.path.length>0)}function U(e,t){let r=_(e);return t?r.map((t,r)=>r===e.length-1?t.pathname:t.pathnameBase):r.map(e=>e.pathnameBase)}function C(e,t,r,n){let a,o;void 0===n&&(n=!1),"string"==typeof e?a=v(e):(d(!(a=l({},e)).pathname||!a.pathname.includes("?"),D("?","pathname","search",a)),d(!a.pathname||!a.pathname.includes("#"),D("#","pathname","hash",a)),d(!a.search||!a.search.includes("#"),D("#","search","hash",a)));let i=""===e||""===a.pathname,s=i?"/":a.pathname;if(null==s)o=r;else{let e=t.length-1;if(!n&&s.startsWith("..")){let t=s.split("/");for(;".."===t[0];)t.shift(),e-=1;a.pathname=t.join("/")}o=e>=0?t[e]:"/"}let u=function(e,t){void 0===t&&(t="/");let{pathname:r,search:n="",hash:a=""}="string"==typeof e?v(e):e;return{pathname:r?r.startsWith("/")?r:function(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(e=>{".."===e?r.length>1&&r.pop():"."!==e&&r.push(e)}),r.length>1?r.join("/"):"/"}(r,t):t,search:k(n),hash:T(a)}}(a,o),c=s&&"/"!==s&&s.endsWith("/"),h=(i||"."===s)&&r.endsWith("/");return!u.pathname.endsWith("/")&&(c||h)&&(u.pathname+="/"),u}let L=e=>e.join("/").replace(/\/\/+/g,"/"),A=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),k=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",T=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"",F=function(e,t){void 0===t&&(t=302);let r=t;"number"==typeof r?r={status:r}:void 0===r.status&&(r.status=302);let n=new Headers(r.headers);return n.set("Location",e),new Response(null,l({},r,{headers:n}))};class M{constructor(e,t,r,n){void 0===n&&(n=!1),this.status=e,this.statusText=t||"",this.internal=n,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}}function N(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}let j=["post","put","patch","delete"],O=new Set(j),B=["get",...j],H=new Set(B),z=new Set([301,302,303,307,308]),I=new Set([307,308]),W={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},$={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},q={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},J=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,V=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),Y="remix-router-transitions";function K(e){let t,r,o,i,s;let u=e.window?e.window:"undefined"!=typeof window?window:void 0,c=void 0!==u&&void 0!==u.document&&void 0!==u.document.createElement,f=!c;if(d(e.routes.length>0,"You must provide a non-empty routes array to createRouter"),e.mapRouteProperties)t=e.mapRouteProperties;else if(e.detectErrorBoundary){let r=e.detectErrorBoundary;t=e=>({hasErrorBoundary:r(e)})}else t=V;let m={},v=w(e.routes,t,void 0,m),y=e.basename||"/",g=l({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1},e.future),S=null,R=new Set,x=null,D=null,_=null,U=null!=e.hydrationData,C=b(v,e.history.location,y),L=null;if(null==C){let t=ec(404,{pathname:e.history.location.pathname}),{matches:r,route:n}=eu(v);C=r,L={[n.id]:t}}let A=C.some(e=>e.route.lazy),k=C.some(e=>e.route.loader);if(A)o=!1;else if(k){if(g.v7_partialHydration){let t=e.hydrationData?e.hydrationData.loaderData:null,r=e.hydrationData?e.hydrationData.errors:null;o=C.every(e=>e.route.loader&&!0!==e.route.loader.hydrate&&(t&&void 0!==t[e.route.id]||r&&void 0!==r[e.route.id]))}else o=null!=e.hydrationData}else o=!0;let T={historyAction:e.history.action,location:e.history.location,matches:C,initialized:o,navigation:W,restoreScrollPosition:null==e.hydrationData&&null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||L,fetchers:new Map,blockers:new Map},F=n.Pop,M=!1,N=!1,j=new Map,O=null,B=!1,H=!1,z=[],K=[],Z=new Map,ee=0,et=-1,ea=new Map,eo=new Set,eh=new Map,ew=new Map,eP=new Set,eD=new Map,e_=new Map,eU=!1;function eC(e,t){void 0===t&&(t={}),T=l({},T,e);let r=[],n=[];g.v7_fetcherPersist&&T.fetchers.forEach((e,t)=>{"idle"===e.state&&(eP.has(t)?n.push(t):r.push(t))}),[...R].forEach(e=>e(T,{deletedFetchers:n,unstable_viewTransitionOpts:t.viewTransitionOpts,unstable_flushSync:!0===t.flushSync})),g.v7_fetcherPersist&&(r.forEach(e=>T.fetchers.delete(e)),n.forEach(e=>eW(e)))}function eL(t,a,o){var i,s;let u,c;let{flushSync:d}=void 0===o?{}:o,h=null!=T.actionData&&null!=T.navigation.formMethod&&ev(T.navigation.formMethod)&&"loading"===T.navigation.state&&(null==(i=t.state)?void 0:i._isRedirect)!==!0;u=a.actionData?Object.keys(a.actionData).length>0?a.actionData:null:h?T.actionData:null;let f=a.loaderData?el(T.loaderData,a.loaderData,a.matches||[],a.errors):T.loaderData,p=T.blockers;p.size>0&&(p=new Map(p)).forEach((e,t)=>p.set(t,q));let m=!0===M||null!=T.navigation.formMethod&&ev(T.navigation.formMethod)&&(null==(s=t.state)?void 0:s._isRedirect)!==!0;if(r&&(v=r,r=void 0),B||F===n.Pop||(F===n.Push?e.history.push(t,t.state):F===n.Replace&&e.history.replace(t,t.state)),F===n.Pop){let e=j.get(T.location.pathname);e&&e.has(t.pathname)?c={currentLocation:T.location,nextLocation:t}:j.has(t.pathname)&&(c={currentLocation:t,nextLocation:T.location})}else if(N){let e=j.get(T.location.pathname);e?e.add(t.pathname):(e=new Set([t.pathname]),j.set(T.location.pathname,e)),c={currentLocation:T.location,nextLocation:t}}eC(l({},a,{actionData:u,loaderData:f,historyAction:F,location:t,initialized:!0,navigation:W,revalidation:"idle",restoreScrollPosition:eZ(t,a.matches||T.matches),preventScrollReset:m,blockers:p}),{viewTransitionOpts:c,flushSync:!0===d}),F=n.Pop,M=!1,N=!1,B=!1,H=!1,z=[],K=[]}async function eA(t,r){if("number"==typeof t){e.history.go(t);return}let a=X(T.location,T.matches,y,g.v7_prependBasename,t,g.v7_relativeSplatPath,null==r?void 0:r.fromRouteId,null==r?void 0:r.relative),{path:o,submission:i,error:s}=G(g.v7_normalizeFormMethod,!1,a,r),u=T.location,c=p(T.location,o,r&&r.state);c=l({},c,e.history.encodeLocation(c));let d=r&&null!=r.replace?r.replace:void 0,h=n.Push;!0===d?h=n.Replace:!1===d||null!=i&&ev(i.formMethod)&&i.formAction===T.location.pathname+T.location.search&&(h=n.Replace);let f=r&&"preventScrollReset"in r?!0===r.preventScrollReset:void 0,m=!0===(r&&r.unstable_flushSync),v=eX({currentLocation:u,nextLocation:c,historyAction:h});if(v){eK(v,{state:"blocked",location:c,proceed(){eK(v,{state:"proceeding",proceed:void 0,reset:void 0,location:c}),eA(t,r)},reset(){let e=new Map(T.blockers);e.set(v,q),eC({blockers:e})}});return}return await ek(h,c,{submission:i,pendingError:s,preventScrollReset:f,replace:r&&r.replace,enableViewTransition:r&&r.unstable_viewTransition,flushSync:m})}async function ek(t,n,a){let o,i;s&&s.abort(),s=null,F=t,B=!0===(a&&a.startUninterruptedRevalidation),function(e,t){x&&_&&(x[eQ(e,t)]=_())}(T.location,T.matches),M=!0===(a&&a.preventScrollReset),N=!0===(a&&a.enableViewTransition);let u=r||v,c=a&&a.overrideNavigation,d=b(u,n,y),h=!0===(a&&a.flushSync);if(!d){let e=ec(404,{pathname:n.pathname}),{matches:t,route:r}=eu(u);eG(),eL(n,{matches:t,loaderData:{},errors:{[r.id]:e}},{flushSync:h});return}if(T.initialized&&!H&&function(e,t){if(e.pathname!==t.pathname||e.search!==t.search)return!1;if(""===e.hash)return""!==t.hash;if(e.hash===t.hash)return!0;if(""!==t.hash)return!0;return!1}(T.location,n)&&!(a&&a.submission&&ev(a.submission.formMethod))){eL(n,{matches:d},{flushSync:h});return}s=new AbortController;let f=en(e.history,n,s.signal,a&&a.submission);if(a&&a.pendingError)i={[es(d).route.id]:a.pendingError};else if(a&&a.submission&&ev(a.submission.formMethod)){let e=await eT(f,n,a.submission,d,{replace:a.replace,flushSync:h});if(e.shortCircuited)return;o=e.pendingActionData,i=e.pendingActionError,c=eS(n,a.submission),h=!1,f=new Request(f.url,{signal:f.signal})}let{shortCircuited:p,loaderData:m,errors:g}=await eF(f,n,d,c,a&&a.submission,a&&a.fetcherSubmission,a&&a.replace,a&&!0===a.initialHydration,h,o,i);!p&&(s=null,eL(n,l({matches:d},o?{actionData:o}:{},{loaderData:m,errors:g})))}async function eT(e,r,o,i,l){let s;void 0===l&&(l={}),eB(),eC({navigation:function(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}(r,o)},{flushSync:!0===l.flushSync});let u=eb(i,r);if(u.route.action||u.route.lazy){if(s=await er("action",e,u,i,m,t,y,g.v7_relativeSplatPath),e.signal.aborted)return{shortCircuited:!0}}else s={type:a.error,error:ec(405,{method:e.method,pathname:r.pathname,routeId:u.route.id})};if(em(s)){let e;return e=l&&null!=l.replace?l.replace:s.location===T.location.pathname+T.location.search,await ej(T,s,{submission:o,replace:e}),{shortCircuited:!0}}if(ep(s)){let e=es(i,u.route.id);return!0!==(l&&l.replace)&&(F=n.Push),{pendingActionData:{},pendingActionError:{[e.route.id]:s.error}}}if(ef(s))throw ec(400,{type:"defer-action"});return{pendingActionData:{[u.route.id]:s.data}}}async function eF(t,n,a,o,i,u,c,d,h,f,p){let m=o||eS(n,i),w=i||u||eE(m),b=r||v,[E,S]=Q(e.history,T,a,w,n,g.v7_partialHydration&&!0===d,H,z,K,eP,eh,eo,b,y,f,p);if(eG(e=>!(a&&a.some(t=>t.route.id===e))||E&&E.some(t=>t.route.id===e)),et=++ee,0===E.length&&0===S.length){let e=eJ();return eL(n,l({matches:a,loaderData:{},errors:p||null},f?{actionData:f}:{},e?{fetchers:new Map(T.fetchers)}:{}),{flushSync:h}),{shortCircuited:!0}}if(!B&&(!g.v7_partialHydration||!d)){S.forEach(e=>{let t=T.fetchers.get(e.key),r=eR(void 0,t?t.data:void 0);T.fetchers.set(e.key,r)});let e=f||T.actionData;eC(l({navigation:m},e?0===Object.keys(e).length?{actionData:null}:{actionData:e}:{},S.length>0?{fetchers:new Map(T.fetchers)}:{}),{flushSync:h})}S.forEach(e=>{Z.has(e.key)&&e$(e.key),e.controller&&Z.set(e.key,e.controller)});let R=()=>S.forEach(e=>e$(e.key));s&&s.signal.addEventListener("abort",R);let{results:x,loaderResults:P,fetcherResults:D}=await eO(T.matches,a,E,S,t);if(t.signal.aborted)return{shortCircuited:!0};s&&s.signal.removeEventListener("abort",R),S.forEach(e=>Z.delete(e.key));let _=ed(x);if(_){if(_.idx>=E.length){let e=S[_.idx-E.length].key;eo.add(e)}return await ej(T,_.result,{replace:c}),{shortCircuited:!0}}let{loaderData:U,errors:C}=ei(T,a,E,P,p,S,D,eD);eD.forEach((e,t)=>{e.subscribe(r=>{(r||e.done)&&eD.delete(t)})});let L=eJ(),A=eV(et),k=L||A||S.length>0;return l({loaderData:U,errors:C},k?{fetchers:new Map(T.fetchers)}:{})}async function eM(n,a,o,i,l,u,c){if(eB(),eh.delete(n),!i.route.action&&!i.route.lazy){let e=ec(405,{method:c.formMethod,pathname:o,routeId:a});ez(n,a,e,{flushSync:u});return}let h=T.fetchers.get(n);eH(n,function(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}}(c,h),{flushSync:u});let f=new AbortController,p=en(e.history,o,f.signal,c);Z.set(n,f);let w=ee,E=await er("action",p,i,l,m,t,y,g.v7_relativeSplatPath);if(p.signal.aborted){Z.get(n)===f&&Z.delete(n);return}if(g.v7_fetcherPersist&&eP.has(n)){if(em(E)||ep(E)){eH(n,ex(void 0));return}}else{if(em(E)){if(Z.delete(n),!(et>w))return eo.add(n),eH(n,eR(c)),ej(T,E,{fetcherSubmission:c});eH(n,ex(void 0));return}if(ep(E)){ez(n,a,E.error);return}}if(ef(E))throw ec(400,{type:"defer-action"});let S=T.navigation.location||T.location,R=en(e.history,S,f.signal),x=r||v,P="idle"!==T.navigation.state?b(x,T.navigation.location,y):T.matches;d(P,"Didn't find any matches after fetcher action");let D=++ee;ea.set(n,D);let _=eR(c,E.data);T.fetchers.set(n,_);let[U,C]=Q(e.history,T,P,c,S,!1,H,z,K,eP,eh,eo,x,y,{[i.route.id]:E.data},void 0);C.filter(e=>e.key!==n).forEach(e=>{let t=e.key,r=T.fetchers.get(t),n=eR(void 0,r?r.data:void 0);T.fetchers.set(t,n),Z.has(t)&&e$(t),e.controller&&Z.set(t,e.controller)}),eC({fetchers:new Map(T.fetchers)});let L=()=>C.forEach(e=>e$(e.key));f.signal.addEventListener("abort",L);let{results:A,loaderResults:k,fetcherResults:M}=await eO(T.matches,P,U,C,R);if(f.signal.aborted)return;f.signal.removeEventListener("abort",L),ea.delete(n),Z.delete(n),C.forEach(e=>Z.delete(e.key));let N=ed(A);if(N){if(N.idx>=U.length){let e=C[N.idx-U.length].key;eo.add(e)}return ej(T,N.result)}let{loaderData:j,errors:O}=ei(T,T.matches,U,k,void 0,C,M,eD);if(T.fetchers.has(n)){let e=ex(E.data);T.fetchers.set(n,e)}eV(D),"loading"===T.navigation.state&&D>et?(d(F,"Expected pending action"),s&&s.abort(),eL(T.navigation.location,{matches:P,loaderData:j,errors:O,fetchers:new Map(T.fetchers)})):(eC({errors:O,loaderData:el(T.loaderData,j,P,O),fetchers:new Map(T.fetchers)}),H=!1)}async function eN(r,n,a,o,i,l,s){let u=T.fetchers.get(r);eH(r,eR(s,u?u.data:void 0),{flushSync:l});let c=new AbortController,h=en(e.history,a,c.signal);Z.set(r,c);let f=ee,p=await er("loader",h,o,i,m,t,y,g.v7_relativeSplatPath);if(ef(p)&&(p=await eg(p,h.signal,!0)||p),Z.get(r)===c&&Z.delete(r),!h.signal.aborted){if(eP.has(r)){eH(r,ex(void 0));return}if(em(p)){if(et>f){eH(r,ex(void 0));return}eo.add(r),await ej(T,p);return}if(ep(p)){ez(r,n,p.error);return}d(!ef(p),"Unhandled fetcher deferred data"),eH(r,ex(p.data))}}async function ej(t,r,a){let{submission:o,fetcherSubmission:i,replace:h}=void 0===a?{}:a;r.revalidate&&(H=!0);let f=p(t.location,r.location,{_isRedirect:!0});if(d(f,"Expected a location on the redirect navigation"),c){let t=!1;if(r.reloadDocument)t=!0;else if(J.test(r.location)){let n=e.history.createURL(r.location);t=n.origin!==u.location.origin||null==P(n.pathname,y)}if(t){h?u.location.replace(r.location):u.location.assign(r.location);return}}s=null;let m=!0===h?n.Replace:n.Push,{formMethod:v,formAction:g,formEncType:w}=t.navigation;!o&&!i&&v&&g&&w&&(o=eE(t.navigation));let b=o||i;if(I.has(r.status)&&b&&ev(b.formMethod))await ek(m,f,{submission:l({},b,{formAction:r.location}),preventScrollReset:M});else{let e=eS(f,o);await ek(m,f,{overrideNavigation:e,fetcherSubmission:i,preventScrollReset:M})}}async function eO(r,n,o,i,l){let s=await Promise.all([...o.map(e=>er("loader",l,e,n,m,t,y,g.v7_relativeSplatPath)),...i.map(r=>r.matches&&r.match&&r.controller?er("loader",en(e.history,r.path,r.controller.signal),r.match,r.matches,m,t,y,g.v7_relativeSplatPath):{type:a.error,error:ec(404,{pathname:r.path})})]),u=s.slice(0,o.length),c=s.slice(o.length);return await Promise.all([ey(r,o,u,u.map(()=>l.signal),!1,T.loaderData),ey(r,i.map(e=>e.match),c,i.map(e=>e.controller?e.controller.signal:null),!0)]),{results:s,loaderResults:u,fetcherResults:c}}function eB(){H=!0,z.push(...eG()),eh.forEach((e,t)=>{Z.has(t)&&(K.push(t),e$(t))})}function eH(e,t,r){void 0===r&&(r={}),T.fetchers.set(e,t),eC({fetchers:new Map(T.fetchers)},{flushSync:!0===(r&&r.flushSync)})}function ez(e,t,r,n){void 0===n&&(n={});let a=es(T.matches,t);eW(e),eC({errors:{[a.route.id]:r},fetchers:new Map(T.fetchers)},{flushSync:!0===(n&&n.flushSync)})}function eI(e){return g.v7_fetcherPersist&&(ew.set(e,(ew.get(e)||0)+1),eP.has(e)&&eP.delete(e)),T.fetchers.get(e)||$}function eW(e){let t=T.fetchers.get(e);Z.has(e)&&!(t&&"loading"===t.state&&ea.has(e))&&e$(e),eh.delete(e),ea.delete(e),eo.delete(e),eP.delete(e),T.fetchers.delete(e)}function e$(e){let t=Z.get(e);d(t,"Expected fetch controller: "+e),t.abort(),Z.delete(e)}function eq(e){for(let t of e){let e=ex(eI(t).data);T.fetchers.set(t,e)}}function eJ(){let e=[],t=!1;for(let r of eo){let n=T.fetchers.get(r);d(n,"Expected fetcher: "+r),"loading"===n.state&&(eo.delete(r),e.push(r),t=!0)}return eq(e),t}function eV(e){let t=[];for(let[r,n]of ea)if(n<e){let e=T.fetchers.get(r);d(e,"Expected fetcher: "+r),"loading"===e.state&&(e$(r),ea.delete(r),t.push(r))}return eq(t),t.length>0}function eY(e){T.blockers.delete(e),e_.delete(e)}function eK(e,t){let r=T.blockers.get(e)||q;d("unblocked"===r.state&&"blocked"===t.state||"blocked"===r.state&&"blocked"===t.state||"blocked"===r.state&&"proceeding"===t.state||"blocked"===r.state&&"unblocked"===t.state||"proceeding"===r.state&&"unblocked"===t.state,"Invalid blocker state transition: "+r.state+" -> "+t.state);let n=new Map(T.blockers);n.set(e,t),eC({blockers:n})}function eX(e){let{currentLocation:t,nextLocation:r,historyAction:n}=e;if(0===e_.size)return;e_.size>1&&h(!1,"A router only supports one blocker at a time");let a=Array.from(e_.entries()),[o,i]=a[a.length-1],l=T.blockers.get(o);if((!l||"proceeding"!==l.state)&&i({currentLocation:t,nextLocation:r,historyAction:n}))return o}function eG(e){let t=[];return eD.forEach((r,n)=>{(!e||e(n))&&(r.cancel(),t.push(n),eD.delete(n))}),t}function eQ(e,t){return D&&D(e,t.map(e=>E(e,T.loaderData)))||e.key}function eZ(e,t){if(x){let r=x[eQ(e,t)];if("number"==typeof r)return r}return null}return i={get basename(){return y},get future(){return g},get state(){return T},get routes(){return v},get window(){return u},initialize:function(){if(S=e.history.listen(t=>{let{action:r,location:n,delta:a}=t;if(eU){eU=!1;return}h(0===e_.size||null!=a,"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 o=eX({currentLocation:T.location,nextLocation:n,historyAction:r});if(o&&null!=a){eU=!0,e.history.go(-1*a),eK(o,{state:"blocked",location:n,proceed(){eK(o,{state:"proceeding",proceed:void 0,reset:void 0,location:n}),e.history.go(a)},reset(){let e=new Map(T.blockers);e.set(o,q),eC({blockers:e})}});return}return ek(r,n)}),c){(function(e,t){try{let r=e.sessionStorage.getItem(Y);if(r){let e=JSON.parse(r);for(let[r,n]of Object.entries(e||{}))n&&Array.isArray(n)&&t.set(r,new Set(n||[]))}}catch(e){}})(u,j);let e=()=>(function(e,t){if(t.size>0){let r={};for(let[e,n]of t)r[e]=[...n];try{e.sessionStorage.setItem(Y,JSON.stringify(r))}catch(e){h(!1,"Failed to save applied view transitions in sessionStorage ("+e+").")}}})(u,j);u.addEventListener("pagehide",e),O=()=>u.removeEventListener("pagehide",e)}return!T.initialized&&ek(n.Pop,T.location,{initialHydration:!0}),i},subscribe:function(e){return R.add(e),()=>R.delete(e)},enableScrollRestoration:function(e,t,r){if(x=e,_=t,D=r||null,!U&&T.navigation===W){U=!0;let e=eZ(T.location,T.matches);null!=e&&eC({restoreScrollPosition:e})}return()=>{x=null,_=null,D=null}},navigate:eA,fetch:function(e,t,n,a){if(f)throw Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");Z.has(e)&&e$(e);let o=!0===(a&&a.unstable_flushSync),i=r||v,l=X(T.location,T.matches,y,g.v7_prependBasename,n,g.v7_relativeSplatPath,t,null==a?void 0:a.relative),s=b(i,l,y);if(!s){ez(e,t,ec(404,{pathname:l}),{flushSync:o});return}let{path:u,submission:c,error:d}=G(g.v7_normalizeFormMethod,!0,l,a);if(d){ez(e,t,d,{flushSync:o});return}let h=eb(s,u);if(M=!0===(a&&a.preventScrollReset),c&&ev(c.formMethod)){eM(e,t,u,h,s,o,c);return}eh.set(e,{routeId:t,path:u}),eN(e,t,u,h,s,o,c)},revalidate:function(){if(eB(),eC({revalidation:"loading"}),"submitting"!==T.navigation.state){if("idle"===T.navigation.state){ek(T.historyAction,T.location,{startUninterruptedRevalidation:!0});return}ek(F||T.historyAction,T.navigation.location,{overrideNavigation:T.navigation})}},createHref:t=>e.history.createHref(t),encodeLocation:t=>e.history.encodeLocation(t),getFetcher:eI,deleteFetcher:function(e){if(g.v7_fetcherPersist){let t=(ew.get(e)||0)-1;t<=0?(ew.delete(e),eP.add(e)):ew.set(e,t)}else eW(e);eC({fetchers:new Map(T.fetchers)})},dispose:function(){S&&S(),O&&O(),R.clear(),s&&s.abort(),T.fetchers.forEach((e,t)=>eW(t)),T.blockers.forEach((e,t)=>eY(t))},getBlocker:function(e,t){let r=T.blockers.get(e)||q;return e_.get(e)!==t&&e_.set(e,t),r},deleteBlocker:eY,_internalFetchControllers:Z,_internalActiveDeferreds:eD,_internalSetRoutes:function(e){r=w(e,t,void 0,m={})}}}Symbol("deferred");function X(e,t,r,n,a,o,i,l){let s,u;if(i){for(let e of(s=[],t))if(s.push(e),e.route.id===i){u=e;break}}else s=t,u=t[t.length-1];let c=C(a||".",U(s,o),P(e.pathname,r)||e.pathname,"path"===l);return null==a&&(c.search=e.search,c.hash=e.hash),(null==a||""===a||"."===a)&&u&&u.route.index&&!ew(c.search)&&(c.search=c.search?c.search.replace(/^\?/,"?index&"):"?index"),n&&"/"!==r&&(c.pathname="/"===c.pathname?r:L([r,c.pathname])),m(c)}function G(e,t,r,n){var a;let o,i;if(!n||!(null!=(a=n)&&("formData"in a&&null!=a.formData||"body"in a&&void 0!==a.body)))return{path:r};if(n.formMethod&&!function(e){return H.has(e.toLowerCase())}(n.formMethod))return{path:r,error:ec(405,{method:n.formMethod})};let l=()=>({path:r,error:ec(400,{type:"invalid-body"})}),s=n.formMethod||"get",u=e?s.toUpperCase():s.toLowerCase(),c=eh(r);if(void 0!==n.body){if("text/plain"===n.formEncType){if(!ev(u))return l();let e="string"==typeof n.body?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((e,t)=>{let[r,n]=t;return""+e+r+"="+n+"\n"},""):String(n.body);return{path:r,submission:{formMethod:u,formAction:c,formEncType:n.formEncType,formData:void 0,json:void 0,text:e}}}if("application/json"===n.formEncType){if(!ev(u))return l();try{let e="string"==typeof n.body?JSON.parse(n.body):n.body;return{path:r,submission:{formMethod:u,formAction:c,formEncType:n.formEncType,formData:void 0,json:e,text:void 0}}}catch(e){return l()}}}if(d("function"==typeof FormData,"FormData is not available in this environment"),n.formData)o=ea(n.formData),i=n.formData;else if(n.body instanceof FormData)o=ea(n.body),i=n.body;else if(n.body instanceof URLSearchParams)i=eo(o=n.body);else if(null==n.body)o=new URLSearchParams,i=new FormData;else try{o=new URLSearchParams(n.body),i=eo(o)}catch(e){return l()}let h={formMethod:u,formAction:c,formEncType:n&&n.formEncType||"application/x-www-form-urlencoded",formData:i,json:void 0,text:void 0};if(ev(h.formMethod))return{path:r,submission:h};let f=v(r);return t&&f.search&&ew(f.search)&&o.append("index",""),f.search="?"+o,{path:m(f),submission:h}}function Q(e,t,r,n,a,o,i,s,u,c,d,h,f,p,m,v){let y=v?Object.values(v)[0]:m?Object.values(m)[0]:void 0,g=e.createURL(t.location),w=e.createURL(a),E=(function(e,t){let r=e;if(t){let n=e.findIndex(e=>e.route.id===t);n>=0&&(r=e.slice(0,n))}return r})(r,v?Object.keys(v)[0]:void 0).filter((e,r)=>{let{route:a}=e;if(a.lazy)return!0;if(null==a.loader)return!1;if(o)return!!a.loader.hydrate||void 0===t.loaderData[a.id]&&(!t.errors||void 0===t.errors[a.id]);if(function(e,t,r){let n=!t||r.route.id!==t.route.id,a=void 0===e[r.route.id];return n||a}(t.loaderData,t.matches[r],e)||s.some(t=>t===e.route.id))return!0;let u=t.matches[r];return ee(e,l({currentUrl:g,currentParams:u.params,nextUrl:w,nextParams:e.params},n,{actionResult:y,defaultShouldRevalidate:i||g.pathname+g.search===w.pathname+w.search||g.search!==w.search||Z(u,e)}))}),S=[];return d.forEach((e,a)=>{if(o||!r.some(t=>t.route.id===e.routeId)||c.has(a))return;let s=b(f,e.path,p);if(!s){S.push({key:a,routeId:e.routeId,path:e.path,matches:null,match:null,controller:null});return}let d=t.fetchers.get(a),m=eb(s,e.path),v=!1;(v=!h.has(a)&&(!!u.includes(a)||(d&&"idle"!==d.state&&void 0===d.data?i:ee(m,l({currentUrl:g,currentParams:t.matches[t.matches.length-1].params,nextUrl:w,nextParams:r[r.length-1].params},n,{actionResult:y,defaultShouldRevalidate:i})))))&&S.push({key:a,routeId:e.routeId,path:e.path,matches:s,match:m,controller:new AbortController})}),[E,S]}function Z(e,t){let r=e.route.path;return e.pathname!==t.pathname||null!=r&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function ee(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if("boolean"==typeof r)return r}return t.defaultShouldRevalidate}async function et(e,t,r){if(!e.lazy)return;let n=await e.lazy();if(!e.lazy)return;let a=r[e.id];d(a,"No route found in manifest");let o={};for(let e in n){let t=void 0!==a[e]&&"hasErrorBoundary"!==e;h(!t,'Route "'+a.id+'" has a static property "'+e+'" defined but its lazy function is also returning a value for this property. '+('The lazy route property "'+e)+'" will be ignored.'),!t&&!g.has(e)&&(o[e]=n[e])}Object.assign(a,o),Object.assign(a,l({},t(a),{lazy:void 0}))}async function er(e,t,r,n,o,i,l,s,u){let c,h,f;void 0===u&&(u={});let p=e=>{let n;let a=new Promise((e,t)=>n=t);return f=()=>n(),t.signal.addEventListener("abort",f),Promise.race([e({request:t,params:r.params,context:u.requestContext}),a])};try{let n=r.route[e];if(r.route.lazy){if(n){let e;let t=await Promise.all([p(n).catch(t=>{e=t}),et(r.route,i,o)]);if(e)throw e;h=t[0]}else if(await et(r.route,i,o),n=r.route[e])h=await p(n);else{if("action"!==e)return{type:a.data,data:void 0};let n=new URL(t.url),o=n.pathname+n.search;throw ec(405,{method:t.method,pathname:o,routeId:r.route.id})}}else if(n)h=await p(n);else{let e=new URL(t.url),r=e.pathname+e.search;throw ec(404,{pathname:r})}d(void 0!==h,"You defined "+("action"===e?"an action":"a loader")+" for route "+('"'+r.route.id+"\" but didn't return anything from your `"+e)+"` function. Please return a value or `null`.")}catch(e){c=a.error,h=e}finally{f&&t.signal.removeEventListener("abort",f)}if(function(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"object"==typeof e.headers&&void 0!==e.body}(h)){let e,o=h.status;if(z.has(o)){let e=h.headers.get("Location");if(d(e,"Redirects returned/thrown from loaders/actions must have a Location header"),J.test(e)){if(!u.isStaticRequest){let r=new URL(t.url),n=new URL(e.startsWith("//")?r.protocol+e:e),a=null!=P(n.pathname,l);n.origin===r.origin&&a&&(e=n.pathname+n.search+n.hash)}}else e=X(new URL(t.url),n.slice(0,n.indexOf(r)+1),l,!0,e,s);if(u.isStaticRequest)throw h.headers.set("Location",e),h;return{type:a.redirect,status:o,location:e,revalidate:null!==h.headers.get("X-Remix-Revalidate"),reloadDocument:null!==h.headers.get("X-Remix-Reload-Document")}}if(u.isRouteRequest)throw{type:c===a.error?a.error:a.data,response:h};try{let t=h.headers.get("Content-Type");e=t&&/\bapplication\/json\b/.test(t)?null==h.body?null:await h.json():await h.text()}catch(e){return{type:a.error,error:e}}return c===a.error?{type:c,error:new M(o,h.statusText,e),headers:h.headers}:{type:a.data,data:e,statusCode:h.status,headers:h.headers}}if(c===a.error)return{type:c,error:h};if(function(e){return e&&"object"==typeof e&&"object"==typeof e.data&&"function"==typeof e.subscribe&&"function"==typeof e.cancel&&"function"==typeof e.resolveData}(h)){var m,v;return{type:a.deferred,deferredData:h,statusCode:null==(m=h.init)?void 0:m.status,headers:(null==(v=h.init)?void 0:v.headers)&&new Headers(h.init.headers)}}return{type:a.data,data:h}}function en(e,t,r,n){let a=e.createURL(eh(t)).toString(),o={signal:r};if(n&&ev(n.formMethod)){let{formMethod:e,formEncType:t}=n;o.method=e.toUpperCase(),"application/json"===t?(o.headers=new Headers({"Content-Type":t}),o.body=JSON.stringify(n.json)):"text/plain"===t?o.body=n.text:"application/x-www-form-urlencoded"===t&&n.formData?o.body=ea(n.formData):o.body=n.formData}return new Request(a,o)}function ea(e){let t=new URLSearchParams;for(let[r,n]of e.entries())t.append(r,"string"==typeof n?n:n.name);return t}function eo(e){let t=new FormData;for(let[r,n]of e.entries())t.append(r,n);return t}function ei(e,t,r,n,a,o,i,s){var u,c,h,f,p;let m,v,y,g,w;let{loaderData:b,errors:E}=(u=t,c=r,h=n,f=a,p=s,v={},y=null,g=!1,w={},h.forEach((e,t)=>{let r=c[t].route.id;if(d(!em(e),"Cannot handle redirect results in processLoaderData"),ep(e)){let t=es(u,r),n=e.error;f&&(n=Object.values(f)[0],f=void 0),null==(y=y||{})[t.route.id]&&(y[t.route.id]=n),v[r]=void 0,!g&&(g=!0,m=N(e.error)?e.error.status:500),e.headers&&(w[r]=e.headers)}else ef(e)?(p.set(r,e.deferredData),v[r]=e.deferredData.data):v[r]=e.data,null!=e.statusCode&&200!==e.statusCode&&!g&&(m=e.statusCode),e.headers&&(w[r]=e.headers)}),f&&(y=f,v[Object.keys(f)[0]]=void 0),{loaderData:v,errors:y,statusCode:m||200,loaderHeaders:w});for(let t=0;t<o.length;t++){let{key:r,match:n,controller:a}=o[t];d(void 0!==i&&void 0!==i[t],"Did not find corresponding fetcher result");let s=i[t];if(!a||!a.signal.aborted)if(ep(s)){let t=es(e.matches,null==n?void 0:n.route.id);!(E&&E[t.route.id])&&(E=l({},E,{[t.route.id]:s.error})),e.fetchers.delete(r)}else if(em(s))d(!1,"Unhandled fetcher revalidation redirect");else if(ef(s))d(!1,"Unhandled fetcher deferred data");else{let t=ex(s.data);e.fetchers.set(r,t)}}return{loaderData:b,errors:E}}function el(e,t,r,n){let a=l({},t);for(let o of r){let r=o.route.id;if(t.hasOwnProperty(r)?void 0!==t[r]&&(a[r]=t[r]):void 0!==e[r]&&o.route.loader&&(a[r]=e[r]),n&&n.hasOwnProperty(r))break}return a}function es(e,t){return(t?e.slice(0,e.findIndex(e=>e.route.id===t)+1):[...e]).reverse().find(e=>!0===e.route.hasErrorBoundary)||e[0]}function eu(e){let t=1===e.length?e[0]:e.find(e=>e.index||!e.path||"/"===e.path)||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function ec(e,t){let{pathname:r,routeId:n,method:a,type:o}=void 0===t?{}:t,i="Unknown Server Error",l="Unknown @remix-run/router error";return 400===e?(i="Bad Request",a&&r&&n?l="You made a "+a+' request to "'+r+'" but '+('did not provide a `loader` for route "'+n)+'", so there is no way to handle the request.':"defer-action"===o?l="defer() is not supported in actions":"invalid-body"===o&&(l="Unable to encode submission body")):403===e?(i="Forbidden",l='Route "'+n+'" does not match URL "'+r+'"'):404===e?(i="Not Found",l='No route matches URL "'+r+'"'):405===e&&(i="Method Not Allowed",a&&r&&n?l="You made a "+a.toUpperCase()+' request to "'+r+'" but '+('did not provide an `action` for route "'+n)+'", so there is no way to handle the request.':a&&(l='Invalid request method "'+a.toUpperCase()+'"')),new M(e||500,i,Error(l),!0)}function ed(e){for(let t=e.length-1;t>=0;t--){let r=e[t];if(em(r))return{result:r,idx:t}}}function eh(e){let t="string"==typeof e?v(e):e;return m(l({},t,{hash:""}))}function ef(e){return e.type===a.deferred}function ep(e){return e.type===a.error}function em(e){return(e&&e.type)===a.redirect}function ev(e){return O.has(e.toLowerCase())}async function ey(e,t,r,n,a,o){for(let i=0;i<r.length;i++){let l=r[i],s=t[i];if(!s)continue;let u=e.find(e=>e.route.id===s.route.id),c=null!=u&&!Z(u,s)&&(o&&o[s.route.id])!==void 0;if(ef(l)&&(a||c)){let e=n[i];d(e,"Expected an AbortSignal for revalidating fetcher deferred result"),await eg(l,e,a).then(e=>{e&&(r[i]=e||r[i])})}}}async function eg(e,t,r){if(void 0===r&&(r=!1),!await e.deferredData.resolveData(t)){if(r)try{return{type:a.data,data:e.deferredData.unwrappedData}}catch(e){return{type:a.error,error:e}}return{type:a.data,data:e.deferredData.data}}}function ew(e){return new URLSearchParams(e).getAll("index").some(e=>""===e)}function eb(e,t){let r="string"==typeof t?v(t).search:t.search;if(e[e.length-1].route.index&&ew(r||""))return e[e.length-1];let n=_(e);return n[n.length-1]}function eE(e){let{formMethod:t,formAction:r,formEncType:n,text:a,formData:o,json:i}=e;if(t&&r&&n){if(null!=a)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:void 0,text:a};else if(null!=o)return{formMethod:t,formAction:r,formEncType:n,formData:o,json:void 0,text:void 0};else if(void 0!==i)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:i,text:void 0}}}function eS(e,t){return t?{state:"loading",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function eR(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 ex(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}},31988:function(e,t,r){"use strict";r.r(t),r.d(t,{Link:function(){return F},NavLink:function(){return M},Outlet:function(){return u.Outlet},Route:function(){return u.Route},RouterProvider:function(){return L},Routes:function(){return u.Routes},createBrowserRouter:function(){return E},createHashRouter:function(){return S},createRoutesFromElements:function(){return u.createRoutesFromElements},matchPath:function(){return u.matchPath},matchRoutes:function(){return u.matchRoutes},redirect:function(){return u.redirect},useHref:function(){return u.useHref},useLocation:function(){return u.useLocation},useMatches:function(){return u.useMatches},useNavigate:function(){return u.useNavigate},useParams:function(){return u.useParams},useResolvedPath:function(){return u.useResolvedPath},useRouteError:function(){return u.useRouteError}});var n,a,o,i,l=r("5872"),s=r("13922"),u=r("92927"),c=r("77393");function d(){return(d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function h(e,t){if(null==e)return{};var r,n,a={},o=Object.keys(e);for(n=0;n<o.length;n++)r=o[n],!(t.indexOf(r)>=0)&&(a[r]=e[r]);return a}let f="application/x-www-form-urlencoded";function p(e){return null!=e&&"string"==typeof e.tagName}let m=null,v=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function y(e){return null==e||v.has(e)?e:null}let g=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","unstable_viewTransition"],w=["aria-current","caseSensitive","className","end","style","to","unstable_viewTransition","children"],b=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","unstable_viewTransition"];try{window.__reactRouterVersion="6"}catch(e){}function E(e,t){return(0,c.createRouter)({basename:null==t?void 0:t.basename,future:d({},null==t?void 0:t.future,{v7_prependBasename:!0}),history:(0,c.createBrowserHistory)({window:null==t?void 0:t.window}),hydrationData:(null==t?void 0:t.hydrationData)||R(),routes:e,mapRouteProperties:u.UNSAFE_mapRouteProperties,window:null==t?void 0:t.window}).initialize()}function S(e,t){return(0,c.createRouter)({basename:null==t?void 0:t.basename,future:d({},null==t?void 0:t.future,{v7_prependBasename:!0}),history:(0,c.createHashHistory)({window:null==t?void 0:t.window}),hydrationData:(null==t?void 0:t.hydrationData)||R(),routes:e,mapRouteProperties:u.UNSAFE_mapRouteProperties,window:null==t?void 0:t.window}).initialize()}function R(){var e;let t=null==(e=window)?void 0:e.__staticRouterHydrationData;return t&&t.errors&&(t=d({},t,{errors:function(e){if(!e)return null;let t=Object.entries(e),r={};for(let[e,n]of t)if(n&&"RouteErrorResponse"===n.__type)r[e]=new c.UNSAFE_ErrorResponseImpl(n.status,n.statusText,n.data,!0===n.internal);else if(n&&"Error"===n.__type){if(n.__subType){let t=window[n.__subType];if("function"==typeof t)try{let a=new t(n.message);a.stack="",r[e]=a}catch(e){}}if(null==r[e]){let t=Error(n.message);t.stack="",r[e]=t}}else r[e]=n;return r}(t.errors)})),t}let x=l.createContext({isTransitioning:!1}),P=l.createContext(new Map),D=l.startTransition,_=s.flushSync;l.useId;function U(e){_?_(e):e()}class C{constructor(){this.status="pending",this.promise=new Promise((e,t)=>{this.resolve=t=>{"pending"===this.status&&(this.status="resolved",e(t))},this.reject=e=>{"pending"===this.status&&(this.status="rejected",t(e))}})}}function L(e){let{fallbackElement:t,router:r,future:n}=e,[a,o]=l.useState(r.state),[i,s]=l.useState(),[c,d]=l.useState({isTransitioning:!1}),[h,f]=l.useState(),[p,m]=l.useState(),[v,y]=l.useState(),g=l.useRef(new Map),{v7_startTransition:w}=n||{},b=l.useCallback(e=>{if(w){var t;t=e,D?D(t):t()}else e()},[w]),E=l.useCallback((e,t)=>{let{deletedFetchers:n,unstable_flushSync:a,unstable_viewTransitionOpts:i}=t;n.forEach(e=>g.current.delete(e)),e.fetchers.forEach((e,t)=>{void 0!==e.data&&g.current.set(t,e.data)});let l=null==r.window||"function"!=typeof r.window.document.startViewTransition;if(!i||l){a?U(()=>o(e)):b(()=>o(e));return}if(a){U(()=>{p&&(h&&h.resolve(),p.skipTransition()),d({isTransitioning:!0,flushSync:!0,currentLocation:i.currentLocation,nextLocation:i.nextLocation})});let t=r.window.document.startViewTransition(()=>{U(()=>o(e))});t.finished.finally(()=>{U(()=>{f(void 0),m(void 0),s(void 0),d({isTransitioning:!1})})}),U(()=>m(t));return}p?(h&&h.resolve(),p.skipTransition(),y({state:e,currentLocation:i.currentLocation,nextLocation:i.nextLocation})):(s(e),d({isTransitioning:!0,flushSync:!1,currentLocation:i.currentLocation,nextLocation:i.nextLocation}))},[r.window,p,h,g,b]);l.useLayoutEffect(()=>r.subscribe(E),[r,E]),l.useEffect(()=>{c.isTransitioning&&!c.flushSync&&f(new C)},[c]),l.useEffect(()=>{if(h&&i&&r.window){let e=h.promise,t=r.window.document.startViewTransition(async()=>{b(()=>o(i)),await e});t.finished.finally(()=>{f(void 0),m(void 0),s(void 0),d({isTransitioning:!1})}),m(t)}},[b,i,h,r.window]),l.useEffect(()=>{h&&i&&a.location.key===i.location.key&&h.resolve()},[h,p,a.location,i]),l.useEffect(()=>{!c.isTransitioning&&v&&(s(v.state),d({isTransitioning:!0,flushSync:!1,currentLocation:v.currentLocation,nextLocation:v.nextLocation}),y(void 0))},[c.isTransitioning,v]),l.useEffect(()=>{},[]);let S=l.useMemo(()=>({createHref:r.createHref,encodeLocation:r.encodeLocation,go:e=>r.navigate(e),push:(e,t,n)=>r.navigate(e,{state:t,preventScrollReset:null==n?void 0:n.preventScrollReset}),replace:(e,t,n)=>r.navigate(e,{replace:!0,state:t,preventScrollReset:null==n?void 0:n.preventScrollReset})}),[r]),R=r.basename||"/",_=l.useMemo(()=>({router:r,navigator:S,static:!1,basename:R}),[r,S,R]);return l.createElement(l.Fragment,null,l.createElement(u.UNSAFE_DataRouterContext.Provider,{value:_},l.createElement(u.UNSAFE_DataRouterStateContext.Provider,{value:a},l.createElement(P.Provider,{value:g.current},l.createElement(x.Provider,{value:c},l.createElement(u.Router,{basename:R,location:a.location,navigationType:a.historyAction,navigator:S,future:{v7_relativeSplatPath:r.future.v7_relativeSplatPath}},a.initialized||r.future.v7_partialHydration?l.createElement(A,{routes:r.routes,future:r.future,state:a}):t))))),null)}function A(e){let{routes:t,future:r,state:n}=e;return(0,u.UNSAFE_useRoutesImpl)(t,void 0,n,r)}let k="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,T=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,F=l.forwardRef(function(e,t){let r,{onClick:n,relative:a,reloadDocument:o,replace:i,state:s,target:f,to:p,preventScrollReset:m,unstable_viewTransition:v}=e,y=h(e,g),{basename:w}=l.useContext(u.UNSAFE_NavigationContext),b=!1;if("string"==typeof p&&T.test(p)&&(r=p,k))try{let e=new URL(window.location.href),t=new URL(p.startsWith("//")?e.protocol+p:p),r=(0,c.stripBasename)(t.pathname,w);t.origin===e.origin&&null!=r?p=r+t.search+t.hash:b=!0}catch(e){}let E=(0,u.useHref)(p,{relative:a}),S=function(e,t){let{target:r,replace:n,state:a,preventScrollReset:o,relative:i,unstable_viewTransition:s}=void 0===t?{}:t,c=(0,u.useNavigate)(),d=(0,u.useLocation)(),h=(0,u.useResolvedPath)(e,{relative:i});return l.useCallback(t=>{var l,f,p;if(l=t,f=r,0===l.button&&(!f||"_self"===f)&&!((p=l).metaKey||p.altKey||p.ctrlKey||p.shiftKey))t.preventDefault(),c(e,{replace:void 0!==n?n:(0,u.createPath)(d)===(0,u.createPath)(h),state:a,preventScrollReset:o,relative:i,unstable_viewTransition:s})},[d,c,h,n,a,r,e,o,i,s])}(p,{replace:i,state:s,target:f,preventScrollReset:m,relative:a,unstable_viewTransition:v});return l.createElement("a",d({},y,{href:r||E,onClick:b||o?n:function(e){n&&n(e),!e.defaultPrevented&&S(e)},ref:t,target:f}))}),M=l.forwardRef(function(e,t){let r,{"aria-current":n="page",caseSensitive:a=!1,className:i="",end:s=!1,style:f,to:p,unstable_viewTransition:m,children:v}=e,y=h(e,w),g=(0,u.useResolvedPath)(p,{relative:y.relative}),b=(0,u.useLocation)(),E=l.useContext(u.UNSAFE_DataRouterStateContext),{navigator:S,basename:R}=l.useContext(u.UNSAFE_NavigationContext),P=null!=E&&function(e,t){void 0===t&&(t={});let r=l.useContext(x);null!=r||(0,c.UNSAFE_invariant)(!1);let{basename:n}=N(o.useViewTransitionState),a=(0,u.useResolvedPath)(e,{relative:t.relative});if(!r.isTransitioning)return!1;let i=(0,c.stripBasename)(r.currentLocation.pathname,n)||r.currentLocation.pathname,s=(0,c.stripBasename)(r.nextLocation.pathname,n)||r.nextLocation.pathname;return null!=(0,c.matchPath)(a.pathname,s)||null!=(0,c.matchPath)(a.pathname,i)}(g)&&!0===m,D=S.encodeLocation?S.encodeLocation(g).pathname:g.pathname,_=b.pathname,U=E&&E.navigation&&E.navigation.location?E.navigation.location.pathname:null;!a&&(_=_.toLowerCase(),U=U?U.toLowerCase():null,D=D.toLowerCase()),U&&R&&(U=(0,c.stripBasename)(U,R)||U);let C="/"!==D&&D.endsWith("/")?D.length-1:D.length,L=_===D||!s&&_.startsWith(D)&&"/"===_.charAt(C),A=null!=U&&(U===D||!s&&U.startsWith(D)&&"/"===U.charAt(D.length)),k={isActive:L,isPending:A,isTransitioning:P},T=L?n:void 0;r="function"==typeof i?i(k):[i,L?"active":null,A?"pending":null,P?"transitioning":null].filter(Boolean).join(" ");let M="function"==typeof f?f(k):f;return l.createElement(F,d({},y,{"aria-current":T,className:r,ref:t,style:M,to:p,unstable_viewTransition:m}),"function"==typeof v?v(k):v)});function N(e){let t=l.useContext(u.UNSAFE_DataRouterContext);return t||(0,c.UNSAFE_invariant)(!1),t}(n=o||(o={})).UseScrollRestoration="useScrollRestoration",n.UseSubmit="useSubmit",n.UseSubmitFetcher="useSubmitFetcher",n.UseFetcher="useFetcher",n.useViewTransitionState="useViewTransitionState",(a=i||(i={})).UseFetcher="useFetcher",a.UseFetchers="useFetchers",a.UseScrollRestoration="useScrollRestoration";let j=0,O=()=>"__"+String(++j)+"__"},92927:function(e,t,r){"use strict";r.r(t),r.d(t,{Outlet:function(){return M},Route:function(){return N},Router:function(){return j},Routes:function(){return O},UNSAFE_DataRouterContext:function(){return u},UNSAFE_DataRouterStateContext:function(){return c},UNSAFE_NavigationContext:function(){return d},UNSAFE_RouteContext:function(){return f},UNSAFE_mapRouteProperties:function(){return z},UNSAFE_useRouteId:function(){return A},UNSAFE_useRoutesImpl:function(){return R},createPath:function(){return l.createPath},createRoutesFromElements:function(){return H},matchPath:function(){return l.matchPath},matchRoutes:function(){return l.matchRoutes},redirect:function(){return l.redirect},useHref:function(){return m},useLocation:function(){return y},useMatches:function(){return k},useNavigate:function(){return w},useParams:function(){return E},useResolvedPath:function(){return S},useRouteError:function(){return T}});var n,a,o,i=r("5872"),l=r("77393");function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}let u=i.createContext(null),c=i.createContext(null),d=i.createContext(null),h=i.createContext(null),f=i.createContext({outlet:null,matches:[],isDataRoute:!1}),p=i.createContext(null);function m(e,t){let{relative:r}=void 0===t?{}:t;v()||(0,l.UNSAFE_invariant)(!1);let{basename:n,navigator:a}=i.useContext(d),{hash:o,pathname:s,search:u}=S(e,{relative:r}),c=s;return"/"!==n&&(c="/"===s?n:(0,l.joinPaths)([n,s])),a.createHref({pathname:c,search:u,hash:o})}function v(){return null!=i.useContext(h)}function y(){return v()||(0,l.UNSAFE_invariant)(!1),i.useContext(h).location}function g(e){!i.useContext(d).static&&i.useLayoutEffect(e)}function w(){let{isDataRoute:e}=i.useContext(f);return e?function(){var e;let t;let{router:r}=(e=_.UseNavigateStable,(t=i.useContext(u))||(0,l.UNSAFE_invariant)(!1),t),n=L(U.UseNavigateStable),a=i.useRef(!1);return g(()=>{a.current=!0}),i.useCallback(function(e,t){void 0===t&&(t={}),a.current&&("number"==typeof e?r.navigate(e):r.navigate(e,s({fromRouteId:n},t)))},[r,n])}():function(){v()||(0,l.UNSAFE_invariant)(!1);let e=i.useContext(u),{basename:t,future:r,navigator:n}=i.useContext(d),{matches:a}=i.useContext(f),{pathname:o}=y(),s=JSON.stringify((0,l.UNSAFE_getResolveToMatches)(a,r.v7_relativeSplatPath)),c=i.useRef(!1);return g(()=>{c.current=!0}),i.useCallback(function(r,a){if(void 0===a&&(a={}),!c.current)return;if("number"==typeof r){n.go(r);return}let i=(0,l.resolveTo)(r,JSON.parse(s),o,"path"===a.relative);null==e&&"/"!==t&&(i.pathname="/"===i.pathname?t:(0,l.joinPaths)([t,i.pathname])),(a.replace?n.replace:n.push)(i,a.state,a)},[t,n,s,o,e])}()}let b=i.createContext(null);function E(){let{matches:e}=i.useContext(f),t=e[e.length-1];return t?t.params:{}}function S(e,t){let{relative:r}=void 0===t?{}:t,{future:n}=i.useContext(d),{matches:a}=i.useContext(f),{pathname:o}=y(),s=JSON.stringify((0,l.UNSAFE_getResolveToMatches)(a,n.v7_relativeSplatPath));return i.useMemo(()=>(0,l.resolveTo)(e,JSON.parse(s),o,"path"===r),[e,s,o,r])}function R(e,t,r,n){let a;v()||(0,l.UNSAFE_invariant)(!1);let{navigator:o}=i.useContext(d),{matches:u}=i.useContext(f),c=u[u.length-1],p=c?c.params:{};c&&c.pathname;let m=c?c.pathnameBase:"/";c&&c.route;let g=y();if(t){var w;let e="string"==typeof t?(0,l.parsePath)(t):t;"/"===m||(null==(w=e.pathname)?void 0:w.startsWith(m))||(0,l.UNSAFE_invariant)(!1),a=e}else a=g;let b=a.pathname||"/",E="/"===m?b:b.slice(m.length)||"/",S=(0,l.matchRoutes)(e,{pathname:E}),R=function(e,t,r,n){var a,o;if(void 0===t&&(t=[]),void 0===r&&(r=null),void 0===n&&(n=null),null==e){if(null==(o=r)||!o.errors)return null;e=r.matches}let s=e,u=null==(a=r)?void 0:a.errors;if(null!=u){let e=s.findIndex(e=>e.route.id&&(null==u?void 0:u[e.route.id]));e>=0||(0,l.UNSAFE_invariant)(!1),s=s.slice(0,Math.min(s.length,e+1))}let c=!1,d=-1;if(r&&n&&n.v7_partialHydration)for(let e=0;e<s.length;e++){let t=s[e];if((t.route.HydrateFallback||t.route.hydrateFallbackElement)&&(d=e),t.route.id){let{loaderData:e,errors:n}=r,a=t.route.loader&&void 0===e[t.route.id]&&(!n||void 0===n[t.route.id]);if(t.route.lazy||a){c=!0,s=d>=0?s.slice(0,d+1):[s[0]];break}}}return s.reduceRight((e,n,a)=>{let o;let l=!1,h=null,f=null;r&&(o=u&&n.route.id?u[n.route.id]:void 0,h=n.route.errorElement||x,c&&(d<0&&0===a?(function(e,t,r){!t&&!F[e]&&(F[e]=!0)}("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),l=!0,f=null):d===a&&(l=!0,f=n.route.hydrateFallbackElement||null)));let p=t.concat(s.slice(0,a+1)),m=()=>{let t;return t=o?h:l?f:n.route.Component?i.createElement(n.route.Component,null):n.route.element?n.route.element:e,i.createElement(D,{match:n,routeContext:{outlet:e,matches:p,isDataRoute:null!=r},children:t})};return r&&(n.route.ErrorBoundary||n.route.errorElement||0===a)?i.createElement(P,{location:r.location,revalidation:r.revalidation,component:h,error:o,children:m(),routeContext:{outlet:null,matches:p,isDataRoute:!0}}):m()},null)}(S&&S.map(e=>Object.assign({},e,{params:Object.assign({},p,e.params),pathname:(0,l.joinPaths)([m,o.encodeLocation?o.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?m:(0,l.joinPaths)([m,o.encodeLocation?o.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])})),u,r,n);return t&&R?i.createElement(h.Provider,{value:{location:s({pathname:"/",search:"",hash:"",state:null,key:"default"},a),navigationType:l.Action.Pop}},R):R}let x=i.createElement(function(){let e=T(),t=(0,l.isRouteErrorResponse)(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null;return i.createElement(i.Fragment,null,i.createElement("h2",null,"Unexpected Application Error!"),i.createElement("h3",{style:{fontStyle:"italic"}},t),r?i.createElement("pre",{style:{padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"}},r):null,null)},null);class P extends i.Component{static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:void 0!==e.error?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return void 0!==this.state.error?i.createElement(f.Provider,{value:this.props.routeContext},i.createElement(p.Provider,{value:this.state.error,children:this.props.component})):this.props.children}constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}}function D(e){let{routeContext:t,match:r,children:n}=e,a=i.useContext(u);return a&&a.static&&a.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=r.route.id),i.createElement(f.Provider,{value:t},n)}var _=((n=_||{}).UseBlocker="useBlocker",n.UseRevalidator="useRevalidator",n.UseNavigateStable="useNavigate",n);var U=((a=U||{}).UseBlocker="useBlocker",a.UseLoaderData="useLoaderData",a.UseActionData="useActionData",a.UseRouteError="useRouteError",a.UseNavigation="useNavigation",a.UseRouteLoaderData="useRouteLoaderData",a.UseMatches="useMatches",a.UseRevalidator="useRevalidator",a.UseNavigateStable="useNavigate",a.UseRouteId="useRouteId",a);function C(e){let t=i.useContext(c);return t||(0,l.UNSAFE_invariant)(!1),t}function L(e){var t;let r;let n=(t=0,(r=i.useContext(f))||(0,l.UNSAFE_invariant)(!1),r),a=n.matches[n.matches.length-1];return a.route.id||(0,l.UNSAFE_invariant)(!1),a.route.id}function A(){return L(U.UseRouteId)}function k(){let{matches:e,loaderData:t}=C(U.UseMatches);return i.useMemo(()=>e.map(e=>(0,l.UNSAFE_convertRouteMatchToUiMatch)(e,t)),[e,t])}function T(){var e;let t=i.useContext(p),r=C(U.UseRouteError),n=L(U.UseRouteError);return void 0!==t?t:null==(e=r.errors)?void 0:e[n]}let F={};function M(e){var t;let r;return t=e.context,(r=i.useContext(f).outlet)?i.createElement(b.Provider,{value:t},r):r}function N(e){(0,l.UNSAFE_invariant)(!1)}function j(e){let{basename:t="/",children:r=null,location:n,navigationType:a=l.Action.Pop,navigator:o,static:u=!1,future:c}=e;v()&&(0,l.UNSAFE_invariant)(!1);let f=t.replace(/^\/*/,"/"),p=i.useMemo(()=>({basename:f,navigator:o,static:u,future:s({v7_relativeSplatPath:!1},c)}),[f,c,o,u]);"string"==typeof n&&(n=(0,l.parsePath)(n));let{pathname:m="/",search:y="",hash:g="",state:w=null,key:b="default"}=n,E=i.useMemo(()=>{let e=(0,l.stripBasename)(m,f);return null==e?null:{location:{pathname:e,search:y,hash:g,state:w,key:b},navigationType:a}},[f,m,y,g,w,b,a]);return null==E?null:i.createElement(d.Provider,{value:p},i.createElement(h.Provider,{children:r,value:E}))}function O(e){var t;let{children:r,location:n}=e;return t=H(r),R(t,n)}i.startTransition;var B=((o=B||{})[o.pending=0]="pending",o[o.success=1]="success",o[o.error=2]="error",o);function H(e,t){void 0===t&&(t=[]);let r=[];return i.Children.forEach(e,(e,n)=>{if(!i.isValidElement(e))return;let a=[...t,n];if(e.type===i.Fragment){r.push.apply(r,H(e.props.children,a));return}e.type!==N&&(0,l.UNSAFE_invariant)(!1),!e.props.index||!e.props.children||(0,l.UNSAFE_invariant)(!1);let o={id:e.props.id||a.join("-"),caseSensitive:e.props.caseSensitive,element:e.props.element,Component:e.props.Component,index:e.props.index,path:e.props.path,loader:e.props.loader,action:e.props.action,errorElement:e.props.errorElement,ErrorBoundary:e.props.ErrorBoundary,hasErrorBoundary:null!=e.props.ErrorBoundary||null!=e.props.errorElement,shouldRevalidate:e.props.shouldRevalidate,handle:e.props.handle,lazy:e.props.lazy};e.props.children&&(o.children=H(e.props.children,a)),r.push(o)}),r}function z(e){let t={hasErrorBoundary:null!=e.ErrorBoundary||null!=e.errorElement};return e.Component&&Object.assign(t,{element:i.createElement(e.Component),Component:void 0}),e.HydrateFallback&&Object.assign(t,{hydrateFallbackElement:i.createElement(e.HydrateFallback),HydrateFallback:void 0}),e.ErrorBoundary&&Object.assign(t,{errorElement:i.createElement(e.ErrorBoundary),ErrorBoundary:void 0}),t}new Promise(()=>{})}}]);
@@ -1,5 +1,7 @@
1
+ /*! react */
2
+
1
3
  /**
2
- * React Router DOM v6.22.0
4
+ * @remix-run/router v1.15.0
3
5
  *
4
6
  * Copyright (c) Remix Software Inc.
5
7
  *
@@ -9,14 +11,14 @@
9
11
  * @license MIT
10
12
  */
11
13
 
12
- /*! react */
14
+ /*! @remix-run/router */
13
15
 
14
- /*! react */
16
+ /*! react-router */
15
17
 
16
- /*! react-dom */
18
+ /*! @remix-run/router */
17
19
 
18
20
  /**
19
- * @remix-run/router v1.15.0
21
+ * React Router DOM v6.22.0
20
22
  *
21
23
  * Copyright (c) Remix Software Inc.
22
24
  *
@@ -26,9 +28,9 @@
26
28
  * @license MIT
27
29
  */
28
30
 
29
- /*! @remix-run/router */
31
+ /*! react */
30
32
 
31
- /*! @remix-run/router */
33
+ /*! react-dom */
32
34
 
33
35
  /**
34
36
  * React Router v6.22.0
@@ -39,6 +41,4 @@
39
41
  * LICENSE.md file in the root directory of this source tree.
40
42
  *
41
43
  * @license MIT
42
- */
43
-
44
- /*! react-router */
44
+ */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@modern-js/devtools-client",
3
- "version": "0.0.0-nightly-20240305170715",
3
+ "version": "0.0.0-nightly-20240306170726",
4
4
  "engines": {
5
5
  "node": ">=14.0.0"
6
6
  },
@@ -56,16 +56,16 @@
56
56
  "ufo": "^1.3.0",
57
57
  "valtio": "^1.11.1",
58
58
  "jest": "^29",
59
- "@modern-js-app/eslint-config": "0.0.0-nightly-20240305170715",
60
- "@modern-js/app-tools": "0.0.0-nightly-20240305170715",
61
- "@modern-js/devtools-kit": "0.0.0-nightly-20240305170715",
62
- "@modern-js/eslint-config": "0.0.0-nightly-20240305170715",
63
- "@modern-js/plugin-proxy": "0.0.0-nightly-20240305170715",
64
- "@modern-js/runtime": "0.0.0-nightly-20240305170715",
65
- "@modern-js/tsconfig": "0.0.0-nightly-20240305170715",
66
- "@modern-js/utils": "0.0.0-nightly-20240305170715",
67
- "@modern-js/types": "0.0.0-nightly-20240305170715",
68
- "@scripts/jest-config": "0.0.0-nightly-20240305170715"
59
+ "@modern-js-app/eslint-config": "0.0.0-nightly-20240306170726",
60
+ "@modern-js/app-tools": "0.0.0-nightly-20240306170726",
61
+ "@modern-js/devtools-kit": "0.0.0-nightly-20240306170726",
62
+ "@modern-js/plugin-proxy": "0.0.0-nightly-20240306170726",
63
+ "@modern-js/eslint-config": "0.0.0-nightly-20240306170726",
64
+ "@modern-js/tsconfig": "0.0.0-nightly-20240306170726",
65
+ "@modern-js/runtime": "0.0.0-nightly-20240306170726",
66
+ "@modern-js/types": "0.0.0-nightly-20240306170726",
67
+ "@modern-js/utils": "0.0.0-nightly-20240306170726",
68
+ "@scripts/jest-config": "0.0.0-nightly-20240306170726"
69
69
  },
70
70
  "scripts": {
71
71
  "reset": "npx rimraf ./**/node_modules",
@@ -1,2 +0,0 @@
1
- /*! For license information please see 637.4747e32e.js.LICENSE.txt */
2
- (self.webpackChunkmodernjsDevtools=self.webpackChunkmodernjsDevtools||[]).push([["637"],{60769:function(e,M,t){"use strict";let N,r,j,D;var s=Object.create,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,g=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,c=(e,M,t,N)=>{if(M&&"object"==typeof M||"function"==typeof M)for(let r of n(M))!u.call(e,r)&&r!==t&&i(e,r,{get:()=>M[r],enumerable:!(N=o(M,r))||N.enumerable});return e},I={};((e,M)=>{for(var t in M)i(e,t,{get:M[t],enumerable:!0})})(I,{MessagePortChannel:()=>T,MessagePortTimeout:()=>a,WebSocketChannel:()=>O});e.exports=(N=I,c(i({},"__esModule",{value:!0}),N));var y=t("89677");var z=(D=null!=(r=t("16272"))?s(g(r)):{},c(r&&r.__esModule?D:i(D,"default",{value:r,enumerable:!0}),r));class O{static link(e){return new Promise((M,t)=>{let N=new O(e);e.readyState===e.OPEN?M(N):(e.addEventListener("open",()=>M(N),{once:!0}),e.addEventListener("error",t,{once:!0}),e.addEventListener("close",t,{once:!0}),setTimeout(t,1e3))})}get handlers(){return{on:this.on.bind(this),post:this.post.bind(this),deserialize:this.deserialize.bind(this),serialize:this.serialize.bind(this)}}post(e,...M){if(M.length)throw Error("Unexpected extra parameters.");this.ws.send(e)}on(e){this.ws.onmessage=e}serialize(e){return z.stringify([e])}deserialize(e){return z.parse(e.data.toString())[0]}constructor(e){this.ws=e,Object.assign(this,{on:this.on.bind(this),post:this.post.bind(this),deserialize:this.deserialize.bind(this),serialize:this.serialize.bind(this)})}}class a extends Error{constructor(){super("Connection to target message channel port timed out")}}class T{static link(e,M="channel:connect"){return new Promise((t,N)=>{let r=(0,y.nanoid)(),{port1:j,port2:D}=new MessageChannel,s=e=>{if(e.data.tag===M&&"accepted"===e.data.type)e.data.id===r&&(D.removeEventListener("message",s),t(new T(D)))};D.addEventListener("messageerror",N,{once:!0}),D.addEventListener("message",s),D.start(),e.postMessage({tag:M,type:"request",id:r},"*",[j])})}static wait(e,M="channel:connect"){return new Promise((t,N)=>{let r=async j=>{let{data:D}=j;if(!D||"object"!=typeof D||D.tag!==M||"request"!==D.type)return;e.removeEventListener("message",r);let s=j.ports[0];s?(s.postMessage({type:"accepted",id:D.id,tag:M}),t(new T(s))):N(Error("Missing message channel port from remote."))};e.addEventListener("message",r)})}get handlers(){return{on:this.on.bind(this),post:this.post.bind(this)}}post(e,...M){if(M.length)throw Error("Unexpected extra parameters.");this.port.postMessage(e)}on(e){this.port.addEventListener("message",M=>e(M.data))}constructor(e){this.port=e,this.port.start(),Object.assign(this,{on:this.on.bind(this),post:this.post.bind(this)})}}},72215:function(e,M,t){"use strict";let N,r,j,D;var s=Object.create,i=Object.defineProperty,o=Object.getOwnPropertyDescriptor,n=Object.getOwnPropertyNames,g=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty,c=(e,M,t,N)=>{if(M&&"object"==typeof M||"function"==typeof M)for(let r of n(M))!u.call(e,r)&&r!==t&&i(e,r,{get:()=>M[r],enumerable:!(N=o(M,r))||N.enumerable});return e},I={};((e,M)=>{for(var t in M)i(e,t,{get:M[t],enumerable:!0})})(I,{AnnouncementDefinition:()=>T,AssetDefinition:()=>a,ClientDefinition:()=>L,DoctorDefinition:()=>A,NameDefinition:()=>z,PackageDefinition:()=>O});e.exports=(N=I,c(i({},"__esModule",{value:!0}),N));var y=(D=null!=(r=t("34070"))?s(g(r)):{},c(r&&r.__esModule?D:i(D,"default",{value:r,enumerable:!0}),r));class z{constructor(){this.formalName="Modern.js",this.casualName="modern.js",this.prefixName="_modern_js"}}class O{constructor(){this.appTools="@modern-js/app-tools"}}class a{constructor(){this.logo=y.default}}class T{constructor(){this.src="https://raw.githubusercontent.com/web-infra-dev/modern.js/main/ANNOUNCEMENT.md",this.fallback="https://modernjs.dev/"}}class A{constructor(){this.home="https://rsdoctor.dev",this.quickStart="https://rsdoctor.dev/guide/start/quick-start"}}class L{constructor(){this.name=new z,this.packages=new O,this.assets=new a,this.doctor=new A,this.announcement=new T}}},74966:function(e){"use strict";let M;var t=Object.defineProperty,N=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,j=Object.prototype.hasOwnProperty,D=(e,M,D,s)=>{if(M&&"object"==typeof M||"function"==typeof M)for(let i of r(M))!j.call(e,i)&&i!==D&&t(e,i,{get:()=>M[i],enumerable:!(s=N(M,i))||s.enumerable});return e},s={};((e,M)=>{for(var N in M)t(e,N,{get:M[N],enumerable:!0})})(s,{ROUTE_BASENAME:()=>i});e.exports=(M=s,D(t({},"__esModule",{value:!0}),M));let i="/__devtools"},34070:function(e){"use strict";let M;var t=Object.defineProperty,N=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,j=Object.prototype.hasOwnProperty,D=(e,M,D,s)=>{if(M&&"object"==typeof M||"function"==typeof M)for(let i of r(M))!j.call(e,i)&&i!==D&&t(e,i,{get:()=>M[i],enumerable:!(s=N(M,i))||s.enumerable});return e},s={};((e,M)=>{for(var N in M)t(e,N,{get:M[N],enumerable:!0})})(s,{default:()=>i});e.exports=(M=s,D(t({},"__esModule",{value:!0}),M));var i="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMiIGhlaWdodD0iMzMiIHZpZXdCb3g9IjAgMCA0NSAzMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMzEzOjUxNDkpIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTguODIwNzcgMjAuMjg2OUM3Ljg0NzU5IDE3LjE1NzEgNy45NjgyNiAxMy43ODk0IDkuMTYyOTggMTAuNzM3M0MxMC4zNTc3IDcuNjg1MjggMTIuNTU1NCA1LjEzMDU3IDE1LjM5NDYgMy40OTMyQzE4LjIzMzkgMS44NTU4MyAyMS41NDU4IDEuMjMzMjYgMjQuNzg1OCAxLjcyNzg1QzI4LjAyNTkgMi4yMjI0NSAzMS4wMDEyIDMuODA0NzYgMzMuMjIyNyA2LjIxNDY1QzMyLjY2MTggNi40OTAxMSAzMi4wODY5IDYuNzc2NTQgMzEuNDk4MSA3LjA3Mzk1QzI5LjUzNjggNS4xMTc5MSAyNi45ODU1IDMuODYyODcgMjQuMjM5MSAzLjUwMzFDMjEuNDkyNiAzLjE0MzM0IDE4LjcwNDEgMy42OTg5IDE2LjMwNTIgNS4wODM4MUMxMy45MDYzIDYuNDY4NzIgMTIuMDMwOSA4LjYwNTczIDEwLjk2OTEgMTEuMTY0MUM5LjkwNzI1IDEzLjcyMjQgOS43MTgzNiAxNi41NTk0IDEwLjQzMTYgMTkuMjM2QzkuODc4NjkgMTkuNTg5MyA5LjM0MTc0IDE5LjkzOTYgOC44MjA3NyAyMC4yODY5Wk00My4wMDAxIDMuOTU1NTJDNDIuOTE4NyAzLjkzMzYyIDQyLjgzMTkgMy45NDQ5NyA0Mi43NTg4IDMuOTg3MDVINDIuNzY3OEMzOC41ODAyIDUuODE5NjIgMzQuNDU1NyA3Ljc4NjE5IDMwLjQwMDUgOS44ODMxOEwyMi41MTU4IDYuMzQ2MzlDMjIuMzY2NyA2LjI4MDc2IDIyLjIwNDMgNi4yNTA5MSAyMi4wNDE2IDYuMjU5MjNDMjEuODc4OCA2LjI2NzU1IDIxLjcyMDMgNi4zMTM4IDIxLjU3ODcgNi4zOTQzQzIxLjQzNzkgNi40NzUxNyAyMS4zMTgyIDYuNTg4MDYgMjEuMjI5MyA2LjcyMzgzQzIxLjE0MDMgNi44NTk2IDIxLjA4NDYgNy4wMTQ0MyAyMS4wNjY3IDcuMTc1NzVMMjAuMzA5MiAxMy45ODQzTDE2LjUzNjYgMTIuMzgyNUMxNi4zOTA4IDEyLjMyMDIgMTYuMjMyNSAxMi4yOTI0IDE2LjA3NDIgMTIuMzAxM0MxNS45MTU5IDEyLjMxMDIgMTUuNzYxOCAxMi4zNTU1IDE1LjYyMzggMTIuNDMzOEMxNS40ODU5IDEyLjUxMiAxNS4zNjc5IDEyLjYyMSAxNS4yNzkgMTIuNzUyNEMxNS4xOTAxIDEyLjg4MzcgMTUuMTMyOCAxMy4wMzM4IDE1LjExMTQgMTMuMTkwOUwxNC4yODQzIDE5LjEzNTdDMTAuMTQzMiAyMS43NjEzIDYuMDkxOCAyNC41MzE5IDIuMTM3ODkgMjcuNDQyOEMyLjA3MTk1IDI3LjQ4ODUgMi4wMjU1NyAyNy41NTczIDIuMDA3ODggMjcuNjM1NUMxLjk5MDIgMjcuNzEzOCAyLjAwMjUgMjcuNzk1OCAyLjA0MjM5IDI3Ljg2NTRDMi4wODIyNyAyNy45MzUgMi4xNDY4MiAyNy45ODcxIDIuMjIzMjcgMjguMDExNEMyLjI5OTcyIDI4LjAzNTcgMi4zODI1MiAyOC4wMzA1IDIuNDU1MjggMjcuOTk2N0M5LjYyNTI1IDI0LjgzODMgMTYuNjIxNCAyMS4yOTkyIDIzLjQxNCAxNy4zOTQ2QzMwLjE5MjggMTMuNDYzIDM2Ljc1NjMgOS4xNzEzNSA0My4wNzYyIDQuNTM3OTdDNDMuMTQ5MyA0LjQ5NTg4IDQzLjIwMjYgNC40MjY1IDQzLjIyNDUgNC4zNDUwOEM0My4yNDY0IDQuMjYzNjYgNDMuMjM1IDQuMTc2ODcgNDMuMTkyOSA0LjEwMzgyQzQzLjE1MDkgNC4wMzA3NiA0My4wODE1IDMuOTc3NDIgNDMuMDAwMSAzLjk1NTUyWk0xNi4yOTM5IDE3Ljg3NzJDMTcuNDU4OCAxNy4xNTY3IDE4LjYzMDcgMTYuNDQ3NiAxOS44MDkzIDE1Ljc1TDE2Ljc3MzEgMTQuNDYwNEwxNi4yOTM5IDE3Ljg3NzJaTTIyLjA5MjEgMTQuNDE3OUMyNC4xNTc2IDEzLjIyOTkgMjYuMjQzMSAxMi4wNzY3IDI4LjM0NzkgMTAuOTU4OUwyMi43NTU0IDguNDUxMjRMMjIuMDkyMSAxNC40MTc5Wk0zMy4wNzc5IDIyLjk2MTRDMzQuNDU4IDIwLjg5MjggMzUuMTk0OSAxOC40NjIxIDM1LjE5NTggMTUuOTc1NEMzNS4xOTY0IDE0Ljg5MiAzNS4wNTY1IDEzLjgxMzEgMzQuNzc5NiAxMi43NjU3QzM1LjMzMjUgMTIuNDAyNSAzNS44Njk0IDEyLjA0NzIgMzYuMzkwNCAxMS42OTk4QzM3LjM1NDcgMTQuODI2NSAzNy4yMjg1IDE4LjE4NzkgMzYuMDMyNiAyMS4yMzM1QzM0LjgzNjcgMjQuMjc5MSAzMi42NDIgMjYuODI4MiAyOS44MDc5IDI4LjQ2MzRDMjYuOTczOCAzMC4wOTg2IDIzLjY2ODUgMzAuNzIyOCAyMC40MzMzIDMwLjIzMzlDMTcuMTk4IDI5Ljc0NDkgMTQuMjI0OCAyOC4xNzE3IDEyLjAwMDUgMjUuNzcyMUMxMi41NTM0IDI1LjQ5NjYgMTMuMTI5MyAyNS4yMTAyIDEzLjcyODEgMjQuOTEyOEMxNS40OTM0IDI2LjY2NDEgMTcuNzM3NSAyNy44NTM4IDIwLjE3NzggMjguMzMxOUMyMi42MTggMjguODEgMjUuMTQ1MiAyOC41NTUyIDI3LjQ0MDggMjcuNTk5NEMyOS43MzY1IDI2LjY0MzcgMzEuNjk3OSAyNS4wMjk5IDMzLjA3NzkgMjIuOTYxNFpNNDEuOTEgMjQuMzU3NkM0Mi4xNTMxIDIzLjk5MzcgNDIuMjgyOSAyMy41NjU5IDQyLjI4MjkgMjMuMTI4M0M0Mi4yODI5IDIyLjU0MTUgNDIuMDQ5NyAyMS45Nzg3IDQxLjYzNDggMjEuNTYzN0M0MS4yMTk4IDIxLjE0ODggNDAuNjU3MSAyMC45MTU3IDQwLjA3MDIgMjAuOTE1N0MzOS42MzI2IDIwLjkxNTcgMzkuMjA0OCAyMS4wNDU0IDM4Ljg0MSAyMS4yODg2QzM4LjQ3NzEgMjEuNTMxNyAzOC4xOTM1IDIxLjg3NzMgMzguMDI2IDIyLjI4MTZDMzcuODU4NSAyMi42ODU5IDM3LjgxNDcgMjMuMTMwOCAzNy45MDAxIDIzLjU2QzM3Ljk4NTUgMjMuOTg5MiAzOC4xOTYyIDI0LjM4MzQgMzguNTA1NiAyNC42OTI5QzM4LjgxNTEgMjUuMDAyMyAzOS4yMDk0IDI1LjIxMzEgMzkuNjM4NiAyNS4yOTg0QzQwLjA2NzggMjUuMzgzOCA0MC41MTI3IDI1LjM0IDQwLjkxNyAyNS4xNzI1QzQxLjMyMTMgMjUuMDA1IDQxLjY2NjggMjQuNzIxNCA0MS45MSAyNC4zNTc2Wk02Ljk4NTM4IDcuODM3NDNDNi45ODUzOCA4LjA1NDg5IDYuOTIwODQgOC4yNjc0NSA2Ljc5OTk3IDguNDQ4MjJDNi42NzkwOSA4LjYyODk5IDYuNTA3MzMgOC43Njk4MyA2LjMwNjM3IDguODUyOTFDNi4xMDU0MSA4LjkzNTk5IDUuODg0MzEgOC45NTc1OCA1LjY3MTA4IDguOTE0OTNDNS40NTc4NCA4Ljg3MjI5IDUuMjYyMDMgOC43NjczNCA1LjEwODQ4IDguNjEzMzdDNC45NTQ5MiA4LjQ1OTM5IDQuODUwNTEgOC4yNjMzMSA0LjgwODQ1IDguMDQ5OTZDNC43NjYzOSA3LjgzNjYyIDQuNzg4NiA3LjYxNTU4IDQuODcyMjIgNy40MTQ4NUM0Ljk1NTg1IDcuMjE0MTIgNS4wOTcxNSA3LjA0MjcyIDUuMjc4MjUgNi45MjIzNEM1LjQ1OTM0IDYuODAxOTYgNS42NzIwNyA2LjczODAxIDUuODg5NTMgNi43Mzg2QzYuMDMzNjkgNi43Mzg2IDYuMTc2NDQgNi43NjcwNCA2LjMwOTU5IDYuODIyM0M2LjQ0Mjc0IDYuODc3NTYgNi41NjM2NyA2Ljk1ODU1IDYuNjY1NDYgNy4wNjA2M0M2Ljc2NzI2IDcuMTYyNyA2Ljg0NzkyIDcuMjgzODYgNi45MDI4MSA3LjQxNzE1QzYuOTU3NzEgNy41NTA0NSA2Ljk4NTc3IDcuNjkzMjcgNi45ODUzOCA3LjgzNzQzWiIgZmlsbD0iIzRFQ0FGRiIvPjwvZz48L3N2Zz4="},31656:function(e){"use strict";let M;var t=Object.defineProperty,N=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,j=Object.prototype.hasOwnProperty,D=(e,M,D,s)=>{if(M&&"object"==typeof M||"function"==typeof M)for(let i of r(M))!j.call(e,i)&&i!==D&&t(e,i,{get:()=>M[i],enumerable:!(s=N(M,i))||s.enumerable});return e};e.exports=(M={},D(t({},"__esModule",{value:!0}),M))},10487:function(e,M,t){"use strict";let N;var r=Object.defineProperty,j=Object.getOwnPropertyDescriptor,D=Object.getOwnPropertyNames,s=Object.prototype.hasOwnProperty,i=(e,M,t,N)=>{if(M&&"object"==typeof M||"function"==typeof M)for(let i of D(M))!s.call(e,i)&&i!==t&&r(e,i,{get:()=>M[i],enumerable:!(N=j(M,i))||N.enumerable});return e},o=(e,M,t)=>(i(e,M,"default"),t&&i(t,M,"default")),n={};e.exports=(N=n,i(r({},"__esModule",{value:!0}),N)),o(n,t("72215"),e.exports),o(n,t("31656"),e.exports),o(n,t("85076"),e.exports),o(n,t("74966"),e.exports),o(n,t("60769"),e.exports)},85076:function(e){"use strict";let M;var t=Object.defineProperty,N=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,j=Object.prototype.hasOwnProperty,D=(e,M,D,s)=>{if(M&&"object"==typeof M||"function"==typeof M)for(let i of r(M))!j.call(e,i)&&i!==D&&t(e,i,{get:()=>M[i],enumerable:!(s=N(M,i))||s.enumerable});return e},s={};((e,M)=>{for(var N in M)t(e,N,{get:M[N],enumerable:!0})})(s,{applyShortenAliases:()=>i});function i(e,M){if(!M)return e;let t=e;for(let e of M)t=t.replace(e.replace,e.to);return t}e.exports=(M=s,D(t({},"__esModule",{value:!0}),M))},78960:function(e,M,t){"use strict";t.r(M),t.d(M,{LoadingIcon:function(){return s}});var N=t("90247"),r=t("55709"),j=t("86834");t("5872");var D=t("16648");let s=e=>(0,j.jsx)("svg",(0,r._)((0,N._)({xmlns:"http://www.w3.org/2000/svg",className:D.loading,width:"24",height:"24",viewBox:"0 0 24 24",strokeWidth:"3",fill:"none",strokeLinecap:"round",strokeLinejoin:"round"},e),{children:(0,j.jsx)("circle",{cx:"12",cy:"12",r:"10",strokeDasharray:"56.548667764616276",strokeDashoffset:"14.137166941154069"})}))},76562:function(e,M,t){"use strict";t.r(M),t.d(M,{Loading:function(){return o}});var N=t("90247"),r=t("55709"),j=t("86834"),D=t("83982"),s=t("78960"),i=t("2411");let o=e=>(0,j.jsx)(D.Box,(0,r._)((0,N._)({className:i.container},e),{children:(0,j.jsx)(s.LoadingIcon,{})}))},428:function(e,M,t){"use strict";t.r(M);var N=t("78960");t.es(N,M);var r=t("76562");t.es(r,M)},19449:function(e,M,t){"use strict";t.r(M),t("95818"),t("15787"),t("62940"),t("31401"),t("20578"),t("72595"),t("71614"),t("57762"),t("53049"),t("59890"),t("52489"),t("37179"),t("45059"),t("48759"),t("7783"),t("20964"),t("74366"),t("14078"),t("10029"),t("21992"),t("92271"),t("83318"),t("92111"),t("72656"),t("71851"),t("5026"),t("87361"),t("54957"),t("52027"),t("48668"),t("42160"),t("36480"),t("12577"),t("64045"),t("71217"),t("29640"),t("11288"),t("91809"),t("43990"),t("41484"),t("41910"),t("79956"),t("43308"),t("87295"),t("60315"),t("59424"),t("97219"),t("3712"),t("44117"),t("45434"),t("75460"),t("44503"),t("76383"),t("41195"),t("4331"),t("5780"),t("51826"),t("2392"),t("70157"),t("80495"),t("87313"),t("56273"),t("75069"),t("3091"),t("8256"),t("65244"),t("31867"),t("56821"),t("12035"),t("26249"),t("22584"),t("57497"),t("56221"),t("25283"),t("44913"),t("43743"),t("46911"),t("98617"),t("75190"),t("89765"),t("2913"),t("71242"),t("47062"),t("5377"),t("19971"),t("75779"),t("36800"),t("79148"),t("99803"),t("84036"),t("76728"),t("26548"),t("54615"),t("16982"),t("67393"),t("17781"),t("83418"),t("92417"),t("29267"),t("75182"),t("51297"),t("5732"),t("80907"),t("24638"),t("25983"),t("12620"),t("42393"),t("11935"),t("31938"),t("42542"),t("29910"),t("97630"),t("1016"),t("31922"),t("76739"),t("66354"),t("14942"),t("66066"),t("71829"),t("59186"),t("81660"),t("48053"),t("76959"),t("53183"),t("8532"),t("6868"),t("71859"),t("5574"),t("36825"),t("93567"),t("3200"),t("3238"),t("21862"),t("69660"),t("33350"),t("45661"),t("62323"),t("25221"),t("71510"),t("5258"),t("52348"),t("63305"),t("82997"),t("64667"),t("76544"),t("72499"),t("4600"),t("7229"),t("78394"),t("71874"),t("54626"),t("11057"),t("76074"),t("54925"),t("8254"),t("76805"),t("98846"),t("84691"),t("49191"),t("50558"),t("18031"),t("92816"),t("53423"),t("10166"),t("88849"),t("99885"),t("83323"),t("57101"),t("68883"),t("51104"),t("14218"),t("43421"),t("53116"),t("66923"),t("68961"),t("45259"),t("2531"),t("74814"),t("80401"),t("58627"),t("92798"),t("97748"),t("34999"),t("25911"),t("94384"),t("15056"),t("86706"),t("48373"),t("96709"),t("82176"),t("82495"),t("44477"),t("79944"),t("97461"),t("98451"),t("31119"),t("92881"),t("85304"),t("14182"),t("58922"),t("15919"),t("55723"),t("85373"),t("61554"),t("42634"),t("34414"),t("94117"),t("84733"),t("40184"),t("52450"),t("23101"),t("80779"),t("52823"),t("37799"),t("25837"),t("50375"),t("18001"),t("33059"),t("23566"),t("76270"),t("64983"),t("80072"),t("79061"),t("35397"),t("96746"),t("76462"),t("37850"),t("68590"),t("1733"),t("39779"),t("51558"),t("5794"),t("92265"),t("79914"),t("29294"),t("32451"),t("26743"),t("26579"),t("41773"),t("75281"),t("76682"),t("49985"),t("42067"),t("93220"),t("7549"),t("99623"),t("72814"),t("52253"),t("93625"),t("92180"),t("154"),t("77904"),t("76179"),t("1587"),t("39177"),t("45109"),t("1336"),t("78136"),t("7005"),t("84960"),t("32642"),t("99149"),t("29814"),t("75870"),t("71571"),t("77313"),t("95577"),t("72340"),t("20995"),t("1254"),t("84594"),t("37806"),t("33132"),t("83367"),t("90602"),t("52400"),t("84518"),t("27093"),t("44904"),t("65272"),t("15262"),t("65308"),t("70241"),t("17905"),t("39022"),t("34353"),t("49128"),t("72104"),t("1676"),t("50882")},90915:function(e,M,t){"use strict";t.r(M),window.__assetPrefix__="/__devtools"}}]);
@@ -1 +0,0 @@
1
- !function(){var e,t,n,r,o,a,i,c,u,l,f,d,s,p,b={},g={};function h(e){var t=g[e];if(void 0!==t)return t.exports;var n=g[e]={id:e,loaded:!1,exports:{}};return b[e].call(n.exports,n,n.exports,h),n.loaded=!0,n.exports}h.m=b,h.es=function(e,t){return Object.keys(e).forEach(function(n){"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[n]}})}),e},h.f={},h.e=function(e){return Promise.all(Object.keys(h.f).reduce(function(t,n){return h.f[n](e,t),t},[]))},h.p="/__devtools/",e=[],h.O=function(t,n,r,o){if(n){o=o||0;for(var a=e.length;a>0&&e[a-1][2]>o;a--)e[a]=e[a-1];e[a]=[n,r,o];return}for(var i=1/0,a=0;a<e.length;a++){for(var n=e[a][0],r=e[a][1],o=e[a][2],c=!0,u=0;u<n.length;u++)i>=o&&Object.keys(h.O).every(function(e){return h.O[e](n[u])})?n.splice(u--,1):(c=!1,o<i&&(i=o));if(c){e.splice(a--,1);var l=r();void 0!==l&&(t=l)}}return t},h.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),h.d=function(e,t){for(var n in t)h.o(t,n)&&!h.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},h.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},h.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return h.d(t,{a:t}),t},n=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},h.t=function(e,r){if(1&r&&(e=this(e)),8&r||"object"==typeof e&&e&&(4&r&&e.__esModule||16&r&&"function"==typeof e.then))return e;var o=Object.create(null);h.r(o);var a={};t=t||[null,n({}),n([]),n(n)];for(var i=2&r&&e;"object"==typeof i&&!~t.indexOf(i);i=n(i))Object.getOwnPropertyNames(i).forEach(function(t){a[t]=function(){return e[t]}});return a.default=function(){return e},h.d(o,a),o},h.nmd=function(e){return e.paths=[],!e.children&&(e.children=[]),e},h.nc=void 0,h.u=function(e){return"static/js/async/"+(({127:"client_page",161:"client_overview/page",299:"client_react/(tab)/layout",361:"client_context/page",483:"client_react/(tab)/page",488:"client_doctor/page",504:"client_context/layout",518:"client_config/layout",631:"client_pages/layout",718:"client_pages/page",730:"client_headers/editor/page",752:"client_react/offscreen/page",818:"client_context/framework/page",860:"client_headers/welcome/page",925:"client_headers/layout",943:"client_config/page",945:"client_react/page",958:"client_context/builder/page",963:"client_headers/page"})[e]||e)+"."+({127:"5e12b570",161:"085b846a",299:"b25a0a9b",361:"635cc0cb",447:"5cb18bd5",483:"3317c84a",488:"c4455408",504:"d57d4a8b",518:"ba4d2992",631:"84628bc0",718:"22c37b5f",730:"ec9b48b1",752:"44e6922b",769:"e85f7c76",818:"8cd09499",851:"ee5298ce",860:"1af1ede1",925:"39145572",943:"a63f5a35",945:"5660dc8e",958:"f6f5227e",963:"d2a0f47d"})[e]+".js"},h.k=function(e){return"static/css/async/"+({161:"client_overview/page",488:"client_doctor/page",631:"client_pages/layout",718:"client_pages/page",730:"client_headers/editor/page",925:"client_headers/layout"})[e]+"."+({161:"8b92f0d4",488:"36cc31f0",631:"40fc6abc",718:"caa31a02",730:"abdb11b6",925:"f58ce7d3"})[e]+".css"},r={},o="modernjsDevtools:",h.l=function(e,t,n,a){if(r[e]){r[e].push(t);return}if(void 0!==n){for(var i,c,u=document.getElementsByTagName("script"),l=0;l<u.length;l++){var f=u[l];if(f.getAttribute("src")==e||f.getAttribute("data-webpack")==o+n){i=f;break}}}!i&&(c=!0,(i=document.createElement("script")).charset="utf-8",i.timeout=120,h.nc&&i.setAttribute("nonce",h.nc),i.setAttribute("data-webpack",o+n),i.src=e),r[e]=[t];var d=function(t,n){i.onerror=i.onload=null,clearTimeout(s);var o=r[e];if(delete r[e],i.parentNode&&i.parentNode.removeChild(i),o&&o.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(d.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=d.bind(null,i.onerror),i.onload=d.bind(null,i.onload),c&&document.head.appendChild(i)},h.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a={242:0},h.f.j=function(e,t){var n=h.o(a,e)?a[e]:void 0;if(0!==n){if(n)t.push(n[2]);else if(242!=e){var r=new Promise(function(t,r){n=a[e]=[t,r]});t.push(n[2]=r);var o=h.p+h.u(e),i=Error();h.l(o,function(t){if(h.o(a,e)&&(0!==(n=a[e])&&(a[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}else a[e]=0}},h.O.j=function(e){return 0===a[e]},i=function(e,t){var n=t[0],r=t[1],o=t[2],i,c,u=0;if(n.some(function(e){return 0!==a[e]})){for(i in r)h.o(r,i)&&(h.m[i]=r[i]);if(o)var l=o(h)}for(e&&e(t);u<n.length;u++)c=n[u],h.o(a,c)&&a[c]&&a[c][0](),a[c]=0;return h.O(l)},(c=self.webpackChunkmodernjsDevtools=self.webpackChunkmodernjsDevtools||[]).forEach(i.bind(null,0)),c.push=i.bind(null,c.push.bind(c)),u={101:0,118:0,126:0,242:0,58:0,637:0,707:0,768:0},l="webpack",f="data-webpack-loading",d=function(e,t,n,r){var o,a,i="chunk-"+e;if(!r){for(var c=document.getElementsByTagName("link"),u=0;u<c.length;u++){var d=c[u],s=d.getAttribute("href")||d.href;if(s&&!s.startsWith(h.p)&&(s=h.p+(s.startsWith("/")?s.slice(1):s)),"stylesheet"==d.rel&&(s&&s.startsWith(t)||d.getAttribute("data-webpack")==l+":"+i)){o=d;break}}if(!n)return o}!o&&(a=!0,(o=document.createElement("link")).setAttribute("data-webpack",l+":"+i),o.setAttribute(f,1),o.rel="stylesheet",o.href=t);var p=function(e,t){if(o.onerror=o.onload=null,o.removeAttribute(f),clearTimeout(b),t&&"load"!=t.type&&o.parentNode.removeChild(o),n(t),e)return e(t)};if(o.getAttribute(f)){var b=setTimeout(p.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=p.bind(null,o.onerror),o.onload=p.bind(null,o.onload)}else p(void 0,{type:"load",target:o});return r?r.parentNode.insertBefore(o,r):a&&document.head.appendChild(o),o},h.f.css=function(e,t){var n=h.o(u,e)?u[e]:void 0;if(0!==n){if(n)t.push(n[2]);else if(/^(4(00|62|88)|161|55|567|631|718|730|925)$/.test(e)){var r=new Promise(function(t,r){n=u[e]=[t,r]});t.push(n[2]=r);var o=h.p+h.k(e),a=Error();d(e,o,function(t){if(h.o(u,e)&&(0!==(n=u[e])&&(u[e]=void 0),n)){if("load"!==t.type){var r=t&&t.type,o=t&&t.target&&t.target.src;a.message="Loading css chunk "+e+" failed.\n("+r+": "+o+")",a.name="ChunkLoadError",a.type=r,a.request=o,n[1](a)}else n[0]()}})}else u[e]=0}},s=function(e,t){var n=t[0];e&&e(t);for(var r=0;r<n.length;r++)void 0===u[n[r]]&&(u[n[r]]=0)},(p=self.webpackChunkmodernjsDevtools=self.webpackChunkmodernjsDevtools||[]).forEach(s.bind(null,0)),p.push=s.bind(null,p.push.bind(p))}();