@techdocs/cli 1.5.0-next.2 → 1.5.0

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.
Files changed (125) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/embedded-app/.config-schema.json +45 -0
  3. package/dist/embedded-app/index.html +1 -1
  4. package/dist/embedded-app/static/1032.96cef90d.chunk.js +5 -0
  5. package/dist/embedded-app/static/1032.96cef90d.chunk.js.map +1 -0
  6. package/dist/embedded-app/static/1105.ac144a87.chunk.js +5 -0
  7. package/dist/embedded-app/static/1105.ac144a87.chunk.js.map +1 -0
  8. package/dist/embedded-app/static/184.5623ac15.chunk.js +5 -0
  9. package/dist/embedded-app/static/184.5623ac15.chunk.js.map +1 -0
  10. package/dist/embedded-app/static/2440.240e2610.chunk.js +5 -0
  11. package/dist/embedded-app/static/2440.240e2610.chunk.js.map +1 -0
  12. package/dist/embedded-app/static/2924.b757596e.chunk.js +3 -0
  13. package/dist/embedded-app/static/2924.b757596e.chunk.js.map +1 -0
  14. package/dist/embedded-app/static/3487.bf80060c.chunk.js +5 -0
  15. package/dist/embedded-app/static/3487.bf80060c.chunk.js.map +1 -0
  16. package/dist/embedded-app/static/3893.0eb40023.chunk.js +3 -0
  17. package/dist/embedded-app/static/3893.0eb40023.chunk.js.map +1 -0
  18. package/dist/embedded-app/static/4966.9cb67949.chunk.js +49 -0
  19. package/dist/embedded-app/static/4966.9cb67949.chunk.js.map +1 -0
  20. package/dist/embedded-app/static/5458.f510f1d2.chunk.js +5 -0
  21. package/dist/embedded-app/static/5458.f510f1d2.chunk.js.map +1 -0
  22. package/dist/embedded-app/static/5877.fa5d49bb.chunk.js +6 -0
  23. package/dist/embedded-app/static/5877.fa5d49bb.chunk.js.map +1 -0
  24. package/dist/embedded-app/static/5914.412625b0.chunk.js +3 -0
  25. package/dist/embedded-app/static/5914.412625b0.chunk.js.map +1 -0
  26. package/dist/embedded-app/static/6051.5b06b988.chunk.js +4 -0
  27. package/dist/embedded-app/static/{6051.9a397327.chunk.js.map → 6051.5b06b988.chunk.js.map} +1 -1
  28. package/dist/embedded-app/static/7670.dce585cd.chunk.js +3 -0
  29. package/dist/embedded-app/static/{7670.714e8960.chunk.js.map → 7670.dce585cd.chunk.js.map} +1 -1
  30. package/dist/embedded-app/static/7750.f3e35b68.chunk.js +8 -0
  31. package/dist/embedded-app/static/7750.f3e35b68.chunk.js.map +1 -0
  32. package/dist/embedded-app/static/7893.67e0b03f.chunk.js +3 -0
  33. package/dist/embedded-app/static/7893.67e0b03f.chunk.js.map +1 -0
  34. package/dist/embedded-app/static/8629.18b8b029.chunk.js +7 -0
  35. package/dist/embedded-app/static/8629.18b8b029.chunk.js.map +1 -0
  36. package/dist/embedded-app/static/8662.e8af541f.chunk.js +3 -0
  37. package/dist/embedded-app/static/8662.e8af541f.chunk.js.map +1 -0
  38. package/dist/embedded-app/static/8951.b8daca92.chunk.js +3 -0
  39. package/dist/embedded-app/static/8951.b8daca92.chunk.js.map +1 -0
  40. package/dist/embedded-app/static/9545.3ea2318c.chunk.js +5 -0
  41. package/dist/embedded-app/static/9545.3ea2318c.chunk.js.map +1 -0
  42. package/dist/embedded-app/static/9598.c8137318.chunk.js +3 -0
  43. package/dist/embedded-app/static/9598.c8137318.chunk.js.map +1 -0
  44. package/dist/embedded-app/static/967.c3c74dec.chunk.js +15 -0
  45. package/dist/embedded-app/static/967.c3c74dec.chunk.js.map +1 -0
  46. package/dist/embedded-app/static/9770.18f87a62.chunk.js +5 -0
  47. package/dist/embedded-app/static/9770.18f87a62.chunk.js.map +1 -0
  48. package/dist/embedded-app/static/main.04af2edd.js +487 -0
  49. package/dist/embedded-app/static/main.04af2edd.js.map +1 -0
  50. package/dist/embedded-app/static/module-i18next.db8a27ed.js +3 -0
  51. package/dist/embedded-app/static/{module-i18next.3eb80014.js.map → module-i18next.db8a27ed.js.map} +1 -1
  52. package/dist/embedded-app/static/module-lodash.8166f005.js +29 -0
  53. package/dist/embedded-app/static/module-lodash.8166f005.js.map +1 -0
  54. package/dist/embedded-app/static/{module-material-table.1d463a12.js → module-material-table.0f5635dd.js} +2 -2
  55. package/dist/embedded-app/static/{module-material-table.1d463a12.js.map → module-material-table.0f5635dd.js.map} +1 -1
  56. package/dist/embedded-app/static/module-material-ui.1b712255.js +24 -0
  57. package/dist/embedded-app/static/module-material-ui.1b712255.js.map +1 -0
  58. package/dist/embedded-app/static/{module-react-beautiful-dnd.ad887878.js → module-react-beautiful-dnd.62627182.js} +2 -2
  59. package/dist/embedded-app/static/{module-react-beautiful-dnd.ad887878.js.map → module-react-beautiful-dnd.62627182.js.map} +1 -1
  60. package/dist/embedded-app/static/{module-react-dom.bd3fd0c6.js → module-react-dom.07625e59.js} +1 -1
  61. package/dist/embedded-app/static/{module-react-dom.bd3fd0c6.js.map → module-react-dom.07625e59.js.map} +1 -1
  62. package/dist/embedded-app/static/module-react-router-dom.a0f835fd.js +22 -0
  63. package/dist/embedded-app/static/module-react-router-dom.a0f835fd.js.map +1 -0
  64. package/dist/embedded-app/static/module-react-router.8e9755f1.js +22 -0
  65. package/dist/embedded-app/static/module-react-router.8e9755f1.js.map +1 -0
  66. package/dist/embedded-app/static/module-zod.c74c6842.js +3 -0
  67. package/dist/embedded-app/static/module-zod.c74c6842.js.map +1 -0
  68. package/dist/embedded-app/static/{runtime.2d4c0606.js → runtime.04af2edd.js} +2 -2
  69. package/dist/embedded-app/static/runtime.04af2edd.js.map +1 -0
  70. package/dist/embedded-app/static/vendor.04af2edd.js +159 -0
  71. package/dist/embedded-app/static/vendor.04af2edd.js.map +1 -0
  72. package/dist/index.cjs.js +1 -1
  73. package/package.json +6 -6
  74. package/dist/embedded-app/static/1032.f8378b05.chunk.js +0 -3
  75. package/dist/embedded-app/static/1032.f8378b05.chunk.js.map +0 -1
  76. package/dist/embedded-app/static/1093.317a4f39.chunk.js +0 -7
  77. package/dist/embedded-app/static/1093.317a4f39.chunk.js.map +0 -1
  78. package/dist/embedded-app/static/1105.a5f2c603.chunk.js +0 -3
  79. package/dist/embedded-app/static/1105.a5f2c603.chunk.js.map +0 -1
  80. package/dist/embedded-app/static/184.2d07d6cf.chunk.js +0 -3
  81. package/dist/embedded-app/static/184.2d07d6cf.chunk.js.map +0 -1
  82. package/dist/embedded-app/static/2440.c513a311.chunk.js +0 -3
  83. package/dist/embedded-app/static/2440.c513a311.chunk.js.map +0 -1
  84. package/dist/embedded-app/static/5458.f60ece35.chunk.js +0 -3
  85. package/dist/embedded-app/static/5458.f60ece35.chunk.js.map +0 -1
  86. package/dist/embedded-app/static/5837.d9697f2a.chunk.js +0 -3
  87. package/dist/embedded-app/static/5837.d9697f2a.chunk.js.map +0 -1
  88. package/dist/embedded-app/static/6051.9a397327.chunk.js +0 -4
  89. package/dist/embedded-app/static/732.b079cbc6.chunk.js +0 -3
  90. package/dist/embedded-app/static/732.b079cbc6.chunk.js.map +0 -1
  91. package/dist/embedded-app/static/7560.f82352d7.chunk.js +0 -3
  92. package/dist/embedded-app/static/7560.f82352d7.chunk.js.map +0 -1
  93. package/dist/embedded-app/static/7670.714e8960.chunk.js +0 -3
  94. package/dist/embedded-app/static/7750.da1a67d5.chunk.js +0 -8
  95. package/dist/embedded-app/static/7750.da1a67d5.chunk.js.map +0 -1
  96. package/dist/embedded-app/static/8951.d0edcfcb.chunk.js +0 -3
  97. package/dist/embedded-app/static/8951.d0edcfcb.chunk.js.map +0 -1
  98. package/dist/embedded-app/static/9545.24f95d89.chunk.js +0 -3
  99. package/dist/embedded-app/static/9545.24f95d89.chunk.js.map +0 -1
  100. package/dist/embedded-app/static/9770.2fa7c11e.chunk.js +0 -3
  101. package/dist/embedded-app/static/9770.2fa7c11e.chunk.js.map +0 -1
  102. package/dist/embedded-app/static/main.2d4c0606.js +0 -522
  103. package/dist/embedded-app/static/main.2d4c0606.js.map +0 -1
  104. package/dist/embedded-app/static/module-ajv.be583887.js +0 -10
  105. package/dist/embedded-app/static/module-ajv.be583887.js.map +0 -1
  106. package/dist/embedded-app/static/module-i18next.3eb80014.js +0 -3
  107. package/dist/embedded-app/static/module-lodash.4c9a1319.js +0 -29
  108. package/dist/embedded-app/static/module-lodash.4c9a1319.js.map +0 -1
  109. package/dist/embedded-app/static/module-luxon.b1d74b2d.js +0 -3
  110. package/dist/embedded-app/static/module-luxon.b1d74b2d.js.map +0 -1
  111. package/dist/embedded-app/static/module-material-ui.1afbaa53.js +0 -51
  112. package/dist/embedded-app/static/module-material-ui.1afbaa53.js.map +0 -1
  113. package/dist/embedded-app/static/module-octokit.7416db07.js +0 -5
  114. package/dist/embedded-app/static/module-octokit.7416db07.js.map +0 -1
  115. package/dist/embedded-app/static/module-react-router-dom.ef191c8f.js +0 -21
  116. package/dist/embedded-app/static/module-react-router-dom.ef191c8f.js.map +0 -1
  117. package/dist/embedded-app/static/module-react-router.d2e96318.js +0 -21
  118. package/dist/embedded-app/static/module-react-router.d2e96318.js.map +0 -1
  119. package/dist/embedded-app/static/module-yaml.00a97896.js +0 -140
  120. package/dist/embedded-app/static/module-yaml.00a97896.js.map +0 -1
  121. package/dist/embedded-app/static/module-zod.49079951.js +0 -3
  122. package/dist/embedded-app/static/module-zod.49079951.js.map +0 -1
  123. package/dist/embedded-app/static/runtime.2d4c0606.js.map +0 -1
  124. package/dist/embedded-app/static/vendor.2d4c0606.js +0 -213
  125. package/dist/embedded-app/static/vendor.2d4c0606.js.map +0 -1
