@baseplate-dev/plugin-auth 3.0.1 → 3.0.2
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.
- package/dist/auth/core/components/auth-definition-editor.js +1 -1
- package/dist/auth/core/components/auth-definition-editor.js.map +1 -1
- package/dist/auth/core/schema/plugin-definition.d.ts +6 -39
- package/dist/auth/core/schema/plugin-definition.d.ts.map +1 -1
- package/dist/auth/core/schema/roles/schema.d.ts +7 -27
- package/dist/auth/core/schema/roles/schema.d.ts.map +1 -1
- package/dist/auth/core/schema/roles/schema.js +1 -1
- package/dist/auth/core/schema/roles/schema.js.map +1 -1
- package/dist/auth0/core/components/auth0-definition-editor.js +1 -1
- package/dist/auth0/core/components/auth0-definition-editor.js.map +1 -1
- package/dist/auth0/core/schema/plugin-definition.d.ts +1 -1
- package/dist/auth0/core/schema/plugin-definition.d.ts.map +1 -1
- package/dist/auth0/generators/react/auth0-apollo/auth0-apollo.generator.d.ts +1 -1
- package/dist/auth0/generators/react/auth0-hooks/auth0-hooks.generator.d.ts +1 -1
- package/dist/auth0/generators/react/auth0-pages/auth0-pages.generator.d.ts +1 -1
- package/dist/auth0/generators/react/react-auth0/react-auth0.generator.d.ts +1 -1
- package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/admin-crud-manage-roles-action.generator.js +1 -1
- package/dist/local-auth/admin/generators/admin-crud-manage-roles-action/admin-crud-manage-roles-action.generator.js.map +1 -1
- package/dist/local-auth/admin/generators/admin-crud-reset-password-action/admin-crud-reset-password-action.generator.js +1 -1
- package/dist/local-auth/admin/generators/admin-crud-reset-password-action/admin-crud-reset-password-action.generator.js.map +1 -1
- package/dist/local-auth/admin/generators/admin-crud-roles-column/admin-crud-roles-column.generator.d.ts +1 -1
- package/dist/local-auth/admin/generators/admin-crud-roles-column/admin-crud-roles-column.generator.js +1 -1
- package/dist/local-auth/admin/generators/admin-crud-roles-column/admin-crud-roles-column.generator.js.map +1 -1
- package/dist/local-auth/admin/schema/manage-role-action.d.ts +5 -11
- package/dist/local-auth/admin/schema/manage-role-action.d.ts.map +1 -1
- package/dist/local-auth/admin/schema/reset-password-action.d.ts +5 -11
- package/dist/local-auth/admin/schema/reset-password-action.d.ts.map +1 -1
- package/dist/local-auth/admin/schema/roles-column.d.ts +1 -10
- package/dist/local-auth/admin/schema/roles-column.d.ts.map +1 -1
- package/dist/local-auth/core/components/local-auth-definition-editor.js +1 -1
- package/dist/local-auth/core/components/local-auth-definition-editor.js.map +1 -1
- package/dist/local-auth/core/generators/auth-apollo/auth-apollo.generator.d.ts +2 -2
- package/dist/local-auth/core/generators/auth-email-password/templates/module/services/user-password.service.d.ts.map +1 -1
- package/dist/local-auth/core/generators/auth-email-password/templates/module/services/user-password.service.js +0 -1
- package/dist/local-auth/core/generators/auth-email-password/templates/module/services/user-password.service.js.map +1 -1
- package/dist/local-auth/core/generators/auth-email-password/templates/module/services/user-password.service.ts +0 -1
- package/dist/local-auth/core/generators/auth-hooks/auth-hooks.generator.d.ts +2 -2
- package/dist/local-auth/core/generators/auth-hooks/generated/index.d.ts +2 -2
- package/dist/local-auth/core/generators/auth-hooks/generated/template-renderers.d.ts +1 -1
- package/dist/local-auth/core/generators/auth-hooks/generated/typed-templates.d.ts +2 -2
- package/dist/local-auth/core/generators/auth-routes/auth-routes.generator.d.ts +2 -2
- package/dist/local-auth/core/generators/auth-routes/generated/index.d.ts +3 -3
- package/dist/local-auth/core/generators/auth-routes/generated/template-renderers.d.ts +1 -1
- package/dist/local-auth/core/generators/auth-routes/generated/typed-templates.d.ts +4 -4
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login.d.ts +3 -11
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login.d.ts.map +1 -1
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login.js +1 -4
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login.js.map +1 -1
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/login.tsx +1 -4
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/register.d.ts +3 -11
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/register.d.ts.map +1 -1
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/register.js +1 -4
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/register.js.map +1 -1
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/register.tsx +1 -4
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/route.d.ts +1 -1
- package/dist/local-auth/core/generators/auth-routes/templates/routes/auth_/route.d.ts.map +1 -1
- package/dist/local-auth/core/generators/react-auth/react-auth.generator.d.ts +1 -1
- package/dist/local-auth/core/generators/react-session/generated/index.d.ts +1 -1
- package/dist/local-auth/core/generators/react-session/generated/ts-import-providers.d.ts +3 -3
- package/dist/local-auth/core/generators/react-session/generated/ts-import-providers.js +2 -2
- package/dist/local-auth/core/generators/react-session/generated/typed-templates.js +1 -1
- package/dist/local-auth/core/generators/react-session/react-session.generator.d.ts +2 -2
- package/dist/local-auth/core/generators/react-session/templates/src/app/user-session-provider.d.ts.map +1 -1
- package/dist/local-auth/core/generators/react-session/templates/src/app/user-session-provider.js +16 -0
- package/dist/local-auth/core/generators/react-session/templates/src/app/user-session-provider.js.map +1 -1
- package/dist/local-auth/core/generators/react-session/templates/src/app/user-session-provider.tsx +17 -0
- package/dist/local-auth/core/generators/react-session/templates/src/services/user-session-client.d.ts.map +1 -1
- package/dist/local-auth/core/generators/react-session/templates/src/services/user-session-client.js +8 -2
- package/dist/local-auth/core/generators/react-session/templates/src/services/user-session-client.js.map +1 -1
- package/dist/local-auth/core/generators/react-session/templates/src/services/user-session-client.ts +8 -2
- package/dist/local-auth/core/schema/plugin-definition.d.ts +3 -9
- package/dist/local-auth/core/schema/plugin-definition.d.ts.map +1 -1
- package/dist/placeholder-auth/core/components/placeholder-auth-definition-editor.js +1 -1
- package/dist/placeholder-auth/core/components/placeholder-auth-definition-editor.js.map +1 -1
- package/dist/placeholder-auth/core/generators/placeholder-auth-hooks/placeholder-auth-hooks.generator.d.ts +1 -1
- package/dist/placeholder-auth/core/generators/placeholder-auth-module/auth-module.generator.d.ts +1 -1
- package/dist/placeholder-auth/core/generators/placeholder-react-auth/react-auth.generator.d.ts +1 -1
- package/dist/placeholder-auth/core/schema/plugin-definition.d.ts +1 -1
- package/dist/placeholder-auth/core/schema/plugin-definition.d.ts.map +1 -1
- package/dist/web/assets/{__federation_expose_auth0CoreCommon-xk1Gj1WU.js → __federation_expose_auth0CoreCommon-DxPG_Wc0.js} +3 -3
- package/dist/web/assets/{__federation_expose_auth0CoreCommon-xk1Gj1WU.js.map → __federation_expose_auth0CoreCommon-DxPG_Wc0.js.map} +1 -1
- package/dist/web/assets/{__federation_expose_auth0CoreWeb-CAiUkJwE.js → __federation_expose_auth0CoreWeb-B9jV1EyN.js} +7 -7
- package/dist/web/assets/__federation_expose_auth0CoreWeb-B9jV1EyN.js.map +1 -0
- package/dist/web/assets/{__federation_expose_authCoreCommon-K21saJbW.js → __federation_expose_authCoreCommon-Cxa_7fkO.js} +3 -3
- package/dist/web/assets/{__federation_expose_authCoreCommon-K21saJbW.js.map → __federation_expose_authCoreCommon-Cxa_7fkO.js.map} +1 -1
- package/dist/web/assets/{__federation_expose_authCoreWeb-L7mv-Kl9.js → __federation_expose_authCoreWeb-CTQI1rXb.js} +9 -9
- package/dist/web/assets/__federation_expose_authCoreWeb-CTQI1rXb.js.map +1 -0
- package/dist/web/assets/{__federation_expose_local-authAdminCommon-BcMGRCCu.js → __federation_expose_local-authAdminCommon-C0_ovnDb.js} +2 -2
- package/dist/web/assets/{__federation_expose_local-authAdminCommon-BcMGRCCu.js.map → __federation_expose_local-authAdminCommon-C0_ovnDb.js.map} +1 -1
- package/dist/web/assets/{__federation_expose_local-authAdminWeb-DUY1rKEt.js → __federation_expose_local-authAdminWeb-GqHU6av7.js} +2 -2
- package/dist/web/assets/{__federation_expose_local-authAdminWeb-DUY1rKEt.js.map → __federation_expose_local-authAdminWeb-GqHU6av7.js.map} +1 -1
- package/dist/web/assets/{__federation_expose_local-authCoreCommon-B1wtgXDT.js → __federation_expose_local-authCoreCommon-PHXPCKoj.js} +3 -3
- package/dist/web/assets/{__federation_expose_local-authCoreCommon-B1wtgXDT.js.map → __federation_expose_local-authCoreCommon-PHXPCKoj.js.map} +1 -1
- package/dist/web/assets/{__federation_expose_local-authCoreWeb-CSWj3XON.js → __federation_expose_local-authCoreWeb-Dz4oU0uP.js} +7 -7
- package/dist/web/assets/__federation_expose_local-authCoreWeb-Dz4oU0uP.js.map +1 -0
- package/dist/web/assets/{__federation_expose_placeholder-authCoreCommon-BTZdABuy.js → __federation_expose_placeholder-authCoreCommon-CrB_sJO_.js} +3 -3
- package/dist/web/assets/{__federation_expose_placeholder-authCoreCommon-BTZdABuy.js.map → __federation_expose_placeholder-authCoreCommon-CrB_sJO_.js.map} +1 -1
- package/dist/web/assets/{__federation_expose_placeholder-authCoreWeb-DXc_X2aO.js → __federation_expose_placeholder-authCoreWeb-KJ8YuuIQ.js} +7 -7
- package/dist/web/assets/__federation_expose_placeholder-authCoreWeb-KJ8YuuIQ.js.map +1 -0
- package/dist/web/assets/{__federation_fn_import-BVpKhyMw.js → __federation_fn_import-CVjKjdRb.js} +2 -2
- package/dist/web/assets/{__federation_fn_import-BVpKhyMw.js.map → __federation_fn_import-CVjKjdRb.js.map} +1 -1
- package/dist/web/assets/__federation_shared_@baseplate-dev/project-builder-lib/{web-gdwlRH2l.js → web-BTmJxb08.js} +11 -6
- package/dist/web/assets/__federation_shared_@baseplate-dev/project-builder-lib/web-BTmJxb08.js.map +1 -0
- package/dist/web/assets/__federation_shared_@baseplate-dev/{project-builder-lib-BvJ1_iif.js → project-builder-lib-FK4Jv94w.js} +620 -644
- package/dist/web/assets/__federation_shared_@baseplate-dev/project-builder-lib-FK4Jv94w.js.map +1 -0
- package/dist/web/assets/__federation_shared_@baseplate-dev/{ui-components-E30UR3cY.js → ui-components-jZLf5m_y.js} +5 -5
- package/dist/web/assets/__federation_shared_@baseplate-dev/{ui-components-E30UR3cY.js.map → ui-components-jZLf5m_y.js.map} +1 -1
- package/dist/web/assets/__federation_shared_@baseplate-dev/{utils-Ciu7eAT9.js → utils-CAgM5SRt.js} +47 -48
- package/dist/web/assets/__federation_shared_@baseplate-dev/utils-CAgM5SRt.js.map +1 -0
- package/dist/web/assets/__federation_shared_@tanstack/{react-router-AU7vpPwr.js → react-router-DynsSbJG.js} +2541 -2240
- package/dist/web/assets/__federation_shared_@tanstack/react-router-DynsSbJG.js.map +1 -0
- package/dist/web/assets/__federation_shared_zod-B6wbpZ4f.js +12007 -0
- package/dist/web/assets/__federation_shared_zod-B6wbpZ4f.js.map +1 -0
- package/dist/web/assets/{get-auth-plugin-definition-CHOjVGaq.js → get-auth-plugin-definition-DqZ2Eg7c.js} +2 -2
- package/dist/web/assets/{get-auth-plugin-definition-CHOjVGaq.js.map → get-auth-plugin-definition-DqZ2Eg7c.js.map} +1 -1
- package/dist/web/assets/{index-DqPqnxYC.js → index-Dccn3WBN.js} +2 -2
- package/dist/web/assets/{index-DqPqnxYC.js.map → index-Dccn3WBN.js.map} +1 -1
- package/dist/web/assets/{index.esm-DUunUtBj.js → index.esm-DeCjXqFv.js} +2 -2
- package/dist/web/assets/{index.esm-DUunUtBj.js.map → index.esm-DeCjXqFv.js.map} +1 -1
- package/dist/web/assets/{model-merger-CI1pu411.js → model-merger-kOQ_dmiE.js} +326 -170
- package/dist/web/assets/model-merger-kOQ_dmiE.js.map +1 -0
- package/dist/web/assets/{plugin-definition-CIiMl7Zf.js → plugin-definition-CxKhFkmJ.js} +3 -3
- package/dist/web/assets/plugin-definition-CxKhFkmJ.js.map +1 -0
- package/dist/web/assets/{plugin-definition--cfUfY5Z.js → plugin-definition-DKygiFuR.js} +2 -2
- package/dist/web/assets/{plugin-definition--cfUfY5Z.js.map → plugin-definition-DKygiFuR.js.map} +1 -1
- package/dist/web/assets/{plugin-definition-BzhiPIBh.js → plugin-definition-JFxKP18O.js} +2 -2
- package/dist/web/assets/{plugin-definition-BzhiPIBh.js.map → plugin-definition-JFxKP18O.js.map} +1 -1
- package/dist/web/assets/{plugin-definition-BYzEIUL9.js → plugin-definition-qkkt1X28.js} +2 -2
- package/dist/web/assets/{plugin-definition-BYzEIUL9.js.map → plugin-definition-qkkt1X28.js.map} +1 -1
- package/dist/web/assets/{react-DW8S9iUr.js → react-DA5A88WZ.js} +2 -2
- package/dist/web/assets/{react-DW8S9iUr.js.map → react-DA5A88WZ.js.map} +1 -1
- package/dist/web/assets/registries-19UehlAo.js +1081 -0
- package/dist/web/assets/registries-19UehlAo.js.map +1 -0
- package/dist/web/assets/remoteEntry.js +10 -10
- package/dist/web/assets/styles-CfTjrsB-.js +59 -0
- package/dist/web/assets/styles-CfTjrsB-.js.map +1 -0
- package/package.json +15 -15
- package/dist/index.js.map +0 -1
- package/dist/web/assets/__federation_expose_auth0CoreWeb-CAiUkJwE.js.map +0 -1
- package/dist/web/assets/__federation_expose_authCoreWeb-L7mv-Kl9.js.map +0 -1
- package/dist/web/assets/__federation_expose_local-authCoreWeb-CSWj3XON.js.map +0 -1
- package/dist/web/assets/__federation_expose_placeholder-authCoreWeb-DXc_X2aO.js.map +0 -1
- package/dist/web/assets/__federation_shared_@baseplate-dev/project-builder-lib/web-gdwlRH2l.js.map +0 -1
- package/dist/web/assets/__federation_shared_@baseplate-dev/project-builder-lib-BvJ1_iif.js.map +0 -1
- package/dist/web/assets/__federation_shared_@baseplate-dev/utils-Ciu7eAT9.js.map +0 -1
- package/dist/web/assets/__federation_shared_@tanstack/react-router-AU7vpPwr.js.map +0 -1
- package/dist/web/assets/__federation_shared_zod-BGUJlEOa.js +0 -4291
- package/dist/web/assets/__federation_shared_zod-BGUJlEOa.js.map +0 -1
- package/dist/web/assets/model-merger-CI1pu411.js.map +0 -1
- package/dist/web/assets/plugin-definition-CIiMl7Zf.js.map +0 -1
- package/dist/web/assets/styles-N05E1ZaS.js +0 -58
- package/dist/web/assets/styles-N05E1ZaS.js.map +0 -1
- package/dist/web-export.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-router-DynsSbJG.js","sources":["../../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.1.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js","../../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.1.0/node_modules/use-sync-external-store/shim/index.js","../../../../../../node_modules/.pnpm/@tanstack+store@0.8.0/node_modules/@tanstack/store/dist/esm/scheduler.js","../../../../../../node_modules/.pnpm/@tanstack+store@0.8.0/node_modules/@tanstack/store/dist/esm/types.js","../../../../../../node_modules/.pnpm/@tanstack+store@0.8.0/node_modules/@tanstack/store/dist/esm/store.js","../../../../../../node_modules/.pnpm/@tanstack+history@1.139.0/node_modules/@tanstack/history/dist/esm/index.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/utils.js","../../../../../../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/lru-cache.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/new-process-route-tree.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/path.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/not-found.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/scroll-restoration.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/qss.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/searchParams.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/root.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/redirect.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/load-matches.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/rewrite.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/router.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/defer.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/link.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/Matches.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/route.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/config.js","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/searchMiddleware.js","../../../../../../node_modules/.pnpm/seroval@1.4.0/node_modules/seroval/dist/esm/production/index.mjs","../../../../../../node_modules/.pnpm/@tanstack+router-core@1.139.7/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/transformer.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/awaited.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/CatchBoundary.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/ClientOnly.js","../../../../../../node_modules/.pnpm/tiny-warning@1.0.3/node_modules/tiny-warning/dist/tiny-warning.esm.js","../../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.1.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.js","../../../../../../node_modules/.pnpm/use-sync-external-store@1.6.0_react@19.1.0/node_modules/use-sync-external-store/shim/with-selector.js","../../../../../../node_modules/.pnpm/@tanstack+react-store@0.8.0_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-store/dist/esm/index.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/routerContext.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useRouter.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useRouterState.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/matchContext.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useMatch.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useLoaderData.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useLoaderDeps.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useParams.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useSearch.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/utils.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useNavigate.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/link.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/route.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/fileRoute.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/lazyRouteComponent.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/Transitioner.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/not-found.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/SafeFragment.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/renderRouteNotFound.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/ScriptOnce.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/scroll-restoration.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/Match.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/Matches.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/router.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/RouterProvider.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/ScrollRestoration.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useBlocker.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useRouteContext.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useLocation.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/useCanGoBack.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/Asset.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/HeadContent.js","../../../../../../node_modules/.pnpm/@tanstack+react-router@1.139.7_react-dom@19.1.0_react@19.1.0__react@19.1.0/node_modules/@tanstack/react-router/dist/esm/Scripts.js"],"sourcesContent":["/**\n * @license React\n * use-sync-external-store-shim.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useState = React.useState,\n useEffect = React.useEffect,\n useLayoutEffect = React.useLayoutEffect,\n useDebugValue = React.useDebugValue;\nfunction useSyncExternalStore$2(subscribe, getSnapshot) {\n var value = getSnapshot(),\n _useState = useState({ inst: { value: value, getSnapshot: getSnapshot } }),\n inst = _useState[0].inst,\n forceUpdate = _useState[1];\n useLayoutEffect(\n function () {\n inst.value = value;\n inst.getSnapshot = getSnapshot;\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n },\n [subscribe, value, getSnapshot]\n );\n useEffect(\n function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n return subscribe(function () {\n checkIfSnapshotChanged(inst) && forceUpdate({ inst: inst });\n });\n },\n [subscribe]\n );\n useDebugValue(value);\n return value;\n}\nfunction checkIfSnapshotChanged(inst) {\n var latestGetSnapshot = inst.getSnapshot;\n inst = inst.value;\n try {\n var nextValue = latestGetSnapshot();\n return !objectIs(inst, nextValue);\n } catch (error) {\n return !0;\n }\n}\nfunction useSyncExternalStore$1(subscribe, getSnapshot) {\n return getSnapshot();\n}\nvar shim =\n \"undefined\" === typeof window ||\n \"undefined\" === typeof window.document ||\n \"undefined\" === typeof window.document.createElement\n ? useSyncExternalStore$1\n : useSyncExternalStore$2;\nexports.useSyncExternalStore =\n void 0 !== React.useSyncExternalStore ? React.useSyncExternalStore : shim;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim.development.js');\n}\n","const __storeToDerived = /* @__PURE__ */ new WeakMap();\nconst __derivedToStore = /* @__PURE__ */ new WeakMap();\nconst __depsThatHaveWrittenThisTick = {\n current: []\n};\nlet __isFlushing = false;\nlet __batchDepth = 0;\nconst __pendingUpdates = /* @__PURE__ */ new Set();\nconst __initialBatchValues = /* @__PURE__ */ new Map();\nfunction __flush_internals(relatedVals) {\n for (const derived of relatedVals) {\n if (__depsThatHaveWrittenThisTick.current.includes(derived)) {\n continue;\n }\n __depsThatHaveWrittenThisTick.current.push(derived);\n derived.recompute();\n const stores = __derivedToStore.get(derived);\n if (stores) {\n for (const store of stores) {\n const relatedLinkedDerivedVals = __storeToDerived.get(store);\n if (!(relatedLinkedDerivedVals == null ? void 0 : relatedLinkedDerivedVals.length)) continue;\n __flush_internals(relatedLinkedDerivedVals);\n }\n }\n }\n}\nfunction __notifyListeners(store) {\n const value = {\n prevVal: store.prevState,\n currentVal: store.state\n };\n for (const listener of store.listeners) {\n listener(value);\n }\n}\nfunction __notifyDerivedListeners(derived) {\n const value = {\n prevVal: derived.prevState,\n currentVal: derived.state\n };\n for (const listener of derived.listeners) {\n listener(value);\n }\n}\nfunction __flush(store) {\n if (__batchDepth > 0 && !__initialBatchValues.has(store)) {\n __initialBatchValues.set(store, store.prevState);\n }\n __pendingUpdates.add(store);\n if (__batchDepth > 0) return;\n if (__isFlushing) return;\n try {\n __isFlushing = true;\n while (__pendingUpdates.size > 0) {\n const stores = Array.from(__pendingUpdates);\n __pendingUpdates.clear();\n for (const store2 of stores) {\n const prevState = __initialBatchValues.get(store2) ?? store2.prevState;\n store2.prevState = prevState;\n __notifyListeners(store2);\n }\n for (const store2 of stores) {\n const derivedVals = __storeToDerived.get(store2);\n if (!derivedVals) continue;\n __depsThatHaveWrittenThisTick.current.push(store2);\n __flush_internals(derivedVals);\n }\n for (const store2 of stores) {\n const derivedVals = __storeToDerived.get(store2);\n if (!derivedVals) continue;\n for (const derived of derivedVals) {\n __notifyDerivedListeners(derived);\n }\n }\n }\n } finally {\n __isFlushing = false;\n __depsThatHaveWrittenThisTick.current = [];\n __initialBatchValues.clear();\n }\n}\nfunction batch(fn) {\n __batchDepth++;\n try {\n fn();\n } finally {\n __batchDepth--;\n if (__batchDepth === 0) {\n const pendingUpdateToFlush = __pendingUpdates.values().next().value;\n if (pendingUpdateToFlush) {\n __flush(pendingUpdateToFlush);\n }\n }\n }\n}\nexport {\n __depsThatHaveWrittenThisTick,\n __derivedToStore,\n __flush,\n __storeToDerived,\n batch\n};\n//# sourceMappingURL=scheduler.js.map\n","function isUpdaterFunction(updater) {\n return typeof updater === \"function\";\n}\nexport {\n isUpdaterFunction\n};\n//# sourceMappingURL=types.js.map\n","import { __flush } from \"./scheduler.js\";\nimport { isUpdaterFunction } from \"./types.js\";\nclass Store {\n constructor(initialState, options) {\n this.listeners = /* @__PURE__ */ new Set();\n this.subscribe = (listener) => {\n var _a, _b;\n this.listeners.add(listener);\n const unsub = (_b = (_a = this.options) == null ? void 0 : _a.onSubscribe) == null ? void 0 : _b.call(_a, listener, this);\n return () => {\n this.listeners.delete(listener);\n unsub == null ? void 0 : unsub();\n };\n };\n this.prevState = initialState;\n this.state = initialState;\n this.options = options;\n }\n setState(updater) {\n var _a, _b, _c;\n this.prevState = this.state;\n if ((_a = this.options) == null ? void 0 : _a.updateFn) {\n this.state = this.options.updateFn(this.prevState)(updater);\n } else {\n if (isUpdaterFunction(updater)) {\n this.state = updater(this.prevState);\n } else {\n this.state = updater;\n }\n }\n (_c = (_b = this.options) == null ? void 0 : _b.onUpdate) == null ? void 0 : _c.call(_b);\n __flush(this);\n }\n}\nexport {\n Store\n};\n//# sourceMappingURL=store.js.map\n","const stateIndexKey = \"__TSR_index\";\nconst popStateEvent = \"popstate\";\nconst beforeUnloadEvent = \"beforeunload\";\nfunction createHistory(opts) {\n let location = opts.getLocation();\n const subscribers = /* @__PURE__ */ new Set();\n const notify = (action) => {\n location = opts.getLocation();\n subscribers.forEach((subscriber) => subscriber({ location, action }));\n };\n const handleIndexChange = (action) => {\n if (opts.notifyOnIndexChange ?? true) notify(action);\n else location = opts.getLocation();\n };\n const tryNavigation = async ({\n task,\n navigateOpts,\n ...actionInfo\n }) => {\n const ignoreBlocker = navigateOpts?.ignoreBlocker ?? false;\n if (ignoreBlocker) {\n task();\n return;\n }\n const blockers = opts.getBlockers?.() ?? [];\n const isPushOrReplace = actionInfo.type === \"PUSH\" || actionInfo.type === \"REPLACE\";\n if (typeof document !== \"undefined\" && blockers.length && isPushOrReplace) {\n for (const blocker of blockers) {\n const nextLocation = parseHref(actionInfo.path, actionInfo.state);\n const isBlocked = await blocker.blockerFn({\n currentLocation: location,\n nextLocation,\n action: actionInfo.type\n });\n if (isBlocked) {\n opts.onBlocked?.();\n return;\n }\n }\n }\n task();\n };\n return {\n get location() {\n return location;\n },\n get length() {\n return opts.getLength();\n },\n subscribers,\n subscribe: (cb) => {\n subscribers.add(cb);\n return () => {\n subscribers.delete(cb);\n };\n },\n push: (path, state, navigateOpts) => {\n const currentIndex = location.state[stateIndexKey];\n state = assignKeyAndIndex(currentIndex + 1, state);\n tryNavigation({\n task: () => {\n opts.pushState(path, state);\n notify({ type: \"PUSH\" });\n },\n navigateOpts,\n type: \"PUSH\",\n path,\n state\n });\n },\n replace: (path, state, navigateOpts) => {\n const currentIndex = location.state[stateIndexKey];\n state = assignKeyAndIndex(currentIndex, state);\n tryNavigation({\n task: () => {\n opts.replaceState(path, state);\n notify({ type: \"REPLACE\" });\n },\n navigateOpts,\n type: \"REPLACE\",\n path,\n state\n });\n },\n go: (index, navigateOpts) => {\n tryNavigation({\n task: () => {\n opts.go(index);\n handleIndexChange({ type: \"GO\", index });\n },\n navigateOpts,\n type: \"GO\"\n });\n },\n back: (navigateOpts) => {\n tryNavigation({\n task: () => {\n opts.back(navigateOpts?.ignoreBlocker ?? false);\n handleIndexChange({ type: \"BACK\" });\n },\n navigateOpts,\n type: \"BACK\"\n });\n },\n forward: (navigateOpts) => {\n tryNavigation({\n task: () => {\n opts.forward(navigateOpts?.ignoreBlocker ?? false);\n handleIndexChange({ type: \"FORWARD\" });\n },\n navigateOpts,\n type: \"FORWARD\"\n });\n },\n canGoBack: () => location.state[stateIndexKey] !== 0,\n createHref: (str) => opts.createHref(str),\n block: (blocker) => {\n if (!opts.setBlockers) return () => {\n };\n const blockers = opts.getBlockers?.() ?? [];\n opts.setBlockers([...blockers, blocker]);\n return () => {\n const blockers2 = opts.getBlockers?.() ?? [];\n opts.setBlockers?.(blockers2.filter((b) => b !== blocker));\n };\n },\n flush: () => opts.flush?.(),\n destroy: () => opts.destroy?.(),\n notify\n };\n}\nfunction assignKeyAndIndex(index, state) {\n if (!state) {\n state = {};\n }\n const key = createRandomKey();\n return {\n ...state,\n key,\n // TODO: Remove in v2 - use __TSR_key instead\n __TSR_key: key,\n [stateIndexKey]: index\n };\n}\nfunction createBrowserHistory(opts) {\n const win = opts?.window ?? (typeof document !== \"undefined\" ? window : void 0);\n const originalPushState = win.history.pushState;\n const originalReplaceState = win.history.replaceState;\n let blockers = [];\n const _getBlockers = () => blockers;\n const _setBlockers = (newBlockers) => blockers = newBlockers;\n const createHref = opts?.createHref ?? ((path) => path);\n const parseLocation = opts?.parseLocation ?? (() => parseHref(\n `${win.location.pathname}${win.location.search}${win.location.hash}`,\n win.history.state\n ));\n if (!win.history.state?.__TSR_key && !win.history.state?.key) {\n const addedKey = createRandomKey();\n win.history.replaceState(\n {\n [stateIndexKey]: 0,\n key: addedKey,\n // TODO: Remove in v2 - use __TSR_key instead\n __TSR_key: addedKey\n },\n \"\"\n );\n }\n let currentLocation = parseLocation();\n let rollbackLocation;\n let nextPopIsGo = false;\n let ignoreNextPop = false;\n let skipBlockerNextPop = false;\n let ignoreNextBeforeUnload = false;\n const getLocation = () => currentLocation;\n let next;\n let scheduled;\n const flush = () => {\n if (!next) {\n return;\n }\n history._ignoreSubscribers = true;\n (next.isPush ? win.history.pushState : win.history.replaceState)(\n next.state,\n \"\",\n next.href\n );\n history._ignoreSubscribers = false;\n next = void 0;\n scheduled = void 0;\n rollbackLocation = void 0;\n };\n const queueHistoryAction = (type, destHref, state) => {\n const href = createHref(destHref);\n if (!scheduled) {\n rollbackLocation = currentLocation;\n }\n currentLocation = parseHref(destHref, state);\n next = {\n href,\n state,\n isPush: next?.isPush || type === \"push\"\n };\n if (!scheduled) {\n scheduled = Promise.resolve().then(() => flush());\n }\n };\n const onPushPop = (type) => {\n currentLocation = parseLocation();\n history.notify({ type });\n };\n const onPushPopEvent = async () => {\n if (ignoreNextPop) {\n ignoreNextPop = false;\n return;\n }\n const nextLocation = parseLocation();\n const delta = nextLocation.state[stateIndexKey] - currentLocation.state[stateIndexKey];\n const isForward = delta === 1;\n const isBack = delta === -1;\n const isGo = !isForward && !isBack || nextPopIsGo;\n nextPopIsGo = false;\n const action = isGo ? \"GO\" : isBack ? \"BACK\" : \"FORWARD\";\n const notify = isGo ? {\n type: \"GO\",\n index: delta\n } : {\n type: isBack ? \"BACK\" : \"FORWARD\"\n };\n if (skipBlockerNextPop) {\n skipBlockerNextPop = false;\n } else {\n const blockers2 = _getBlockers();\n if (typeof document !== \"undefined\" && blockers2.length) {\n for (const blocker of blockers2) {\n const isBlocked = await blocker.blockerFn({\n currentLocation,\n nextLocation,\n action\n });\n if (isBlocked) {\n ignoreNextPop = true;\n win.history.go(1);\n history.notify(notify);\n return;\n }\n }\n }\n }\n currentLocation = parseLocation();\n history.notify(notify);\n };\n const onBeforeUnload = (e) => {\n if (ignoreNextBeforeUnload) {\n ignoreNextBeforeUnload = false;\n return;\n }\n let shouldBlock = false;\n const blockers2 = _getBlockers();\n if (typeof document !== \"undefined\" && blockers2.length) {\n for (const blocker of blockers2) {\n const shouldHaveBeforeUnload = blocker.enableBeforeUnload ?? true;\n if (shouldHaveBeforeUnload === true) {\n shouldBlock = true;\n break;\n }\n if (typeof shouldHaveBeforeUnload === \"function\" && shouldHaveBeforeUnload() === true) {\n shouldBlock = true;\n break;\n }\n }\n }\n if (shouldBlock) {\n e.preventDefault();\n return e.returnValue = \"\";\n }\n return;\n };\n const history = createHistory({\n getLocation,\n getLength: () => win.history.length,\n pushState: (href, state) => queueHistoryAction(\"push\", href, state),\n replaceState: (href, state) => queueHistoryAction(\"replace\", href, state),\n back: (ignoreBlocker) => {\n if (ignoreBlocker) skipBlockerNextPop = true;\n ignoreNextBeforeUnload = true;\n return win.history.back();\n },\n forward: (ignoreBlocker) => {\n if (ignoreBlocker) skipBlockerNextPop = true;\n ignoreNextBeforeUnload = true;\n win.history.forward();\n },\n go: (n) => {\n nextPopIsGo = true;\n win.history.go(n);\n },\n createHref: (href) => createHref(href),\n flush,\n destroy: () => {\n win.history.pushState = originalPushState;\n win.history.replaceState = originalReplaceState;\n win.removeEventListener(beforeUnloadEvent, onBeforeUnload, {\n capture: true\n });\n win.removeEventListener(popStateEvent, onPushPopEvent);\n },\n onBlocked: () => {\n if (rollbackLocation && currentLocation !== rollbackLocation) {\n currentLocation = rollbackLocation;\n }\n },\n getBlockers: _getBlockers,\n setBlockers: _setBlockers,\n notifyOnIndexChange: false\n });\n win.addEventListener(beforeUnloadEvent, onBeforeUnload, { capture: true });\n win.addEventListener(popStateEvent, onPushPopEvent);\n win.history.pushState = function(...args) {\n const res = originalPushState.apply(win.history, args);\n if (!history._ignoreSubscribers) onPushPop(\"PUSH\");\n return res;\n };\n win.history.replaceState = function(...args) {\n const res = originalReplaceState.apply(win.history, args);\n if (!history._ignoreSubscribers) onPushPop(\"REPLACE\");\n return res;\n };\n return history;\n}\nfunction createHashHistory(opts) {\n const win = opts?.window ?? (typeof document !== \"undefined\" ? window : void 0);\n return createBrowserHistory({\n window: win,\n parseLocation: () => {\n const hashSplit = win.location.hash.split(\"#\").slice(1);\n const pathPart = hashSplit[0] ?? \"/\";\n const searchPart = win.location.search;\n const hashEntries = hashSplit.slice(1);\n const hashPart = hashEntries.length === 0 ? \"\" : `#${hashEntries.join(\"#\")}`;\n const hashHref = `${pathPart}${searchPart}${hashPart}`;\n return parseHref(hashHref, win.history.state);\n },\n createHref: (href) => `${win.location.pathname}${win.location.search}#${href}`\n });\n}\nfunction createMemoryHistory(opts = {\n initialEntries: [\"/\"]\n}) {\n const entries = opts.initialEntries;\n let index = opts.initialIndex ? Math.min(Math.max(opts.initialIndex, 0), entries.length - 1) : entries.length - 1;\n const states = entries.map(\n (_entry, index2) => assignKeyAndIndex(index2, void 0)\n );\n const getLocation = () => parseHref(entries[index], states[index]);\n return createHistory({\n getLocation,\n getLength: () => entries.length,\n pushState: (path, state) => {\n if (index < entries.length - 1) {\n entries.splice(index + 1);\n states.splice(index + 1);\n }\n states.push(state);\n entries.push(path);\n index = Math.max(entries.length - 1, 0);\n },\n replaceState: (path, state) => {\n states[index] = state;\n entries[index] = path;\n },\n back: () => {\n index = Math.max(index - 1, 0);\n },\n forward: () => {\n index = Math.min(index + 1, entries.length - 1);\n },\n go: (n) => {\n index = Math.min(Math.max(index + n, 0), entries.length - 1);\n },\n createHref: (path) => path\n });\n}\nfunction parseHref(href, state) {\n const hashIndex = href.indexOf(\"#\");\n const searchIndex = href.indexOf(\"?\");\n const addedKey = createRandomKey();\n return {\n href,\n pathname: href.substring(\n 0,\n hashIndex > 0 ? searchIndex > 0 ? Math.min(hashIndex, searchIndex) : hashIndex : searchIndex > 0 ? searchIndex : href.length\n ),\n hash: hashIndex > -1 ? href.substring(hashIndex) : \"\",\n search: searchIndex > -1 ? href.slice(searchIndex, hashIndex === -1 ? void 0 : hashIndex) : \"\",\n state: state || { [stateIndexKey]: 0, key: addedKey, __TSR_key: addedKey }\n };\n}\nfunction createRandomKey() {\n return (Math.random() + 1).toString(36).substring(7);\n}\nexport {\n createBrowserHistory,\n createHashHistory,\n createHistory,\n createMemoryHistory,\n parseHref\n};\n//# sourceMappingURL=index.js.map\n","function last(arr) {\n return arr[arr.length - 1];\n}\nfunction isFunction(d) {\n return typeof d === \"function\";\n}\nfunction functionalUpdate(updater, previous) {\n if (isFunction(updater)) {\n return updater(previous);\n }\n return updater;\n}\nconst hasOwn = Object.prototype.hasOwnProperty;\nfunction replaceEqualDeep(prev, _next) {\n if (prev === _next) {\n return prev;\n }\n const next = _next;\n const array = isPlainArray(prev) && isPlainArray(next);\n if (!array && !(isPlainObject(prev) && isPlainObject(next))) return next;\n const prevItems = array ? prev : getEnumerableOwnKeys(prev);\n if (!prevItems) return next;\n const nextItems = array ? next : getEnumerableOwnKeys(next);\n if (!nextItems) return next;\n const prevSize = prevItems.length;\n const nextSize = nextItems.length;\n const copy = array ? new Array(nextSize) : {};\n let equalItems = 0;\n for (let i = 0; i < nextSize; i++) {\n const key = array ? i : nextItems[i];\n const p = prev[key];\n const n = next[key];\n if (p === n) {\n copy[key] = p;\n if (array ? i < prevSize : hasOwn.call(prev, key)) equalItems++;\n continue;\n }\n if (p === null || n === null || typeof p !== \"object\" || typeof n !== \"object\") {\n copy[key] = n;\n continue;\n }\n const v = replaceEqualDeep(p, n);\n copy[key] = v;\n if (v === p) equalItems++;\n }\n return prevSize === nextSize && equalItems === prevSize ? prev : copy;\n}\nfunction getEnumerableOwnKeys(o) {\n const keys = [];\n const names = Object.getOwnPropertyNames(o);\n for (const name of names) {\n if (!Object.prototype.propertyIsEnumerable.call(o, name)) return false;\n keys.push(name);\n }\n const symbols = Object.getOwnPropertySymbols(o);\n for (const symbol of symbols) {\n if (!Object.prototype.propertyIsEnumerable.call(o, symbol)) return false;\n keys.push(symbol);\n }\n return keys;\n}\nfunction isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n }\n const ctor = o.constructor;\n if (typeof ctor === \"undefined\") {\n return true;\n }\n const prot = ctor.prototype;\n if (!hasObjectPrototype(prot)) {\n return false;\n }\n if (!prot.hasOwnProperty(\"isPrototypeOf\")) {\n return false;\n }\n return true;\n}\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === \"[object Object]\";\n}\nfunction isPlainArray(value) {\n return Array.isArray(value) && value.length === Object.keys(value).length;\n}\nfunction deepEqual(a, b, opts) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (Array.isArray(a) && Array.isArray(b)) {\n if (a.length !== b.length) return false;\n for (let i = 0, l = a.length; i < l; i++) {\n if (!deepEqual(a[i], b[i], opts)) return false;\n }\n return true;\n }\n if (isPlainObject(a) && isPlainObject(b)) {\n const ignoreUndefined = opts?.ignoreUndefined ?? true;\n if (opts?.partial) {\n for (const k in b) {\n if (!ignoreUndefined || b[k] !== void 0) {\n if (!deepEqual(a[k], b[k], opts)) return false;\n }\n }\n return true;\n }\n let aCount = 0;\n if (!ignoreUndefined) {\n aCount = Object.keys(a).length;\n } else {\n for (const k in a) {\n if (a[k] !== void 0) aCount++;\n }\n }\n let bCount = 0;\n for (const k in b) {\n if (!ignoreUndefined || b[k] !== void 0) {\n bCount++;\n if (bCount > aCount || !deepEqual(a[k], b[k], opts)) return false;\n }\n }\n return aCount === bCount;\n }\n return false;\n}\nfunction createControlledPromise(onResolve) {\n let resolveLoadPromise;\n let rejectLoadPromise;\n const controlledPromise = new Promise((resolve, reject) => {\n resolveLoadPromise = resolve;\n rejectLoadPromise = reject;\n });\n controlledPromise.status = \"pending\";\n controlledPromise.resolve = (value) => {\n controlledPromise.status = \"resolved\";\n controlledPromise.value = value;\n resolveLoadPromise(value);\n onResolve?.(value);\n };\n controlledPromise.reject = (e) => {\n controlledPromise.status = \"rejected\";\n rejectLoadPromise(e);\n };\n return controlledPromise;\n}\nfunction isModuleNotFoundError(error) {\n if (typeof error?.message !== \"string\") return false;\n return error.message.startsWith(\"Failed to fetch dynamically imported module\") || error.message.startsWith(\"error loading dynamically imported module\") || error.message.startsWith(\"Importing a module script failed\");\n}\nfunction isPromise(value) {\n return Boolean(\n value && typeof value === \"object\" && typeof value.then === \"function\"\n );\n}\nfunction findLast(array, predicate) {\n for (let i = array.length - 1; i >= 0; i--) {\n const item = array[i];\n if (predicate(item)) return item;\n }\n return void 0;\n}\nfunction decodeSegment(segment) {\n try {\n return decodeURI(segment);\n } catch {\n return segment.replaceAll(/%[0-9A-F]{2}/gi, (match) => {\n try {\n return decodeURI(match);\n } catch {\n return match;\n }\n });\n }\n}\nfunction decodePath(path, decodeIgnore) {\n if (!path) return path;\n const re = decodeIgnore ? new RegExp(`${decodeIgnore.join(\"|\")}`, \"gi\") : /%25|%5C/gi;\n let cursor = 0;\n let result = \"\";\n let match;\n while (null !== (match = re.exec(path))) {\n result += decodeSegment(path.slice(cursor, match.index)) + match[0];\n cursor = re.lastIndex;\n }\n return result + decodeSegment(cursor ? path.slice(cursor) : path);\n}\nexport {\n createControlledPromise,\n decodePath,\n deepEqual,\n findLast,\n functionalUpdate,\n isModuleNotFoundError,\n isPlainArray,\n isPlainObject,\n isPromise,\n last,\n replaceEqualDeep\n};\n//# sourceMappingURL=utils.js.map\n","var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? \"\".concat(prefix, \": \").concat(provided) : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","function createLRUCache(max) {\n const cache = /* @__PURE__ */ new Map();\n let oldest;\n let newest;\n const touch = (entry) => {\n if (!entry.next) return;\n if (!entry.prev) {\n entry.next.prev = void 0;\n oldest = entry.next;\n entry.next = void 0;\n if (newest) {\n entry.prev = newest;\n newest.next = entry;\n }\n } else {\n entry.prev.next = entry.next;\n entry.next.prev = entry.prev;\n entry.next = void 0;\n if (newest) {\n newest.next = entry;\n entry.prev = newest;\n }\n }\n newest = entry;\n };\n return {\n get(key) {\n const entry = cache.get(key);\n if (!entry) return void 0;\n touch(entry);\n return entry.value;\n },\n set(key, value) {\n if (cache.size >= max && oldest) {\n const toDelete = oldest;\n cache.delete(toDelete.key);\n if (toDelete.next) {\n oldest = toDelete.next;\n toDelete.next.prev = void 0;\n }\n if (toDelete === newest) {\n newest = void 0;\n }\n }\n const existing = cache.get(key);\n if (existing) {\n existing.value = value;\n touch(existing);\n } else {\n const entry = { key, value, prev: newest };\n if (newest) newest.next = entry;\n newest = entry;\n if (!oldest) oldest = entry;\n cache.set(key, entry);\n }\n },\n clear() {\n cache.clear();\n oldest = void 0;\n newest = void 0;\n }\n };\n}\nexport {\n createLRUCache\n};\n//# sourceMappingURL=lru-cache.js.map\n","import invariant from \"tiny-invariant\";\nimport { createLRUCache } from \"./lru-cache.js\";\nimport { last } from \"./utils.js\";\nconst SEGMENT_TYPE_PATHNAME = 0;\nconst SEGMENT_TYPE_PARAM = 1;\nconst SEGMENT_TYPE_WILDCARD = 2;\nconst SEGMENT_TYPE_OPTIONAL_PARAM = 3;\nconst PARAM_W_CURLY_BRACES_RE = /^([^{]*)\\{\\$([a-zA-Z_$][a-zA-Z0-9_$]*)\\}([^}]*)$/;\nconst OPTIONAL_PARAM_W_CURLY_BRACES_RE = /^([^{]*)\\{-\\$([a-zA-Z_$][a-zA-Z0-9_$]*)\\}([^}]*)$/;\nconst WILDCARD_W_CURLY_BRACES_RE = /^([^{]*)\\{\\$\\}([^}]*)$/;\nfunction parseSegment(path, start, output = new Uint16Array(6)) {\n const next = path.indexOf(\"/\", start);\n const end = next === -1 ? path.length : next;\n const part = path.substring(start, end);\n if (!part || !part.includes(\"$\")) {\n output[0] = SEGMENT_TYPE_PATHNAME;\n output[1] = start;\n output[2] = start;\n output[3] = end;\n output[4] = end;\n output[5] = end;\n return output;\n }\n if (part === \"$\") {\n const total = path.length;\n output[0] = SEGMENT_TYPE_WILDCARD;\n output[1] = start;\n output[2] = start;\n output[3] = total;\n output[4] = total;\n output[5] = total;\n return output;\n }\n if (part.charCodeAt(0) === 36) {\n output[0] = SEGMENT_TYPE_PARAM;\n output[1] = start;\n output[2] = start + 1;\n output[3] = end;\n output[4] = end;\n output[5] = end;\n return output;\n }\n const wildcardBracesMatch = part.match(WILDCARD_W_CURLY_BRACES_RE);\n if (wildcardBracesMatch) {\n const prefix = wildcardBracesMatch[1];\n const pLength = prefix.length;\n output[0] = SEGMENT_TYPE_WILDCARD;\n output[1] = start + pLength;\n output[2] = start + pLength + 1;\n output[3] = start + pLength + 2;\n output[4] = start + pLength + 3;\n output[5] = path.length;\n return output;\n }\n const optionalParamBracesMatch = part.match(OPTIONAL_PARAM_W_CURLY_BRACES_RE);\n if (optionalParamBracesMatch) {\n const prefix = optionalParamBracesMatch[1];\n const paramName = optionalParamBracesMatch[2];\n const suffix = optionalParamBracesMatch[3];\n const pLength = prefix.length;\n output[0] = SEGMENT_TYPE_OPTIONAL_PARAM;\n output[1] = start + pLength;\n output[2] = start + pLength + 3;\n output[3] = start + pLength + 3 + paramName.length;\n output[4] = end - suffix.length;\n output[5] = end;\n return output;\n }\n const paramBracesMatch = part.match(PARAM_W_CURLY_BRACES_RE);\n if (paramBracesMatch) {\n const prefix = paramBracesMatch[1];\n const paramName = paramBracesMatch[2];\n const suffix = paramBracesMatch[3];\n const pLength = prefix.length;\n output[0] = SEGMENT_TYPE_PARAM;\n output[1] = start + pLength;\n output[2] = start + pLength + 2;\n output[3] = start + pLength + 2 + paramName.length;\n output[4] = end - suffix.length;\n output[5] = end;\n return output;\n }\n output[0] = SEGMENT_TYPE_PATHNAME;\n output[1] = start;\n output[2] = start;\n output[3] = end;\n output[4] = end;\n output[5] = end;\n return output;\n}\nfunction parseSegments(defaultCaseSensitive, data, route, start, node, depth, onRoute) {\n onRoute?.(route);\n let cursor = start;\n {\n const path = route.fullPath ?? route.from;\n const length = path.length;\n const caseSensitive = route.options?.caseSensitive ?? defaultCaseSensitive;\n while (cursor < length) {\n const segment = parseSegment(path, cursor, data);\n let nextNode;\n const start2 = cursor;\n const end = segment[5];\n cursor = end + 1;\n depth++;\n const kind = segment[0];\n switch (kind) {\n case SEGMENT_TYPE_PATHNAME: {\n const value = path.substring(segment[2], segment[3]);\n if (caseSensitive) {\n const existingNode = node.static?.get(value);\n if (existingNode) {\n nextNode = existingNode;\n } else {\n node.static ??= /* @__PURE__ */ new Map();\n const next = createStaticNode(\n route.fullPath ?? route.from\n );\n next.parent = node;\n next.depth = depth;\n nextNode = next;\n node.static.set(value, next);\n }\n } else {\n const name = value.toLowerCase();\n const existingNode = node.staticInsensitive?.get(name);\n if (existingNode) {\n nextNode = existingNode;\n } else {\n node.staticInsensitive ??= /* @__PURE__ */ new Map();\n const next = createStaticNode(\n route.fullPath ?? route.from\n );\n next.parent = node;\n next.depth = depth;\n nextNode = next;\n node.staticInsensitive.set(name, next);\n }\n }\n break;\n }\n case SEGMENT_TYPE_PARAM: {\n const prefix_raw = path.substring(start2, segment[1]);\n const suffix_raw = path.substring(segment[4], end);\n const actuallyCaseSensitive = caseSensitive && !!(prefix_raw || suffix_raw);\n const prefix = !prefix_raw ? void 0 : actuallyCaseSensitive ? prefix_raw : prefix_raw.toLowerCase();\n const suffix = !suffix_raw ? void 0 : actuallyCaseSensitive ? suffix_raw : suffix_raw.toLowerCase();\n const existingNode = node.dynamic?.find(\n (s) => s.caseSensitive === actuallyCaseSensitive && s.prefix === prefix && s.suffix === suffix\n );\n if (existingNode) {\n nextNode = existingNode;\n } else {\n const next = createDynamicNode(\n SEGMENT_TYPE_PARAM,\n route.fullPath ?? route.from,\n actuallyCaseSensitive,\n prefix,\n suffix\n );\n nextNode = next;\n next.depth = depth;\n next.parent = node;\n node.dynamic ??= [];\n node.dynamic.push(next);\n }\n break;\n }\n case SEGMENT_TYPE_OPTIONAL_PARAM: {\n const prefix_raw = path.substring(start2, segment[1]);\n const suffix_raw = path.substring(segment[4], end);\n const actuallyCaseSensitive = caseSensitive && !!(prefix_raw || suffix_raw);\n const prefix = !prefix_raw ? void 0 : actuallyCaseSensitive ? prefix_raw : prefix_raw.toLowerCase();\n const suffix = !suffix_raw ? void 0 : actuallyCaseSensitive ? suffix_raw : suffix_raw.toLowerCase();\n const existingNode = node.optional?.find(\n (s) => s.caseSensitive === actuallyCaseSensitive && s.prefix === prefix && s.suffix === suffix\n );\n if (existingNode) {\n nextNode = existingNode;\n } else {\n const next = createDynamicNode(\n SEGMENT_TYPE_OPTIONAL_PARAM,\n route.fullPath ?? route.from,\n actuallyCaseSensitive,\n prefix,\n suffix\n );\n nextNode = next;\n next.parent = node;\n next.depth = depth;\n node.optional ??= [];\n node.optional.push(next);\n }\n break;\n }\n case SEGMENT_TYPE_WILDCARD: {\n const prefix_raw = path.substring(start2, segment[1]);\n const suffix_raw = path.substring(segment[4], end);\n const actuallyCaseSensitive = caseSensitive && !!(prefix_raw || suffix_raw);\n const prefix = !prefix_raw ? void 0 : actuallyCaseSensitive ? prefix_raw : prefix_raw.toLowerCase();\n const suffix = !suffix_raw ? void 0 : actuallyCaseSensitive ? suffix_raw : suffix_raw.toLowerCase();\n const next = createDynamicNode(\n SEGMENT_TYPE_WILDCARD,\n route.fullPath ?? route.from,\n actuallyCaseSensitive,\n prefix,\n suffix\n );\n nextNode = next;\n next.parent = node;\n next.depth = depth;\n node.wildcard ??= [];\n node.wildcard.push(next);\n }\n }\n node = nextNode;\n }\n if ((route.path || !route.children) && !route.isRoot) {\n const isIndex = path.endsWith(\"/\");\n if (!isIndex) node.notFound = route;\n if (!node.route || !node.isIndex && isIndex) node.route = route;\n node.isIndex ||= isIndex;\n }\n }\n if (route.children)\n for (const child of route.children) {\n parseSegments(\n defaultCaseSensitive,\n data,\n child,\n cursor,\n node,\n depth,\n onRoute\n );\n }\n}\nfunction sortDynamic(a, b) {\n if (a.prefix && b.prefix && a.prefix !== b.prefix) {\n if (a.prefix.startsWith(b.prefix)) return -1;\n if (b.prefix.startsWith(a.prefix)) return 1;\n }\n if (a.suffix && b.suffix && a.suffix !== b.suffix) {\n if (a.suffix.endsWith(b.suffix)) return -1;\n if (b.suffix.endsWith(a.suffix)) return 1;\n }\n if (a.prefix && !b.prefix) return -1;\n if (!a.prefix && b.prefix) return 1;\n if (a.suffix && !b.suffix) return -1;\n if (!a.suffix && b.suffix) return 1;\n if (a.caseSensitive && !b.caseSensitive) return -1;\n if (!a.caseSensitive && b.caseSensitive) return 1;\n return 0;\n}\nfunction sortTreeNodes(node) {\n if (node.static) {\n for (const child of node.static.values()) {\n sortTreeNodes(child);\n }\n }\n if (node.staticInsensitive) {\n for (const child of node.staticInsensitive.values()) {\n sortTreeNodes(child);\n }\n }\n if (node.dynamic?.length) {\n node.dynamic.sort(sortDynamic);\n for (const child of node.dynamic) {\n sortTreeNodes(child);\n }\n }\n if (node.optional?.length) {\n node.optional.sort(sortDynamic);\n for (const child of node.optional) {\n sortTreeNodes(child);\n }\n }\n if (node.wildcard?.length) {\n node.wildcard.sort(sortDynamic);\n for (const child of node.wildcard) {\n sortTreeNodes(child);\n }\n }\n}\nfunction createStaticNode(fullPath) {\n return {\n kind: SEGMENT_TYPE_PATHNAME,\n depth: 0,\n static: null,\n staticInsensitive: null,\n dynamic: null,\n optional: null,\n wildcard: null,\n route: null,\n fullPath,\n parent: null,\n isIndex: false,\n notFound: null\n };\n}\nfunction createDynamicNode(kind, fullPath, caseSensitive, prefix, suffix) {\n return {\n kind,\n depth: 0,\n static: null,\n staticInsensitive: null,\n dynamic: null,\n optional: null,\n wildcard: null,\n route: null,\n fullPath,\n parent: null,\n isIndex: false,\n notFound: null,\n caseSensitive,\n prefix,\n suffix\n };\n}\nfunction processRouteMasks(routeList, processedTree) {\n const segmentTree = createStaticNode(\"/\");\n const data = new Uint16Array(6);\n for (const route of routeList) {\n parseSegments(false, data, route, 1, segmentTree, 0);\n }\n sortTreeNodes(segmentTree);\n processedTree.masksTree = segmentTree;\n processedTree.flatCache = createLRUCache(1e3);\n}\nfunction findFlatMatch(path, processedTree) {\n path ||= \"/\";\n const cached = processedTree.flatCache.get(path);\n if (cached) return cached;\n const result = findMatch(path, processedTree.masksTree);\n processedTree.flatCache.set(path, result);\n return result;\n}\nfunction findSingleMatch(from, caseSensitive, fuzzy, path, processedTree) {\n from ||= \"/\";\n path ||= \"/\";\n const key = caseSensitive ? `case\\0${from}` : from;\n let tree = processedTree.singleCache.get(key);\n if (!tree) {\n tree = createStaticNode(\"/\");\n const data = new Uint16Array(6);\n parseSegments(caseSensitive, data, { from }, 1, tree, 0);\n processedTree.singleCache.set(key, tree);\n }\n return findMatch(path, tree, fuzzy);\n}\nfunction findRouteMatch(path, processedTree, fuzzy = false) {\n const key = fuzzy ? path : `nofuzz\\0${path}`;\n const cached = processedTree.matchCache.get(key);\n if (cached !== void 0) return cached;\n path ||= \"/\";\n const result = findMatch(\n path,\n processedTree.segmentTree,\n fuzzy\n );\n if (result) result.branch = buildRouteBranch(result.route);\n processedTree.matchCache.set(key, result);\n return result;\n}\nfunction trimPathRight(path) {\n return path === \"/\" ? path : path.replace(/\\/{1,}$/, \"\");\n}\nfunction processRouteTree(routeTree, caseSensitive = false, initRoute) {\n const segmentTree = createStaticNode(routeTree.fullPath);\n const data = new Uint16Array(6);\n const routesById = {};\n const routesByPath = {};\n let index = 0;\n parseSegments(caseSensitive, data, routeTree, 1, segmentTree, 0, (route) => {\n initRoute?.(route, index);\n invariant(\n !(route.id in routesById),\n `Duplicate routes found with id: ${String(route.id)}`\n );\n routesById[route.id] = route;\n if (index !== 0 && route.path) {\n const trimmedFullPath = trimPathRight(route.fullPath);\n if (!routesByPath[trimmedFullPath] || route.fullPath.endsWith(\"/\")) {\n routesByPath[trimmedFullPath] = route;\n }\n }\n index++;\n });\n sortTreeNodes(segmentTree);\n const processedTree = {\n segmentTree,\n singleCache: createLRUCache(1e3),\n matchCache: createLRUCache(1e3),\n flatCache: null,\n masksTree: null\n };\n return {\n processedTree,\n routesById,\n routesByPath\n };\n}\nfunction findMatch(path, segmentTree, fuzzy = false) {\n const parts = path.split(\"/\");\n const leaf = getNodeMatch(path, parts, segmentTree, fuzzy);\n if (!leaf) return null;\n const params = extractParams(path, parts, leaf);\n const isFuzzyMatch = \"**\" in leaf;\n if (isFuzzyMatch) params[\"**\"] = leaf[\"**\"];\n const route = isFuzzyMatch ? leaf.node.notFound ?? leaf.node.route : leaf.node.route;\n return {\n route,\n params\n };\n}\nfunction extractParams(path, parts, leaf) {\n const list = buildBranch(leaf.node);\n let nodeParts = null;\n const params = {};\n for (let partIndex = 0, nodeIndex = 0, pathIndex = 0; nodeIndex < list.length; partIndex++, nodeIndex++, pathIndex++) {\n const node = list[nodeIndex];\n const part = parts[partIndex];\n const currentPathIndex = pathIndex;\n if (part) pathIndex += part.length;\n if (node.kind === SEGMENT_TYPE_PARAM) {\n nodeParts ??= leaf.node.fullPath.split(\"/\");\n const nodePart = nodeParts[nodeIndex];\n const preLength = node.prefix?.length ?? 0;\n const isCurlyBraced = nodePart.charCodeAt(preLength) === 123;\n if (isCurlyBraced) {\n const sufLength = node.suffix?.length ?? 0;\n const name = nodePart.substring(\n preLength + 2,\n nodePart.length - sufLength - 1\n );\n const value = part.substring(preLength, part.length - sufLength);\n params[name] = decodeURIComponent(value);\n } else {\n const name = nodePart.substring(1);\n params[name] = decodeURIComponent(part);\n }\n } else if (node.kind === SEGMENT_TYPE_OPTIONAL_PARAM) {\n if (leaf.skipped & 1 << nodeIndex) {\n partIndex--;\n continue;\n }\n nodeParts ??= leaf.node.fullPath.split(\"/\");\n const nodePart = nodeParts[nodeIndex];\n const preLength = node.prefix?.length ?? 0;\n const sufLength = node.suffix?.length ?? 0;\n const name = nodePart.substring(\n preLength + 3,\n nodePart.length - sufLength - 1\n );\n const value = node.suffix || node.prefix ? part.substring(preLength, part.length - sufLength) : part;\n if (value) params[name] = decodeURIComponent(value);\n } else if (node.kind === SEGMENT_TYPE_WILDCARD) {\n const n = node;\n const value = path.substring(\n currentPathIndex + (n.prefix?.length ?? 0),\n path.length - (n.suffix?.length ?? 0)\n );\n const splat = decodeURIComponent(value);\n params[\"*\"] = splat;\n params._splat = splat;\n break;\n }\n }\n return params;\n}\nfunction buildRouteBranch(route) {\n const list = [route];\n while (route.parentRoute) {\n route = route.parentRoute;\n list.push(route);\n }\n list.reverse();\n return list;\n}\nfunction buildBranch(node) {\n const list = Array(node.depth + 1);\n do {\n list[node.depth] = node;\n node = node.parent;\n } while (node);\n return list;\n}\nfunction getNodeMatch(path, parts, segmentTree, fuzzy) {\n const trailingSlash = !last(parts);\n const pathIsIndex = trailingSlash && path !== \"/\";\n const partsLength = parts.length - (trailingSlash ? 1 : 0);\n const stack = [\n {\n node: segmentTree,\n index: 1,\n skipped: 0,\n depth: 1,\n statics: 1,\n dynamics: 0,\n optionals: 0\n }\n ];\n let wildcardMatch = null;\n let bestFuzzy = null;\n let bestMatch = null;\n while (stack.length) {\n const frame = stack.pop();\n let { node, index, skipped, depth, statics, dynamics, optionals } = frame;\n if (fuzzy && node.notFound && isFrameMoreSpecific(bestFuzzy, frame)) {\n bestFuzzy = frame;\n }\n const isBeyondPath = index === partsLength;\n if (isBeyondPath) {\n if (node.route && (!pathIsIndex || node.isIndex)) {\n if (isFrameMoreSpecific(bestMatch, frame)) {\n bestMatch = frame;\n }\n if (statics === partsLength && node.isIndex) return bestMatch;\n }\n if (!node.optional && !node.wildcard) continue;\n }\n const part = isBeyondPath ? void 0 : parts[index];\n let lowerPart;\n if (node.wildcard && isFrameMoreSpecific(wildcardMatch, frame)) {\n for (const segment of node.wildcard) {\n const { prefix, suffix } = segment;\n if (prefix) {\n if (isBeyondPath) continue;\n const casePart = segment.caseSensitive ? part : lowerPart ??= part.toLowerCase();\n if (!casePart.startsWith(prefix)) continue;\n }\n if (suffix) {\n if (isBeyondPath) continue;\n const end = parts.slice(index).join(\"/\").slice(-suffix.length);\n const casePart = segment.caseSensitive ? end : end.toLowerCase();\n if (casePart !== suffix) continue;\n }\n wildcardMatch = {\n node: segment,\n index,\n skipped,\n depth,\n statics,\n dynamics,\n optionals\n };\n break;\n }\n }\n if (node.optional) {\n const nextSkipped = skipped | 1 << depth;\n const nextDepth = depth + 1;\n for (let i = node.optional.length - 1; i >= 0; i--) {\n const segment = node.optional[i];\n stack.push({\n node: segment,\n index,\n skipped: nextSkipped,\n depth: nextDepth,\n statics,\n dynamics,\n optionals\n });\n }\n if (!isBeyondPath) {\n for (let i = node.optional.length - 1; i >= 0; i--) {\n const segment = node.optional[i];\n const { prefix, suffix } = segment;\n if (prefix || suffix) {\n const casePart = segment.caseSensitive ? part : lowerPart ??= part.toLowerCase();\n if (prefix && !casePart.startsWith(prefix)) continue;\n if (suffix && !casePart.endsWith(suffix)) continue;\n }\n stack.push({\n node: segment,\n index: index + 1,\n skipped,\n depth: nextDepth,\n statics,\n dynamics,\n optionals: optionals + 1\n });\n }\n }\n }\n if (!isBeyondPath && node.dynamic && part) {\n for (let i = node.dynamic.length - 1; i >= 0; i--) {\n const segment = node.dynamic[i];\n const { prefix, suffix } = segment;\n if (prefix || suffix) {\n const casePart = segment.caseSensitive ? part : lowerPart ??= part.toLowerCase();\n if (prefix && !casePart.startsWith(prefix)) continue;\n if (suffix && !casePart.endsWith(suffix)) continue;\n }\n stack.push({\n node: segment,\n index: index + 1,\n skipped,\n depth: depth + 1,\n statics,\n dynamics: dynamics + 1,\n optionals\n });\n }\n }\n if (!isBeyondPath && node.staticInsensitive) {\n const match = node.staticInsensitive.get(\n lowerPart ??= part.toLowerCase()\n );\n if (match) {\n stack.push({\n node: match,\n index: index + 1,\n skipped,\n depth: depth + 1,\n statics: statics + 1,\n dynamics,\n optionals\n });\n }\n }\n if (!isBeyondPath && node.static) {\n const match = node.static.get(part);\n if (match) {\n stack.push({\n node: match,\n index: index + 1,\n skipped,\n depth: depth + 1,\n statics: statics + 1,\n dynamics,\n optionals\n });\n }\n }\n }\n if (bestMatch && wildcardMatch) {\n return isFrameMoreSpecific(wildcardMatch, bestMatch) ? bestMatch : wildcardMatch;\n }\n if (bestMatch) return bestMatch;\n if (wildcardMatch) return wildcardMatch;\n if (fuzzy && bestFuzzy) {\n let sliceIndex = bestFuzzy.index;\n for (let i = 0; i < bestFuzzy.index; i++) {\n sliceIndex += parts[i].length;\n }\n const splat = sliceIndex === path.length ? \"/\" : path.slice(sliceIndex);\n return {\n node: bestFuzzy.node,\n skipped: bestFuzzy.skipped,\n \"**\": decodeURIComponent(splat)\n };\n }\n return null;\n}\nfunction isFrameMoreSpecific(prev, next) {\n if (!prev) return true;\n return next.statics > prev.statics || next.statics === prev.statics && (next.dynamics > prev.dynamics || next.dynamics === prev.dynamics && (next.optionals > prev.optionals || next.optionals === prev.optionals && (next.node.isIndex > prev.node.isIndex || next.node.isIndex === prev.node.isIndex && next.depth > prev.depth)));\n}\nexport {\n SEGMENT_TYPE_OPTIONAL_PARAM,\n SEGMENT_TYPE_PARAM,\n SEGMENT_TYPE_PATHNAME,\n SEGMENT_TYPE_WILDCARD,\n findFlatMatch,\n findRouteMatch,\n findSingleMatch,\n parseSegment,\n processRouteMasks,\n processRouteTree,\n trimPathRight\n};\n//# sourceMappingURL=new-process-route-tree.js.map\n","import { last } from \"./utils.js\";\nimport { parseSegment, SEGMENT_TYPE_PATHNAME, SEGMENT_TYPE_WILDCARD, SEGMENT_TYPE_PARAM, SEGMENT_TYPE_OPTIONAL_PARAM } from \"./new-process-route-tree.js\";\nfunction joinPaths(paths) {\n return cleanPath(\n paths.filter((val) => {\n return val !== void 0;\n }).join(\"/\")\n );\n}\nfunction cleanPath(path) {\n return path.replace(/\\/{2,}/g, \"/\");\n}\nfunction trimPathLeft(path) {\n return path === \"/\" ? path : path.replace(/^\\/{1,}/, \"\");\n}\nfunction trimPathRight(path) {\n const len = path.length;\n return len > 1 && path[len - 1] === \"/\" ? path.replace(/\\/{1,}$/, \"\") : path;\n}\nfunction trimPath(path) {\n return trimPathRight(trimPathLeft(path));\n}\nfunction removeTrailingSlash(value, basepath) {\n if (value?.endsWith(\"/\") && value !== \"/\" && value !== `${basepath}/`) {\n return value.slice(0, -1);\n }\n return value;\n}\nfunction exactPathTest(pathName1, pathName2, basepath) {\n return removeTrailingSlash(pathName1, basepath) === removeTrailingSlash(pathName2, basepath);\n}\nfunction resolvePath({\n base,\n to,\n trailingSlash = \"never\",\n cache\n}) {\n const isAbsolute = to.startsWith(\"/\");\n const isBase = !isAbsolute && to === \".\";\n let key;\n if (cache) {\n key = isAbsolute ? to : isBase ? base : base + \"\\0\" + to;\n const cached = cache.get(key);\n if (cached) return cached;\n }\n let baseSegments;\n if (isBase) {\n baseSegments = base.split(\"/\");\n } else if (isAbsolute) {\n baseSegments = to.split(\"/\");\n } else {\n baseSegments = base.split(\"/\");\n while (baseSegments.length > 1 && last(baseSegments) === \"\") {\n baseSegments.pop();\n }\n const toSegments = to.split(\"/\");\n for (let index = 0, length = toSegments.length; index < length; index++) {\n const value = toSegments[index];\n if (value === \"\") {\n if (!index) {\n baseSegments = [value];\n } else if (index === length - 1) {\n baseSegments.push(value);\n } else ;\n } else if (value === \"..\") {\n baseSegments.pop();\n } else if (value === \".\") ;\n else {\n baseSegments.push(value);\n }\n }\n }\n if (baseSegments.length > 1) {\n if (last(baseSegments) === \"\") {\n if (trailingSlash === \"never\") {\n baseSegments.pop();\n }\n } else if (trailingSlash === \"always\") {\n baseSegments.push(\"\");\n }\n }\n let segment;\n let joined = \"\";\n for (let i = 0; i < baseSegments.length; i++) {\n if (i > 0) joined += \"/\";\n const part = baseSegments[i];\n if (!part) continue;\n segment = parseSegment(part, 0, segment);\n const kind = segment[0];\n if (kind === SEGMENT_TYPE_PATHNAME) {\n joined += part;\n continue;\n }\n const end = segment[5];\n const prefix = part.substring(0, segment[1]);\n const suffix = part.substring(segment[4], end);\n const value = part.substring(segment[2], segment[3]);\n if (kind === SEGMENT_TYPE_PARAM) {\n joined += prefix || suffix ? `${prefix}{$${value}}${suffix}` : `$${value}`;\n } else if (kind === SEGMENT_TYPE_WILDCARD) {\n joined += prefix || suffix ? `${prefix}{$}${suffix}` : \"$\";\n } else {\n joined += `${prefix}{-$${value}}${suffix}`;\n }\n }\n joined = cleanPath(joined);\n const result = joined || \"/\";\n if (key && cache) cache.set(key, result);\n return result;\n}\nfunction encodeParam(key, params, decodeCharMap) {\n const value = params[key];\n if (typeof value !== \"string\") return value;\n if (key === \"_splat\") {\n return encodeURI(value);\n } else {\n return encodePathParam(value, decodeCharMap);\n }\n}\nfunction interpolatePath({\n path,\n params,\n decodeCharMap\n}) {\n let isMissingParams = false;\n const usedParams = {};\n if (!path || path === \"/\")\n return { interpolatedPath: \"/\", usedParams, isMissingParams };\n if (!path.includes(\"$\"))\n return { interpolatedPath: path, usedParams, isMissingParams };\n const length = path.length;\n let cursor = 0;\n let segment;\n let joined = \"\";\n while (cursor < length) {\n const start = cursor;\n segment = parseSegment(path, start, segment);\n const end = segment[5];\n cursor = end + 1;\n if (start === end) continue;\n const kind = segment[0];\n if (kind === SEGMENT_TYPE_PATHNAME) {\n joined += \"/\" + path.substring(start, end);\n continue;\n }\n if (kind === SEGMENT_TYPE_WILDCARD) {\n const splat = params._splat;\n usedParams._splat = splat;\n usedParams[\"*\"] = splat;\n const prefix = path.substring(start, segment[1]);\n const suffix = path.substring(segment[4], end);\n if (!splat) {\n isMissingParams = true;\n if (prefix || suffix) {\n joined += \"/\" + prefix + suffix;\n }\n continue;\n }\n const value = encodeParam(\"_splat\", params, decodeCharMap);\n joined += \"/\" + prefix + value + suffix;\n continue;\n }\n if (kind === SEGMENT_TYPE_PARAM) {\n const key = path.substring(segment[2], segment[3]);\n if (!isMissingParams && !(key in params)) {\n isMissingParams = true;\n }\n usedParams[key] = params[key];\n const prefix = path.substring(start, segment[1]);\n const suffix = path.substring(segment[4], end);\n const value = encodeParam(key, params, decodeCharMap) ?? \"undefined\";\n joined += \"/\" + prefix + value + suffix;\n continue;\n }\n if (kind === SEGMENT_TYPE_OPTIONAL_PARAM) {\n const key = path.substring(segment[2], segment[3]);\n const valueRaw = params[key];\n if (valueRaw == null) continue;\n usedParams[key] = valueRaw;\n const prefix = path.substring(start, segment[1]);\n const suffix = path.substring(segment[4], end);\n const value = encodeParam(key, params, decodeCharMap) ?? \"\";\n joined += \"/\" + prefix + value + suffix;\n continue;\n }\n }\n if (path.endsWith(\"/\")) joined += \"/\";\n const interpolatedPath = joined || \"/\";\n return { usedParams, interpolatedPath, isMissingParams };\n}\nfunction encodePathParam(value, decodeCharMap) {\n let encoded = encodeURIComponent(value);\n if (decodeCharMap) {\n for (const [encodedChar, char] of decodeCharMap) {\n encoded = encoded.replaceAll(encodedChar, char);\n }\n }\n return encoded;\n}\nexport {\n cleanPath,\n exactPathTest,\n interpolatePath,\n joinPaths,\n removeTrailingSlash,\n resolvePath,\n trimPath,\n trimPathLeft,\n trimPathRight\n};\n//# sourceMappingURL=path.js.map\n","function notFound(options = {}) {\n options.isNotFound = true;\n if (options.throw) throw options;\n return options;\n}\nfunction isNotFound(obj) {\n return !!obj?.isNotFound;\n}\nexport {\n isNotFound,\n notFound\n};\n//# sourceMappingURL=not-found.js.map\n","import { functionalUpdate } from \"./utils.js\";\nfunction getSafeSessionStorage() {\n try {\n if (typeof window !== \"undefined\" && typeof window.sessionStorage === \"object\") {\n return window.sessionStorage;\n }\n } catch {\n }\n return void 0;\n}\nconst storageKey = \"tsr-scroll-restoration-v1_3\";\nconst throttle = (fn, wait) => {\n let timeout;\n return (...args) => {\n if (!timeout) {\n timeout = setTimeout(() => {\n fn(...args);\n timeout = null;\n }, wait);\n }\n };\n};\nfunction createScrollRestorationCache() {\n const safeSessionStorage = getSafeSessionStorage();\n if (!safeSessionStorage) {\n return null;\n }\n const persistedState = safeSessionStorage.getItem(storageKey);\n let state = persistedState ? JSON.parse(persistedState) : {};\n return {\n state,\n // This setter is simply to make sure that we set the sessionStorage right\n // after the state is updated. It doesn't necessarily need to be a functional\n // update.\n set: (updater) => (state = functionalUpdate(updater, state) || state, safeSessionStorage.setItem(storageKey, JSON.stringify(state)))\n };\n}\nconst scrollRestorationCache = createScrollRestorationCache();\nconst defaultGetScrollRestorationKey = (location) => {\n return location.state.__TSR_key || location.href;\n};\nfunction getCssSelector(el) {\n const path = [];\n let parent;\n while (parent = el.parentNode) {\n path.push(\n `${el.tagName}:nth-child(${Array.prototype.indexOf.call(parent.children, el) + 1})`\n );\n el = parent;\n }\n return `${path.reverse().join(\" > \")}`.toLowerCase();\n}\nlet ignoreScroll = false;\nfunction restoreScroll({\n storageKey: storageKey2,\n key,\n behavior,\n shouldScrollRestoration,\n scrollToTopSelectors,\n location\n}) {\n let byKey;\n try {\n byKey = JSON.parse(sessionStorage.getItem(storageKey2) || \"{}\");\n } catch (error) {\n console.error(error);\n return;\n }\n const resolvedKey = key || window.history.state?.__TSR_key;\n const elementEntries = byKey[resolvedKey];\n ignoreScroll = true;\n scroll: {\n if (shouldScrollRestoration && elementEntries && Object.keys(elementEntries).length > 0) {\n for (const elementSelector in elementEntries) {\n const entry = elementEntries[elementSelector];\n if (elementSelector === \"window\") {\n window.scrollTo({\n top: entry.scrollY,\n left: entry.scrollX,\n behavior\n });\n } else if (elementSelector) {\n const element = document.querySelector(elementSelector);\n if (element) {\n element.scrollLeft = entry.scrollX;\n element.scrollTop = entry.scrollY;\n }\n }\n }\n break scroll;\n }\n const hash = (location ?? window.location).hash.split(\"#\", 2)[1];\n if (hash) {\n const hashScrollIntoViewOptions = window.history.state?.__hashScrollIntoViewOptions ?? true;\n if (hashScrollIntoViewOptions) {\n const el = document.getElementById(hash);\n if (el) {\n el.scrollIntoView(hashScrollIntoViewOptions);\n }\n }\n break scroll;\n }\n const scrollOptions = { top: 0, left: 0, behavior };\n window.scrollTo(scrollOptions);\n if (scrollToTopSelectors) {\n for (const selector of scrollToTopSelectors) {\n if (selector === \"window\") continue;\n const element = typeof selector === \"function\" ? selector() : document.querySelector(selector);\n if (element) element.scrollTo(scrollOptions);\n }\n }\n }\n ignoreScroll = false;\n}\nfunction setupScrollRestoration(router, force) {\n if (!scrollRestorationCache && !router.isServer) {\n return;\n }\n const shouldScrollRestoration = force ?? router.options.scrollRestoration ?? false;\n if (shouldScrollRestoration) {\n router.isScrollRestoring = true;\n }\n if (router.isServer || router.isScrollRestorationSetup || !scrollRestorationCache) {\n return;\n }\n router.isScrollRestorationSetup = true;\n ignoreScroll = false;\n const getKey = router.options.getScrollRestorationKey || defaultGetScrollRestorationKey;\n window.history.scrollRestoration = \"manual\";\n const onScroll = (event) => {\n if (ignoreScroll || !router.isScrollRestoring) {\n return;\n }\n let elementSelector = \"\";\n if (event.target === document || event.target === window) {\n elementSelector = \"window\";\n } else {\n const attrId = event.target.getAttribute(\n \"data-scroll-restoration-id\"\n );\n if (attrId) {\n elementSelector = `[data-scroll-restoration-id=\"${attrId}\"]`;\n } else {\n elementSelector = getCssSelector(event.target);\n }\n }\n const restoreKey = getKey(router.state.location);\n scrollRestorationCache.set((state) => {\n const keyEntry = state[restoreKey] ||= {};\n const elementEntry = keyEntry[elementSelector] ||= {};\n if (elementSelector === \"window\") {\n elementEntry.scrollX = window.scrollX || 0;\n elementEntry.scrollY = window.scrollY || 0;\n } else if (elementSelector) {\n const element = document.querySelector(elementSelector);\n if (element) {\n elementEntry.scrollX = element.scrollLeft || 0;\n elementEntry.scrollY = element.scrollTop || 0;\n }\n }\n return state;\n });\n };\n if (typeof document !== \"undefined\") {\n document.addEventListener(\"scroll\", throttle(onScroll, 100), true);\n }\n router.subscribe(\"onRendered\", (event) => {\n const cacheKey = getKey(event.toLocation);\n if (!router.resetNextScroll) {\n router.resetNextScroll = true;\n return;\n }\n if (typeof router.options.scrollRestoration === \"function\") {\n const shouldRestore = router.options.scrollRestoration({\n location: router.latestLocation\n });\n if (!shouldRestore) {\n return;\n }\n }\n restoreScroll({\n storageKey,\n key: cacheKey,\n behavior: router.options.scrollRestorationBehavior,\n shouldScrollRestoration: router.isScrollRestoring,\n scrollToTopSelectors: router.options.scrollToTopSelectors,\n location: router.history.location\n });\n if (router.isScrollRestoring) {\n scrollRestorationCache.set((state) => {\n state[cacheKey] ||= {};\n return state;\n });\n }\n });\n}\nfunction handleHashScroll(router) {\n if (typeof document !== \"undefined\" && document.querySelector) {\n const hashScrollIntoViewOptions = router.state.location.state.__hashScrollIntoViewOptions ?? true;\n if (hashScrollIntoViewOptions && router.state.location.hash !== \"\") {\n const el = document.getElementById(router.state.location.hash);\n if (el) {\n el.scrollIntoView(hashScrollIntoViewOptions);\n }\n }\n }\n}\nexport {\n defaultGetScrollRestorationKey,\n getCssSelector,\n handleHashScroll,\n restoreScroll,\n scrollRestorationCache,\n setupScrollRestoration,\n storageKey\n};\n//# sourceMappingURL=scroll-restoration.js.map\n","function encode(obj, stringify = String) {\n const result = new URLSearchParams();\n for (const key in obj) {\n const val = obj[key];\n if (val !== void 0) {\n result.set(key, stringify(val));\n }\n }\n return result.toString();\n}\nfunction toValue(str) {\n if (!str) return \"\";\n if (str === \"false\") return false;\n if (str === \"true\") return true;\n return +str * 0 === 0 && +str + \"\" === str ? +str : str;\n}\nfunction decode(str) {\n const searchParams = new URLSearchParams(str);\n const result = {};\n for (const [key, value] of searchParams.entries()) {\n const previousValue = result[key];\n if (previousValue == null) {\n result[key] = toValue(value);\n } else if (Array.isArray(previousValue)) {\n previousValue.push(toValue(value));\n } else {\n result[key] = [previousValue, toValue(value)];\n }\n }\n return result;\n}\nexport {\n decode,\n encode\n};\n//# sourceMappingURL=qss.js.map\n","import { decode, encode } from \"./qss.js\";\nconst defaultParseSearch = parseSearchWith(JSON.parse);\nconst defaultStringifySearch = stringifySearchWith(\n JSON.stringify,\n JSON.parse\n);\nfunction parseSearchWith(parser) {\n return (searchStr) => {\n if (searchStr[0] === \"?\") {\n searchStr = searchStr.substring(1);\n }\n const query = decode(searchStr);\n for (const key in query) {\n const value = query[key];\n if (typeof value === \"string\") {\n try {\n query[key] = parser(value);\n } catch (_err) {\n }\n }\n }\n return query;\n };\n}\nfunction stringifySearchWith(stringify, parser) {\n const hasParser = typeof parser === \"function\";\n function stringifyValue(val) {\n if (typeof val === \"object\" && val !== null) {\n try {\n return stringify(val);\n } catch (_err) {\n }\n } else if (hasParser && typeof val === \"string\") {\n try {\n parser(val);\n return stringify(val);\n } catch (_err) {\n }\n }\n return val;\n }\n return (search) => {\n const searchStr = encode(search, stringifyValue);\n return searchStr ? `?${searchStr}` : \"\";\n };\n}\nexport {\n defaultParseSearch,\n defaultStringifySearch,\n parseSearchWith,\n stringifySearchWith\n};\n//# sourceMappingURL=searchParams.js.map\n","const rootRouteId = \"__root__\";\nexport {\n rootRouteId\n};\n//# sourceMappingURL=root.js.map\n","function redirect(opts) {\n opts.statusCode = opts.statusCode || opts.code || 307;\n if (!opts.reloadDocument && typeof opts.href === \"string\") {\n try {\n new URL(opts.href);\n opts.reloadDocument = true;\n } catch {\n }\n }\n const headers = new Headers(opts.headers);\n if (opts.href && headers.get(\"Location\") === null) {\n headers.set(\"Location\", opts.href);\n }\n const response = new Response(null, {\n status: opts.statusCode,\n headers\n });\n response.options = opts;\n if (opts.throw) {\n throw response;\n }\n return response;\n}\nfunction isRedirect(obj) {\n return obj instanceof Response && !!obj.options;\n}\nfunction isResolvedRedirect(obj) {\n return isRedirect(obj) && !!obj.options.href;\n}\nfunction parseRedirect(obj) {\n if (obj !== null && typeof obj === \"object\" && obj.isSerializedRedirect) {\n return redirect(obj);\n }\n return void 0;\n}\nexport {\n isRedirect,\n isResolvedRedirect,\n parseRedirect,\n redirect\n};\n//# sourceMappingURL=redirect.js.map\n","import { batch } from \"@tanstack/store\";\nimport invariant from \"tiny-invariant\";\nimport { isPromise, createControlledPromise } from \"./utils.js\";\nimport { isNotFound } from \"./not-found.js\";\nimport { rootRouteId } from \"./root.js\";\nimport { isRedirect } from \"./redirect.js\";\nconst triggerOnReady = (inner) => {\n if (!inner.rendered) {\n inner.rendered = true;\n return inner.onReady?.();\n }\n};\nconst resolvePreload = (inner, matchId) => {\n return !!(inner.preload && !inner.router.state.matches.some((d) => d.id === matchId));\n};\nconst _handleNotFound = (inner, err) => {\n const routeCursor = inner.router.routesById[err.routeId ?? \"\"] ?? inner.router.routeTree;\n if (!routeCursor.options.notFoundComponent && inner.router.options?.defaultNotFoundComponent) {\n routeCursor.options.notFoundComponent = inner.router.options.defaultNotFoundComponent;\n }\n invariant(\n routeCursor.options.notFoundComponent,\n \"No notFoundComponent found. Please set a notFoundComponent on your route or provide a defaultNotFoundComponent to the router.\"\n );\n const matchForRoute = inner.matches.find((m) => m.routeId === routeCursor.id);\n invariant(matchForRoute, \"Could not find match for route: \" + routeCursor.id);\n inner.updateMatch(matchForRoute.id, (prev) => ({\n ...prev,\n status: \"notFound\",\n error: err,\n isFetching: false\n }));\n if (err.routerCode === \"BEFORE_LOAD\" && routeCursor.parentRoute) {\n err.routeId = routeCursor.parentRoute.id;\n _handleNotFound(inner, err);\n }\n};\nconst handleRedirectAndNotFound = (inner, match, err) => {\n if (!isRedirect(err) && !isNotFound(err)) return;\n if (isRedirect(err) && err.redirectHandled && !err.options.reloadDocument) {\n throw err;\n }\n if (match) {\n match._nonReactive.beforeLoadPromise?.resolve();\n match._nonReactive.loaderPromise?.resolve();\n match._nonReactive.beforeLoadPromise = void 0;\n match._nonReactive.loaderPromise = void 0;\n const status = isRedirect(err) ? \"redirected\" : \"notFound\";\n match._nonReactive.error = err;\n inner.updateMatch(match.id, (prev) => ({\n ...prev,\n status,\n isFetching: false,\n error: err\n }));\n if (isNotFound(err) && !err.routeId) {\n err.routeId = match.routeId;\n }\n match._nonReactive.loadPromise?.resolve();\n }\n if (isRedirect(err)) {\n inner.rendered = true;\n err.options._fromLocation = inner.location;\n err.redirectHandled = true;\n err = inner.router.resolveRedirect(err);\n throw err;\n } else {\n _handleNotFound(inner, err);\n throw err;\n }\n};\nconst shouldSkipLoader = (inner, matchId) => {\n const match = inner.router.getMatch(matchId);\n if (!inner.router.isServer && match._nonReactive.dehydrated) {\n return true;\n }\n if (inner.router.isServer && match.ssr === false) {\n return true;\n }\n return false;\n};\nconst handleSerialError = (inner, index, err, routerCode) => {\n const { id: matchId, routeId } = inner.matches[index];\n const route = inner.router.looseRoutesById[routeId];\n if (err instanceof Promise) {\n throw err;\n }\n err.routerCode = routerCode;\n inner.firstBadMatchIndex ??= index;\n handleRedirectAndNotFound(inner, inner.router.getMatch(matchId), err);\n try {\n route.options.onError?.(err);\n } catch (errorHandlerErr) {\n err = errorHandlerErr;\n handleRedirectAndNotFound(inner, inner.router.getMatch(matchId), err);\n }\n inner.updateMatch(matchId, (prev) => {\n prev._nonReactive.beforeLoadPromise?.resolve();\n prev._nonReactive.beforeLoadPromise = void 0;\n prev._nonReactive.loadPromise?.resolve();\n return {\n ...prev,\n error: err,\n status: \"error\",\n isFetching: false,\n updatedAt: Date.now(),\n abortController: new AbortController()\n };\n });\n};\nconst isBeforeLoadSsr = (inner, matchId, index, route) => {\n const existingMatch = inner.router.getMatch(matchId);\n const parentMatchId = inner.matches[index - 1]?.id;\n const parentMatch = parentMatchId ? inner.router.getMatch(parentMatchId) : void 0;\n if (inner.router.isShell()) {\n existingMatch.ssr = route.id === rootRouteId;\n return;\n }\n if (parentMatch?.ssr === false) {\n existingMatch.ssr = false;\n return;\n }\n const parentOverride = (tempSsr2) => {\n if (tempSsr2 === true && parentMatch?.ssr === \"data-only\") {\n return \"data-only\";\n }\n return tempSsr2;\n };\n const defaultSsr = inner.router.options.defaultSsr ?? true;\n if (route.options.ssr === void 0) {\n existingMatch.ssr = parentOverride(defaultSsr);\n return;\n }\n if (typeof route.options.ssr !== \"function\") {\n existingMatch.ssr = parentOverride(route.options.ssr);\n return;\n }\n const { search, params } = existingMatch;\n const ssrFnContext = {\n search: makeMaybe(search, existingMatch.searchError),\n params: makeMaybe(params, existingMatch.paramsError),\n location: inner.location,\n matches: inner.matches.map((match) => ({\n index: match.index,\n pathname: match.pathname,\n fullPath: match.fullPath,\n staticData: match.staticData,\n id: match.id,\n routeId: match.routeId,\n search: makeMaybe(match.search, match.searchError),\n params: makeMaybe(match.params, match.paramsError),\n ssr: match.ssr\n }))\n };\n const tempSsr = route.options.ssr(ssrFnContext);\n if (isPromise(tempSsr)) {\n return tempSsr.then((ssr) => {\n existingMatch.ssr = parentOverride(ssr ?? defaultSsr);\n });\n }\n existingMatch.ssr = parentOverride(tempSsr ?? defaultSsr);\n return;\n};\nconst setupPendingTimeout = (inner, matchId, route, match) => {\n if (match._nonReactive.pendingTimeout !== void 0) return;\n const pendingMs = route.options.pendingMs ?? inner.router.options.defaultPendingMs;\n const shouldPending = !!(inner.onReady && !inner.router.isServer && !resolvePreload(inner, matchId) && (route.options.loader || route.options.beforeLoad || routeNeedsPreload(route)) && typeof pendingMs === \"number\" && pendingMs !== Infinity && (route.options.pendingComponent ?? inner.router.options?.defaultPendingComponent));\n if (shouldPending) {\n const pendingTimeout = setTimeout(() => {\n triggerOnReady(inner);\n }, pendingMs);\n match._nonReactive.pendingTimeout = pendingTimeout;\n }\n};\nconst preBeforeLoadSetup = (inner, matchId, route) => {\n const existingMatch = inner.router.getMatch(matchId);\n if (!existingMatch._nonReactive.beforeLoadPromise && !existingMatch._nonReactive.loaderPromise)\n return;\n setupPendingTimeout(inner, matchId, route, existingMatch);\n const then = () => {\n const match = inner.router.getMatch(matchId);\n if (match.preload && (match.status === \"redirected\" || match.status === \"notFound\")) {\n handleRedirectAndNotFound(inner, match, match.error);\n }\n };\n return existingMatch._nonReactive.beforeLoadPromise ? existingMatch._nonReactive.beforeLoadPromise.then(then) : then();\n};\nconst executeBeforeLoad = (inner, matchId, index, route) => {\n const match = inner.router.getMatch(matchId);\n const prevLoadPromise = match._nonReactive.loadPromise;\n match._nonReactive.loadPromise = createControlledPromise(() => {\n prevLoadPromise?.resolve();\n });\n const { paramsError, searchError } = match;\n if (paramsError) {\n handleSerialError(inner, index, paramsError, \"PARSE_PARAMS\");\n }\n if (searchError) {\n handleSerialError(inner, index, searchError, \"VALIDATE_SEARCH\");\n }\n setupPendingTimeout(inner, matchId, route, match);\n const abortController = new AbortController();\n const parentMatchId = inner.matches[index - 1]?.id;\n const parentMatch = parentMatchId ? inner.router.getMatch(parentMatchId) : void 0;\n const parentMatchContext = parentMatch?.context ?? inner.router.options.context ?? void 0;\n const context = { ...parentMatchContext, ...match.__routeContext };\n let isPending = false;\n const pending = () => {\n if (isPending) return;\n isPending = true;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: \"beforeLoad\",\n fetchCount: prev.fetchCount + 1,\n abortController,\n context\n }));\n };\n const resolve = () => {\n match._nonReactive.beforeLoadPromise?.resolve();\n match._nonReactive.beforeLoadPromise = void 0;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: false\n }));\n };\n if (!route.options.beforeLoad) {\n batch(() => {\n pending();\n resolve();\n });\n return;\n }\n match._nonReactive.beforeLoadPromise = createControlledPromise();\n const { search, params, cause } = match;\n const preload = resolvePreload(inner, matchId);\n const beforeLoadFnContext = {\n search,\n abortController,\n params,\n preload,\n context,\n location: inner.location,\n navigate: (opts) => inner.router.navigate({\n ...opts,\n _fromLocation: inner.location\n }),\n buildLocation: inner.router.buildLocation,\n cause: preload ? \"preload\" : cause,\n matches: inner.matches,\n ...inner.router.options.additionalContext\n };\n const updateContext = (beforeLoadContext2) => {\n if (beforeLoadContext2 === void 0) {\n batch(() => {\n pending();\n resolve();\n });\n return;\n }\n if (isRedirect(beforeLoadContext2) || isNotFound(beforeLoadContext2)) {\n pending();\n handleSerialError(inner, index, beforeLoadContext2, \"BEFORE_LOAD\");\n }\n batch(() => {\n pending();\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n __beforeLoadContext: beforeLoadContext2,\n context: {\n ...prev.context,\n ...beforeLoadContext2\n }\n }));\n resolve();\n });\n };\n let beforeLoadContext;\n try {\n beforeLoadContext = route.options.beforeLoad(beforeLoadFnContext);\n if (isPromise(beforeLoadContext)) {\n pending();\n return beforeLoadContext.catch((err) => {\n handleSerialError(inner, index, err, \"BEFORE_LOAD\");\n }).then(updateContext);\n }\n } catch (err) {\n pending();\n handleSerialError(inner, index, err, \"BEFORE_LOAD\");\n }\n updateContext(beforeLoadContext);\n return;\n};\nconst handleBeforeLoad = (inner, index) => {\n const { id: matchId, routeId } = inner.matches[index];\n const route = inner.router.looseRoutesById[routeId];\n const serverSsr = () => {\n if (inner.router.isServer) {\n const maybePromise = isBeforeLoadSsr(inner, matchId, index, route);\n if (isPromise(maybePromise)) return maybePromise.then(queueExecution);\n }\n return queueExecution();\n };\n const execute = () => executeBeforeLoad(inner, matchId, index, route);\n const queueExecution = () => {\n if (shouldSkipLoader(inner, matchId)) return;\n const result = preBeforeLoadSetup(inner, matchId, route);\n return isPromise(result) ? result.then(execute) : execute();\n };\n return serverSsr();\n};\nconst executeHead = (inner, matchId, route) => {\n const match = inner.router.getMatch(matchId);\n if (!match) {\n return;\n }\n if (!route.options.head && !route.options.scripts && !route.options.headers) {\n return;\n }\n const assetContext = {\n matches: inner.matches,\n match,\n params: match.params,\n loaderData: match.loaderData\n };\n return Promise.all([\n route.options.head?.(assetContext),\n route.options.scripts?.(assetContext),\n route.options.headers?.(assetContext)\n ]).then(([headFnContent, scripts, headers]) => {\n const meta = headFnContent?.meta;\n const links = headFnContent?.links;\n const headScripts = headFnContent?.scripts;\n const styles = headFnContent?.styles;\n return {\n meta,\n links,\n headScripts,\n headers,\n scripts,\n styles\n };\n });\n};\nconst getLoaderContext = (inner, matchId, index, route) => {\n const parentMatchPromise = inner.matchPromises[index - 1];\n const { params, loaderDeps, abortController, cause } = inner.router.getMatch(matchId);\n let context = inner.router.options.context ?? {};\n for (let i = 0; i <= index; i++) {\n const innerMatch = inner.matches[i];\n if (!innerMatch) continue;\n const m = inner.router.getMatch(innerMatch.id);\n if (!m) continue;\n context = {\n ...context,\n ...m.__routeContext ?? {},\n ...m.__beforeLoadContext ?? {}\n };\n }\n const preload = resolvePreload(inner, matchId);\n return {\n params,\n deps: loaderDeps,\n preload: !!preload,\n parentMatchPromise,\n abortController,\n context,\n location: inner.location,\n navigate: (opts) => inner.router.navigate({\n ...opts,\n _fromLocation: inner.location\n }),\n cause: preload ? \"preload\" : cause,\n route,\n ...inner.router.options.additionalContext\n };\n};\nconst runLoader = async (inner, matchId, index, route) => {\n try {\n const match = inner.router.getMatch(matchId);\n try {\n if (!inner.router.isServer || match.ssr === true) {\n loadRouteChunk(route);\n }\n const loaderResult = route.options.loader?.(\n getLoaderContext(inner, matchId, index, route)\n );\n const loaderResultIsPromise = route.options.loader && isPromise(loaderResult);\n const willLoadSomething = !!(loaderResultIsPromise || route._lazyPromise || route._componentsPromise || route.options.head || route.options.scripts || route.options.headers || match._nonReactive.minPendingPromise);\n if (willLoadSomething) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: \"loader\"\n }));\n }\n if (route.options.loader) {\n const loaderData = loaderResultIsPromise ? await loaderResult : loaderResult;\n handleRedirectAndNotFound(\n inner,\n inner.router.getMatch(matchId),\n loaderData\n );\n if (loaderData !== void 0) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n loaderData\n }));\n }\n }\n if (route._lazyPromise) await route._lazyPromise;\n const headResult = executeHead(inner, matchId, route);\n const head = headResult ? await headResult : void 0;\n const pendingPromise = match._nonReactive.minPendingPromise;\n if (pendingPromise) await pendingPromise;\n if (route._componentsPromise) await route._componentsPromise;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n error: void 0,\n status: \"success\",\n isFetching: false,\n updatedAt: Date.now(),\n ...head\n }));\n } catch (e) {\n let error = e;\n const pendingPromise = match._nonReactive.minPendingPromise;\n if (pendingPromise) await pendingPromise;\n if (isNotFound(e)) {\n await route.options.notFoundComponent?.preload?.();\n }\n handleRedirectAndNotFound(inner, inner.router.getMatch(matchId), e);\n try {\n route.options.onError?.(e);\n } catch (onErrorError) {\n error = onErrorError;\n handleRedirectAndNotFound(\n inner,\n inner.router.getMatch(matchId),\n onErrorError\n );\n }\n const headResult = executeHead(inner, matchId, route);\n const head = headResult ? await headResult : void 0;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n error,\n status: \"error\",\n isFetching: false,\n ...head\n }));\n }\n } catch (err) {\n const match = inner.router.getMatch(matchId);\n if (match) {\n const headResult = executeHead(inner, matchId, route);\n if (headResult) {\n const head = await headResult;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n ...head\n }));\n }\n match._nonReactive.loaderPromise = void 0;\n }\n handleRedirectAndNotFound(inner, match, err);\n }\n};\nconst loadRouteMatch = async (inner, index) => {\n const { id: matchId, routeId } = inner.matches[index];\n let loaderShouldRunAsync = false;\n let loaderIsRunningAsync = false;\n const route = inner.router.looseRoutesById[routeId];\n if (shouldSkipLoader(inner, matchId)) {\n if (inner.router.isServer) {\n const headResult = executeHead(inner, matchId, route);\n if (headResult) {\n const head = await headResult;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n ...head\n }));\n }\n return inner.router.getMatch(matchId);\n }\n } else {\n const prevMatch = inner.router.getMatch(matchId);\n if (prevMatch._nonReactive.loaderPromise) {\n if (prevMatch.status === \"success\" && !inner.sync && !prevMatch.preload) {\n return prevMatch;\n }\n await prevMatch._nonReactive.loaderPromise;\n const match2 = inner.router.getMatch(matchId);\n const error = match2._nonReactive.error || match2.error;\n if (error) {\n handleRedirectAndNotFound(inner, match2, error);\n }\n } else {\n const age = Date.now() - prevMatch.updatedAt;\n const preload = resolvePreload(inner, matchId);\n const staleAge = preload ? route.options.preloadStaleTime ?? inner.router.options.defaultPreloadStaleTime ?? 3e4 : route.options.staleTime ?? inner.router.options.defaultStaleTime ?? 0;\n const shouldReloadOption = route.options.shouldReload;\n const shouldReload = typeof shouldReloadOption === \"function\" ? shouldReloadOption(getLoaderContext(inner, matchId, index, route)) : shouldReloadOption;\n const nextPreload = !!preload && !inner.router.state.matches.some((d) => d.id === matchId);\n const match2 = inner.router.getMatch(matchId);\n match2._nonReactive.loaderPromise = createControlledPromise();\n if (nextPreload !== match2.preload) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n preload: nextPreload\n }));\n }\n const { status, invalid } = match2;\n loaderShouldRunAsync = status === \"success\" && (invalid || (shouldReload ?? age > staleAge));\n if (preload && route.options.preload === false) ;\n else if (loaderShouldRunAsync && !inner.sync) {\n loaderIsRunningAsync = true;\n (async () => {\n try {\n await runLoader(inner, matchId, index, route);\n const match3 = inner.router.getMatch(matchId);\n match3._nonReactive.loaderPromise?.resolve();\n match3._nonReactive.loadPromise?.resolve();\n match3._nonReactive.loaderPromise = void 0;\n } catch (err) {\n if (isRedirect(err)) {\n await inner.router.navigate(err.options);\n }\n }\n })();\n } else if (status !== \"success\" || loaderShouldRunAsync && inner.sync) {\n await runLoader(inner, matchId, index, route);\n } else {\n const headResult = executeHead(inner, matchId, route);\n if (headResult) {\n const head = await headResult;\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n ...head\n }));\n }\n }\n }\n }\n const match = inner.router.getMatch(matchId);\n if (!loaderIsRunningAsync) {\n match._nonReactive.loaderPromise?.resolve();\n match._nonReactive.loadPromise?.resolve();\n }\n clearTimeout(match._nonReactive.pendingTimeout);\n match._nonReactive.pendingTimeout = void 0;\n if (!loaderIsRunningAsync) match._nonReactive.loaderPromise = void 0;\n match._nonReactive.dehydrated = void 0;\n const nextIsFetching = loaderIsRunningAsync ? match.isFetching : false;\n if (nextIsFetching !== match.isFetching || match.invalid !== false) {\n inner.updateMatch(matchId, (prev) => ({\n ...prev,\n isFetching: nextIsFetching,\n invalid: false\n }));\n return inner.router.getMatch(matchId);\n } else {\n return match;\n }\n};\nasync function loadMatches(arg) {\n const inner = Object.assign(arg, {\n matchPromises: []\n });\n if (!inner.router.isServer && inner.router.state.matches.some((d) => d._forcePending)) {\n triggerOnReady(inner);\n }\n try {\n for (let i = 0; i < inner.matches.length; i++) {\n const beforeLoad = handleBeforeLoad(inner, i);\n if (isPromise(beforeLoad)) await beforeLoad;\n }\n const max = inner.firstBadMatchIndex ?? inner.matches.length;\n for (let i = 0; i < max; i++) {\n inner.matchPromises.push(loadRouteMatch(inner, i));\n }\n await Promise.all(inner.matchPromises);\n const readyPromise = triggerOnReady(inner);\n if (isPromise(readyPromise)) await readyPromise;\n } catch (err) {\n if (isNotFound(err) && !inner.preload) {\n const readyPromise = triggerOnReady(inner);\n if (isPromise(readyPromise)) await readyPromise;\n throw err;\n }\n if (isRedirect(err)) {\n throw err;\n }\n }\n return inner.matches;\n}\nasync function loadRouteChunk(route) {\n if (!route._lazyLoaded && route._lazyPromise === void 0) {\n if (route.lazyFn) {\n route._lazyPromise = route.lazyFn().then((lazyRoute) => {\n const { id: _id, ...options } = lazyRoute.options;\n Object.assign(route.options, options);\n route._lazyLoaded = true;\n route._lazyPromise = void 0;\n });\n } else {\n route._lazyLoaded = true;\n }\n }\n if (!route._componentsLoaded && route._componentsPromise === void 0) {\n const loadComponents = () => {\n const preloads = [];\n for (const type of componentTypes) {\n const preload = route.options[type]?.preload;\n if (preload) preloads.push(preload());\n }\n if (preloads.length)\n return Promise.all(preloads).then(() => {\n route._componentsLoaded = true;\n route._componentsPromise = void 0;\n });\n route._componentsLoaded = true;\n route._componentsPromise = void 0;\n return;\n };\n route._componentsPromise = route._lazyPromise ? route._lazyPromise.then(loadComponents) : loadComponents();\n }\n return route._componentsPromise;\n}\nfunction makeMaybe(value, error) {\n if (error) {\n return { status: \"error\", error };\n }\n return { status: \"success\", value };\n}\nfunction routeNeedsPreload(route) {\n for (const componentType of componentTypes) {\n if (route.options[componentType]?.preload) {\n return true;\n }\n }\n return false;\n}\nconst componentTypes = [\n \"component\",\n \"errorComponent\",\n \"pendingComponent\",\n \"notFoundComponent\"\n];\nexport {\n componentTypes,\n loadMatches,\n loadRouteChunk,\n routeNeedsPreload\n};\n//# sourceMappingURL=load-matches.js.map\n","import { trimPath, joinPaths } from \"./path.js\";\nfunction composeRewrites(rewrites) {\n return {\n input: ({ url }) => {\n for (const rewrite of rewrites) {\n url = executeRewriteInput(rewrite, url);\n }\n return url;\n },\n output: ({ url }) => {\n for (let i = rewrites.length - 1; i >= 0; i--) {\n url = executeRewriteOutput(rewrites[i], url);\n }\n return url;\n }\n };\n}\nfunction rewriteBasepath(opts) {\n const trimmedBasepath = trimPath(opts.basepath);\n const normalizedBasepath = `/${trimmedBasepath}`;\n const normalizedBasepathWithSlash = `${normalizedBasepath}/`;\n const checkBasepath = opts.caseSensitive ? normalizedBasepath : normalizedBasepath.toLowerCase();\n const checkBasepathWithSlash = opts.caseSensitive ? normalizedBasepathWithSlash : normalizedBasepathWithSlash.toLowerCase();\n return {\n input: ({ url }) => {\n const pathname = opts.caseSensitive ? url.pathname : url.pathname.toLowerCase();\n if (pathname === checkBasepath) {\n url.pathname = \"/\";\n } else if (pathname.startsWith(checkBasepathWithSlash)) {\n url.pathname = url.pathname.slice(normalizedBasepath.length);\n }\n return url;\n },\n output: ({ url }) => {\n url.pathname = joinPaths([\"/\", trimmedBasepath, url.pathname]);\n return url;\n }\n };\n}\nfunction executeRewriteInput(rewrite, url) {\n const res = rewrite?.input?.({ url });\n if (res) {\n if (typeof res === \"string\") {\n return new URL(res);\n } else if (res instanceof URL) {\n return res;\n }\n }\n return url;\n}\nfunction executeRewriteOutput(rewrite, url) {\n const res = rewrite?.output?.({ url });\n if (res) {\n if (typeof res === \"string\") {\n return new URL(res);\n } else if (res instanceof URL) {\n return res;\n }\n }\n return url;\n}\nexport {\n composeRewrites,\n executeRewriteInput,\n executeRewriteOutput,\n rewriteBasepath\n};\n//# sourceMappingURL=rewrite.js.map\n","import { Store, batch } from \"@tanstack/store\";\nimport { createBrowserHistory, parseHref } from \"@tanstack/history\";\nimport { createControlledPromise, deepEqual, replaceEqualDeep, decodePath, last, findLast, functionalUpdate } from \"./utils.js\";\nimport { processRouteTree, processRouteMasks, findSingleMatch, findRouteMatch, findFlatMatch } from \"./new-process-route-tree.js\";\nimport { trimPath, resolvePath, cleanPath, trimPathRight, interpolatePath } from \"./path.js\";\nimport { createLRUCache } from \"./lru-cache.js\";\nimport { isNotFound } from \"./not-found.js\";\nimport { setupScrollRestoration } from \"./scroll-restoration.js\";\nimport { defaultParseSearch, defaultStringifySearch } from \"./searchParams.js\";\nimport { rootRouteId } from \"./root.js\";\nimport { redirect, isRedirect } from \"./redirect.js\";\nimport { loadMatches, loadRouteChunk, routeNeedsPreload } from \"./load-matches.js\";\nimport { rewriteBasepath, composeRewrites, executeRewriteInput, executeRewriteOutput } from \"./rewrite.js\";\nfunction defaultSerializeError(err) {\n if (err instanceof Error) {\n const obj = {\n name: err.name,\n message: err.message\n };\n if (process.env.NODE_ENV === \"development\") {\n obj.stack = err.stack;\n }\n return obj;\n }\n return {\n data: err\n };\n}\nconst trailingSlashOptions = {\n always: \"always\",\n never: \"never\",\n preserve: \"preserve\"\n};\nfunction getLocationChangeInfo(routerState) {\n const fromLocation = routerState.resolvedLocation;\n const toLocation = routerState.location;\n const pathChanged = fromLocation?.pathname !== toLocation.pathname;\n const hrefChanged = fromLocation?.href !== toLocation.href;\n const hashChanged = fromLocation?.hash !== toLocation.hash;\n return { fromLocation, toLocation, pathChanged, hrefChanged, hashChanged };\n}\nclass RouterCore {\n /**\n * @deprecated Use the `createRouter` function instead\n */\n constructor(options) {\n this.tempLocationKey = `${Math.round(\n Math.random() * 1e7\n )}`;\n this.resetNextScroll = true;\n this.shouldViewTransition = void 0;\n this.isViewTransitionTypesSupported = void 0;\n this.subscribers = /* @__PURE__ */ new Set();\n this.isScrollRestoring = false;\n this.isScrollRestorationSetup = false;\n this.startTransition = (fn) => fn();\n this.update = (newOptions) => {\n if (newOptions.notFoundRoute) {\n console.warn(\n \"The notFoundRoute API is deprecated and will be removed in the next major version. See https://tanstack.com/router/v1/docs/framework/react/guide/not-found-errors#migrating-from-notfoundroute for more info.\"\n );\n }\n const prevOptions = this.options;\n const prevBasepath = this.basepath ?? prevOptions?.basepath ?? \"/\";\n const basepathWasUnset = this.basepath === void 0;\n const prevRewriteOption = prevOptions?.rewrite;\n this.options = {\n ...prevOptions,\n ...newOptions\n };\n this.isServer = this.options.isServer ?? typeof document === \"undefined\";\n this.pathParamsDecodeCharMap = this.options.pathParamsAllowedCharacters ? new Map(\n this.options.pathParamsAllowedCharacters.map((char) => [\n encodeURIComponent(char),\n char\n ])\n ) : void 0;\n if (!this.history || this.options.history && this.options.history !== this.history) {\n if (!this.options.history) {\n if (!this.isServer) {\n this.history = createBrowserHistory();\n }\n } else {\n this.history = this.options.history;\n }\n }\n this.origin = this.options.origin;\n if (!this.origin) {\n if (!this.isServer && window?.origin && window.origin !== \"null\") {\n this.origin = window.origin;\n } else {\n this.origin = \"http://localhost\";\n }\n }\n if (this.history) {\n this.updateLatestLocation();\n }\n if (this.options.routeTree !== this.routeTree) {\n this.routeTree = this.options.routeTree;\n this.buildRouteTree();\n }\n if (!this.__store && this.latestLocation) {\n this.__store = new Store(getInitialRouterState(this.latestLocation), {\n onUpdate: () => {\n this.__store.state = {\n ...this.state,\n cachedMatches: this.state.cachedMatches.filter(\n (d) => ![\"redirected\"].includes(d.status)\n )\n };\n }\n });\n setupScrollRestoration(this);\n }\n let needsLocationUpdate = false;\n const nextBasepath = this.options.basepath ?? \"/\";\n const nextRewriteOption = this.options.rewrite;\n const basepathChanged = basepathWasUnset || prevBasepath !== nextBasepath;\n const rewriteChanged = prevRewriteOption !== nextRewriteOption;\n if (basepathChanged || rewriteChanged) {\n this.basepath = nextBasepath;\n const rewrites = [];\n if (trimPath(nextBasepath) !== \"\") {\n rewrites.push(\n rewriteBasepath({\n basepath: nextBasepath\n })\n );\n }\n if (nextRewriteOption) {\n rewrites.push(nextRewriteOption);\n }\n this.rewrite = rewrites.length === 0 ? void 0 : rewrites.length === 1 ? rewrites[0] : composeRewrites(rewrites);\n if (this.history) {\n this.updateLatestLocation();\n }\n needsLocationUpdate = true;\n }\n if (needsLocationUpdate && this.__store) {\n this.__store.state = {\n ...this.state,\n location: this.latestLocation\n };\n }\n if (typeof window !== \"undefined\" && \"CSS\" in window && typeof window.CSS?.supports === \"function\") {\n this.isViewTransitionTypesSupported = window.CSS.supports(\n \"selector(:active-view-transition-type(a)\"\n );\n }\n };\n this.updateLatestLocation = () => {\n this.latestLocation = this.parseLocation(\n this.history.location,\n this.latestLocation\n );\n };\n this.buildRouteTree = () => {\n const { routesById, routesByPath, processedTree } = processRouteTree(\n this.routeTree,\n this.options.caseSensitive,\n (route, i) => {\n route.init({\n originalIndex: i\n });\n }\n );\n if (this.options.routeMasks) {\n processRouteMasks(this.options.routeMasks, processedTree);\n }\n this.routesById = routesById;\n this.routesByPath = routesByPath;\n this.processedTree = processedTree;\n const notFoundRoute = this.options.notFoundRoute;\n if (notFoundRoute) {\n notFoundRoute.init({\n originalIndex: 99999999999\n });\n this.routesById[notFoundRoute.id] = notFoundRoute;\n }\n };\n this.subscribe = (eventType, fn) => {\n const listener = {\n eventType,\n fn\n };\n this.subscribers.add(listener);\n return () => {\n this.subscribers.delete(listener);\n };\n };\n this.emit = (routerEvent) => {\n this.subscribers.forEach((listener) => {\n if (listener.eventType === routerEvent.type) {\n listener.fn(routerEvent);\n }\n });\n };\n this.parseLocation = (locationToParse, previousLocation) => {\n const parse = ({\n href,\n state\n }) => {\n const fullUrl = new URL(href, this.origin);\n const url = executeRewriteInput(this.rewrite, fullUrl);\n const parsedSearch = this.options.parseSearch(url.search);\n const searchStr = this.options.stringifySearch(parsedSearch);\n url.search = searchStr;\n const fullPath = url.href.replace(url.origin, \"\");\n const { pathname, hash } = url;\n return {\n href: fullPath,\n publicHref: href,\n url: url.href,\n pathname: decodePath(pathname),\n searchStr,\n search: replaceEqualDeep(previousLocation?.search, parsedSearch),\n hash: hash.split(\"#\").reverse()[0] ?? \"\",\n state: replaceEqualDeep(previousLocation?.state, state)\n };\n };\n const location = parse(locationToParse);\n const { __tempLocation, __tempKey } = location.state;\n if (__tempLocation && (!__tempKey || __tempKey === this.tempLocationKey)) {\n const parsedTempLocation = parse(__tempLocation);\n parsedTempLocation.state.key = location.state.key;\n parsedTempLocation.state.__TSR_key = location.state.__TSR_key;\n delete parsedTempLocation.state.__tempLocation;\n return {\n ...parsedTempLocation,\n maskedLocation: location\n };\n }\n return location;\n };\n this.resolvePathCache = createLRUCache(1e3);\n this.resolvePathWithBase = (from, path) => {\n const resolvedPath = resolvePath({\n base: from,\n to: cleanPath(path),\n trailingSlash: this.options.trailingSlash,\n cache: this.resolvePathCache\n });\n return resolvedPath;\n };\n this.matchRoutes = (pathnameOrNext, locationSearchOrOpts, opts) => {\n if (typeof pathnameOrNext === \"string\") {\n return this.matchRoutesInternal(\n {\n pathname: pathnameOrNext,\n search: locationSearchOrOpts\n },\n opts\n );\n }\n return this.matchRoutesInternal(pathnameOrNext, locationSearchOrOpts);\n };\n this.getMatchedRoutes = (pathname) => {\n return getMatchedRoutes({\n pathname,\n routesById: this.routesById,\n processedTree: this.processedTree\n });\n };\n this.cancelMatch = (id) => {\n const match = this.getMatch(id);\n if (!match) return;\n match.abortController.abort();\n clearTimeout(match._nonReactive.pendingTimeout);\n match._nonReactive.pendingTimeout = void 0;\n };\n this.cancelMatches = () => {\n const currentPendingMatches = this.state.matches.filter(\n (match) => match.status === \"pending\"\n );\n const currentLoadingMatches = this.state.matches.filter(\n (match) => match.isFetching === \"loader\"\n );\n const matchesToCancelArray = /* @__PURE__ */ new Set([\n ...this.state.pendingMatches ?? [],\n ...currentPendingMatches,\n ...currentLoadingMatches\n ]);\n matchesToCancelArray.forEach((match) => {\n this.cancelMatch(match.id);\n });\n };\n this.buildLocation = (opts) => {\n const build = (dest = {}) => {\n const currentLocation = dest._fromLocation || this.pendingBuiltLocation || this.latestLocation;\n const allCurrentLocationMatches = this.matchRoutes(currentLocation, {\n _buildLocation: true\n });\n const lastMatch = last(allCurrentLocationMatches);\n if (dest.from && process.env.NODE_ENV !== \"production\" && dest._isNavigate) {\n const allFromMatches = this.getMatchedRoutes(dest.from).matchedRoutes;\n const matchedFrom = findLast(allCurrentLocationMatches, (d) => {\n return comparePaths(d.fullPath, dest.from);\n });\n const matchedCurrent = findLast(allFromMatches, (d) => {\n return comparePaths(d.fullPath, lastMatch.fullPath);\n });\n if (!matchedFrom && !matchedCurrent) {\n console.warn(`Could not find match for from: ${dest.from}`);\n }\n }\n const defaultedFromPath = dest.unsafeRelative === \"path\" ? currentLocation.pathname : dest.from ?? lastMatch.fullPath;\n const fromPath = this.resolvePathWithBase(defaultedFromPath, \".\");\n const fromSearch = lastMatch.search;\n const fromParams = { ...lastMatch.params };\n const nextTo = dest.to ? this.resolvePathWithBase(fromPath, `${dest.to}`) : this.resolvePathWithBase(fromPath, \".\");\n const nextParams = dest.params === false || dest.params === null ? {} : (dest.params ?? true) === true ? fromParams : Object.assign(\n fromParams,\n functionalUpdate(dest.params, fromParams)\n );\n const interpolatedNextTo = interpolatePath({\n path: nextTo,\n params: nextParams\n }).interpolatedPath;\n const destRoutes = this.matchRoutes(interpolatedNextTo, void 0, {\n _buildLocation: true\n }).map((d) => this.looseRoutesById[d.routeId]);\n if (Object.keys(nextParams).length > 0) {\n for (const route of destRoutes) {\n const fn = route.options.params?.stringify ?? route.options.stringifyParams;\n if (fn) {\n Object.assign(nextParams, fn(nextParams));\n }\n }\n }\n const nextPathname = opts.leaveParams ? (\n // Use the original template path for interpolation\n // This preserves the original parameter syntax including optional parameters\n nextTo\n ) : decodePath(\n interpolatePath({\n path: nextTo,\n params: nextParams,\n decodeCharMap: this.pathParamsDecodeCharMap\n }).interpolatedPath\n );\n let nextSearch = fromSearch;\n if (opts._includeValidateSearch && this.options.search?.strict) {\n const validatedSearch = {};\n destRoutes.forEach((route) => {\n if (route.options.validateSearch) {\n try {\n Object.assign(\n validatedSearch,\n validateSearch(route.options.validateSearch, {\n ...validatedSearch,\n ...nextSearch\n })\n );\n } catch {\n }\n }\n });\n nextSearch = validatedSearch;\n }\n nextSearch = applySearchMiddleware({\n search: nextSearch,\n dest,\n destRoutes,\n _includeValidateSearch: opts._includeValidateSearch\n });\n nextSearch = replaceEqualDeep(fromSearch, nextSearch);\n const searchStr = this.options.stringifySearch(nextSearch);\n const hash = dest.hash === true ? currentLocation.hash : dest.hash ? functionalUpdate(dest.hash, currentLocation.hash) : void 0;\n const hashStr = hash ? `#${hash}` : \"\";\n let nextState = dest.state === true ? currentLocation.state : dest.state ? functionalUpdate(dest.state, currentLocation.state) : {};\n nextState = replaceEqualDeep(currentLocation.state, nextState);\n const fullPath = `${nextPathname}${searchStr}${hashStr}`;\n const url = new URL(fullPath, this.origin);\n const rewrittenUrl = executeRewriteOutput(this.rewrite, url);\n return {\n publicHref: rewrittenUrl.pathname + rewrittenUrl.search + rewrittenUrl.hash,\n href: fullPath,\n url: rewrittenUrl.href,\n pathname: nextPathname,\n search: nextSearch,\n searchStr,\n state: nextState,\n hash: hash ?? \"\",\n unmaskOnReload: dest.unmaskOnReload\n };\n };\n const buildWithMatches = (dest = {}, maskedDest) => {\n const next = build(dest);\n let maskedNext = maskedDest ? build(maskedDest) : void 0;\n if (!maskedNext) {\n const params = {};\n if (this.options.routeMasks) {\n const match = findFlatMatch(\n next.pathname,\n this.processedTree\n );\n if (match) {\n Object.assign(params, match.params);\n const { from: _from, ...maskProps } = match.route;\n maskedDest = {\n from: opts.from,\n ...maskProps,\n params\n };\n maskedNext = build(maskedDest);\n }\n }\n }\n if (maskedNext) {\n next.maskedLocation = maskedNext;\n }\n return next;\n };\n if (opts.mask) {\n return buildWithMatches(opts, {\n from: opts.from,\n ...opts.mask\n });\n }\n return buildWithMatches(opts);\n };\n this.commitLocation = ({\n viewTransition,\n ignoreBlocker,\n ...next\n }) => {\n const isSameState = () => {\n const ignoredProps = [\n \"key\",\n // TODO: Remove in v2 - use __TSR_key instead\n \"__TSR_key\",\n \"__TSR_index\",\n \"__hashScrollIntoViewOptions\"\n ];\n ignoredProps.forEach((prop) => {\n next.state[prop] = this.latestLocation.state[prop];\n });\n const isEqual = deepEqual(next.state, this.latestLocation.state);\n ignoredProps.forEach((prop) => {\n delete next.state[prop];\n });\n return isEqual;\n };\n const isSameUrl = trimPathRight(this.latestLocation.href) === trimPathRight(next.href);\n const previousCommitPromise = this.commitLocationPromise;\n this.commitLocationPromise = createControlledPromise(() => {\n previousCommitPromise?.resolve();\n });\n if (isSameUrl && isSameState()) {\n this.load();\n } else {\n let { maskedLocation, hashScrollIntoView, ...nextHistory } = next;\n if (maskedLocation) {\n nextHistory = {\n ...maskedLocation,\n state: {\n ...maskedLocation.state,\n __tempKey: void 0,\n __tempLocation: {\n ...nextHistory,\n search: nextHistory.searchStr,\n state: {\n ...nextHistory.state,\n __tempKey: void 0,\n __tempLocation: void 0,\n __TSR_key: void 0,\n key: void 0\n // TODO: Remove in v2 - use __TSR_key instead\n }\n }\n }\n };\n if (nextHistory.unmaskOnReload ?? this.options.unmaskOnReload ?? false) {\n nextHistory.state.__tempKey = this.tempLocationKey;\n }\n }\n nextHistory.state.__hashScrollIntoViewOptions = hashScrollIntoView ?? this.options.defaultHashScrollIntoView ?? true;\n this.shouldViewTransition = viewTransition;\n this.history[next.replace ? \"replace\" : \"push\"](\n nextHistory.publicHref,\n nextHistory.state,\n { ignoreBlocker }\n );\n }\n this.resetNextScroll = next.resetScroll ?? true;\n if (!this.history.subscribers.size) {\n this.load();\n }\n return this.commitLocationPromise;\n };\n this.buildAndCommitLocation = ({\n replace,\n resetScroll,\n hashScrollIntoView,\n viewTransition,\n ignoreBlocker,\n href,\n ...rest\n } = {}) => {\n if (href) {\n const currentIndex = this.history.location.state.__TSR_index;\n const parsed = parseHref(href, {\n __TSR_index: replace ? currentIndex : currentIndex + 1\n });\n rest.to = parsed.pathname;\n rest.search = this.options.parseSearch(parsed.search);\n rest.hash = parsed.hash.slice(1);\n }\n const location = this.buildLocation({\n ...rest,\n _includeValidateSearch: true\n });\n this.pendingBuiltLocation = location;\n const commitPromise = this.commitLocation({\n ...location,\n viewTransition,\n replace,\n resetScroll,\n hashScrollIntoView,\n ignoreBlocker\n });\n Promise.resolve().then(() => {\n if (this.pendingBuiltLocation === location) {\n this.pendingBuiltLocation = void 0;\n }\n });\n return commitPromise;\n };\n this.navigate = async ({ to, reloadDocument, href, ...rest }) => {\n if (!reloadDocument && href) {\n try {\n new URL(`${href}`);\n reloadDocument = true;\n } catch {\n }\n }\n if (reloadDocument) {\n if (!href) {\n const location = this.buildLocation({ to, ...rest });\n href = location.url;\n }\n if (!rest.ignoreBlocker) {\n const historyWithBlockers = this.history;\n const blockers = historyWithBlockers.getBlockers?.() ?? [];\n for (const blocker of blockers) {\n if (blocker?.blockerFn) {\n const shouldBlock = await blocker.blockerFn({\n currentLocation: this.latestLocation,\n nextLocation: this.latestLocation,\n // External URLs don't have a next location in our router\n action: \"PUSH\"\n });\n if (shouldBlock) {\n return Promise.resolve();\n }\n }\n }\n }\n if (rest.replace) {\n window.location.replace(href);\n } else {\n window.location.href = href;\n }\n return Promise.resolve();\n }\n return this.buildAndCommitLocation({\n ...rest,\n href,\n to,\n _isNavigate: true\n });\n };\n this.beforeLoad = () => {\n this.cancelMatches();\n this.updateLatestLocation();\n if (this.isServer) {\n const nextLocation = this.buildLocation({\n to: this.latestLocation.pathname,\n search: true,\n params: true,\n hash: true,\n state: true,\n _includeValidateSearch: true\n });\n const normalizeUrl = (url) => {\n try {\n return encodeURI(decodeURI(url));\n } catch {\n return url;\n }\n };\n if (trimPath(normalizeUrl(this.latestLocation.href)) !== trimPath(normalizeUrl(nextLocation.href))) {\n let href = nextLocation.url;\n if (this.origin && href.startsWith(this.origin)) {\n href = href.replace(this.origin, \"\") || \"/\";\n }\n throw redirect({ href });\n }\n }\n const pendingMatches = this.matchRoutes(this.latestLocation);\n this.__store.setState((s) => ({\n ...s,\n status: \"pending\",\n statusCode: 200,\n isLoading: true,\n location: this.latestLocation,\n pendingMatches,\n // If a cached moved to pendingMatches, remove it from cachedMatches\n cachedMatches: s.cachedMatches.filter(\n (d) => !pendingMatches.some((e) => e.id === d.id)\n )\n }));\n };\n this.load = async (opts) => {\n let redirect2;\n let notFound;\n let loadPromise;\n loadPromise = new Promise((resolve) => {\n this.startTransition(async () => {\n try {\n this.beforeLoad();\n const next = this.latestLocation;\n const prevLocation = this.state.resolvedLocation;\n if (!this.state.redirect) {\n this.emit({\n type: \"onBeforeNavigate\",\n ...getLocationChangeInfo({\n resolvedLocation: prevLocation,\n location: next\n })\n });\n }\n this.emit({\n type: \"onBeforeLoad\",\n ...getLocationChangeInfo({\n resolvedLocation: prevLocation,\n location: next\n })\n });\n await loadMatches({\n router: this,\n sync: opts?.sync,\n matches: this.state.pendingMatches,\n location: next,\n updateMatch: this.updateMatch,\n // eslint-disable-next-line @typescript-eslint/require-await\n onReady: async () => {\n this.startTransition(() => {\n this.startViewTransition(async () => {\n let exitingMatches = [];\n let enteringMatches = [];\n let stayingMatches = [];\n batch(() => {\n this.__store.setState((s) => {\n const previousMatches = s.matches;\n const newMatches = s.pendingMatches || s.matches;\n exitingMatches = previousMatches.filter(\n (match) => !newMatches.some((d) => d.id === match.id)\n );\n enteringMatches = newMatches.filter(\n (match) => !previousMatches.some((d) => d.id === match.id)\n );\n stayingMatches = newMatches.filter(\n (match) => previousMatches.some((d) => d.id === match.id)\n );\n return {\n ...s,\n isLoading: false,\n loadedAt: Date.now(),\n matches: newMatches,\n pendingMatches: void 0,\n /**\n * When committing new matches, cache any exiting matches that are still usable.\n * Routes that resolved with `status: 'error'` or `status: 'notFound'` are\n * deliberately excluded from `cachedMatches` so that subsequent invalidations\n * or reloads re-run their loaders instead of reusing the failed/not-found data.\n */\n cachedMatches: [\n ...s.cachedMatches,\n ...exitingMatches.filter(\n (d) => d.status !== \"error\" && d.status !== \"notFound\"\n )\n ]\n };\n });\n this.clearExpiredCache();\n });\n [\n [exitingMatches, \"onLeave\"],\n [enteringMatches, \"onEnter\"],\n [stayingMatches, \"onStay\"]\n ].forEach(([matches, hook]) => {\n matches.forEach((match) => {\n this.looseRoutesById[match.routeId].options[hook]?.(\n match\n );\n });\n });\n });\n });\n }\n });\n } catch (err) {\n if (isRedirect(err)) {\n redirect2 = err;\n if (!this.isServer) {\n this.navigate({\n ...redirect2.options,\n replace: true,\n ignoreBlocker: true\n });\n }\n } else if (isNotFound(err)) {\n notFound = err;\n }\n this.__store.setState((s) => ({\n ...s,\n statusCode: redirect2 ? redirect2.status : notFound ? 404 : s.matches.some((d) => d.status === \"error\") ? 500 : 200,\n redirect: redirect2\n }));\n }\n if (this.latestLoadPromise === loadPromise) {\n this.commitLocationPromise?.resolve();\n this.latestLoadPromise = void 0;\n this.commitLocationPromise = void 0;\n }\n resolve();\n });\n });\n this.latestLoadPromise = loadPromise;\n await loadPromise;\n while (this.latestLoadPromise && loadPromise !== this.latestLoadPromise) {\n await this.latestLoadPromise;\n }\n let newStatusCode = void 0;\n if (this.hasNotFoundMatch()) {\n newStatusCode = 404;\n } else if (this.__store.state.matches.some((d) => d.status === \"error\")) {\n newStatusCode = 500;\n }\n if (newStatusCode !== void 0) {\n this.__store.setState((s) => ({\n ...s,\n statusCode: newStatusCode\n }));\n }\n };\n this.startViewTransition = (fn) => {\n const shouldViewTransition = this.shouldViewTransition ?? this.options.defaultViewTransition;\n delete this.shouldViewTransition;\n if (shouldViewTransition && typeof document !== \"undefined\" && \"startViewTransition\" in document && typeof document.startViewTransition === \"function\") {\n let startViewTransitionParams;\n if (typeof shouldViewTransition === \"object\" && this.isViewTransitionTypesSupported) {\n const next = this.latestLocation;\n const prevLocation = this.state.resolvedLocation;\n const resolvedViewTransitionTypes = typeof shouldViewTransition.types === \"function\" ? shouldViewTransition.types(\n getLocationChangeInfo({\n resolvedLocation: prevLocation,\n location: next\n })\n ) : shouldViewTransition.types;\n if (resolvedViewTransitionTypes === false) {\n fn();\n return;\n }\n startViewTransitionParams = {\n update: fn,\n types: resolvedViewTransitionTypes\n };\n } else {\n startViewTransitionParams = fn;\n }\n document.startViewTransition(startViewTransitionParams);\n } else {\n fn();\n }\n };\n this.updateMatch = (id, updater) => {\n this.startTransition(() => {\n const matchesKey = this.state.pendingMatches?.some((d) => d.id === id) ? \"pendingMatches\" : this.state.matches.some((d) => d.id === id) ? \"matches\" : this.state.cachedMatches.some((d) => d.id === id) ? \"cachedMatches\" : \"\";\n if (matchesKey) {\n this.__store.setState((s) => ({\n ...s,\n [matchesKey]: s[matchesKey]?.map(\n (d) => d.id === id ? updater(d) : d\n )\n }));\n }\n });\n };\n this.getMatch = (matchId) => {\n const findFn = (d) => d.id === matchId;\n return this.state.cachedMatches.find(findFn) ?? this.state.pendingMatches?.find(findFn) ?? this.state.matches.find(findFn);\n };\n this.invalidate = (opts) => {\n const invalidate = (d) => {\n if (opts?.filter?.(d) ?? true) {\n return {\n ...d,\n invalid: true,\n ...opts?.forcePending || d.status === \"error\" || d.status === \"notFound\" ? { status: \"pending\", error: void 0 } : void 0\n };\n }\n return d;\n };\n this.__store.setState((s) => ({\n ...s,\n matches: s.matches.map(invalidate),\n cachedMatches: s.cachedMatches.map(invalidate),\n pendingMatches: s.pendingMatches?.map(invalidate)\n }));\n this.shouldViewTransition = false;\n return this.load({ sync: opts?.sync });\n };\n this.resolveRedirect = (redirect2) => {\n if (!redirect2.options.href) {\n const location = this.buildLocation(redirect2.options);\n let href = location.url;\n if (this.origin && href.startsWith(this.origin)) {\n href = href.replace(this.origin, \"\") || \"/\";\n }\n redirect2.options.href = location.href;\n redirect2.headers.set(\"Location\", href);\n }\n if (!redirect2.headers.get(\"Location\")) {\n redirect2.headers.set(\"Location\", redirect2.options.href);\n }\n return redirect2;\n };\n this.clearCache = (opts) => {\n const filter = opts?.filter;\n if (filter !== void 0) {\n this.__store.setState((s) => {\n return {\n ...s,\n cachedMatches: s.cachedMatches.filter(\n (m) => !filter(m)\n )\n };\n });\n } else {\n this.__store.setState((s) => {\n return {\n ...s,\n cachedMatches: []\n };\n });\n }\n };\n this.clearExpiredCache = () => {\n const filter = (d) => {\n const route = this.looseRoutesById[d.routeId];\n if (!route.options.loader) {\n return true;\n }\n const gcTime = (d.preload ? route.options.preloadGcTime ?? this.options.defaultPreloadGcTime : route.options.gcTime ?? this.options.defaultGcTime) ?? 5 * 60 * 1e3;\n const isError = d.status === \"error\";\n if (isError) return true;\n const gcEligible = Date.now() - d.updatedAt >= gcTime;\n return gcEligible;\n };\n this.clearCache({ filter });\n };\n this.loadRouteChunk = loadRouteChunk;\n this.preloadRoute = async (opts) => {\n const next = this.buildLocation(opts);\n let matches = this.matchRoutes(next, {\n throwOnError: true,\n preload: true,\n dest: opts\n });\n const activeMatchIds = new Set(\n [...this.state.matches, ...this.state.pendingMatches ?? []].map(\n (d) => d.id\n )\n );\n const loadedMatchIds = /* @__PURE__ */ new Set([\n ...activeMatchIds,\n ...this.state.cachedMatches.map((d) => d.id)\n ]);\n batch(() => {\n matches.forEach((match) => {\n if (!loadedMatchIds.has(match.id)) {\n this.__store.setState((s) => ({\n ...s,\n cachedMatches: [...s.cachedMatches, match]\n }));\n }\n });\n });\n try {\n matches = await loadMatches({\n router: this,\n matches,\n location: next,\n preload: true,\n updateMatch: (id, updater) => {\n if (activeMatchIds.has(id)) {\n matches = matches.map((d) => d.id === id ? updater(d) : d);\n } else {\n this.updateMatch(id, updater);\n }\n }\n });\n return matches;\n } catch (err) {\n if (isRedirect(err)) {\n if (err.options.reloadDocument) {\n return void 0;\n }\n return await this.preloadRoute({\n ...err.options,\n _fromLocation: next\n });\n }\n if (!isNotFound(err)) {\n console.error(err);\n }\n return void 0;\n }\n };\n this.matchRoute = (location, opts) => {\n const matchLocation = {\n ...location,\n to: location.to ? this.resolvePathWithBase(\n location.from || \"\",\n location.to\n ) : void 0,\n params: location.params || {},\n leaveParams: true\n };\n const next = this.buildLocation(matchLocation);\n if (opts?.pending && this.state.status !== \"pending\") {\n return false;\n }\n const pending = opts?.pending === void 0 ? !this.state.isLoading : opts.pending;\n const baseLocation = pending ? this.latestLocation : this.state.resolvedLocation || this.state.location;\n const match = findSingleMatch(\n next.pathname,\n opts?.caseSensitive ?? false,\n opts?.fuzzy ?? false,\n baseLocation.pathname,\n this.processedTree\n );\n if (!match) {\n return false;\n }\n if (location.params) {\n if (!deepEqual(match.params, location.params, { partial: true })) {\n return false;\n }\n }\n if (opts?.includeSearch ?? true) {\n return deepEqual(baseLocation.search, next.search, { partial: true }) ? match.params : false;\n }\n return match.params;\n };\n this.hasNotFoundMatch = () => {\n return this.__store.state.matches.some(\n (d) => d.status === \"notFound\" || d.globalNotFound\n );\n };\n this.update({\n defaultPreloadDelay: 50,\n defaultPendingMs: 1e3,\n defaultPendingMinMs: 500,\n context: void 0,\n ...options,\n caseSensitive: options.caseSensitive ?? false,\n notFoundMode: options.notFoundMode ?? \"fuzzy\",\n stringifySearch: options.stringifySearch ?? defaultStringifySearch,\n parseSearch: options.parseSearch ?? defaultParseSearch\n });\n if (typeof document !== \"undefined\") {\n self.__TSR_ROUTER__ = this;\n }\n }\n isShell() {\n return !!this.options.isShell;\n }\n isPrerendering() {\n return !!this.options.isPrerendering;\n }\n get state() {\n return this.__store.state;\n }\n get looseRoutesById() {\n return this.routesById;\n }\n matchRoutesInternal(next, opts) {\n const matchedRoutesResult = this.getMatchedRoutes(next.pathname);\n const { foundRoute, routeParams } = matchedRoutesResult;\n let { matchedRoutes } = matchedRoutesResult;\n let isGlobalNotFound = false;\n if (\n // If we found a route, and it's not an index route and we have left over path\n foundRoute ? foundRoute.path !== \"/\" && routeParams[\"**\"] : (\n // Or if we didn't find a route and we have left over path\n trimPathRight(next.pathname)\n )\n ) {\n if (this.options.notFoundRoute) {\n matchedRoutes = [...matchedRoutes, this.options.notFoundRoute];\n } else {\n isGlobalNotFound = true;\n }\n }\n const globalNotFoundRouteId = (() => {\n if (!isGlobalNotFound) {\n return void 0;\n }\n if (this.options.notFoundMode !== \"root\") {\n for (let i = matchedRoutes.length - 1; i >= 0; i--) {\n const route = matchedRoutes[i];\n if (route.children) {\n return route.id;\n }\n }\n }\n return rootRouteId;\n })();\n const matches = [];\n const getParentContext = (parentMatch) => {\n const parentMatchId = parentMatch?.id;\n const parentContext = !parentMatchId ? this.options.context ?? void 0 : parentMatch.context ?? this.options.context ?? void 0;\n return parentContext;\n };\n matchedRoutes.forEach((route, index) => {\n const parentMatch = matches[index - 1];\n const [preMatchSearch, strictMatchSearch, searchError] = (() => {\n const parentSearch = parentMatch?.search ?? next.search;\n const parentStrictSearch = parentMatch?._strictSearch ?? void 0;\n try {\n const strictSearch = validateSearch(route.options.validateSearch, { ...parentSearch }) ?? void 0;\n return [\n {\n ...parentSearch,\n ...strictSearch\n },\n { ...parentStrictSearch, ...strictSearch },\n void 0\n ];\n } catch (err) {\n let searchParamError = err;\n if (!(err instanceof SearchParamError)) {\n searchParamError = new SearchParamError(err.message, {\n cause: err\n });\n }\n if (opts?.throwOnError) {\n throw searchParamError;\n }\n return [parentSearch, {}, searchParamError];\n }\n })();\n const loaderDeps = route.options.loaderDeps?.({\n search: preMatchSearch\n }) ?? \"\";\n const loaderDepsHash = loaderDeps ? JSON.stringify(loaderDeps) : \"\";\n const { interpolatedPath, usedParams } = interpolatePath({\n path: route.fullPath,\n params: routeParams,\n decodeCharMap: this.pathParamsDecodeCharMap\n });\n const matchId = (\n // route.id for disambiguation\n route.id + // interpolatedPath for param changes\n interpolatedPath + // explicit deps\n loaderDepsHash\n );\n const existingMatch = this.getMatch(matchId);\n const previousMatch = this.state.matches.find(\n (d) => d.routeId === route.id\n );\n const strictParams = existingMatch?._strictParams ?? usedParams;\n let paramsError = void 0;\n if (!existingMatch) {\n const strictParseParams = route.options.params?.parse ?? route.options.parseParams;\n if (strictParseParams) {\n try {\n Object.assign(\n strictParams,\n strictParseParams(strictParams)\n );\n } catch (err) {\n if (isNotFound(err) || isRedirect(err)) {\n paramsError = err;\n } else {\n paramsError = new PathParamError(err.message, {\n cause: err\n });\n }\n if (opts?.throwOnError) {\n throw paramsError;\n }\n }\n }\n }\n Object.assign(routeParams, strictParams);\n const cause = previousMatch ? \"stay\" : \"enter\";\n let match;\n if (existingMatch) {\n match = {\n ...existingMatch,\n cause,\n params: previousMatch ? replaceEqualDeep(previousMatch.params, routeParams) : routeParams,\n _strictParams: strictParams,\n search: previousMatch ? replaceEqualDeep(previousMatch.search, preMatchSearch) : replaceEqualDeep(existingMatch.search, preMatchSearch),\n _strictSearch: strictMatchSearch\n };\n } else {\n const status = route.options.loader || route.options.beforeLoad || route.lazyFn || routeNeedsPreload(route) ? \"pending\" : \"success\";\n match = {\n id: matchId,\n ssr: this.isServer ? void 0 : route.options.ssr,\n index,\n routeId: route.id,\n params: previousMatch ? replaceEqualDeep(previousMatch.params, routeParams) : routeParams,\n _strictParams: strictParams,\n pathname: interpolatedPath,\n updatedAt: Date.now(),\n search: previousMatch ? replaceEqualDeep(previousMatch.search, preMatchSearch) : preMatchSearch,\n _strictSearch: strictMatchSearch,\n searchError: void 0,\n status,\n isFetching: false,\n error: void 0,\n paramsError,\n __routeContext: void 0,\n _nonReactive: {\n loadPromise: createControlledPromise()\n },\n __beforeLoadContext: void 0,\n context: {},\n abortController: new AbortController(),\n fetchCount: 0,\n cause,\n loaderDeps: previousMatch ? replaceEqualDeep(previousMatch.loaderDeps, loaderDeps) : loaderDeps,\n invalid: false,\n preload: false,\n links: void 0,\n scripts: void 0,\n headScripts: void 0,\n meta: void 0,\n staticData: route.options.staticData || {},\n fullPath: route.fullPath\n };\n }\n if (!opts?.preload) {\n match.globalNotFound = globalNotFoundRouteId === route.id;\n }\n match.searchError = searchError;\n const parentContext = getParentContext(parentMatch);\n match.context = {\n ...parentContext,\n ...match.__routeContext,\n ...match.__beforeLoadContext\n };\n matches.push(match);\n });\n matches.forEach((match, index) => {\n const route = this.looseRoutesById[match.routeId];\n const existingMatch = this.getMatch(match.id);\n if (!existingMatch && opts?._buildLocation !== true) {\n const parentMatch = matches[index - 1];\n const parentContext = getParentContext(parentMatch);\n if (route.options.context) {\n const contextFnContext = {\n deps: match.loaderDeps,\n params: match.params,\n context: parentContext ?? {},\n location: next,\n navigate: (opts2) => this.navigate({ ...opts2, _fromLocation: next }),\n buildLocation: this.buildLocation,\n cause: match.cause,\n abortController: match.abortController,\n preload: !!match.preload,\n matches\n };\n match.__routeContext = route.options.context(contextFnContext) ?? void 0;\n }\n match.context = {\n ...parentContext,\n ...match.__routeContext,\n ...match.__beforeLoadContext\n };\n }\n });\n return matches;\n }\n}\nclass SearchParamError extends Error {\n}\nclass PathParamError extends Error {\n}\nconst normalize = (str) => str.endsWith(\"/\") && str.length > 1 ? str.slice(0, -1) : str;\nfunction comparePaths(a, b) {\n return normalize(a) === normalize(b);\n}\nfunction lazyFn(fn, key) {\n return async (...args) => {\n const imported = await fn();\n return imported[key || \"default\"](...args);\n };\n}\nfunction getInitialRouterState(location) {\n return {\n loadedAt: 0,\n isLoading: false,\n isTransitioning: false,\n status: \"idle\",\n resolvedLocation: void 0,\n location,\n matches: [],\n pendingMatches: [],\n cachedMatches: [],\n statusCode: 200\n };\n}\nfunction validateSearch(validateSearch2, input) {\n if (validateSearch2 == null) return {};\n if (\"~standard\" in validateSearch2) {\n const result = validateSearch2[\"~standard\"].validate(input);\n if (result instanceof Promise)\n throw new SearchParamError(\"Async validation not supported\");\n if (result.issues)\n throw new SearchParamError(JSON.stringify(result.issues, void 0, 2), {\n cause: result\n });\n return result.value;\n }\n if (\"parse\" in validateSearch2) {\n return validateSearch2.parse(input);\n }\n if (typeof validateSearch2 === \"function\") {\n return validateSearch2(input);\n }\n return {};\n}\nfunction getMatchedRoutes({\n pathname,\n routesById,\n processedTree\n}) {\n const routeParams = {};\n const trimmedPath = trimPathRight(pathname);\n let foundRoute = void 0;\n const match = findRouteMatch(trimmedPath, processedTree, true);\n if (match) {\n foundRoute = match.route;\n Object.assign(routeParams, match.params);\n }\n const matchedRoutes = match?.branch || [routesById[rootRouteId]];\n return { matchedRoutes, routeParams, foundRoute };\n}\nfunction applySearchMiddleware({\n search,\n dest,\n destRoutes,\n _includeValidateSearch\n}) {\n const allMiddlewares = destRoutes.reduce(\n (acc, route) => {\n const middlewares = [];\n if (\"search\" in route.options) {\n if (route.options.search?.middlewares) {\n middlewares.push(...route.options.search.middlewares);\n }\n } else if (route.options.preSearchFilters || route.options.postSearchFilters) {\n const legacyMiddleware = ({\n search: search2,\n next\n }) => {\n let nextSearch = search2;\n if (\"preSearchFilters\" in route.options && route.options.preSearchFilters) {\n nextSearch = route.options.preSearchFilters.reduce(\n (prev, next2) => next2(prev),\n search2\n );\n }\n const result = next(nextSearch);\n if (\"postSearchFilters\" in route.options && route.options.postSearchFilters) {\n return route.options.postSearchFilters.reduce(\n (prev, next2) => next2(prev),\n result\n );\n }\n return result;\n };\n middlewares.push(legacyMiddleware);\n }\n if (_includeValidateSearch && route.options.validateSearch) {\n const validate = ({ search: search2, next }) => {\n const result = next(search2);\n try {\n const validatedSearch = {\n ...result,\n ...validateSearch(route.options.validateSearch, result) ?? void 0\n };\n return validatedSearch;\n } catch {\n return result;\n }\n };\n middlewares.push(validate);\n }\n return acc.concat(middlewares);\n },\n []\n ) ?? [];\n const final = ({ search: search2 }) => {\n if (!dest.search) {\n return {};\n }\n if (dest.search === true) {\n return search2;\n }\n return functionalUpdate(dest.search, search2);\n };\n allMiddlewares.push(final);\n const applyNext = (index, currentSearch) => {\n if (index >= allMiddlewares.length) {\n return currentSearch;\n }\n const middleware = allMiddlewares[index];\n const next = (newSearch) => {\n return applyNext(index + 1, newSearch);\n };\n return middleware({ search: currentSearch, next });\n };\n return applyNext(0, search);\n}\nexport {\n PathParamError,\n RouterCore,\n SearchParamError,\n defaultSerializeError,\n getInitialRouterState,\n getLocationChangeInfo,\n getMatchedRoutes,\n lazyFn,\n trailingSlashOptions\n};\n//# sourceMappingURL=router.js.map\n","import { defaultSerializeError } from \"./router.js\";\nconst TSR_DEFERRED_PROMISE = Symbol.for(\"TSR_DEFERRED_PROMISE\");\nfunction defer(_promise, options) {\n const promise = _promise;\n if (promise[TSR_DEFERRED_PROMISE]) {\n return promise;\n }\n promise[TSR_DEFERRED_PROMISE] = { status: \"pending\" };\n promise.then((data) => {\n promise[TSR_DEFERRED_PROMISE].status = \"success\";\n promise[TSR_DEFERRED_PROMISE].data = data;\n }).catch((error) => {\n promise[TSR_DEFERRED_PROMISE].status = \"error\";\n promise[TSR_DEFERRED_PROMISE].error = {\n data: (options?.serializeError ?? defaultSerializeError)(error),\n __isServerError: true\n };\n });\n return promise;\n}\nexport {\n TSR_DEFERRED_PROMISE,\n defer\n};\n//# sourceMappingURL=defer.js.map\n","const preloadWarning = \"Error preloading route! ☝️\";\nexport {\n preloadWarning\n};\n//# sourceMappingURL=link.js.map\n","const isMatch = (match, path) => {\n const parts = path.split(\".\");\n let part;\n let i = 0;\n let value = match;\n while ((part = parts[i++]) != null && value != null) {\n value = value[part];\n }\n return value != null;\n};\nexport {\n isMatch\n};\n//# sourceMappingURL=Matches.js.map\n","import invariant from \"tiny-invariant\";\nimport { trimPathLeft, joinPaths } from \"./path.js\";\nimport { notFound } from \"./not-found.js\";\nimport { rootRouteId } from \"./root.js\";\nclass BaseRoute {\n constructor(options) {\n this.init = (opts) => {\n this.originalIndex = opts.originalIndex;\n const options2 = this.options;\n const isRoot = !options2?.path && !options2?.id;\n this.parentRoute = this.options.getParentRoute?.();\n if (isRoot) {\n this._path = rootRouteId;\n } else if (!this.parentRoute) {\n invariant(\n false,\n `Child Route instances must pass a 'getParentRoute: () => ParentRoute' option that returns a Route instance.`\n );\n }\n let path = isRoot ? rootRouteId : options2?.path;\n if (path && path !== \"/\") {\n path = trimPathLeft(path);\n }\n const customId = options2?.id || path;\n let id = isRoot ? rootRouteId : joinPaths([\n this.parentRoute.id === rootRouteId ? \"\" : this.parentRoute.id,\n customId\n ]);\n if (path === rootRouteId) {\n path = \"/\";\n }\n if (id !== rootRouteId) {\n id = joinPaths([\"/\", id]);\n }\n const fullPath = id === rootRouteId ? \"/\" : joinPaths([this.parentRoute.fullPath, path]);\n this._path = path;\n this._id = id;\n this._fullPath = fullPath;\n this._to = fullPath;\n };\n this.addChildren = (children) => {\n return this._addFileChildren(children);\n };\n this._addFileChildren = (children) => {\n if (Array.isArray(children)) {\n this.children = children;\n }\n if (typeof children === \"object\" && children !== null) {\n this.children = Object.values(children);\n }\n return this;\n };\n this._addFileTypes = () => {\n return this;\n };\n this.updateLoader = (options2) => {\n Object.assign(this.options, options2);\n return this;\n };\n this.update = (options2) => {\n Object.assign(this.options, options2);\n return this;\n };\n this.lazy = (lazyFn) => {\n this.lazyFn = lazyFn;\n return this;\n };\n this.options = options || {};\n this.isRoot = !options?.getParentRoute;\n if (options?.id && options?.path) {\n throw new Error(`Route cannot have both an 'id' and a 'path' option.`);\n }\n }\n get to() {\n return this._to;\n }\n get id() {\n return this._id;\n }\n get path() {\n return this._path;\n }\n get fullPath() {\n return this._fullPath;\n }\n}\nclass BaseRouteApi {\n constructor({ id }) {\n this.notFound = (opts) => {\n return notFound({ routeId: this.id, ...opts });\n };\n this.id = id;\n }\n}\nclass BaseRootRoute extends BaseRoute {\n constructor(options) {\n super(options);\n }\n}\nexport {\n BaseRootRoute,\n BaseRoute,\n BaseRouteApi\n};\n//# sourceMappingURL=route.js.map\n","const createRouterConfig = (options) => {\n return {\n serializationAdapters: options.serializationAdapters,\n defaultSsr: options.defaultSsr\n };\n};\nexport {\n createRouterConfig\n};\n//# sourceMappingURL=config.js.map\n","import { deepEqual } from \"./utils.js\";\nfunction retainSearchParams(keys) {\n return ({ search, next }) => {\n const result = next(search);\n if (keys === true) {\n return { ...search, ...result };\n }\n keys.forEach((key) => {\n if (!(key in result)) {\n result[key] = search[key];\n }\n });\n return result;\n };\n}\nfunction stripSearchParams(input) {\n return ({ search, next }) => {\n if (input === true) {\n return {};\n }\n const result = next(search);\n if (Array.isArray(input)) {\n input.forEach((key) => {\n delete result[key];\n });\n } else {\n Object.entries(input).forEach(\n ([key, value]) => {\n if (deepEqual(result[key], value)) {\n delete result[key];\n }\n }\n );\n }\n return result;\n };\n}\nexport {\n retainSearchParams,\n stripSearchParams\n};\n//# sourceMappingURL=searchMiddleware.js.map\n","var K=(s=>(s[s.AggregateError=1]=\"AggregateError\",s[s.ArrowFunction=2]=\"ArrowFunction\",s[s.ErrorPrototypeStack=4]=\"ErrorPrototypeStack\",s[s.ObjectAssign=8]=\"ObjectAssign\",s[s.BigIntTypedArray=16]=\"BigIntTypedArray\",s))(K||{});var b=Symbol.asyncIterator,lr=Symbol.hasInstance,P=Symbol.isConcatSpreadable,A=Symbol.iterator,ur=Symbol.match,cr=Symbol.matchAll,fr=Symbol.replace,Sr=Symbol.search,pr=Symbol.species,dr=Symbol.split,mr=Symbol.toPrimitive,x=Symbol.toStringTag,gr=Symbol.unscopables;var Zr={0:\"Symbol.asyncIterator\",1:\"Symbol.hasInstance\",2:\"Symbol.isConcatSpreadable\",3:\"Symbol.iterator\",4:\"Symbol.match\",5:\"Symbol.matchAll\",6:\"Symbol.replace\",7:\"Symbol.search\",8:\"Symbol.species\",9:\"Symbol.split\",10:\"Symbol.toPrimitive\",11:\"Symbol.toStringTag\",12:\"Symbol.unscopables\"},ge={[b]:0,[lr]:1,[P]:2,[A]:3,[ur]:4,[cr]:5,[fr]:6,[Sr]:7,[pr]:8,[dr]:9,[mr]:10,[x]:11,[gr]:12},Jr={0:b,1:lr,2:P,3:A,4:ur,5:cr,6:fr,7:Sr,8:pr,9:dr,10:mr,11:x,12:gr},Hr={2:\"!0\",3:\"!1\",1:\"void 0\",0:\"null\",4:\"-0\",5:\"1/0\",6:\"-1/0\",7:\"0/0\"},$r={2:!0,3:!1,1:void 0,0:null,4:-0,5:Number.POSITIVE_INFINITY,6:Number.NEGATIVE_INFINITY,7:Number.NaN};var ye={0:\"Error\",1:\"EvalError\",2:\"RangeError\",3:\"ReferenceError\",4:\"SyntaxError\",5:\"TypeError\",6:\"URIError\"},qr={0:Error,1:EvalError,2:RangeError,3:ReferenceError,4:SyntaxError,5:TypeError,6:URIError},o=void 0;function c(e,r,t,n,a,s,i,l,u,g,S,d){return{t:e,i:r,s:t,l:n,c:a,m:s,p:i,e:l,a:u,f:g,b:S,o:d}}function _(e){return c(2,o,e,o,o,o,o,o,o,o,o,o)}var Z=_(2),J=_(3),Ne=_(1),Ce=_(0),Xr=_(4),Qr=_(5),et=_(6),rt=_(7);function Qt(e){switch(e){case'\"':return'\\\\\"';case\"\\\\\":return\"\\\\\\\\\";case`\n`:return\"\\\\n\";case\"\\r\":return\"\\\\r\";case\"\\b\":return\"\\\\b\";case\"\t\":return\"\\\\t\";case\"\\f\":return\"\\\\f\";case\"<\":return\"\\\\x3C\";case\"\\u2028\":return\"\\\\u2028\";case\"\\u2029\":return\"\\\\u2029\";default:return}}function y(e){let r=\"\",t=0,n;for(let a=0,s=e.length;a<s;a++)n=Qt(e[a]),n&&(r+=e.slice(t,a)+n,t=a+1);return t===0?r=e:r+=e.slice(t),r}function en(e){switch(e){case\"\\\\\\\\\":return\"\\\\\";case'\\\\\"':return'\"';case\"\\\\n\":return`\n`;case\"\\\\r\":return\"\\r\";case\"\\\\b\":return\"\\b\";case\"\\\\t\":return\"\t\";case\"\\\\f\":return\"\\f\";case\"\\\\x3C\":return\"<\";case\"\\\\u2028\":return\"\\u2028\";case\"\\\\u2029\":return\"\\u2029\";default:return e}}function z(e){return e.replace(/(\\\\\\\\|\\\\\"|\\\\n|\\\\r|\\\\b|\\\\t|\\\\f|\\\\u2028|\\\\u2029|\\\\x3C)/g,en)}var B=\"__SEROVAL_REFS__\",ie=\"$R\",ve=`self.${ie}`;function rn(e){return e==null?`${ve}=${ve}||[]`:`(${ve}=${ve}||{})[\"${y(e)}\"]=[]`}var yr=new Map,V=new Map;function tn(e,r){return yr.set(r,e),V.set(e,r),r}function Nr(e){return yr.has(e)}function nn(e){return V.has(e)}function tt(e){if(Nr(e))return yr.get(e);throw new be(e)}function nt(e){if(nn(e))return V.get(e);throw new Ae(e)}typeof globalThis!=\"undefined\"?Object.defineProperty(globalThis,B,{value:V,configurable:!0,writable:!1,enumerable:!1}):typeof window!=\"undefined\"?Object.defineProperty(window,B,{value:V,configurable:!0,writable:!1,enumerable:!1}):typeof self!=\"undefined\"?Object.defineProperty(self,B,{value:V,configurable:!0,writable:!1,enumerable:!1}):typeof global!=\"undefined\"&&Object.defineProperty(global,B,{value:V,configurable:!0,writable:!1,enumerable:!1});function Re(e){return e instanceof EvalError?1:e instanceof RangeError?2:e instanceof ReferenceError?3:e instanceof SyntaxError?4:e instanceof TypeError?5:e instanceof URIError?6:0}function on(e){let r=ye[Re(e)];return e.name!==r?{name:e.name}:e.constructor.name!==r?{name:e.constructor.name}:{}}function H(e,r){let t=on(e),n=Object.getOwnPropertyNames(e);for(let a=0,s=n.length,i;a<s;a++)i=n[a],i!==\"name\"&&i!==\"message\"&&(i===\"stack\"?r&4&&(t=t||{},t[i]=e[i]):(t=t||{},t[i]=e[i]));return t}function Ie(e){return Object.isFrozen(e)?3:Object.isSealed(e)?2:Object.isExtensible(e)?0:1}function Ee(e){switch(e){case Number.POSITIVE_INFINITY:return Qr;case Number.NEGATIVE_INFINITY:return et}return e!==e?rt:Object.is(e,-0)?Xr:c(0,o,e,o,o,o,o,o,o,o,o,o)}function $(e){return c(1,o,y(e),o,o,o,o,o,o,o,o,o)}function Pe(e){return c(3,o,\"\"+e,o,o,o,o,o,o,o,o,o)}function at(e){return c(4,e,o,o,o,o,o,o,o,o,o,o)}function xe(e,r){let t=r.valueOf();return c(5,e,t!==t?\"\":r.toISOString(),o,o,o,o,o,o,o,o,o)}function Te(e,r){return c(6,e,o,o,y(r.source),r.flags,o,o,o,o,o,o)}function st(e,r){return c(17,e,ge[r],o,o,o,o,o,o,o,o,o)}function it(e,r){return c(18,e,y(tt(r)),o,o,o,o,o,o,o,o,o)}function le(e,r,t){return c(25,e,t,o,y(r),o,o,o,o,o,o,o)}function Oe(e,r,t){return c(9,e,o,r.length,o,o,o,o,t,o,o,Ie(r))}function he(e,r){return c(21,e,o,o,o,o,o,o,o,r,o,o)}function we(e,r,t){return c(15,e,o,r.length,r.constructor.name,o,o,o,o,t,r.byteOffset,o)}function ze(e,r,t){return c(16,e,o,r.length,r.constructor.name,o,o,o,o,t,r.byteOffset,o)}function ke(e,r,t){return c(20,e,o,r.byteLength,o,o,o,o,o,t,r.byteOffset,o)}function _e(e,r,t){return c(13,e,Re(r),o,o,y(r.message),t,o,o,o,o,o)}function De(e,r,t){return c(14,e,Re(r),o,o,y(r.message),t,o,o,o,o,o)}function Fe(e,r,t){return c(7,e,o,r,o,o,o,o,t,o,o,o)}function Be(e,r){return c(28,o,o,o,o,o,o,o,[e,r],o,o,o)}function Ve(e,r){return c(30,o,o,o,o,o,o,o,[e,r],o,o,o)}function Me(e,r,t){return c(31,e,o,o,o,o,o,o,t,r,o,o)}function je(e,r){return c(32,e,o,o,o,o,o,o,o,r,o,o)}function Ue(e,r){return c(33,e,o,o,o,o,o,o,o,r,o,o)}function Le(e,r){return c(34,e,o,o,o,o,o,o,o,r,o,o)}var{toString:Ja}=Object.prototype;var an={parsing:1,serialization:2,deserialization:3};function sn(e){return`Seroval Error (step: ${an[e]})`}var ln=(e,r)=>sn(e),ue=class extends Error{constructor(t,n){super(ln(t,n));this.cause=n}},h=class extends ue{constructor(r){super(\"parsing\",r)}},Cr=class extends ue{constructor(r){super(\"serialization\",r)}},Ye=class extends ue{constructor(r){super(\"deserialization\",r)}};function M(e){return`Seroval Error (specific: ${e})`}var E=class extends Error{constructor(t){super(M(1));this.value=t}},k=class extends Error{constructor(r){super(M(2))}},q=class extends Error{constructor(r){super(M(3))}},D=class extends Error{constructor(r){super(M(4))}},be=class extends Error{constructor(t){super(M(5));this.value=t}},Ae=class extends Error{constructor(r){super(M(6))}},We=class extends Error{constructor(r){super(M(7))}};var j=class{constructor(r,t){this.value=r;this.replacement=t}};var X=()=>{let e={p:0,s:0,f:0};return e.p=new Promise((r,t)=>{e.s=r,e.f=t}),e},un=(e,r)=>{e.s(r),e.p.s=1,e.p.v=r},cn=(e,r)=>{e.f(r),e.p.s=2,e.p.v=r},lt=X.toString(),ut=un.toString(),ct=cn.toString(),vr=()=>{let e=[],r=[],t=!0,n=!1,a=0,s=(u,g,S)=>{for(S=0;S<a;S++)r[S]&&r[S][g](u)},i=(u,g,S,d)=>{for(g=0,S=e.length;g<S;g++)d=e[g],!t&&g===S-1?u[n?\"return\":\"throw\"](d):u.next(d)},l=(u,g)=>(t&&(g=a++,r[g]=u),i(u),()=>{t&&(r[g]=r[a],r[a--]=void 0)});return{__SEROVAL_STREAM__:!0,on:u=>l(u),next:u=>{t&&(e.push(u),s(u,\"next\"))},throw:u=>{t&&(e.push(u),s(u,\"throw\"),t=!1,n=!1,r.length=0)},return:u=>{t&&(e.push(u),s(u,\"return\"),t=!1,n=!0,r.length=0)}}},ft=vr.toString(),br=e=>r=>()=>{let t=0,n={[e]:()=>n,next:()=>{if(t>r.d)return{done:!0,value:void 0};let a=t++,s=r.v[a];if(a===r.t)throw s;return{done:a===r.d,value:s}}};return n},St=br.toString(),Ar=(e,r)=>t=>()=>{let n=0,a=-1,s=!1,i=[],l=[],u=(S=0,d=l.length)=>{for(;S<d;S++)l[S].s({done:!0,value:void 0})};t.on({next:S=>{let d=l.shift();d&&d.s({done:!1,value:S}),i.push(S)},throw:S=>{let d=l.shift();d&&d.f(S),u(),a=i.length,s=!0,i.push(S)},return:S=>{let d=l.shift();d&&d.s({done:!0,value:S}),u(),a=i.length,i.push(S)}});let g={[e]:()=>g,next:()=>{if(a===-1){let W=n++;if(W>=i.length){let Gr=r();return l.push(Gr),Gr.p}return{done:!1,value:i[W]}}if(n>a)return{done:!0,value:void 0};let S=n++,d=i[S];if(S!==a)return{done:!1,value:d};if(s)throw d;return{done:!0,value:d}}};return g},pt=Ar.toString(),Rr=(e,r)=>{let t=atob(r),n=new Uint8Array(e);for(let a=0;a<e;a++)n[a]=t.charCodeAt(a);return n.buffer},dt=Rr.toString();var mt={},gt={};var yt={0:{},1:{},2:{},3:{},4:{},5:{}},Nt={0:\"[]\",1:lt,2:ut,3:ct,4:ft,5:dt};function Ke(e){return\"__SEROVAL_STREAM__\"in e}function Q(){return vr()}function Ge(e){let r=Q(),t=e[b]();async function n(){try{let a=await t.next();a.done?r.return(a.value):(r.next(a.value),await n())}catch(a){r.throw(a)}}return n().catch(()=>{}),r}var fn=Ar(b,X);function Ct(e){return fn(e)}function Ze(e){let r=[],t=-1,n=-1,a=e[A]();for(;;)try{let s=a.next();if(r.push(s.value),s.done){n=r.length-1;break}}catch(s){t=r.length,r.push(s)}return{v:r,t,d:n}}var Sn=br(A);function vt(e){return Sn(e)}async function Ir(e){try{return[1,await e]}catch(r){return[0,r]}}function ce(e,r){return{plugins:r.plugins,mode:e,marked:new Set,features:31^(r.disabledFeatures||0),refs:r.refs||new Map}}function fe(e,r){e.marked.add(r)}function Er(e,r){let t=e.refs.size;return e.refs.set(r,t),t}function Je(e,r){let t=e.refs.get(r);return t!=null?(fe(e,t),{type:1,value:at(t)}):{type:0,value:Er(e,r)}}function U(e,r){let t=Je(e,r);return t.type===1?t:Nr(r)?{type:2,value:it(t.value,r)}:t}function I(e,r){let t=U(e,r);if(t.type!==0)return t.value;if(r in ge)return st(t.value,r);throw new E(r)}function w(e,r){let t=Je(e,yt[r]);return t.type===1?t.value:c(26,t.value,r,o,o,o,o,o,o,o,o,o)}function He(e){let r=Je(e,mt);return r.type===1?r.value:c(27,r.value,o,o,o,o,o,o,o,I(e,A),o,o)}function $e(e){let r=Je(e,gt);return r.type===1?r.value:c(29,r.value,o,o,o,o,o,o,[w(e,1),I(e,b)],o,o,o)}function qe(e,r,t,n){return c(t?11:10,e,o,o,o,o,n,o,o,o,o,Ie(r))}function Xe(e,r,t,n,a){return c(8,r,o,o,o,o,o,{k:t,v:n,s:a},o,w(e,0),o,o)}function At(e,r,t){return c(22,r,t,o,o,o,o,o,o,w(e,1),o,o)}function Qe(e,r,t){let n=new Uint8Array(t),a=n.length,s=\"\";for(let i=0;i<a;i++)s+=String.fromCharCode(n[i]);return c(19,r,y(btoa(s)),a,o,o,o,o,o,w(e,5),o,o)}function ee(e,r){return{base:ce(e,r),child:void 0}}var xr=class{constructor(r){this._p=r}parse(r){return N(this._p,r)}};async function mn(e,r){let t=[];for(let n=0,a=r.length;n<a;n++)n in r&&(t[n]=await N(e,r[n]));return t}async function gn(e,r,t){return Oe(r,t,await mn(e,t))}async function Tr(e,r){let t=Object.entries(r),n=[],a=[];for(let s=0,i=t.length;s<i;s++)n.push(y(t[s][0])),a.push(await N(e,t[s][1]));return A in r&&(n.push(I(e.base,A)),a.push(Be(He(e.base),await N(e,Ze(r))))),b in r&&(n.push(I(e.base,b)),a.push(Ve($e(e.base),await N(e,Ge(r))))),x in r&&(n.push(I(e.base,x)),a.push($(r[x]))),P in r&&(n.push(I(e.base,P)),a.push(r[P]?Z:J)),{k:n,v:a,s:n.length}}async function Pr(e,r,t,n){return qe(r,t,n,await Tr(e,t))}async function yn(e,r,t){return he(r,await N(e,t.valueOf()))}async function Nn(e,r,t){return we(r,t,await N(e,t.buffer))}async function Cn(e,r,t){return ze(r,t,await N(e,t.buffer))}async function vn(e,r,t){return ke(r,t,await N(e,t.buffer))}async function Rt(e,r,t){let n=H(t,e.base.features);return _e(r,t,n?await Tr(e,n):o)}async function bn(e,r,t){let n=H(t,e.base.features);return De(r,t,n?await Tr(e,n):o)}async function An(e,r,t){let n=[],a=[];for(let[s,i]of t.entries())n.push(await N(e,s)),a.push(await N(e,i));return Xe(e.base,r,n,a,t.size)}async function Rn(e,r,t){let n=[];for(let a of t.keys())n.push(await N(e,a));return Fe(r,t.size,n)}async function It(e,r,t){let n=e.base.plugins;if(n)for(let a=0,s=n.length;a<s;a++){let i=n[a];if(i.parse.async&&i.test(t))return e.child==null&&(e.child=new xr(e)),le(r,i.tag,await i.parse.async(t,e.child,{id:r}))}return o}async function In(e,r,t){let[n,a]=await Ir(t);return c(12,r,n,o,o,o,o,o,o,await N(e,a),o,o)}function En(e,r,t,n){let a=[],s=r.on({next:i=>{fe(this.base,e),N(this,i).then(l=>{a.push(je(e,l))},l=>{n(l),s()})},throw:i=>{fe(this.base,e),N(this,i).then(l=>{a.push(Ue(e,l)),t(a),s()},l=>{n(l),s()})},return:i=>{fe(this.base,e),N(this,i).then(l=>{a.push(Le(e,l)),t(a),s()},l=>{n(l),s()})}})}async function Pn(e,r,t){return Me(r,w(e.base,4),await new Promise(En.bind(e,r,t)))}async function xn(e,r,t){if(Array.isArray(t))return gn(e,r,t);if(Ke(t))return Pn(e,r,t);let n=t.constructor;if(n===j)return N(e,t.replacement);let a=await It(e,r,t);if(a)return a;switch(n){case Object:return Pr(e,r,t,!1);case o:return Pr(e,r,t,!0);case Date:return xe(r,t);case RegExp:return Te(r,t);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return Rt(e,r,t);case Number:case Boolean:case String:case BigInt:return yn(e,r,t);case ArrayBuffer:return Qe(e.base,r,t);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return Nn(e,r,t);case DataView:return vn(e,r,t);case Map:return An(e,r,t);case Set:return Rn(e,r,t);default:break}if(n===Promise||t instanceof Promise)return In(e,r,t);let s=e.base.features;if(s&16)switch(n){case BigInt64Array:case BigUint64Array:return Cn(e,r,t);default:break}if(s&1&&typeof AggregateError!=\"undefined\"&&(n===AggregateError||t instanceof AggregateError))return bn(e,r,t);if(t instanceof Error)return Rt(e,r,t);if(A in t||b in t)return Pr(e,r,t,!!n);throw new E(t)}async function Tn(e,r){let t=U(e.base,r);if(t.type!==0)return t.value;let n=await It(e,t.value,r);if(n)return n;throw new E(r)}async function N(e,r){switch(typeof r){case\"boolean\":return r?Z:J;case\"undefined\":return Ne;case\"string\":return $(r);case\"number\":return Ee(r);case\"bigint\":return Pe(r);case\"object\":{if(r){let t=U(e.base,r);return t.type===0?await xn(e,t.value,r):t.value}return Ce}case\"symbol\":return I(e.base,r);case\"function\":return Tn(e,r);default:throw new E(r)}}async function re(e,r){try{return await N(e,r)}catch(t){throw t instanceof h?t:new h(t)}}var te=(t=>(t[t.Vanilla=1]=\"Vanilla\",t[t.Cross=2]=\"Cross\",t))(te||{});function _s(e){return e}function Et(e,r){for(let t=0,n=r.length;t<n;t++){let a=r[t];e.has(a)||(e.add(a),a.extends&&Et(e,a.extends))}}function v(e){if(e){let r=new Set;return Et(r,e),[...r]}}function Pt(e){switch(e){case\"Int8Array\":return Int8Array;case\"Int16Array\":return Int16Array;case\"Int32Array\":return Int32Array;case\"Uint8Array\":return Uint8Array;case\"Uint16Array\":return Uint16Array;case\"Uint32Array\":return Uint32Array;case\"Uint8ClampedArray\":return Uint8ClampedArray;case\"Float32Array\":return Float32Array;case\"Float64Array\":return Float64Array;case\"BigInt64Array\":return BigInt64Array;case\"BigUint64Array\":return BigUint64Array;default:throw new We(e)}}function xt(e,r){switch(r){case 3:return Object.freeze(e);case 1:return Object.preventExtensions(e);case 2:return Object.seal(e);default:return e}}function Tt(e,r){return{mode:e,plugins:r.plugins,refs:r.refs||new Map}}function Ot(e){return{mode:1,base:Tt(1,e),child:void 0,state:{marked:new Set(e.markedRefs)}}}function ht(e){return{mode:2,base:Tt(2,e),child:void 0}}var Or=class{constructor(r){this._p=r}deserialize(r){return m(this._p,r)}};function On(e,r,t){return e.state.marked.has(r)&&e.base.refs.set(r,t),t}function hn(e,r,t){return e.base.refs.has(r)||e.base.refs.set(r,t),t}function C(e,r,t){return e.mode===1?On(e,r,t):hn(e,r,t)}function wn(e,r){return C(e,r.i,nt(z(r.s)))}function zn(e,r){let t=r.l,n=C(e,r.i,new Array(t)),a;for(let s=0;s<t;s++)a=r.a[s],a&&(n[s]=m(e,a));return xt(n,r.o),n}function wt(e,r,t){let n=r.s;if(n){let a=r.k,s=r.v;for(let i=0,l;i<n;i++)l=a[i],typeof l==\"string\"?t[z(l)]=m(e,s[i]):t[m(e,l)]=m(e,s[i])}return t}function kn(e,r){let t=C(e,r.i,r.t===10?{}:Object.create(null));return wt(e,r.p,t),xt(t,r.o),t}function _n(e,r){return C(e,r.i,new Date(r.s))}function Dn(e,r){return C(e,r.i,new RegExp(z(r.c),r.m))}function Fn(e,r){let t=C(e,r.i,new Set),n=r.a;for(let a=0,s=r.l;a<s;a++)t.add(m(e,n[a]));return t}function Bn(e,r){let t=C(e,r.i,new Map),n=r.e.k,a=r.e.v;for(let s=0,i=r.e.s;s<i;s++)t.set(m(e,n[s]),m(e,a[s]));return t}function Vn(e,r){return C(e,r.i,Rr(r.l,z(r.s)))}function Mn(e,r){let t=Pt(r.c),n=m(e,r.f);return C(e,r.i,new t(n,r.b,r.l))}function jn(e,r){let t=m(e,r.f);return C(e,r.i,new DataView(t,r.b,r.l))}function zt(e,r,t){if(r.p){let n=wt(e,r.p,{});Object.assign(t,n)}return t}function Un(e,r){let t=C(e,r.i,new AggregateError([],z(r.m)));return zt(e,r,t)}function Ln(e,r){let t=qr[r.s],n=C(e,r.i,new t(z(r.m)));return zt(e,r,n)}function Yn(e,r){let t=X(),n=C(e,r.i,t.p),a=m(e,r.f);return r.s?t.s(a):t.f(a),n}function Wn(e,r){return C(e,r.i,Object(m(e,r.f)))}function Kn(e,r){let t=e.base.plugins;if(t){let n=z(r.c);for(let a=0,s=t.length;a<s;a++){let i=t[a];if(i.tag===n)return e.child==null&&(e.child=new Or(e)),C(e,r.i,i.deserialize(r.s,e.child,{id:r.i}))}}throw new q(r.c)}function Gn(e,r){return C(e,r.i,C(e,r.s,X()).p)}function Zn(e,r){let t=e.base.refs.get(r.i);if(t){t.s(m(e,r.a[1]));return}throw new D(\"Promise\")}function Jn(e,r){let t=e.base.refs.get(r.i);if(t){t.f(m(e,r.a[1]));return}throw new D(\"Promise\")}function Hn(e,r){m(e,r.a[0]);let t=m(e,r.a[1]);return vt(t)}function $n(e,r){m(e,r.a[0]);let t=m(e,r.a[1]);return Ct(t)}function qn(e,r){let t=C(e,r.i,Q()),n=r.a.length;if(n)for(let a=0;a<n;a++)m(e,r.a[a]);return t}function Xn(e,r){let t=e.base.refs.get(r.i);if(t){t.next(m(e,r.f));return}throw new D(\"Stream\")}function Qn(e,r){let t=e.base.refs.get(r.i);if(t){t.throw(m(e,r.f));return}throw new D(\"Stream\")}function eo(e,r){let t=e.base.refs.get(r.i);if(t){t.return(m(e,r.f));return}throw new D(\"Stream\")}function ro(e,r){m(e,r.f)}function to(e,r){m(e,r.a[1])}function m(e,r){switch(r.t){case 2:return $r[r.s];case 0:return r.s;case 1:return z(r.s);case 3:return BigInt(r.s);case 4:return e.base.refs.get(r.i);case 18:return wn(e,r);case 9:return zn(e,r);case 10:case 11:return kn(e,r);case 5:return _n(e,r);case 6:return Dn(e,r);case 7:return Fn(e,r);case 8:return Bn(e,r);case 19:return Vn(e,r);case 16:case 15:return Mn(e,r);case 20:return jn(e,r);case 14:return Un(e,r);case 13:return Ln(e,r);case 12:return Yn(e,r);case 17:return Jr[r.s];case 21:return Wn(e,r);case 25:return Kn(e,r);case 22:return Gn(e,r);case 23:return Zn(e,r);case 24:return Jn(e,r);case 28:return Hn(e,r);case 30:return $n(e,r);case 31:return qn(e,r);case 32:return Xn(e,r);case 33:return Qn(e,r);case 34:return eo(e,r);case 27:return ro(e,r);case 29:return to(e,r);default:throw new k(r)}}function er(e,r){try{return m(e,r)}catch(t){throw new Ye(t)}}var no=()=>T,oo=no.toString(),kt=/=>/.test(oo);function rr(e,r){return kt?(e.length===1?e[0]:\"(\"+e.join(\",\")+\")\")+\"=>\"+(r.startsWith(\"{\")?\"(\"+r+\")\":r):\"function(\"+e.join(\",\")+\"){return \"+r+\"}\"}function _t(e,r){return kt?(e.length===1?e[0]:\"(\"+e.join(\",\")+\")\")+\"=>{\"+r+\"}\":\"function(\"+e.join(\",\")+\"){\"+r+\"}\"}var Bt=\"hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_\",Dt=Bt.length,Vt=\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_\",Ft=Vt.length;function hr(e){let r=e%Dt,t=Bt[r];for(e=(e-r)/Dt;e>0;)r=e%Ft,t+=Vt[r],e=(e-r)/Ft;return t}var ao=/^[$A-Z_][0-9A-Z_$]*$/i;function wr(e){let r=e[0];return(r===\"$\"||r===\"_\"||r>=\"A\"&&r<=\"Z\"||r>=\"a\"&&r<=\"z\")&&ao.test(e)}function pe(e){switch(e.t){case 0:return e.s+\"=\"+e.v;case 2:return e.s+\".set(\"+e.k+\",\"+e.v+\")\";case 1:return e.s+\".add(\"+e.v+\")\";case 3:return e.s+\".delete(\"+e.k+\")\"}}function so(e){let r=[],t=e[0];for(let n=1,a=e.length,s,i=t;n<a;n++)s=e[n],s.t===0&&s.v===i.v?t={t:0,s:s.s,k:o,v:pe(t)}:s.t===2&&s.s===i.s?t={t:2,s:pe(t),k:s.k,v:s.v}:s.t===1&&s.s===i.s?t={t:1,s:pe(t),k:o,v:s.v}:s.t===3&&s.s===i.s?t={t:3,s:pe(t),k:s.k,v:o}:(r.push(t),t=s),i=s;return r.push(t),r}function Wt(e){if(e.length){let r=\"\",t=so(e);for(let n=0,a=t.length;n<a;n++)r+=pe(t[n])+\",\";return r}return o}var io=\"Object.create(null)\",lo=\"new Set\",uo=\"new Map\",co=\"Promise.resolve\",fo=\"Promise.reject\",So={3:\"Object.freeze\",2:\"Object.seal\",1:\"Object.preventExtensions\",0:o};function Kt(e,r){return{mode:e,plugins:r.plugins,features:r.features,marked:new Set(r.markedRefs),stack:[],flags:[],assignments:[]}}function po(){return{valid:new Map,vars:[]}}function tr(e){return{mode:1,base:Kt(1,e),state:po(),child:void 0}}function nr(e){return{mode:2,base:Kt(2,e),state:e,child:void 0}}var zr=class{constructor(r){this._p=r}serialize(r){return f(this._p,r)}};function mo(e,r){let t=e.valid.get(r);t==null&&(t=e.valid.size,e.valid.set(r,t));let n=e.vars[t];return n==null&&(n=hr(t),e.vars[t]=n),n}function go(e){return ie+\"[\"+e+\"]\"}function p(e,r){return e.mode===1?mo(e.state,r):go(r)}function O(e,r){e.marked.add(r)}function kr(e,r){return e.marked.has(r)}function Dr(e,r,t){r!==0&&(O(e.base,t),e.base.flags.push({type:r,value:p(e,t)}))}function yo(e){let r=\"\";for(let t=0,n=e.flags,a=n.length;t<a;t++){let s=n[t];r+=So[s.type]+\"(\"+s.value+\"),\"}return r}function Gt(e){let r=Wt(e.assignments),t=yo(e);return r?t?r+t:r:t}function Zt(e,r,t){e.assignments.push({t:0,s:r,k:o,v:t})}function No(e,r,t){e.base.assignments.push({t:1,s:p(e,r),k:o,v:t})}function Se(e,r,t,n){e.base.assignments.push({t:2,s:p(e,r),k:t,v:n})}function Mt(e,r,t){e.base.assignments.push({t:3,s:p(e,r),k:t,v:o})}function de(e,r,t,n){Zt(e.base,p(e,r)+\"[\"+t+\"]\",n)}function _r(e,r,t,n){Zt(e.base,p(e,r)+\".\"+t,n)}function F(e,r){return r.t===4&&e.stack.includes(r.i)}function ne(e,r,t){return e.mode===1&&!kr(e.base,r)?t:p(e,r)+\"=\"+t}function Co(e){return B+'.get(\"'+e.s+'\")'}function jt(e,r,t,n){return t?F(e.base,t)?(O(e.base,r),de(e,r,n,p(e,t.i)),\"\"):f(e,t):\"\"}function vo(e,r){let t=r.i;if(r.l){e.base.stack.push(t);let n=r.a,a=jt(e,t,n[0],0),s=a===\"\";for(let i=1,l=r.l,u;i<l;i++)u=jt(e,t,n[i],i),a+=\",\"+u,s=u===\"\";return e.base.stack.pop(),Dr(e,r.o,r.i),\"[\"+a+(s?\",]\":\"]\")}return\"[]\"}function Ut(e,r,t,n){if(typeof t==\"string\"){let a=Number(t),s=a>=0&&a.toString()===t||wr(t);if(F(e.base,n)){let i=p(e,n.i);return O(e.base,r.i),s&&a!==a?_r(e,r.i,t,i):de(e,r.i,s?t:'\"'+t+'\"',i),\"\"}return(s?t:'\"'+t+'\"')+\":\"+f(e,n)}return\"[\"+f(e,t)+\"]:\"+f(e,n)}function Jt(e,r,t){let n=t.s;if(n){let a=t.k,s=t.v;e.base.stack.push(r.i);let i=Ut(e,r,a[0],s[0]);for(let l=1,u=i;l<n;l++)u=Ut(e,r,a[l],s[l]),i+=(u&&i&&\",\")+u;return e.base.stack.pop(),\"{\"+i+\"}\"}return\"{}\"}function bo(e,r){return Dr(e,r.o,r.i),Jt(e,r,r.p)}function Ao(e,r,t,n){let a=Jt(e,r,t);return a!==\"{}\"?\"Object.assign(\"+n+\",\"+a+\")\":n}function Ro(e,r,t,n,a){let s=e.base,i=f(e,a),l=Number(n),u=l>=0&&l.toString()===n||wr(n);if(F(s,a))u&&l!==l?_r(e,r.i,n,i):de(e,r.i,u?n:'\"'+n+'\"',i);else{let g=s.assignments;s.assignments=t,u&&l!==l?_r(e,r.i,n,i):de(e,r.i,u?n:'\"'+n+'\"',i),s.assignments=g}}function Io(e,r,t,n,a){if(typeof n==\"string\")Ro(e,r,t,n,a);else{let s=e.base,i=s.stack;s.stack=[];let l=f(e,a);s.stack=i;let u=s.assignments;s.assignments=t,de(e,r.i,f(e,n),l),s.assignments=u}}function Eo(e,r,t){let n=t.s;if(n){let a=[],s=t.k,i=t.v;e.base.stack.push(r.i);for(let l=0;l<n;l++)Io(e,r,a,s[l],i[l]);return e.base.stack.pop(),Wt(a)}return o}function Fr(e,r,t){if(r.p){let n=e.base;if(n.features&8)t=Ao(e,r,r.p,t);else{O(n,r.i);let a=Eo(e,r,r.p);if(a)return\"(\"+ne(e,r.i,t)+\",\"+a+p(e,r.i)+\")\"}}return t}function Po(e,r){return Dr(e,r.o,r.i),Fr(e,r,io)}function xo(e){return'new Date(\"'+e.s+'\")'}function To(e){return\"/\"+e.c+\"/\"+e.m}function Lt(e,r,t){let n=e.base;return F(n,t)?(O(n,r),No(e,r,p(e,t.i)),\"\"):f(e,t)}function Oo(e,r){let t=lo,n=r.l,a=r.i;if(n){let s=r.a;e.base.stack.push(a);let i=Lt(e,a,s[0]);for(let l=1,u=i;l<n;l++)u=Lt(e,a,s[l]),i+=(u&&i&&\",\")+u;e.base.stack.pop(),i&&(t+=\"([\"+i+\"])\")}return t}function Yt(e,r,t,n,a){let s=e.base;if(F(s,t)){let i=p(e,t.i);if(O(s,r),F(s,n)){let u=p(e,n.i);return Se(e,r,i,u),\"\"}if(n.t!==4&&n.i!=null&&kr(s,n.i)){let u=\"(\"+f(e,n)+\",[\"+a+\",\"+a+\"])\";return Se(e,r,i,p(e,n.i)),Mt(e,r,a),u}let l=s.stack;return s.stack=[],Se(e,r,i,f(e,n)),s.stack=l,\"\"}if(F(s,n)){let i=p(e,n.i);if(O(s,r),t.t!==4&&t.i!=null&&kr(s,t.i)){let u=\"(\"+f(e,t)+\",[\"+a+\",\"+a+\"])\";return Se(e,r,p(e,t.i),i),Mt(e,r,a),u}let l=s.stack;return s.stack=[],Se(e,r,f(e,t),i),s.stack=l,\"\"}return\"[\"+f(e,t)+\",\"+f(e,n)+\"]\"}function ho(e,r){let t=uo,n=r.e.s,a=r.i,s=r.f,i=p(e,s.i),l=e.base;if(n){let u=r.e.k,g=r.e.v;l.stack.push(a);let S=Yt(e,a,u[0],g[0],i);for(let d=1,W=S;d<n;d++)W=Yt(e,a,u[d],g[d],i),S+=(W&&S&&\",\")+W;l.stack.pop(),S&&(t+=\"([\"+S+\"])\")}return s.t===26&&(O(l,s.i),t=\"(\"+f(e,s)+\",\"+t+\")\"),t}function wo(e,r){return L(e,r.f)+\"(\"+r.l+',\"'+r.s+'\")'}function zo(e,r){return\"new \"+r.c+\"(\"+f(e,r.f)+\",\"+r.b+\",\"+r.l+\")\"}function ko(e,r){return\"new DataView(\"+f(e,r.f)+\",\"+r.b+\",\"+r.l+\")\"}function _o(e,r){let t=r.i;e.base.stack.push(t);let n=Fr(e,r,'new AggregateError([],\"'+r.m+'\")');return e.base.stack.pop(),n}function Do(e,r){return Fr(e,r,\"new \"+ye[r.s]+'(\"'+r.m+'\")')}function Fo(e,r){let t,n=r.f,a=r.i,s=r.s?co:fo,i=e.base;if(F(i,n)){let l=p(e,n.i);t=s+(r.s?\"().then(\"+rr([],l)+\")\":\"().catch(\"+_t([],\"throw \"+l)+\")\")}else{i.stack.push(a);let l=f(e,n);i.stack.pop(),t=s+\"(\"+l+\")\"}return t}function Bo(e,r){return\"Object(\"+f(e,r.f)+\")\"}function L(e,r){let t=f(e,r);return r.t===4?t:\"(\"+t+\")\"}function Vo(e,r){if(e.mode===1)throw new k(r);return\"(\"+ne(e,r.s,L(e,r.f)+\"()\")+\").p\"}function Mo(e,r){if(e.mode===1)throw new k(r);return L(e,r.a[0])+\"(\"+p(e,r.i)+\",\"+f(e,r.a[1])+\")\"}function jo(e,r){if(e.mode===1)throw new k(r);return L(e,r.a[0])+\"(\"+p(e,r.i)+\",\"+f(e,r.a[1])+\")\"}function Uo(e,r){let t=e.base.plugins;if(t)for(let n=0,a=t.length;n<a;n++){let s=t[n];if(s.tag===r.c)return e.child==null&&(e.child=new zr(e)),s.serialize(r.s,e.child,{id:r.i})}throw new q(r.c)}function Lo(e,r){let t=\"\",n=!1;return r.f.t!==4&&(O(e.base,r.f.i),t=\"(\"+f(e,r.f)+\",\",n=!0),t+=ne(e,r.i,\"(\"+St+\")(\"+p(e,r.f.i)+\")\"),n&&(t+=\")\"),t}function Yo(e,r){return L(e,r.a[0])+\"(\"+f(e,r.a[1])+\")\"}function Wo(e,r){let t=r.a[0],n=r.a[1],a=e.base,s=\"\";t.t!==4&&(O(a,t.i),s+=\"(\"+f(e,t)),n.t!==4&&(O(a,n.i),s+=(s?\",\":\"(\")+f(e,n)),s&&(s+=\",\");let i=ne(e,r.i,\"(\"+pt+\")(\"+p(e,n.i)+\",\"+p(e,t.i)+\")\");return s?s+i+\")\":i}function Ko(e,r){return L(e,r.a[0])+\"(\"+f(e,r.a[1])+\")\"}function Go(e,r){let t=ne(e,r.i,L(e,r.f)+\"()\"),n=r.a.length;if(n){let a=f(e,r.a[0]);for(let s=1;s<n;s++)a+=\",\"+f(e,r.a[s]);return\"(\"+t+\",\"+a+\",\"+p(e,r.i)+\")\"}return t}function Zo(e,r){return p(e,r.i)+\".next(\"+f(e,r.f)+\")\"}function Jo(e,r){return p(e,r.i)+\".throw(\"+f(e,r.f)+\")\"}function Ho(e,r){return p(e,r.i)+\".return(\"+f(e,r.f)+\")\"}function $o(e,r){switch(r.t){case 17:return Zr[r.s];case 18:return Co(r);case 9:return vo(e,r);case 10:return bo(e,r);case 11:return Po(e,r);case 5:return xo(r);case 6:return To(r);case 7:return Oo(e,r);case 8:return ho(e,r);case 19:return wo(e,r);case 16:case 15:return zo(e,r);case 20:return ko(e,r);case 14:return _o(e,r);case 13:return Do(e,r);case 12:return Fo(e,r);case 21:return Bo(e,r);case 22:return Vo(e,r);case 25:return Uo(e,r);case 26:return Nt[r.s];default:throw new k(r)}}function f(e,r){switch(r.t){case 2:return Hr[r.s];case 0:return\"\"+r.s;case 1:return'\"'+r.s+'\"';case 3:return r.s+\"n\";case 4:return p(e,r.i);case 23:return Mo(e,r);case 24:return jo(e,r);case 27:return Lo(e,r);case 28:return Yo(e,r);case 29:return Wo(e,r);case 30:return Ko(e,r);case 31:return Go(e,r);case 32:return Zo(e,r);case 33:return Jo(e,r);case 34:return Ho(e,r);default:return ne(e,r.i,$o(e,r))}}function or(e,r){let t=f(e,r);if(r.i!=null&&e.state.vars.length){let n=Gt(e.base),a=t;if(n){let s=p(e,r.i);a=t+\",\"+n+s,t.startsWith(s+\"=\")||(a=s+\"=\"+a),a=\"(\"+a+\")\"}return\"(\"+rr(e.state.vars,a)+\")()\"}return r.t===10?\"(\"+t+\")\":t}function ar(e,r){let t=f(e,r),n=r.i;if(n==null)return t;let a=Gt(e.base),s=p(e,n),i=e.state.scopeId,l=i==null?\"\":ie,u=a?\"(\"+t+\",\"+a+s+\")\":t;if(l===\"\")return r.t===10&&!a?\"(\"+u+\")\":u;let g=i==null?\"()\":\"(\"+ie+'[\"'+y(i)+'\"])';return\"(\"+rr([l],u)+\")\"+g}function ae(e,r){return{type:1,base:ce(e,r),child:void 0}}var Vr=class{constructor(r){this._p=r}parse(r){return R(this._p,r)}},Mr=class{constructor(r){this._p=r}parse(r){return R(this._p,r)}parseWithError(r){return Y(this._p,r)}isAlive(){return this._p.state.alive}pushPendingState(){Wr(this._p)}popPendingState(){me(this._p)}onParse(r){oe(this._p,r)}onError(r){Lr(this._p,r)}};function qo(e){return{alive:!0,pending:0,initial:!0,buffer:[],onParse:e.onParse,onError:e.onError,onDone:e.onDone}}function jr(e){return{type:2,base:ce(2,e),child:void 0,state:qo(e)}}function Xo(e,r){let t=[];for(let n=0,a=r.length;n<a;n++)n in r&&(t[n]=R(e,r[n]));return t}function Qo(e,r,t){return Oe(r,t,Xo(e,t))}function Ur(e,r){let t=Object.entries(r),n=[],a=[];for(let s=0,i=t.length;s<i;s++)n.push(y(t[s][0])),a.push(R(e,t[s][1]));return A in r&&(n.push(I(e.base,A)),a.push(Be(He(e.base),R(e,Ze(r))))),b in r&&(n.push(I(e.base,b)),a.push(Ve($e(e.base),R(e,e.type===1?Q():Ge(r))))),x in r&&(n.push(I(e.base,x)),a.push($(r[x]))),P in r&&(n.push(I(e.base,P)),a.push(r[P]?Z:J)),{k:n,v:a,s:n.length}}function Br(e,r,t,n){return qe(r,t,n,Ur(e,t))}function ea(e,r,t){return he(r,R(e,t.valueOf()))}function ra(e,r,t){return we(r,t,R(e,t.buffer))}function ta(e,r,t){return ze(r,t,R(e,t.buffer))}function na(e,r,t){return ke(r,t,R(e,t.buffer))}function Ht(e,r,t){let n=H(t,e.base.features);return _e(r,t,n?Ur(e,n):o)}function oa(e,r,t){let n=H(t,e.base.features);return De(r,t,n?Ur(e,n):o)}function aa(e,r,t){let n=[],a=[];for(let[s,i]of t.entries())n.push(R(e,s)),a.push(R(e,i));return Xe(e.base,r,n,a,t.size)}function sa(e,r,t){let n=[];for(let a of t.keys())n.push(R(e,a));return Fe(r,t.size,n)}function ia(e,r,t){let n=Me(r,w(e.base,4),[]);return e.type===1||(Wr(e),t.on({next:a=>{if(e.state.alive){let s=Y(e,a);s&&oe(e,je(r,s))}},throw:a=>{if(e.state.alive){let s=Y(e,a);s&&oe(e,Ue(r,s))}me(e)},return:a=>{if(e.state.alive){let s=Y(e,a);s&&oe(e,Le(r,s))}me(e)}})),n}function la(e,r){if(this.state.alive){let t=Y(this,r);t&&oe(this,c(23,e,o,o,o,o,o,o,[w(this.base,2),t],o,o,o)),me(this)}}function ua(e,r){if(this.state.alive){let t=Y(this,r);t&&oe(this,c(24,e,o,o,o,o,o,o,[w(this.base,3),t],o,o,o))}me(this)}function ca(e,r,t){let n=Er(e.base,{});return e.type===2&&(Wr(e),t.then(la.bind(e,n),ua.bind(e,n))),At(e.base,r,n)}function fa(e,r,t,n){for(let a=0,s=n.length;a<s;a++){let i=n[a];if(i.parse.sync&&i.test(t))return e.child==null&&(e.child=new Vr(e)),le(r,i.tag,i.parse.sync(t,e.child,{id:r}))}}function Sa(e,r,t,n){for(let a=0,s=n.length;a<s;a++){let i=n[a];if(i.parse.stream&&i.test(t))return e.child==null&&(e.child=new Mr(e)),le(r,i.tag,i.parse.stream(t,e.child,{id:r}))}}function $t(e,r,t){let n=e.base.plugins;if(n)return e.type===1?fa(e,r,t,n):Sa(e,r,t,n)}function pa(e,r,t,n){switch(n){case Object:return Br(e,r,t,!1);case void 0:return Br(e,r,t,!0);case Date:return xe(r,t);case RegExp:return Te(r,t);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return Ht(e,r,t);case Number:case Boolean:case String:case BigInt:return ea(e,r,t);case ArrayBuffer:return Qe(e.base,r,t);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return ra(e,r,t);case DataView:return na(e,r,t);case Map:return aa(e,r,t);case Set:return sa(e,r,t);default:break}if(n===Promise||t instanceof Promise)return ca(e,r,t);let a=e.base.features;if(a&16)switch(n){case BigInt64Array:case BigUint64Array:return ta(e,r,t);default:break}if(a&1&&typeof AggregateError!=\"undefined\"&&(n===AggregateError||t instanceof AggregateError))return oa(e,r,t);if(t instanceof Error)return Ht(e,r,t);if(A in t||b in t)return Br(e,r,t,!!n);throw new E(t)}function da(e,r,t){if(Array.isArray(t))return Qo(e,r,t);if(Ke(t))return ia(e,r,t);let n=t.constructor;if(n===j)return R(e,t.replacement);let a=$t(e,r,t);return a||pa(e,r,t,n)}function ma(e,r){let t=U(e.base,r);if(t.type!==0)return t.value;let n=$t(e,t.value,r);if(n)return n;throw new E(r)}function R(e,r){switch(typeof r){case\"boolean\":return r?Z:J;case\"undefined\":return Ne;case\"string\":return $(r);case\"number\":return Ee(r);case\"bigint\":return Pe(r);case\"object\":{if(r){let t=U(e.base,r);return t.type===0?da(e,t.value,r):t.value}return Ce}case\"symbol\":return I(e.base,r);case\"function\":return ma(e,r);default:throw new E(r)}}function se(e,r){try{return R(e,r)}catch(t){throw t instanceof h?t:new h(t)}}function oe(e,r){e.state.initial?e.state.buffer.push(r):Yr(e,r,!1)}function Lr(e,r){if(e.state.onError)e.state.onError(r);else throw r instanceof h?r:new h(r)}function qt(e){e.state.onDone&&e.state.onDone()}function Yr(e,r,t){try{e.state.onParse(r,t)}catch(n){Lr(e,n)}}function Wr(e){e.state.pending++}function me(e){--e.state.pending<=0&&qt(e)}function Y(e,r){try{return R(e,r)}catch(t){return Lr(e,t),o}}function Kr(e,r){let t=Y(e,r);t&&(Yr(e,t,!0),e.state.initial=!1,ga(e,e.state),e.state.pending<=0&&sr(e))}function ga(e,r){for(let t=0,n=r.buffer.length;t<n;t++)Yr(e,r.buffer[t],!1)}function sr(e){e.state.alive&&(qt(e),e.state.alive=!1)}function hi(e,r={}){let t=v(r.plugins),n=ae(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs}),a=se(n,e),s=nr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked});return ar(s,a)}async function wi(e,r={}){let t=v(r.plugins),n=ee(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs}),a=await re(n,e),s=nr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked});return ar(s,a)}function zi(e,r={}){let t=v(r.plugins),n=ae(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs});return se(n,e)}async function ki(e,r={}){let t=v(r.plugins),n=ee(2,{plugins:t,disabledFeatures:r.disabledFeatures,refs:r.refs});return await re(n,e)}function Xt(e,r){let t=v(r.plugins),n=jr({plugins:t,refs:r.refs,disabledFeatures:r.disabledFeatures,onParse(a,s){let i=nr({plugins:t,features:n.base.features,scopeId:r.scopeId,markedRefs:n.base.marked}),l;try{l=ar(i,a)}catch(u){r.onError&&r.onError(u);return}r.onSerialize(l,s)},onError:r.onError,onDone:r.onDone});return Kr(n,e),sr.bind(null,n)}function _i(e,r){let t=v(r.plugins),n=jr({plugins:t,refs:r.refs,disabledFeatures:r.disabledFeatures,onParse:r.onParse,onError:r.onError,onDone:r.onDone});return Kr(n,e),sr.bind(null,n)}function Di(e,r){let t=v(r.plugins),n=ht({plugins:t,refs:r.refs});return er(n,e)}var ir=class{constructor(r){this.options=r;this.alive=!0;this.flushed=!1;this.done=!1;this.pending=0;this.cleanups=[];this.refs=new Map;this.keys=new Set;this.ids=0;this.plugins=v(r.plugins)}write(r,t){this.alive&&!this.flushed&&(this.pending++,this.keys.add(r),this.cleanups.push(Xt(t,{plugins:this.plugins,scopeId:this.options.scopeId,refs:this.refs,disabledFeatures:this.options.disabledFeatures,onError:this.options.onError,onSerialize:(n,a)=>{this.alive&&this.options.onData(a?this.options.globalIdentifier+'[\"'+y(r)+'\"]='+n:n)},onDone:()=>{this.alive&&(this.pending--,this.pending<=0&&this.flushed&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}})))}getNextID(){for(;this.keys.has(\"\"+this.ids);)this.ids++;return\"\"+this.ids}push(r){let t=this.getNextID();return this.write(t,r),t}flush(){this.alive&&(this.flushed=!0,this.pending<=0&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}close(){if(this.alive){for(let r=0,t=this.cleanups.length;r<t;r++)this.cleanups[r]();!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0),this.alive=!1}}};function Gi(e,r={}){let t=v(r.plugins),n=ae(1,{plugins:t,disabledFeatures:r.disabledFeatures}),a=se(n,e),s=tr({plugins:t,features:n.base.features,markedRefs:n.base.marked});return or(s,a)}async function Zi(e,r={}){let t=v(r.plugins),n=ee(1,{plugins:t,disabledFeatures:r.disabledFeatures}),a=await re(n,e),s=tr({plugins:t,features:n.base.features,markedRefs:n.base.marked});return or(s,a)}function Ji(e){return(0,eval)(e)}function Hi(e,r={}){let t=v(r.plugins),n=ae(1,{plugins:t,disabledFeatures:r.disabledFeatures});return{t:se(n,e),f:n.base.features,m:Array.from(n.base.marked)}}async function $i(e,r={}){let t=v(r.plugins),n=ee(1,{plugins:t,disabledFeatures:r.disabledFeatures});return{t:await re(n,e),f:n.base.features,m:Array.from(n.base.marked)}}function qi(e,r={}){let t=v(r.plugins),n=tr({plugins:t,features:e.f,markedRefs:e.m});return or(n,e.t)}function Xi(e,r={}){let t=v(r.plugins),n=Ot({plugins:t,markedRefs:e.m});return er(n,e.t)}export{K as Feature,j as OpaqueReference,ir as Serializer,Ye as SerovalDeserializationError,ue as SerovalError,D as SerovalMissingInstanceError,q as SerovalMissingPluginError,be as SerovalMissingReferenceError,Ae as SerovalMissingReferenceForIdError,te as SerovalMode,h as SerovalParserError,Cr as SerovalSerializationError,We as SerovalUnknownTypedArrayError,k as SerovalUnsupportedNodeError,E as SerovalUnsupportedTypeError,qi as compileJSON,_s as createPlugin,tn as createReference,Q as createStream,hi as crossSerialize,wi as crossSerializeAsync,Xt as crossSerializeStream,Ji as deserialize,Di as fromCrossJSON,Xi as fromJSON,rn as getCrossReferenceHeader,v as resolvePlugins,Gi as serialize,Zi as serializeAsync,zi as toCrossJSON,ki as toCrossJSONAsync,_i as toCrossJSONStream,Hi as toJSON,$i as toJSONAsync};\n","import { createPlugin } from \"seroval\";\nimport { GLOBAL_TSR } from \"../constants.js\";\nfunction createSerializationAdapter(opts) {\n return opts;\n}\nfunction makeSsrSerovalPlugin(serializationAdapter, options) {\n return createPlugin({\n tag: \"$TSR/t/\" + serializationAdapter.key,\n test: serializationAdapter.test,\n parse: {\n stream(value, ctx) {\n return ctx.parse(serializationAdapter.toSerializable(value));\n }\n },\n serialize(node, ctx) {\n options.didRun = true;\n return GLOBAL_TSR + '.t.get(\"' + serializationAdapter.key + '\")(' + ctx.serialize(node) + \")\";\n },\n // we never deserialize on the server during SSR\n deserialize: void 0\n });\n}\nfunction makeSerovalPlugin(serializationAdapter) {\n return createPlugin({\n tag: \"$TSR/t/\" + serializationAdapter.key,\n test: serializationAdapter.test,\n parse: {\n sync(value, ctx) {\n return ctx.parse(serializationAdapter.toSerializable(value));\n },\n async async(value, ctx) {\n return await ctx.parse(serializationAdapter.toSerializable(value));\n },\n stream(value, ctx) {\n return ctx.parse(serializationAdapter.toSerializable(value));\n }\n },\n // we don't generate JS code outside of SSR (for now)\n serialize: void 0,\n deserialize(node, ctx) {\n return serializationAdapter.fromSerializable(ctx.deserialize(node));\n }\n });\n}\nexport {\n createSerializationAdapter,\n makeSerovalPlugin,\n makeSsrSerovalPlugin\n};\n//# sourceMappingURL=transformer.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport { defer, TSR_DEFERRED_PROMISE } from \"@tanstack/router-core\";\nfunction useAwaited({\n promise: _promise\n}) {\n const promise = defer(_promise);\n if (promise[TSR_DEFERRED_PROMISE].status === \"pending\") {\n throw promise;\n }\n if (promise[TSR_DEFERRED_PROMISE].status === \"error\") {\n throw promise[TSR_DEFERRED_PROMISE].error;\n }\n return [promise[TSR_DEFERRED_PROMISE].data, promise];\n}\nfunction Await(props) {\n const inner = /* @__PURE__ */ jsx(AwaitInner, { ...props });\n if (props.fallback) {\n return /* @__PURE__ */ jsx(React.Suspense, { fallback: props.fallback, children: inner });\n }\n return inner;\n}\nfunction AwaitInner(props) {\n const [data] = useAwaited(props);\n return props.children(data);\n}\nexport {\n Await,\n useAwaited\n};\n//# sourceMappingURL=awaited.js.map\n","import { jsx, jsxs } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nfunction CatchBoundary(props) {\n const errorComponent = props.errorComponent ?? ErrorComponent;\n return /* @__PURE__ */ jsx(\n CatchBoundaryImpl,\n {\n getResetKey: props.getResetKey,\n onCatch: props.onCatch,\n children: ({ error, reset }) => {\n if (error) {\n return React.createElement(errorComponent, {\n error,\n reset\n });\n }\n return props.children;\n }\n }\n );\n}\nclass CatchBoundaryImpl extends React.Component {\n constructor() {\n super(...arguments);\n this.state = { error: null };\n }\n static getDerivedStateFromProps(props) {\n return { resetKey: props.getResetKey() };\n }\n static getDerivedStateFromError(error) {\n return { error };\n }\n reset() {\n this.setState({ error: null });\n }\n componentDidUpdate(prevProps, prevState) {\n if (prevState.error && prevState.resetKey !== this.state.resetKey) {\n this.reset();\n }\n }\n componentDidCatch(error, errorInfo) {\n if (this.props.onCatch) {\n this.props.onCatch(error, errorInfo);\n }\n }\n render() {\n return this.props.children({\n error: this.state.resetKey !== this.props.getResetKey() ? null : this.state.error,\n reset: () => {\n this.reset();\n }\n });\n }\n}\nfunction ErrorComponent({ error }) {\n const [show, setShow] = React.useState(process.env.NODE_ENV !== \"production\");\n return /* @__PURE__ */ jsxs(\"div\", { style: { padding: \".5rem\", maxWidth: \"100%\" }, children: [\n /* @__PURE__ */ jsxs(\"div\", { style: { display: \"flex\", alignItems: \"center\", gap: \".5rem\" }, children: [\n /* @__PURE__ */ jsx(\"strong\", { style: { fontSize: \"1rem\" }, children: \"Something went wrong!\" }),\n /* @__PURE__ */ jsx(\n \"button\",\n {\n style: {\n appearance: \"none\",\n fontSize: \".6em\",\n border: \"1px solid currentColor\",\n padding: \".1rem .2rem\",\n fontWeight: \"bold\",\n borderRadius: \".25rem\"\n },\n onClick: () => setShow((d) => !d),\n children: show ? \"Hide Error\" : \"Show Error\"\n }\n )\n ] }),\n /* @__PURE__ */ jsx(\"div\", { style: { height: \".25rem\" } }),\n show ? /* @__PURE__ */ jsx(\"div\", { children: /* @__PURE__ */ jsx(\n \"pre\",\n {\n style: {\n fontSize: \".7em\",\n border: \"1px solid red\",\n borderRadius: \".25rem\",\n padding: \".3rem\",\n color: \"red\",\n overflow: \"auto\"\n },\n children: error.message ? /* @__PURE__ */ jsx(\"code\", { children: error.message }) : null\n }\n ) }) : null\n ] });\n}\nexport {\n CatchBoundary,\n ErrorComponent\n};\n//# sourceMappingURL=CatchBoundary.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport React__default from \"react\";\nfunction ClientOnly({ children, fallback = null }) {\n return useHydrated() ? /* @__PURE__ */ jsx(React__default.Fragment, { children }) : /* @__PURE__ */ jsx(React__default.Fragment, { children: fallback });\n}\nfunction useHydrated() {\n return React__default.useSyncExternalStore(\n subscribe,\n () => true,\n () => false\n );\n}\nfunction subscribe() {\n return () => {\n };\n}\nexport {\n ClientOnly,\n useHydrated\n};\n//# sourceMappingURL=ClientOnly.js.map\n","var isProduction = process.env.NODE_ENV === 'production';\nfunction warning(condition, message) {\n if (!isProduction) {\n if (condition) {\n return;\n }\n\n var text = \"Warning: \" + message;\n\n if (typeof console !== 'undefined') {\n console.warn(text);\n }\n\n try {\n throw Error(text);\n } catch (x) {}\n }\n}\n\nexport default warning;\n","/**\n * @license React\n * use-sync-external-store-shim/with-selector.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar React = require(\"react\"),\n shim = require(\"use-sync-external-store/shim\");\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n useSyncExternalStore = shim.useSyncExternalStore,\n useRef = React.useRef,\n useEffect = React.useEffect,\n useMemo = React.useMemo,\n useDebugValue = React.useDebugValue;\nexports.useSyncExternalStoreWithSelector = function (\n subscribe,\n getSnapshot,\n getServerSnapshot,\n selector,\n isEqual\n) {\n var instRef = useRef(null);\n if (null === instRef.current) {\n var inst = { hasValue: !1, value: null };\n instRef.current = inst;\n } else inst = instRef.current;\n instRef = useMemo(\n function () {\n function memoizedSelector(nextSnapshot) {\n if (!hasMemo) {\n hasMemo = !0;\n memoizedSnapshot = nextSnapshot;\n nextSnapshot = selector(nextSnapshot);\n if (void 0 !== isEqual && inst.hasValue) {\n var currentSelection = inst.value;\n if (isEqual(currentSelection, nextSnapshot))\n return (memoizedSelection = currentSelection);\n }\n return (memoizedSelection = nextSnapshot);\n }\n currentSelection = memoizedSelection;\n if (objectIs(memoizedSnapshot, nextSnapshot)) return currentSelection;\n var nextSelection = selector(nextSnapshot);\n if (void 0 !== isEqual && isEqual(currentSelection, nextSelection))\n return (memoizedSnapshot = nextSnapshot), currentSelection;\n memoizedSnapshot = nextSnapshot;\n return (memoizedSelection = nextSelection);\n }\n var hasMemo = !1,\n memoizedSnapshot,\n memoizedSelection,\n maybeGetServerSnapshot =\n void 0 === getServerSnapshot ? null : getServerSnapshot;\n return [\n function () {\n return memoizedSelector(getSnapshot());\n },\n null === maybeGetServerSnapshot\n ? void 0\n : function () {\n return memoizedSelector(maybeGetServerSnapshot());\n }\n ];\n },\n [getSnapshot, getServerSnapshot, selector, isEqual]\n );\n var value = useSyncExternalStore(subscribe, instRef[0], instRef[1]);\n useEffect(\n function () {\n inst.hasValue = !0;\n inst.value = value;\n },\n [value]\n );\n useDebugValue(value);\n return value;\n};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.production.js');\n} else {\n module.exports = require('../cjs/use-sync-external-store-shim/with-selector.development.js');\n}\n","import { useSyncExternalStoreWithSelector } from \"use-sync-external-store/shim/with-selector.js\";\nexport * from \"@tanstack/store\";\nfunction useStore(store, selector = (d) => d, options = {}) {\n const equal = options.equal ?? shallow;\n const slice = useSyncExternalStoreWithSelector(\n store.subscribe,\n () => store.state,\n () => store.state,\n selector,\n equal\n );\n return slice;\n}\nfunction shallow(objA, objB) {\n if (Object.is(objA, objB)) {\n return true;\n }\n if (typeof objA !== \"object\" || objA === null || typeof objB !== \"object\" || objB === null) {\n return false;\n }\n if (objA instanceof Map && objB instanceof Map) {\n if (objA.size !== objB.size) return false;\n for (const [k, v] of objA) {\n if (!objB.has(k) || !Object.is(v, objB.get(k))) return false;\n }\n return true;\n }\n if (objA instanceof Set && objB instanceof Set) {\n if (objA.size !== objB.size) return false;\n for (const v of objA) {\n if (!objB.has(v)) return false;\n }\n return true;\n }\n if (objA instanceof Date && objB instanceof Date) {\n if (objA.getTime() !== objB.getTime()) return false;\n return true;\n }\n const keysA = getOwnKeys(objA);\n if (keysA.length !== getOwnKeys(objB).length) {\n return false;\n }\n for (let i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n return true;\n}\nfunction getOwnKeys(obj) {\n return Object.keys(obj).concat(\n Object.getOwnPropertySymbols(obj)\n );\n}\nexport {\n shallow,\n useStore\n};\n//# sourceMappingURL=index.js.map\n","import * as React from \"react\";\nconst routerContext = React.createContext(null);\nfunction getRouterContext() {\n if (typeof document === \"undefined\") {\n return routerContext;\n }\n if (window.__TSR_ROUTER_CONTEXT__) {\n return window.__TSR_ROUTER_CONTEXT__;\n }\n window.__TSR_ROUTER_CONTEXT__ = routerContext;\n return routerContext;\n}\nexport {\n getRouterContext\n};\n//# sourceMappingURL=routerContext.js.map\n","import * as React from \"react\";\nimport warning from \"tiny-warning\";\nimport { getRouterContext } from \"./routerContext.js\";\nfunction useRouter(opts) {\n const value = React.useContext(getRouterContext());\n warning(\n !((opts?.warn ?? true) && !value),\n \"useRouter must be used inside a <RouterProvider> component!\"\n );\n return value;\n}\nexport {\n useRouter\n};\n//# sourceMappingURL=useRouter.js.map\n","import { useStore } from \"@tanstack/react-store\";\nimport { useRef } from \"react\";\nimport { replaceEqualDeep } from \"@tanstack/router-core\";\nimport { useRouter } from \"./useRouter.js\";\nfunction useRouterState(opts) {\n const contextRouter = useRouter({\n warn: opts?.router === void 0\n });\n const router = opts?.router || contextRouter;\n const previousResult = useRef(void 0);\n return useStore(router.__store, (state) => {\n if (opts?.select) {\n if (opts.structuralSharing ?? router.options.defaultStructuralSharing) {\n const newSlice = replaceEqualDeep(\n previousResult.current,\n opts.select(state)\n );\n previousResult.current = newSlice;\n return newSlice;\n }\n return opts.select(state);\n }\n return state;\n });\n}\nexport {\n useRouterState\n};\n//# sourceMappingURL=useRouterState.js.map\n","import * as React from \"react\";\nconst matchContext = React.createContext(void 0);\nconst dummyMatchContext = React.createContext(\n void 0\n);\nexport {\n dummyMatchContext,\n matchContext\n};\n//# sourceMappingURL=matchContext.js.map\n","import * as React from \"react\";\nimport invariant from \"tiny-invariant\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { dummyMatchContext, matchContext } from \"./matchContext.js\";\nfunction useMatch(opts) {\n const nearestMatchId = React.useContext(\n opts.from ? dummyMatchContext : matchContext\n );\n const matchSelection = useRouterState({\n select: (state) => {\n const match = state.matches.find(\n (d) => opts.from ? opts.from === d.routeId : d.id === nearestMatchId\n );\n invariant(\n !((opts.shouldThrow ?? true) && !match),\n `Could not find ${opts.from ? `an active match from \"${opts.from}\"` : \"a nearest match!\"}`\n );\n if (match === void 0) {\n return void 0;\n }\n return opts.select ? opts.select(match) : match;\n },\n structuralSharing: opts.structuralSharing\n });\n return matchSelection;\n}\nexport {\n useMatch\n};\n//# sourceMappingURL=useMatch.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useLoaderData(opts) {\n return useMatch({\n from: opts.from,\n strict: opts.strict,\n structuralSharing: opts.structuralSharing,\n select: (s) => {\n return opts.select ? opts.select(s.loaderData) : s.loaderData;\n }\n });\n}\nexport {\n useLoaderData\n};\n//# sourceMappingURL=useLoaderData.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useLoaderDeps(opts) {\n const { select, ...rest } = opts;\n return useMatch({\n ...rest,\n select: (s) => {\n return select ? select(s.loaderDeps) : s.loaderDeps;\n }\n });\n}\nexport {\n useLoaderDeps\n};\n//# sourceMappingURL=useLoaderDeps.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useParams(opts) {\n return useMatch({\n from: opts.from,\n shouldThrow: opts.shouldThrow,\n structuralSharing: opts.structuralSharing,\n strict: opts.strict,\n select: (match) => {\n const params = opts.strict === false ? match.params : match._strictParams;\n return opts.select ? opts.select(params) : params;\n }\n });\n}\nexport {\n useParams\n};\n//# sourceMappingURL=useParams.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useSearch(opts) {\n return useMatch({\n from: opts.from,\n strict: opts.strict,\n shouldThrow: opts.shouldThrow,\n structuralSharing: opts.structuralSharing,\n select: (match) => {\n return opts.select ? opts.select(match.search) : match.search;\n }\n });\n}\nexport {\n useSearch\n};\n//# sourceMappingURL=useSearch.js.map\n","import * as React from \"react\";\nfunction useStableCallback(fn) {\n const fnRef = React.useRef(fn);\n fnRef.current = fn;\n const ref = React.useRef((...args) => fnRef.current(...args));\n return ref.current;\n}\nconst useLayoutEffect = typeof window !== \"undefined\" ? React.useLayoutEffect : React.useEffect;\nfunction usePrevious(value) {\n const ref = React.useRef({\n value,\n prev: null\n });\n const current = ref.current.value;\n if (value !== current) {\n ref.current = {\n value,\n prev: current\n };\n }\n return ref.current.prev;\n}\nfunction useIntersectionObserver(ref, callback, intersectionObserverOptions = {}, options = {}) {\n React.useEffect(() => {\n if (!ref.current || options.disabled || typeof IntersectionObserver !== \"function\") {\n return;\n }\n const observer = new IntersectionObserver(([entry]) => {\n callback(entry);\n }, intersectionObserverOptions);\n observer.observe(ref.current);\n return () => {\n observer.disconnect();\n };\n }, [callback, intersectionObserverOptions, options.disabled, ref]);\n}\nfunction useForwardedRef(ref) {\n const innerRef = React.useRef(null);\n React.useImperativeHandle(ref, () => innerRef.current, []);\n return innerRef;\n}\nexport {\n useForwardedRef,\n useIntersectionObserver,\n useLayoutEffect,\n usePrevious,\n useStableCallback\n};\n//# sourceMappingURL=utils.js.map\n","import * as React from \"react\";\nimport { useLayoutEffect } from \"./utils.js\";\nimport { useRouter } from \"./useRouter.js\";\nfunction useNavigate(_defaultOpts) {\n const router = useRouter();\n return React.useCallback(\n (options) => {\n return router.navigate({\n ...options,\n from: options.from ?? _defaultOpts?.from\n });\n },\n [_defaultOpts?.from, router]\n );\n}\nfunction Navigate(props) {\n const router = useRouter();\n const navigate = useNavigate();\n const previousPropsRef = React.useRef(null);\n useLayoutEffect(() => {\n if (previousPropsRef.current !== props) {\n navigate(props);\n previousPropsRef.current = props;\n }\n }, [router, props, navigate]);\n return null;\n}\nexport {\n Navigate,\n useNavigate\n};\n//# sourceMappingURL=useNavigate.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport { flushSync } from \"react-dom\";\nimport { preloadWarning, functionalUpdate, exactPathTest, removeTrailingSlash, deepEqual } from \"@tanstack/router-core\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { useForwardedRef, useIntersectionObserver } from \"./utils.js\";\nfunction useLinkProps(options, forwardedRef) {\n const router = useRouter();\n const [isTransitioning, setIsTransitioning] = React.useState(false);\n const hasRenderFetched = React.useRef(false);\n const innerRef = useForwardedRef(forwardedRef);\n const {\n // custom props\n activeProps,\n inactiveProps,\n activeOptions,\n to,\n preload: userPreload,\n preloadDelay: userPreloadDelay,\n hashScrollIntoView,\n replace,\n startTransition,\n resetScroll,\n viewTransition,\n // element props\n children,\n target,\n disabled,\n style,\n className,\n onClick,\n onFocus,\n onMouseEnter,\n onMouseLeave,\n onTouchStart,\n ignoreBlocker,\n // prevent these from being returned\n params: _params,\n search: _search,\n hash: _hash,\n state: _state,\n mask: _mask,\n reloadDocument: _reloadDocument,\n unsafeRelative: _unsafeRelative,\n from: _from,\n _fromLocation,\n ...propsSafeToSpread\n } = options;\n const currentSearch = useRouterState({\n select: (s) => s.location.search,\n structuralSharing: true\n });\n const from = options.from;\n const _options = React.useMemo(\n () => {\n return { ...options, from };\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n router,\n currentSearch,\n from,\n options._fromLocation,\n options.hash,\n options.to,\n options.search,\n options.params,\n options.state,\n options.mask,\n options.unsafeRelative\n ]\n );\n const next = React.useMemo(\n () => router.buildLocation({ ..._options }),\n [router, _options]\n );\n const hrefOption = React.useMemo(() => {\n if (disabled) {\n return void 0;\n }\n let href = next.maskedLocation ? next.maskedLocation.url : next.url;\n let external = false;\n if (router.origin) {\n if (href.startsWith(router.origin)) {\n href = router.history.createHref(href.replace(router.origin, \"\")) || \"/\";\n } else {\n external = true;\n }\n }\n return { href, external };\n }, [disabled, next.maskedLocation, next.url, router.origin, router.history]);\n const externalLink = React.useMemo(() => {\n if (hrefOption?.external) {\n return hrefOption.href;\n }\n try {\n new URL(to);\n return to;\n } catch {\n }\n return void 0;\n }, [to, hrefOption]);\n const preload = options.reloadDocument || externalLink ? false : userPreload ?? router.options.defaultPreload;\n const preloadDelay = userPreloadDelay ?? router.options.defaultPreloadDelay ?? 0;\n const isActive = useRouterState({\n select: (s) => {\n if (externalLink) return false;\n if (activeOptions?.exact) {\n const testExact = exactPathTest(\n s.location.pathname,\n next.pathname,\n router.basepath\n );\n if (!testExact) {\n return false;\n }\n } else {\n const currentPathSplit = removeTrailingSlash(\n s.location.pathname,\n router.basepath\n );\n const nextPathSplit = removeTrailingSlash(\n next.pathname,\n router.basepath\n );\n const pathIsFuzzyEqual = currentPathSplit.startsWith(nextPathSplit) && (currentPathSplit.length === nextPathSplit.length || currentPathSplit[nextPathSplit.length] === \"/\");\n if (!pathIsFuzzyEqual) {\n return false;\n }\n }\n if (activeOptions?.includeSearch ?? true) {\n const searchTest = deepEqual(s.location.search, next.search, {\n partial: !activeOptions?.exact,\n ignoreUndefined: !activeOptions?.explicitUndefined\n });\n if (!searchTest) {\n return false;\n }\n }\n if (activeOptions?.includeHash) {\n return s.location.hash === next.hash;\n }\n return true;\n }\n });\n const doPreload = React.useCallback(() => {\n router.preloadRoute({ ..._options }).catch((err) => {\n console.warn(err);\n console.warn(preloadWarning);\n });\n }, [router, _options]);\n const preloadViewportIoCallback = React.useCallback(\n (entry) => {\n if (entry?.isIntersecting) {\n doPreload();\n }\n },\n [doPreload]\n );\n useIntersectionObserver(\n innerRef,\n preloadViewportIoCallback,\n intersectionObserverOptions,\n { disabled: !!disabled || !(preload === \"viewport\") }\n );\n React.useEffect(() => {\n if (hasRenderFetched.current) {\n return;\n }\n if (!disabled && preload === \"render\") {\n doPreload();\n hasRenderFetched.current = true;\n }\n }, [disabled, doPreload, preload]);\n const handleClick = (e) => {\n const elementTarget = e.currentTarget.getAttribute(\"target\");\n const effectiveTarget = target !== void 0 ? target : elementTarget;\n if (!disabled && !isCtrlEvent(e) && !e.defaultPrevented && (!effectiveTarget || effectiveTarget === \"_self\") && e.button === 0) {\n e.preventDefault();\n flushSync(() => {\n setIsTransitioning(true);\n });\n const unsub = router.subscribe(\"onResolved\", () => {\n unsub();\n setIsTransitioning(false);\n });\n router.navigate({\n ..._options,\n replace,\n resetScroll,\n hashScrollIntoView,\n startTransition,\n viewTransition,\n ignoreBlocker\n });\n }\n };\n if (externalLink) {\n return {\n ...propsSafeToSpread,\n ref: innerRef,\n href: externalLink,\n ...children && { children },\n ...target && { target },\n ...disabled && { disabled },\n ...style && { style },\n ...className && { className },\n ...onClick && { onClick },\n ...onFocus && { onFocus },\n ...onMouseEnter && { onMouseEnter },\n ...onMouseLeave && { onMouseLeave },\n ...onTouchStart && { onTouchStart }\n };\n }\n const handleFocus = (_) => {\n if (disabled) return;\n if (preload) {\n doPreload();\n }\n };\n const handleTouchStart = handleFocus;\n const handleEnter = (e) => {\n if (disabled || !preload) return;\n if (!preloadDelay) {\n doPreload();\n } else {\n const eventTarget = e.target;\n if (timeoutMap.has(eventTarget)) {\n return;\n }\n const id = setTimeout(() => {\n timeoutMap.delete(eventTarget);\n doPreload();\n }, preloadDelay);\n timeoutMap.set(eventTarget, id);\n }\n };\n const handleLeave = (e) => {\n if (disabled || !preload || !preloadDelay) return;\n const eventTarget = e.target;\n const id = timeoutMap.get(eventTarget);\n if (id) {\n clearTimeout(id);\n timeoutMap.delete(eventTarget);\n }\n };\n const resolvedActiveProps = isActive ? functionalUpdate(activeProps, {}) ?? STATIC_ACTIVE_OBJECT : STATIC_EMPTY_OBJECT;\n const resolvedInactiveProps = isActive ? STATIC_EMPTY_OBJECT : functionalUpdate(inactiveProps, {}) ?? STATIC_EMPTY_OBJECT;\n const resolvedClassName = [\n className,\n resolvedActiveProps.className,\n resolvedInactiveProps.className\n ].filter(Boolean).join(\" \");\n const resolvedStyle = (style || resolvedActiveProps.style || resolvedInactiveProps.style) && {\n ...style,\n ...resolvedActiveProps.style,\n ...resolvedInactiveProps.style\n };\n return {\n ...propsSafeToSpread,\n ...resolvedActiveProps,\n ...resolvedInactiveProps,\n href: hrefOption?.href,\n ref: innerRef,\n onClick: composeHandlers([onClick, handleClick]),\n onFocus: composeHandlers([onFocus, handleFocus]),\n onMouseEnter: composeHandlers([onMouseEnter, handleEnter]),\n onMouseLeave: composeHandlers([onMouseLeave, handleLeave]),\n onTouchStart: composeHandlers([onTouchStart, handleTouchStart]),\n disabled: !!disabled,\n target,\n ...resolvedStyle && { style: resolvedStyle },\n ...resolvedClassName && { className: resolvedClassName },\n ...disabled && STATIC_DISABLED_PROPS,\n ...isActive && STATIC_ACTIVE_PROPS,\n ...isTransitioning && STATIC_TRANSITIONING_PROPS\n };\n}\nconst STATIC_EMPTY_OBJECT = {};\nconst STATIC_ACTIVE_OBJECT = { className: \"active\" };\nconst STATIC_DISABLED_PROPS = { role: \"link\", \"aria-disabled\": true };\nconst STATIC_ACTIVE_PROPS = { \"data-status\": \"active\", \"aria-current\": \"page\" };\nconst STATIC_TRANSITIONING_PROPS = { \"data-transitioning\": \"transitioning\" };\nconst timeoutMap = /* @__PURE__ */ new WeakMap();\nconst intersectionObserverOptions = {\n rootMargin: \"100px\"\n};\nconst composeHandlers = (handlers) => (e) => {\n for (const handler of handlers) {\n if (!handler) continue;\n if (e.defaultPrevented) return;\n handler(e);\n }\n};\nfunction createLink(Comp) {\n return React.forwardRef(function CreatedLink(props, ref) {\n return /* @__PURE__ */ jsx(Link, { ...props, _asChild: Comp, ref });\n });\n}\nconst Link = React.forwardRef(\n (props, ref) => {\n const { _asChild, ...rest } = props;\n const {\n type: _type,\n ref: innerRef,\n ...linkProps\n } = useLinkProps(rest, ref);\n const children = typeof rest.children === \"function\" ? rest.children({\n isActive: linkProps[\"data-status\"] === \"active\"\n }) : rest.children;\n if (_asChild === void 0) {\n delete linkProps.disabled;\n }\n return React.createElement(\n _asChild ? _asChild : \"a\",\n {\n ...linkProps,\n ref: innerRef\n },\n children\n );\n }\n);\nfunction isCtrlEvent(e) {\n return !!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey);\n}\nconst linkOptions = (options) => {\n return options;\n};\nexport {\n Link,\n createLink,\n linkOptions,\n useLinkProps\n};\n//# sourceMappingURL=link.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { BaseRouteApi, notFound, BaseRoute, BaseRootRoute } from \"@tanstack/router-core\";\nimport React__default from \"react\";\nimport { useLoaderData } from \"./useLoaderData.js\";\nimport { useLoaderDeps } from \"./useLoaderDeps.js\";\nimport { useParams } from \"./useParams.js\";\nimport { useSearch } from \"./useSearch.js\";\nimport { useNavigate } from \"./useNavigate.js\";\nimport { useMatch } from \"./useMatch.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { Link } from \"./link.js\";\nfunction getRouteApi(id) {\n return new RouteApi({ id });\n}\nclass RouteApi extends BaseRouteApi {\n /**\n * @deprecated Use the `getRouteApi` function instead.\n */\n constructor({ id }) {\n super({ id });\n this.useMatch = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n structuralSharing: opts?.structuralSharing\n });\n };\n this.useRouteContext = (opts) => {\n return useMatch({\n from: this.id,\n select: (d) => opts?.select ? opts.select(d.context) : d.context\n });\n };\n this.useSearch = (opts) => {\n return useSearch({\n select: opts?.select,\n structuralSharing: opts?.structuralSharing,\n from: this.id\n });\n };\n this.useParams = (opts) => {\n return useParams({\n select: opts?.select,\n structuralSharing: opts?.structuralSharing,\n from: this.id\n });\n };\n this.useLoaderDeps = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id, strict: false });\n };\n this.useLoaderData = (opts) => {\n return useLoaderData({ ...opts, from: this.id, strict: false });\n };\n this.useNavigate = () => {\n const router = useRouter();\n return useNavigate({ from: router.routesById[this.id].fullPath });\n };\n this.notFound = (opts) => {\n return notFound({ routeId: this.id, ...opts });\n };\n this.Link = React__default.forwardRef((props, ref) => {\n const router = useRouter();\n const fullPath = router.routesById[this.id].fullPath;\n return /* @__PURE__ */ jsx(Link, { ref, from: fullPath, ...props });\n });\n }\n}\nclass Route extends BaseRoute {\n /**\n * @deprecated Use the `createRoute` function instead.\n */\n constructor(options) {\n super(options);\n this.useMatch = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n structuralSharing: opts?.structuralSharing\n });\n };\n this.useRouteContext = (opts) => {\n return useMatch({\n ...opts,\n from: this.id,\n select: (d) => opts?.select ? opts.select(d.context) : d.context\n });\n };\n this.useSearch = (opts) => {\n return useSearch({\n select: opts?.select,\n structuralSharing: opts?.structuralSharing,\n from: this.id\n });\n };\n this.useParams = (opts) => {\n return useParams({\n select: opts?.select,\n structuralSharing: opts?.structuralSharing,\n from: this.id\n });\n };\n this.useLoaderDeps = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id });\n };\n this.useLoaderData = (opts) => {\n return useLoaderData({ ...opts, from: this.id });\n };\n this.useNavigate = () => {\n return useNavigate({ from: this.fullPath });\n };\n this.Link = React__default.forwardRef(\n (props, ref) => {\n return /* @__PURE__ */ jsx(Link, { ref, from: this.fullPath, ...props });\n }\n );\n this.$$typeof = Symbol.for(\"react.memo\");\n }\n}\nfunction createRoute(options) {\n return new Route(\n // TODO: Help us TypeChris, you're our only hope!\n options\n );\n}\nfunction createRootRouteWithContext() {\n return (options) => {\n return createRootRoute(options);\n };\n}\nconst rootRouteWithContext = createRootRouteWithContext;\nclass RootRoute extends BaseRootRoute {\n /**\n * @deprecated `RootRoute` is now an internal implementation detail. Use `createRootRoute()` instead.\n */\n constructor(options) {\n super(options);\n this.useMatch = (opts) => {\n return useMatch({\n select: opts?.select,\n from: this.id,\n structuralSharing: opts?.structuralSharing\n });\n };\n this.useRouteContext = (opts) => {\n return useMatch({\n ...opts,\n from: this.id,\n select: (d) => opts?.select ? opts.select(d.context) : d.context\n });\n };\n this.useSearch = (opts) => {\n return useSearch({\n select: opts?.select,\n structuralSharing: opts?.structuralSharing,\n from: this.id\n });\n };\n this.useParams = (opts) => {\n return useParams({\n select: opts?.select,\n structuralSharing: opts?.structuralSharing,\n from: this.id\n });\n };\n this.useLoaderDeps = (opts) => {\n return useLoaderDeps({ ...opts, from: this.id });\n };\n this.useLoaderData = (opts) => {\n return useLoaderData({ ...opts, from: this.id });\n };\n this.useNavigate = () => {\n return useNavigate({ from: this.fullPath });\n };\n this.Link = React__default.forwardRef(\n (props, ref) => {\n return /* @__PURE__ */ jsx(Link, { ref, from: this.fullPath, ...props });\n }\n );\n this.$$typeof = Symbol.for(\"react.memo\");\n }\n}\nfunction createRootRoute(options) {\n return new RootRoute(options);\n}\nfunction createRouteMask(opts) {\n return opts;\n}\nclass NotFoundRoute extends Route {\n constructor(options) {\n super({\n ...options,\n id: \"404\"\n });\n }\n}\nexport {\n NotFoundRoute,\n RootRoute,\n Route,\n RouteApi,\n createRootRoute,\n createRootRouteWithContext,\n createRoute,\n createRouteMask,\n getRouteApi,\n rootRouteWithContext\n};\n//# sourceMappingURL=route.js.map\n","import warning from \"tiny-warning\";\nimport { createRoute } from \"./route.js\";\nimport { useMatch } from \"./useMatch.js\";\nimport { useLoaderDeps } from \"./useLoaderDeps.js\";\nimport { useLoaderData } from \"./useLoaderData.js\";\nimport { useSearch } from \"./useSearch.js\";\nimport { useParams } from \"./useParams.js\";\nimport { useNavigate } from \"./useNavigate.js\";\nimport { useRouter } from \"./useRouter.js\";\nfunction createFileRoute(path) {\n if (typeof path === \"object\") {\n return new FileRoute(path, {\n silent: true\n }).createRoute(path);\n }\n return new FileRoute(path, {\n silent: true\n }).createRoute;\n}\nclass FileRoute {\n constructor(path, _opts) {\n this.path = path;\n this.createRoute = (options) => {\n warning(\n this.silent,\n \"FileRoute is deprecated and will be removed in the next major version. Use the createFileRoute(path)(options) function instead.\"\n );\n const route = createRoute(options);\n route.isRoot = false;\n return route;\n };\n this.silent = _opts?.silent;\n }\n}\nfunction FileRouteLoader(_path) {\n warning(\n false,\n `FileRouteLoader is deprecated and will be removed in the next major version. Please place the loader function in the the main route file, inside the \\`createFileRoute('/path/to/file')(options)\\` options`\n );\n return (loaderFn) => loaderFn;\n}\nclass LazyRoute {\n constructor(opts) {\n this.useMatch = (opts2) => {\n return useMatch({\n select: opts2?.select,\n from: this.options.id,\n structuralSharing: opts2?.structuralSharing\n });\n };\n this.useRouteContext = (opts2) => {\n return useMatch({\n from: this.options.id,\n select: (d) => opts2?.select ? opts2.select(d.context) : d.context\n });\n };\n this.useSearch = (opts2) => {\n return useSearch({\n select: opts2?.select,\n structuralSharing: opts2?.structuralSharing,\n from: this.options.id\n });\n };\n this.useParams = (opts2) => {\n return useParams({\n select: opts2?.select,\n structuralSharing: opts2?.structuralSharing,\n from: this.options.id\n });\n };\n this.useLoaderDeps = (opts2) => {\n return useLoaderDeps({ ...opts2, from: this.options.id });\n };\n this.useLoaderData = (opts2) => {\n return useLoaderData({ ...opts2, from: this.options.id });\n };\n this.useNavigate = () => {\n const router = useRouter();\n return useNavigate({ from: router.routesById[this.options.id].fullPath });\n };\n this.options = opts;\n this.$$typeof = Symbol.for(\"react.memo\");\n }\n}\nfunction createLazyRoute(id) {\n return (opts) => {\n return new LazyRoute({\n id,\n ...opts\n });\n };\n}\nfunction createLazyFileRoute(id) {\n if (typeof id === \"object\") {\n return new LazyRoute(id);\n }\n return (opts) => new LazyRoute({ id, ...opts });\n}\nexport {\n FileRoute,\n FileRouteLoader,\n LazyRoute,\n createFileRoute,\n createLazyFileRoute,\n createLazyRoute\n};\n//# sourceMappingURL=fileRoute.js.map\n","import * as React from \"react\";\nimport { isModuleNotFoundError } from \"@tanstack/router-core\";\nfunction lazyRouteComponent(importer, exportName) {\n let loadPromise;\n let comp;\n let error;\n let reload;\n const load = () => {\n if (!loadPromise) {\n loadPromise = importer().then((res) => {\n loadPromise = void 0;\n comp = res[exportName ?? \"default\"];\n }).catch((err) => {\n error = err;\n if (isModuleNotFoundError(error)) {\n if (error instanceof Error && typeof window !== \"undefined\" && typeof sessionStorage !== \"undefined\") {\n const storageKey = `tanstack_router_reload:${error.message}`;\n if (!sessionStorage.getItem(storageKey)) {\n sessionStorage.setItem(storageKey, \"1\");\n reload = true;\n }\n }\n }\n });\n }\n return loadPromise;\n };\n const lazyComp = function Lazy(props) {\n if (reload) {\n window.location.reload();\n throw new Promise(() => {\n });\n }\n if (error) {\n throw error;\n }\n if (!comp) {\n throw load();\n }\n return React.createElement(comp, props);\n };\n lazyComp.preload = load;\n return lazyComp;\n}\nexport {\n lazyRouteComponent\n};\n//# sourceMappingURL=lazyRouteComponent.js.map\n","import * as React from \"react\";\nimport { trimPathRight, getLocationChangeInfo, handleHashScroll } from \"@tanstack/router-core\";\nimport { usePrevious, useLayoutEffect } from \"./utils.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nfunction Transitioner() {\n const router = useRouter();\n const mountLoadForRouter = React.useRef({ router, mounted: false });\n const [isTransitioning, setIsTransitioning] = React.useState(false);\n const { hasPendingMatches, isLoading } = useRouterState({\n select: (s) => ({\n isLoading: s.isLoading,\n hasPendingMatches: s.matches.some((d) => d.status === \"pending\")\n }),\n structuralSharing: true\n });\n const previousIsLoading = usePrevious(isLoading);\n const isAnyPending = isLoading || isTransitioning || hasPendingMatches;\n const previousIsAnyPending = usePrevious(isAnyPending);\n const isPagePending = isLoading || hasPendingMatches;\n const previousIsPagePending = usePrevious(isPagePending);\n router.startTransition = (fn) => {\n setIsTransitioning(true);\n React.startTransition(() => {\n fn();\n setIsTransitioning(false);\n });\n };\n React.useEffect(() => {\n const unsub = router.history.subscribe(router.load);\n const nextLocation = router.buildLocation({\n to: router.latestLocation.pathname,\n search: true,\n params: true,\n hash: true,\n state: true,\n _includeValidateSearch: true\n });\n if (trimPathRight(router.latestLocation.href) !== trimPathRight(nextLocation.href)) {\n router.commitLocation({ ...nextLocation, replace: true });\n }\n return () => {\n unsub();\n };\n }, [router, router.history]);\n useLayoutEffect(() => {\n if (\n // if we are hydrating from SSR, loading is triggered in ssr-client\n typeof window !== \"undefined\" && router.ssr || mountLoadForRouter.current.router === router && mountLoadForRouter.current.mounted\n ) {\n return;\n }\n mountLoadForRouter.current = { router, mounted: true };\n const tryLoad = async () => {\n try {\n await router.load();\n } catch (err) {\n console.error(err);\n }\n };\n tryLoad();\n }, [router]);\n useLayoutEffect(() => {\n if (previousIsLoading && !isLoading) {\n router.emit({\n type: \"onLoad\",\n // When the new URL has committed, when the new matches have been loaded into state.matches\n ...getLocationChangeInfo(router.state)\n });\n }\n }, [previousIsLoading, router, isLoading]);\n useLayoutEffect(() => {\n if (previousIsPagePending && !isPagePending) {\n router.emit({\n type: \"onBeforeRouteMount\",\n ...getLocationChangeInfo(router.state)\n });\n }\n }, [isPagePending, previousIsPagePending, router]);\n useLayoutEffect(() => {\n if (previousIsAnyPending && !isAnyPending) {\n const changeInfo = getLocationChangeInfo(router.state);\n router.emit({\n type: \"onResolved\",\n ...changeInfo\n });\n router.__store.setState((s) => ({\n ...s,\n status: \"idle\",\n resolvedLocation: s.location\n }));\n if (changeInfo.hrefChanged) {\n handleHashScroll(router);\n }\n }\n }, [isAnyPending, previousIsAnyPending, router]);\n return null;\n}\nexport {\n Transitioner\n};\n//# sourceMappingURL=Transitioner.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { isNotFound } from \"@tanstack/router-core\";\nimport { CatchBoundary } from \"./CatchBoundary.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nfunction CatchNotFound(props) {\n const resetKey = useRouterState({\n select: (s) => `not-found-${s.location.pathname}-${s.status}`\n });\n return /* @__PURE__ */ jsx(\n CatchBoundary,\n {\n getResetKey: () => resetKey,\n onCatch: (error, errorInfo) => {\n if (isNotFound(error)) {\n props.onCatch?.(error, errorInfo);\n } else {\n throw error;\n }\n },\n errorComponent: ({ error }) => {\n if (isNotFound(error)) {\n return props.fallback?.(error);\n } else {\n throw error;\n }\n },\n children: props.children\n }\n );\n}\nfunction DefaultGlobalNotFound() {\n return /* @__PURE__ */ jsx(\"p\", { children: \"Not Found\" });\n}\nexport {\n CatchNotFound,\n DefaultGlobalNotFound\n};\n//# sourceMappingURL=not-found.js.map\n","import { jsx, Fragment } from \"react/jsx-runtime\";\nfunction SafeFragment(props) {\n return /* @__PURE__ */ jsx(Fragment, { children: props.children });\n}\nexport {\n SafeFragment\n};\n//# sourceMappingURL=SafeFragment.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport warning from \"tiny-warning\";\nimport { DefaultGlobalNotFound } from \"./not-found.js\";\nfunction renderRouteNotFound(router, route, data) {\n if (!route.options.notFoundComponent) {\n if (router.options.defaultNotFoundComponent) {\n return /* @__PURE__ */ jsx(router.options.defaultNotFoundComponent, { ...data });\n }\n if (process.env.NODE_ENV === \"development\") {\n warning(\n route.options.notFoundComponent,\n `A notFoundError was encountered on the route with ID \"${route.id}\", but a notFoundComponent option was not configured, nor was a router level defaultNotFoundComponent configured. Consider configuring at least one of these to avoid TanStack Router's overly generic defaultNotFoundComponent (<p>Not Found</p>)`\n );\n }\n return /* @__PURE__ */ jsx(DefaultGlobalNotFound, {});\n }\n return /* @__PURE__ */ jsx(route.options.notFoundComponent, { ...data });\n}\nexport {\n renderRouteNotFound\n};\n//# sourceMappingURL=renderRouteNotFound.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { useRouter } from \"./useRouter.js\";\nfunction ScriptOnce({ children }) {\n const router = useRouter();\n if (!router.isServer) {\n return null;\n }\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n nonce: router.options.ssr?.nonce,\n className: \"$tsr\",\n dangerouslySetInnerHTML: {\n __html: children + ';typeof $_TSR !== \"undefined\" && $_TSR.c()'\n }\n }\n );\n}\nexport {\n ScriptOnce\n};\n//# sourceMappingURL=ScriptOnce.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { defaultGetScrollRestorationKey, restoreScroll, storageKey } from \"@tanstack/router-core\";\nimport { useRouter } from \"./useRouter.js\";\nimport { ScriptOnce } from \"./ScriptOnce.js\";\nfunction ScrollRestoration() {\n const router = useRouter();\n if (!router.isScrollRestoring || !router.isServer) {\n return null;\n }\n if (typeof router.options.scrollRestoration === \"function\") {\n const shouldRestore = router.options.scrollRestoration({\n location: router.latestLocation\n });\n if (!shouldRestore) {\n return null;\n }\n }\n const getKey = router.options.getScrollRestorationKey || defaultGetScrollRestorationKey;\n const userKey = getKey(router.latestLocation);\n const resolvedKey = userKey !== defaultGetScrollRestorationKey(router.latestLocation) ? userKey : void 0;\n const restoreScrollOptions = {\n storageKey,\n shouldScrollRestoration: true\n };\n if (resolvedKey) {\n restoreScrollOptions.key = resolvedKey;\n }\n return /* @__PURE__ */ jsx(\n ScriptOnce,\n {\n children: `(${restoreScroll.toString()})(${JSON.stringify(restoreScrollOptions)})`\n }\n );\n}\nexport {\n ScrollRestoration\n};\n//# sourceMappingURL=scroll-restoration.js.map\n","import { jsxs, jsx, Fragment } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport invariant from \"tiny-invariant\";\nimport warning from \"tiny-warning\";\nimport { isNotFound, rootRouteId, createControlledPromise, isRedirect, getLocationChangeInfo } from \"@tanstack/router-core\";\nimport { CatchBoundary, ErrorComponent } from \"./CatchBoundary.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { CatchNotFound } from \"./not-found.js\";\nimport { matchContext } from \"./matchContext.js\";\nimport { SafeFragment } from \"./SafeFragment.js\";\nimport { renderRouteNotFound } from \"./renderRouteNotFound.js\";\nimport { ScrollRestoration } from \"./scroll-restoration.js\";\nimport { ClientOnly } from \"./ClientOnly.js\";\nconst Match = React.memo(function MatchImpl({\n matchId\n}) {\n const router = useRouter();\n const matchState = useRouterState({\n select: (s) => {\n const match = s.matches.find((d) => d.id === matchId);\n invariant(\n match,\n `Could not find match for matchId \"${matchId}\". Please file an issue!`\n );\n return {\n routeId: match.routeId,\n ssr: match.ssr,\n _displayPending: match._displayPending\n };\n },\n structuralSharing: true\n });\n const route = router.routesById[matchState.routeId];\n const PendingComponent = route.options.pendingComponent ?? router.options.defaultPendingComponent;\n const pendingElement = PendingComponent ? /* @__PURE__ */ jsx(PendingComponent, {}) : null;\n const routeErrorComponent = route.options.errorComponent ?? router.options.defaultErrorComponent;\n const routeOnCatch = route.options.onCatch ?? router.options.defaultOnCatch;\n const routeNotFoundComponent = route.isRoot ? (\n // If it's the root route, use the globalNotFound option, with fallback to the notFoundRoute's component\n route.options.notFoundComponent ?? router.options.notFoundRoute?.options.component\n ) : route.options.notFoundComponent;\n const resolvedNoSsr = matchState.ssr === false || matchState.ssr === \"data-only\";\n const ResolvedSuspenseBoundary = (\n // If we're on the root route, allow forcefully wrapping in suspense\n (!route.isRoot || route.options.wrapInSuspense || resolvedNoSsr) && (route.options.wrapInSuspense ?? PendingComponent ?? (route.options.errorComponent?.preload || resolvedNoSsr)) ? React.Suspense : SafeFragment\n );\n const ResolvedCatchBoundary = routeErrorComponent ? CatchBoundary : SafeFragment;\n const ResolvedNotFoundBoundary = routeNotFoundComponent ? CatchNotFound : SafeFragment;\n const resetKey = useRouterState({\n select: (s) => s.loadedAt\n });\n const parentRouteId = useRouterState({\n select: (s) => {\n const index = s.matches.findIndex((d) => d.id === matchId);\n return s.matches[index - 1]?.routeId;\n }\n });\n const ShellComponent = route.isRoot ? route.options.shellComponent ?? SafeFragment : SafeFragment;\n return /* @__PURE__ */ jsxs(ShellComponent, { children: [\n /* @__PURE__ */ jsx(matchContext.Provider, { value: matchId, children: /* @__PURE__ */ jsx(ResolvedSuspenseBoundary, { fallback: pendingElement, children: /* @__PURE__ */ jsx(\n ResolvedCatchBoundary,\n {\n getResetKey: () => resetKey,\n errorComponent: routeErrorComponent || ErrorComponent,\n onCatch: (error, errorInfo) => {\n if (isNotFound(error)) throw error;\n warning(false, `Error in route match: ${matchId}`);\n routeOnCatch?.(error, errorInfo);\n },\n children: /* @__PURE__ */ jsx(\n ResolvedNotFoundBoundary,\n {\n fallback: (error) => {\n if (!routeNotFoundComponent || error.routeId && error.routeId !== matchState.routeId || !error.routeId && !route.isRoot)\n throw error;\n return React.createElement(routeNotFoundComponent, error);\n },\n children: resolvedNoSsr || matchState._displayPending ? /* @__PURE__ */ jsx(ClientOnly, { fallback: pendingElement, children: /* @__PURE__ */ jsx(MatchInner, { matchId }) }) : /* @__PURE__ */ jsx(MatchInner, { matchId })\n }\n )\n }\n ) }) }),\n parentRouteId === rootRouteId && router.options.scrollRestoration ? /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(OnRendered, {}),\n /* @__PURE__ */ jsx(ScrollRestoration, {})\n ] }) : null\n ] });\n});\nfunction OnRendered() {\n const router = useRouter();\n const prevLocationRef = React.useRef(\n void 0\n );\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n suppressHydrationWarning: true,\n ref: (el) => {\n if (el && (prevLocationRef.current === void 0 || prevLocationRef.current.href !== router.latestLocation.href)) {\n router.emit({\n type: \"onRendered\",\n ...getLocationChangeInfo(router.state)\n });\n prevLocationRef.current = router.latestLocation;\n }\n }\n },\n router.latestLocation.state.__TSR_key\n );\n}\nconst MatchInner = React.memo(function MatchInnerImpl({\n matchId\n}) {\n const router = useRouter();\n const { match, key, routeId } = useRouterState({\n select: (s) => {\n const match2 = s.matches.find((d) => d.id === matchId);\n const routeId2 = match2.routeId;\n const remountFn = router.routesById[routeId2].options.remountDeps ?? router.options.defaultRemountDeps;\n const remountDeps = remountFn?.({\n routeId: routeId2,\n loaderDeps: match2.loaderDeps,\n params: match2._strictParams,\n search: match2._strictSearch\n });\n const key2 = remountDeps ? JSON.stringify(remountDeps) : void 0;\n return {\n key: key2,\n routeId: routeId2,\n match: {\n id: match2.id,\n status: match2.status,\n error: match2.error,\n _forcePending: match2._forcePending,\n _displayPending: match2._displayPending\n }\n };\n },\n structuralSharing: true\n });\n const route = router.routesById[routeId];\n const out = React.useMemo(() => {\n const Comp = route.options.component ?? router.options.defaultComponent;\n if (Comp) {\n return /* @__PURE__ */ jsx(Comp, {}, key);\n }\n return /* @__PURE__ */ jsx(Outlet, {});\n }, [key, route.options.component, router.options.defaultComponent]);\n if (match._displayPending) {\n throw router.getMatch(match.id)?._nonReactive.displayPendingPromise;\n }\n if (match._forcePending) {\n throw router.getMatch(match.id)?._nonReactive.minPendingPromise;\n }\n if (match.status === \"pending\") {\n const pendingMinMs = route.options.pendingMinMs ?? router.options.defaultPendingMinMs;\n if (pendingMinMs) {\n const routerMatch = router.getMatch(match.id);\n if (routerMatch && !routerMatch._nonReactive.minPendingPromise) {\n if (!router.isServer) {\n const minPendingPromise = createControlledPromise();\n routerMatch._nonReactive.minPendingPromise = minPendingPromise;\n setTimeout(() => {\n minPendingPromise.resolve();\n routerMatch._nonReactive.minPendingPromise = void 0;\n }, pendingMinMs);\n }\n }\n }\n throw router.getMatch(match.id)?._nonReactive.loadPromise;\n }\n if (match.status === \"notFound\") {\n invariant(isNotFound(match.error), \"Expected a notFound error\");\n return renderRouteNotFound(router, route, match.error);\n }\n if (match.status === \"redirected\") {\n invariant(isRedirect(match.error), \"Expected a redirect error\");\n throw router.getMatch(match.id)?._nonReactive.loadPromise;\n }\n if (match.status === \"error\") {\n if (router.isServer) {\n const RouteErrorComponent = (route.options.errorComponent ?? router.options.defaultErrorComponent) || ErrorComponent;\n return /* @__PURE__ */ jsx(\n RouteErrorComponent,\n {\n error: match.error,\n reset: void 0,\n info: {\n componentStack: \"\"\n }\n }\n );\n }\n throw match.error;\n }\n return out;\n});\nconst Outlet = React.memo(function OutletImpl() {\n const router = useRouter();\n const matchId = React.useContext(matchContext);\n const routeId = useRouterState({\n select: (s) => s.matches.find((d) => d.id === matchId)?.routeId\n });\n const route = router.routesById[routeId];\n const parentGlobalNotFound = useRouterState({\n select: (s) => {\n const matches = s.matches;\n const parentMatch = matches.find((d) => d.id === matchId);\n invariant(\n parentMatch,\n `Could not find parent match for matchId \"${matchId}\"`\n );\n return parentMatch.globalNotFound;\n }\n });\n const childMatchId = useRouterState({\n select: (s) => {\n const matches = s.matches;\n const index = matches.findIndex((d) => d.id === matchId);\n return matches[index + 1]?.id;\n }\n });\n const pendingElement = router.options.defaultPendingComponent ? /* @__PURE__ */ jsx(router.options.defaultPendingComponent, {}) : null;\n if (parentGlobalNotFound) {\n return renderRouteNotFound(router, route, void 0);\n }\n if (!childMatchId) {\n return null;\n }\n const nextMatch = /* @__PURE__ */ jsx(Match, { matchId: childMatchId });\n if (routeId === rootRouteId) {\n return /* @__PURE__ */ jsx(React.Suspense, { fallback: pendingElement, children: nextMatch });\n }\n return nextMatch;\n});\nexport {\n Match,\n MatchInner,\n Outlet\n};\n//# sourceMappingURL=Match.js.map\n","import { jsxs, jsx } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport warning from \"tiny-warning\";\nimport { rootRouteId } from \"@tanstack/router-core\";\nimport { CatchBoundary, ErrorComponent } from \"./CatchBoundary.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { Transitioner } from \"./Transitioner.js\";\nimport { matchContext } from \"./matchContext.js\";\nimport { Match } from \"./Match.js\";\nimport { SafeFragment } from \"./SafeFragment.js\";\nfunction Matches() {\n const router = useRouter();\n const rootRoute = router.routesById[rootRouteId];\n const PendingComponent = rootRoute.options.pendingComponent ?? router.options.defaultPendingComponent;\n const pendingElement = PendingComponent ? /* @__PURE__ */ jsx(PendingComponent, {}) : null;\n const ResolvedSuspense = router.isServer || typeof document !== \"undefined\" && router.ssr ? SafeFragment : React.Suspense;\n const inner = /* @__PURE__ */ jsxs(ResolvedSuspense, { fallback: pendingElement, children: [\n !router.isServer && /* @__PURE__ */ jsx(Transitioner, {}),\n /* @__PURE__ */ jsx(MatchesInner, {})\n ] });\n return router.options.InnerWrap ? /* @__PURE__ */ jsx(router.options.InnerWrap, { children: inner }) : inner;\n}\nfunction MatchesInner() {\n const router = useRouter();\n const matchId = useRouterState({\n select: (s) => {\n return s.matches[0]?.id;\n }\n });\n const resetKey = useRouterState({\n select: (s) => s.loadedAt\n });\n const matchComponent = matchId ? /* @__PURE__ */ jsx(Match, { matchId }) : null;\n return /* @__PURE__ */ jsx(matchContext.Provider, { value: matchId, children: router.options.disableGlobalCatchBoundary ? matchComponent : /* @__PURE__ */ jsx(\n CatchBoundary,\n {\n getResetKey: () => resetKey,\n errorComponent: ErrorComponent,\n onCatch: (error) => {\n warning(\n false,\n `The following error wasn't caught by any route! At the very least, consider setting an 'errorComponent' in your RootRoute!`\n );\n warning(false, error.message || error.toString());\n },\n children: matchComponent\n }\n ) });\n}\nfunction useMatchRoute() {\n const router = useRouter();\n useRouterState({\n select: (s) => [s.location.href, s.resolvedLocation?.href, s.status],\n structuralSharing: true\n });\n return React.useCallback(\n (opts) => {\n const { pending, caseSensitive, fuzzy, includeSearch, ...rest } = opts;\n return router.matchRoute(rest, {\n pending,\n caseSensitive,\n fuzzy,\n includeSearch\n });\n },\n [router]\n );\n}\nfunction MatchRoute(props) {\n const matchRoute = useMatchRoute();\n const params = matchRoute(props);\n if (typeof props.children === \"function\") {\n return props.children(params);\n }\n return params ? props.children : null;\n}\nfunction useMatches(opts) {\n return useRouterState({\n select: (state) => {\n const matches = state.matches;\n return opts?.select ? opts.select(matches) : matches;\n },\n structuralSharing: opts?.structuralSharing\n });\n}\nfunction useParentMatches(opts) {\n const contextMatchId = React.useContext(matchContext);\n return useMatches({\n select: (matches) => {\n matches = matches.slice(\n 0,\n matches.findIndex((d) => d.id === contextMatchId)\n );\n return opts?.select ? opts.select(matches) : matches;\n },\n structuralSharing: opts?.structuralSharing\n });\n}\nfunction useChildMatches(opts) {\n const contextMatchId = React.useContext(matchContext);\n return useMatches({\n select: (matches) => {\n matches = matches.slice(\n matches.findIndex((d) => d.id === contextMatchId) + 1\n );\n return opts?.select ? opts.select(matches) : matches;\n },\n structuralSharing: opts?.structuralSharing\n });\n}\nexport {\n MatchRoute,\n Matches,\n useChildMatches,\n useMatchRoute,\n useMatches,\n useParentMatches\n};\n//# sourceMappingURL=Matches.js.map\n","import { RouterCore } from \"@tanstack/router-core\";\nimport { createFileRoute, createLazyFileRoute } from \"./fileRoute.js\";\nconst createRouter = (options) => {\n return new Router(options);\n};\nclass Router extends RouterCore {\n constructor(options) {\n super(options);\n }\n}\nif (typeof globalThis !== \"undefined\") {\n globalThis.createFileRoute = createFileRoute;\n globalThis.createLazyFileRoute = createLazyFileRoute;\n} else if (typeof window !== \"undefined\") {\n window.createFileRoute = createFileRoute;\n window.createLazyFileRoute = createLazyFileRoute;\n}\nexport {\n Router,\n createRouter\n};\n//# sourceMappingURL=router.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport { Matches } from \"./Matches.js\";\nimport { getRouterContext } from \"./routerContext.js\";\nfunction RouterContextProvider({\n router,\n children,\n ...rest\n}) {\n if (Object.keys(rest).length > 0) {\n router.update({\n ...router.options,\n ...rest,\n context: {\n ...router.options.context,\n ...rest.context\n }\n });\n }\n const routerContext = getRouterContext();\n const provider = /* @__PURE__ */ jsx(routerContext.Provider, { value: router, children });\n if (router.options.Wrap) {\n return /* @__PURE__ */ jsx(router.options.Wrap, { children: provider });\n }\n return provider;\n}\nfunction RouterProvider({ router, ...rest }) {\n return /* @__PURE__ */ jsx(RouterContextProvider, { router, ...rest, children: /* @__PURE__ */ jsx(Matches, {}) });\n}\nexport {\n RouterContextProvider,\n RouterProvider\n};\n//# sourceMappingURL=RouterProvider.js.map\n","import { defaultGetScrollRestorationKey, getCssSelector, scrollRestorationCache, setupScrollRestoration } from \"@tanstack/router-core\";\nimport { useRouter } from \"./useRouter.js\";\nfunction useScrollRestoration() {\n const router = useRouter();\n setupScrollRestoration(router, true);\n}\nfunction ScrollRestoration(_props) {\n useScrollRestoration();\n if (process.env.NODE_ENV === \"development\") {\n console.warn(\n \"The ScrollRestoration component is deprecated. Use createRouter's `scrollRestoration` option instead.\"\n );\n }\n return null;\n}\nfunction useElementScrollRestoration(options) {\n useScrollRestoration();\n const router = useRouter();\n const getKey = options.getKey || defaultGetScrollRestorationKey;\n let elementSelector = \"\";\n if (options.id) {\n elementSelector = `[data-scroll-restoration-id=\"${options.id}\"]`;\n } else {\n const element = options.getElement?.();\n if (!element) {\n return;\n }\n elementSelector = element instanceof Window ? \"window\" : getCssSelector(element);\n }\n const restoreKey = getKey(router.latestLocation);\n const byKey = scrollRestorationCache?.state[restoreKey];\n return byKey?.[elementSelector];\n}\nexport {\n ScrollRestoration,\n useElementScrollRestoration\n};\n//# sourceMappingURL=ScrollRestoration.js.map\n","import * as React from \"react\";\nimport { useRouter } from \"./useRouter.js\";\nfunction _resolveBlockerOpts(opts, condition) {\n if (opts === void 0) {\n return {\n shouldBlockFn: () => true,\n withResolver: false\n };\n }\n if (\"shouldBlockFn\" in opts) {\n return opts;\n }\n if (typeof opts === \"function\") {\n const shouldBlock2 = Boolean(condition ?? true);\n const _customBlockerFn2 = async () => {\n if (shouldBlock2) return await opts();\n return false;\n };\n return {\n shouldBlockFn: _customBlockerFn2,\n enableBeforeUnload: shouldBlock2,\n withResolver: false\n };\n }\n const shouldBlock = Boolean(opts.condition ?? true);\n const fn = opts.blockerFn;\n const _customBlockerFn = async () => {\n if (shouldBlock && fn !== void 0) {\n return await fn();\n }\n return shouldBlock;\n };\n return {\n shouldBlockFn: _customBlockerFn,\n enableBeforeUnload: shouldBlock,\n withResolver: fn === void 0\n };\n}\nfunction useBlocker(opts, condition) {\n const {\n shouldBlockFn,\n enableBeforeUnload = true,\n disabled = false,\n withResolver = false\n } = _resolveBlockerOpts(opts, condition);\n const router = useRouter();\n const { history } = router;\n const [resolver, setResolver] = React.useState({\n status: \"idle\",\n current: void 0,\n next: void 0,\n action: void 0,\n proceed: void 0,\n reset: void 0\n });\n React.useEffect(() => {\n const blockerFnComposed = async (blockerFnArgs) => {\n function getLocation(location) {\n const parsedLocation = router.parseLocation(location);\n const matchedRoutes = router.getMatchedRoutes(parsedLocation.pathname);\n if (matchedRoutes.foundRoute === void 0) {\n return {\n routeId: \"__notFound__\",\n fullPath: parsedLocation.pathname,\n pathname: parsedLocation.pathname,\n params: matchedRoutes.routeParams,\n search: router.options.parseSearch(location.search)\n };\n }\n return {\n routeId: matchedRoutes.foundRoute.id,\n fullPath: matchedRoutes.foundRoute.fullPath,\n pathname: parsedLocation.pathname,\n params: matchedRoutes.routeParams,\n search: router.options.parseSearch(location.search)\n };\n }\n const current = getLocation(blockerFnArgs.currentLocation);\n const next = getLocation(blockerFnArgs.nextLocation);\n if (current.routeId === \"__notFound__\" && next.routeId !== \"__notFound__\") {\n return false;\n }\n const shouldBlock = await shouldBlockFn({\n action: blockerFnArgs.action,\n current,\n next\n });\n if (!withResolver) {\n return shouldBlock;\n }\n if (!shouldBlock) {\n return false;\n }\n const promise = new Promise((resolve) => {\n setResolver({\n status: \"blocked\",\n current,\n next,\n action: blockerFnArgs.action,\n proceed: () => resolve(false),\n reset: () => resolve(true)\n });\n });\n const canNavigateAsync = await promise;\n setResolver({\n status: \"idle\",\n current: void 0,\n next: void 0,\n action: void 0,\n proceed: void 0,\n reset: void 0\n });\n return canNavigateAsync;\n };\n return disabled ? void 0 : history.block({ blockerFn: blockerFnComposed, enableBeforeUnload });\n }, [\n shouldBlockFn,\n enableBeforeUnload,\n disabled,\n withResolver,\n history,\n router\n ]);\n return resolver;\n}\nconst _resolvePromptBlockerArgs = (props) => {\n if (\"shouldBlockFn\" in props) {\n return { ...props };\n }\n const shouldBlock = Boolean(props.condition ?? true);\n const fn = props.blockerFn;\n const _customBlockerFn = async () => {\n if (shouldBlock && fn !== void 0) {\n return await fn();\n }\n return shouldBlock;\n };\n return {\n shouldBlockFn: _customBlockerFn,\n enableBeforeUnload: shouldBlock,\n withResolver: fn === void 0\n };\n};\nfunction Block(opts) {\n const { children, ...rest } = opts;\n const args = _resolvePromptBlockerArgs(rest);\n const resolver = useBlocker(args);\n return children ? typeof children === \"function\" ? children(resolver) : children : null;\n}\nexport {\n Block,\n useBlocker\n};\n//# sourceMappingURL=useBlocker.js.map\n","import { useMatch } from \"./useMatch.js\";\nfunction useRouteContext(opts) {\n return useMatch({\n ...opts,\n select: (match) => opts.select ? opts.select(match.context) : match.context\n });\n}\nexport {\n useRouteContext\n};\n//# sourceMappingURL=useRouteContext.js.map\n","import { useRouterState } from \"./useRouterState.js\";\nfunction useLocation(opts) {\n return useRouterState({\n select: (state) => opts?.select ? opts.select(state.location) : state.location\n });\n}\nexport {\n useLocation\n};\n//# sourceMappingURL=useLocation.js.map\n","import { useRouterState } from \"./useRouterState.js\";\nfunction useCanGoBack() {\n return useRouterState({ select: (s) => s.location.state.__TSR_index !== 0 });\n}\nexport {\n useCanGoBack\n};\n//# sourceMappingURL=useCanGoBack.js.map\n","import { jsx } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport { useRouter } from \"./useRouter.js\";\nfunction Asset({\n tag,\n attrs,\n children,\n nonce\n}) {\n switch (tag) {\n case \"title\":\n return /* @__PURE__ */ jsx(\"title\", { ...attrs, suppressHydrationWarning: true, children });\n case \"meta\":\n return /* @__PURE__ */ jsx(\"meta\", { ...attrs, suppressHydrationWarning: true });\n case \"link\":\n return /* @__PURE__ */ jsx(\"link\", { ...attrs, nonce, suppressHydrationWarning: true });\n case \"style\":\n return /* @__PURE__ */ jsx(\n \"style\",\n {\n ...attrs,\n dangerouslySetInnerHTML: { __html: children },\n nonce\n }\n );\n case \"script\":\n return /* @__PURE__ */ jsx(Script, { attrs, children });\n default:\n return null;\n }\n}\nfunction Script({\n attrs,\n children\n}) {\n const router = useRouter();\n React.useEffect(() => {\n if (attrs?.src) {\n const normSrc = (() => {\n try {\n const base = document.baseURI || window.location.href;\n return new URL(attrs.src, base).href;\n } catch {\n return attrs.src;\n }\n })();\n const existingScript = Array.from(\n document.querySelectorAll(\"script[src]\")\n ).find((el) => el.src === normSrc);\n if (existingScript) {\n return;\n }\n const script = document.createElement(\"script\");\n for (const [key, value] of Object.entries(attrs)) {\n if (key !== \"suppressHydrationWarning\" && value !== void 0 && value !== false) {\n script.setAttribute(\n key,\n typeof value === \"boolean\" ? \"\" : String(value)\n );\n }\n }\n document.head.appendChild(script);\n return () => {\n if (script.parentNode) {\n script.parentNode.removeChild(script);\n }\n };\n }\n if (typeof children === \"string\") {\n const typeAttr = typeof attrs?.type === \"string\" ? attrs.type : \"text/javascript\";\n const nonceAttr = typeof attrs?.nonce === \"string\" ? attrs.nonce : void 0;\n const existingScript = Array.from(\n document.querySelectorAll(\"script:not([src])\")\n ).find((el) => {\n if (!(el instanceof HTMLScriptElement)) return false;\n const sType = el.getAttribute(\"type\") ?? \"text/javascript\";\n const sNonce = el.getAttribute(\"nonce\") ?? void 0;\n return el.textContent === children && sType === typeAttr && sNonce === nonceAttr;\n });\n if (existingScript) {\n return;\n }\n const script = document.createElement(\"script\");\n script.textContent = children;\n if (attrs) {\n for (const [key, value] of Object.entries(attrs)) {\n if (key !== \"suppressHydrationWarning\" && value !== void 0 && value !== false) {\n script.setAttribute(\n key,\n typeof value === \"boolean\" ? \"\" : String(value)\n );\n }\n }\n }\n document.head.appendChild(script);\n return () => {\n if (script.parentNode) {\n script.parentNode.removeChild(script);\n }\n };\n }\n return void 0;\n }, [attrs, children]);\n if (!router.isServer) {\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n suppressHydrationWarning: true,\n dangerouslySetInnerHTML: { __html: \"\" }\n }\n );\n }\n if (attrs?.src && typeof attrs.src === \"string\") {\n return /* @__PURE__ */ jsx(\"script\", { ...attrs, suppressHydrationWarning: true });\n }\n if (typeof children === \"string\") {\n return /* @__PURE__ */ jsx(\n \"script\",\n {\n ...attrs,\n dangerouslySetInnerHTML: { __html: children },\n suppressHydrationWarning: true\n }\n );\n }\n return null;\n}\nexport {\n Asset\n};\n//# sourceMappingURL=Asset.js.map\n","import * as React from \"react\";\nimport { createElement } from \"react\";\nimport { Asset } from \"./Asset.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nconst useTags = () => {\n const router = useRouter();\n const nonce = router.options.ssr?.nonce;\n const routeMeta = useRouterState({\n select: (state) => {\n return state.matches.map((match) => match.meta).filter(Boolean);\n }\n });\n const meta = React.useMemo(() => {\n const resultMeta = [];\n const metaByAttribute = {};\n let title;\n for (let i = routeMeta.length - 1; i >= 0; i--) {\n const metas = routeMeta[i];\n for (let j = metas.length - 1; j >= 0; j--) {\n const m = metas[j];\n if (!m) continue;\n if (m.title) {\n if (!title) {\n title = {\n tag: \"title\",\n children: m.title\n };\n }\n } else {\n const attribute = m.name ?? m.property;\n if (attribute) {\n if (metaByAttribute[attribute]) {\n continue;\n } else {\n metaByAttribute[attribute] = true;\n }\n }\n resultMeta.push({\n tag: \"meta\",\n attrs: {\n ...m,\n nonce\n }\n });\n }\n }\n }\n if (title) {\n resultMeta.push(title);\n }\n if (nonce) {\n resultMeta.push({\n tag: \"meta\",\n attrs: {\n property: \"csp-nonce\",\n content: nonce\n }\n });\n }\n resultMeta.reverse();\n return resultMeta;\n }, [routeMeta, nonce]);\n const links = useRouterState({\n select: (state) => {\n const constructed = state.matches.map((match) => match.links).filter(Boolean).flat(1).map((link) => ({\n tag: \"link\",\n attrs: {\n ...link,\n nonce\n }\n }));\n const manifest = router.ssr?.manifest;\n const assets = state.matches.map((match) => manifest?.routes[match.routeId]?.assets ?? []).filter(Boolean).flat(1).filter((asset) => asset.tag === \"link\").map(\n (asset) => ({\n tag: \"link\",\n attrs: {\n ...asset.attrs,\n suppressHydrationWarning: true,\n nonce\n }\n })\n );\n return [...constructed, ...assets];\n },\n structuralSharing: true\n });\n const preloadLinks = useRouterState({\n select: (state) => {\n const preloadLinks2 = [];\n state.matches.map((match) => router.looseRoutesById[match.routeId]).forEach(\n (route) => router.ssr?.manifest?.routes[route.id]?.preloads?.filter(Boolean).forEach((preload) => {\n preloadLinks2.push({\n tag: \"link\",\n attrs: {\n rel: \"modulepreload\",\n href: preload,\n nonce\n }\n });\n })\n );\n return preloadLinks2;\n },\n structuralSharing: true\n });\n const styles = useRouterState({\n select: (state) => state.matches.map((match) => match.styles).flat(1).filter(Boolean).map(({ children, ...attrs }) => ({\n tag: \"style\",\n attrs,\n children,\n nonce\n })),\n structuralSharing: true\n });\n const headScripts = useRouterState({\n select: (state) => state.matches.map((match) => match.headScripts).flat(1).filter(Boolean).map(({ children, ...script }) => ({\n tag: \"script\",\n attrs: {\n ...script,\n nonce\n },\n children\n })),\n structuralSharing: true\n });\n return uniqBy(\n [\n ...meta,\n ...preloadLinks,\n ...links,\n ...styles,\n ...headScripts\n ],\n (d) => {\n return JSON.stringify(d);\n }\n );\n};\nfunction HeadContent() {\n const tags = useTags();\n const router = useRouter();\n const nonce = router.options.ssr?.nonce;\n return tags.map((tag) => /* @__PURE__ */ createElement(Asset, { ...tag, key: `tsr-meta-${JSON.stringify(tag)}`, nonce }));\n}\nfunction uniqBy(arr, fn) {\n const seen = /* @__PURE__ */ new Set();\n return arr.filter((item) => {\n const key = fn(item);\n if (seen.has(key)) {\n return false;\n }\n seen.add(key);\n return true;\n });\n}\nexport {\n HeadContent,\n useTags\n};\n//# sourceMappingURL=HeadContent.js.map\n","import { jsx, Fragment } from \"react/jsx-runtime\";\nimport { createElement } from \"react\";\nimport { Asset } from \"./Asset.js\";\nimport { useRouterState } from \"./useRouterState.js\";\nimport { useRouter } from \"./useRouter.js\";\nconst Scripts = () => {\n const router = useRouter();\n const nonce = router.options.ssr?.nonce;\n const assetScripts = useRouterState({\n select: (state) => {\n const assetScripts2 = [];\n const manifest = router.ssr?.manifest;\n if (!manifest) {\n return [];\n }\n state.matches.map((match) => router.looseRoutesById[match.routeId]).forEach(\n (route) => manifest.routes[route.id]?.assets?.filter((d) => d.tag === \"script\").forEach((asset) => {\n assetScripts2.push({\n tag: \"script\",\n attrs: { ...asset.attrs, nonce },\n children: asset.children\n });\n })\n );\n return assetScripts2;\n },\n structuralSharing: true\n });\n const { scripts } = useRouterState({\n select: (state) => ({\n scripts: state.matches.map((match) => match.scripts).flat(1).filter(Boolean).map(({ children, ...script }) => ({\n tag: \"script\",\n attrs: {\n ...script,\n suppressHydrationWarning: true,\n nonce\n },\n children\n }))\n }),\n structuralSharing: true\n });\n let serverBufferedScript = void 0;\n if (router.serverSsr) {\n serverBufferedScript = router.serverSsr.takeBufferedScripts();\n }\n const allScripts = [...scripts, ...assetScripts];\n if (serverBufferedScript) {\n allScripts.unshift(serverBufferedScript);\n }\n return /* @__PURE__ */ jsx(Fragment, { children: allScripts.map((asset, i) => /* @__PURE__ */ createElement(Asset, { ...asset, key: `tsr-scripts-${asset.tag}-${i}` })) });\n};\nexport {\n Scripts\n};\n//# sourceMappingURL=Scripts.js.map\n"],"names":["require$$0","shimModule","trimPathRight","React","jsx","jsxs","React__default","require$$1","withSelectorModule","useSyncExternalStoreWithSelector","Fragment","ScrollRestoration","createElement"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67]}
|