@kuadrant/kuadrant-backstage-plugin-frontend 0.0.2-dev-24d0757 → 0.0.2-dev-7d09bfa

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 (195) hide show
  1. package/dist/components/ApiAccessCard/ApiAccessCard.esm.js +229 -11
  2. package/dist/components/ApiAccessCard/ApiAccessCard.esm.js.map +1 -1
  3. package/dist/components/ApiKeyManagementTab/ApiKeyManagementTab.esm.js +15 -151
  4. package/dist/components/ApiKeyManagementTab/ApiKeyManagementTab.esm.js.map +1 -1
  5. package/dist/components/ApiProductDetailPage/ApiProductDetailPage.esm.js +25 -6
  6. package/dist/components/ApiProductDetailPage/ApiProductDetailPage.esm.js.map +1 -1
  7. package/dist/components/ApiProductDetails/ApiProductDetails.esm.js +6 -1
  8. package/dist/components/ApiProductDetails/ApiProductDetails.esm.js.map +1 -1
  9. package/dist/components/ApiProductInfoCard/ApiProductInfoCard.esm.js +15 -2
  10. package/dist/components/ApiProductInfoCard/ApiProductInfoCard.esm.js.map +1 -1
  11. package/dist/components/CreateAPIProductDialog/CreateAPIProductDialog.esm.js +2 -4
  12. package/dist/components/CreateAPIProductDialog/CreateAPIProductDialog.esm.js.map +1 -1
  13. package/dist/components/OidcProviderCard/OidcProviderCard.esm.js +23 -0
  14. package/dist/components/OidcProviderCard/OidcProviderCard.esm.js.map +1 -0
  15. package/dist/components/RequestAccessDialog/RequestAccessDialog.esm.js +167 -0
  16. package/dist/components/RequestAccessDialog/RequestAccessDialog.esm.js.map +1 -0
  17. package/dist/index.d.ts +1 -2
  18. package/dist/index.esm.js +1 -1
  19. package/dist/plugin.esm.js +1 -9
  20. package/dist/plugin.esm.js.map +1 -1
  21. package/dist/utils/validation.esm.js.map +1 -1
  22. package/dist-scalprum/configSchema.json +27 -1
  23. package/dist-scalprum/internal.plugin-kuadrant.5d9e1e73c7f21bbed39a.js +2 -0
  24. package/dist-scalprum/internal.plugin-kuadrant.5d9e1e73c7f21bbed39a.js.map +1 -0
  25. package/dist-scalprum/plugin-manifest.json +2 -2
  26. package/dist-scalprum/static/1994.19e6a1c5.chunk.js +3 -0
  27. package/dist-scalprum/static/1994.19e6a1c5.chunk.js.map +1 -0
  28. package/dist-scalprum/static/{2628.6619bf8b.chunk.js → 2628.0605e07f.chunk.js} +3 -3
  29. package/dist-scalprum/static/2628.0605e07f.chunk.js.map +1 -0
  30. package/dist-scalprum/static/2752.df63f31c.chunk.js +2 -0
  31. package/dist-scalprum/static/2752.df63f31c.chunk.js.map +1 -0
  32. package/dist-scalprum/static/2822.27a4ac5b.chunk.js +2 -0
  33. package/dist-scalprum/static/2822.27a4ac5b.chunk.js.map +1 -0
  34. package/dist-scalprum/static/2967.8d9c1b1f.chunk.js +2 -0
  35. package/dist-scalprum/static/2967.8d9c1b1f.chunk.js.map +1 -0
  36. package/dist-scalprum/static/{3097.4bd6b35f.chunk.js → 3097.582b68d3.chunk.js} +2 -2
  37. package/dist-scalprum/static/{3097.4bd6b35f.chunk.js.map → 3097.582b68d3.chunk.js.map} +1 -1
  38. package/dist-scalprum/static/327.cd6b3fee.chunk.js +2 -0
  39. package/dist-scalprum/static/327.cd6b3fee.chunk.js.map +1 -0
  40. package/dist-scalprum/static/3459.a7c29521.chunk.js +2 -0
  41. package/dist-scalprum/static/3459.a7c29521.chunk.js.map +1 -0
  42. package/dist-scalprum/static/3584.c820a5c7.chunk.js +2 -0
  43. package/dist-scalprum/static/3584.c820a5c7.chunk.js.map +1 -0
  44. package/dist-scalprum/static/3587.490690d6.chunk.js +2 -0
  45. package/dist-scalprum/static/3587.490690d6.chunk.js.map +1 -0
  46. package/dist-scalprum/static/{3647.b96f9b3e.chunk.js → 3647.67079e5f.chunk.js} +2 -2
  47. package/dist-scalprum/static/{3647.b96f9b3e.chunk.js.map → 3647.67079e5f.chunk.js.map} +1 -1
  48. package/dist-scalprum/static/3650.4f0dc550.chunk.js +2 -0
  49. package/dist-scalprum/static/3650.4f0dc550.chunk.js.map +1 -0
  50. package/dist-scalprum/static/3947.7458971d.chunk.js +2 -0
  51. package/dist-scalprum/static/3947.7458971d.chunk.js.map +1 -0
  52. package/dist-scalprum/static/3984.7bc07774.chunk.js +2 -0
  53. package/dist-scalprum/static/3984.7bc07774.chunk.js.map +1 -0
  54. package/dist-scalprum/static/4302.9a59485e.chunk.js +2 -0
  55. package/dist-scalprum/static/4302.9a59485e.chunk.js.map +1 -0
  56. package/dist-scalprum/static/441.f708f1e0.chunk.js +2 -0
  57. package/dist-scalprum/static/441.f708f1e0.chunk.js.map +1 -0
  58. package/dist-scalprum/static/4611.0d064cdf.chunk.js +2 -0
  59. package/dist-scalprum/static/4611.0d064cdf.chunk.js.map +1 -0
  60. package/dist-scalprum/static/4651.c85cecc4.chunk.js +2 -0
  61. package/dist-scalprum/static/4651.c85cecc4.chunk.js.map +1 -0
  62. package/dist-scalprum/static/{4682.6959fcd1.chunk.js → 4682.3c7098a8.chunk.js} +2 -2
  63. package/dist-scalprum/static/{4682.6959fcd1.chunk.js.map → 4682.3c7098a8.chunk.js.map} +1 -1
  64. package/dist-scalprum/static/501.87de76da.chunk.js +3 -0
  65. package/dist-scalprum/static/501.87de76da.chunk.js.LICENSE.txt +21 -0
  66. package/dist-scalprum/static/501.87de76da.chunk.js.map +1 -0
  67. package/dist-scalprum/static/{5010.a4aa0f8e.chunk.js → 5010.2228c754.chunk.js} +3 -3
  68. package/dist-scalprum/static/{5010.a4aa0f8e.chunk.js.map → 5010.2228c754.chunk.js.map} +1 -1
  69. package/dist-scalprum/static/5203.43732b3f.chunk.js +2 -0
  70. package/dist-scalprum/static/5203.43732b3f.chunk.js.map +1 -0
  71. package/dist-scalprum/static/5235.2a59dc45.chunk.js +2 -0
  72. package/dist-scalprum/static/5235.2a59dc45.chunk.js.map +1 -0
  73. package/dist-scalprum/static/5453.b3ee2392.chunk.js +2 -0
  74. package/dist-scalprum/static/5453.b3ee2392.chunk.js.map +1 -0
  75. package/dist-scalprum/static/{7556.aa8a002f.chunk.js → 5568.5dbce633.chunk.js} +3 -3
  76. package/dist-scalprum/static/{3466.43dfe991.chunk.js.LICENSE.txt → 5568.5dbce633.chunk.js.LICENSE.txt} +9 -0
  77. package/dist-scalprum/static/5568.5dbce633.chunk.js.map +1 -0
  78. package/dist-scalprum/static/6272.ef31cb1c.chunk.js +2 -0
  79. package/dist-scalprum/static/6272.ef31cb1c.chunk.js.map +1 -0
  80. package/dist-scalprum/static/6371.c4899d73.chunk.js +3 -0
  81. package/dist-scalprum/static/6371.c4899d73.chunk.js.map +1 -0
  82. package/dist-scalprum/static/6386.6386.ce38cef3.css +5 -0
  83. package/dist-scalprum/static/6386.6386.ce38cef3.css.map +1 -0
  84. package/dist-scalprum/static/6386.903891f3.chunk.js +3 -0
  85. package/dist-scalprum/static/6386.903891f3.chunk.js.LICENSE.txt +26 -0
  86. package/dist-scalprum/static/6386.903891f3.chunk.js.map +1 -0
  87. package/dist-scalprum/static/65.0e01be7c.chunk.js +2 -0
  88. package/dist-scalprum/static/65.0e01be7c.chunk.js.map +1 -0
  89. package/dist-scalprum/static/6753.76832e72.chunk.js +2 -0
  90. package/dist-scalprum/static/6753.76832e72.chunk.js.map +1 -0
  91. package/dist-scalprum/static/{8563.7e068fb0.chunk.js → 6763.d6cd937f.chunk.js} +3 -3
  92. package/dist-scalprum/static/6763.d6cd937f.chunk.js.map +1 -0
  93. package/dist-scalprum/static/{6800.736d5da3.chunk.js → 6800.8ec3a2eb.chunk.js} +2 -2
  94. package/dist-scalprum/static/6800.8ec3a2eb.chunk.js.map +1 -0
  95. package/dist-scalprum/static/{6840.4728fab9.chunk.js → 6840.6cc88a16.chunk.js} +2 -2
  96. package/dist-scalprum/static/6840.6cc88a16.chunk.js.map +1 -0
  97. package/dist-scalprum/static/7076.8745d395.chunk.js +2 -0
  98. package/dist-scalprum/static/7076.8745d395.chunk.js.map +1 -0
  99. package/dist-scalprum/static/7367.62c9669e.chunk.js +3 -0
  100. package/dist-scalprum/static/7367.62c9669e.chunk.js.LICENSE.txt +21 -0
  101. package/dist-scalprum/static/7367.62c9669e.chunk.js.map +1 -0
  102. package/dist-scalprum/static/7791.55db7365.chunk.js +2 -0
  103. package/dist-scalprum/static/7791.55db7365.chunk.js.map +1 -0
  104. package/dist-scalprum/static/8172.e89bbae7.chunk.js +2 -0
  105. package/dist-scalprum/static/8172.e89bbae7.chunk.js.map +1 -0
  106. package/dist-scalprum/static/8627.111cbac9.chunk.js +2 -0
  107. package/dist-scalprum/static/8627.111cbac9.chunk.js.map +1 -0
  108. package/dist-scalprum/static/8799.4ea4639c.chunk.js +2 -0
  109. package/dist-scalprum/static/8799.4ea4639c.chunk.js.map +1 -0
  110. package/dist-scalprum/static/9510.e4112e19.chunk.js +3 -0
  111. package/dist-scalprum/static/{2946.167c50c2.chunk.js.LICENSE.txt → 9510.e4112e19.chunk.js.LICENSE.txt} +0 -10
  112. package/dist-scalprum/static/9510.e4112e19.chunk.js.map +1 -0
  113. package/dist-scalprum/static/9644.7d342123.chunk.js +2 -0
  114. package/dist-scalprum/static/9644.7d342123.chunk.js.map +1 -0
  115. package/dist-scalprum/static/993.c164940e.chunk.js +2 -0
  116. package/dist-scalprum/static/993.c164940e.chunk.js.map +1 -0
  117. package/dist-scalprum/static/exposed-PluginRoot.5b6638e2.chunk.js +2 -0
  118. package/dist-scalprum/static/exposed-PluginRoot.5b6638e2.chunk.js.map +1 -0
  119. package/package.json +3 -1
  120. package/dist/components/PlanPolicyDetailPage/PlanPolicyDetailPage.esm.js +0 -89
  121. package/dist/components/PlanPolicyDetailPage/PlanPolicyDetailPage.esm.js.map +0 -1
  122. package/dist/components/PlanPolicyDetailPage/index.esm.js +0 -2
  123. package/dist/components/PlanPolicyDetailPage/index.esm.js.map +0 -1
  124. package/dist-scalprum/internal.plugin-kuadrant.95817f34e88db81b5e8f.js +0 -2
  125. package/dist-scalprum/internal.plugin-kuadrant.95817f34e88db81b5e8f.js.map +0 -1
  126. package/dist-scalprum/static/1085.536aa0fa.chunk.js +0 -3
  127. package/dist-scalprum/static/1085.536aa0fa.chunk.js.map +0 -1
  128. package/dist-scalprum/static/1613.71f0fccd.chunk.js +0 -3
  129. package/dist-scalprum/static/1613.71f0fccd.chunk.js.LICENSE.txt +0 -10
  130. package/dist-scalprum/static/1613.71f0fccd.chunk.js.map +0 -1
  131. package/dist-scalprum/static/1836.b74b4c40.chunk.js +0 -3
  132. package/dist-scalprum/static/1836.b74b4c40.chunk.js.LICENSE.txt +0 -10
  133. package/dist-scalprum/static/1836.b74b4c40.chunk.js.map +0 -1
  134. package/dist-scalprum/static/2198.5905970e.chunk.js +0 -2
  135. package/dist-scalprum/static/2198.5905970e.chunk.js.map +0 -1
  136. package/dist-scalprum/static/2628.6619bf8b.chunk.js.map +0 -1
  137. package/dist-scalprum/static/2759.fceb317f.chunk.js +0 -2
  138. package/dist-scalprum/static/2759.fceb317f.chunk.js.map +0 -1
  139. package/dist-scalprum/static/2928.4303c12e.chunk.js +0 -3
  140. package/dist-scalprum/static/2928.4303c12e.chunk.js.map +0 -1
  141. package/dist-scalprum/static/2946.167c50c2.chunk.js +0 -3
  142. package/dist-scalprum/static/2946.167c50c2.chunk.js.map +0 -1
  143. package/dist-scalprum/static/2967.ac3a4bee.chunk.js +0 -2
  144. package/dist-scalprum/static/2967.ac3a4bee.chunk.js.map +0 -1
  145. package/dist-scalprum/static/2987.1da15560.chunk.js +0 -2
  146. package/dist-scalprum/static/2987.1da15560.chunk.js.map +0 -1
  147. package/dist-scalprum/static/3459.5c90b5a3.chunk.js +0 -2
  148. package/dist-scalprum/static/3459.5c90b5a3.chunk.js.map +0 -1
  149. package/dist-scalprum/static/3466.43dfe991.chunk.js +0 -3
  150. package/dist-scalprum/static/3466.43dfe991.chunk.js.map +0 -1
  151. package/dist-scalprum/static/3503.66b6e510.chunk.js +0 -2
  152. package/dist-scalprum/static/3503.66b6e510.chunk.js.map +0 -1
  153. package/dist-scalprum/static/3650.515c743a.chunk.js +0 -2
  154. package/dist-scalprum/static/3650.515c743a.chunk.js.map +0 -1
  155. package/dist-scalprum/static/3657.59d45756.chunk.js +0 -3
  156. package/dist-scalprum/static/3657.59d45756.chunk.js.LICENSE.txt +0 -10
  157. package/dist-scalprum/static/3657.59d45756.chunk.js.map +0 -1
  158. package/dist-scalprum/static/428.0a290bc6.chunk.js +0 -2
  159. package/dist-scalprum/static/428.0a290bc6.chunk.js.map +0 -1
  160. package/dist-scalprum/static/441.9f02e61b.chunk.js +0 -2
  161. package/dist-scalprum/static/441.9f02e61b.chunk.js.map +0 -1
  162. package/dist-scalprum/static/5453.280127dd.chunk.js +0 -2
  163. package/dist-scalprum/static/5453.280127dd.chunk.js.map +0 -1
  164. package/dist-scalprum/static/5603.05d9ca7f.chunk.js +0 -2
  165. package/dist-scalprum/static/5603.05d9ca7f.chunk.js.map +0 -1
  166. package/dist-scalprum/static/6272.b5ee5195.chunk.js +0 -3
  167. package/dist-scalprum/static/6272.b5ee5195.chunk.js.LICENSE.txt +0 -9
  168. package/dist-scalprum/static/6272.b5ee5195.chunk.js.map +0 -1
  169. package/dist-scalprum/static/6371.c83dc422.chunk.js +0 -2
  170. package/dist-scalprum/static/6371.c83dc422.chunk.js.map +0 -1
  171. package/dist-scalprum/static/6422.97baf774.chunk.js +0 -2
  172. package/dist-scalprum/static/6422.97baf774.chunk.js.map +0 -1
  173. package/dist-scalprum/static/6800.736d5da3.chunk.js.map +0 -1
  174. package/dist-scalprum/static/6840.4728fab9.chunk.js.map +0 -1
  175. package/dist-scalprum/static/7556.aa8a002f.chunk.js.LICENSE.txt +0 -8
  176. package/dist-scalprum/static/7556.aa8a002f.chunk.js.map +0 -1
  177. package/dist-scalprum/static/7601.4df83556.chunk.js +0 -3
  178. package/dist-scalprum/static/7601.4df83556.chunk.js.LICENSE.txt +0 -9
  179. package/dist-scalprum/static/7601.4df83556.chunk.js.map +0 -1
  180. package/dist-scalprum/static/7791.12162a71.chunk.js +0 -2
  181. package/dist-scalprum/static/7791.12162a71.chunk.js.map +0 -1
  182. package/dist-scalprum/static/7984.c8511b89.chunk.js +0 -2
  183. package/dist-scalprum/static/7984.c8511b89.chunk.js.map +0 -1
  184. package/dist-scalprum/static/8365.d3360f18.chunk.js +0 -2
  185. package/dist-scalprum/static/8365.d3360f18.chunk.js.map +0 -1
  186. package/dist-scalprum/static/8563.7e068fb0.chunk.js.map +0 -1
  187. package/dist-scalprum/static/8799.7c749838.chunk.js +0 -2
  188. package/dist-scalprum/static/8799.7c749838.chunk.js.map +0 -1
  189. package/dist-scalprum/static/exposed-PluginRoot.a5792fb2.chunk.js +0 -2
  190. package/dist-scalprum/static/exposed-PluginRoot.a5792fb2.chunk.js.map +0 -1
  191. /package/dist-scalprum/static/{2928.4303c12e.chunk.js.LICENSE.txt → 1994.19e6a1c5.chunk.js.LICENSE.txt} +0 -0
  192. /package/dist-scalprum/static/{2628.6619bf8b.chunk.js.LICENSE.txt → 2628.0605e07f.chunk.js.LICENSE.txt} +0 -0
  193. /package/dist-scalprum/static/{5010.a4aa0f8e.chunk.js.LICENSE.txt → 5010.2228c754.chunk.js.LICENSE.txt} +0 -0
  194. /package/dist-scalprum/static/{1085.536aa0fa.chunk.js.LICENSE.txt → 6371.c4899d73.chunk.js.LICENSE.txt} +0 -0
  195. /package/dist-scalprum/static/{8563.7e068fb0.chunk.js.LICENSE.txt → 6763.d6cd937f.chunk.js.LICENSE.txt} +0 -0