@@ -0,0 +1,22 @@
1
+ "use strict";(()=>{(self.webpackChunktechdocs_cli_embedded_app=self.webpackChunktechdocs_cli_embedded_app||[]).push([[242],{73557:function(Or,Ft,Ve){var k;Ve.d(Ft,{AW:function(){return Ct},F0:function(){return it},Fg:function(){return Vt},GV:function(){return te},TH:function(){return Ce},UO:function(){return It},Us:function(){return ue},V$:function(){return yt},VA:function(){return Pt},WU:function(){return vt},Z5:function(){return Qt},is:function(){return lt},j3:function(){return Yt},oQ:function(){return ve},pC:function(){return gt},s0:function(){return be}});var y=Ve(2784),z=Ve(84800);/**
2
+ * React Router v6.15.0
3
+ *
4
+ * Copyright (c) Remix Software Inc.
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE.md file in the root directory of this source tree.
8
+ *
9
+ * @license MIT
10
+ */function Pe(){return Pe=Object.assign?Object.assign.bind():function(o){for(var l=1;l<arguments.length;l++){var p=arguments[l];for(var R in p)Object.prototype.hasOwnProperty.call(p,R)&&(o[R]=p[R])}return o},Pe.apply(this,arguments)}const et=y.createContext(null),Tt=y.createContext(null),H=y.createContext(null),ue=y.createContext(null),Fe=y.createContext(null),fe=y.createContext({outlet:null,matches:[],isDataRoute:!1}),ge=y.createContext(null);function ve(o,l){let{relative:p}=l===void 0?{}:l;te()||(0,z.J0)(!1);let{basename:R,navigator:D}=y.useContext(ue),{hash:M,pathname:O,search:J}=vt(o,{relative:p}),A=O;return R!=="/"&&(A=O==="/"?R:(0,z.RQ)([R,O])),D.createHref({pathname:A,search:J,hash:M})}function te(){return y.useContext(Fe)!=null}function Ce(){return te()||(0,z.J0)(!1),y.useContext(Fe).location}function Y(){return React.useContext(Fe).navigationType}function lr(o){te()||UNSAFE_invariant(!1);let{pathname:l}=Ce();return React.useMemo(()=>matchPath(o,l),[l,o])}const sr=null;function Te(o){y.useContext(ue).static||y.useLayoutEffect(o)}function be(){let{isDataRoute:o}=y.useContext(fe);return o?Jt():mt()}function mt(){te()||(0,z.J0)(!1);let o=y.useContext(et),{basename:l,navigator:p}=y.useContext(ue),{matches:R}=y.useContext(fe),{pathname:D}=Ce(),M=JSON.stringify((0,z.Zq)(R).map(A=>A.pathnameBase)),O=y.useRef(!1);return Te(()=>{O.current=!0}),y.useCallback(function(A,W){if(W===void 0&&(W={}),!O.current)return;if(typeof A=="number"){p.go(A);return}let Q=(0,z.pC)(A,JSON.parse(M),D,W.relative==="path");o==null&&l!=="/"&&(Q.pathname=Q.pathname==="/"?l:(0,z.RQ)([l,Q.pathname])),(W.replace?p.replace:p.push)(Q,W.state,W)},[l,p,M,D,o])}const tt=y.createContext(null);function ur(){return React.useContext(tt)}function gt(o){let l=y.useContext(fe).outlet;return l&&y.createElement(tt.Provider,{value:o},l)}function It(){let{matches:o}=y.useContext(fe),l=o[o.length-1];return l?l.params:{}}function vt(o,l){let{relative:p}=l===void 0?{}:l,{matches:R}=y.useContext(fe),{pathname:D}=Ce(),M=JSON.stringify((0,z.Zq)(R).map(O=>O.pathnameBase));return y.useMemo(()=>(0,z.pC)(o,JSON.parse(M),D,p==="path"),[o,M,D,p])}function yt(o,l){return Rt(o,l)}function Rt(o,l,p){te()||(0,z.J0)(!1);let{navigator:R}=y.useContext(ue),{matches:D}=y.useContext(fe),M=D[D.length-1],O=M?M.params:{},J=M?M.pathname:"/",A=M?M.pathnameBase:"/",W=M&&M.route,Q=Ce(),q;if(l){var ae;let de=typeof l=="string"?(0,z.cP)(l):l;A==="/"||(ae=de.pathname)!=null&&ae.startsWith(A)||(0,z.J0)(!1),q=de}else q=Q;let le=q.pathname||"/",pe=A==="/"?le:le.slice(A.length)||"/",Ue=(0,z.fp)(o,{pathname:pe}),Ee=Et(Ue&&Ue.map(de=>Object.assign({},de,{params:Object.assign({},O,de.params),pathname:(0,z.RQ)([A,R.encodeLocation?R.encodeLocation(de.pathname).pathname:de.pathname]),pathnameBase:de.pathnameBase==="/"?A:(0,z.RQ)([A,R.encodeLocation?R.encodeLocation(de.pathnameBase).pathname:de.pathnameBase])})),D,p);return l&&Ee?y.createElement(Fe.Provider,{value:{location:Pe({pathname:"/",search:"",hash:"",state:null,key:"default"},q),navigationType:z.aU.Pop}},Ee):Ee}function Bt(){let o=Ht(),l=(0,z.WK)(o)?o.status+" "+o.statusText:o instanceof Error?o.message:JSON.stringify(o),p=o instanceof Error?o.stack:null,R="rgba(200,200,200, 0.5)",D={padding:"0.5rem",backgroundColor:R},M={padding:"2px 4px",backgroundColor:R},O=null;return y.createElement(y.Fragment,null,y.createElement("h2",null,"Unexpected Application Error!"),y.createElement("h3",{style:{fontStyle:"italic"}},l),p?y.createElement("pre",{style:D},p):null,O)}const bt=y.createElement(Bt,null);class Nt extends y.Component{constructor(l){super(l),this.state={location:l.location,revalidation:l.revalidation,error:l.error}}static getDerivedStateFromError(l){return{error:l}}static getDerivedStateFromProps(l,p){return p.location!==l.location||p.revalidation!=="idle"&&l.revalidation==="idle"?{error:l.error,location:l.location,revalidation:l.revalidation}:{error:l.error||p.error,location:p.location,revalidation:l.revalidation||p.revalidation}}componentDidCatch(l,p){console.error("React Router caught the following error during render",l,p)}render(){return this.state.error?y.createElement(fe.Provider,{value:this.props.routeContext},y.createElement(ge.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function kt(o){let{routeContext:l,match:p,children:R}=o,D=y.useContext(et);return D&&D.static&&D.staticContext&&(p.route.errorElement||p.route.ErrorBoundary)&&(D.staticContext._deepestRenderedBoundaryId=p.route.id),y.createElement(fe.Provider,{value:l},R)}function Et(o,l,p){var R;if(l===void 0&&(l=[]),p===void 0&&(p=null),o==null){var D;if((D=p)!=null&&D.errors)o=p.matches;else return null}let M=o,O=(R=p)==null?void 0:R.errors;if(O!=null){let J=M.findIndex(A=>A.route.id&&(O==null?void 0:O[A.route.id]));J>=0||(0,z.J0)(!1),M=M.slice(0,Math.min(M.length,J+1))}return M.reduceRight((J,A,W)=>{let Q=A.route.id?O==null?void 0:O[A.route.id]:null,q=null;p&&(q=A.route.errorElement||bt);let ae=l.concat(M.slice(0,W+1)),le=()=>{let pe;return Q?pe=q:A.route.Component?pe=y.createElement(A.route.Component,null):A.route.element?pe=A.route.element:pe=J,y.createElement(kt,{match:A,routeContext:{outlet:J,matches:ae,isDataRoute:p!=null},children:pe})};return p&&(A.route.ErrorBoundary||A.route.errorElement||W===0)?y.createElement(Nt,{location:p.location,revalidation:p.revalidation,component:q,error:Q,children:le(),routeContext:{outlet:null,matches:ae,isDataRoute:!0}}):le()},null)}var Ye=function(o){return o.UseBlocker="useBlocker",o.UseRevalidator="useRevalidator",o.UseNavigateStable="useNavigate",o}(Ye||{}),ce=function(o){return o.UseBlocker="useBlocker",o.UseLoaderData="useLoaderData",o.UseActionData="useActionData",o.UseRouteError="useRouteError",o.UseNavigation="useNavigation",o.UseRouteLoaderData="useRouteLoaderData",o.UseMatches="useMatches",o.UseRevalidator="useRevalidator",o.UseNavigateStable="useNavigate",o.UseRouteId="useRouteId",o}(ce||{});function cr(o){return o+" must be used within a data router. See https://reactrouter.com/routers/picking-a-router."}function rt(o){let l=y.useContext(et);return l||(0,z.J0)(!1),l}function xe(o){let l=y.useContext(Tt);return l||(0,z.J0)(!1),l}function Ie(o){let l=y.useContext(fe);return l||(0,z.J0)(!1),l}function Be(o){let l=Ie(o),p=l.matches[l.matches.length-1];return p.route.id||(0,z.J0)(!1),p.route.id}function dr(){return Be(ce.UseRouteId)}function wt(){return xe(ce.UseNavigation).navigation}function xt(){let o=rt(Ye.UseRevalidator),l=xe(ce.UseRevalidator);return React.useMemo(()=>({revalidate:o.router.revalidate,state:l.revalidation}),[o.router.revalidate,l.revalidation])}function zt(){let{matches:o,loaderData:l}=xe(ce.UseMatches);return React.useMemo(()=>o.map(p=>{let{pathname:R,params:D}=p;return{id:p.route.id,pathname:R,params:D,data:l[p.route.id],handle:p.route.handle}}),[o,l])}function jr(){let o=xe(ce.UseLoaderData),l=Be(ce.UseLoaderData);if(o.errors&&o.errors[l]!=null){console.error("You cannot `useLoaderData` in an errorElement (routeId: "+l+")");return}return o.loaderData[l]}function Ne(o){return xe(ce.UseRouteLoaderData).loaderData[o]}function fr(){let o=xe(ce.UseActionData);return React.useContext(fe)||UNSAFE_invariant(!1),Object.values((o==null?void 0:o.actionData)||{})[0]}function Ht(){var o;let l=y.useContext(ge),p=xe(ce.UseRouteError),R=Be(ce.UseRouteError);return l||((o=p.errors)==null?void 0:o[R])}function Wt(){let o=React.useContext(H);return o==null?void 0:o._data}function _r(){let o=React.useContext(H);return o==null?void 0:o._error}let nt=0;function hr(o){let{router:l,basename:p}=rt(Ye.UseBlocker),R=xe(ce.UseBlocker),[D,M]=React.useState(""),O=React.useCallback(J=>{if(typeof o!="function")return!!o;if(p==="/")return o(J);let{currentLocation:A,nextLocation:W,historyAction:Q}=J;return o({currentLocation:Pe({},A,{pathname:stripBasename(A.pathname,p)||A.pathname}),nextLocation:Pe({},W,{pathname:stripBasename(W.pathname,p)||W.pathname}),historyAction:Q})},[p,o]);return React.useEffect(()=>{let J=String(++nt);return M(J),()=>l.deleteBlocker(J)},[l]),React.useEffect(()=>{D!==""&&l.getBlocker(D,O)},[l,D,O]),D&&R.blockers.has(D)?R.blockers.get(D):IDLE_BLOCKER}function Jt(){let{router:o}=rt(Ye.UseNavigateStable),l=Be(ce.UseNavigateStable),p=y.useRef(!1);return Te(()=>{p.current=!0}),y.useCallback(function(D,M){M===void 0&&(M={}),p.current&&(typeof D=="number"?o.navigate(D):o.navigate(D,Pe({fromRouteId:l},M)))},[o,l])}const Dt={};function Fr(o,l,p){!l&&!Dt[o]&&(Dt[o]=!0)}const Kt="startTransition",at=(k||(k=Ve.t(y,2)))[Kt];function $t(o){let{fallbackElement:l,router:p,future:R}=o,[D,M]=React.useState(p.state),{v7_startTransition:O}=R||{},J=React.useCallback(q=>{O&&at?at(()=>M(q)):M(q)},[M,O]);React.useLayoutEffect(()=>p.subscribe(J),[p,J]);let A=React.useMemo(()=>({createHref:p.createHref,encodeLocation:p.encodeLocation,go:q=>p.navigate(q),push:(q,ae,le)=>p.navigate(q,{state:ae,preventScrollReset:le==null?void 0:le.preventScrollReset}),replace:(q,ae,le)=>p.navigate(q,{replace:!0,state:ae,preventScrollReset:le==null?void 0:le.preventScrollReset})}),[p]),W=p.basename||"/",Q=React.useMemo(()=>({router:p,navigator:A,static:!1,basename:W}),[p,A,W]);return React.createElement(React.Fragment,null,React.createElement(et.Provider,{value:Q},React.createElement(Tt.Provider,{value:D},React.createElement(it,{basename:W,location:D.location,navigationType:D.historyAction,navigator:A},D.initialized?React.createElement(ot,{routes:p.routes,state:D}):l))),null)}function ot(o){let{routes:l,state:p}=o;return Rt(l,void 0,p)}function Pt(o){let{basename:l,children:p,initialEntries:R,initialIndex:D,future:M}=o,O=y.useRef();O.current==null&&(O.current=(0,z.PP)({initialEntries:R,initialIndex:D,v5Compat:!0}));let J=O.current,[A,W]=y.useState({action:J.action,location:J.location}),{v7_startTransition:Q}=M||{},q=y.useCallback(ae=>{Q&&at?at(()=>W(ae)):W(ae)},[W,Q]);return y.useLayoutEffect(()=>J.listen(q),[J,q]),y.createElement(it,{basename:l,children:p,location:A.location,navigationType:A.action,navigator:J})}function Vt(o){let{to:l,replace:p,state:R,relative:D}=o;te()||(0,z.J0)(!1);let{matches:M}=y.useContext(fe),{pathname:O}=Ce(),J=be(),A=(0,z.pC)(l,(0,z.Zq)(M).map(Q=>Q.pathnameBase),O,D==="path"),W=JSON.stringify(A);return y.useEffect(()=>J(JSON.parse(W),{replace:p,state:R,relative:D}),[J,W,D,p,R]),null}function Yt(o){return gt(o.context)}function Ct(o){(0,z.J0)(!1)}function it(o){let{basename:l="/",children:p=null,location:R,navigationType:D=z.aU.Pop,navigator:M,static:O=!1}=o;te()&&(0,z.J0)(!1);let J=l.replace(/^\/*/,"/"),A=y.useMemo(()=>({basename:J,navigator:M,static:O}),[J,M,O]);typeof R=="string"&&(R=(0,z.cP)(R));let{pathname:W="/",search:Q="",hash:q="",state:ae=null,key:le="default"}=R,pe=y.useMemo(()=>{let Ue=(0,z.Zn)(W,J);return Ue==null?null:{location:{pathname:Ue,search:Q,hash:q,state:ae,key:le},navigationType:D}},[J,W,Q,q,ae,le,D]);return pe==null?null:y.createElement(ue.Provider,{value:A},y.createElement(Fe.Provider,{children:p,value:pe}))}function Qt(o){let{children:l,location:p}=o;return yt(lt(l),p)}function St(o){let{children:l,errorElement:p,resolve:R}=o;return React.createElement(Lt,{resolve:R,errorElement:p},React.createElement(Mt,null,l))}var he=function(o){return o[o.pending=0]="pending",o[o.success=1]="success",o[o.error=2]="error",o}(he||{});const ke=new Promise(()=>{});class Lt extends y.Component{constructor(l){super(l),this.state={error:null}}static getDerivedStateFromError(l){return{error:l}}componentDidCatch(l,p){console.error("<Await> caught the following error during render",l,p)}render(){let{children:l,errorElement:p,resolve:R}=this.props,D=null,M=he.pending;if(!(R instanceof Promise))M=he.success,D=Promise.resolve(),Object.defineProperty(D,"_tracked",{get:()=>!0}),Object.defineProperty(D,"_data",{get:()=>R});else if(this.state.error){M=he.error;let O=this.state.error;D=Promise.reject().catch(()=>{}),Object.defineProperty(D,"_tracked",{get:()=>!0}),Object.defineProperty(D,"_error",{get:()=>O})}else R._tracked?(D=R,M=D._error!==void 0?he.error:D._data!==void 0?he.success:he.pending):(M=he.pending,Object.defineProperty(R,"_tracked",{get:()=>!0}),D=R.then(O=>Object.defineProperty(R,"_data",{get:()=>O}),O=>Object.defineProperty(R,"_error",{get:()=>O})));if(M===he.error&&D._error instanceof z.X3)throw ke;if(M===he.error&&!p)throw D._error;if(M===he.error)return y.createElement(H.Provider,{value:D,children:p});if(M===he.success)return y.createElement(H.Provider,{value:D,children:l});throw D}}function Mt(o){let{children:l}=o,p=Wt(),R=typeof l=="function"?l(p):l;return React.createElement(React.Fragment,null,R)}function lt(o,l){l===void 0&&(l=[]);let p=[];return y.Children.forEach(o,(R,D)=>{if(!y.isValidElement(R))return;let M=[...l,D];if(R.type===y.Fragment){p.push.apply(p,lt(R.props.children,M));return}R.type!==Ct&&(0,z.J0)(!1),!R.props.index||!R.props.children||(0,z.J0)(!1);let O={id:R.props.id||M.join("-"),caseSensitive:R.props.caseSensitive,element:R.props.element,Component:R.props.Component,index:R.props.index,path:R.props.path,loader:R.props.loader,action:R.props.action,errorElement:R.props.errorElement,ErrorBoundary:R.props.ErrorBoundary,hasErrorBoundary:R.props.ErrorBoundary!=null||R.props.errorElement!=null,shouldRevalidate:R.props.shouldRevalidate,handle:R.props.handle,lazy:R.props.lazy};R.props.children&&(O.children=lt(R.props.children,M)),p.push(O)}),p}function pr(o){return Et(o)}function mr(o){let l={hasErrorBoundary:o.ErrorBoundary!=null||o.errorElement!=null};return o.Component&&Object.assign(l,{element:React.createElement(o.Component),Component:void 0}),o.ErrorBoundary&&Object.assign(l,{errorElement:React.createElement(o.ErrorBoundary),ErrorBoundary:void 0}),l}function Tr(o,l){return createRouter({basename:l==null?void 0:l.basename,future:Pe({},l==null?void 0:l.future,{v7_prependBasename:!0}),history:createMemoryHistory({initialEntries:l==null?void 0:l.initialEntries,initialIndex:l==null?void 0:l.initialIndex}),hydrationData:l==null?void 0:l.hydrationData,routes:o,mapRouteProperties:mr}).initialize()}},84800:function(Or,Ft,Ve){Ve.d(Ft,{Ep:function(){return ve},Gn:function(){return Ye},J0:function(){return H},PP:function(){return Pe},RQ:function(){return Ne},WK:function(){return ot},X3:function(){return nt},Zn:function(){return Ie},Zq:function(){return xt},aU:function(){return y},cP:function(){return te},fp:function(){return be},i3:function(){return Be},pC:function(){return zt}});/**
11
+ * @remix-run/router v1.8.0
12
+ *
13
+ * Copyright (c) Remix Software Inc.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE.md file in the root directory of this source tree.
17
+ *
18
+ * @license MIT
19
+ */function k(){return k=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},k.apply(this,arguments)}var y;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(y||(y={}));const z="popstate";function Pe(e){e===void 0&&(e={});let{initialEntries:t=["/"],initialIndex:r,v5Compat:n=!1}=e,a;a=t.map((E,w)=>b(E,typeof E=="string"?null:E.state,w===0?"default":void 0));let c=h(r==null?a.length-1:r),i=y.Pop,f=null;function h(E){return Math.min(Math.max(E,0),a.length-1)}function v(){return a[c]}function b(E,w,P){w===void 0&&(w=null);let m=ge(a?v().pathname:"/",E,w,P);return ue(m.pathname.charAt(0)==="/","relative pathnames are not supported in memory history: "+JSON.stringify(E)),m}function x(E){return typeof E=="string"?E:ve(E)}return{get index(){return c},get action(){return i},get location(){return v()},createHref:x,createURL(E){return new URL(x(E),"http://localhost")},encodeLocation(E){let w=typeof E=="string"?te(E):E;return{pathname:w.pathname||"",search:w.search||"",hash:w.hash||""}},push(E,w){i=y.Push;let P=b(E,w);c+=1,a.splice(c,a.length,P),n&&f&&f({action:i,location:P,delta:1})},replace(E,w){i=y.Replace;let P=b(E,w);a[c]=P,n&&f&&f({action:i,location:P,delta:0})},go(E){i=y.Pop;let w=h(c+E),P=a[w];c=w,f&&f({action:i,location:P,delta:E})},listen(E){return f=E,()=>{f=null}}}}function et(e){e===void 0&&(e={});function t(n,a){let{pathname:c,search:i,hash:f}=n.location;return ge("",{pathname:c,search:i,hash:f},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function r(n,a){return typeof a=="string"?a:ve(a)}return Ce(t,r,null,e)}function Tt(e){e===void 0&&(e={});function t(a,c){let{pathname:i="/",search:f="",hash:h=""}=te(a.location.hash.substr(1));return!i.startsWith("/")&&!i.startsWith(".")&&(i="/"+i),ge("",{pathname:i,search:f,hash:h},c.state&&c.state.usr||null,c.state&&c.state.key||"default")}function r(a,c){let i=a.document.querySelector("base"),f="";if(i&&i.getAttribute("href")){let h=a.location.href,v=h.indexOf("#");f=v===-1?h:h.slice(0,v)}return f+"#"+(typeof c=="string"?c:ve(c))}function n(a,c){ue(a.pathname.charAt(0)==="/","relative pathnames are not supported in hash history.push("+JSON.stringify(c)+")")}return Ce(t,r,n,e)}function H(e,t){if(e===!1||e===null||typeof e=="undefined")throw new Error(t)}function ue(e,t){if(!e){typeof console!="undefined"&&console.warn(t);try{throw new Error(t)}catch{}}}function Fe(){return Math.random().toString(36).substr(2,8)}function fe(e,t){return{usr:e.state,key:e.key,idx:t}}function ge(e,t,r,n){return r===void 0&&(r=null),k({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?te(t):t,{state:r,key:t&&t.key||n||Fe()})}function ve(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 te(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 Ce(e,t,r,n){n===void 0&&(n={});let{window:a=document.defaultView,v5Compat:c=!1}=n,i=a.history,f=y.Pop,h=null,v=b();v==null&&(v=0,i.replaceState(k({},i.state,{idx:v}),""));function b(){return(i.state||{idx:null}).idx}function x(){f=y.Pop;let m=b(),_=m==null?null:m-v;v=m,h&&h({action:f,location:P.location,delta:_})}function C(m,_){f=y.Push;let K=ge(P.location,m,_);r&&r(K,m),v=b()+1;let B=fe(K,v),s=P.createHref(K);try{i.pushState(B,"",s)}catch(N){if(N instanceof DOMException&&N.name==="DataCloneError")throw N;a.location.assign(s)}c&&h&&h({action:f,location:P.location,delta:1})}function E(m,_){f=y.Replace;let K=ge(P.location,m,_);r&&r(K,m),v=b();let B=fe(K,v),s=P.createHref(K);i.replaceState(B,"",s),c&&h&&h({action:f,location:P.location,delta:0})}function w(m){let _=a.location.origin!=="null"?a.location.origin:a.location.href,K=typeof m=="string"?m:ve(m);return H(_,"No window.location.(origin|href) available to create URL for href: "+K),new URL(K,_)}let P={get action(){return f},get location(){return e(a,i)},listen(m){if(h)throw new Error("A history only accepts one active listener");return a.addEventListener(z,x),h=m,()=>{a.removeEventListener(z,x),h=null}},createHref(m){return t(a,m)},createURL:w,encodeLocation(m){let _=w(m);return{pathname:_.pathname,search:_.search,hash:_.hash}},push:C,replace:E,go(m){return i.go(m)}};return P}var Y;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Y||(Y={}));const lr=new Set(["lazy","caseSensitive","path","id","index","children"]);function sr(e){return e.index===!0}function Te(e,t,r,n){return r===void 0&&(r=[]),n===void 0&&(n={}),e.map((a,c)=>{let i=[...r,c],f=typeof a.id=="string"?a.id:i.join("-");if(H(a.index!==!0||!a.children,"Cannot specify children on an index route"),H(!n[f],'Found a route id collision on id "'+f+`". Route id's must be globally unique within Data Router usages`),sr(a)){let h=k({},a,t(a),{id:f});return n[f]=h,h}else{let h=k({},a,t(a),{id:f,children:void 0});return n[f]=h,a.children&&(h.children=Te(a.children,t,i,n)),h}})}function be(e,t,r){r===void 0&&(r="/");let n=typeof t=="string"?te(t):t,a=Ie(n.pathname||"/",r);if(a==null)return null;let c=mt(e);ur(c);let i=null;for(let f=0;i==null&&f<c.length;++f)i=Et(c[f],rt(a));return i}function mt(e,t,r,n){t===void 0&&(t=[]),r===void 0&&(r=[]),n===void 0&&(n="");let a=(c,i,f)=>{let h={relativePath:f===void 0?c.path||"":f,caseSensitive:c.caseSensitive===!0,childrenIndex:i,route:c};h.relativePath.startsWith("/")&&(H(h.relativePath.startsWith(n),'Absolute route path "'+h.relativePath+'" nested under path '+('"'+n+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),h.relativePath=h.relativePath.slice(n.length));let v=Ne([n,h.relativePath]),b=r.concat(h);c.children&&c.children.length>0&&(H(c.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+v+'".')),mt(c.children,t,b,v)),!(c.path==null&&!c.index)&&t.push({path:v,score:Nt(v,c.index),routesMeta:b})};return e.forEach((c,i)=>{var f;if(c.path===""||!((f=c.path)!=null&&f.includes("?")))a(c,i);else for(let h of tt(c.path))a(c,i,h)}),t}function tt(e){let t=e.split("/");if(t.length===0)return[];let[r,...n]=t,a=r.endsWith("?"),c=r.replace(/\?$/,"");if(n.length===0)return a?[c,""]:[c];let i=tt(n.join("/")),f=[];return f.push(...i.map(h=>h===""?c:[c,h].join("/"))),a&&f.push(...i),f.map(h=>e.startsWith("/")&&h===""?"/":h)}function ur(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:kt(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const gt=/^:\w+$/,It=3,vt=2,yt=1,Rt=10,Bt=-2,bt=e=>e==="*";function Nt(e,t){let r=e.split("/"),n=r.length;return r.some(bt)&&(n+=Bt),t&&(n+=vt),r.filter(a=>!bt(a)).reduce((a,c)=>a+(gt.test(c)?It:c===""?yt:Rt),n)}function kt(e,t){return e.length===t.length&&e.slice(0,-1).every((n,a)=>n===t[a])?e[e.length-1]-t[t.length-1]:0}function Et(e,t){let{routesMeta:r}=e,n={},a="/",c=[];for(let i=0;i<r.length;++i){let f=r[i],h=i===r.length-1,v=a==="/"?t:t.slice(a.length)||"/",b=ce({path:f.relativePath,caseSensitive:f.caseSensitive,end:h},v);if(!b)return null;Object.assign(n,b.params);let x=f.route;c.push({params:n,pathname:Ne([a,b.pathname]),pathnameBase:fr(Ne([a,b.pathnameBase])),route:x}),b.pathnameBase!=="/"&&(a=Ne([a,b.pathnameBase]))}return c}function Ye(e,t){t===void 0&&(t={});let r=e;r.endsWith("*")&&r!=="*"&&!r.endsWith("/*")&&(ue(!1,'Route path "'+r+'" will be treated as if it were '+('"'+r.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+r.replace(/\*$/,"/*")+'".')),r=r.replace(/\*$/,"/*"));const n=r.startsWith("/")?"/":"",a=i=>i==null?"":typeof i=="string"?i:String(i),c=r.split(/\/+/).map((i,f,h)=>{if(f===h.length-1&&i==="*")return a(t["*"]);const b=i.match(/^:(\w+)(\??)$/);if(b){const[,x,C]=b;let E=t[x];return H(C==="?"||E!=null,'Missing ":'+x+'" param'),a(E)}return i.replace(/\?$/g,"")}).filter(i=>!!i);return n+c.join("/")}function ce(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,n]=cr(e.path,e.caseSensitive,e.end),a=t.match(r);if(!a)return null;let c=a[0],i=c.replace(/(.)\/+$/,"$1"),f=a.slice(1);return{params:n.reduce((v,b,x)=>{if(b==="*"){let C=f[x]||"";i=c.slice(0,c.length-C.length).replace(/(.)\/+$/,"$1")}return v[b]=xe(f[x]||"",b),v},{}),pathname:c,pathnameBase:i,pattern:e}}function cr(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!0),ue(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,(i,f)=>(n.push(f),"/([^\\/]+)"));return e.endsWith("*")?(n.push("*"),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),n]}function rt(e){try{return decodeURI(e)}catch(t){return ue(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function xe(e,t){try{return decodeURIComponent(e)}catch(r){return ue(!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}}function Ie(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 Be(e,t){t===void 0&&(t="/");let{pathname:r,search:n="",hash:a=""}=typeof e=="string"?te(e):e;return{pathname:r?r.startsWith("/")?r:dr(r,t):t,search:Ht(n),hash:Wt(a)}}function dr(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?r.length>1&&r.pop():a!=="."&&r.push(a)}),r.length>1?r.join("/"):"/"}function wt(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 xt(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function zt(e,t,r,n){n===void 0&&(n=!1);let a;typeof e=="string"?a=te(e):(a=k({},e),H(!a.pathname||!a.pathname.includes("?"),wt("?","pathname","search",a)),H(!a.pathname||!a.pathname.includes("#"),wt("#","pathname","hash",a)),H(!a.search||!a.search.includes("#"),wt("#","search","hash",a)));let c=e===""||a.pathname==="",i=c?"/":a.pathname,f;if(n||i==null)f=r;else{let x=t.length-1;if(i.startsWith("..")){let C=i.split("/");for(;C[0]==="..";)C.shift(),x-=1;a.pathname=C.join("/")}f=x>=0?t[x]:"/"}let h=Be(a,f),v=i&&i!=="/"&&i.endsWith("/"),b=(c||i===".")&&r.endsWith("/");return!h.pathname.endsWith("/")&&(v||b)&&(h.pathname+="/"),h}function jr(e){return e===""||e.pathname===""?"/":typeof e=="string"?te(e).pathname:e.pathname}const Ne=e=>e.join("/").replace(/\/\/+/g,"/"),fr=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Ht=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Wt=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e,_r=function(t,r){r===void 0&&(r={});let n=typeof r=="number"?{status:r}:r,a=new Headers(n.headers);return a.has("Content-Type")||a.set("Content-Type","application/json; charset=utf-8"),new Response(JSON.stringify(t),k({},n,{headers:a}))};class nt extends Error{}class hr{constructor(t,r){this.pendingKeysSet=new Set,this.subscribers=new Set,this.deferredKeys=[],H(t&&typeof t=="object"&&!Array.isArray(t),"defer() only accepts plain objects");let n;this.abortPromise=new Promise((c,i)=>n=i),this.controller=new AbortController;let a=()=>n(new nt("Deferred data aborted"));this.unlistenAbortSignal=()=>this.controller.signal.removeEventListener("abort",a),this.controller.signal.addEventListener("abort",a),this.data=Object.entries(t).reduce((c,i)=>{let[f,h]=i;return Object.assign(c,{[f]:this.trackPromise(f,h)})},{}),this.done&&this.unlistenAbortSignal(),this.init=r}trackPromise(t,r){if(!(r instanceof Promise))return r;this.deferredKeys.push(t),this.pendingKeysSet.add(t);let n=Promise.race([r,this.abortPromise]).then(a=>this.onSettle(n,t,void 0,a),a=>this.onSettle(n,t,a));return n.catch(()=>{}),Object.defineProperty(n,"_tracked",{get:()=>!0}),n}onSettle(t,r,n,a){if(this.controller.signal.aborted&&n instanceof nt)return this.unlistenAbortSignal(),Object.defineProperty(t,"_error",{get:()=>n}),Promise.reject(n);if(this.pendingKeysSet.delete(r),this.done&&this.unlistenAbortSignal(),n===void 0&&a===void 0){let c=new Error('Deferred data for key "'+r+'" resolved/rejected with `undefined`, you must resolve/reject with a value or `null`.');return Object.defineProperty(t,"_error",{get:()=>c}),this.emit(!1,r),Promise.reject(c)}return a===void 0?(Object.defineProperty(t,"_error",{get:()=>n}),this.emit(!1,r),Promise.reject(n)):(Object.defineProperty(t,"_data",{get:()=>a}),this.emit(!1,r),a)}emit(t,r){this.subscribers.forEach(n=>n(t,r))}subscribe(t){return this.subscribers.add(t),()=>this.subscribers.delete(t)}cancel(){this.controller.abort(),this.pendingKeysSet.forEach((t,r)=>this.pendingKeysSet.delete(r)),this.emit(!0)}async resolveData(t){let r=!1;if(!this.done){let n=()=>this.cancel();t.addEventListener("abort",n),r=await new Promise(a=>{this.subscribe(c=>{t.removeEventListener("abort",n),(c||this.done)&&a(c)})})}return r}get done(){return this.pendingKeysSet.size===0}get unwrappedData(){return H(this.data!==null&&this.done,"Can only unwrap data on initialized and settled deferreds"),Object.entries(this.data).reduce((t,r)=>{let[n,a]=r;return Object.assign(t,{[n]:Dt(a)})},{})}get pendingKeys(){return Array.from(this.pendingKeysSet)}}function Jt(e){return e instanceof Promise&&e._tracked===!0}function Dt(e){if(!Jt(e))return e;if(e._error)throw e._error;return e._data}const Fr=function(t,r){r===void 0&&(r={});let n=typeof r=="number"?{status:r}:r;return new hr(t,n)},Kt=function(t,r){r===void 0&&(r=302);let n=r;typeof n=="number"?n={status:n}:typeof n.status=="undefined"&&(n.status=302);let a=new Headers(n.headers);return a.set("Location",t),new Response(null,k({},n,{headers:a}))},at=(e,t)=>{let r=Kt(e,t);return r.headers.set("X-Remix-Reload-Document","true"),r};class $t{constructor(t,r,n,a){a===void 0&&(a=!1),this.status=t,this.statusText=r||"",this.internal=a,n instanceof Error?(this.data=n.toString(),this.error=n):this.data=n}}function ot(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const Pt=["post","put","patch","delete"],Vt=new Set(Pt),Yt=["get",...Pt],Ct=new Set(Yt),it=new Set([301,302,303,307,308]),Qt=new Set([307,308]),St={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},he={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},ke={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},Lt=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Mt=e=>({hasErrorBoundary:Boolean(e.hasErrorBoundary)});function lt(e){const t=e.window?e.window:typeof window!="undefined"?window:void 0,r=typeof t!="undefined"&&typeof t.document!="undefined"&&typeof t.document.createElement!="undefined",n=!r;H(e.routes.length>0,"You must provide a non-empty routes array to createRouter");let a;if(e.mapRouteProperties)a=e.mapRouteProperties;else if(e.detectErrorBoundary){let u=e.detectErrorBoundary;a=d=>({hasErrorBoundary:u(d)})}else a=Mt;let c={},i=Te(e.routes,a,void 0,c),f,h=e.basename||"/",v=k({v7_normalizeFormMethod:!1,v7_prependBasename:!1},e.future),b=null,x=new Set,C=null,E=null,w=null,P=e.hydrationData!=null,m=be(i,e.history.location,h),_=null;if(m==null){let u=X(404,{pathname:e.history.location.pathname}),{matches:d,route:g}=de(i);m=d,_={[g.id]:u}}let K=!m.some(u=>u.route.lazy)&&(!m.some(u=>u.route.loader)||e.hydrationData!=null),B,s={historyAction:e.history.action,location:e.history.location,matches:m,initialized:K,navigation:St,restoreScrollPosition:e.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||_,fetchers:new Map,blockers:new Map},N=y.Pop,G=!1,I,me=!1,Re=!1,De=[],Ze=[],re=new Map,At=0,ct=-1,Xe=new Map,Se=new Set,Ge=new Map,We=new Map,Je=new Map,Xt=!1;function Jr(){return b=e.history.listen(u=>{let{action:d,location:g,delta:S}=u;if(Xt){Xt=!1;return}ue(Je.size===0||S!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let T=Lr({currentLocation:s.location,nextLocation:g,historyAction:d});if(T&&S!=null){Xt=!0,e.history.go(S*-1),jt(T,{state:"blocked",location:g,proceed(){jt(T,{state:"proceeding",proceed:void 0,reset:void 0,location:g}),e.history.go(S)},reset(){let j=new Map(s.blockers);j.set(T,ke),oe({blockers:j})}});return}return Oe(d,g)}),s.initialized||Oe(y.Pop,s.location),B}function Kr(){b&&b(),x.clear(),I&&I.abort(),s.fetchers.forEach((u,d)=>er(d)),s.blockers.forEach((u,d)=>Sr(d))}function $r(u){return x.add(u),()=>x.delete(u)}function oe(u){s=k({},s,u),x.forEach(d=>d(s))}function dt(u,d){var g,S;let T=s.actionData!=null&&s.navigation.formMethod!=null&&ye(s.navigation.formMethod)&&s.navigation.state==="loading"&&((g=u.state)==null?void 0:g._isRedirect)!==!0,j;d.actionData?Object.keys(d.actionData).length>0?j=d.actionData:j=null:T?j=s.actionData:j=null;let F=d.loaderData?Ue(s.loaderData,d.loaderData,d.matches||[],d.errors):s.loaderData,U=s.blockers;U.size>0&&(U=new Map(U),U.forEach((Z,se)=>U.set(se,ke)));let L=G===!0||s.navigation.formMethod!=null&&ye(s.navigation.formMethod)&&((S=u.state)==null?void 0:S._isRedirect)!==!0;f&&(i=f,f=void 0),me||N===y.Pop||(N===y.Push?e.history.push(u,u.state):N===y.Replace&&e.history.replace(u,u.state)),oe(k({},d,{actionData:j,loaderData:F,historyAction:N,location:u,initialized:!0,navigation:St,revalidation:"idle",restoreScrollPosition:Ur(u,d.matches||s.matches),preventScrollReset:L,blockers:U})),N=y.Pop,G=!1,me=!1,Re=!1,De=[],Ze=[]}async function Er(u,d){if(typeof u=="number"){e.history.go(u);return}let g=l(s.location,s.matches,h,v.v7_prependBasename,u,d==null?void 0:d.fromRouteId,d==null?void 0:d.relative),{path:S,submission:T,error:j}=p(v.v7_normalizeFormMethod,!1,g,d),F=s.location,U=ge(s.location,S,d&&d.state);U=k({},U,e.history.encodeLocation(U));let L=d&&d.replace!=null?d.replace:void 0,Z=y.Push;L===!0?Z=y.Replace:L===!1||T!=null&&ye(T.formMethod)&&T.formAction===s.location.pathname+s.location.search&&(Z=y.Replace);let se=d&&"preventScrollReset"in d?d.preventScrollReset===!0:void 0,$=Lr({currentLocation:F,nextLocation:U,historyAction:Z});if($){jt($,{state:"blocked",location:U,proceed(){jt($,{state:"proceeding",proceed:void 0,reset:void 0,location:U}),Er(u,d)},reset(){let ee=new Map(s.blockers);ee.set($,ke),oe({blockers:ee})}});return}return await Oe(Z,U,{submission:T,pendingError:j,preventScrollReset:se,replace:d&&d.replace})}function Vr(){if(Gt(),oe({revalidation:"loading"}),s.navigation.state!=="submitting"){if(s.navigation.state==="idle"){Oe(s.historyAction,s.location,{startUninterruptedRevalidation:!0});return}Oe(N||s.historyAction,s.navigation.location,{overrideNavigation:s.navigation})}}async function Oe(u,d,g){I&&I.abort(),I=null,N=u,me=(g&&g.startUninterruptedRevalidation)===!0,tn(s.location,s.matches),G=(g&&g.preventScrollReset)===!0;let S=f||i,T=g&&g.overrideNavigation,j=be(S,d,h);if(!j){let ee=X(404,{pathname:d.pathname}),{matches:ie,route:Ke}=de(S);tr(),dt(d,{matches:ie,loaderData:{},errors:{[Ke.id]:ee}});return}if(s.initialized&&!Re&&Ir(s.location,d)&&!(g&&g.submission&&ye(g.submission.formMethod))){dt(d,{matches:j});return}I=new AbortController;let F=Q(e.history,d,I.signal,g&&g.submission),U,L;if(g&&g.pendingError)L={[Ee(j).route.id]:g.pendingError};else if(g&&g.submission&&ye(g.submission.formMethod)){let ee=await Yr(F,d,g.submission,j,{replace:g.replace});if(ee.shortCircuited)return;U=ee.pendingActionData,L=ee.pendingActionError,T=Ut(d,g.submission),F=new Request(F.url,{signal:F.signal})}let{shortCircuited:Z,loaderData:se,errors:$}=await Qr(F,d,j,T,g&&g.submission,g&&g.fetcherSubmission,g&&g.replace,U,L);Z||(I=null,dt(d,k({matches:j},U?{actionData:U}:{},{loaderData:se,errors:$})))}async function Yr(u,d,g,S,T){T===void 0&&(T={}),Gt();let j=Hr(d,g);oe({navigation:j});let F,U=st(S,d);if(!U.route.action&&!U.route.lazy)F={type:Y.error,error:X(405,{method:u.method,pathname:d.pathname,routeId:U.route.id})};else if(F=await W("action",u,U,S,c,a,h),u.signal.aborted)return{shortCircuited:!0};if(He(F)){let L;return T&&T.replace!=null?L=T.replace:L=F.location===s.location.pathname+s.location.search,await ft(s,F,{submission:g,replace:L}),{shortCircuited:!0}}if(ze(F)){let L=Ee(S,U.route.id);return(T&&T.replace)!==!0&&(N=y.Push),{pendingActionData:{},pendingActionError:{[L.route.id]:F.error}}}if(Ae(F))throw X(400,{type:"defer-action"});return{pendingActionData:{[U.route.id]:F.data}}}async function Qr(u,d,g,S,T,j,F,U,L){let Z=S||Ut(d,T),se=T||j||br(Z),$=f||i,[ee,ie]=D(e.history,s,g,se,d,Re,De,Ze,Ge,Se,$,h,U,L);if(tr(V=>!(g&&g.some(we=>we.route.id===V))||ee&&ee.some(we=>we.route.id===V)),ct=++At,ee.length===0&&ie.length===0){let V=Pr();return dt(d,k({matches:g,loaderData:{},errors:L||null},U?{actionData:U}:{},V?{fetchers:new Map(s.fetchers)}:{})),{shortCircuited:!0}}if(!me){ie.forEach(we=>{let _e=s.fetchers.get(we.key),ir=ut(void 0,_e?_e.data:void 0);s.fetchers.set(we.key,ir)});let V=U||s.actionData;oe(k({navigation:Z},V?Object.keys(V).length===0?{actionData:null}:{actionData:V}:{},ie.length>0?{fetchers:new Map(s.fetchers)}:{}))}ie.forEach(V=>{re.has(V.key)&&je(V.key),V.controller&&re.set(V.key,V.controller)});let Ke=()=>ie.forEach(V=>je(V.key));I&&I.signal.addEventListener("abort",Ke);let{results:$e,loaderResults:ht,fetcherResults:rr}=await xr(s.matches,g,ee,ie,u);if(u.signal.aborted)return{shortCircuited:!0};I&&I.signal.removeEventListener("abort",Ke),ie.forEach(V=>re.delete(V.key));let Le=gr($e);if(Le){if(Le.idx>=ee.length){let V=ie[Le.idx-ee.length].key;Se.add(V)}return await ft(s,Le.result,{replace:F}),{shortCircuited:!0}}let{loaderData:Me,errors:_t}=pe(s,g,ee,ht,L,ie,rr,We);We.forEach((V,we)=>{V.subscribe(_e=>{(_e||V.done)&&We.delete(we)})});let nr=Pr(),ar=Cr(ct),or=nr||ar||ie.length>0;return k({loaderData:Me,errors:_t},or?{fetchers:new Map(s.fetchers)}:{})}function wr(u){return s.fetchers.get(u)||he}function qr(u,d,g,S){if(n)throw new Error("router.fetch() was called during the server render, but it shouldn't be. You are likely calling a useFetcher() method in the body of your component. Try moving it to a useEffect or a callback.");re.has(u)&&je(u);let T=f||i,j=l(s.location,s.matches,h,v.v7_prependBasename,g,d,S==null?void 0:S.relative),F=be(T,j,h);if(!F){Ot(u,d,X(404,{pathname:j}));return}let{path:U,submission:L,error:Z}=p(v.v7_normalizeFormMethod,!0,j,S);if(Z){Ot(u,d,Z);return}let se=st(F,U);if(G=(S&&S.preventScrollReset)===!0,L&&ye(L.formMethod)){Zr(u,d,U,se,F,L);return}Ge.set(u,{routeId:d,path:U}),Xr(u,d,U,se,F,L)}async function Zr(u,d,g,S,T,j){if(Gt(),Ge.delete(u),!S.route.action&&!S.route.lazy){let ne=X(405,{method:j.formMethod,pathname:g,routeId:d});Ot(u,d,ne);return}let F=s.fetchers.get(u),U=Wr(j,F);s.fetchers.set(u,U),oe({fetchers:new Map(s.fetchers)});let L=new AbortController,Z=Q(e.history,g,L.signal,j);re.set(u,L);let se=At,$=await W("action",Z,S,T,c,a,h);if(Z.signal.aborted){re.get(u)===L&&re.delete(u);return}if(He($))if(re.delete(u),ct>se){let ne=qe(void 0);s.fetchers.set(u,ne),oe({fetchers:new Map(s.fetchers)});return}else{Se.add(u);let ne=ut(j);return s.fetchers.set(u,ne),oe({fetchers:new Map(s.fetchers)}),ft(s,$,{submission:j,isFetchActionRedirect:!0})}if(ze($)){Ot(u,d,$.error);return}if(Ae($))throw X(400,{type:"defer-action"});let ee=s.navigation.location||s.location,ie=Q(e.history,ee,L.signal),Ke=f||i,$e=s.navigation.state!=="idle"?be(Ke,s.navigation.location,h):s.matches;H($e,"Didn't find any matches after fetcher action");let ht=++At;Xe.set(u,ht);let rr=ut(j,$.data);s.fetchers.set(u,rr);let[Le,Me]=D(e.history,s,$e,j,ee,Re,De,Ze,Ge,Se,Ke,h,{[S.route.id]:$.data},void 0);Me.filter(ne=>ne.key!==u).forEach(ne=>{let pt=ne.key,Ar=s.fetchers.get(pt),nn=ut(void 0,Ar?Ar.data:void 0);s.fetchers.set(pt,nn),re.has(pt)&&je(pt),ne.controller&&re.set(pt,ne.controller)}),oe({fetchers:new Map(s.fetchers)});let _t=()=>Me.forEach(ne=>je(ne.key));L.signal.addEventListener("abort",_t);let{results:nr,loaderResults:ar,fetcherResults:or}=await xr(s.matches,$e,Le,Me,ie);if(L.signal.aborted)return;L.signal.removeEventListener("abort",_t),Xe.delete(u),re.delete(u),Me.forEach(ne=>re.delete(ne.key));let V=gr(nr);if(V){if(V.idx>=Le.length){let ne=Me[V.idx-Le.length].key;Se.add(ne)}return ft(s,V.result)}let{loaderData:we,errors:_e}=pe(s,s.matches,Le,ar,void 0,Me,or,We);if(s.fetchers.has(u)){let ne=qe($.data);s.fetchers.set(u,ne)}let ir=Cr(ht);s.navigation.state==="loading"&&ht>ct?(H(N,"Expected pending action"),I&&I.abort(),dt(s.navigation.location,{matches:$e,loaderData:we,errors:_e,fetchers:new Map(s.fetchers)})):(oe(k({errors:_e,loaderData:Ue(s.loaderData,we,$e,_e)},ir||Me.length>0?{fetchers:new Map(s.fetchers)}:{})),Re=!1)}async function Xr(u,d,g,S,T,j){let F=s.fetchers.get(u),U=ut(j,F?F.data:void 0);s.fetchers.set(u,U),oe({fetchers:new Map(s.fetchers)});let L=new AbortController,Z=Q(e.history,g,L.signal);re.set(u,L);let se=At,$=await W("loader",Z,S,T,c,a,h);if(Ae($)&&($=await Rr($,Z.signal,!0)||$),re.get(u)===L&&re.delete(u),Z.signal.aborted)return;if(He($))if(ct>se){let ie=qe(void 0);s.fetchers.set(u,ie),oe({fetchers:new Map(s.fetchers)});return}else{Se.add(u),await ft(s,$);return}if(ze($)){let ie=Ee(s.matches,d);s.fetchers.delete(u),oe({fetchers:new Map(s.fetchers),errors:{[ie.route.id]:$.error}});return}H(!Ae($),"Unhandled fetcher deferred data");let ee=qe($.data);s.fetchers.set(u,ee),oe({fetchers:new Map(s.fetchers)})}async function ft(u,d,g){let{submission:S,replace:T,isFetchActionRedirect:j}=g===void 0?{}:g;d.revalidate&&(Re=!0);let F=ge(u.location,d.location,k({_isRedirect:!0},j?{_isFetchActionRedirect:!0}:{}));if(H(F,"Expected a location on the redirect navigation"),r){let Z=!1;if(d.reloadDocument)Z=!0;else if(Lt.test(d.location)){const se=e.history.createURL(d.location);Z=se.origin!==t.location.origin||Ie(se.pathname,h)==null}if(Z){T?t.location.replace(d.location):t.location.assign(d.location);return}}I=null;let U=T===!0?y.Replace:y.Push,L=S||br(u.navigation);if(Qt.has(d.status)&&L&&ye(L.formMethod))await Oe(U,F,{submission:k({},L,{formAction:d.location}),preventScrollReset:G});else if(j)await Oe(U,F,{overrideNavigation:Ut(F),fetcherSubmission:L,preventScrollReset:G});else{let Z=Ut(F,L);await Oe(U,F,{overrideNavigation:Z,preventScrollReset:G})}}async function xr(u,d,g,S,T){let j=await Promise.all([...g.map(L=>W("loader",T,L,d,c,a,h)),...S.map(L=>L.matches&&L.match&&L.controller?W("loader",Q(e.history,L.path,L.controller.signal),L.match,L.matches,c,a,h):{type:Y.error,error:X(404,{pathname:L.path})})]),F=j.slice(0,g.length),U=j.slice(g.length);return await Promise.all([yr(u,g,F,F.map(()=>T.signal),!1,s.loaderData),yr(u,S.map(L=>L.match),U,S.map(L=>L.controller?L.controller.signal:null),!0)]),{results:j,loaderResults:F,fetcherResults:U}}function Gt(){Re=!0,De.push(...tr()),Ge.forEach((u,d)=>{re.has(d)&&(Ze.push(d),je(d))})}function Ot(u,d,g){let S=Ee(s.matches,d);er(u),oe({errors:{[S.route.id]:g},fetchers:new Map(s.fetchers)})}function er(u){let d=s.fetchers.get(u);re.has(u)&&!(d&&d.state==="loading"&&Xe.has(u))&&je(u),Ge.delete(u),Xe.delete(u),Se.delete(u),s.fetchers.delete(u)}function je(u){let d=re.get(u);H(d,"Expected fetch controller: "+u),d.abort(),re.delete(u)}function Dr(u){for(let d of u){let g=wr(d),S=qe(g.data);s.fetchers.set(d,S)}}function Pr(){let u=[],d=!1;for(let g of Se){let S=s.fetchers.get(g);H(S,"Expected fetcher: "+g),S.state==="loading"&&(Se.delete(g),u.push(g),d=!0)}return Dr(u),d}function Cr(u){let d=[];for(let[g,S]of Xe)if(S<u){let T=s.fetchers.get(g);H(T,"Expected fetcher: "+g),T.state==="loading"&&(je(g),Xe.delete(g),d.push(g))}return Dr(d),d.length>0}function Gr(u,d){let g=s.blockers.get(u)||ke;return Je.get(u)!==d&&Je.set(u,d),g}function Sr(u){s.blockers.delete(u),Je.delete(u)}function jt(u,d){let g=s.blockers.get(u)||ke;H(g.state==="unblocked"&&d.state==="blocked"||g.state==="blocked"&&d.state==="blocked"||g.state==="blocked"&&d.state==="proceeding"||g.state==="blocked"&&d.state==="unblocked"||g.state==="proceeding"&&d.state==="unblocked","Invalid blocker state transition: "+g.state+" -> "+d.state);let S=new Map(s.blockers);S.set(u,d),oe({blockers:S})}function Lr(u){let{currentLocation:d,nextLocation:g,historyAction:S}=u;if(Je.size===0)return;Je.size>1&&ue(!1,"A router only supports one blocker at a time");let T=Array.from(Je.entries()),[j,F]=T[T.length-1],U=s.blockers.get(j);if(!(U&&U.state==="proceeding")&&F({currentLocation:d,nextLocation:g,historyAction:S}))return j}function tr(u){let d=[];return We.forEach((g,S)=>{(!u||u(S))&&(g.cancel(),d.push(S),We.delete(S))}),d}function en(u,d,g){if(C=u,w=d,E=g||null,!P&&s.navigation===St){P=!0;let S=Ur(s.location,s.matches);S!=null&&oe({restoreScrollPosition:S})}return()=>{C=null,w=null,E=null}}function Mr(u,d){return E&&E(u,d.map(S=>zr(S,s.loaderData)))||u.key}function tn(u,d){if(C&&w){let g=Mr(u,d);C[g]=w()}}function Ur(u,d){if(C){let g=Mr(u,d),S=C[g];if(typeof S=="number")return S}return null}function rn(u){c={},f=Te(u,a,void 0,c)}return B={get basename(){return h},get state(){return s},get routes(){return i},initialize:Jr,subscribe:$r,enableScrollRestoration:en,navigate:Er,fetch:qr,revalidate:Vr,createHref:u=>e.history.createHref(u),encodeLocation:u=>e.history.encodeLocation(u),getFetcher:wr,deleteFetcher:er,dispose:Kr,getBlocker:Gr,deleteBlocker:Sr,_internalFetchControllers:re,_internalActiveDeferreds:We,_internalSetRoutes:rn},B}const pr=Symbol("deferred");function mr(e,t){H(e.length>0,"You must provide a non-empty routes array to createStaticHandler");let r={},n=(t?t.basename:null)||"/",a;if(t!=null&&t.mapRouteProperties)a=t.mapRouteProperties;else if(t!=null&&t.detectErrorBoundary){let x=t.detectErrorBoundary;a=C=>({hasErrorBoundary:x(C)})}else a=Mt;let c=Te(e,a,void 0,r);async function i(x,C){let{requestContext:E}=C===void 0?{}:C,w=new URL(x.url),P=x.method,m=ge("",ve(w),null,"default"),_=be(c,m,n);if(!qt(P)&&P!=="HEAD"){let B=X(405,{method:P}),{matches:s,route:N}=de(c);return{basename:n,location:m,matches:s,loaderData:{},actionData:null,errors:{[N.id]:B},statusCode:B.status,loaderHeaders:{},actionHeaders:{},activeDeferreds:null}}else if(!_){let B=X(404,{pathname:m.pathname}),{matches:s,route:N}=de(c);return{basename:n,location:m,matches:s,loaderData:{},actionData:null,errors:{[N.id]:B},statusCode:B.status,loaderHeaders:{},actionHeaders:{},activeDeferreds:null}}let K=await h(x,m,_,E);return Qe(K)?K:k({location:m,basename:n},K)}async function f(x,C){let{routeId:E,requestContext:w}=C===void 0?{}:C,P=new URL(x.url),m=x.method,_=ge("",ve(P),null,"default"),K=be(c,_,n);if(!qt(m)&&m!=="HEAD"&&m!=="OPTIONS")throw X(405,{method:m});if(!K)throw X(404,{pathname:_.pathname});let B=E?K.find(I=>I.route.id===E):st(K,_);if(E&&!B)throw X(403,{pathname:_.pathname,routeId:E});if(!B)throw X(404,{pathname:_.pathname});let s=await h(x,_,K,w,B);if(Qe(s))return s;let N=s.errors?Object.values(s.errors)[0]:void 0;if(N!==void 0)throw N;if(s.actionData)return Object.values(s.actionData)[0];if(s.loaderData){var G;let I=Object.values(s.loaderData)[0];return(G=s.activeDeferreds)!=null&&G[B.route.id]&&(I[pr]=s.activeDeferreds[B.route.id]),I}}async function h(x,C,E,w,P){H(x.signal,"query()/queryRoute() requests must contain an AbortController signal");try{if(ye(x.method.toLowerCase()))return await v(x,E,P||st(E,C),w,P!=null);let m=await b(x,E,w,P);return Qe(m)?m:k({},m,{actionData:null,actionHeaders:{}})}catch(m){if(kr(m)){if(m.type===Y.error)throw m.response;return m.response}if(Nr(m))return m;throw m}}async function v(x,C,E,w,P){let m;if(!E.route.action&&!E.route.lazy){let B=X(405,{method:x.method,pathname:new URL(x.url).pathname,routeId:E.route.id});if(P)throw B;m={type:Y.error,error:B}}else if(m=await W("action",x,E,C,r,a,n,{isStaticRequest:!0,isRouteRequest:P,requestContext:w}),x.signal.aborted){let B=P?"queryRoute":"query";throw new Error(B+"() call aborted")}if(He(m))throw new Response(null,{status:m.status,headers:{Location:m.location}});if(Ae(m)){let B=X(400,{type:"defer-action"});if(P)throw B;m={type:Y.error,error:B}}if(P){if(ze(m))throw m.error;return{matches:[E],loaderData:{},actionData:{[E.route.id]:m.data},errors:null,statusCode:200,loaderHeaders:{},actionHeaders:{},activeDeferreds:null}}if(ze(m)){let B=Ee(C,E.route.id),s=await b(x,C,w,void 0,{[B.route.id]:m.error});return k({},s,{statusCode:ot(m.error)?m.error.status:500,actionData:null,actionHeaders:k({},m.headers?{[E.route.id]:m.headers}:{})})}let _=new Request(x.url,{headers:x.headers,redirect:x.redirect,signal:x.signal}),K=await b(_,C,w);return k({},K,m.statusCode?{statusCode:m.statusCode}:{},{actionData:{[E.route.id]:m.data},actionHeaders:k({},m.headers?{[E.route.id]:m.headers}:{})})}async function b(x,C,E,w,P){let m=w!=null;if(m&&!(w!=null&&w.route.loader)&&!(w!=null&&w.route.lazy))throw X(400,{method:x.method,pathname:new URL(x.url).pathname,routeId:w==null?void 0:w.route.id});let K=(w?[w]:R(C,Object.keys(P||{})[0])).filter(I=>I.route.loader||I.route.lazy);if(K.length===0)return{matches:C,loaderData:C.reduce((I,me)=>Object.assign(I,{[me.route.id]:null}),{}),errors:P||null,statusCode:200,loaderHeaders:{},activeDeferreds:null};let B=await Promise.all([...K.map(I=>W("loader",x,I,C,r,a,n,{isStaticRequest:!0,isRouteRequest:m,requestContext:E}))]);if(x.signal.aborted){let I=m?"queryRoute":"query";throw new Error(I+"() call aborted")}let s=new Map,N=le(C,K,B,P,s),G=new Set(K.map(I=>I.route.id));return C.forEach(I=>{G.has(I.route.id)||(N.loaderData[I.route.id]=null)}),k({},N,{matches:C,activeDeferreds:s.size>0?Object.fromEntries(s.entries()):null})}return{dataRoutes:c,query:i,queryRoute:f}}function Tr(e,t,r){return k({},t,{statusCode:500,errors:{[t._deepestRenderedBoundaryId||e[0].id]:r}})}function o(e){return e!=null&&("formData"in e&&e.formData!=null||"body"in e&&e.body!==void 0)}function l(e,t,r,n,a,c,i){let f,h;if(c!=null&&i!=="path"){f=[];for(let b of t)if(f.push(b),b.route.id===c){h=b;break}}else f=t,h=t[t.length-1];let v=zt(a||".",xt(f).map(b=>b.pathnameBase),Ie(e.pathname,r)||e.pathname,i==="path");return a==null&&(v.search=e.search,v.hash=e.hash),(a==null||a===""||a===".")&&h&&h.route.index&&!Zt(v.search)&&(v.search=v.search?v.search.replace(/^\?/,"?index&"):"?index"),n&&r!=="/"&&(v.pathname=v.pathname==="/"?r:Ne([r,v.pathname])),ve(v)}function p(e,t,r,n){if(!n||!o(n))return{path:r};if(n.formMethod&&!qt(n.formMethod))return{path:r,error:X(405,{method:n.formMethod})};let a=()=>({path:r,error:X(400,{type:"invalid-body"})}),c=n.formMethod||"get",i=e?c.toUpperCase():c.toLowerCase(),f=vr(r);if(n.body!==void 0){if(n.formEncType==="text/plain"){if(!ye(i))return a();let C=typeof n.body=="string"?n.body:n.body instanceof FormData||n.body instanceof URLSearchParams?Array.from(n.body.entries()).reduce((E,w)=>{let[P,m]=w;return""+E+P+"="+m+`
20
+ `},""):String(n.body);return{path:r,submission:{formMethod:i,formAction:f,formEncType:n.formEncType,formData:void 0,json:void 0,text:C}}}else if(n.formEncType==="application/json"){if(!ye(i))return a();try{let C=typeof n.body=="string"?JSON.parse(n.body):n.body;return{path:r,submission:{formMethod:i,formAction:f,formEncType:n.formEncType,formData:void 0,json:C,text:void 0}}}catch{return a()}}}H(typeof FormData=="function","FormData is not available in this environment");let h,v;if(n.formData)h=q(n.formData),v=n.formData;else if(n.body instanceof FormData)h=q(n.body),v=n.body;else if(n.body instanceof URLSearchParams)h=n.body,v=ae(h);else if(n.body==null)h=new URLSearchParams,v=new FormData;else try{h=new URLSearchParams(n.body),v=ae(h)}catch{return a()}let b={formMethod:i,formAction:f,formEncType:n&&n.formEncType||"application/x-www-form-urlencoded",formData:v,json:void 0,text:void 0};if(ye(b.formMethod))return{path:r,submission:b};let x=te(r);return t&&x.search&&Zt(x.search)&&h.append("index",""),x.search="?"+h,{path:ve(x),submission:b}}function R(e,t){let r=e;if(t){let n=e.findIndex(a=>a.route.id===t);n>=0&&(r=e.slice(0,n))}return r}function D(e,t,r,n,a,c,i,f,h,v,b,x,C,E){let w=E?Object.values(E)[0]:C?Object.values(C)[0]:void 0,P=e.createURL(t.location),m=e.createURL(a),_=E?Object.keys(E)[0]:void 0,B=R(r,_).filter((N,G)=>{if(N.route.lazy)return!0;if(N.route.loader==null)return!1;if(M(t.loaderData,t.matches[G],N)||i.some(Re=>Re===N.route.id))return!0;let I=t.matches[G],me=N;return J(N,k({currentUrl:P,currentParams:I.params,nextUrl:m,nextParams:me.params},n,{actionResult:w,defaultShouldRevalidate:c||P.pathname+P.search===m.pathname+m.search||P.search!==m.search||O(I,me)}))}),s=[];return h.forEach((N,G)=>{if(!r.some(Ze=>Ze.route.id===N.routeId))return;let I=be(b,N.path,x);if(!I){s.push({key:G,routeId:N.routeId,path:N.path,matches:null,match:null,controller:null});return}let me=t.fetchers.get(G),Re=st(I,N.path),De=!1;v.has(G)?De=!1:f.includes(G)?De=!0:me&&me.state!=="idle"&&me.data===void 0?De=c:De=J(Re,k({currentUrl:P,currentParams:t.matches[t.matches.length-1].params,nextUrl:m,nextParams:r[r.length-1].params},n,{actionResult:w,defaultShouldRevalidate:c})),De&&s.push({key:G,routeId:N.routeId,path:N.path,matches:I,match:Re,controller:new AbortController})}),[B,s]}function M(e,t,r){let n=!t||r.route.id!==t.route.id,a=e[r.route.id]===void 0;return n||a}function O(e,t){let r=e.route.path;return e.pathname!==t.pathname||r!=null&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function J(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if(typeof r=="boolean")return r}return t.defaultShouldRevalidate}async function A(e,t,r){if(!e.lazy)return;let n=await e.lazy();if(!e.lazy)return;let a=r[e.id];H(a,"No route found in manifest");let c={};for(let i in n){let h=a[i]!==void 0&&i!=="hasErrorBoundary";ue(!h,'Route "'+a.id+'" has a static property "'+i+'" defined but its lazy function is also returning a value for this property. '+('The lazy route property "'+i+'" will be ignored.')),!h&&!lr.has(i)&&(c[i]=n[i])}Object.assign(a,c),Object.assign(a,k({},t(a),{lazy:void 0}))}async function W(e,t,r,n,a,c,i,f){f===void 0&&(f={});let h,v,b,x=w=>{let P,m=new Promise((_,K)=>P=K);return b=()=>P(),t.signal.addEventListener("abort",b),Promise.race([w({request:t,params:r.params,context:f.requestContext}),m])};try{let w=r.route[e];if(r.route.lazy)if(w)v=(await Promise.all([x(w),A(r.route,c,a)]))[0];else if(await A(r.route,c,a),w=r.route[e],w)v=await x(w);else if(e==="action"){let P=new URL(t.url),m=P.pathname+P.search;throw X(405,{method:t.method,pathname:m,routeId:r.route.id})}else return{type:Y.data,data:void 0};else if(w)v=await x(w);else{let P=new URL(t.url),m=P.pathname+P.search;throw X(404,{pathname:m})}H(v!==void 0,"You defined "+(e==="action"?"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(w){h=Y.error,v=w}finally{b&&t.signal.removeEventListener("abort",b)}if(Qe(v)){let w=v.status;if(it.has(w)){let _=v.headers.get("Location");if(H(_,"Redirects returned/thrown from loaders/actions must have a Location header"),!Lt.test(_))_=l(new URL(t.url),n.slice(0,n.indexOf(r)+1),i,!0,_);else if(!f.isStaticRequest){let K=new URL(t.url),B=_.startsWith("//")?new URL(K.protocol+_):new URL(_),s=Ie(B.pathname,i)!=null;B.origin===K.origin&&s&&(_=B.pathname+B.search+B.hash)}if(f.isStaticRequest)throw v.headers.set("Location",_),v;return{type:Y.redirect,status:w,location:_,revalidate:v.headers.get("X-Remix-Revalidate")!==null,reloadDocument:v.headers.get("X-Remix-Reload-Document")!==null}}if(f.isRouteRequest)throw{type:h===Y.error?Y.error:Y.data,response:v};let P,m=v.headers.get("Content-Type");return m&&/\bapplication\/json\b/.test(m)?P=await v.json():P=await v.text(),h===Y.error?{type:h,error:new $t(w,v.statusText,P),headers:v.headers}:{type:Y.data,data:P,statusCode:v.status,headers:v.headers}}if(h===Y.error)return{type:h,error:v};if(Br(v)){var C,E;return{type:Y.deferred,deferredData:v,statusCode:(C=v.init)==null?void 0:C.status,headers:((E=v.init)==null?void 0:E.headers)&&new Headers(v.init.headers)}}return{type:Y.data,data:v}}function Q(e,t,r,n){let a=e.createURL(vr(t)).toString(),c={signal:r};if(n&&ye(n.formMethod)){let{formMethod:i,formEncType:f}=n;c.method=i.toUpperCase(),f==="application/json"?(c.headers=new Headers({"Content-Type":f}),c.body=JSON.stringify(n.json)):f==="text/plain"?c.body=n.text:f==="application/x-www-form-urlencoded"&&n.formData?c.body=q(n.formData):c.body=n.formData}return new Request(a,c)}function q(e){let t=new URLSearchParams;for(let[r,n]of e.entries())t.append(r,typeof n=="string"?n:n.name);return t}function ae(e){let t=new FormData;for(let[r,n]of e.entries())t.append(r,n);return t}function le(e,t,r,n,a){let c={},i=null,f,h=!1,v={};return r.forEach((b,x)=>{let C=t[x].route.id;if(H(!He(b),"Cannot handle redirect results in processLoaderData"),ze(b)){let E=Ee(e,C),w=b.error;n&&(w=Object.values(n)[0],n=void 0),i=i||{},i[E.route.id]==null&&(i[E.route.id]=w),c[C]=void 0,h||(h=!0,f=ot(b.error)?b.error.status:500),b.headers&&(v[C]=b.headers)}else Ae(b)?(a.set(C,b.deferredData),c[C]=b.deferredData.data):c[C]=b.data,b.statusCode!=null&&b.statusCode!==200&&!h&&(f=b.statusCode),b.headers&&(v[C]=b.headers)}),n&&(i=n,c[Object.keys(n)[0]]=void 0),{loaderData:c,errors:i,statusCode:f||200,loaderHeaders:v}}function pe(e,t,r,n,a,c,i,f){let{loaderData:h,errors:v}=le(t,r,n,a,f);for(let b=0;b<c.length;b++){let{key:x,match:C,controller:E}=c[b];H(i!==void 0&&i[b]!==void 0,"Did not find corresponding fetcher result");let w=i[b];if(!(E&&E.signal.aborted))if(ze(w)){let P=Ee(e.matches,C==null?void 0:C.route.id);v&&v[P.route.id]||(v=k({},v,{[P.route.id]:w.error})),e.fetchers.delete(x)}else if(He(w))H(!1,"Unhandled fetcher revalidation redirect");else if(Ae(w))H(!1,"Unhandled fetcher deferred data");else{let P=qe(w.data);e.fetchers.set(x,P)}}return{loaderData:h,errors:v}}function Ue(e,t,r,n){let a=k({},t);for(let c of r){let i=c.route.id;if(t.hasOwnProperty(i)?t[i]!==void 0&&(a[i]=t[i]):e[i]!==void 0&&c.route.loader&&(a[i]=e[i]),n&&n.hasOwnProperty(i))break}return a}function Ee(e,t){return(t?e.slice(0,e.findIndex(n=>n.route.id===t)+1):[...e]).reverse().find(n=>n.route.hasErrorBoundary===!0)||e[0]}function de(e){let t=e.find(r=>r.index||!r.path||r.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function X(e,t){let{pathname:r,routeId:n,method:a,type:c}=t===void 0?{}:t,i="Unknown Server Error",f="Unknown @remix-run/router error";return e===400?(i="Bad Request",a&&r&&n?f="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.":c==="defer-action"?f="defer() is not supported in actions":c==="invalid-body"&&(f="Unable to encode submission body")):e===403?(i="Forbidden",f='Route "'+n+'" does not match URL "'+r+'"'):e===404?(i="Not Found",f='No route matches URL "'+r+'"'):e===405&&(i="Method Not Allowed",a&&r&&n?f="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&&(f='Invalid request method "'+a.toUpperCase()+'"')),new $t(e||500,i,new Error(f),!0)}function gr(e){for(let t=e.length-1;t>=0;t--){let r=e[t];if(He(r))return{result:r,idx:t}}}function vr(e){let t=typeof e=="string"?te(e):e;return ve(k({},t,{hash:""}))}function Ir(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===""?t.hash!=="":e.hash===t.hash?!0:t.hash!==""}function Ae(e){return e.type===Y.deferred}function ze(e){return e.type===Y.error}function He(e){return(e&&e.type)===Y.redirect}function Br(e){let t=e;return t&&typeof t=="object"&&typeof t.data=="object"&&typeof t.subscribe=="function"&&typeof t.cancel=="function"&&typeof t.resolveData=="function"}function Qe(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body!="undefined"}function Nr(e){if(!Qe(e))return!1;let t=e.status,r=e.headers.get("Location");return t>=300&&t<=399&&r!=null}function kr(e){return e&&Qe(e.response)&&(e.type===Y.data||e.type===Y.error)}function qt(e){return Ct.has(e.toLowerCase())}function ye(e){return Vt.has(e.toLowerCase())}async function yr(e,t,r,n,a,c){for(let i=0;i<r.length;i++){let f=r[i],h=t[i];if(!h)continue;let v=e.find(x=>x.route.id===h.route.id),b=v!=null&&!O(v,h)&&(c&&c[h.route.id])!==void 0;if(Ae(f)&&(a||b)){let x=n[i];H(x,"Expected an AbortSignal for revalidating fetcher deferred result"),await Rr(f,x,a).then(C=>{C&&(r[i]=C||r[i])})}}}async function Rr(e,t,r){if(r===void 0&&(r=!1),!await e.deferredData.resolveData(t)){if(r)try{return{type:Y.data,data:e.deferredData.unwrappedData}}catch(a){return{type:Y.error,error:a}}return{type:Y.data,data:e.deferredData.data}}}function Zt(e){return new URLSearchParams(e).getAll("index").some(t=>t==="")}function zr(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}}function st(e,t){let r=typeof t=="string"?te(t).search:t.search;if(e[e.length-1].route.index&&Zt(r||""))return e[e.length-1];let n=xt(e);return n[n.length-1]}function br(e){let{formMethod:t,formAction:r,formEncType:n,text:a,formData:c,json:i}=e;if(!(!t||!r||!n)){if(a!=null)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:void 0,text:a};if(c!=null)return{formMethod:t,formAction:r,formEncType:n,formData:c,json:void 0,text:void 0};if(i!==void 0)return{formMethod:t,formAction:r,formEncType:n,formData:void 0,json:i,text:void 0}}}function Ut(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 Hr(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function ut(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," _hasFetcherDoneAnything ":!0}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t," _hasFetcherDoneAnything ":!0}}function Wr(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," _hasFetcherDoneAnything ":!0}}function qe(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e," _hasFetcherDoneAnything ":!0}}}}]);})();
21
+
22
+ //# sourceMappingURL=module-react-router.8e9755f1.js.map