@@ -0,0 +1,3 @@
1
+ /*! For license information please see 501.87de76da.chunk.js.LICENSE.txt */
2
+ "use strict";(self.webpackChunkinternal_plugin_kuadrant=self.webpackChunkinternal_plugin_kuadrant||[]).push([[501],{62882:(e,t,r)=>{r.r(t),r.d(t,{AbortedDeferredError:()=>i.AbortedDeferredError,Await:()=>i.Await,BrowserRouter:()=>wt,Form:()=>Lt,HashRouter:()=>bt,Link:()=>xt,MemoryRouter:()=>i.MemoryRouter,NavLink:()=>Dt,Navigate:()=>i.Navigate,NavigationType:()=>i.NavigationType,Outlet:()=>i.Outlet,Route:()=>i.Route,Router:()=>i.Router,RouterProvider:()=>vt,Routes:()=>i.Routes,ScrollRestoration:()=>At,UNSAFE_DataRouterContext:()=>i.UNSAFE_DataRouterContext,UNSAFE_DataRouterStateContext:()=>i.UNSAFE_DataRouterStateContext,UNSAFE_ErrorResponseImpl:()=>$,UNSAFE_FetchersContext:()=>ct,UNSAFE_LocationContext:()=>i.UNSAFE_LocationContext,UNSAFE_NavigationContext:()=>i.UNSAFE_NavigationContext,UNSAFE_RouteContext:()=>i.UNSAFE_RouteContext,UNSAFE_ViewTransitionContext:()=>ut,UNSAFE_useRouteId:()=>i.UNSAFE_useRouteId,UNSAFE_useScrollRestoration:()=>Bt,createBrowserRouter:()=>ot,createHashRouter:()=>it,createMemoryRouter:()=>i.createMemoryRouter,createPath:()=>i.createPath,createRoutesFromChildren:()=>i.createRoutesFromChildren,createRoutesFromElements:()=>i.createRoutesFromElements,createSearchParams:()=>Qe,defer:()=>i.defer,generatePath:()=>i.generatePath,isRouteErrorResponse:()=>i.isRouteErrorResponse,json:()=>i.json,matchPath:()=>i.matchPath,matchRoutes:()=>i.matchRoutes,parsePath:()=>i.parsePath,redirect:()=>i.redirect,redirectDocument:()=>i.redirectDocument,renderMatches:()=>i.renderMatches,replace:()=>i.replace,resolvePath:()=>i.resolvePath,unstable_HistoryRouter:()=>St,unstable_usePrompt:()=>Vt,useActionData:()=>i.useActionData,useAsyncError:()=>i.useAsyncError,useAsyncValue:()=>i.useAsyncValue,useBeforeUnload:()=>Wt,useBlocker:()=>i.useBlocker,useFetcher:()=>Ot,useFetchers:()=>It,useFormAction:()=>jt,useHref:()=>i.useHref,useInRouterContext:()=>i.useInRouterContext,useLinkClickHandler:()=>_t,useLoaderData:()=>i.useLoaderData,useLocation:()=>i.useLocation,useMatch:()=>i.useMatch,useMatches:()=>i.useMatches,useNavigate:()=>i.useNavigate,useNavigation:()=>i.useNavigation,useNavigationType:()=>i.useNavigationType,useOutlet:()=>i.useOutlet,useOutletContext:()=>i.useOutletContext,useParams:()=>i.useParams,useResolvedPath:()=>i.useResolvedPath,useRevalidator:()=>i.useRevalidator,useRouteError:()=>i.useRouteError,useRouteLoaderData:()=>i.useRouteLoaderData,useRoutes:()=>i.useRoutes,useSearchParams:()=>Ut,useSubmit:()=>Ft,useViewTransitionState:()=>Kt});var a,n=r(95478),o=r(40484),i=r(9829);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 a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},s.apply(this,arguments)}!function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"}(a||(a={}));const l="popstate";function u(e){return void 0===e&&(e={}),y(function(e,t){let{pathname:r,search:a,hash:n}=e.location;return p("",{pathname:r,search:a,hash:n},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:a="",hash:n=""}=v(e.location.hash.substr(1));return r.startsWith("/")||r.startsWith(".")||(r="/"+r),p("",{pathname:r,search:a,hash:n},t.state&&t.state.usr||null,t.state&&t.state.key||"default")},function(e,t){let r=e.document.querySelector("base"),a="";if(r&&r.getAttribute("href")){let t=e.location.href,r=t.indexOf("#");a=-1===r?t:t.slice(0,r)}return a+"#"+("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 new Error(t)}function h(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw new Error(t)}catch(e){}}}function f(e,t){return{usr:e.state,key:e.key,idx:t}}function p(e,t,r,a){return void 0===r&&(r=null),s({pathname:"string"==typeof e?e:e.pathname,search:"",hash:""},"string"==typeof t?v(t):t,{state:r,key:t&&t.key||a||Math.random().toString(36).substr(2,8)})}function m(e){let{pathname:t="/",search:r="",hash:a=""}=e;return r&&"?"!==r&&(t+="?"===r.charAt(0)?r:"?"+r),a&&"#"!==a&&(t+="#"===a.charAt(0)?a:"#"+a),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 a=e.indexOf("?");a>=0&&(t.search=e.substr(a),e=e.substr(0,a)),e&&(t.pathname=e)}return t}function y(e,t,r,n){void 0===n&&(n={});let{window:o=document.defaultView,v5Compat:i=!1}=n,u=o.history,c=a.Pop,h=null,v=y();function y(){return(u.state||{idx:null}).idx}function g(){c=a.Pop;let e=y(),t=null==e?null:e-v;v=e,h&&h({action:c,location:b.location,delta:t})}function w(e){let t="null"!==o.location.origin?o.location.origin:o.location.href,r="string"==typeof e?e:m(e);return r=r.replace(/ $/,"%20"),d(t,"No window.location.(origin|href) available to create URL for href: "+r),new URL(r,t)}null==v&&(v=0,u.replaceState(s({},u.state,{idx:v}),""));let b={get action(){return c},get location(){return e(o,u)},listen(e){if(h)throw new Error("A history only accepts one active listener");return o.addEventListener(l,g),h=e,()=>{o.removeEventListener(l,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=a.Push;let n=p(b.location,e,t);r&&r(n,e),v=y()+1;let s=f(n,v),l=b.createHref(n);try{u.pushState(s,"",l)}catch(e){if(e instanceof DOMException&&"DataCloneError"===e.name)throw e;o.location.assign(l)}i&&h&&h({action:c,location:b.location,delta:1})},replace:function(e,t){c=a.Replace;let n=p(b.location,e,t);r&&r(n,e),v=y();let o=f(n,v),s=b.createHref(n);u.replaceState(o,"",s),i&&h&&h({action:c,location:b.location,delta:0})},go:e=>u.go(e)};return b}var g;!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(g||(g={}));const w=new Set(["lazy","caseSensitive","path","id","index","children"]);function b(e,t,r,a){return void 0===r&&(r=[]),void 0===a&&(a={}),e.map((e,n)=>{let o=[...r,String(n)],i="string"==typeof e.id?e.id:o.join("-");if(d(!0!==e.index||!e.children,"Cannot specify children on an index route"),d(!a[i],'Found a route id collision on id "'+i+"\". Route id's must be globally unique within Data Router usages"),function(e){return!0===e.index}(e)){let r=s({},e,t(e),{id:i});return a[i]=r,r}{let r=s({},e,t(e),{id:i,children:void 0});return a[i]=r,e.children&&(r.children=b(e.children,t,o,a)),r}})}function S(e,t,r){return void 0===r&&(r="/"),R(e,t,r,!1)}function R(e,t,r,a){let n=F(("string"==typeof t?v(t):t).pathname||"/",r);if(null==n)return null;let o=E(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)))}(o);let i=null;for(let e=0;null==i&&e<o.length;++e){let t=N(n);i=U(o[e],t,a)}return i}function E(e,t,r,a){void 0===t&&(t=[]),void 0===r&&(r=[]),void 0===a&&(a="");let n=(e,n,o)=>{let i={relativePath:void 0===o?e.path||"":o,caseSensitive:!0===e.caseSensitive,childrenIndex:n,route:e};i.relativePath.startsWith("/")&&(d(i.relativePath.startsWith(a),'Absolute route path "'+i.relativePath+'" nested under path "'+a+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),i.relativePath=i.relativePath.slice(a.length));let s=B([a,i.relativePath]),l=r.concat(i);e.children&&e.children.length>0&&(d(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+s+'".'),E(e.children,t,l,s)),(null!=e.path||e.index)&&t.push({path:s,score:_(s,e.index),routesMeta:l})};return e.forEach((e,t)=>{var r;if(""!==e.path&&null!=(r=e.path)&&r.includes("?"))for(let r of x(e.path))n(e,t,r);else n(e,t)}),t}function x(e){let t=e.split("/");if(0===t.length)return[];let[r,...a]=t,n=r.endsWith("?"),o=r.replace(/\?$/,"");if(0===a.length)return n?[o,""]:[o];let i=x(a.join("/")),s=[];return s.push(...i.map(e=>""===e?o:[o,e].join("/"))),n&&s.push(...i),s.map(t=>e.startsWith("/")&&""===t?"/":t)}const D=/^:[\w-]+$/,L=3,A=2,C=1,P=10,T=-2,k=e=>"*"===e;function _(e,t){let r=e.split("/"),a=r.length;return r.some(k)&&(a+=T),t&&(a+=A),r.filter(e=>!k(e)).reduce((e,t)=>e+(D.test(t)?L:""===t?C:P),a)}function U(e,t,r){void 0===r&&(r=!1);let{routesMeta:a}=e,n={},o="/",i=[];for(let e=0;e<a.length;++e){let s=a[e],l=e===a.length-1,u="/"===o?t:t.slice(o.length)||"/",c=M({path:s.relativePath,caseSensitive:s.caseSensitive,end:l},u),d=s.route;if(!c&&l&&r&&!a[a.length-1].route.index&&(c=M({path:s.relativePath,caseSensitive:s.caseSensitive,end:!1},u)),!c)return null;Object.assign(n,c.params),i.push({params:n,pathname:B([o,c.pathname]),pathnameBase:W(B([o,c.pathnameBase])),route:d}),"/"!==c.pathnameBase&&(o=B([o,c.pathnameBase]))}return i}function M(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[r,a]=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 a=[],n="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(e,t,r)=>(a.push({paramName:t,isOptional:null!=r}),r?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(a.push({paramName:"*"}),n+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?n+="\\/*$":""!==e&&"/"!==e&&(n+="(?:(?=\\/|$))"),[new RegExp(n,t?void 0:"i"),a]}(e.path,e.caseSensitive,e.end),n=t.match(r);if(!n)return null;let o=n[0],i=o.replace(/(.)\/+$/,"$1"),s=n.slice(1);return{params:a.reduce((e,t,r)=>{let{paramName:a,isOptional:n}=t;if("*"===a){let e=s[r]||"";i=o.slice(0,o.length-e.length).replace(/(.)\/+$/,"$1")}const l=s[r];return e[a]=n&&!l?void 0:(l||"").replace(/%2F/g,"/"),e},{}),pathname:o,pathnameBase:i,pattern:e}}function N(e){try{return e.split("/").map(e=>decodeURIComponent(e).replace(/\//g,"%2F")).join("/")}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}}function F(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,a=e.charAt(r);return a&&"/"!==a?null:e.slice(r)||"/"}const j=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,O=e=>j.test(e);function I(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("/"):"/"}function z(e,t,r,a){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(a)+"]. Please separate it out to the `to."+r+'` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.'}function H(e){return e.filter((e,t)=>0===t||e.route.path&&e.route.path.length>0)}const B=e=>e.join("/").replace(/\/\/+/g,"/"),W=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),V=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",K=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";class ${constructor(e,t,r,a){void 0===a&&(a=!1),this.status=e,this.statusText=t||"",this.internal=a,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}}function q(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}const Y=["post","put","patch","delete"],J=new Set(Y),X=["get",...Y],G=new Set(X),Q=new Set([301,302,303,307,308]),Z=new Set([307,308]),ee={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},te={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},re={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},ae=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ne=e=>({hasErrorBoundary:Boolean(e.hasErrorBoundary)}),oe="remix-router-transitions";function ie(e){const t=e.window?e.window:"undefined"!=typeof window?window:void 0,r=void 0!==t&&void 0!==t.document&&void 0!==t.document.createElement,n=!r;let o;if(d(e.routes.length>0,"You must provide a non-empty routes array to createRouter"),e.mapRouteProperties)o=e.mapRouteProperties;else if(e.detectErrorBoundary){let t=e.detectErrorBoundary;o=e=>({hasErrorBoundary:t(e)})}else o=ne;let i,l,u,c={},f=b(e.routes,o,void 0,c),m=e.basename||"/",v=e.dataStrategy||ve,y=e.patchRoutesOnNavigation,E=s({v7_fetcherPersist:!1,v7_normalizeFormMethod:!1,v7_partialHydration:!1,v7_prependBasename:!1,v7_relativeSplatPath:!1,v7_skipActionErrorRevalidation:!1},e.future),x=null,D=new Set,L=null,A=null,C=null,P=null!=e.hydrationData,T=S(f,e.history.location,m),k=!1,_=null;if(null==T&&!y){let t=Ce(404,{pathname:e.history.location.pathname}),{matches:r,route:a}=Ae(f);T=r,_={[a.id]:t}}if(T&&!e.hydrationData&&ut(T,f,e.history.location.pathname).active&&(T=null),T)if(T.some(e=>e.route.lazy))l=!1;else if(T.some(e=>e.route.loader))if(E.v7_partialHydration){let t=e.hydrationData?e.hydrationData.loaderData:null,r=e.hydrationData?e.hydrationData.errors:null;if(r){let e=T.findIndex(e=>void 0!==r[e.route.id]);l=T.slice(0,e+1).every(e=>!de(e.route,t,r))}else l=T.every(e=>!de(e.route,t,r))}else l=null!=e.hydrationData;else l=!0;else if(l=!1,T=[],E.v7_partialHydration){let t=ut(null,f,e.history.location.pathname);t.active&&t.matches&&(k=!0,T=t.matches)}let U,M,N={historyAction:e.history.action,location:e.history.location,matches:T,initialized:l,navigation:ee,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||_,fetchers:new Map,blockers:new Map},j=a.Pop,O=!1,I=!1,z=new Map,H=null,B=!1,W=!1,V=[],K=new Set,$=new Map,Y=0,J=-1,X=new Map,G=new Set,Q=new Map,ie=new Map,ue=new Set,he=new Map,fe=new Map;function me(e,t){void 0===t&&(t={}),N=s({},N,e);let r=[],a=[];E.v7_fetcherPersist&&N.fetchers.forEach((e,t)=>{"idle"===e.state&&(ue.has(t)?a.push(t):r.push(t))}),ue.forEach(e=>{N.fetchers.has(e)||$.has(e)||a.push(e)}),[...D].forEach(e=>e(N,{deletedFetchers:a,viewTransitionOpts:t.viewTransitionOpts,flushSync:!0===t.flushSync})),E.v7_fetcherPersist?(r.forEach(e=>N.fetchers.delete(e)),a.forEach(e=>Ge(e))):a.forEach(e=>ue.delete(e))}function Se(t,r,n){var o,l;let u,{flushSync:c}=void 0===n?{}:n,d=null!=N.actionData&&null!=N.navigation.formMethod&&je(N.navigation.formMethod)&&"loading"===N.navigation.state&&!0!==(null==(o=t.state)?void 0:o._isRedirect);u=r.actionData?Object.keys(r.actionData).length>0?r.actionData:null:d?N.actionData:null;let h=r.loaderData?xe(N.loaderData,r.loaderData,r.matches||[],r.errors):N.loaderData,p=N.blockers;p.size>0&&(p=new Map(p),p.forEach((e,t)=>p.set(t,re)));let m,v=!0===O||null!=N.navigation.formMethod&&je(N.navigation.formMethod)&&!0!==(null==(l=t.state)?void 0:l._isRedirect);if(i&&(f=i,i=void 0),B||j===a.Pop||(j===a.Push?e.history.push(t,t.state):j===a.Replace&&e.history.replace(t,t.state)),j===a.Pop){let e=z.get(N.location.pathname);e&&e.has(t.pathname)?m={currentLocation:N.location,nextLocation:t}:z.has(t.pathname)&&(m={currentLocation:t,nextLocation:N.location})}else if(I){let e=z.get(N.location.pathname);e?e.add(t.pathname):(e=new Set([t.pathname]),z.set(N.location.pathname,e)),m={currentLocation:N.location,nextLocation:t}}me(s({},r,{actionData:u,loaderData:h,historyAction:j,location:t,initialized:!0,navigation:ee,revalidation:"idle",restoreScrollPosition:lt(t,r.matches||N.matches),preventScrollReset:v,blockers:p}),{viewTransitionOpts:m,flushSync:!0===c}),j=a.Pop,O=!1,I=!1,B=!1,W=!1,V=[]}async function Re(t,r,n){U&&U.abort(),U=null,j=t,B=!0===(n&&n.startUninterruptedRevalidation),function(e,t){if(L&&C){let r=st(e,t);L[r]=C()}}(N.location,N.matches),O=!0===(n&&n.preventScrollReset),I=!0===(n&&n.enableViewTransition);let o=i||f,l=n&&n.overrideNavigation,u=null!=n&&n.initialHydration&&N.matches&&N.matches.length>0&&!k?N.matches:S(o,r,m),c=!0===(n&&n.flushSync);if(u&&N.initialized&&!W&&(d=N.location,h=r,d.pathname===h.pathname&&d.search===h.search&&(""===d.hash?""!==h.hash:d.hash===h.hash||""!==h.hash))&&!(n&&n.submission&&je(n.submission.formMethod)))return void Se(r,{matches:u},{flushSync:c});var d,h;let p=ut(u,o,r.pathname);if(p.active&&p.matches&&(u=p.matches),!u){let{error:e,notFoundMatches:t,route:a}=ot(r.pathname);return void Se(r,{matches:t,loaderData:{},errors:{[a.id]:e}},{flushSync:c})}U=new AbortController;let v,y=be(e.history,r,U.signal,n&&n.submission);if(n&&n.pendingError)v=[Le(u).route.id,{type:g.error,error:n.pendingError}];else if(n&&n.submission&&je(n.submission.formMethod)){let t=await async function(t,r,n,o,i,s){void 0===s&&(s={}),qe();let l,u=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,n);if(me({navigation:u},{flushSync:!0===s.flushSync}),i){let e=await ct(o,r.pathname,t.signal);if("aborted"===e.type)return{shortCircuited:!0};if("error"===e.type){let t=Le(e.partialMatches).route.id;return{matches:e.partialMatches,pendingActionResult:[t,{type:g.error,error:e.error}]}}if(!e.matches){let{notFoundMatches:e,error:t,route:a}=ot(r.pathname);return{matches:e,pendingActionResult:[a.id,{type:g.error,error:t}]}}o=e.matches}let c=Be(o,r);if(c.route.action||c.route.lazy){if(l=(await Fe("action",N,t,[c],o,null))[c.route.id],t.signal.aborted)return{shortCircuited:!0}}else l={type:g.error,error:Ce(405,{method:t.method,pathname:r.pathname,routeId:c.route.id})};if(Me(l)){let r;return r=s&&null!=s.replace?s.replace:we(l.response.headers.get("Location"),new URL(t.url),m,e.history)===N.location.pathname+N.location.search,await Ne(t,l,!0,{submission:n,replace:r}),{shortCircuited:!0}}if(_e(l))throw Ce(400,{type:"defer-action"});if(Ue(l)){let e=Le(o,c.route.id);return!0!==(s&&s.replace)&&(j=a.Push),{matches:o,pendingActionResult:[e.route.id,l]}}return{matches:o,pendingActionResult:[c.route.id,l]}}(y,r,n.submission,u,p.active,{replace:n.replace,flushSync:c});if(t.shortCircuited)return;if(t.pendingActionResult){let[e,a]=t.pendingActionResult;if(Ue(a)&&q(a.error)&&404===a.error.status)return U=null,void Se(r,{matches:t.matches,loaderData:{},errors:{[e]:a.error}})}u=t.matches||u,v=t.pendingActionResult,l=Ve(r,n.submission),c=!1,p.active=!1,y=be(e.history,y.url,y.signal)}let{shortCircuited:w,matches:b,loaderData:R,errors:x}=await async function(t,r,a,n,o,l,u,c,d,h,p){let v=o||Ve(r,l),y=l||u||We(v),g=!(B||E.v7_partialHydration&&d);if(n){if(g){let e=Te(p);me(s({navigation:v},void 0!==e?{actionData:e}:{}),{flushSync:h})}let e=await ct(a,r.pathname,t.signal);if("aborted"===e.type)return{shortCircuited:!0};if("error"===e.type){let t=Le(e.partialMatches).route.id;return{matches:e.partialMatches,loaderData:{},errors:{[t]:e.error}}}if(!e.matches){let{error:e,notFoundMatches:t,route:a}=ot(r.pathname);return{matches:t,loaderData:{},errors:{[a.id]:e}}}a=e.matches}let w=i||f,[b,S]=ce(e.history,N,a,y,r,E.v7_partialHydration&&!0===d,E.v7_skipActionErrorRevalidation,W,V,K,ue,Q,G,w,m,p);if(it(e=>!(a&&a.some(t=>t.route.id===e))||b&&b.some(t=>t.route.id===e)),J=++Y,0===b.length&&0===S.length){let e=et();return Se(r,s({matches:a,loaderData:{},errors:p&&Ue(p[1])?{[p[0]]:p[1].error}:null},De(p),e?{fetchers:new Map(N.fetchers)}:{}),{flushSync:h}),{shortCircuited:!0}}if(g){let e={};if(!n){e.navigation=v;let t=Te(p);void 0!==t&&(e.actionData=t)}S.length>0&&(e.fetchers=function(e){return e.forEach(e=>{let t=N.fetchers.get(e.key),r=Ke(void 0,t?t.data:void 0);N.fetchers.set(e.key,r)}),new Map(N.fetchers)}(S)),me(e,{flushSync:h})}S.forEach(e=>{Qe(e.key),e.controller&&$.set(e.key,e.controller)});let R=()=>S.forEach(e=>Qe(e.key));U&&U.signal.addEventListener("abort",R);let{loaderResults:x,fetcherResults:D}=await He(N,a,b,S,t);if(t.signal.aborted)return{shortCircuited:!0};U&&U.signal.removeEventListener("abort",R),S.forEach(e=>$.delete(e.key));let L=Pe(x);if(L)return await Ne(t,L.result,!0,{replace:c}),{shortCircuited:!0};if(L=Pe(D),L)return G.add(L.key),await Ne(t,L.result,!0,{replace:c}),{shortCircuited:!0};let{loaderData:A,errors:C}=Ee(N,a,x,p,S,D,he);he.forEach((e,t)=>{e.subscribe(r=>{(r||e.done)&&he.delete(t)})}),E.v7_partialHydration&&d&&N.errors&&(C=s({},N.errors,C));let P=et(),T=tt(J),k=P||T||S.length>0;return s({matches:a,loaderData:A,errors:C},k?{fetchers:new Map(N.fetchers)}:{})}(y,r,u,p.active,l,n&&n.submission,n&&n.fetcherSubmission,n&&n.replace,n&&!0===n.initialHydration,c,v);w||(U=null,Se(r,s({matches:b||u},De(v),{loaderData:R,errors:x})))}function Te(e){return e&&!Ue(e[1])?{[e[0]]:e[1].data}:N.actionData?0===Object.keys(N.actionData).length?null:N.actionData:void 0}async function Ne(n,o,i,l){let{submission:u,fetcherSubmission:c,preventScrollReset:h,replace:f}=void 0===l?{}:l;o.response.headers.has("X-Remix-Revalidate")&&(W=!0);let v=o.response.headers.get("Location");d(v,"Expected a Location header on the redirect Response"),v=we(v,new URL(n.url),m,e.history);let y=p(N.location,v,{_isRedirect:!0});if(r){let r=!1;if(o.response.headers.has("X-Remix-Reload-Document"))r=!0;else if(ae.test(v)){const a=e.history.createURL(v);r=a.origin!==t.location.origin||null==F(a.pathname,m)}if(r)return void(f?t.location.replace(v):t.location.assign(v))}U=null;let g=!0===f||o.response.headers.has("X-Remix-Replace")?a.Replace:a.Push,{formMethod:w,formAction:b,formEncType:S}=N.navigation;!u&&!c&&w&&b&&S&&(u=We(N.navigation));let R=u||c;if(Z.has(o.response.status)&&R&&je(R.formMethod))await Re(g,y,{submission:s({},R,{formAction:v}),preventScrollReset:h||O,enableViewTransition:i?I:void 0});else{let e=Ve(y,u);await Re(g,y,{overrideNavigation:e,fetcherSubmission:c,preventScrollReset:h||O,enableViewTransition:i?I:void 0})}}async function Fe(e,t,r,a,n,i){let l,u={};try{l=await async function(e,t,r,a,n,o,i,l,u,c){let f=o.map(e=>e.route.lazy?async function(e,t,r){if(!e.lazy)return;let a=await e.lazy();if(!e.lazy)return;let n=r[e.id];d(n,"No route found in manifest");let o={};for(let e in a){let t=void 0!==n[e]&&"hasErrorBoundary"!==e;h(!t,'Route "'+n.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||w.has(e)||(o[e]=a[e])}Object.assign(n,o),Object.assign(n,s({},t(n),{lazy:void 0}))}(e.route,u,l):void 0),p=o.map((e,r)=>{let o=f[r],i=n.some(t=>t.route.id===e.route.id);return s({},e,{shouldLoad:i,resolve:async r=>(r&&"GET"===a.method&&(e.route.lazy||e.route.loader)&&(i=!0),i?async function(e,t,r,a,n,o){let i,s,l=a=>{let i,l=new Promise((e,t)=>i=t);s=()=>i(),t.signal.addEventListener("abort",s);let u=n=>"function"!=typeof a?Promise.reject(new Error('You cannot call the handler for a route which defines a boolean "'+e+'" [routeId: '+r.route.id+"]")):a({request:t,params:r.params,context:o},...void 0!==n?[n]:[]),c=(async()=>{try{return{type:"data",result:await(n?n(e=>u(e)):u())}}catch(e){return{type:"error",result:e}}})();return Promise.race([c,l])};try{let n=r.route[e];if(a)if(n){let e,[t]=await Promise.all([l(n).catch(t=>{e=t}),a]);if(void 0!==e)throw e;i=t}else{if(await a,n=r.route[e],!n){if("action"===e){let e=new URL(t.url),a=e.pathname+e.search;throw Ce(405,{method:t.method,pathname:a,routeId:r.route.id})}return{type:g.data,result:void 0}}i=await l(n)}else{if(!n){let e=new URL(t.url);throw Ce(404,{pathname:e.pathname+e.search})}i=await l(n)}d(void 0!==i.result,"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){return{type:g.error,result:e}}finally{s&&t.signal.removeEventListener("abort",s)}return i}(t,a,e,o,r,c):Promise.resolve({type:g.data,result:void 0}))})}),m=await e({matches:p,request:a,params:o[0].params,fetcherKey:i,context:c});try{await Promise.all(f)}catch(e){}return m}(v,e,0,r,a,n,i,c,o)}catch(e){return a.forEach(t=>{u[t.route.id]={type:g.error,error:e}}),u}for(let[e,t]of Object.entries(l))if(ke(t)){let a=t.result;u[e]={type:g.redirect,response:ge(a,r,e,n,m,E.v7_relativeSplatPath)}}else u[e]=await ye(t);return u}async function He(t,r,a,n,o){let i=t.matches,s=Fe("loader",0,o,a,r,null),l=Promise.all(n.map(async t=>{if(t.matches&&t.match&&t.controller){let r=(await Fe("loader",0,be(e.history,t.path,t.controller.signal),[t.match],t.matches,t.key))[t.match.route.id];return{[t.key]:r}}return Promise.resolve({[t.key]:{type:g.error,error:Ce(404,{pathname:t.path})}})})),u=await s,c=(await l).reduce((e,t)=>Object.assign(e,t),{});return await Promise.all([Oe(r,u,o.signal,i,t.loaderData),Ie(r,c,n)]),{loaderResults:u,fetcherResults:c}}function qe(){W=!0,V.push(...it()),Q.forEach((e,t)=>{$.has(t)&&K.add(t),Qe(t)})}function Ye(e,t,r){void 0===r&&(r={}),N.fetchers.set(e,t),me({fetchers:new Map(N.fetchers)},{flushSync:!0===(r&&r.flushSync)})}function Je(e,t,r,a){void 0===a&&(a={});let n=Le(N.matches,t);Ge(e),me({errors:{[n.route.id]:r},fetchers:new Map(N.fetchers)},{flushSync:!0===(a&&a.flushSync)})}function Xe(e){return ie.set(e,(ie.get(e)||0)+1),ue.has(e)&&ue.delete(e),N.fetchers.get(e)||te}function Ge(e){let t=N.fetchers.get(e);!$.has(e)||t&&"loading"===t.state&&X.has(e)||Qe(e),Q.delete(e),X.delete(e),G.delete(e),E.v7_fetcherPersist&&ue.delete(e),K.delete(e),N.fetchers.delete(e)}function Qe(e){let t=$.get(e);t&&(t.abort(),$.delete(e))}function Ze(e){for(let t of e){let e=$e(Xe(t).data);N.fetchers.set(t,e)}}function et(){let e=[],t=!1;for(let r of G){let a=N.fetchers.get(r);d(a,"Expected fetcher: "+r),"loading"===a.state&&(G.delete(r),e.push(r),t=!0)}return Ze(e),t}function tt(e){let t=[];for(let[r,a]of X)if(a<e){let e=N.fetchers.get(r);d(e,"Expected fetcher: "+r),"loading"===e.state&&(Qe(r),X.delete(r),t.push(r))}return Ze(t),t.length>0}function rt(e){N.blockers.delete(e),fe.delete(e)}function at(e,t){let r=N.blockers.get(e)||re;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 a=new Map(N.blockers);a.set(e,t),me({blockers:a})}function nt(e){let{currentLocation:t,nextLocation:r,historyAction:a}=e;if(0===fe.size)return;fe.size>1&&h(!1,"A router only supports one blocker at a time");let n=Array.from(fe.entries()),[o,i]=n[n.length-1],s=N.blockers.get(o);return s&&"proceeding"===s.state?void 0:i({currentLocation:t,nextLocation:r,historyAction:a})?o:void 0}function ot(e){let t=Ce(404,{pathname:e}),r=i||f,{matches:a,route:n}=Ae(r);return it(),{notFoundMatches:a,route:n,error:t}}function it(e){let t=[];return he.forEach((r,a)=>{e&&!e(a)||(r.cancel(),t.push(a),he.delete(a))}),t}function st(e,t){return A&&A(e,t.map(e=>function(e,t){let{route:r,pathname:a,params:n}=e;return{id:r.id,pathname:a,params:n,data:t[r.id],handle:r.handle}}(e,N.loaderData)))||e.key}function lt(e,t){if(L){let r=st(e,t),a=L[r];if("number"==typeof a)return a}return null}function ut(e,t,r){if(y){if(!e)return{active:!0,matches:R(t,r,m,!0)||[]};if(Object.keys(e[0].params).length>0)return{active:!0,matches:R(t,r,m,!0)}}return{active:!1,matches:null}}async function ct(e,t,r,a){if(!y)return{type:"success",matches:e};let n=e;for(;;){let e=null==i,s=i||f,l=c;try{await y({signal:r,path:t,matches:n,fetcherKey:a,patch:(e,t)=>{r.aborted||pe(e,t,s,l,o)}})}catch(e){return{type:"error",error:e,partialMatches:n}}finally{e&&!r.aborted&&(f=[...f])}if(r.aborted)return{type:"aborted"};let u=S(s,t,m);if(u)return{type:"success",matches:u};let d=R(s,t,m,!0);if(!d||n.length===d.length&&n.every((e,t)=>e.route.id===d[t].route.id))return{type:"success",matches:null};n=d}}return u={get basename(){return m},get future(){return E},get state(){return N},get routes(){return f},get window(){return t},initialize:function(){if(x=e.history.listen(t=>{let{action:r,location:a,delta:n}=t;if(M)return M(),void(M=void 0);h(0===fe.size||null!=n,"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=nt({currentLocation:N.location,nextLocation:a,historyAction:r});if(o&&null!=n){let t=new Promise(e=>{M=e});return e.history.go(-1*n),void at(o,{state:"blocked",location:a,proceed(){at(o,{state:"proceeding",proceed:void 0,reset:void 0,location:a}),t.then(()=>e.history.go(n))},reset(){let e=new Map(N.blockers);e.set(o,re),me({blockers:e})}})}return Re(r,a)}),r){!function(e,t){try{let r=e.sessionStorage.getItem(oe);if(r){let e=JSON.parse(r);for(let[r,a]of Object.entries(e||{}))a&&Array.isArray(a)&&t.set(r,new Set(a||[]))}}catch(e){}}(t,z);let e=()=>function(e,t){if(t.size>0){let r={};for(let[e,a]of t)r[e]=[...a];try{e.sessionStorage.setItem(oe,JSON.stringify(r))}catch(e){h(!1,"Failed to save applied view transitions in sessionStorage ("+e+").")}}}(t,z);t.addEventListener("pagehide",e),H=()=>t.removeEventListener("pagehide",e)}return N.initialized||Re(a.Pop,N.location,{initialHydration:!0}),u},subscribe:function(e){return D.add(e),()=>D.delete(e)},enableScrollRestoration:function(e,t,r){if(L=e,C=t,A=r||null,!P&&N.navigation===ee){P=!0;let e=lt(N.location,N.matches);null!=e&&me({restoreScrollPosition:e})}return()=>{L=null,C=null,A=null}},navigate:async function t(r,n){if("number"==typeof r)return void e.history.go(r);let o=se(N.location,N.matches,m,E.v7_prependBasename,r,E.v7_relativeSplatPath,null==n?void 0:n.fromRouteId,null==n?void 0:n.relative),{path:i,submission:l,error:u}=le(E.v7_normalizeFormMethod,!1,o,n),c=N.location,d=p(N.location,i,n&&n.state);d=s({},d,e.history.encodeLocation(d));let h=n&&null!=n.replace?n.replace:void 0,f=a.Push;!0===h?f=a.Replace:!1===h||null!=l&&je(l.formMethod)&&l.formAction===N.location.pathname+N.location.search&&(f=a.Replace);let v=n&&"preventScrollReset"in n?!0===n.preventScrollReset:void 0,y=!0===(n&&n.flushSync),g=nt({currentLocation:c,nextLocation:d,historyAction:f});if(!g)return await Re(f,d,{submission:l,pendingError:u,preventScrollReset:v,replace:n&&n.replace,enableViewTransition:n&&n.viewTransition,flushSync:y});at(g,{state:"blocked",location:d,proceed(){at(g,{state:"proceeding",proceed:void 0,reset:void 0,location:d}),t(r,n)},reset(){let e=new Map(N.blockers);e.set(g,re),me({blockers:e})}})},fetch:function(t,r,a,o){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.");Qe(t);let s=!0===(o&&o.flushSync),l=i||f,u=se(N.location,N.matches,m,E.v7_prependBasename,a,E.v7_relativeSplatPath,r,null==o?void 0:o.relative),c=S(l,u,m),h=ut(c,l,u);if(h.active&&h.matches&&(c=h.matches),!c)return void Je(t,r,Ce(404,{pathname:u}),{flushSync:s});let{path:p,submission:v,error:y}=le(E.v7_normalizeFormMethod,!0,u,o);if(y)return void Je(t,r,y,{flushSync:s});let g=Be(c,p),w=!0===(o&&o.preventScrollReset);v&&je(v.formMethod)?async function(t,r,a,n,o,s,l,u,c){function h(e){if(!e.route.action&&!e.route.lazy){let e=Ce(405,{method:c.formMethod,pathname:a,routeId:r});return Je(t,r,e,{flushSync:l}),!0}return!1}if(qe(),Q.delete(t),!s&&h(n))return;let p=N.fetchers.get(t);Ye(t,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,p),{flushSync:l});let v=new AbortController,y=be(e.history,a,v.signal,c);if(s){let e=await ct(o,new URL(y.url).pathname,y.signal,t);if("aborted"===e.type)return;if("error"===e.type)return void Je(t,r,e.error,{flushSync:l});if(!e.matches)return void Je(t,r,Ce(404,{pathname:a}),{flushSync:l});if(h(n=Be(o=e.matches,a)))return}$.set(t,v);let g=Y,w=(await Fe("action",0,y,[n],o,t))[n.route.id];if(y.signal.aborted)return void($.get(t)===v&&$.delete(t));if(E.v7_fetcherPersist&&ue.has(t)){if(Me(w)||Ue(w))return void Ye(t,$e(void 0))}else{if(Me(w))return $.delete(t),J>g?void Ye(t,$e(void 0)):(G.add(t),Ye(t,Ke(c)),Ne(y,w,!1,{fetcherSubmission:c,preventScrollReset:u}));if(Ue(w))return void Je(t,r,w.error)}if(_e(w))throw Ce(400,{type:"defer-action"});let b=N.navigation.location||N.location,R=be(e.history,b,v.signal),x=i||f,D="idle"!==N.navigation.state?S(x,N.navigation.location,m):N.matches;d(D,"Didn't find any matches after fetcher action");let L=++Y;X.set(t,L);let A=Ke(c,w.data);N.fetchers.set(t,A);let[C,P]=ce(e.history,N,D,c,b,!1,E.v7_skipActionErrorRevalidation,W,V,K,ue,Q,G,x,m,[n.route.id,w]);P.filter(e=>e.key!==t).forEach(e=>{let t=e.key,r=N.fetchers.get(t),a=Ke(void 0,r?r.data:void 0);N.fetchers.set(t,a),Qe(t),e.controller&&$.set(t,e.controller)}),me({fetchers:new Map(N.fetchers)});let T=()=>P.forEach(e=>Qe(e.key));v.signal.addEventListener("abort",T);let{loaderResults:k,fetcherResults:_}=await He(N,D,C,P,R);if(v.signal.aborted)return;v.signal.removeEventListener("abort",T),X.delete(t),$.delete(t),P.forEach(e=>$.delete(e.key));let M=Pe(k);if(M)return Ne(R,M.result,!1,{preventScrollReset:u});if(M=Pe(_),M)return G.add(M.key),Ne(R,M.result,!1,{preventScrollReset:u});let{loaderData:F,errors:O}=Ee(N,D,k,void 0,P,_,he);if(N.fetchers.has(t)){let e=$e(w.data);N.fetchers.set(t,e)}tt(L),"loading"===N.navigation.state&&L>J?(d(j,"Expected pending action"),U&&U.abort(),Se(N.navigation.location,{matches:D,loaderData:F,errors:O,fetchers:new Map(N.fetchers)})):(me({errors:O,loaderData:xe(N.loaderData,F,D,O),fetchers:new Map(N.fetchers)}),W=!1)}(t,r,p,g,c,h.active,s,w,v):(Q.set(t,{routeId:r,path:p}),async function(t,r,a,n,o,i,s,l,u){let c=N.fetchers.get(t);Ye(t,Ke(u,c?c.data:void 0),{flushSync:s});let h=new AbortController,f=be(e.history,a,h.signal);if(i){let e=await ct(o,new URL(f.url).pathname,f.signal,t);if("aborted"===e.type)return;if("error"===e.type)return void Je(t,r,e.error,{flushSync:s});if(!e.matches)return void Je(t,r,Ce(404,{pathname:a}),{flushSync:s});n=Be(o=e.matches,a)}$.set(t,h);let p=Y,m=(await Fe("loader",0,f,[n],o,t))[n.route.id];if(_e(m)&&(m=await ze(m,f.signal,!0)||m),$.get(t)===h&&$.delete(t),!f.signal.aborted){if(!ue.has(t))return Me(m)?J>p?void Ye(t,$e(void 0)):(G.add(t),void await Ne(f,m,!1,{preventScrollReset:l})):void(Ue(m)?Je(t,r,m.error):(d(!_e(m),"Unhandled fetcher deferred data"),Ye(t,$e(m.data))));Ye(t,$e(void 0))}}(t,r,p,g,c,h.active,s,w,v))},revalidate:function(){qe(),me({revalidation:"loading"}),"submitting"!==N.navigation.state&&("idle"!==N.navigation.state?Re(j||N.historyAction,N.navigation.location,{overrideNavigation:N.navigation,enableViewTransition:!0===I}):Re(N.historyAction,N.location,{startUninterruptedRevalidation:!0}))},createHref:t=>e.history.createHref(t),encodeLocation:t=>e.history.encodeLocation(t),getFetcher:Xe,deleteFetcher:function(e){let t=(ie.get(e)||0)-1;t<=0?(ie.delete(e),ue.add(e),E.v7_fetcherPersist||Ge(e)):ie.set(e,t),me({fetchers:new Map(N.fetchers)})},dispose:function(){x&&x(),H&&H(),D.clear(),U&&U.abort(),N.fetchers.forEach((e,t)=>Ge(t)),N.blockers.forEach((e,t)=>rt(t))},getBlocker:function(e,t){let r=N.blockers.get(e)||re;return fe.get(e)!==t&&fe.set(e,t),r},deleteBlocker:rt,patchRoutes:function(e,t){let r=null==i;pe(e,t,i||f,c,o),r&&(f=[...f],me({}))},_internalFetchControllers:$,_internalActiveDeferreds:he,_internalSetRoutes:function(e){c={},i=b(e,o,void 0,c)}},u}function se(e,t,r,a,n,o,i,l){let u,c;if(i){u=[];for(let e of t)if(u.push(e),e.route.id===i){c=e;break}}else u=t,c=t[t.length-1];let f=function(e,t,r,a){let n;void 0===a&&(a=!1),"string"==typeof e?n=v(e):(n=s({},e),d(!n.pathname||!n.pathname.includes("?"),z("?","pathname","search",n)),d(!n.pathname||!n.pathname.includes("#"),z("#","pathname","hash",n)),d(!n.search||!n.search.includes("#"),z("#","search","hash",n)));let o,i=""===e||""===n.pathname,l=i?"/":n.pathname;if(null==l)o=r;else{let e=t.length-1;if(!a&&l.startsWith("..")){let t=l.split("/");for(;".."===t[0];)t.shift(),e-=1;n.pathname=t.join("/")}o=e>=0?t[e]:"/"}let u=function(e,t){void 0===t&&(t="/");let r,{pathname:a,search:n="",hash:o=""}="string"==typeof e?v(e):e;if(a)if(O(a))r=a;else{if(a.includes("//")){let e=a;a=a.replace(/\/\/+/g,"/"),h(!1,"Pathnames cannot have embedded double slashes - normalizing "+e+" -> "+a)}r=a.startsWith("/")?I(a.substring(1),"/"):I(a,t)}else r=t;return{pathname:r,search:V(n),hash:K(o)}}(n,o),c=l&&"/"!==l&&l.endsWith("/"),f=(i||"."===l)&&r.endsWith("/");return u.pathname.endsWith("/")||!c&&!f||(u.pathname+="/"),u}(n||".",function(e,t){let r=H(e);return t?r.map((e,t)=>t===r.length-1?e.pathname:e.pathnameBase):r.map(e=>e.pathnameBase)}(u,o),F(e.pathname,r)||e.pathname,"path"===l);if(null==n&&(f.search=e.search,f.hash=e.hash),(null==n||""===n||"."===n)&&c){let e=He(f.search);if(c.route.index&&!e)f.search=f.search?f.search.replace(/^\?/,"?index&"):"?index";else if(!c.route.index&&e){let e=new URLSearchParams(f.search),t=e.getAll("index");e.delete("index"),t.filter(e=>e).forEach(t=>e.append("index",t));let r=e.toString();f.search=r?"?"+r:""}}return a&&"/"!==r&&(f.pathname="/"===f.pathname?r:B([r,f.pathname])),m(f)}function le(e,t,r,a){if(!a||!function(e){return null!=e&&("formData"in e&&null!=e.formData||"body"in e&&void 0!==e.body)}(a))return{path:r};if(a.formMethod&&(n=a.formMethod,!G.has(n.toLowerCase())))return{path:r,error:Ce(405,{method:a.formMethod})};var n;let o,i,s=()=>({path:r,error:Ce(400,{type:"invalid-body"})}),l=a.formMethod||"get",u=e?l.toUpperCase():l.toLowerCase(),c=Te(r);if(void 0!==a.body){if("text/plain"===a.formEncType){if(!je(u))return s();let e="string"==typeof a.body?a.body:a.body instanceof FormData||a.body instanceof URLSearchParams?Array.from(a.body.entries()).reduce((e,t)=>{let[r,a]=t;return""+e+r+"="+a+"\n"},""):String(a.body);return{path:r,submission:{formMethod:u,formAction:c,formEncType:a.formEncType,formData:void 0,json:void 0,text:e}}}if("application/json"===a.formEncType){if(!je(u))return s();try{let e="string"==typeof a.body?JSON.parse(a.body):a.body;return{path:r,submission:{formMethod:u,formAction:c,formEncType:a.formEncType,formData:void 0,json:e,text:void 0}}}catch(e){return s()}}}if(d("function"==typeof FormData,"FormData is not available in this environment"),a.formData)o=Se(a.formData),i=a.formData;else if(a.body instanceof FormData)o=Se(a.body),i=a.body;else if(a.body instanceof URLSearchParams)o=a.body,i=Re(o);else if(null==a.body)o=new URLSearchParams,i=new FormData;else try{o=new URLSearchParams(a.body),i=Re(o)}catch(e){return s()}let h={formMethod:u,formAction:c,formEncType:a&&a.formEncType||"application/x-www-form-urlencoded",formData:i,json:void 0,text:void 0};if(je(h.formMethod))return{path:r,submission:h};let f=v(r);return t&&f.search&&He(f.search)&&o.append("index",""),f.search="?"+o,{path:m(f),submission:h}}function ue(e,t,r){void 0===r&&(r=!1);let a=e.findIndex(e=>e.route.id===t);return a>=0?e.slice(0,r?a+1:a):e}function ce(e,t,r,a,n,o,i,l,u,c,d,h,f,p,m,v){let y=v?Ue(v[1])?v[1].error:v[1].data:void 0,g=e.createURL(t.location),w=e.createURL(n),b=r;o&&t.errors?b=ue(r,Object.keys(t.errors)[0],!0):v&&Ue(v[1])&&(b=ue(r,v[0]));let R=v?v[1].statusCode:void 0,E=i&&R&&R>=400,x=b.filter((e,r)=>{let{route:n}=e;if(n.lazy)return!0;if(null==n.loader)return!1;if(o)return de(n,t.loaderData,t.errors);if(function(e,t,r){let a=!t||r.route.id!==t.route.id,n=void 0===e[r.route.id];return a||n}(t.loaderData,t.matches[r],e)||u.some(t=>t===e.route.id))return!0;let i=t.matches[r],c=e;return fe(e,s({currentUrl:g,currentParams:i.params,nextUrl:w,nextParams:c.params},a,{actionResult:y,actionStatus:R,defaultShouldRevalidate:!E&&(l||g.pathname+g.search===w.pathname+w.search||g.search!==w.search||he(i,c))}))}),D=[];return h.forEach((e,n)=>{if(o||!r.some(t=>t.route.id===e.routeId)||d.has(n))return;let i=S(p,e.path,m);if(!i)return void D.push({key:n,routeId:e.routeId,path:e.path,matches:null,match:null,controller:null});let u=t.fetchers.get(n),h=Be(i,e.path),v=!1;f.has(n)?v=!1:c.has(n)?(c.delete(n),v=!0):v=u&&"idle"!==u.state&&void 0===u.data?l:fe(h,s({currentUrl:g,currentParams:t.matches[t.matches.length-1].params,nextUrl:w,nextParams:r[r.length-1].params},a,{actionResult:y,actionStatus:R,defaultShouldRevalidate:!E&&l})),v&&D.push({key:n,routeId:e.routeId,path:e.path,matches:i,match:h,controller:new AbortController})}),[x,D]}function de(e,t,r){if(e.lazy)return!0;if(!e.loader)return!1;let a=null!=t&&void 0!==t[e.id],n=null!=r&&void 0!==r[e.id];return!(!a&&n)&&("function"==typeof e.loader&&!0===e.loader.hydrate||!a&&!n)}function he(e,t){let r=e.route.path;return e.pathname!==t.pathname||null!=r&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function fe(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if("boolean"==typeof r)return r}return t.defaultShouldRevalidate}function pe(e,t,r,a,n){var o;let i;if(e){let t=a[e];d(t,"No route found to patch children into: routeId = "+e),t.children||(t.children=[]),i=t.children}else i=r;let s=b(t.filter(e=>!i.some(t=>me(e,t))),n,[e||"_","patch",String((null==(o=i)?void 0:o.length)||"0")],a);i.push(...s)}function me(e,t){return"id"in e&&"id"in t&&e.id===t.id||e.index===t.index&&e.path===t.path&&e.caseSensitive===t.caseSensitive&&(!(e.children&&0!==e.children.length||t.children&&0!==t.children.length)||e.children.every((e,r)=>{var a;return null==(a=t.children)?void 0:a.some(t=>me(e,t))}))}async function ve(e){let{matches:t}=e,r=t.filter(e=>e.shouldLoad);return(await Promise.all(r.map(e=>e.resolve()))).reduce((e,t,a)=>Object.assign(e,{[r[a].route.id]:t}),{})}async function ye(e){let{result:t,type:r}=e;if(Fe(t)){let e;try{let r=t.headers.get("Content-Type");e=r&&/\bapplication\/json\b/.test(r)?null==t.body?null:await t.json():await t.text()}catch(e){return{type:g.error,error:e}}return r===g.error?{type:g.error,error:new $(t.status,t.statusText,e),statusCode:t.status,headers:t.headers}:{type:g.data,data:e,statusCode:t.status,headers:t.headers}}var a,n,o,i,s,l,u,c;return r===g.error?Ne(t)?t.data instanceof Error?{type:g.error,error:t.data,statusCode:null==(o=t.init)?void 0:o.status,headers:null!=(i=t.init)&&i.headers?new Headers(t.init.headers):void 0}:{type:g.error,error:new $((null==(a=t.init)?void 0:a.status)||500,void 0,t.data),statusCode:q(t)?t.status:void 0,headers:null!=(n=t.init)&&n.headers?new Headers(t.init.headers):void 0}:{type:g.error,error:t,statusCode:q(t)?t.status:void 0}:function(e){let t=e;return t&&"object"==typeof t&&"object"==typeof t.data&&"function"==typeof t.subscribe&&"function"==typeof t.cancel&&"function"==typeof t.resolveData}(t)?{type:g.deferred,deferredData:t,statusCode:null==(s=t.init)?void 0:s.status,headers:(null==(l=t.init)?void 0:l.headers)&&new Headers(t.init.headers)}:Ne(t)?{type:g.data,data:t.data,statusCode:null==(u=t.init)?void 0:u.status,headers:null!=(c=t.init)&&c.headers?new Headers(t.init.headers):void 0}:{type:g.data,data:t}}function ge(e,t,r,a,n,o){let i=e.headers.get("Location");if(d(i,"Redirects returned/thrown from loaders/actions must have a Location header"),!ae.test(i)){let s=a.slice(0,a.findIndex(e=>e.route.id===r)+1);i=se(new URL(t.url),s,n,!0,i,o),e.headers.set("Location",i)}return e}function we(e,t,r,a){let n=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];if(ae.test(e)){let a=e,o=a.startsWith("//")?new URL(t.protocol+a):new URL(a);if(n.includes(o.protocol))throw new Error("Invalid redirect location");let i=null!=F(o.pathname,r);if(o.origin===t.origin&&i)return o.pathname+o.search+o.hash}try{let t=a.createURL(e);if(n.includes(t.protocol))throw new Error("Invalid redirect location")}catch(e){}return e}function be(e,t,r,a){let n=e.createURL(Te(t)).toString(),o={signal:r};if(a&&je(a.formMethod)){let{formMethod:e,formEncType:t}=a;o.method=e.toUpperCase(),"application/json"===t?(o.headers=new Headers({"Content-Type":t}),o.body=JSON.stringify(a.json)):"text/plain"===t?o.body=a.text:"application/x-www-form-urlencoded"===t&&a.formData?o.body=Se(a.formData):o.body=a.formData}return new Request(n,o)}function Se(e){let t=new URLSearchParams;for(let[r,a]of e.entries())t.append(r,"string"==typeof a?a:a.name);return t}function Re(e){let t=new FormData;for(let[r,a]of e.entries())t.append(r,a);return t}function Ee(e,t,r,a,n,o,i){let{loaderData:l,errors:u}=function(e,t,r,a,n){let o,i={},s=null,l=!1,u={},c=r&&Ue(r[1])?r[1].error:void 0;return e.forEach(r=>{if(!(r.route.id in t))return;let h=r.route.id,f=t[h];if(d(!Me(f),"Cannot handle redirect results in processLoaderData"),Ue(f)){let t=f.error;if(void 0!==c&&(t=c,c=void 0),s=s||{},n)s[h]=t;else{let r=Le(e,h);null==s[r.route.id]&&(s[r.route.id]=t)}i[h]=void 0,l||(l=!0,o=q(f.error)?f.error.status:500),f.headers&&(u[h]=f.headers)}else _e(f)?(a.set(h,f.deferredData),i[h]=f.deferredData.data,null==f.statusCode||200===f.statusCode||l||(o=f.statusCode),f.headers&&(u[h]=f.headers)):(i[h]=f.data,f.statusCode&&200!==f.statusCode&&!l&&(o=f.statusCode),f.headers&&(u[h]=f.headers))}),void 0!==c&&r&&(s={[r[0]]:c},i[r[0]]=void 0),{loaderData:i,errors:s,statusCode:o||200,loaderHeaders:u}}(t,r,a,i,!1);return n.forEach(t=>{let{key:r,match:a,controller:n}=t,i=o[r];if(d(i,"Did not find corresponding fetcher result"),!n||!n.signal.aborted)if(Ue(i)){let t=Le(e.matches,null==a?void 0:a.route.id);u&&u[t.route.id]||(u=s({},u,{[t.route.id]:i.error})),e.fetchers.delete(r)}else if(Me(i))d(!1,"Unhandled fetcher revalidation redirect");else if(_e(i))d(!1,"Unhandled fetcher deferred data");else{let t=$e(i.data);e.fetchers.set(r,t)}}),{loaderData:l,errors:u}}function xe(e,t,r,a){let n=s({},t);for(let o of r){let r=o.route.id;if(t.hasOwnProperty(r)?void 0!==t[r]&&(n[r]=t[r]):void 0!==e[r]&&o.route.loader&&(n[r]=e[r]),a&&a.hasOwnProperty(r))break}return n}function De(e){return e?Ue(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Le(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 Ae(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 Ce(e,t){let{pathname:r,routeId:a,method:n,type:o,message:i}=void 0===t?{}:t,s="Unknown Server Error",l="Unknown @remix-run/router error";return 400===e?(s="Bad Request",n&&r&&a?l="You made a "+n+' request to "'+r+'" but did not provide a `loader` for route "'+a+'", 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?(s="Forbidden",l='Route "'+a+'" does not match URL "'+r+'"'):404===e?(s="Not Found",l='No route matches URL "'+r+'"'):405===e&&(s="Method Not Allowed",n&&r&&a?l="You made a "+n.toUpperCase()+' request to "'+r+'" but did not provide an `action` for route "'+a+'", so there is no way to handle the request.':n&&(l='Invalid request method "'+n.toUpperCase()+'"')),new $(e||500,s,new Error(l),!0)}function Pe(e){let t=Object.entries(e);for(let e=t.length-1;e>=0;e--){let[r,a]=t[e];if(Me(a))return{key:r,result:a}}}function Te(e){return m(s({},"string"==typeof e?v(e):e,{hash:""}))}function ke(e){return Fe(e.result)&&Q.has(e.result.status)}function _e(e){return e.type===g.deferred}function Ue(e){return e.type===g.error}function Me(e){return(e&&e.type)===g.redirect}function Ne(e){return"object"==typeof e&&null!=e&&"type"in e&&"data"in e&&"init"in e&&"DataWithResponseInit"===e.type}function Fe(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"object"==typeof e.headers&&void 0!==e.body}function je(e){return J.has(e.toLowerCase())}async function Oe(e,t,r,a,n){let o=Object.entries(t);for(let i=0;i<o.length;i++){let[s,l]=o[i],u=e.find(e=>(null==e?void 0:e.route.id)===s);if(!u)continue;let c=a.find(e=>e.route.id===u.route.id),d=null!=c&&!he(c,u)&&void 0!==(n&&n[u.route.id]);_e(l)&&d&&await ze(l,r,!1).then(e=>{e&&(t[s]=e)})}}async function Ie(e,t,r){for(let a=0;a<r.length;a++){let{key:n,routeId:o,controller:i}=r[a],s=t[n];e.find(e=>(null==e?void 0:e.route.id)===o)&&_e(s)&&(d(i,"Expected an AbortController for revalidating fetcher deferred result"),await ze(s,i.signal,!0).then(e=>{e&&(t[n]=e)}))}}async function ze(e,t,r){if(void 0===r&&(r=!1),!await e.deferredData.resolveData(t)){if(r)try{return{type:g.data,data:e.deferredData.unwrappedData}}catch(e){return{type:g.error,error:e}}return{type:g.data,data:e.deferredData.data}}}function He(e){return new URLSearchParams(e).getAll("index").some(e=>""===e)}function Be(e,t){let r="string"==typeof t?v(t).search:t.search;if(e[e.length-1].route.index&&He(r||""))return e[e.length-1];let a=H(e);return a[a.length-1]}function We(e){let{formMethod:t,formAction:r,formEncType:a,text:n,formData:o,json:i}=e;if(t&&r&&a)return null!=n?{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:void 0,text:n}:null!=o?{formMethod:t,formAction:r,formEncType:a,formData:o,json:void 0,text:void 0}:void 0!==i?{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:i,text:void 0}:void 0}function Ve(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 Ke(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 $e(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function qe(){return qe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},qe.apply(this,arguments)}function Ye(e,t){if(null==e)return{};var r,a,n={},o=Object.keys(e);for(a=0;a<o.length;a++)r=o[a],t.indexOf(r)>=0||(n[r]=e[r]);return n}Symbol("deferred");const Je="get",Xe="application/x-www-form-urlencoded";function Ge(e){return null!=e&&"string"==typeof e.tagName}function Qe(e){return void 0===e&&(e=""),new URLSearchParams("string"==typeof e||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let a=e[r];return t.concat(Array.isArray(a)?a.map(e=>[r,e]):[[r,a]])},[]))}let Ze=null;const et=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function tt(e){return null==e||et.has(e)?e:null}const rt=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],at=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],nt=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"];try{window.__reactRouterVersion="6"}catch(e){}function ot(e,t){return ie({basename:null==t?void 0:t.basename,future:qe({},null==t?void 0:t.future,{v7_prependBasename:!0}),history:u({window:null==t?void 0:t.window}),hydrationData:(null==t?void 0:t.hydrationData)||st(),routes:e,mapRouteProperties:i.UNSAFE_mapRouteProperties,dataStrategy:null==t?void 0:t.dataStrategy,patchRoutesOnNavigation:null==t?void 0:t.patchRoutesOnNavigation,window:null==t?void 0:t.window}).initialize()}function it(e,t){return ie({basename:null==t?void 0:t.basename,future:qe({},null==t?void 0:t.future,{v7_prependBasename:!0}),history:c({window:null==t?void 0:t.window}),hydrationData:(null==t?void 0:t.hydrationData)||st(),routes:e,mapRouteProperties:i.UNSAFE_mapRouteProperties,dataStrategy:null==t?void 0:t.dataStrategy,patchRoutesOnNavigation:null==t?void 0:t.patchRoutesOnNavigation,window:null==t?void 0:t.window}).initialize()}function st(){var e;let t=null==(e=window)?void 0:e.__staticRouterHydrationData;return t&&t.errors&&(t=qe({},t,{errors:lt(t.errors)})),t}function lt(e){if(!e)return null;let t=Object.entries(e),r={};for(let[e,a]of t)if(a&&"RouteErrorResponse"===a.__type)r[e]=new $(a.status,a.statusText,a.data,!0===a.internal);else if(a&&"Error"===a.__type){if(a.__subType){let t=window[a.__subType];if("function"==typeof t)try{let n=new t(a.message);n.stack="",r[e]=n}catch(e){}}if(null==r[e]){let t=new Error(a.message);t.stack="",r[e]=t}}else r[e]=a;return r}const ut=n.createContext({isTransitioning:!1}),ct=n.createContext(new Map),dt=n.startTransition,ht=o.flushSync,ft=n.useId;function pt(e){ht?ht(e):e()}class mt{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 vt(e){let{fallbackElement:t,router:r,future:a}=e,[o,s]=n.useState(r.state),[l,u]=n.useState(),[c,d]=n.useState({isTransitioning:!1}),[h,f]=n.useState(),[p,m]=n.useState(),[v,y]=n.useState(),g=n.useRef(new Map),{v7_startTransition:w}=a||{},b=n.useCallback(e=>{w?function(e){dt?dt(e):e()}(e):e()},[w]),S=n.useCallback((e,t)=>{let{deletedFetchers:a,flushSync:n,viewTransitionOpts:o}=t;e.fetchers.forEach((e,t)=>{void 0!==e.data&&g.current.set(t,e.data)}),a.forEach(e=>g.current.delete(e));let i=null==r.window||null==r.window.document||"function"!=typeof r.window.document.startViewTransition;if(o&&!i){if(n){pt(()=>{p&&(h&&h.resolve(),p.skipTransition()),d({isTransitioning:!0,flushSync:!0,currentLocation:o.currentLocation,nextLocation:o.nextLocation})});let t=r.window.document.startViewTransition(()=>{pt(()=>s(e))});return t.finished.finally(()=>{pt(()=>{f(void 0),m(void 0),u(void 0),d({isTransitioning:!1})})}),void pt(()=>m(t))}p?(h&&h.resolve(),p.skipTransition(),y({state:e,currentLocation:o.currentLocation,nextLocation:o.nextLocation})):(u(e),d({isTransitioning:!0,flushSync:!1,currentLocation:o.currentLocation,nextLocation:o.nextLocation}))}else n?pt(()=>s(e)):b(()=>s(e))},[r.window,p,h,g,b]);n.useLayoutEffect(()=>r.subscribe(S),[r,S]),n.useEffect(()=>{c.isTransitioning&&!c.flushSync&&f(new mt)},[c]),n.useEffect(()=>{if(h&&l&&r.window){let e=l,t=h.promise,a=r.window.document.startViewTransition(async()=>{b(()=>s(e)),await t});a.finished.finally(()=>{f(void 0),m(void 0),u(void 0),d({isTransitioning:!1})}),m(a)}},[b,l,h,r.window]),n.useEffect(()=>{h&&l&&o.location.key===l.location.key&&h.resolve()},[h,p,o.location,l]),n.useEffect(()=>{!c.isTransitioning&&v&&(u(v.state),d({isTransitioning:!0,flushSync:!1,currentLocation:v.currentLocation,nextLocation:v.nextLocation}),y(void 0))},[c.isTransitioning,v]),n.useEffect(()=>{},[]);let R=n.useMemo(()=>({createHref:r.createHref,encodeLocation:r.encodeLocation,go:e=>r.navigate(e),push:(e,t,a)=>r.navigate(e,{state:t,preventScrollReset:null==a?void 0:a.preventScrollReset}),replace:(e,t,a)=>r.navigate(e,{replace:!0,state:t,preventScrollReset:null==a?void 0:a.preventScrollReset})}),[r]),E=r.basename||"/",x=n.useMemo(()=>({router:r,navigator:R,static:!1,basename:E}),[r,R,E]),D=n.useMemo(()=>({v7_relativeSplatPath:r.future.v7_relativeSplatPath}),[r.future.v7_relativeSplatPath]);return n.useEffect(()=>(0,i.UNSAFE_logV6DeprecationWarnings)(a,r.future),[a,r.future]),n.createElement(n.Fragment,null,n.createElement(i.UNSAFE_DataRouterContext.Provider,{value:x},n.createElement(i.UNSAFE_DataRouterStateContext.Provider,{value:o},n.createElement(ct.Provider,{value:g.current},n.createElement(ut.Provider,{value:c},n.createElement(i.Router,{basename:E,location:o.location,navigationType:o.historyAction,navigator:R,future:D},o.initialized||r.future.v7_partialHydration?n.createElement(yt,{routes:r.routes,future:r.future,state:o}):t))))),null)}const yt=n.memo(gt);function gt(e){let{routes:t,future:r,state:a}=e;return(0,i.UNSAFE_useRoutesImpl)(t,void 0,a,r)}function wt(e){let{basename:t,children:r,future:a,window:o}=e,s=n.useRef();null==s.current&&(s.current=u({window:o,v5Compat:!0}));let l=s.current,[c,d]=n.useState({action:l.action,location:l.location}),{v7_startTransition:h}=a||{},f=n.useCallback(e=>{h&&dt?dt(()=>d(e)):d(e)},[d,h]);return n.useLayoutEffect(()=>l.listen(f),[l,f]),n.useEffect(()=>(0,i.UNSAFE_logV6DeprecationWarnings)(a),[a]),n.createElement(i.Router,{basename:t,children:r,location:c.location,navigationType:c.action,navigator:l,future:a})}function bt(e){let{basename:t,children:r,future:a,window:o}=e,s=n.useRef();null==s.current&&(s.current=c({window:o,v5Compat:!0}));let l=s.current,[u,d]=n.useState({action:l.action,location:l.location}),{v7_startTransition:h}=a||{},f=n.useCallback(e=>{h&&dt?dt(()=>d(e)):d(e)},[d,h]);return n.useLayoutEffect(()=>l.listen(f),[l,f]),n.useEffect(()=>(0,i.UNSAFE_logV6DeprecationWarnings)(a),[a]),n.createElement(i.Router,{basename:t,children:r,location:u.location,navigationType:u.action,navigator:l,future:a})}function St(e){let{basename:t,children:r,future:a,history:o}=e,[s,l]=n.useState({action:o.action,location:o.location}),{v7_startTransition:u}=a||{},c=n.useCallback(e=>{u&&dt?dt(()=>l(e)):l(e)},[l,u]);return n.useLayoutEffect(()=>o.listen(c),[o,c]),n.useEffect(()=>(0,i.UNSAFE_logV6DeprecationWarnings)(a),[a]),n.createElement(i.Router,{basename:t,children:r,location:s.location,navigationType:s.action,navigator:o,future:a})}const Rt="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,Et=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,xt=n.forwardRef(function(e,t){let r,{onClick:a,relative:o,reloadDocument:s,replace:l,state:u,target:c,to:d,preventScrollReset:h,viewTransition:f}=e,p=Ye(e,rt),{basename:m}=n.useContext(i.UNSAFE_NavigationContext),v=!1;if("string"==typeof d&&Et.test(d)&&(r=d,Rt))try{let e=new URL(window.location.href),t=d.startsWith("//")?new URL(e.protocol+d):new URL(d),r=F(t.pathname,m);t.origin===e.origin&&null!=r?d=r+t.search+t.hash:v=!0}catch(e){}let y=(0,i.useHref)(d,{relative:o}),g=_t(d,{replace:l,state:u,target:c,preventScrollReset:h,relative:o,viewTransition:f});return n.createElement("a",qe({},p,{href:r||y,onClick:v||s?a:function(e){a&&a(e),e.defaultPrevented||g(e)},ref:t,target:c}))}),Dt=n.forwardRef(function(e,t){let{"aria-current":r="page",caseSensitive:a=!1,className:o="",end:s=!1,style:l,to:u,viewTransition:c,children:d}=e,h=Ye(e,at),f=(0,i.useResolvedPath)(u,{relative:h.relative}),p=(0,i.useLocation)(),m=n.useContext(i.UNSAFE_DataRouterStateContext),{navigator:v,basename:y}=n.useContext(i.UNSAFE_NavigationContext),g=null!=m&&Kt(f)&&!0===c,w=v.encodeLocation?v.encodeLocation(f).pathname:f.pathname,b=p.pathname,S=m&&m.navigation&&m.navigation.location?m.navigation.location.pathname:null;a||(b=b.toLowerCase(),S=S?S.toLowerCase():null,w=w.toLowerCase()),S&&y&&(S=F(S,y)||S);const R="/"!==w&&w.endsWith("/")?w.length-1:w.length;let E,x=b===w||!s&&b.startsWith(w)&&"/"===b.charAt(R),D=null!=S&&(S===w||!s&&S.startsWith(w)&&"/"===S.charAt(w.length)),L={isActive:x,isPending:D,isTransitioning:g},A=x?r:void 0;E="function"==typeof o?o(L):[o,x?"active":null,D?"pending":null,g?"transitioning":null].filter(Boolean).join(" ");let C="function"==typeof l?l(L):l;return n.createElement(xt,qe({},h,{"aria-current":A,className:E,ref:t,style:C,to:u,viewTransition:c}),"function"==typeof d?d(L):d)}),Lt=n.forwardRef((e,t)=>{let{fetcherKey:r,navigate:a,reloadDocument:o,replace:i,state:s,method:l=Je,action:u,onSubmit:c,relative:d,preventScrollReset:h,viewTransition:f}=e,p=Ye(e,nt),m=Ft(),v=jt(u,{relative:d}),y="get"===l.toLowerCase()?"get":"post";return n.createElement("form",qe({ref:t,method:y,action:v,onSubmit:o?c:e=>{if(c&&c(e),e.defaultPrevented)return;e.preventDefault();let t=e.nativeEvent.submitter,n=(null==t?void 0:t.getAttribute("formmethod"))||l;m(t||e.currentTarget,{fetcherKey:r,method:n,navigate:a,replace:i,state:s,relative:d,preventScrollReset:h,viewTransition:f})}},p))});function At(e){let{getKey:t,storageKey:r}=e;return Bt({getKey:t,storageKey:r}),null}var Ct,Pt;function Tt(e){let t=n.useContext(i.UNSAFE_DataRouterContext);return t||d(!1),t}function kt(e){let t=n.useContext(i.UNSAFE_DataRouterStateContext);return t||d(!1),t}function _t(e,t){let{target:r,replace:a,state:o,preventScrollReset:s,relative:l,viewTransition:u}=void 0===t?{}:t,c=(0,i.useNavigate)(),d=(0,i.useLocation)(),h=(0,i.useResolvedPath)(e,{relative:l});return n.useCallback(t=>{if(function(e,t){return!(0!==e.button||t&&"_self"!==t||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e))}(t,r)){t.preventDefault();let r=void 0!==a?a:(0,i.createPath)(d)===(0,i.createPath)(h);c(e,{replace:r,state:o,preventScrollReset:s,relative:l,viewTransition:u})}},[d,c,h,a,o,r,e,s,l,u])}function Ut(e){let t=n.useRef(Qe(e)),r=n.useRef(!1),a=(0,i.useLocation)(),o=n.useMemo(()=>function(e,t){let r=Qe(e);return t&&t.forEach((e,a)=>{r.has(a)||t.getAll(a).forEach(e=>{r.append(a,e)})}),r}(a.search,r.current?null:t.current),[a.search]),s=(0,i.useNavigate)(),l=n.useCallback((e,t)=>{const a=Qe("function"==typeof e?e(o):e);r.current=!0,s("?"+a,t)},[s,o]);return[o,l]}(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(Ct||(Ct={})),function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(Pt||(Pt={}));let Mt=0,Nt=()=>"__"+String(++Mt)+"__";function Ft(){let{router:e}=Tt(Ct.UseSubmit),{basename:t}=n.useContext(i.UNSAFE_NavigationContext),r=(0,i.UNSAFE_useRouteId)();return n.useCallback(function(a,n){void 0===n&&(n={}),function(){if("undefined"==typeof document)throw new Error("You are calling submit during the server render. Try calling submit within a `useEffect` or callback instead.")}();let{action:o,method:i,encType:s,formData:l,body:u}=function(e,t){let r,a,n,o,i;if(Ge(s=e)&&"form"===s.tagName.toLowerCase()){let i=e.getAttribute("action");a=i?F(i,t):null,r=e.getAttribute("method")||Je,n=tt(e.getAttribute("enctype"))||Xe,o=new FormData(e)}else if(function(e){return Ge(e)&&"button"===e.tagName.toLowerCase()}(e)||function(e){return Ge(e)&&"input"===e.tagName.toLowerCase()}(e)&&("submit"===e.type||"image"===e.type)){let i=e.form;if(null==i)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let s=e.getAttribute("formaction")||i.getAttribute("action");if(a=s?F(s,t):null,r=e.getAttribute("formmethod")||i.getAttribute("method")||Je,n=tt(e.getAttribute("formenctype"))||tt(i.getAttribute("enctype"))||Xe,o=new FormData(i,e),!function(){if(null===Ze)try{new FormData(document.createElement("form"),0),Ze=!1}catch(e){Ze=!0}return Ze}()){let{name:t,type:r,value:a}=e;if("image"===r){let e=t?t+".":"";o.append(e+"x","0"),o.append(e+"y","0")}else t&&o.append(t,a)}}else{if(Ge(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=Je,a=null,n=Xe,i=e}var s;return o&&"text/plain"===n&&(i=o,o=void 0),{action:a,method:r.toLowerCase(),encType:n,formData:o,body:i}}(a,t);if(!1===n.navigate){let t=n.fetcherKey||Nt();e.fetch(t,r,n.action||o,{preventScrollReset:n.preventScrollReset,formData:l,body:u,formMethod:n.method||i,formEncType:n.encType||s,flushSync:n.flushSync})}else e.navigate(n.action||o,{preventScrollReset:n.preventScrollReset,formData:l,body:u,formMethod:n.method||i,formEncType:n.encType||s,replace:n.replace,state:n.state,fromRouteId:r,flushSync:n.flushSync,viewTransition:n.viewTransition})},[e,t,r])}function jt(e,t){let{relative:r}=void 0===t?{}:t,{basename:a}=n.useContext(i.UNSAFE_NavigationContext),o=n.useContext(i.UNSAFE_RouteContext);o||d(!1);let[s]=o.matches.slice(-1),l=qe({},(0,i.useResolvedPath)(e||".",{relative:r})),u=(0,i.useLocation)();if(null==e){l.search=u.search;let e=new URLSearchParams(l.search),t=e.getAll("index");if(t.some(e=>""===e)){e.delete("index"),t.filter(e=>e).forEach(t=>e.append("index",t));let r=e.toString();l.search=r?"?"+r:""}}return e&&"."!==e||!s.route.index||(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),"/"!==a&&(l.pathname="/"===l.pathname?a:B([a,l.pathname])),(0,i.createPath)(l)}function Ot(e){var t;let{key:r}=void 0===e?{}:e,{router:a}=Tt(Ct.UseFetcher),o=kt(Pt.UseFetcher),s=n.useContext(ct),l=n.useContext(i.UNSAFE_RouteContext),u=null==(t=l.matches[l.matches.length-1])?void 0:t.route.id;s||d(!1),l||d(!1),null==u&&d(!1);let c=ft?ft():"",[h,f]=n.useState(r||c);r&&r!==h?f(r):h||f(Nt()),n.useEffect(()=>(a.getFetcher(h),()=>{a.deleteFetcher(h)}),[a,h]);let p=n.useCallback((e,t)=>{u||d(!1),a.fetch(h,u,e,t)},[h,u,a]),m=Ft(),v=n.useCallback((e,t)=>{m(e,qe({},t,{navigate:!1,fetcherKey:h}))},[h,m]),y=n.useMemo(()=>n.forwardRef((e,t)=>n.createElement(Lt,qe({},e,{navigate:!1,fetcherKey:h,ref:t}))),[h]),g=o.fetchers.get(h)||te,w=s.get(h);return n.useMemo(()=>qe({Form:y,submit:v,load:p},g,{data:w}),[y,v,p,g,w])}function It(){let e=kt(Pt.UseFetchers);return Array.from(e.fetchers.entries()).map(e=>{let[t,r]=e;return qe({},r,{key:t})})}const zt="react-router-scroll-positions";let Ht={};function Bt(e){let{getKey:t,storageKey:r}=void 0===e?{}:e,{router:a}=Tt(Ct.UseScrollRestoration),{restoreScrollPosition:o,preventScrollReset:s}=kt(Pt.UseScrollRestoration),{basename:l}=n.useContext(i.UNSAFE_NavigationContext),u=(0,i.useLocation)(),c=(0,i.useMatches)(),d=(0,i.useNavigation)();n.useEffect(()=>(window.history.scrollRestoration="manual",()=>{window.history.scrollRestoration="auto"}),[]),function(e){let{capture:t}={};n.useEffect(()=>{let r=null!=t?{capture:t}:void 0;return window.addEventListener("pagehide",e,r),()=>{window.removeEventListener("pagehide",e,r)}},[e,t])}(n.useCallback(()=>{if("idle"===d.state){let e=(t?t(u,c):null)||u.key;Ht[e]=window.scrollY}try{sessionStorage.setItem(r||zt,JSON.stringify(Ht))}catch(e){}window.history.scrollRestoration="auto"},[r,t,d.state,u,c])),"undefined"!=typeof document&&(n.useLayoutEffect(()=>{try{let e=sessionStorage.getItem(r||zt);e&&(Ht=JSON.parse(e))}catch(e){}},[r]),n.useLayoutEffect(()=>{let e=t&&"/"!==l?(e,r)=>t(qe({},e,{pathname:F(e.pathname,l)||e.pathname}),r):t,r=null==a?void 0:a.enableScrollRestoration(Ht,()=>window.scrollY,e);return()=>r&&r()},[a,l,t]),n.useLayoutEffect(()=>{if(!1!==o)if("number"!=typeof o){if(u.hash){let e=document.getElementById(decodeURIComponent(u.hash.slice(1)));if(e)return void e.scrollIntoView()}!0!==s&&window.scrollTo(0,0)}else window.scrollTo(0,o)},[u,o,s]))}function Wt(e,t){let{capture:r}=t||{};n.useEffect(()=>{let t=null!=r?{capture:r}:void 0;return window.addEventListener("beforeunload",e,t),()=>{window.removeEventListener("beforeunload",e,t)}},[e,r])}function Vt(e){let{when:t,message:r}=e,a=(0,i.useBlocker)(t);n.useEffect(()=>{"blocked"===a.state&&(window.confirm(r)?setTimeout(a.proceed,0):a.reset())},[a,r]),n.useEffect(()=>{"blocked"!==a.state||t||a.reset()},[a,t])}function Kt(e,t){void 0===t&&(t={});let r=n.useContext(ut);null==r&&d(!1);let{basename:a}=Tt(Ct.useViewTransitionState),o=(0,i.useResolvedPath)(e,{relative:t.relative});if(!r.isTransitioning)return!1;let s=F(r.currentLocation.pathname,a)||r.currentLocation.pathname,l=F(r.nextLocation.pathname,a)||r.nextLocation.pathname;return null!=M(o.pathname,l)||null!=M(o.pathname,s)}}}]);
3
+ //# sourceMappingURL=501.87de76da.chunk.js.map
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @remix-run/router v1.23.2
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
+ */
11
+
12
+ /**
13
+ * React Router DOM v6.30.3
14
+ *
15
+ * Copyright (c) Remix Software Inc.
16
+ *
17
+ * This source code is licensed under the MIT license found in the
18
+ * LICENSE.md file in the root directory of this source tree.
19
+ *
20
+ * @license MIT
21
+ */